@rspack/core 1.3.12 → 1.3.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (156) hide show
  1. package/README.md +2 -2
  2. package/compiled/browserslist-load-config/index.d.ts +10 -0
  3. package/compiled/browserslist-load-config/index.js +266 -0
  4. package/compiled/browserslist-load-config/license +21 -0
  5. package/compiled/browserslist-load-config/package.json +1 -0
  6. package/compiled/watchpack/index.js +18 -14
  7. package/compiled/watchpack/package.json +1 -1
  8. package/compiled/zod/dist/types/v3/types.d.ts +2 -2
  9. package/compiled/zod/dist/types/v4/classic/coerce.d.ts +5 -5
  10. package/compiled/zod/dist/types/v4/classic/external.d.ts +6 -1
  11. package/compiled/zod/dist/types/v4/classic/schemas.d.ts +95 -133
  12. package/compiled/zod/dist/types/v4/core/api.d.ts +2 -2
  13. package/compiled/zod/dist/types/v4/core/core.d.ts +11 -7
  14. package/compiled/zod/dist/types/v4/core/errors.d.ts +0 -1
  15. package/compiled/zod/dist/types/v4/core/function.d.ts +16 -11
  16. package/compiled/zod/dist/types/v4/core/regexes.d.ts +1 -1
  17. package/compiled/zod/dist/types/v4/core/registries.d.ts +6 -1
  18. package/compiled/zod/dist/types/v4/core/schemas.d.ts +145 -117
  19. package/compiled/zod/dist/types/v4/core/util.d.ts +5 -9
  20. package/compiled/zod/dist/types/v4/locales/ar.d.ts +0 -3
  21. package/compiled/zod/dist/types/v4/locales/az.d.ts +0 -3
  22. package/compiled/zod/dist/types/v4/locales/be.d.ts +0 -3
  23. package/compiled/zod/dist/types/v4/locales/ca.d.ts +0 -3
  24. package/compiled/zod/dist/types/v4/locales/cs.d.ts +0 -3
  25. package/compiled/zod/dist/types/v4/locales/de.d.ts +0 -3
  26. package/compiled/zod/dist/types/v4/locales/en.d.ts +0 -2
  27. package/compiled/zod/dist/types/v4/locales/es.d.ts +0 -3
  28. package/compiled/zod/dist/types/v4/locales/fa.d.ts +0 -3
  29. package/compiled/zod/dist/types/v4/locales/fi.d.ts +0 -3
  30. package/compiled/zod/dist/types/v4/locales/{frCA.d.ts → fr-CA.d.ts} +0 -3
  31. package/compiled/zod/dist/types/v4/locales/fr.d.ts +0 -3
  32. package/compiled/zod/dist/types/v4/locales/he.d.ts +0 -3
  33. package/compiled/zod/dist/types/v4/locales/hu.d.ts +0 -3
  34. package/compiled/zod/dist/types/v4/locales/id.d.ts +0 -3
  35. package/compiled/zod/dist/types/v4/locales/index.d.ts +5 -2
  36. package/compiled/zod/dist/types/v4/locales/it.d.ts +0 -3
  37. package/compiled/zod/dist/types/v4/locales/ja.d.ts +0 -3
  38. package/compiled/zod/dist/types/v4/locales/{zh-tw.d.ts → kh.d.ts} +0 -3
  39. package/compiled/zod/dist/types/v4/locales/ko.d.ts +0 -3
  40. package/compiled/zod/dist/types/v4/locales/mk.d.ts +0 -3
  41. package/compiled/zod/dist/types/v4/locales/ms.d.ts +0 -3
  42. package/compiled/zod/dist/types/v4/locales/nl.d.ts +4 -0
  43. package/compiled/zod/dist/types/v4/locales/no.d.ts +0 -3
  44. package/compiled/zod/dist/types/v4/locales/ota.d.ts +0 -3
  45. package/compiled/zod/dist/types/v4/locales/pl.d.ts +0 -3
  46. package/compiled/zod/dist/types/v4/locales/pt.d.ts +0 -3
  47. package/compiled/zod/dist/types/v4/locales/ru.d.ts +0 -3
  48. package/compiled/zod/dist/types/v4/locales/sl.d.ts +0 -3
  49. package/compiled/zod/dist/types/v4/locales/sv.d.ts +4 -0
  50. package/compiled/zod/dist/types/v4/locales/ta.d.ts +0 -3
  51. package/compiled/zod/dist/types/v4/locales/th.d.ts +0 -3
  52. package/compiled/zod/dist/types/v4/locales/tr.d.ts +0 -2
  53. package/compiled/zod/dist/types/v4/locales/ua.d.ts +0 -3
  54. package/compiled/zod/dist/types/v4/locales/ur.d.ts +0 -3
  55. package/compiled/zod/dist/types/v4/locales/vi.d.ts +0 -3
  56. package/compiled/zod/dist/types/v4/locales/zh-CN.d.ts +0 -3
  57. package/compiled/zod/dist/types/v4/locales/zh-TW.d.ts +4 -0
  58. package/compiled/zod/dist/types/v4/mini/external.d.ts +5 -1
  59. package/compiled/zod/dist/types/v4/mini/schemas.d.ts +40 -49
  60. package/compiled/zod/index.js +42 -64
  61. package/compiled/zod/package.json +1 -1
  62. package/compiled/zod/v3/index.d.ts +3 -1
  63. package/compiled/zod/v4/core/index.d.ts +1 -1
  64. package/compiled/zod/v4/index.d.ts +3 -1
  65. package/compiled/zod/v4/locales/index.d.ts +1 -1
  66. package/compiled/zod/v4-mini/index.d.ts +1 -1
  67. package/dist/ErrorHelpers.d.ts +0 -15
  68. package/dist/Module.d.ts +5 -1
  69. package/dist/ModuleTypeConstants.d.ts +0 -85
  70. package/dist/RspackError.d.ts +0 -3
  71. package/dist/builtin-loader/lightningcss/index.d.ts +23 -1
  72. package/dist/builtin-loader/swc/types.d.ts +289 -2426
  73. package/dist/builtin-plugin/APIPlugin.d.ts +1 -1
  74. package/dist/builtin-plugin/ArrayPushCallbackChunkFormatPlugin.d.ts +1 -1
  75. package/dist/builtin-plugin/AssetModulesPlugin.d.ts +1 -1
  76. package/dist/builtin-plugin/AsyncWebAssemblyModulesPlugin.d.ts +1 -1
  77. package/dist/builtin-plugin/BannerPlugin.d.ts +1 -1
  78. package/dist/builtin-plugin/BundlerInfoRspackPlugin.d.ts +1 -1
  79. package/dist/builtin-plugin/ChunkPrefetchPreloadPlugin.d.ts +1 -1
  80. package/dist/builtin-plugin/CommonJsChunkFormatPlugin.d.ts +1 -1
  81. package/dist/builtin-plugin/ContextReplacementPlugin.d.ts +1 -1
  82. package/dist/builtin-plugin/CopyRspackPlugin.d.ts +1 -1
  83. package/dist/builtin-plugin/CssChunkingPlugin.d.ts +1 -1
  84. package/dist/builtin-plugin/CssModulesPlugin.d.ts +1 -1
  85. package/dist/builtin-plugin/DataUriPlugin.d.ts +1 -1
  86. package/dist/builtin-plugin/DefinePlugin.d.ts +1 -1
  87. package/dist/builtin-plugin/DllEntryPlugin.d.ts +1 -1
  88. package/dist/builtin-plugin/DllReferenceAgencyPlugin.d.ts +1 -1
  89. package/dist/builtin-plugin/ElectronTargetPlugin.d.ts +1 -1
  90. package/dist/builtin-plugin/EnableChunkLoadingPlugin.d.ts +1 -1
  91. package/dist/builtin-plugin/EnableWasmLoadingPlugin.d.ts +1 -1
  92. package/dist/builtin-plugin/EnsureChunkConditionsPlugin.d.ts +1 -1
  93. package/dist/builtin-plugin/EntryPlugin.d.ts +1 -1
  94. package/dist/builtin-plugin/EvalDevToolModulePlugin.d.ts +1 -1
  95. package/dist/builtin-plugin/EvalSourceMapDevToolPlugin.d.ts +1 -1
  96. package/dist/builtin-plugin/FetchCompileAsyncWasmPlugin.d.ts +1 -1
  97. package/dist/builtin-plugin/FileUriPlugin.d.ts +1 -1
  98. package/dist/builtin-plugin/FlagAllModulesAsUsedPlugin.d.ts +1 -1
  99. package/dist/builtin-plugin/FlagDependencyExportsPlugin.d.ts +1 -1
  100. package/dist/builtin-plugin/HttpExternalsRspackPlugin.d.ts +1 -1
  101. package/dist/builtin-plugin/IgnorePlugin.d.ts +1 -1
  102. package/dist/builtin-plugin/InferAsyncModulesPlugin.d.ts +1 -1
  103. package/dist/builtin-plugin/JsLoaderRspackPlugin.d.ts +1 -1
  104. package/dist/builtin-plugin/JsonModulesPlugin.d.ts +1 -1
  105. package/dist/builtin-plugin/LibManifestPlugin.d.ts +1 -1
  106. package/dist/builtin-plugin/LightningCssMinimizerRspackPlugin.d.ts +1 -1
  107. package/dist/builtin-plugin/LimitChunkCountPlugin.d.ts +1 -1
  108. package/dist/builtin-plugin/MergeDuplicateChunksPlugin.d.ts +1 -1
  109. package/dist/builtin-plugin/ModuleChunkFormatPlugin.d.ts +1 -1
  110. package/dist/builtin-plugin/ModuleInfoHeaderPlugin.d.ts +1 -1
  111. package/dist/builtin-plugin/NamedChunkIdsPlugin.d.ts +1 -1
  112. package/dist/builtin-plugin/NamedModuleIdsPlugin.d.ts +1 -1
  113. package/dist/builtin-plugin/NoEmitOnErrorsPlugin.d.ts +1 -1
  114. package/dist/builtin-plugin/NodeTargetPlugin.d.ts +1 -1
  115. package/dist/builtin-plugin/OccurrenceChunkIdsPlugin.d.ts +1 -1
  116. package/dist/builtin-plugin/ProgressPlugin.d.ts +1 -1
  117. package/dist/builtin-plugin/ProvidePlugin.d.ts +1 -1
  118. package/dist/builtin-plugin/RealContentHashPlugin.d.ts +1 -1
  119. package/dist/builtin-plugin/RemoveDuplicateModulesPlugin.d.ts +1 -1
  120. package/dist/builtin-plugin/RemoveEmptyChunksPlugin.d.ts +1 -1
  121. package/dist/builtin-plugin/RsdoctorPlugin.d.ts +1 -1
  122. package/dist/builtin-plugin/RstestPlugin.d.ts +1 -1
  123. package/dist/builtin-plugin/RuntimeChunkPlugin.d.ts +1 -1
  124. package/dist/builtin-plugin/RuntimePlugin.d.ts +1 -1
  125. package/dist/builtin-plugin/SideEffectsFlagPlugin.d.ts +1 -1
  126. package/dist/builtin-plugin/SizeLimitsPlugin.d.ts +1 -1
  127. package/dist/builtin-plugin/SourceMapDevToolPlugin.d.ts +1 -1
  128. package/dist/builtin-plugin/SubresourceIntegrityPlugin.d.ts +1 -1
  129. package/dist/builtin-plugin/SwcJsMinimizerPlugin.d.ts +1 -1
  130. package/dist/builtin-plugin/WarnCaseSensitiveModulesPlugin.d.ts +1 -1
  131. package/dist/builtin-plugin/base.d.ts +1 -2
  132. package/dist/builtin-plugin/html-plugin/plugin.d.ts +1 -1
  133. package/dist/builtin-plugin/lazy-compilation/lazyCompilation.d.ts +1 -1
  134. package/dist/config/browserslistTargetHandler.d.ts +0 -6
  135. package/dist/config/zod.d.ts +370 -370
  136. package/dist/container/ModuleFederationRuntimePlugin.d.ts +1 -1
  137. package/dist/exports.d.ts +1 -0
  138. package/dist/index.js +67 -71
  139. package/dist/lib/AbstractMethodError.d.ts +0 -1
  140. package/dist/lib/CacheFacade.d.ts +0 -28
  141. package/dist/loader-runner/index.d.ts +1 -0
  142. package/dist/stats/statsFactoryUtils.d.ts +24 -4
  143. package/dist/util/cleverMerge.d.ts +0 -30
  144. package/dist/util/comparators.d.ts +0 -4
  145. package/dist/util/hash/wasm-hash.d.ts +0 -1
  146. package/dist/util/identifier.d.ts +0 -12
  147. package/dist/util/index.d.ts +1 -7
  148. package/dist/util/memoize.d.ts +0 -1
  149. package/dist/worker.js +5 -7
  150. package/module.d.ts +53 -21
  151. package/package.json +11 -12
  152. package/compiled/browserslist/index.d.ts +0 -1
  153. package/compiled/browserslist/index.js +0 -2123
  154. package/compiled/browserslist/license +0 -20
  155. package/compiled/browserslist/package.json +0 -1
  156. package/dist/util/hash/BatchedHash.d.ts +0 -25
