-/* eslint-disable camelcase */
-
'use strict'
const browsers = {
- lambdaTest: {
- safariMac: {
- browserName: 'Safari',
- browserVersion: 'latest',
- 'LT:Options': {
- platformName: 'MacOS Monterey'
- }
- },
- chromeMac: {
- browserName: 'Chrome',
- browserVersion: 'latest',
- 'LT:Options': {
- platformName: 'MacOS Monterey'
- }
- },
- firefoxMac: {
- browserName: 'Firefox',
- browserVersion: 'latest',
- 'LT:Options': {
- platformName: 'MacOS Monterey'
- }
- },
- chromeWin10: {
- browserName: 'Chrome',
- browserVersion: '60',
- 'LT:Options': {
- platformName: 'Windows 10'
- }
- },
- firefoxWin10: {
- browserName: 'Firefox',
- browserVersion: '60',
- 'LT:Options': {
- platformName: 'Windows 10'
- }
- },
- chromeWin10Latest: {
- browserName: 'Chrome',
- browserVersion: 'latest',
- 'LT:Options': {
- platformName: 'Windows 10'
- }
- },
- firefoxWin10Latest: {
- browserName: 'Firefox',
- browserVersion: 'latest',
- 'LT:Options': {
- platformName: 'Windows 10'
- }
- },
- iphone11: {
- platformName: 'ios',
- platformVersion: '15',
- browserName: 'Safari',
- deviceName: 'iPhone 13',
- isRealMobile: true
- },
- iphone14: {
- platformName: 'ios',
- platformVersion: '16',
- browserName: 'Safari',
- deviceName: 'iPhone 14',
- isRealMobile: true
- },
- pixel6: {
- platformName: 'android',
- platformVersion: '12',
- browserName: 'Chrome',
- deviceName: 'Pixel 6',
- isRealMobile: true
+ safariMac: {
+ browserName: 'Safari',
+ browserVersion: 'latest',
+ 'LT:Options': {
+ platformName: 'MacOS Monterey'
+ }
+ },
+ chromeMac: {
+ browserName: 'Chrome',
+ browserVersion: 'latest',
+ 'LT:Options': {
+ platformName: 'MacOS Monterey'
+ }
+ },
+ firefoxMac: {
+ browserName: 'Firefox',
+ browserVersion: 'latest',
+ 'LT:Options': {
+ platformName: 'MacOS Monterey'
+ }
+ },
+ chromeWin10: {
+ browserName: 'Chrome',
+ browserVersion: '60',
+ 'LT:Options': {
+ platformName: 'Windows 10'
}
},
- browserStack: {
- safariMac: {
- base: 'BrowserStack',
- os: 'OS X',
- os_version: 'Catalina',
- browser: 'Safari',
- browser_version: 'latest'
- },
- chromeMac: {
- base: 'BrowserStack',
- os: 'OS X',
- os_version: 'Catalina',
- browser: 'Chrome',
- browser_version: 'latest'
- },
- firefoxMac: {
- base: 'BrowserStack',
- os: 'OS X',
- os_version: 'Catalina',
- browser: 'Firefox',
- browser_version: 'latest'
- },
- chromeWin10: {
- base: 'BrowserStack',
- os: 'Windows',
- os_version: '10',
- browser: 'Chrome',
- browser_version: '60'
- },
- firefoxWin10: {
- base: 'BrowserStack',
- os: 'Windows',
- os_version: '10',
- browser: 'Firefox',
- browser_version: '60'
- },
- chromeWin10Latest: {
- base: 'BrowserStack',
- os: 'Windows',
- os_version: '10',
- browser: 'Chrome',
- browser_version: 'latest'
- },
- firefoxWin10Latest: {
- base: 'BrowserStack',
- os: 'Windows',
- os_version: '10',
- browser: 'Firefox',
- browser_version: 'latest'
- },
- iphone7: {
- base: 'BrowserStack',
- os: 'ios',
- os_version: '12.0',
- device: 'iPhone 7',
- real_mobile: true
- },
- iphone12: {
- base: 'BrowserStack',
- os: 'ios',
- os_version: '14.0',
- device: 'iPhone 12',
- real_mobile: true
- },
- pixel2: {
- base: 'BrowserStack',
- os: 'android',
- os_version: '8.0',
- device: 'Google Pixel 2',
- real_mobile: true
+ firefoxWin10: {
+ browserName: 'Firefox',
+ browserVersion: '60',
+ 'LT:Options': {
+ platformName: 'Windows 10'
}
+ },
+ chromeWin10Latest: {
+ browserName: 'Chrome',
+ browserVersion: 'latest',
+ 'LT:Options': {
+ platformName: 'Windows 10'
+ }
+ },
+ firefoxWin10Latest: {
+ browserName: 'Firefox',
+ browserVersion: 'latest',
+ 'LT:Options': {
+ platformName: 'Windows 10'
+ }
+ },
+ iphone11: {
+ platformName: 'ios',
+ platformVersion: '15',
+ browserName: 'Safari',
+ deviceName: 'iPhone 13',
+ isRealMobile: true
+ },
+ iphone14: {
+ platformName: 'ios',
+ platformVersion: '16',
+ browserName: 'Safari',
+ deviceName: 'iPhone 14',
+ isRealMobile: true
+ },
+ pixel6: {
+ platformName: 'android',
+ platformVersion: '12',
+ browserName: 'Chrome',
+ deviceName: 'Pixel 6',
+ isRealMobile: true
}
}
const ENV = process.env
const LAMBDATEST = Boolean(ENV.LAMBDATEST)
-const BROWSERSTACK = Boolean(ENV.BROWSERSTACK)
const DEBUG = Boolean(ENV.DEBUG)
const JQUERY_TEST = Boolean(ENV.JQUERY)
'node_modules/hammer-simulator/index.js',
{
pattern: 'js/tests/unit/**/!(jquery).spec.js',
- watched: !BROWSERSTACK
+ watched: !LAMBDATEST
}
],
preprocessors: {
if (LAMBDATEST) {
config.hostname = 'localhost.lambdatest.com'
- for (const key of Object.keys(browsers.lambdaTest)) {
- browsers.lambdaTest[key].base = 'WebDriver'
- browsers.lambdaTest[key].build = `bootstrap-${ENV.GITHUB_SHA ? `${ENV.GITHUB_SHA.slice(0, 7)}-` : ''}${new Date().toISOString()}`
- browsers.lambdaTest[key].project = 'Bootstrap'
-
- if (browsers.lambdaTest[key].isRealMobile) {
- browsers.lambdaTest[key].config = webdriverConfigMobile
- browsers.lambdaTest[key].user = ENV.LT_USERNAME
- browsers.lambdaTest[key].accessKey = ENV.LT_ACCESS_KEY
- browsers.lambdaTest[key].tunnel = true
- browsers.lambdaTest[key].console = true
- browsers.lambdaTest[key].network = true
- browsers.lambdaTest[key].tunnelName = process.env.LT_TUNNEL_NAME || 'jasmine'
- browsers.lambdaTest[key].pseudoActivityInterval = 5000 // 5000 ms heartbeat
+ for (const key of Object.keys(browsers)) {
+ browsers[key].base = 'WebDriver'
+ browsers[key].build = `bootstrap-${ENV.GITHUB_SHA ? `${ENV.GITHUB_SHA.slice(0, 7)}-` : ''}${new Date().toISOString()}`
+ browsers[key].project = 'Bootstrap'
+
+ if (browsers[key].isRealMobile) {
+ browsers[key].config = webdriverConfigMobile
+ browsers[key].user = ENV.LT_USERNAME
+ browsers[key].accessKey = ENV.LT_ACCESS_KEY
+ browsers[key].tunnel = true
+ browsers[key].console = true
+ browsers[key].network = true
+ browsers[key].tunnelName = process.env.LT_TUNNEL_NAME || 'jasmine'
+ browsers[key].pseudoActivityInterval = 5000 // 5000 ms heartbeat
} else {
- browsers.lambdaTest[key].config = webdriverConfig
- browsers.lambdaTest[key]['LT:Options'].username = ENV.LT_USERNAME
- browsers.lambdaTest[key]['LT:Options'].accessKey = ENV.LT_ACCESS_KEY
- browsers.lambdaTest[key]['LT:Options'].tunnel = true
- browsers.lambdaTest[key]['LT:Options'].console = true
- browsers.lambdaTest[key]['LT:Options'].network = true
- browsers.lambdaTest[key]['LT:Options'].tunnelName = process.env.LT_TUNNEL_NAME || 'jasmine'
- browsers.lambdaTest[key]['LT:Options'].pseudoActivityInterval = 5000 // 5000 ms heartbeat
+ browsers[key].config = webdriverConfig
+ browsers[key]['LT:Options'].username = ENV.LT_USERNAME
+ browsers[key]['LT:Options'].accessKey = ENV.LT_ACCESS_KEY
+ browsers[key]['LT:Options'].tunnel = true
+ browsers[key]['LT:Options'].console = true
+ browsers[key]['LT:Options'].network = true
+ browsers[key]['LT:Options'].tunnelName = process.env.LT_TUNNEL_NAME || 'jasmine'
+ browsers[key]['LT:Options'].pseudoActivityInterval = 5000 // 5000 ms heartbeat
}
- browsers.lambdaTest[key].retryLimit = 3
+ browsers[key].retryLimit = 3
}
plugins.push('karma-webdriver-launcher', 'karma-jasmine-html-reporter')
- config.customLaunchers = browsers.lambdaTest
- config.browsers = Object.keys(browsers.lambdaTest)
+ config.customLaunchers = browsers
+ config.browsers = Object.keys(browsers)
reporters.push('kjhtml')
-} else if (BROWSERSTACK) {
- config.hostname = ip.address()
- config.browserStack = {
- username: ENV.BROWSER_STACK_USERNAME,
- accessKey: ENV.BROWSER_STACK_ACCESS_KEY,
- build: `bootstrap-${ENV.GITHUB_SHA ? `${ENV.GITHUB_SHA.slice(0, 7)}-` : ''}${new Date().toISOString()}`,
- project: 'Bootstrap',
- retryLimit: 3
- }
- plugins.push('karma-browserstack-launcher', 'karma-jasmine-html-reporter')
- config.customLaunchers = browsers.browserStack
- config.browsers = Object.keys(browsers.browserStack)
- reporters.push('BrowserStack', 'kjhtml')
} else if (JQUERY_TEST) {
frameworks.push('detectBrowsers')
plugins.push(
"jasmine": "^5.1.0",
"jquery": "^3.7.1",
"karma": "^6.4.3",
- "karma-browserstack-launcher": "^1.6.0",
"karma-chrome-launcher": "^3.2.0",
"karma-coverage-istanbul-reporter": "^3.0.3",
"karma-detect-browsers": "^2.3.3",
"acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
}
},
- "node_modules/agent-base": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz",
- "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==",
- "dev": true,
- "dependencies": {
- "es6-promisify": "^5.0.0"
- },
- "engines": {
- "node": ">= 4.0.0"
- }
- },
"node_modules/ajv": {
"version": "6.12.6",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
"node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
}
},
- "node_modules/browserstack": {
- "version": "1.5.3",
- "resolved": "https://registry.npmjs.org/browserstack/-/browserstack-1.5.3.tgz",
- "integrity": "sha512-AO+mECXsW4QcqC9bxwM29O7qWa7bJT94uBFzeb5brylIQwawuEziwq20dPYbins95GlWzOawgyDNdjYAo32EKg==",
- "dev": true,
- "dependencies": {
- "https-proxy-agent": "^2.2.1"
- }
- },
- "node_modules/browserstack-local": {
- "version": "1.5.5",
- "resolved": "https://registry.npmjs.org/browserstack-local/-/browserstack-local-1.5.5.tgz",
- "integrity": "sha512-jKne7yosrMcptj3hqxp36TP9k0ZW2sCqhyurX24rUL4G3eT7OLgv+CSQN8iq5dtkv5IK+g+v8fWvsiC/S9KxMg==",
- "dev": true,
- "dependencies": {
- "agent-base": "^6.0.2",
- "https-proxy-agent": "^5.0.1",
- "is-running": "^2.1.0",
- "ps-tree": "=1.2.0",
- "temp-fs": "^0.9.9"
- }
- },
- "node_modules/browserstack-local/node_modules/agent-base": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
- "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
- "dev": true,
- "dependencies": {
- "debug": "4"
- },
- "engines": {
- "node": ">= 6.0.0"
- }
- },
- "node_modules/browserstack-local/node_modules/https-proxy-agent": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
- "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
- "dev": true,
- "dependencies": {
- "agent-base": "6",
- "debug": "4"
- },
- "engines": {
- "node": ">= 6"
- }
- },
"node_modules/buffer": {
"version": "5.7.1",
"resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/es6-promise": {
- "version": "4.2.8",
- "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz",
- "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==",
- "dev": true
- },
- "node_modules/es6-promisify": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz",
- "integrity": "sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==",
- "dev": true,
- "dependencies": {
- "es6-promise": "^4.0.3"
- }
- },
"node_modules/escalade": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz",
"node": ">=0.10.0"
}
},
- "node_modules/event-stream": {
- "version": "3.3.4",
- "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-3.3.4.tgz",
- "integrity": "sha512-QHpkERcGsR0T7Qm3HNJSyXKEEj8AHNxkY3PK8TS2KJvQ7NiSHe3DDpwVKKtoYprL/AreyzFBeIkBIWChAqn60g==",
- "dev": true,
- "dependencies": {
- "duplexer": "~0.1.1",
- "from": "~0",
- "map-stream": "~0.1.0",
- "pause-stream": "0.0.11",
- "split": "0.3",
- "stream-combiner": "~0.0.4",
- "through": "~2.3.1"
- }
- },
- "node_modules/event-stream/node_modules/split": {
- "version": "0.3.3",
- "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz",
- "integrity": "sha512-wD2AeVmxXRBoX44wAycgjVpMhvbwdI2aZjCkvfNcH1YqHQvJVa1duWc73OyVGJUc05fhFaTZeQ/PYsrmyH0JVA==",
- "dev": true,
- "dependencies": {
- "through": "2"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/eventemitter3": {
"version": "4.0.7",
"resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz",
"url": "https://github.com/sponsors/rawify"
}
},
- "node_modules/from": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz",
- "integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==",
- "dev": true
- },
"node_modules/fs-constants": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
"node": ">=10.19.0"
}
},
- "node_modules/https-proxy-agent": {
- "version": "2.2.4",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz",
- "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==",
- "dev": true,
- "dependencies": {
- "agent-base": "^4.3.0",
- "debug": "^3.1.0"
- },
- "engines": {
- "node": ">= 4.5.0"
- }
- },
- "node_modules/https-proxy-agent/node_modules/debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "dev": true,
- "dependencies": {
- "ms": "^2.1.1"
- }
- },
"node_modules/hugo-bin": {
"version": "0.120.7",
"resolved": "https://registry.npmjs.org/hugo-bin/-/hugo-bin-0.120.7.tgz",
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/is-running": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-running/-/is-running-2.1.0.tgz",
- "integrity": "sha512-mjJd3PujZMl7j+D395WTIO5tU5RIDBfVSRtRR4VOJou3H66E38UjbjvDGh3slJzPuolsb+yQFqwHNNdyp5jg3w==",
- "dev": true
- },
"node_modules/is-shared-array-buffer": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz",
"node": ">= 10"
}
},
- "node_modules/karma-browserstack-launcher": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/karma-browserstack-launcher/-/karma-browserstack-launcher-1.6.0.tgz",
- "integrity": "sha512-Y/UWPdHZkHIVH2To4GWHCTzmrsB6H7PBWy6pw+TWz5sr4HW2mcE+Uj6qWgoVNxvQU1Pfn5LQQzI6EQ65p8QbiQ==",
- "dev": true,
- "dependencies": {
- "browserstack": "~1.5.1",
- "browserstack-local": "^1.3.7",
- "q": "~1.5.0"
- },
- "peerDependencies": {
- "karma": ">=0.9"
- }
- },
"node_modules/karma-chrome-launcher": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.2.0.tgz",
"semver": "bin/semver"
}
},
- "node_modules/map-stream": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz",
- "integrity": "sha512-CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g==",
- "dev": true
- },
"node_modules/mathml-tag-names": {
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz",
"node": ">=8"
}
},
- "node_modules/pause-stream": {
- "version": "0.0.11",
- "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz",
- "integrity": "sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==",
- "dev": true,
- "dependencies": {
- "through": "~2.3"
- }
- },
"node_modules/peek-readable": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.0.0.tgz",
"integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
"dev": true
},
- "node_modules/ps-tree": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/ps-tree/-/ps-tree-1.2.0.tgz",
- "integrity": "sha512-0VnamPPYHl4uaU/nSFeZZpR21QAWRz+sRv4iW9+v/GS/J5U5iZB5BNN6J0RMoOvdx2gWM2+ZFMIm58q24e4UYA==",
- "dev": true,
- "dependencies": {
- "event-stream": "=3.3.4"
- },
- "bin": {
- "ps-tree": "bin/ps-tree.js"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
"node_modules/psl": {
"version": "1.9.0",
"resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz",
"node": ">= 0.6"
}
},
- "node_modules/stream-combiner": {
- "version": "0.0.4",
- "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz",
- "integrity": "sha512-rT00SPnTVyRsaSz5zgSPma/aHSOic5U1prhYdRy5HS2kTZviFpmDgzilbtsJsxiroqACmayynDN/9VzIbX5DOw==",
- "dev": true,
- "dependencies": {
- "duplexer": "~0.1.1"
- }
- },
"node_modules/streamroller": {
"version": "3.1.5",
"resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.5.tgz",
"streamx": "^2.15.0"
}
},
- "node_modules/temp-fs": {
- "version": "0.9.9",
- "resolved": "https://registry.npmjs.org/temp-fs/-/temp-fs-0.9.9.tgz",
- "integrity": "sha512-WfecDCR1xC9b0nsrzSaxPf3ZuWeWLUWblW4vlDQAa1biQaKHiImHnJfeQocQe/hXKMcolRzgkcVX/7kK4zoWbw==",
- "dev": true,
- "dependencies": {
- "rimraf": "~2.5.2"
- },
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/temp-fs/node_modules/rimraf": {
- "version": "2.5.4",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz",
- "integrity": "sha512-Lw7SHMjssciQb/rRz7JyPIy9+bbUshEucPoLRvWqy09vC5zQixl8Uet+Zl+SROBB/JMWHJRdCk1qdxNWHNMvlQ==",
- "dev": true,
- "dependencies": {
- "glob": "^7.0.5"
- },
- "bin": {
- "rimraf": "bin.js"
- }
- },
"node_modules/terser": {
"version": "5.27.2",
"resolved": "https://registry.npmjs.org/terser/-/terser-5.27.2.tgz",
"dev": true,
"requires": {}
},
- "agent-base": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz",
- "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==",
- "dev": true,
- "requires": {
- "es6-promisify": "^5.0.0"
- }
- },
"ajv": {
"version": "6.12.6",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
"update-browserslist-db": "^1.0.13"
}
},
- "browserstack": {
- "version": "1.5.3",
- "resolved": "https://registry.npmjs.org/browserstack/-/browserstack-1.5.3.tgz",
- "integrity": "sha512-AO+mECXsW4QcqC9bxwM29O7qWa7bJT94uBFzeb5brylIQwawuEziwq20dPYbins95GlWzOawgyDNdjYAo32EKg==",
- "dev": true,
- "requires": {
- "https-proxy-agent": "^2.2.1"
- }
- },
- "browserstack-local": {
- "version": "1.5.5",
- "resolved": "https://registry.npmjs.org/browserstack-local/-/browserstack-local-1.5.5.tgz",
- "integrity": "sha512-jKne7yosrMcptj3hqxp36TP9k0ZW2sCqhyurX24rUL4G3eT7OLgv+CSQN8iq5dtkv5IK+g+v8fWvsiC/S9KxMg==",
- "dev": true,
- "requires": {
- "agent-base": "^6.0.2",
- "https-proxy-agent": "^5.0.1",
- "is-running": "^2.1.0",
- "ps-tree": "=1.2.0",
- "temp-fs": "^0.9.9"
- },
- "dependencies": {
- "agent-base": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
- "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
- "dev": true,
- "requires": {
- "debug": "4"
- }
- },
- "https-proxy-agent": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
- "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
- "dev": true,
- "requires": {
- "agent-base": "6",
- "debug": "4"
- }
- }
- }
- },
"buffer": {
"version": "5.7.1",
"resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
"is-symbol": "^1.0.2"
}
},
- "es6-promise": {
- "version": "4.2.8",
- "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz",
- "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==",
- "dev": true
- },
- "es6-promisify": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz",
- "integrity": "sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==",
- "dev": true,
- "requires": {
- "es6-promise": "^4.0.3"
- }
- },
"escalade": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz",
"integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
"dev": true
},
- "event-stream": {
- "version": "3.3.4",
- "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-3.3.4.tgz",
- "integrity": "sha512-QHpkERcGsR0T7Qm3HNJSyXKEEj8AHNxkY3PK8TS2KJvQ7NiSHe3DDpwVKKtoYprL/AreyzFBeIkBIWChAqn60g==",
- "dev": true,
- "requires": {
- "duplexer": "~0.1.1",
- "from": "~0",
- "map-stream": "~0.1.0",
- "pause-stream": "0.0.11",
- "split": "0.3",
- "stream-combiner": "~0.0.4",
- "through": "~2.3.1"
- },
- "dependencies": {
- "split": {
- "version": "0.3.3",
- "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz",
- "integrity": "sha512-wD2AeVmxXRBoX44wAycgjVpMhvbwdI2aZjCkvfNcH1YqHQvJVa1duWc73OyVGJUc05fhFaTZeQ/PYsrmyH0JVA==",
- "dev": true,
- "requires": {
- "through": "2"
- }
- }
- }
- },
"eventemitter3": {
"version": "4.0.7",
"resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz",
"integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==",
"dev": true
},
- "from": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz",
- "integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==",
- "dev": true
- },
"fs-constants": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
"resolve-alpn": "^1.2.0"
}
},
- "https-proxy-agent": {
- "version": "2.2.4",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz",
- "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==",
- "dev": true,
- "requires": {
- "agent-base": "^4.3.0",
- "debug": "^3.1.0"
- },
- "dependencies": {
- "debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "dev": true,
- "requires": {
- "ms": "^2.1.1"
- }
- }
- }
- },
"hugo-bin": {
"version": "0.120.7",
"resolved": "https://registry.npmjs.org/hugo-bin/-/hugo-bin-0.120.7.tgz",
"has-tostringtag": "^1.0.0"
}
},
- "is-running": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-running/-/is-running-2.1.0.tgz",
- "integrity": "sha512-mjJd3PujZMl7j+D395WTIO5tU5RIDBfVSRtRR4VOJou3H66E38UjbjvDGh3slJzPuolsb+yQFqwHNNdyp5jg3w==",
- "dev": true
- },
"is-shared-array-buffer": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz",
"yargs": "^16.1.1"
}
},
- "karma-browserstack-launcher": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/karma-browserstack-launcher/-/karma-browserstack-launcher-1.6.0.tgz",
- "integrity": "sha512-Y/UWPdHZkHIVH2To4GWHCTzmrsB6H7PBWy6pw+TWz5sr4HW2mcE+Uj6qWgoVNxvQU1Pfn5LQQzI6EQ65p8QbiQ==",
- "dev": true,
- "requires": {
- "browserstack": "~1.5.1",
- "browserstack-local": "^1.3.7",
- "q": "~1.5.0"
- }
- },
"karma-chrome-launcher": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.2.0.tgz",
}
}
},
- "map-stream": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz",
- "integrity": "sha512-CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g==",
- "dev": true
- },
"mathml-tag-names": {
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz",
"integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
"dev": true
},
- "pause-stream": {
- "version": "0.0.11",
- "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz",
- "integrity": "sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==",
- "dev": true,
- "requires": {
- "through": "~2.3"
- }
- },
"peek-readable": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.0.0.tgz",
"integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
"dev": true
},
- "ps-tree": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/ps-tree/-/ps-tree-1.2.0.tgz",
- "integrity": "sha512-0VnamPPYHl4uaU/nSFeZZpR21QAWRz+sRv4iW9+v/GS/J5U5iZB5BNN6J0RMoOvdx2gWM2+ZFMIm58q24e4UYA==",
- "dev": true,
- "requires": {
- "event-stream": "=3.3.4"
- }
- },
"psl": {
"version": "1.9.0",
"resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz",
"integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==",
"dev": true
},
- "stream-combiner": {
- "version": "0.0.4",
- "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz",
- "integrity": "sha512-rT00SPnTVyRsaSz5zgSPma/aHSOic5U1prhYdRy5HS2kTZviFpmDgzilbtsJsxiroqACmayynDN/9VzIbX5DOw==",
- "dev": true,
- "requires": {
- "duplexer": "~0.1.1"
- }
- },
"streamroller": {
"version": "3.1.5",
"resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.5.tgz",
"streamx": "^2.15.0"
}
},
- "temp-fs": {
- "version": "0.9.9",
- "resolved": "https://registry.npmjs.org/temp-fs/-/temp-fs-0.9.9.tgz",
- "integrity": "sha512-WfecDCR1xC9b0nsrzSaxPf3ZuWeWLUWblW4vlDQAa1biQaKHiImHnJfeQocQe/hXKMcolRzgkcVX/7kK4zoWbw==",
- "dev": true,
- "requires": {
- "rimraf": "~2.5.2"
- },
- "dependencies": {
- "rimraf": {
- "version": "2.5.4",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz",
- "integrity": "sha512-Lw7SHMjssciQb/rRz7JyPIy9+bbUshEucPoLRvWqy09vC5zQixl8Uet+Zl+SROBB/JMWHJRdCk1qdxNWHNMvlQ==",
- "dev": true,
- "requires": {
- "glob": "^7.0.5"
- }
- }
- }
- },
"terser": {
"version": "5.27.2",
"resolved": "https://registry.npmjs.org/terser/-/terser-5.27.2.tgz",