{"version":3,"sources":["jsdelivr-header.js","/npm/chrome-extension-maker-cli@1.0.0/index.js"],"names":[],"mappings":"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","file":"/npm/chrome-extension-maker-cli@1.0.0/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/chrome-extension-maker-cli@1.0.0/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","#! /usr/bin/env node\nconst inquirer = require('inquirer')\nconst fs = require('fs')\nconst path = require('path')\nlet manifest = {\n    manifest_version: 2,\n}\n\nasync function ask() {\n    inquirer\n        .prompt([\n            {\n                type: 'text',\n                name: 'name',\n                message: 'What is the name of this extension?',\n                default: path.basename(process.cwd())\n\n            },\n            {\n                type: 'text',\n                name: 'version',\n                message: 'What is the version of this extension?',\n                default: '1.0.0'\n            },\n            {\n                type: 'text',\n                name: 'description',\n                message: 'What is the description of this extension?',\n                default: ''\n            },\n            {\n                type: 'checkbox',\n                name: 'permissions',\n                message: 'What permissons do you need?',\n                choices: ['activeTab', 'alarms', 'background',\n                    'bookmarks', 'browsingData', 'certificateProvider',\n                    'clipboardRead', 'clipboardWrite', 'contentSettings',\n                    'contextMenus', 'cookies', 'debugger',\n                    'declarativeContent', 'declarativeNetRequest', 'declarativeNetRequestFeedback',\n                    'declarativeWebRequest', 'desktopCapture', 'displaySource',\n                    'dns', 'documentScan', 'downloads',\n                    'fileBrowserHandler', 'fileSystemProvider', 'fontSettings',\n                    'gcm', 'geolocation', 'history',\n                    'identity', 'idle', 'idltest',\n                    'login', 'loginScreenStorage', 'loginState',\n                    'management', 'nativeMessaging', 'networking.config',\n                    'notifications', 'pageCapture', 'platformKeys',\n                    'power', 'printerProvider', 'printing',\n                    'printingMetrics', 'privacy', 'processes',\n                    'proxy', 'sessions', 'signedInDevices',\n                    'storage', 'system.cpu', 'system.display',\n                    'system.memory', 'system.storage', 'tabCapture',\n                    'tabCapture', 'tabs', 'tts',\n                    'ttsEngine', 'unlimitedStorage', 'vpnProvider',\n                    'wallpaper', 'webNavigation', 'webRequest',\n                    'webRequestBlocking'\n                ]\n            }, {\n                type: 'text',\n                name: 'background',\n                message: 'Where is your background.js file? (Leave blank if you dont have/ need one)',\n                default: ''\n            },\n            {\n                type: 'text',\n                name: 'content',\n                message: 'Where is your content.js file? (Leave blank if you dont have/ need one)',\n                default: ''\n            },\n            {\n                type: 'confirm',\n                name: 'browserAction',\n                message: 'do you need a browser action? (popup in the tool bar)',\n                default: false\n            },\n            {\n                type: 'list',\n                name: 'chromeUrlOverrides',\n                message: 'What chrome url overrides do you need? (chrome://newtab etc)',\n                choices: ['New tab (chrome://newtab)', 'History (chrome://history)', 'Bookmarks Manager (chrome://bookmarks)', 'None'],\n                default: 'None'\n            },\n            {\n                type: 'confirm',\n                name: 'options',\n                message: 'Do you need a options page?',\n                default: true\n            }\n        ])\n        .then(async function (baseAnswers) {\n            if (baseAnswers.background) {\n                const backgroundAnswers = await inquirer\n                    .prompt([\n                        {\n                            type: 'confirm',\n                            name: 'persistent',\n                            message: 'Does your background.js file need to be persistent?',\n                            default: false\n                        }\n                    ])\n\n                manifest.background = {}\n                manifest.background.scripts = [baseAnswers.background]\n                manifest.background.persistent = backgroundAnswers.persistent\n\n            }\n            if (baseAnswers.content) {\n                const contentAnswers = await inquirer\n                    .prompt([\n                        {\n                            type: 'text',\n                            name: 'matches',\n                            message: 'What are your matches? (comma sperated e.g(http://*.nytimes.com/*,http://*.google.com/*) leave blank for all sites)',\n                            default: ''\n                        },\n                        {\n                            type: 'text',\n                            name: 'css',\n                            message: 'Where is your content.css file located? (leave blank if you dont need one)',\n                            default: ''\n                        }\n                    ])\n\n                manifest.content_scripts = [{\n                    'js': `${baseAnswers.content}`,\n                    'css': `${contentAnswers.css}`,\n                    'matches': contentAnswers.matches.split(',')\n                }]\n                // manifest.content_scripts.matches = contentAnswers.matches.split(',')\n            }\n            if (baseAnswers.options) {\n                const optionsAnswers = await inquirer\n                    .prompt([\n                        {\n                            type: 'text',\n                            name: 'optionsFile',\n                            message: 'WHere is your options.html file located?',\n                            default: 'options/index.html'\n                        },\n                        {\n                            type: 'confirm',\n                            name: 'newTab',\n                            message: 'Do you want your options page to open in a tab?',\n                            default: true\n                        }\n                    ])\n                manifest.options_ui.page = optionsAnswers.optionsFile\n                manifest.options_ui.open_in_tab = optionsAnswers.newTab\n\n            }\n            if (baseAnswers.browserAction) {\n                const browserActionAnswers = await inquirer\n                    .prompt([\n                        {\n                            type: 'text',\n                            name: 'popup',\n                            message: 'where is your popup.html file located?',\n                            default: 'popup.html'\n                        },\n                        {\n                            type: 'text',\n                            name: 'title',\n                            message: 'What is the title of your popup? (The text on the tooltip of your browser action)',\n                            default: baseAnswers.name\n                        },\n                        {\n                            type: 'text',\n                            name: 'icon16',\n                            message: 'Where is your 16x16 icon image located?',\n                            default: 'imgs/16.png'\n                        },\n                        {\n                            type: 'text',\n                            name: 'icon24',\n                            message: 'Where is your 24x24 icon image located?',\n                            default: 'imgs/24.png'\n                        },\n                        {\n                            type: 'text',\n                            name: 'icon32',\n                            message: 'Where is your 32x32 icon image located?',\n                            default: 'imgs/32.png'\n                        }\n                    ])\n\n                manifest.browser_action.default_title = browserActionAnswers.default_title\n                manifest.browser_action.default_popup = browserActionAnswers.default_popup\n                manifest.browser_action.default_icon = {\n                    '16': browserActionAnswers.icon16,\n                    '24': browserActionAnswers.icon24,\n                    '32': browserActionAnswers.icon32\n                }\n            }\n            if (baseAnswers.chromeUrlOverrides !== 'None') {\n                const chromeUrlOverridesAnswers = await inquirer\n                    .prompt([\n                        {\n                            type: 'text',\n                            name: 'chromeUrlOverridesFile',\n                            message: `Where is your ${baseAnswers.chromeUrlOverrides}.html file?`,\n                            default: `${baseAnswers.chromeUrlOverrides}.html`\n                        }\n                    ])\n                if (baseAnswers.chromeUrlOverrides === 'New tab (chrome://newtab)') {\n                    manifest.chrome_url_overrides = {\n                        'newtab': chromeUrlOverridesAnswers.chromeUrlOverridesFile\n                    }\n                } else if (baseAnswers.chromeUrlOverrides === 'History (chrome://history)') {\n                    manifest.chrome_url_overrides = {\n                        'history': chromeUrlOverridesAnswers.chromeUrlOverridesFile\n                    }\n                } else if (baseAnswers.chromeUrlOverrides === 'Bookmarks Manager (chrome://bookmarks)') {\n                    manifest.chrome_url_overrides = {\n                        'bookmarks': chromeUrlOverridesAnswers.chromeUrlOverridesFile\n                    }\n                }\n            }\n\n\n            manifest.name = baseAnswers.name;\n            manifest.version = baseAnswers.version;\n            manifest.description = baseAnswers.description;\n            manifest.permissions = baseAnswers.permissions;\n\n\n            fs.writeFile('manifest.json', JSON.stringify(manifest, null, 2), function (err) { if (err) { console.err(err) } })\n\n        })\n}\n\nask()\n\n"]}