@@ -1,2123 +0,0 @@
1
- /******/ (() => { // webpackBootstrap
2
- /******/ var __webpack_modules__ = ({
3
-
4
- /***/ 523:
5
- /***/ ((module) => {
6
-
7
- function BrowserslistError(message) {
8
- this.name = 'BrowserslistError'
9
- this.message = message
10
- this.browserslist = true
11
- if (Error.captureStackTrace) {
12
- Error.captureStackTrace(this, BrowserslistError)
13
- }
14
- }
15
-
16
- BrowserslistError.prototype = Error.prototype
17
-
18
- module.exports = BrowserslistError
19
-
20
-
21
- /***/ }),
22
-
23
- /***/ 113:
24
- /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
25
-
26
- var jsReleases = __nccwpck_require__(613)
27
- var agents = (__nccwpck_require__(946).agents)
28
- var e2c = __nccwpck_require__(867)
29
- var jsEOL = __nccwpck_require__(995)
30
- var path = __nccwpck_require__(928)
31
-
32
- var BrowserslistError = __nccwpck_require__(523)
33
- var env = __nccwpck_require__(217)
34
- var parseWithoutCache = __nccwpck_require__(494) // Will load browser.js in webpack
35
-
36
- var YEAR = 365.259641 * 24 * 60 * 60 * 1000
37
- var ANDROID_EVERGREEN_FIRST = '37'
38
- var OP_MOB_BLINK_FIRST = 14
39
-
40
- // Helpers
41
-
42
- function isVersionsMatch(versionA, versionB) {
43
- return (versionA + '.').indexOf(versionB + '.') === 0
44
- }
45
-
46
- function isEolReleased(name) {
47
- var version = name.slice(1)
48
- return browserslist.nodeVersions.some(function (i) {
49
- return isVersionsMatch(i, version)
50
- })
51
- }
52
-
53
- function normalize(versions) {
54
- return versions.filter(function (version) {
55
- return typeof version === 'string'
56
- })
57
- }
58
-
59
- function normalizeElectron(version) {
60
- var versionToUse = version
61
- if (version.split('.').length === 3) {
62
- versionToUse = version.split('.').slice(0, -1).join('.')
63
- }
64
- return versionToUse
65
- }
66
-
67
- function nameMapper(name) {
68
- return function mapName(version) {
69
- return name + ' ' + version
70
- }
71
- }
72
-
73
- function getMajor(version) {
74
- return parseInt(version.split('.')[0])
75
- }
76
-
77
- function getMajorVersions(released, number) {
78
- if (released.length === 0) return []
79
- var majorVersions = uniq(released.map(getMajor))
80
- var minimum = majorVersions[majorVersions.length - number]
81
- if (!minimum) {
82
- return released
83
- }
84
- var selected = []
85
- for (var i = released.length - 1; i >= 0; i--) {
86
- if (minimum > getMajor(released[i])) break
87
- selected.unshift(released[i])
88
- }
89
- return selected
90
- }
91
-
92
- function uniq(array) {
93
- var filtered = []
94
- for (var i = 0; i < array.length; i++) {
95
- if (filtered.indexOf(array[i]) === -1) filtered.push(array[i])
96
- }
97
- return filtered
98
- }
99
-
100
- function fillUsage(result, name, data) {
101
- for (var i in data) {
102
- result[name + ' ' + i] = data[i]
103
- }
104
- }
105
-
106
- function generateFilter(sign, version) {
107
- version = parseFloat(version)
108
- if (sign === '>') {
109
- return function (v) {
110
- return parseLatestFloat(v) > version
111
- }
112
- } else if (sign === '>=') {
113
- return function (v) {
114
- return parseLatestFloat(v) >= version
115
- }
116
- } else if (sign === '<') {
117
- return function (v) {
118
- return parseFloat(v) < version
119
- }
120
- } else {
121
- return function (v) {
122
- return parseFloat(v) <= version
123
- }
124
- }
125
-
126
- function parseLatestFloat(v) {
127
- return parseFloat(v.split('-')[1] || v)
128
- }
129
- }
130
-
131
- function generateSemverFilter(sign, version) {
132
- version = version.split('.').map(parseSimpleInt)
133
- version[1] = version[1] || 0
134
- version[2] = version[2] || 0
135
- if (sign === '>') {
136
- return function (v) {
137
- v = v.split('.').map(parseSimpleInt)
138
- return compareSemver(v, version) > 0
139
- }
140
- } else if (sign === '>=') {
141
- return function (v) {
142
- v = v.split('.').map(parseSimpleInt)
143
- return compareSemver(v, version) >= 0
144
- }
145
- } else if (sign === '<') {
146
- return function (v) {
147
- v = v.split('.').map(parseSimpleInt)
148
- return compareSemver(version, v) > 0
149
- }
150
- } else {
151
- return function (v) {
152
- v = v.split('.').map(parseSimpleInt)
153
- return compareSemver(version, v) >= 0
154
- }
155
- }
156
- }
157
-
158
- function parseSimpleInt(x) {
159
- return parseInt(x)
160
- }
161
-
162
- function compare(a, b) {
163
- if (a < b) return -1
164
- if (a > b) return +1
165
- return 0
166
- }
167
-
168
- function compareSemver(a, b) {
169
- return (
170
- compare(parseInt(a[0]), parseInt(b[0])) ||
171
- compare(parseInt(a[1] || '0'), parseInt(b[1] || '0')) ||
172
- compare(parseInt(a[2] || '0'), parseInt(b[2] || '0'))
173
- )
174
- }
175
-
176
- // this follows the npm-like semver behavior
177
- function semverFilterLoose(operator, range) {
178
- range = range.split('.').map(parseSimpleInt)
179
- if (typeof range[1] === 'undefined') {
180
- range[1] = 'x'
181
- }
182
- // ignore any patch version because we only return minor versions
183
- // range[2] = 'x'
184
- switch (operator) {
185
- case '<=':
186
- return function (version) {
187
- version = version.split('.').map(parseSimpleInt)
188
- return compareSemverLoose(version, range) <= 0
189
- }
190
- case '>=':
191
- default:
192
- return function (version) {
193
- version = version.split('.').map(parseSimpleInt)
194
- return compareSemverLoose(version, range) >= 0
195
- }
196
- }
197
- }
198
-
199
- // this follows the npm-like semver behavior
200
- function compareSemverLoose(version, range) {
201
- if (version[0] !== range[0]) {
202
- return version[0] < range[0] ? -1 : +1
203
- }
204
- if (range[1] === 'x') {
205
- return 0
206
- }
207
- if (version[1] !== range[1]) {
208
- return version[1] < range[1] ? -1 : +1
209
- }
210
- return 0
211
- }
212
-
213
- function resolveVersion(data, version) {
214
- if (data.versions.indexOf(version) !== -1) {
215
- return version
216
- } else if (browserslist.versionAliases[data.name][version]) {
217
- return browserslist.versionAliases[data.name][version]
218
- } else {
219
- return false
220
- }
221
- }
222
-
223
- function normalizeVersion(data, version) {
224
- var resolved = resolveVersion(data, version)
225
- if (resolved) {
226
- return resolved
227
- } else if (data.versions.length === 1) {
228
- return data.versions[0]
229
- } else {
230
- return false
231
- }
232
- }
233
-
234
- function filterByYear(since, context) {
235
- since = since / 1000
236
- return Object.keys(agents).reduce(function (selected, name) {
237
- var data = byName(name, context)
238
- if (!data) return selected
239
- var versions = Object.keys(data.releaseDate).filter(function (v) {
240
- var date = data.releaseDate[v]
241
- return date !== null && date >= since
242
- })
243
- return selected.concat(versions.map(nameMapper(data.name)))
244
- }, [])
245
- }
246
-
247
- function cloneData(data) {
248
- return {
249
- name: data.name,
250
- versions: data.versions,
251
- released: data.released,
252
- releaseDate: data.releaseDate
253
- }
254
- }
255
-
256
- function byName(name, context) {
257
- name = name.toLowerCase()
258
- name = browserslist.aliases[name] || name
259
- if (context.mobileToDesktop && browserslist.desktopNames[name]) {
260
- var desktop = browserslist.data[browserslist.desktopNames[name]]
261
- if (name === 'android') {
262
- return normalizeAndroidData(cloneData(browserslist.data[name]), desktop)
263
- } else {
264
- var cloned = cloneData(desktop)
265
- cloned.name = name
266
- return cloned
267
- }
268
- }
269
- return browserslist.data[name]
270
- }
271
-
272
- function normalizeAndroidVersions(androidVersions, chromeVersions) {
273
- var iFirstEvergreen = chromeVersions.indexOf(ANDROID_EVERGREEN_FIRST)
274
- return androidVersions
275
- .filter(function (version) {
276
- return /^(?:[2-4]\.|[34]$)/.test(version)
277
- })
278
- .concat(chromeVersions.slice(iFirstEvergreen))
279
- }
280
-
281
- function copyObject(obj) {
282
- var copy = {}
283
- for (var key in obj) {
284
- copy[key] = obj[key]
285
- }
286
- return copy
287
- }
288
-
289
- function normalizeAndroidData(android, chrome) {
290
- android.released = normalizeAndroidVersions(android.released, chrome.released)
291
- android.versions = normalizeAndroidVersions(android.versions, chrome.versions)
292
- android.releaseDate = copyObject(android.releaseDate)
293
- android.released.forEach(function (v) {
294
- if (android.releaseDate[v] === undefined) {
295
- android.releaseDate[v] = chrome.releaseDate[v]
296
- }
297
- })
298
- return android
299
- }
300
-
301
- function checkName(name, context) {
302
- var data = byName(name, context)
303
- if (!data) throw new BrowserslistError('Unknown browser ' + name)
304
- return data
305
- }
306
-
307
- function unknownQuery(query) {
308
- return new BrowserslistError(
309
- 'Unknown browser query `' +
310
- query +
311
- '`. ' +
312
- 'Maybe you are using old Browserslist or made typo in query.'
313
- )
314
- }
315
-
316
- // Adjusts last X versions queries for some mobile browsers,
317
- // where caniuse data jumps from a legacy version to the latest
318
- function filterJumps(list, name, nVersions, context) {
319
- var jump = 1
320
- switch (name) {
321
- case 'android':
322
- if (context.mobileToDesktop) return list
323
- var released = browserslist.data.chrome.released
324
- jump = released.length - released.indexOf(ANDROID_EVERGREEN_FIRST)
325
- break
326
- case 'op_mob':
327
- var latest = browserslist.data.op_mob.released.slice(-1)[0]
328
- jump = getMajor(latest) - OP_MOB_BLINK_FIRST + 1
329
- break
330
- default:
331
- return list
332
- }
333
- if (nVersions <= jump) {
334
- return list.slice(-1)
335
- }
336
- return list.slice(jump - 1 - nVersions)
337
- }
338
-
339
- function isSupported(flags, withPartial) {
340
- return (
341
- typeof flags === 'string' &&
342
- (flags.indexOf('y') >= 0 || (withPartial && flags.indexOf('a') >= 0))
343
- )
344
- }
345
-
346
- function resolve(queries, context) {
347
- return parseQueries(queries).reduce(function (result, node, index) {
348
- if (node.not && index === 0) {
349
- throw new BrowserslistError(
350
- 'Write any browsers query (for instance, `defaults`) ' +
351
- 'before `' +
352
- node.query +
353
- '`'
354
- )
355
- }
356
- var type = QUERIES[node.type]
357
- var array = type.select.call(browserslist, context, node).map(function (j) {
358
- var parts = j.split(' ')
359
- if (parts[1] === '0') {
360
- return parts[0] + ' ' + byName(parts[0], context).versions[0]
361
- } else {
362
- return j
363
- }
364
- })
365
-
366
- if (node.compose === 'and') {
367
- if (node.not) {
368
- return result.filter(function (j) {
369
- return array.indexOf(j) === -1
370
- })
371
- } else {
372
- return result.filter(function (j) {
373
- return array.indexOf(j) !== -1
374
- })
375
- }
376
- } else {
377
- if (node.not) {
378
- var filter = {}
379
- array.forEach(function (j) {
380
- filter[j] = true
381
- })
382
- return result.filter(function (j) {
383
- return !filter[j]
384
- })
385
- }
386
- return result.concat(array)
387
- }
388
- }, [])
389
- }
390
-
391
- function prepareOpts(opts) {
392
- if (typeof opts === 'undefined') opts = {}
393
-
394
- if (typeof opts.path === 'undefined') {
395
- opts.path = path.resolve ? path.resolve('.') : '.'
396
- }
397
-
398
- return opts
399
- }
400
-
401
- function prepareQueries(queries, opts) {
402
- if (typeof queries === 'undefined' || queries === null) {
403
- var config = browserslist.loadConfig(opts)
404
- if (config) {
405
- queries = config
406
- } else {
407
- queries = browserslist.defaults
408
- }
409
- }
410
-
411
- return queries
412
- }
413
-
414
- function checkQueries(queries) {
415
- if (!(typeof queries === 'string' || Array.isArray(queries))) {
416
- throw new BrowserslistError(
417
- 'Browser queries must be an array or string. Got ' + typeof queries + '.'
418
- )
419
- }
420
- }
421
-
422
- var cache = {}
423
- var parseCache = {}
424
-
425
- function browserslist(queries, opts) {
426
- opts = prepareOpts(opts)
427
- queries = prepareQueries(queries, opts)
428
- checkQueries(queries)
429
-
430
- var needsPath = parseQueries(queries).some(function (node) {
431
- return QUERIES[node.type].needsPath
432
- })
433
- var context = {
434
- ignoreUnknownVersions: opts.ignoreUnknownVersions,
435
- dangerousExtend: opts.dangerousExtend,
436
- mobileToDesktop: opts.mobileToDesktop,
437
- env: opts.env
438
- }
439
- // Removing to avoid using context.path without marking query as needsPath
440
- if (needsPath) {
441
- context.path = opts.path
442
- }
443
-
444
- env.oldDataWarning(browserslist.data)
445
- var stats = env.getStat(opts, browserslist.data)
446
- if (stats) {
447
- context.customUsage = {}
448
- for (var browser in stats) {
449
- fillUsage(context.customUsage, browser, stats[browser])
450
- }
451
- }
452
-
453
- var cacheKey = JSON.stringify([queries, context])
454
- if (cache[cacheKey]) return cache[cacheKey]
455
-
456
- var result = uniq(resolve(queries, context)).sort(function (name1, name2) {
457
- name1 = name1.split(' ')
458
- name2 = name2.split(' ')
459
- if (name1[0] === name2[0]) {
460
- // assumptions on caniuse data
461
- // 1) version ranges never overlaps
462
- // 2) if version is not a range, it never contains `-`
463
- var version1 = name1[1].split('-')[0]
464
- var version2 = name2[1].split('-')[0]
465
- return compareSemver(version2.split('.'), version1.split('.'))
466
- } else {
467
- return compare(name1[0], name2[0])
468
- }
469
- })
470
- if (!env.env.BROWSERSLIST_DISABLE_CACHE) {
471
- cache[cacheKey] = result
472
- }
473
- return result
474
- }
475
-
476
- function parseQueries(queries) {
477
- var cacheKey = JSON.stringify(queries)
478
- if (cacheKey in parseCache) return parseCache[cacheKey]
479
- var result = parseWithoutCache(QUERIES, queries)
480
- if (!env.env.BROWSERSLIST_DISABLE_CACHE) {
481
- parseCache[cacheKey] = result
482
- }
483
- return result
484
- }
485
-
486
- browserslist.parse = function (queries, opts) {
487
- opts = prepareOpts(opts)
488
- queries = prepareQueries(queries, opts)
489
- checkQueries(queries)
490
- return parseQueries(queries)
491
- }
492
-
493
- // Will be filled by Can I Use data below
494
- browserslist.cache = {}
495
- browserslist.data = {}
496
- browserslist.usage = {
497
- global: {},
498
- custom: null
499
- }
500
-
501
- // Default browsers query
502
- browserslist.defaults = ['> 0.5%', 'last 2 versions', 'Firefox ESR', 'not dead']
503
-
504
- // Browser names aliases
505
- browserslist.aliases = {
506
- fx: 'firefox',
507
- ff: 'firefox',
508
- ios: 'ios_saf',
509
- explorer: 'ie',
510
- blackberry: 'bb',
511
- explorermobile: 'ie_mob',
512
- operamini: 'op_mini',
513
- operamobile: 'op_mob',
514
- chromeandroid: 'and_chr',
515
- firefoxandroid: 'and_ff',
516
- ucandroid: 'and_uc',
517
- qqandroid: 'and_qq'
518
- }
519
-
520
- // Can I Use only provides a few versions for some browsers (e.g. and_chr).
521
- // Fallback to a similar browser for unknown versions
522
- // Note op_mob is not included as its chromium versions are not in sync with Opera desktop
523
- browserslist.desktopNames = {
524
- and_chr: 'chrome',
525
- and_ff: 'firefox',
526
- ie_mob: 'ie',
527
- android: 'chrome' // has extra processing logic
528
- }
529
-
530
- // Aliases to work with joined versions like `ios_saf 7.0-7.1`
531
- browserslist.versionAliases = {}
532
-
533
- browserslist.clearCaches = env.clearCaches
534
- browserslist.parseConfig = env.parseConfig
535
- browserslist.readConfig = env.readConfig
536
- browserslist.findConfigFile = env.findConfigFile
537
- browserslist.findConfig = env.findConfig
538
- browserslist.loadConfig = env.loadConfig
539
-
540
- browserslist.coverage = function (browsers, stats) {
541
- var data
542
- if (typeof stats === 'undefined') {
543
- data = browserslist.usage.global
544
- } else if (stats === 'my stats') {
545
- var opts = {}
546
- opts.path = path.resolve ? path.resolve('.') : '.'
547
- var customStats = env.getStat(opts)
548
- if (!customStats) {
549
- throw new BrowserslistError('Custom usage statistics was not provided')
550
- }
551
- data = {}
552
- for (var browser in customStats) {
553
- fillUsage(data, browser, customStats[browser])
554
- }
555
- } else if (typeof stats === 'string') {
556
- if (stats.length > 2) {
557
- stats = stats.toLowerCase()
558
- } else {
559
- stats = stats.toUpperCase()
560
- }
561
- env.loadCountry(browserslist.usage, stats, browserslist.data)
562
- data = browserslist.usage[stats]
563
- } else {
564
- if ('dataByBrowser' in stats) {
565
- stats = stats.dataByBrowser
566
- }
567
- data = {}
568
- for (var name in stats) {
569
- for (var version in stats[name]) {
570
- data[name + ' ' + version] = stats[name][version]
571
- }
572
- }
573
- }
574
-
575
- return browsers.reduce(function (all, i) {
576
- var usage = data[i]
577
- if (usage === undefined) {
578
- usage = data[i.replace(/ \S+$/, ' 0')]
579
- }
580
- return all + (usage || 0)
581
- }, 0)
582
- }
583
-
584
- function nodeQuery(context, node) {
585
- var matched = browserslist.nodeVersions.filter(function (i) {
586
- return isVersionsMatch(i, node.version)
587
- })
588
- if (matched.length === 0) {
589
- if (context.ignoreUnknownVersions) {
590
- return []
591
- } else {
592
- throw new BrowserslistError(
593
- 'Unknown version ' + node.version + ' of Node.js'
594
- )
595
- }
596
- }
597
- return ['node ' + matched[matched.length - 1]]
598
- }
599
-
600
- function sinceQuery(context, node) {
601
- var year = parseInt(node.year)
602
- var month = parseInt(node.month || '01') - 1
603
- var day = parseInt(node.day || '01')
604
- return filterByYear(Date.UTC(year, month, day, 0, 0, 0), context)
605
- }
606
-
607
- function coverQuery(context, node) {
608
- var coverage = parseFloat(node.coverage)
609
- var usage = browserslist.usage.global
610
- if (node.place) {
611
- if (node.place.match(/^my\s+stats$/i)) {
612
- if (!context.customUsage) {
613
- throw new BrowserslistError('Custom usage statistics was not provided')
614
- }
615
- usage = context.customUsage
616
- } else {
617
- var place
618
- if (node.place.length === 2) {
619
- place = node.place.toUpperCase()
620
- } else {
621
- place = node.place.toLowerCase()
622
- }
623
- env.loadCountry(browserslist.usage, place, browserslist.data)
624
- usage = browserslist.usage[place]
625
- }
626
- }
627
- var versions = Object.keys(usage).sort(function (a, b) {
628
- return usage[b] - usage[a]
629
- })
630
- var coveraged = 0
631
- var result = []
632
- var version
633
- for (var i = 0; i < versions.length; i++) {
634
- version = versions[i]
635
- if (usage[version] === 0) break
636
- coveraged += usage[version]
637
- result.push(version)
638
- if (coveraged >= coverage) break
639
- }
640
- return result
641
- }
642
-
643
- var QUERIES = {
644
- last_major_versions: {
645
- matches: ['versions'],
646
- regexp: /^last\s+(\d+)\s+major\s+versions?$/i,
647
- select: function (context, node) {
648
- return Object.keys(agents).reduce(function (selected, name) {
649
- var data = byName(name, context)
650
- if (!data) return selected
651
- var list = getMajorVersions(data.released, node.versions)
652
- list = list.map(nameMapper(data.name))
653
- list = filterJumps(list, data.name, node.versions, context)
654
- return selected.concat(list)
655
- }, [])
656
- }
657
- },
658
- last_versions: {
659
- matches: ['versions'],
660
- regexp: /^last\s+(\d+)\s+versions?$/i,
661
- select: function (context, node) {
662
- return Object.keys(agents).reduce(function (selected, name) {
663
- var data = byName(name, context)
664
- if (!data) return selected
665
- var list = data.released.slice(-node.versions)
666
- list = list.map(nameMapper(data.name))
667
- list = filterJumps(list, data.name, node.versions, context)
668
- return selected.concat(list)
669
- }, [])
670
- }
671
- },
672
- last_electron_major_versions: {
673
- matches: ['versions'],
674
- regexp: /^last\s+(\d+)\s+electron\s+major\s+versions?$/i,
675
- select: function (context, node) {
676
- var validVersions = getMajorVersions(Object.keys(e2c), node.versions)
677
- return validVersions.map(function (i) {
678
- return 'chrome ' + e2c[i]
679
- })
680
- }
681
- },
682
- last_node_major_versions: {
683
- matches: ['versions'],
684
- regexp: /^last\s+(\d+)\s+node\s+major\s+versions?$/i,
685
- select: function (context, node) {
686
- return getMajorVersions(browserslist.nodeVersions, node.versions).map(
687
- function (version) {
688
- return 'node ' + version
689
- }
690
- )
691
- }
692
- },
693
- last_browser_major_versions: {
694
- matches: ['versions', 'browser'],
695
- regexp: /^last\s+(\d+)\s+(\w+)\s+major\s+versions?$/i,
696
- select: function (context, node) {
697
- var data = checkName(node.browser, context)
698
- var validVersions = getMajorVersions(data.released, node.versions)
699
- var list = validVersions.map(nameMapper(data.name))
700
- list = filterJumps(list, data.name, node.versions, context)
701
- return list
702
- }
703
- },
704
- last_electron_versions: {
705
- matches: ['versions'],
706
- regexp: /^last\s+(\d+)\s+electron\s+versions?$/i,
707
- select: function (context, node) {
708
- return Object.keys(e2c)
709
- .slice(-node.versions)
710
- .map(function (i) {
711
- return 'chrome ' + e2c[i]
712
- })
713
- }
714
- },
715
- last_node_versions: {
716
- matches: ['versions'],
717
- regexp: /^last\s+(\d+)\s+node\s+versions?$/i,
718
- select: function (context, node) {
719
- return browserslist.nodeVersions
720
- .slice(-node.versions)
721
- .map(function (version) {
722
- return 'node ' + version
723
- })
724
- }
725
- },
726
- last_browser_versions: {
727
- matches: ['versions', 'browser'],
728
- regexp: /^last\s+(\d+)\s+(\w+)\s+versions?$/i,
729
- select: function (context, node) {
730
- var data = checkName(node.browser, context)
731
- var list = data.released.slice(-node.versions).map(nameMapper(data.name))
732
- list = filterJumps(list, data.name, node.versions, context)
733
- return list
734
- }
735
- },
736
- unreleased_versions: {
737
- matches: [],
738
- regexp: /^unreleased\s+versions$/i,
739
- select: function (context) {
740
- return Object.keys(agents).reduce(function (selected, name) {
741
- var data = byName(name, context)
742
- if (!data) return selected
743
- var list = data.versions.filter(function (v) {
744
- return data.released.indexOf(v) === -1
745
- })
746
- list = list.map(nameMapper(data.name))
747
- return selected.concat(list)
748
- }, [])
749
- }
750
- },
751
- unreleased_electron_versions: {
752
- matches: [],
753
- regexp: /^unreleased\s+electron\s+versions?$/i,
754
- select: function () {
755
- return []
756
- }
757
- },
758
- unreleased_browser_versions: {
759
- matches: ['browser'],
760
- regexp: /^unreleased\s+(\w+)\s+versions?$/i,
761
- select: function (context, node) {
762
- var data = checkName(node.browser, context)
763
- return data.versions
764
- .filter(function (v) {
765
- return data.released.indexOf(v) === -1
766
- })
767
- .map(nameMapper(data.name))
768
- }
769
- },
770
- last_years: {
771
- matches: ['years'],
772
- regexp: /^last\s+(\d*.?\d+)\s+years?$/i,
773
- select: function (context, node) {
774
- return filterByYear(Date.now() - YEAR * node.years, context)
775
- }
776
- },
777
- since_y: {
778
- matches: ['year'],
779
- regexp: /^since (\d+)$/i,
780
- select: sinceQuery
781
- },
782
- since_y_m: {
783
- matches: ['year', 'month'],
784
- regexp: /^since (\d+)-(\d+)$/i,
785
- select: sinceQuery
786
- },
787
- since_y_m_d: {
788
- matches: ['year', 'month', 'day'],
789
- regexp: /^since (\d+)-(\d+)-(\d+)$/i,
790
- select: sinceQuery
791
- },
792
- popularity: {
793
- matches: ['sign', 'popularity'],
794
- regexp: /^(>=?|<=?)\s*(\d+|\d+\.\d+|\.\d+)%$/,
795
- select: function (context, node) {
796
- var popularity = parseFloat(node.popularity)
797
- var usage = browserslist.usage.global
798
- return Object.keys(usage).reduce(function (result, version) {
799
- if (node.sign === '>') {
800
- if (usage[version] > popularity) {
801
- result.push(version)
802
- }
803
- } else if (node.sign === '<') {
804
- if (usage[version] < popularity) {
805
- result.push(version)
806
- }
807
- } else if (node.sign === '<=') {
808
- if (usage[version] <= popularity) {
809
- result.push(version)
810
- }
811
- } else if (usage[version] >= popularity) {
812
- result.push(version)
813
- }
814
- return result
815
- }, [])
816
- }
817
- },
818
- popularity_in_my_stats: {
819
- matches: ['sign', 'popularity'],
820
- regexp: /^(>=?|<=?)\s*(\d+|\d+\.\d+|\.\d+)%\s+in\s+my\s+stats$/,
821
- select: function (context, node) {
822
- var popularity = parseFloat(node.popularity)
823
- if (!context.customUsage) {
824
- throw new BrowserslistError('Custom usage statistics was not provided')
825
- }
826
- var usage = context.customUsage
827
- return Object.keys(usage).reduce(function (result, version) {
828
- var percentage = usage[version]
829
- if (percentage == null) {
830
- return result
831
- }
832
-
833
- if (node.sign === '>') {
834
- if (percentage > popularity) {
835
- result.push(version)
836
- }
837
- } else if (node.sign === '<') {
838
- if (percentage < popularity) {
839
- result.push(version)
840
- }
841
- } else if (node.sign === '<=') {
842
- if (percentage <= popularity) {
843
- result.push(version)
844
- }
845
- } else if (percentage >= popularity) {
846
- result.push(version)
847
- }
848
- return result
849
- }, [])
850
- }
851
- },
852
- popularity_in_config_stats: {
853
- matches: ['sign', 'popularity', 'config'],
854
- regexp: /^(>=?|<=?)\s*(\d+|\d+\.\d+|\.\d+)%\s+in\s+(\S+)\s+stats$/,
855
- select: function (context, node) {
856
- var popularity = parseFloat(node.popularity)
857
- var stats = env.loadStat(context, node.config, browserslist.data)
858
- if (stats) {
859
- context.customUsage = {}
860
- for (var browser in stats) {
861
- fillUsage(context.customUsage, browser, stats[browser])
862
- }
863
- }
864
- if (!context.customUsage) {
865
- throw new BrowserslistError('Custom usage statistics was not provided')
866
- }
867
- var usage = context.customUsage
868
- return Object.keys(usage).reduce(function (result, version) {
869
- var percentage = usage[version]
870
- if (percentage == null) {
871
- return result
872
- }
873
-
874
- if (node.sign === '>') {
875
- if (percentage > popularity) {
876
- result.push(version)
877
- }
878
- } else if (node.sign === '<') {
879
- if (percentage < popularity) {
880
- result.push(version)
881
- }
882
- } else if (node.sign === '<=') {
883
- if (percentage <= popularity) {
884
- result.push(version)
885
- }
886
- } else if (percentage >= popularity) {
887
- result.push(version)
888
- }
889
- return result
890
- }, [])
891
- }
892
- },
893
- popularity_in_place: {
894
- matches: ['sign', 'popularity', 'place'],
895
- regexp: /^(>=?|<=?)\s*(\d+|\d+\.\d+|\.\d+)%\s+in\s+((alt-)?\w\w)$/,
896
- select: function (context, node) {
897
- var popularity = parseFloat(node.popularity)
898
- var place = node.place
899
- if (place.length === 2) {
900
- place = place.toUpperCase()
901
- } else {
902
- place = place.toLowerCase()
903
- }
904
- env.loadCountry(browserslist.usage, place, browserslist.data)
905
- var usage = browserslist.usage[place]
906
- return Object.keys(usage).reduce(function (result, version) {
907
- var percentage = usage[version]
908
- if (percentage == null) {
909
- return result
910
- }
911
-
912
- if (node.sign === '>') {
913
- if (percentage > popularity) {
914
- result.push(version)
915
- }
916
- } else if (node.sign === '<') {
917
- if (percentage < popularity) {
918
- result.push(version)
919
- }
920
- } else if (node.sign === '<=') {
921
- if (percentage <= popularity) {
922
- result.push(version)
923
- }
924
- } else if (percentage >= popularity) {
925
- result.push(version)
926
- }
927
- return result
928
- }, [])
929
- }
930
- },
931
- cover: {
932
- matches: ['coverage'],
933
- regexp: /^cover\s+(\d+|\d+\.\d+|\.\d+)%$/i,
934
- select: coverQuery
935
- },
936
- cover_in: {
937
- matches: ['coverage', 'place'],
938
- regexp: /^cover\s+(\d+|\d+\.\d+|\.\d+)%\s+in\s+(my\s+stats|(alt-)?\w\w)$/i,
939
- select: coverQuery
940
- },
941
- supports: {
942
- matches: ['supportType', 'feature'],
943
- regexp: /^(?:(fully|partially)\s+)?supports\s+([\w-]+)$/,
944
- select: function (context, node) {
945
- env.loadFeature(browserslist.cache, node.feature)
946
- var withPartial = node.supportType !== 'fully'
947
- var features = browserslist.cache[node.feature]
948
- var result = []
949
- for (var name in features) {
950
- var data = byName(name, context)
951
- // Only check desktop when latest released mobile has support
952
- var iMax = data.released.length - 1
953
- while (iMax >= 0) {
954
- if (data.released[iMax] in features[name]) break
955
- iMax--
956
- }
957
- var checkDesktop =
958
- context.mobileToDesktop &&
959
- name in browserslist.desktopNames &&
960
- isSupported(features[name][data.released[iMax]], withPartial)
961
- data.versions.forEach(function (version) {
962
- var flags = features[name][version]
963
- if (flags === undefined && checkDesktop) {
964
- flags = features[browserslist.desktopNames[name]][version]
965
- }
966
- if (isSupported(flags, withPartial)) {
967
- result.push(name + ' ' + version)
968
- }
969
- })
970
- }
971
- return result
972
- }
973
- },
974
- electron_range: {
975
- matches: ['from', 'to'],
976
- regexp: /^electron\s+([\d.]+)\s*-\s*([\d.]+)$/i,
977
- select: function (context, node) {
978
- var fromToUse = normalizeElectron(node.from)
979
- var toToUse = normalizeElectron(node.to)
980
- var from = parseFloat(node.from)
981
- var to = parseFloat(node.to)
982
- if (!e2c[fromToUse]) {
983
- throw new BrowserslistError('Unknown version ' + from + ' of electron')
984
- }
985
- if (!e2c[toToUse]) {
986
- throw new BrowserslistError('Unknown version ' + to + ' of electron')
987
- }
988
- return Object.keys(e2c)
989
- .filter(function (i) {
990
- var parsed = parseFloat(i)
991
- return parsed >= from && parsed <= to
992
- })
993
- .map(function (i) {
994
- return 'chrome ' + e2c[i]
995
- })
996
- }
997
- },
998
- node_range: {
999
- matches: ['from', 'to'],
1000
- regexp: /^node\s+([\d.]+)\s*-\s*([\d.]+)$/i,
1001
- select: function (context, node) {
1002
- return browserslist.nodeVersions
1003
- .filter(semverFilterLoose('>=', node.from))
1004
- .filter(semverFilterLoose('<=', node.to))
1005
- .map(function (v) {
1006
- return 'node ' + v
1007
- })
1008
- }
1009
- },
1010
- browser_range: {
1011
- matches: ['browser', 'from', 'to'],
1012
- regexp: /^(\w+)\s+([\d.]+)\s*-\s*([\d.]+)$/i,
1013
- select: function (context, node) {
1014
- var data = checkName(node.browser, context)
1015
- var from = parseFloat(normalizeVersion(data, node.from) || node.from)
1016
- var to = parseFloat(normalizeVersion(data, node.to) || node.to)
1017
- function filter(v) {
1018
- var parsed = parseFloat(v)
1019
- return parsed >= from && parsed <= to
1020
- }
1021
- return data.released.filter(filter).map(nameMapper(data.name))
1022
- }
1023
- },
1024
- electron_ray: {
1025
- matches: ['sign', 'version'],
1026
- regexp: /^electron\s*(>=?|<=?)\s*([\d.]+)$/i,
1027
- select: function (context, node) {
1028
- var versionToUse = normalizeElectron(node.version)
1029
- return Object.keys(e2c)
1030
- .filter(generateFilter(node.sign, versionToUse))
1031
- .map(function (i) {
1032
- return 'chrome ' + e2c[i]
1033
- })
1034
- }
1035
- },
1036
- node_ray: {
1037
- matches: ['sign', 'version'],
1038
- regexp: /^node\s*(>=?|<=?)\s*([\d.]+)$/i,
1039
- select: function (context, node) {
1040
- return browserslist.nodeVersions
1041
- .filter(generateSemverFilter(node.sign, node.version))
1042
- .map(function (v) {
1043
- return 'node ' + v
1044
- })
1045
- }
1046
- },
1047
- browser_ray: {
1048
- matches: ['browser', 'sign', 'version'],
1049
- regexp: /^(\w+)\s*(>=?|<=?)\s*([\d.]+)$/,
1050
- select: function (context, node) {
1051
- var version = node.version
1052
- var data = checkName(node.browser, context)
1053
- var alias = browserslist.versionAliases[data.name][version]
1054
- if (alias) version = alias
1055
- return data.released
1056
- .filter(generateFilter(node.sign, version))
1057
- .map(function (v) {
1058
- return data.name + ' ' + v
1059
- })
1060
- }
1061
- },
1062
- firefox_esr: {
1063
- matches: [],
1064
- regexp: /^(firefox|ff|fx)\s+esr$/i,
1065
- select: function () {
1066
- return ['firefox 128']
1067
- }
1068
- },
1069
- opera_mini_all: {
1070
- matches: [],
1071
- regexp: /(operamini|op_mini)\s+all/i,
1072
- select: function () {
1073
- return ['op_mini all']
1074
- }
1075
- },
1076
- electron_version: {
1077
- matches: ['version'],
1078
- regexp: /^electron\s+([\d.]+)$/i,
1079
- select: function (context, node) {
1080
- var versionToUse = normalizeElectron(node.version)
1081
- var chrome = e2c[versionToUse]
1082
- if (!chrome) {
1083
- throw new BrowserslistError(
1084
- 'Unknown version ' + node.version + ' of electron'
1085
- )
1086
- }
1087
- return ['chrome ' + chrome]
1088
- }
1089
- },
1090
- node_major_version: {
1091
- matches: ['version'],
1092
- regexp: /^node\s+(\d+)$/i,
1093
- select: nodeQuery
1094
- },
1095
- node_minor_version: {
1096
- matches: ['version'],
1097
- regexp: /^node\s+(\d+\.\d+)$/i,
1098
- select: nodeQuery
1099
- },
1100
- node_patch_version: {
1101
- matches: ['version'],
1102
- regexp: /^node\s+(\d+\.\d+\.\d+)$/i,
1103
- select: nodeQuery
1104
- },
1105
- current_node: {
1106
- matches: [],
1107
- regexp: /^current\s+node$/i,
1108
- select: function (context) {
1109
- return [env.currentNode(resolve, context)]
1110
- }
1111
- },
1112
- maintained_node: {
1113
- matches: [],
1114
- regexp: /^maintained\s+node\s+versions$/i,
1115
- select: function (context) {
1116
- var now = Date.now()
1117
- var queries = Object.keys(jsEOL)
1118
- .filter(function (key) {
1119
- return (
1120
- now < Date.parse(jsEOL[key].end) &&
1121
- now > Date.parse(jsEOL[key].start) &&
1122
- isEolReleased(key)
1123
- )
1124
- })
1125
- .map(function (key) {
1126
- return 'node ' + key.slice(1)
1127
- })
1128
- return resolve(queries, context)
1129
- }
1130
- },
1131
- phantomjs_1_9: {
1132
- matches: [],
1133
- regexp: /^phantomjs\s+1.9$/i,
1134
- select: function () {
1135
- return ['safari 5']
1136
- }
1137
- },
1138
- phantomjs_2_1: {
1139
- matches: [],
1140
- regexp: /^phantomjs\s+2.1$/i,
1141
- select: function () {
1142
- return ['safari 6']
1143
- }
1144
- },
1145
- browser_version: {
1146
- matches: ['browser', 'version'],
1147
- regexp: /^(\w+)\s+(tp|[\d.]+)$/i,
1148
- select: function (context, node) {
1149
- var version = node.version
1150
- if (/^tp$/i.test(version)) version = 'TP'
1151
- var data = checkName(node.browser, context)
1152
- var alias = normalizeVersion(data, version)
1153
- if (alias) {
1154
- version = alias
1155
- } else {
1156
- if (version.indexOf('.') === -1) {
1157
- alias = version + '.0'
1158
- } else {
1159
- alias = version.replace(/\.0$/, '')
1160
- }
1161
- alias = normalizeVersion(data, alias)
1162
- if (alias) {
1163
- version = alias
1164
- } else if (context.ignoreUnknownVersions) {
1165
- return []
1166
- } else {
1167
- throw new BrowserslistError(
1168
- 'Unknown version ' + version + ' of ' + node.browser
1169
- )
1170
- }
1171
- }
1172
- return [data.name + ' ' + version]
1173
- }
1174
- },
1175
- browserslist_config: {
1176
- matches: [],
1177
- regexp: /^browserslist config$/i,
1178
- needsPath: true,
1179
- select: function (context) {
1180
- return browserslist(undefined, context)
1181
- }
1182
- },
1183
- extends: {
1184
- matches: ['config'],
1185
- regexp: /^extends (.+)$/i,
1186
- needsPath: true,
1187
- select: function (context, node) {
1188
- return resolve(env.loadQueries(context, node.config), context)
1189
- }
1190
- },
1191
- defaults: {
1192
- matches: [],
1193
- regexp: /^defaults$/i,
1194
- select: function (context) {
1195
- return resolve(browserslist.defaults, context)
1196
- }
1197
- },
1198
- dead: {
1199
- matches: [],
1200
- regexp: /^dead$/i,
1201
- select: function (context) {
1202
- var dead = [
1203
- 'Baidu >= 0',
1204
- 'ie <= 11',
1205
- 'ie_mob <= 11',
1206
- 'bb <= 10',
1207
- 'op_mob <= 12.1',
1208
- 'samsung 4'
1209
- ]
1210
- return resolve(dead, context)
1211
- }
1212
- },
1213
- unknown: {
1214
- matches: [],
1215
- regexp: /^(\w+)$/i,
1216
- select: function (context, node) {
1217
- if (byName(node.query, context)) {
1218
- throw new BrowserslistError(
1219
- 'Specify versions in Browserslist query for browser ' + node.query
1220
- )
1221
- } else {
1222
- throw unknownQuery(node.query)
1223
- }
1224
- }
1225
- }
1226
- }
1227
-
1228
- // Get and convert Can I Use data
1229
-
1230
- ;(function () {
1231
- for (var name in agents) {
1232
- var browser = agents[name]
1233
- browserslist.data[name] = {
1234
- name: name,
1235
- versions: normalize(agents[name].versions),
1236
- released: normalize(agents[name].versions.slice(0, -3)),
1237
- releaseDate: agents[name].release_date
1238
- }
1239
- fillUsage(browserslist.usage.global, name, browser.usage_global)
1240
-
1241
- browserslist.versionAliases[name] = {}
1242
- for (var i = 0; i < browser.versions.length; i++) {
1243
- var full = browser.versions[i]
1244
- if (!full) continue
1245
-
1246
- if (full.indexOf('-') !== -1) {
1247
- var interval = full.split('-')
1248
- for (var j = 0; j < interval.length; j++) {
1249
- browserslist.versionAliases[name][interval[j]] = full
1250
- }
1251
- }
1252
- }
1253
- }
1254
-
1255
- browserslist.nodeVersions = jsReleases.map(function (release) {
1256
- return release.version
1257
- })
1258
- })()
1259
-
1260
- module.exports = browserslist
1261
-
1262
-
1263
- /***/ }),
1264
-
1265
- /***/ 217:
1266
- /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
1267
-
1268
- var feature = (__nccwpck_require__(930)["default"])
1269
- var region = (__nccwpck_require__(800)["default"])
1270
- var fs = __nccwpck_require__(896)
1271
- var path = __nccwpck_require__(928)
1272
-
1273
- var BrowserslistError = __nccwpck_require__(523)
1274
-
1275
- var IS_SECTION = /^\s*\[(.+)]\s*$/
1276
- var CONFIG_PATTERN = /^browserslist-config-/
1277
- var SCOPED_CONFIG__PATTERN = /@[^/]+(?:\/[^/]+)?\/browserslist-config(?:-|$|\/)/
1278
- var FORMAT =
1279
- 'Browserslist config should be a string or an array ' +
1280
- 'of strings with browser queries'
1281
-
1282
- var dataTimeChecked = false
1283
- var statCache = {}
1284
- var configPathCache = {}
1285
- var parseConfigCache = {}
1286
-
1287
- function checkExtend(name) {
1288
- var use = ' Use `dangerousExtend` option to disable.'
1289
- if (!CONFIG_PATTERN.test(name) && !SCOPED_CONFIG__PATTERN.test(name)) {
1290
- throw new BrowserslistError(
1291
- 'Browserslist config needs `browserslist-config-` prefix. ' + use
1292
- )
1293
- }
1294
- if (name.replace(/^@[^/]+\//, '').indexOf('.') !== -1) {
1295
- throw new BrowserslistError(
1296
- '`.` not allowed in Browserslist config name. ' + use
1297
- )
1298
- }
1299
- if (name.indexOf('node_modules') !== -1) {
1300
- throw new BrowserslistError(
1301
- '`node_modules` not allowed in Browserslist config.' + use
1302
- )
1303
- }
1304
- }
1305
-
1306
- function isFile(file) {
1307
- return fs.existsSync(file) && fs.statSync(file).isFile()
1308
- }
1309
- function isDirectory(dir) {
1310
- return fs.existsSync(dir) && fs.statSync(dir).isDirectory()
1311
- }
1312
-
1313
- function eachParent(file, callback, cache) {
1314
- var loc = path.resolve(file)
1315
- var pathsForCacheResult = []
1316
- var result
1317
- do {
1318
- if (!pathInRoot(loc)) {
1319
- break
1320
- }
1321
- if (cache && loc in cache) {
1322
- result = cache[loc]
1323
- break
1324
- }
1325
- pathsForCacheResult.push(loc)
1326
-
1327
- if (!isDirectory(loc)) {
1328
- continue
1329
- }
1330
-
1331
- var locResult = callback(loc)
1332
- if (typeof locResult !== 'undefined') {
1333
- result = locResult
1334
- break
1335
- }
1336
- } while (loc !== (loc = path.dirname(loc)))
1337
-
1338
- if (cache && !process.env.BROWSERSLIST_DISABLE_CACHE) {
1339
- pathsForCacheResult.forEach(function (cachePath) {
1340
- cache[cachePath] = result
1341
- })
1342
- }
1343
- return result
1344
- }
1345
-
1346
- function pathInRoot(p) {
1347
- if (!process.env.BROWSERSLIST_ROOT_PATH) return true
1348
- var rootPath = path.resolve(process.env.BROWSERSLIST_ROOT_PATH)
1349
- if (path.relative(rootPath, p).substring(0, 2) === '..') {
1350
- return false
1351
- }
1352
- return true
1353
- }
1354
-
1355
- function check(section) {
1356
- if (Array.isArray(section)) {
1357
- for (var i = 0; i < section.length; i++) {
1358
- if (typeof section[i] !== 'string') {
1359
- throw new BrowserslistError(FORMAT)
1360
- }
1361
- }
1362
- } else if (typeof section !== 'string') {
1363
- throw new BrowserslistError(FORMAT)
1364
- }
1365
- }
1366
-
1367
- function pickEnv(config, opts) {
1368
- if (typeof config !== 'object') return config
1369
-
1370
- var name
1371
- if (typeof opts.env === 'string') {
1372
- name = opts.env
1373
- } else if (process.env.BROWSERSLIST_ENV) {
1374
- name = process.env.BROWSERSLIST_ENV
1375
- } else if (process.env.NODE_ENV) {
1376
- name = process.env.NODE_ENV
1377
- } else {
1378
- name = 'production'
1379
- }
1380
-
1381
- if (opts.throwOnMissing) {
1382
- if (name && name !== 'defaults' && !config[name]) {
1383
- throw new BrowserslistError(
1384
- 'Missing config for Browserslist environment `' + name + '`'
1385
- )
1386
- }
1387
- }
1388
-
1389
- return config[name] || config.defaults
1390
- }
1391
-
1392
- function parsePackage(file) {
1393
- var text = fs
1394
- .readFileSync(file)
1395
- .toString()
1396
- .replace(/^\uFEFF/m, '')
1397
- var list
1398
- if (text.indexOf('"browserslist"') >= 0) {
1399
- list = JSON.parse(text).browserslist
1400
- } else if (text.indexOf('"browserlist"') >= 0) {
1401
- var config = JSON.parse(text)
1402
- if (config.browserlist && !config.browserslist) {
1403
- throw new BrowserslistError(
1404
- '`browserlist` key instead of `browserslist` in ' + file
1405
- )
1406
- }
1407
- }
1408
- if (Array.isArray(list) || typeof list === 'string') {
1409
- list = { defaults: list }
1410
- }
1411
- for (var i in list) {
1412
- check(list[i])
1413
- }
1414
-
1415
- return list
1416
- }
1417
-
1418
- function parsePackageOrReadConfig(file) {
1419
- if (file in parseConfigCache) {
1420
- return parseConfigCache[file]
1421
- }
1422
-
1423
- var isPackage = path.basename(file) === 'package.json'
1424
- var result = isPackage ? parsePackage(file) : module.exports.readConfig(file)
1425
-
1426
- if (!process.env.BROWSERSLIST_DISABLE_CACHE) {
1427
- parseConfigCache[file] = result
1428
- }
1429
- return result
1430
- }
1431
-
1432
- function latestReleaseTime(agents) {
1433
- var latest = 0
1434
- for (var name in agents) {
1435
- var dates = agents[name].releaseDate || {}
1436
- for (var key in dates) {
1437
- if (latest < dates[key]) {
1438
- latest = dates[key]
1439
- }
1440
- }
1441
- }
1442
- return latest * 1000
1443
- }
1444
-
1445
- function getMonthsPassed(date) {
1446
- var now = new Date()
1447
- var past = new Date(date)
1448
-
1449
- var years = now.getFullYear() - past.getFullYear()
1450
- var months = now.getMonth() - past.getMonth()
1451
-
1452
- return years * 12 + months
1453
- }
1454
-
1455
- function normalizeStats(data, stats) {
1456
- if (!data) {
1457
- data = {}
1458
- }
1459
- if (stats && 'dataByBrowser' in stats) {
1460
- stats = stats.dataByBrowser
1461
- }
1462
-
1463
- if (typeof stats !== 'object') return undefined
1464
-
1465
- var normalized = {}
1466
- for (var i in stats) {
1467
- var versions = Object.keys(stats[i])
1468
- if (versions.length === 1 && data[i] && data[i].versions.length === 1) {
1469
- var normal = data[i].versions[0]
1470
- normalized[i] = {}
1471
- normalized[i][normal] = stats[i][versions[0]]
1472
- } else {
1473
- normalized[i] = stats[i]
1474
- }
1475
- }
1476
-
1477
- return normalized
1478
- }
1479
-
1480
- function normalizeUsageData(usageData, data) {
1481
- for (var browser in usageData) {
1482
- var browserUsage = usageData[browser]
1483
- // https://github.com/browserslist/browserslist/issues/431#issuecomment-565230615
1484
- // caniuse-db returns { 0: "percentage" } for `and_*` regional stats
1485
- if ('0' in browserUsage) {
1486
- var versions = data[browser].versions
1487
- browserUsage[versions[versions.length - 1]] = browserUsage[0]
1488
- delete browserUsage[0]
1489
- }
1490
- }
1491
- }
1492
-
1493
- module.exports = {
1494
- loadQueries: function loadQueries(ctx, name) {
1495
- if (!ctx.dangerousExtend && !process.env.BROWSERSLIST_DANGEROUS_EXTEND) {
1496
- checkExtend(name)
1497
- }
1498
- var queries = eval("require")(require.resolve(name, { paths: ['.', ctx.path] }))
1499
- if (typeof queries === 'object' && queries !== null && queries.__esModule) {
1500
- queries = queries.default
1501
- }
1502
- if (queries) {
1503
- if (Array.isArray(queries)) {
1504
- return queries
1505
- } else if (typeof queries === 'object') {
1506
- if (!queries.defaults) queries.defaults = []
1507
- return pickEnv(queries, ctx, name)
1508
- }
1509
- }
1510
- throw new BrowserslistError(
1511
- '`' +
1512
- name +
1513
- '` config exports not an array of queries' +
1514
- ' or an object of envs'
1515
- )
1516
- },
1517
-
1518
- loadStat: function loadStat(ctx, name, data) {
1519
- if (!ctx.dangerousExtend && !process.env.BROWSERSLIST_DANGEROUS_EXTEND) {
1520
- checkExtend(name)
1521
- }
1522
- var stats = eval("require")(require.resolve(
1523
- path.join(name, 'browserslist-stats.json'),
1524
- { paths: ['.'] }
1525
- ))
1526
- return normalizeStats(data, stats)
1527
- },
1528
-
1529
- getStat: function getStat(opts, data) {
1530
- var stats
1531
- if (opts.stats) {
1532
- stats = opts.stats
1533
- } else if (process.env.BROWSERSLIST_STATS) {
1534
- stats = process.env.BROWSERSLIST_STATS
1535
- } else if (opts.path && path.resolve && fs.existsSync) {
1536
- stats = eachParent(
1537
- opts.path,
1538
- function (dir) {
1539
- var file = path.join(dir, 'browserslist-stats.json')
1540
- return isFile(file) ? file : undefined
1541
- },
1542
- statCache
1543
- )
1544
- }
1545
- if (typeof stats === 'string') {
1546
- try {
1547
- stats = JSON.parse(fs.readFileSync(stats))
1548
- } catch (e) {
1549
- throw new BrowserslistError("Can't read " + stats)
1550
- }
1551
- }
1552
- return normalizeStats(data, stats)
1553
- },
1554
-
1555
- loadConfig: function loadConfig(opts) {
1556
- if (process.env.BROWSERSLIST) {
1557
- return process.env.BROWSERSLIST
1558
- } else if (opts.config || process.env.BROWSERSLIST_CONFIG) {
1559
- var file = opts.config || process.env.BROWSERSLIST_CONFIG
1560
- return pickEnv(parsePackageOrReadConfig(file), opts)
1561
- } else if (opts.path) {
1562
- return pickEnv(module.exports.findConfig(opts.path), opts)
1563
- } else {
1564
- return undefined
1565
- }
1566
- },
1567
-
1568
- loadCountry: function loadCountry(usage, country, data) {
1569
- var code = country.replace(/[^\w-]/g, '')
1570
- if (!usage[code]) {
1571
- var compressed
1572
- try {
1573
- compressed = require('caniuse-lite/data/regions/' + code + '.js')
1574
- } catch (e) {
1575
- throw new BrowserslistError('Unknown region name `' + code + '`.')
1576
- }
1577
- var usageData = region(compressed)
1578
- normalizeUsageData(usageData, data)
1579
- usage[country] = {}
1580
- for (var i in usageData) {
1581
- for (var j in usageData[i]) {
1582
- usage[country][i + ' ' + j] = usageData[i][j]
1583
- }
1584
- }
1585
- }
1586
- },
1587
-
1588
- loadFeature: function loadFeature(features, name) {
1589
- name = name.replace(/[^\w-]/g, '')
1590
- if (features[name]) return
1591
- var compressed
1592
- try {
1593
- compressed = require('caniuse-lite/data/features/' + name + '.js')
1594
- } catch (e) {
1595
- throw new BrowserslistError('Unknown feature name `' + name + '`.')
1596
- }
1597
- var stats = feature(compressed).stats
1598
- features[name] = {}
1599
- for (var i in stats) {
1600
- features[name][i] = {}
1601
- for (var j in stats[i]) {
1602
- features[name][i][j] = stats[i][j]
1603
- }
1604
- }
1605
- },
1606
-
1607
- parseConfig: function parseConfig(string) {
1608
- var result = { defaults: [] }
1609
- var sections = ['defaults']
1610
-
1611
- string
1612
- .toString()
1613
- .replace(/#[^\n]*/g, '')
1614
- .split(/\n|,/)
1615
- .map(function (line) {
1616
- return line.trim()
1617
- })
1618
- .filter(function (line) {
1619
- return line !== ''
1620
- })
1621
- .forEach(function (line) {
1622
- if (IS_SECTION.test(line)) {
1623
- sections = line.match(IS_SECTION)[1].trim().split(' ')
1624
- sections.forEach(function (section) {
1625
- if (result[section]) {
1626
- throw new BrowserslistError(
1627
- 'Duplicate section ' + section + ' in Browserslist config'
1628
- )
1629
- }
1630
- result[section] = []
1631
- })
1632
- } else {
1633
- sections.forEach(function (section) {
1634
- result[section].push(line)
1635
- })
1636
- }
1637
- })
1638
-
1639
- return result
1640
- },
1641
-
1642
- readConfig: function readConfig(file) {
1643
- if (!isFile(file)) {
1644
- throw new BrowserslistError("Can't read " + file + ' config')
1645
- }
1646
-
1647
- return module.exports.parseConfig(fs.readFileSync(file))
1648
- },
1649
-
1650
- findConfigFile: function findConfigFile(from) {
1651
- return eachParent(
1652
- from,
1653
- function (dir) {
1654
- var config = path.join(dir, 'browserslist')
1655
- var pkg = path.join(dir, 'package.json')
1656
- var rc = path.join(dir, '.browserslistrc')
1657
-
1658
- var pkgBrowserslist
1659
- if (isFile(pkg)) {
1660
- try {
1661
- pkgBrowserslist = parsePackage(pkg)
1662
- } catch (e) {
1663
- if (e.name === 'BrowserslistError') throw e
1664
- console.warn(
1665
- '[Browserslist] Could not parse ' + pkg + '. Ignoring it.'
1666
- )
1667
- }
1668
- }
1669
-
1670
- if (isFile(config) && pkgBrowserslist) {
1671
- throw new BrowserslistError(
1672
- dir + ' contains both browserslist and package.json with browsers'
1673
- )
1674
- } else if (isFile(rc) && pkgBrowserslist) {
1675
- throw new BrowserslistError(
1676
- dir +
1677
- ' contains both .browserslistrc and package.json with browsers'
1678
- )
1679
- } else if (isFile(config) && isFile(rc)) {
1680
- throw new BrowserslistError(
1681
- dir + ' contains both .browserslistrc and browserslist'
1682
- )
1683
- } else if (isFile(config)) {
1684
- return config
1685
- } else if (isFile(rc)) {
1686
- return rc
1687
- } else if (pkgBrowserslist) {
1688
- return pkg
1689
- }
1690
- },
1691
- configPathCache
1692
- )
1693
- },
1694
-
1695
- findConfig: function findConfig(from) {
1696
- var configFile = this.findConfigFile(from)
1697
-
1698
- return configFile ? parsePackageOrReadConfig(configFile) : undefined
1699
- },
1700
-
1701
- clearCaches: function clearCaches() {
1702
- dataTimeChecked = false
1703
- statCache = {}
1704
- configPathCache = {}
1705
- parseConfigCache = {}
1706
-
1707
- this.cache = {}
1708
- },
1709
-
1710
- oldDataWarning: function oldDataWarning(agentsObj) {
1711
- if (dataTimeChecked) return
1712
- dataTimeChecked = true
1713
- if (process.env.BROWSERSLIST_IGNORE_OLD_DATA) return
1714
-
1715
- var latest = latestReleaseTime(agentsObj)
1716
- var monthsPassed = getMonthsPassed(latest)
1717
-
1718
- if (latest !== 0 && monthsPassed >= 6) {
1719
- var months = monthsPassed + ' ' + (monthsPassed > 1 ? 'months' : 'month')
1720
- console.warn(
1721
- 'Browserslist: browsers data (caniuse-lite) is ' +
1722
- months +
1723
- ' old. Please run:\n' +
1724
- ' npx update-browserslist-db@latest\n' +
1725
- ' Why you should do it regularly: ' +
1726
- 'https://github.com/browserslist/update-db#readme'
1727
- )
1728
- }
1729
- },
1730
-
1731
- currentNode: function currentNode() {
1732
- return 'node ' + process.versions.node
1733
- },
1734
-
1735
- env: process.env
1736
- }
1737
-
1738
-
1739
- /***/ }),
1740
-
1741
- /***/ 494:
1742
- /***/ ((module) => {
1743
-
1744
- var AND_REGEXP = /^\s+and\s+(.*)/i
1745
- var OR_REGEXP = /^(?:,\s*|\s+or\s+)(.*)/i
1746
-
1747
- function flatten(array) {
1748
- if (!Array.isArray(array)) return [array]
1749
- return array.reduce(function (a, b) {
1750
- return a.concat(flatten(b))
1751
- }, [])
1752
- }
1753
-
1754
- function find(string, predicate) {
1755
- for (var max = string.length, n = 1; n <= max; n++) {
1756
- var parsed = string.substr(-n, n)
1757
- if (predicate(parsed, n, max)) {
1758
- return string.slice(0, -n)
1759
- }
1760
- }
1761
- return ''
1762
- }
1763
-
1764
- function matchQuery(all, query) {
1765
- var node = { query: query }
1766
- if (query.indexOf('not ') === 0) {
1767
- node.not = true
1768
- query = query.slice(4)
1769
- }
1770
-
1771
- for (var name in all) {
1772
- var type = all[name]
1773
- var match = query.match(type.regexp)
1774
- if (match) {
1775
- node.type = name
1776
- for (var i = 0; i < type.matches.length; i++) {
1777
- node[type.matches[i]] = match[i + 1]
1778
- }
1779
- return node
1780
- }
1781
- }
1782
-
1783
- node.type = 'unknown'
1784
- return node
1785
- }
1786
-
1787
- function matchBlock(all, string, qs) {
1788
- var node
1789
- return find(string, function (parsed, n, max) {
1790
- if (AND_REGEXP.test(parsed)) {
1791
- node = matchQuery(all, parsed.match(AND_REGEXP)[1])
1792
- node.compose = 'and'
1793
- qs.unshift(node)
1794
- return true
1795
- } else if (OR_REGEXP.test(parsed)) {
1796
- node = matchQuery(all, parsed.match(OR_REGEXP)[1])
1797
- node.compose = 'or'
1798
- qs.unshift(node)
1799
- return true
1800
- } else if (n === max) {
1801
- node = matchQuery(all, parsed.trim())
1802
- node.compose = 'or'
1803
- qs.unshift(node)
1804
- return true
1805
- }
1806
- return false
1807
- })
1808
- }
1809
-
1810
- module.exports = function parse(all, queries) {
1811
- if (!Array.isArray(queries)) queries = [queries]
1812
- return flatten(
1813
- queries.map(function (block) {
1814
- var qs = []
1815
- do {
1816
- block = matchBlock(all, block, qs)
1817
- } while (block)
1818
- return qs
1819
- })
1820
- )
1821
- }
1822
-
1823
-
1824
- /***/ }),
1825
-
1826
- /***/ 867:
1827
- /***/ ((module) => {
1828
-
1829
- module.exports = {
1830
- "0.20": "39",
1831
- "0.21": "41",
1832
- "0.22": "41",
1833
- "0.23": "41",
1834
- "0.24": "41",
1835
- "0.25": "42",
1836
- "0.26": "42",
1837
- "0.27": "43",
1838
- "0.28": "43",
1839
- "0.29": "43",
1840
- "0.30": "44",
1841
- "0.31": "45",
1842
- "0.32": "45",
1843
- "0.33": "45",
1844
- "0.34": "45",
1845
- "0.35": "45",
1846
- "0.36": "47",
1847
- "0.37": "49",
1848
- "1.0": "49",
1849
- "1.1": "50",
1850
- "1.2": "51",
1851
- "1.3": "52",
1852
- "1.4": "53",
1853
- "1.5": "54",
1854
- "1.6": "56",
1855
- "1.7": "58",
1856
- "1.8": "59",
1857
- "2.0": "61",
1858
- "2.1": "61",
1859
- "3.0": "66",
1860
- "3.1": "66",
1861
- "4.0": "69",
1862
- "4.1": "69",
1863
- "4.2": "69",
1864
- "5.0": "73",
1865
- "6.0": "76",
1866
- "6.1": "76",
1867
- "7.0": "78",
1868
- "7.1": "78",
1869
- "7.2": "78",
1870
- "7.3": "78",
1871
- "8.0": "80",
1872
- "8.1": "80",
1873
- "8.2": "80",
1874
- "8.3": "80",
1875
- "8.4": "80",
1876
- "8.5": "80",
1877
- "9.0": "83",
1878
- "9.1": "83",
1879
- "9.2": "83",
1880
- "9.3": "83",
1881
- "9.4": "83",
1882
- "10.0": "85",
1883
- "10.1": "85",
1884
- "10.2": "85",
1885
- "10.3": "85",
1886
- "10.4": "85",
1887
- "11.0": "87",
1888
- "11.1": "87",
1889
- "11.2": "87",
1890
- "11.3": "87",
1891
- "11.4": "87",
1892
- "11.5": "87",
1893
- "12.0": "89",
1894
- "12.1": "89",
1895
- "12.2": "89",
1896
- "13.0": "91",
1897
- "13.1": "91",
1898
- "13.2": "91",
1899
- "13.3": "91",
1900
- "13.4": "91",
1901
- "13.5": "91",
1902
- "13.6": "91",
1903
- "14.0": "93",
1904
- "14.1": "93",
1905
- "14.2": "93",
1906
- "15.0": "94",
1907
- "15.1": "94",
1908
- "15.2": "94",
1909
- "15.3": "94",
1910
- "15.4": "94",
1911
- "15.5": "94",
1912
- "16.0": "96",
1913
- "16.1": "96",
1914
- "16.2": "96",
1915
- "17.0": "98",
1916
- "17.1": "98",
1917
- "17.2": "98",
1918
- "17.3": "98",
1919
- "17.4": "98",
1920
- "18.0": "100",
1921
- "18.1": "100",
1922
- "18.2": "100",
1923
- "18.3": "100",
1924
- "19.0": "102",
1925
- "19.1": "102",
1926
- "20.0": "104",
1927
- "20.1": "104",
1928
- "20.2": "104",
1929
- "20.3": "104",
1930
- "21.0": "106",
1931
- "21.1": "106",
1932
- "21.2": "106",
1933
- "21.3": "106",
1934
- "21.4": "106",
1935
- "22.0": "108",
1936
- "22.1": "108",
1937
- "22.2": "108",
1938
- "22.3": "108",
1939
- "23.0": "110",
1940
- "23.1": "110",
1941
- "23.2": "110",
1942
- "23.3": "110",
1943
- "24.0": "112",
1944
- "24.1": "112",
1945
- "24.2": "112",
1946
- "24.3": "112",
1947
- "24.4": "112",
1948
- "24.5": "112",
1949
- "24.6": "112",
1950
- "24.7": "112",
1951
- "24.8": "112",
1952
- "25.0": "114",
1953
- "25.1": "114",
1954
- "25.2": "114",
1955
- "25.3": "114",
1956
- "25.4": "114",
1957
- "25.5": "114",
1958
- "25.6": "114",
1959
- "25.7": "114",
1960
- "25.8": "114",
1961
- "25.9": "114",
1962
- "26.0": "116",
1963
- "26.1": "116",
1964
- "26.2": "116",
1965
- "26.3": "116",
1966
- "26.4": "116",
1967
- "26.5": "116",
1968
- "26.6": "116",
1969
- "27.0": "118",
1970
- "27.1": "118",
1971
- "27.2": "118",
1972
- "27.3": "118",
1973
- "28.0": "120",
1974
- "28.1": "120",
1975
- "28.2": "120",
1976
- "28.3": "120",
1977
- "29.0": "122",
1978
- "29.1": "122",
1979
- "29.2": "122",
1980
- "29.3": "122",
1981
- "29.4": "122",
1982
- "30.0": "124",
1983
- "30.1": "124",
1984
- "30.2": "124",
1985
- "30.3": "124",
1986
- "30.4": "124",
1987
- "30.5": "124",
1988
- "31.0": "126",
1989
- "31.1": "126",
1990
- "31.2": "126",
1991
- "31.3": "126",
1992
- "31.4": "126",
1993
- "31.5": "126",
1994
- "31.6": "126",
1995
- "31.7": "126",
1996
- "32.0": "128",
1997
- "32.1": "128",
1998
- "32.2": "128",
1999
- "32.3": "128",
2000
- "33.0": "130",
2001
- "33.1": "130",
2002
- "33.2": "130",
2003
- "33.3": "130",
2004
- "33.4": "130",
2005
- "34.0": "132",
2006
- "34.1": "132",
2007
- "34.2": "132",
2008
- "34.3": "132",
2009
- "34.4": "132",
2010
- "34.5": "132",
2011
- "35.0": "134",
2012
- "35.1": "134",
2013
- "35.2": "134",
2014
- "36.0": "136",
2015
- "36.1": "136",
2016
- "37.0": "138"
2017
- };
2018
-
2019
- /***/ }),
2020
-
2021
- /***/ 946:
2022
- /***/ ((module) => {
2023
-
2024
- "use strict";
2025
- module.exports = require("caniuse-lite/dist/unpacker/agents");
2026
-
2027
- /***/ }),
2028
-
2029
- /***/ 930:
2030
- /***/ ((module) => {
2031
-
2032
- "use strict";
2033
- module.exports = require("caniuse-lite/dist/unpacker/feature");
2034
-
2035
- /***/ }),
2036
-
2037
- /***/ 800:
2038
- /***/ ((module) => {
2039
-
2040
- "use strict";
2041
- module.exports = require("caniuse-lite/dist/unpacker/region");
2042
-
2043
- /***/ }),
2044
-
2045
- /***/ 896:
2046
- /***/ ((module) => {
2047
-
2048
- "use strict";
2049
- module.exports = require("fs");
2050
-
2051
- /***/ }),
2052
-
2053
- /***/ 928:
2054
- /***/ ((module) => {
2055
-
2056
- "use strict";
2057
- module.exports = require("path");
2058
-
2059
- /***/ }),
2060
-
2061
- /***/ 613:
2062
- /***/ ((module) => {
2063
-
2064
- "use strict";
2065
- module.exports = /*#__PURE__*/JSON.parse('[{"name":"nodejs","version":"0.2.0","date":"2011-08-26","lts":false,"security":false,"v8":"2.3.8.0"},{"name":"nodejs","version":"0.3.0","date":"2011-08-26","lts":false,"security":false,"v8":"2.5.1.0"},{"name":"nodejs","version":"0.4.0","date":"2011-08-26","lts":false,"security":false,"v8":"3.1.2.0"},{"name":"nodejs","version":"0.5.0","date":"2011-08-26","lts":false,"security":false,"v8":"3.1.8.25"},{"name":"nodejs","version":"0.6.0","date":"2011-11-04","lts":false,"security":false,"v8":"3.6.6.6"},{"name":"nodejs","version":"0.7.0","date":"2012-01-17","lts":false,"security":false,"v8":"3.8.6.0"},{"name":"nodejs","version":"0.8.0","date":"2012-06-22","lts":false,"security":false,"v8":"3.11.10.10"},{"name":"nodejs","version":"0.9.0","date":"2012-07-20","lts":false,"security":false,"v8":"3.11.10.15"},{"name":"nodejs","version":"0.10.0","date":"2013-03-11","lts":false,"security":false,"v8":"3.14.5.8"},{"name":"nodejs","version":"0.11.0","date":"2013-03-28","lts":false,"security":false,"v8":"3.17.13.0"},{"name":"nodejs","version":"0.12.0","date":"2015-02-06","lts":false,"security":false,"v8":"3.28.73.0"},{"name":"nodejs","version":"4.0.0","date":"2015-09-08","lts":false,"security":false,"v8":"4.5.103.30"},{"name":"nodejs","version":"4.1.0","date":"2015-09-17","lts":false,"security":false,"v8":"4.5.103.33"},{"name":"nodejs","version":"4.2.0","date":"2015-10-12","lts":"Argon","security":false,"v8":"4.5.103.35"},{"name":"nodejs","version":"4.3.0","date":"2016-02-09","lts":"Argon","security":false,"v8":"4.5.103.35"},{"name":"nodejs","version":"4.4.0","date":"2016-03-08","lts":"Argon","security":false,"v8":"4.5.103.35"},{"name":"nodejs","version":"4.5.0","date":"2016-08-16","lts":"Argon","security":false,"v8":"4.5.103.37"},{"name":"nodejs","version":"4.6.0","date":"2016-09-27","lts":"Argon","security":true,"v8":"4.5.103.37"},{"name":"nodejs","version":"4.7.0","date":"2016-12-06","lts":"Argon","security":false,"v8":"4.5.103.43"},{"name":"nodejs","version":"4.8.0","date":"2017-02-21","lts":"Argon","security":false,"v8":"4.5.103.45"},{"name":"nodejs","version":"4.9.0","date":"2018-03-28","lts":"Argon","security":true,"v8":"4.5.103.53"},{"name":"nodejs","version":"5.0.0","date":"2015-10-29","lts":false,"security":false,"v8":"4.6.85.28"},{"name":"nodejs","version":"5.1.0","date":"2015-11-17","lts":false,"security":false,"v8":"4.6.85.31"},{"name":"nodejs","version":"5.2.0","date":"2015-12-09","lts":false,"security":false,"v8":"4.6.85.31"},{"name":"nodejs","version":"5.3.0","date":"2015-12-15","lts":false,"security":false,"v8":"4.6.85.31"},{"name":"nodejs","version":"5.4.0","date":"2016-01-06","lts":false,"security":false,"v8":"4.6.85.31"},{"name":"nodejs","version":"5.5.0","date":"2016-01-21","lts":false,"security":false,"v8":"4.6.85.31"},{"name":"nodejs","version":"5.6.0","date":"2016-02-09","lts":false,"security":false,"v8":"4.6.85.31"},{"name":"nodejs","version":"5.7.0","date":"2016-02-23","lts":false,"security":false,"v8":"4.6.85.31"},{"name":"nodejs","version":"5.8.0","date":"2016-03-09","lts":false,"security":false,"v8":"4.6.85.31"},{"name":"nodejs","version":"5.9.0","date":"2016-03-16","lts":false,"security":false,"v8":"4.6.85.31"},{"name":"nodejs","version":"5.10.0","date":"2016-04-01","lts":false,"security":false,"v8":"4.6.85.31"},{"name":"nodejs","version":"5.11.0","date":"2016-04-21","lts":false,"security":false,"v8":"4.6.85.31"},{"name":"nodejs","version":"5.12.0","date":"2016-06-23","lts":false,"security":false,"v8":"4.6.85.32"},{"name":"nodejs","version":"6.0.0","date":"2016-04-26","lts":false,"security":false,"v8":"5.0.71.35"},{"name":"nodejs","version":"6.1.0","date":"2016-05-05","lts":false,"security":false,"v8":"5.0.71.35"},{"name":"nodejs","version":"6.2.0","date":"2016-05-17","lts":false,"security":false,"v8":"5.0.71.47"},{"name":"nodejs","version":"6.3.0","date":"2016-07-06","lts":false,"security":false,"v8":"5.0.71.52"},{"name":"nodejs","version":"6.4.0","date":"2016-08-12","lts":false,"security":false,"v8":"5.0.71.60"},{"name":"nodejs","version":"6.5.0","date":"2016-08-26","lts":false,"security":false,"v8":"5.1.281.81"},{"name":"nodejs","version":"6.6.0","date":"2016-09-14","lts":false,"security":false,"v8":"5.1.281.83"},{"name":"nodejs","version":"6.7.0","date":"2016-09-27","lts":false,"security":true,"v8":"5.1.281.83"},{"name":"nodejs","version":"6.8.0","date":"2016-10-12","lts":false,"security":false,"v8":"5.1.281.84"},{"name":"nodejs","version":"6.9.0","date":"2016-10-18","lts":"Boron","security":false,"v8":"5.1.281.84"},{"name":"nodejs","version":"6.10.0","date":"2017-02-21","lts":"Boron","security":false,"v8":"5.1.281.93"},{"name":"nodejs","version":"6.11.0","date":"2017-06-06","lts":"Boron","security":false,"v8":"5.1.281.102"},{"name":"nodejs","version":"6.12.0","date":"2017-11-06","lts":"Boron","security":false,"v8":"5.1.281.108"},{"name":"nodejs","version":"6.13.0","date":"2018-02-10","lts":"Boron","security":false,"v8":"5.1.281.111"},{"name":"nodejs","version":"6.14.0","date":"2018-03-28","lts":"Boron","security":true,"v8":"5.1.281.111"},{"name":"nodejs","version":"6.15.0","date":"2018-11-27","lts":"Boron","security":true,"v8":"5.1.281.111"},{"name":"nodejs","version":"6.16.0","date":"2018-12-26","lts":"Boron","security":false,"v8":"5.1.281.111"},{"name":"nodejs","version":"6.17.0","date":"2019-02-28","lts":"Boron","security":true,"v8":"5.1.281.111"},{"name":"nodejs","version":"7.0.0","date":"2016-10-25","lts":false,"security":false,"v8":"5.4.500.36"},{"name":"nodejs","version":"7.1.0","date":"2016-11-08","lts":false,"security":false,"v8":"5.4.500.36"},{"name":"nodejs","version":"7.2.0","date":"2016-11-22","lts":false,"security":false,"v8":"5.4.500.43"},{"name":"nodejs","version":"7.3.0","date":"2016-12-20","lts":false,"security":false,"v8":"5.4.500.45"},{"name":"nodejs","version":"7.4.0","date":"2017-01-04","lts":false,"security":false,"v8":"5.4.500.45"},{"name":"nodejs","version":"7.5.0","date":"2017-01-31","lts":false,"security":false,"v8":"5.4.500.48"},{"name":"nodejs","version":"7.6.0","date":"2017-02-21","lts":false,"security":false,"v8":"5.5.372.40"},{"name":"nodejs","version":"7.7.0","date":"2017-02-28","lts":false,"security":false,"v8":"5.5.372.41"},{"name":"nodejs","version":"7.8.0","date":"2017-03-29","lts":false,"security":false,"v8":"5.5.372.43"},{"name":"nodejs","version":"7.9.0","date":"2017-04-11","lts":false,"security":false,"v8":"5.5.372.43"},{"name":"nodejs","version":"7.10.0","date":"2017-05-02","lts":false,"security":false,"v8":"5.5.372.43"},{"name":"nodejs","version":"8.0.0","date":"2017-05-30","lts":false,"security":false,"v8":"5.8.283.41"},{"name":"nodejs","version":"8.1.0","date":"2017-06-08","lts":false,"security":false,"v8":"5.8.283.41"},{"name":"nodejs","version":"8.2.0","date":"2017-07-19","lts":false,"security":false,"v8":"5.8.283.41"},{"name":"nodejs","version":"8.3.0","date":"2017-08-08","lts":false,"security":false,"v8":"6.0.286.52"},{"name":"nodejs","version":"8.4.0","date":"2017-08-15","lts":false,"security":false,"v8":"6.0.286.52"},{"name":"nodejs","version":"8.5.0","date":"2017-09-12","lts":false,"security":false,"v8":"6.0.287.53"},{"name":"nodejs","version":"8.6.0","date":"2017-09-26","lts":false,"security":false,"v8":"6.0.287.53"},{"name":"nodejs","version":"8.7.0","date":"2017-10-11","lts":false,"security":false,"v8":"6.1.534.42"},{"name":"nodejs","version":"8.8.0","date":"2017-10-24","lts":false,"security":false,"v8":"6.1.534.42"},{"name":"nodejs","version":"8.9.0","date":"2017-10-31","lts":"Carbon","security":false,"v8":"6.1.534.46"},{"name":"nodejs","version":"8.10.0","date":"2018-03-06","lts":"Carbon","security":false,"v8":"6.2.414.50"},{"name":"nodejs","version":"8.11.0","date":"2018-03-28","lts":"Carbon","security":true,"v8":"6.2.414.50"},{"name":"nodejs","version":"8.12.0","date":"2018-09-10","lts":"Carbon","security":false,"v8":"6.2.414.66"},{"name":"nodejs","version":"8.13.0","date":"2018-11-20","lts":"Carbon","security":false,"v8":"6.2.414.72"},{"name":"nodejs","version":"8.14.0","date":"2018-11-27","lts":"Carbon","security":true,"v8":"6.2.414.72"},{"name":"nodejs","version":"8.15.0","date":"2018-12-26","lts":"Carbon","security":false,"v8":"6.2.414.75"},{"name":"nodejs","version":"8.16.0","date":"2019-04-16","lts":"Carbon","security":false,"v8":"6.2.414.77"},{"name":"nodejs","version":"8.17.0","date":"2019-12-17","lts":"Carbon","security":true,"v8":"6.2.414.78"},{"name":"nodejs","version":"9.0.0","date":"2017-10-31","lts":false,"security":false,"v8":"6.2.414.32"},{"name":"nodejs","version":"9.1.0","date":"2017-11-07","lts":false,"security":false,"v8":"6.2.414.32"},{"name":"nodejs","version":"9.2.0","date":"2017-11-14","lts":false,"security":false,"v8":"6.2.414.44"},{"name":"nodejs","version":"9.3.0","date":"2017-12-12","lts":false,"security":false,"v8":"6.2.414.46"},{"name":"nodejs","version":"9.4.0","date":"2018-01-10","lts":false,"security":false,"v8":"6.2.414.46"},{"name":"nodejs","version":"9.5.0","date":"2018-01-31","lts":false,"security":false,"v8":"6.2.414.46"},{"name":"nodejs","version":"9.6.0","date":"2018-02-21","lts":false,"security":false,"v8":"6.2.414.46"},{"name":"nodejs","version":"9.7.0","date":"2018-03-01","lts":false,"security":false,"v8":"6.2.414.46"},{"name":"nodejs","version":"9.8.0","date":"2018-03-07","lts":false,"security":false,"v8":"6.2.414.46"},{"name":"nodejs","version":"9.9.0","date":"2018-03-21","lts":false,"security":false,"v8":"6.2.414.46"},{"name":"nodejs","version":"9.10.0","date":"2018-03-28","lts":false,"security":true,"v8":"6.2.414.46"},{"name":"nodejs","version":"9.11.0","date":"2018-04-04","lts":false,"security":false,"v8":"6.2.414.46"},{"name":"nodejs","version":"10.0.0","date":"2018-04-24","lts":false,"security":false,"v8":"6.6.346.24"},{"name":"nodejs","version":"10.1.0","date":"2018-05-08","lts":false,"security":false,"v8":"6.6.346.27"},{"name":"nodejs","version":"10.2.0","date":"2018-05-23","lts":false,"security":false,"v8":"6.6.346.32"},{"name":"nodejs","version":"10.3.0","date":"2018-05-29","lts":false,"security":false,"v8":"6.6.346.32"},{"name":"nodejs","version":"10.4.0","date":"2018-06-06","lts":false,"security":false,"v8":"6.7.288.43"},{"name":"nodejs","version":"10.5.0","date":"2018-06-20","lts":false,"security":false,"v8":"6.7.288.46"},{"name":"nodejs","version":"10.6.0","date":"2018-07-04","lts":false,"security":false,"v8":"6.7.288.46"},{"name":"nodejs","version":"10.7.0","date":"2018-07-18","lts":false,"security":false,"v8":"6.7.288.49"},{"name":"nodejs","version":"10.8.0","date":"2018-08-01","lts":false,"security":false,"v8":"6.7.288.49"},{"name":"nodejs","version":"10.9.0","date":"2018-08-15","lts":false,"security":false,"v8":"6.8.275.24"},{"name":"nodejs","version":"10.10.0","date":"2018-09-06","lts":false,"security":false,"v8":"6.8.275.30"},{"name":"nodejs","version":"10.11.0","date":"2018-09-19","lts":false,"security":false,"v8":"6.8.275.32"},{"name":"nodejs","version":"10.12.0","date":"2018-10-10","lts":false,"security":false,"v8":"6.8.275.32"},{"name":"nodejs","version":"10.13.0","date":"2018-10-30","lts":"Dubnium","security":false,"v8":"6.8.275.32"},{"name":"nodejs","version":"10.14.0","date":"2018-11-27","lts":"Dubnium","security":true,"v8":"6.8.275.32"},{"name":"nodejs","version":"10.15.0","date":"2018-12-26","lts":"Dubnium","security":false,"v8":"6.8.275.32"},{"name":"nodejs","version":"10.16.0","date":"2019-05-28","lts":"Dubnium","security":false,"v8":"6.8.275.32"},{"name":"nodejs","version":"10.17.0","date":"2019-10-22","lts":"Dubnium","security":false,"v8":"6.8.275.32"},{"name":"nodejs","version":"10.18.0","date":"2019-12-17","lts":"Dubnium","security":true,"v8":"6.8.275.32"},{"name":"nodejs","version":"10.19.0","date":"2020-02-05","lts":"Dubnium","security":true,"v8":"6.8.275.32"},{"name":"nodejs","version":"10.20.0","date":"2020-03-26","lts":"Dubnium","security":false,"v8":"6.8.275.32"},{"name":"nodejs","version":"10.21.0","date":"2020-06-02","lts":"Dubnium","security":true,"v8":"6.8.275.32"},{"name":"nodejs","version":"10.22.0","date":"2020-07-21","lts":"Dubnium","security":false,"v8":"6.8.275.32"},{"name":"nodejs","version":"10.23.0","date":"2020-10-27","lts":"Dubnium","security":false,"v8":"6.8.275.32"},{"name":"nodejs","version":"10.24.0","date":"2021-02-23","lts":"Dubnium","security":true,"v8":"6.8.275.32"},{"name":"nodejs","version":"11.0.0","date":"2018-10-23","lts":false,"security":false,"v8":"7.0.276.28"},{"name":"nodejs","version":"11.1.0","date":"2018-10-30","lts":false,"security":false,"v8":"7.0.276.32"},{"name":"nodejs","version":"11.2.0","date":"2018-11-15","lts":false,"security":false,"v8":"7.0.276.38"},{"name":"nodejs","version":"11.3.0","date":"2018-11-27","lts":false,"security":true,"v8":"7.0.276.38"},{"name":"nodejs","version":"11.4.0","date":"2018-12-07","lts":false,"security":false,"v8":"7.0.276.38"},{"name":"nodejs","version":"11.5.0","date":"2018-12-18","lts":false,"security":false,"v8":"7.0.276.38"},{"name":"nodejs","version":"11.6.0","date":"2018-12-26","lts":false,"security":false,"v8":"7.0.276.38"},{"name":"nodejs","version":"11.7.0","date":"2019-01-17","lts":false,"security":false,"v8":"7.0.276.38"},{"name":"nodejs","version":"11.8.0","date":"2019-01-24","lts":false,"security":false,"v8":"7.0.276.38"},{"name":"nodejs","version":"11.9.0","date":"2019-01-30","lts":false,"security":false,"v8":"7.0.276.38"},{"name":"nodejs","version":"11.10.0","date":"2019-02-14","lts":false,"security":false,"v8":"7.0.276.38"},{"name":"nodejs","version":"11.11.0","date":"2019-03-05","lts":false,"security":false,"v8":"7.0.276.38"},{"name":"nodejs","version":"11.12.0","date":"2019-03-14","lts":false,"security":false,"v8":"7.0.276.38"},{"name":"nodejs","version":"11.13.0","date":"2019-03-28","lts":false,"security":false,"v8":"7.0.276.38"},{"name":"nodejs","version":"11.14.0","date":"2019-04-10","lts":false,"security":false,"v8":"7.0.276.38"},{"name":"nodejs","version":"11.15.0","date":"2019-04-30","lts":false,"security":false,"v8":"7.0.276.38"},{"name":"nodejs","version":"12.0.0","date":"2019-04-23","lts":false,"security":false,"v8":"7.4.288.21"},{"name":"nodejs","version":"12.1.0","date":"2019-04-29","lts":false,"security":false,"v8":"7.4.288.21"},{"name":"nodejs","version":"12.2.0","date":"2019-05-07","lts":false,"security":false,"v8":"7.4.288.21"},{"name":"nodejs","version":"12.3.0","date":"2019-05-21","lts":false,"security":false,"v8":"7.4.288.27"},{"name":"nodejs","version":"12.4.0","date":"2019-06-04","lts":false,"security":false,"v8":"7.4.288.27"},{"name":"nodejs","version":"12.5.0","date":"2019-06-26","lts":false,"security":false,"v8":"7.5.288.22"},{"name":"nodejs","version":"12.6.0","date":"2019-07-03","lts":false,"security":false,"v8":"7.5.288.22"},{"name":"nodejs","version":"12.7.0","date":"2019-07-23","lts":false,"security":false,"v8":"7.5.288.22"},{"name":"nodejs","version":"12.8.0","date":"2019-08-06","lts":false,"security":false,"v8":"7.5.288.22"},{"name":"nodejs","version":"12.9.0","date":"2019-08-20","lts":false,"security":false,"v8":"7.6.303.29"},{"name":"nodejs","version":"12.10.0","date":"2019-09-04","lts":false,"security":false,"v8":"7.6.303.29"},{"name":"nodejs","version":"12.11.0","date":"2019-09-25","lts":false,"security":false,"v8":"7.7.299.11"},{"name":"nodejs","version":"12.12.0","date":"2019-10-11","lts":false,"security":false,"v8":"7.7.299.13"},{"name":"nodejs","version":"12.13.0","date":"2019-10-21","lts":"Erbium","security":false,"v8":"7.7.299.13"},{"name":"nodejs","version":"12.14.0","date":"2019-12-17","lts":"Erbium","security":true,"v8":"7.7.299.13"},{"name":"nodejs","version":"12.15.0","date":"2020-02-05","lts":"Erbium","security":true,"v8":"7.7.299.13"},{"name":"nodejs","version":"12.16.0","date":"2020-02-11","lts":"Erbium","security":false,"v8":"7.8.279.23"},{"name":"nodejs","version":"12.17.0","date":"2020-05-26","lts":"Erbium","security":false,"v8":"7.8.279.23"},{"name":"nodejs","version":"12.18.0","date":"2020-06-02","lts":"Erbium","security":true,"v8":"7.8.279.23"},{"name":"nodejs","version":"12.19.0","date":"2020-10-06","lts":"Erbium","security":false,"v8":"7.8.279.23"},{"name":"nodejs","version":"12.20.0","date":"2020-11-24","lts":"Erbium","security":false,"v8":"7.8.279.23"},{"name":"nodejs","version":"12.21.0","date":"2021-02-23","lts":"Erbium","security":true,"v8":"7.8.279.23"},{"name":"nodejs","version":"12.22.0","date":"2021-03-30","lts":"Erbium","security":false,"v8":"7.8.279.23"},{"name":"nodejs","version":"13.0.0","date":"2019-10-22","lts":false,"security":false,"v8":"7.8.279.17"},{"name":"nodejs","version":"13.1.0","date":"2019-11-05","lts":false,"security":false,"v8":"7.8.279.17"},{"name":"nodejs","version":"13.2.0","date":"2019-11-21","lts":false,"security":false,"v8":"7.9.317.23"},{"name":"nodejs","version":"13.3.0","date":"2019-12-03","lts":false,"security":false,"v8":"7.9.317.25"},{"name":"nodejs","version":"13.4.0","date":"2019-12-17","lts":false,"security":true,"v8":"7.9.317.25"},{"name":"nodejs","version":"13.5.0","date":"2019-12-18","lts":false,"security":false,"v8":"7.9.317.25"},{"name":"nodejs","version":"13.6.0","date":"2020-01-07","lts":false,"security":false,"v8":"7.9.317.25"},{"name":"nodejs","version":"13.7.0","date":"2020-01-21","lts":false,"security":false,"v8":"7.9.317.25"},{"name":"nodejs","version":"13.8.0","date":"2020-02-05","lts":false,"security":true,"v8":"7.9.317.25"},{"name":"nodejs","version":"13.9.0","date":"2020-02-18","lts":false,"security":false,"v8":"7.9.317.25"},{"name":"nodejs","version":"13.10.0","date":"2020-03-04","lts":false,"security":false,"v8":"7.9.317.25"},{"name":"nodejs","version":"13.11.0","date":"2020-03-12","lts":false,"security":false,"v8":"7.9.317.25"},{"name":"nodejs","version":"13.12.0","date":"2020-03-26","lts":false,"security":false,"v8":"7.9.317.25"},{"name":"nodejs","version":"13.13.0","date":"2020-04-14","lts":false,"security":false,"v8":"7.9.317.25"},{"name":"nodejs","version":"13.14.0","date":"2020-04-29","lts":false,"security":false,"v8":"7.9.317.25"},{"name":"nodejs","version":"14.0.0","date":"2020-04-21","lts":false,"security":false,"v8":"8.1.307.30"},{"name":"nodejs","version":"14.1.0","date":"2020-04-29","lts":false,"security":false,"v8":"8.1.307.31"},{"name":"nodejs","version":"14.2.0","date":"2020-05-05","lts":false,"security":false,"v8":"8.1.307.31"},{"name":"nodejs","version":"14.3.0","date":"2020-05-19","lts":false,"security":false,"v8":"8.1.307.31"},{"name":"nodejs","version":"14.4.0","date":"2020-06-02","lts":false,"security":true,"v8":"8.1.307.31"},{"name":"nodejs","version":"14.5.0","date":"2020-06-30","lts":false,"security":false,"v8":"8.3.110.9"},{"name":"nodejs","version":"14.6.0","date":"2020-07-20","lts":false,"security":false,"v8":"8.4.371.19"},{"name":"nodejs","version":"14.7.0","date":"2020-07-29","lts":false,"security":false,"v8":"8.4.371.19"},{"name":"nodejs","version":"14.8.0","date":"2020-08-11","lts":false,"security":false,"v8":"8.4.371.19"},{"name":"nodejs","version":"14.9.0","date":"2020-08-27","lts":false,"security":false,"v8":"8.4.371.19"},{"name":"nodejs","version":"14.10.0","date":"2020-09-08","lts":false,"security":false,"v8":"8.4.371.19"},{"name":"nodejs","version":"14.11.0","date":"2020-09-15","lts":false,"security":true,"v8":"8.4.371.19"},{"name":"nodejs","version":"14.12.0","date":"2020-09-22","lts":false,"security":false,"v8":"8.4.371.19"},{"name":"nodejs","version":"14.13.0","date":"2020-09-29","lts":false,"security":false,"v8":"8.4.371.19"},{"name":"nodejs","version":"14.14.0","date":"2020-10-15","lts":false,"security":false,"v8":"8.4.371.19"},{"name":"nodejs","version":"14.15.0","date":"2020-10-27","lts":"Fermium","security":false,"v8":"8.4.371.19"},{"name":"nodejs","version":"14.16.0","date":"2021-02-23","lts":"Fermium","security":true,"v8":"8.4.371.19"},{"name":"nodejs","version":"14.17.0","date":"2021-05-11","lts":"Fermium","security":false,"v8":"8.4.371.23"},{"name":"nodejs","version":"14.18.0","date":"2021-09-28","lts":"Fermium","security":false,"v8":"8.4.371.23"},{"name":"nodejs","version":"14.19.0","date":"2022-02-01","lts":"Fermium","security":false,"v8":"8.4.371.23"},{"name":"nodejs","version":"14.20.0","date":"2022-07-07","lts":"Fermium","security":true,"v8":"8.4.371.23"},{"name":"nodejs","version":"14.21.0","date":"2022-11-01","lts":"Fermium","security":false,"v8":"8.4.371.23"},{"name":"nodejs","version":"15.0.0","date":"2020-10-20","lts":false,"security":false,"v8":"8.6.395.16"},{"name":"nodejs","version":"15.1.0","date":"2020-11-04","lts":false,"security":false,"v8":"8.6.395.17"},{"name":"nodejs","version":"15.2.0","date":"2020-11-10","lts":false,"security":false,"v8":"8.6.395.17"},{"name":"nodejs","version":"15.3.0","date":"2020-11-24","lts":false,"security":false,"v8":"8.6.395.17"},{"name":"nodejs","version":"15.4.0","date":"2020-12-09","lts":false,"security":false,"v8":"8.6.395.17"},{"name":"nodejs","version":"15.5.0","date":"2020-12-22","lts":false,"security":false,"v8":"8.6.395.17"},{"name":"nodejs","version":"15.6.0","date":"2021-01-14","lts":false,"security":false,"v8":"8.6.395.17"},{"name":"nodejs","version":"15.7.0","date":"2021-01-25","lts":false,"security":false,"v8":"8.6.395.17"},{"name":"nodejs","version":"15.8.0","date":"2021-02-02","lts":false,"security":false,"v8":"8.6.395.17"},{"name":"nodejs","version":"15.9.0","date":"2021-02-18","lts":false,"security":false,"v8":"8.6.395.17"},{"name":"nodejs","version":"15.10.0","date":"2021-02-23","lts":false,"security":true,"v8":"8.6.395.17"},{"name":"nodejs","version":"15.11.0","date":"2021-03-03","lts":false,"security":false,"v8":"8.6.395.17"},{"name":"nodejs","version":"15.12.0","date":"2021-03-17","lts":false,"security":false,"v8":"8.6.395.17"},{"name":"nodejs","version":"15.13.0","date":"2021-03-31","lts":false,"security":false,"v8":"8.6.395.17"},{"name":"nodejs","version":"15.14.0","date":"2021-04-06","lts":false,"security":false,"v8":"8.6.395.17"},{"name":"nodejs","version":"16.0.0","date":"2021-04-20","lts":false,"security":false,"v8":"9.0.257.17"},{"name":"nodejs","version":"16.1.0","date":"2021-05-04","lts":false,"security":false,"v8":"9.0.257.24"},{"name":"nodejs","version":"16.2.0","date":"2021-05-19","lts":false,"security":false,"v8":"9.0.257.25"},{"name":"nodejs","version":"16.3.0","date":"2021-06-03","lts":false,"security":false,"v8":"9.0.257.25"},{"name":"nodejs","version":"16.4.0","date":"2021-06-23","lts":false,"security":false,"v8":"9.1.269.36"},{"name":"nodejs","version":"16.5.0","date":"2021-07-14","lts":false,"security":false,"v8":"9.1.269.38"},{"name":"nodejs","version":"16.6.0","date":"2021-07-29","lts":false,"security":true,"v8":"9.2.230.21"},{"name":"nodejs","version":"16.7.0","date":"2021-08-18","lts":false,"security":false,"v8":"9.2.230.21"},{"name":"nodejs","version":"16.8.0","date":"2021-08-25","lts":false,"security":false,"v8":"9.2.230.21"},{"name":"nodejs","version":"16.9.0","date":"2021-09-07","lts":false,"security":false,"v8":"9.3.345.16"},{"name":"nodejs","version":"16.10.0","date":"2021-09-22","lts":false,"security":false,"v8":"9.3.345.19"},{"name":"nodejs","version":"16.11.0","date":"2021-10-08","lts":false,"security":false,"v8":"9.4.146.19"},{"name":"nodejs","version":"16.12.0","date":"2021-10-20","lts":false,"security":false,"v8":"9.4.146.19"},{"name":"nodejs","version":"16.13.0","date":"2021-10-26","lts":"Gallium","security":false,"v8":"9.4.146.19"},{"name":"nodejs","version":"16.14.0","date":"2022-02-08","lts":"Gallium","security":false,"v8":"9.4.146.24"},{"name":"nodejs","version":"16.15.0","date":"2022-04-26","lts":"Gallium","security":false,"v8":"9.4.146.24"},{"name":"nodejs","version":"16.16.0","date":"2022-07-07","lts":"Gallium","security":true,"v8":"9.4.146.24"},{"name":"nodejs","version":"16.17.0","date":"2022-08-16","lts":"Gallium","security":false,"v8":"9.4.146.26"},{"name":"nodejs","version":"16.18.0","date":"2022-10-12","lts":"Gallium","security":false,"v8":"9.4.146.26"},{"name":"nodejs","version":"16.19.0","date":"2022-12-13","lts":"Gallium","security":false,"v8":"9.4.146.26"},{"name":"nodejs","version":"16.20.0","date":"2023-03-28","lts":"Gallium","security":false,"v8":"9.4.146.26"},{"name":"nodejs","version":"17.0.0","date":"2021-10-19","lts":false,"security":false,"v8":"9.5.172.21"},{"name":"nodejs","version":"17.1.0","date":"2021-11-09","lts":false,"security":false,"v8":"9.5.172.25"},{"name":"nodejs","version":"17.2.0","date":"2021-11-30","lts":false,"security":false,"v8":"9.6.180.14"},{"name":"nodejs","version":"17.3.0","date":"2021-12-17","lts":false,"security":false,"v8":"9.6.180.15"},{"name":"nodejs","version":"17.4.0","date":"2022-01-18","lts":false,"security":false,"v8":"9.6.180.15"},{"name":"nodejs","version":"17.5.0","date":"2022-02-10","lts":false,"security":false,"v8":"9.6.180.15"},{"name":"nodejs","version":"17.6.0","date":"2022-02-22","lts":false,"security":false,"v8":"9.6.180.15"},{"name":"nodejs","version":"17.7.0","date":"2022-03-09","lts":false,"security":false,"v8":"9.6.180.15"},{"name":"nodejs","version":"17.8.0","date":"2022-03-22","lts":false,"security":false,"v8":"9.6.180.15"},{"name":"nodejs","version":"17.9.0","date":"2022-04-07","lts":false,"security":false,"v8":"9.6.180.15"},{"name":"nodejs","version":"18.0.0","date":"2022-04-18","lts":false,"security":false,"v8":"10.1.124.8"},{"name":"nodejs","version":"18.1.0","date":"2022-05-03","lts":false,"security":false,"v8":"10.1.124.8"},{"name":"nodejs","version":"18.2.0","date":"2022-05-17","lts":false,"security":false,"v8":"10.1.124.8"},{"name":"nodejs","version":"18.3.0","date":"2022-06-02","lts":false,"security":false,"v8":"10.2.154.4"},{"name":"nodejs","version":"18.4.0","date":"2022-06-16","lts":false,"security":false,"v8":"10.2.154.4"},{"name":"nodejs","version":"18.5.0","date":"2022-07-06","lts":false,"security":true,"v8":"10.2.154.4"},{"name":"nodejs","version":"18.6.0","date":"2022-07-13","lts":false,"security":false,"v8":"10.2.154.13"},{"name":"nodejs","version":"18.7.0","date":"2022-07-26","lts":false,"security":false,"v8":"10.2.154.13"},{"name":"nodejs","version":"18.8.0","date":"2022-08-24","lts":false,"security":false,"v8":"10.2.154.13"},{"name":"nodejs","version":"18.9.0","date":"2022-09-07","lts":false,"security":false,"v8":"10.2.154.15"},{"name":"nodejs","version":"18.10.0","date":"2022-09-28","lts":false,"security":false,"v8":"10.2.154.15"},{"name":"nodejs","version":"18.11.0","date":"2022-10-13","lts":false,"security":false,"v8":"10.2.154.15"},{"name":"nodejs","version":"18.12.0","date":"2022-10-25","lts":"Hydrogen","security":false,"v8":"10.2.154.15"},{"name":"nodejs","version":"18.13.0","date":"2023-01-05","lts":"Hydrogen","security":false,"v8":"10.2.154.23"},{"name":"nodejs","version":"18.14.0","date":"2023-02-01","lts":"Hydrogen","security":false,"v8":"10.2.154.23"},{"name":"nodejs","version":"18.15.0","date":"2023-03-05","lts":"Hydrogen","security":false,"v8":"10.2.154.26"},{"name":"nodejs","version":"18.16.0","date":"2023-04-12","lts":"Hydrogen","security":false,"v8":"10.2.154.26"},{"name":"nodejs","version":"18.17.0","date":"2023-07-18","lts":"Hydrogen","security":false,"v8":"10.2.154.26"},{"name":"nodejs","version":"18.18.0","date":"2023-09-18","lts":"Hydrogen","security":false,"v8":"10.2.154.26"},{"name":"nodejs","version":"18.19.0","date":"2023-11-29","lts":"Hydrogen","security":false,"v8":"10.2.154.26"},{"name":"nodejs","version":"18.20.0","date":"2024-03-26","lts":"Hydrogen","security":false,"v8":"10.2.154.26"},{"name":"nodejs","version":"19.0.0","date":"2022-10-17","lts":false,"security":false,"v8":"10.7.193.13"},{"name":"nodejs","version":"19.1.0","date":"2022-11-14","lts":false,"security":false,"v8":"10.7.193.20"},{"name":"nodejs","version":"19.2.0","date":"2022-11-29","lts":false,"security":false,"v8":"10.8.168.20"},{"name":"nodejs","version":"19.3.0","date":"2022-12-14","lts":false,"security":false,"v8":"10.8.168.21"},{"name":"nodejs","version":"19.4.0","date":"2023-01-05","lts":false,"security":false,"v8":"10.8.168.25"},{"name":"nodejs","version":"19.5.0","date":"2023-01-24","lts":false,"security":false,"v8":"10.8.168.25"},{"name":"nodejs","version":"19.6.0","date":"2023-02-01","lts":false,"security":false,"v8":"10.8.168.25"},{"name":"nodejs","version":"19.7.0","date":"2023-02-21","lts":false,"security":false,"v8":"10.8.168.25"},{"name":"nodejs","version":"19.8.0","date":"2023-03-14","lts":false,"security":false,"v8":"10.8.168.25"},{"name":"nodejs","version":"19.9.0","date":"2023-04-10","lts":false,"security":false,"v8":"10.8.168.25"},{"name":"nodejs","version":"20.0.0","date":"2023-04-17","lts":false,"security":false,"v8":"11.3.244.4"},{"name":"nodejs","version":"20.1.0","date":"2023-05-03","lts":false,"security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.2.0","date":"2023-05-16","lts":false,"security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.3.0","date":"2023-06-08","lts":false,"security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.4.0","date":"2023-07-04","lts":false,"security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.5.0","date":"2023-07-19","lts":false,"security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.6.0","date":"2023-08-23","lts":false,"security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.7.0","date":"2023-09-18","lts":false,"security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.8.0","date":"2023-09-28","lts":false,"security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.9.0","date":"2023-10-24","lts":"Iron","security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.10.0","date":"2023-11-22","lts":"Iron","security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.11.0","date":"2024-01-09","lts":"Iron","security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.12.0","date":"2024-03-26","lts":"Iron","security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.13.0","date":"2024-05-07","lts":"Iron","security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.14.0","date":"2024-05-28","lts":"Iron","security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.15.0","date":"2024-06-20","lts":"Iron","security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.16.0","date":"2024-07-24","lts":"Iron","security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.17.0","date":"2024-08-21","lts":"Iron","security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"20.18.0","date":"2024-10-03","lts":"Iron","security":false,"v8":"11.3.244.8"},{"name":"nodejs","version":"21.0.0","date":"2023-10-17","lts":false,"security":false,"v8":"11.8.172.13"},{"name":"nodejs","version":"21.1.0","date":"2023-10-24","lts":false,"security":false,"v8":"11.8.172.15"},{"name":"nodejs","version":"21.2.0","date":"2023-11-14","lts":false,"security":false,"v8":"11.8.172.17"},{"name":"nodejs","version":"21.3.0","date":"2023-11-30","lts":false,"security":false,"v8":"11.8.172.17"},{"name":"nodejs","version":"21.4.0","date":"2023-12-05","lts":false,"security":false,"v8":"11.8.172.17"},{"name":"nodejs","version":"21.5.0","date":"2023-12-19","lts":false,"security":false,"v8":"11.8.172.17"},{"name":"nodejs","version":"21.6.0","date":"2024-01-14","lts":false,"security":false,"v8":"11.8.172.17"},{"name":"nodejs","version":"21.7.0","date":"2024-03-06","lts":false,"security":false,"v8":"11.8.172.17"},{"name":"nodejs","version":"22.0.0","date":"2024-04-24","lts":false,"security":false,"v8":"12.4.254.14"},{"name":"nodejs","version":"22.1.0","date":"2024-05-02","lts":false,"security":false,"v8":"12.4.254.14"},{"name":"nodejs","version":"22.2.0","date":"2024-05-15","lts":false,"security":false,"v8":"12.4.254.14"},{"name":"nodejs","version":"22.3.0","date":"2024-06-11","lts":false,"security":false,"v8":"12.4.254.20"},{"name":"nodejs","version":"22.4.0","date":"2024-07-02","lts":false,"security":false,"v8":"12.4.254.21"},{"name":"nodejs","version":"22.5.0","date":"2024-07-17","lts":false,"security":false,"v8":"12.4.254.21"},{"name":"nodejs","version":"22.6.0","date":"2024-08-06","lts":false,"security":false,"v8":"12.4.254.21"},{"name":"nodejs","version":"22.7.0","date":"2024-08-21","lts":false,"security":false,"v8":"12.4.254.21"},{"name":"nodejs","version":"22.8.0","date":"2024-09-03","lts":false,"security":false,"v8":"12.4.254.21"},{"name":"nodejs","version":"22.9.0","date":"2024-09-17","lts":false,"security":false,"v8":"12.4.254.21"},{"name":"nodejs","version":"22.10.0","date":"2024-10-16","lts":false,"security":false,"v8":"12.4.254.21"},{"name":"nodejs","version":"22.11.0","date":"2024-10-29","lts":"Jod","security":false,"v8":"12.4.254.21"},{"name":"nodejs","version":"22.12.0","date":"2024-12-02","lts":"Jod","security":false,"v8":"12.4.254.21"},{"name":"nodejs","version":"23.0.0","date":"2024-10-16","lts":false,"security":false,"v8":"12.9.202.26"},{"name":"nodejs","version":"23.1.0","date":"2024-10-24","lts":false,"security":false,"v8":"12.9.202.28"},{"name":"nodejs","version":"23.2.0","date":"2024-11-11","lts":false,"security":false,"v8":"12.9.202.28"},{"name":"nodejs","version":"23.3.0","date":"2024-11-20","lts":false,"security":false,"v8":"12.9.202.28"}]');
2066
-
2067
- /***/ }),
2068
-
2069
- /***/ 995:
2070
- /***/ ((module) => {
2071
-
2072
- "use strict";
2073
- module.exports = /*#__PURE__*/JSON.parse('{"v0.8":{"start":"2012-06-25","end":"2014-07-31"},"v0.10":{"start":"2013-03-11","end":"2016-10-31"},"v0.12":{"start":"2015-02-06","end":"2016-12-31"},"v4":{"start":"2015-09-08","lts":"2015-10-12","maintenance":"2017-04-01","end":"2018-04-30","codename":"Argon"},"v5":{"start":"2015-10-29","maintenance":"2016-04-30","end":"2016-06-30"},"v6":{"start":"2016-04-26","lts":"2016-10-18","maintenance":"2018-04-30","end":"2019-04-30","codename":"Boron"},"v7":{"start":"2016-10-25","maintenance":"2017-04-30","end":"2017-06-30"},"v8":{"start":"2017-05-30","lts":"2017-10-31","maintenance":"2019-01-01","end":"2019-12-31","codename":"Carbon"},"v9":{"start":"2017-10-01","maintenance":"2018-04-01","end":"2018-06-30"},"v10":{"start":"2018-04-24","lts":"2018-10-30","maintenance":"2020-05-19","end":"2021-04-30","codename":"Dubnium"},"v11":{"start":"2018-10-23","maintenance":"2019-04-22","end":"2019-06-01"},"v12":{"start":"2019-04-23","lts":"2019-10-21","maintenance":"2020-11-30","end":"2022-04-30","codename":"Erbium"},"v13":{"start":"2019-10-22","maintenance":"2020-04-01","end":"2020-06-01"},"v14":{"start":"2020-04-21","lts":"2020-10-27","maintenance":"2021-10-19","end":"2023-04-30","codename":"Fermium"},"v15":{"start":"2020-10-20","maintenance":"2021-04-01","end":"2021-06-01"},"v16":{"start":"2021-04-20","lts":"2021-10-26","maintenance":"2022-10-18","end":"2023-09-11","codename":"Gallium"},"v17":{"start":"2021-10-19","maintenance":"2022-04-01","end":"2022-06-01"},"v18":{"start":"2022-04-19","lts":"2022-10-25","maintenance":"2023-10-18","end":"2025-04-30","codename":"Hydrogen"},"v19":{"start":"2022-10-18","maintenance":"2023-04-01","end":"2023-06-01"},"v20":{"start":"2023-04-18","lts":"2023-10-24","maintenance":"2024-10-22","end":"2026-04-30","codename":"Iron"},"v21":{"start":"2023-10-17","maintenance":"2024-04-01","end":"2024-06-01"},"v22":{"start":"2024-04-24","lts":"2024-10-29","maintenance":"2025-10-21","end":"2027-04-30","codename":"Jod"},"v23":{"start":"2024-10-16","maintenance":"2025-04-01","end":"2025-06-01"},"v24":{"start":"2025-04-22","lts":"2025-10-28","maintenance":"2026-10-20","end":"2028-04-30","codename":""}}');
2074
-
2075
- /***/ })
2076
-
2077
- /******/ });
2078
- /************************************************************************/
2079
- /******/ // The module cache
2080
- /******/ var __webpack_module_cache__ = {};
2081
- /******/
2082
- /******/ // The require function
2083
- /******/ function __nccwpck_require__(moduleId) {
2084
- /******/ // Check if module is in cache
2085
- /******/ var cachedModule = __webpack_module_cache__[moduleId];
2086
- /******/ if (cachedModule !== undefined) {
2087
- /******/ return cachedModule.exports;
2088
- /******/ }
2089
- /******/ // Create a new module (and put it into the cache)
2090
- /******/ var module = __webpack_module_cache__[moduleId] = {
2091
- /******/ // no module.id needed
2092
- /******/ // no module.loaded needed
2093
- /******/ exports: {}
2094
- /******/ };
2095
- /******/
2096
- /******/ // Execute the module function
2097
- /******/ var threw = true;
2098
- /******/ try {
2099
- /******/ __webpack_modules__[moduleId](module, module.exports, __nccwpck_require__);
2100
- /******/ threw = false;
2101
- /******/ } finally {
2102
- /******/ if(threw) delete __webpack_module_cache__[moduleId];
2103
- /******/ }
2104
- /******/
2105
- /******/ // Return the exports of the module
2106
- /******/ return module.exports;
2107
- /******/ }
2108
- /******/
2109
- /************************************************************************/
2110
- /******/ /* webpack/runtime/compat */
2111
- /******/
2112
- /******/ if (typeof __nccwpck_require__ !== 'undefined') __nccwpck_require__.ab = __dirname + "/";
2113
- /******/
2114
- /************************************************************************/
2115
- /******/
2116
- /******/ // startup
2117
- /******/ // Load entry module and return exports
2118
- /******/ // This entry module is referenced by other modules so it can't be inlined
2119
- /******/ var __webpack_exports__ = __nccwpck_require__(113);
2120
- /******/ module.exports = __webpack_exports__;
2121
- /******/
2122
- /******/ })()
2123
- ;