@flourish/sdk 4.2.0 → 4.2.2

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 (1074) hide show
  1. package/RELEASE_NOTES.md +6 -0
  2. package/lib/cmd/publish.js +1 -1
  3. package/lib/common.js +1 -1
  4. package/lib/sdk.js +25 -5
  5. package/lib/validate_config.js +1 -1
  6. package/my_template/node_modules/.package-lock.json +525 -0
  7. package/my_template/node_modules/@babel/code-frame/LICENSE +22 -0
  8. package/my_template/node_modules/@babel/code-frame/README.md +19 -0
  9. package/my_template/node_modules/@babel/code-frame/lib/index.js +157 -0
  10. package/my_template/node_modules/@babel/code-frame/lib/index.js.map +1 -0
  11. package/my_template/node_modules/@babel/code-frame/package.json +30 -0
  12. package/my_template/node_modules/@babel/helper-validator-identifier/LICENSE +22 -0
  13. package/my_template/node_modules/@babel/helper-validator-identifier/README.md +19 -0
  14. package/my_template/node_modules/@babel/helper-validator-identifier/lib/identifier.js +70 -0
  15. package/my_template/node_modules/@babel/helper-validator-identifier/lib/identifier.js.map +1 -0
  16. package/my_template/node_modules/@babel/helper-validator-identifier/lib/index.js +57 -0
  17. package/my_template/node_modules/@babel/helper-validator-identifier/lib/index.js.map +1 -0
  18. package/my_template/node_modules/@babel/helper-validator-identifier/lib/keyword.js +35 -0
  19. package/my_template/node_modules/@babel/helper-validator-identifier/lib/keyword.js.map +1 -0
  20. package/my_template/node_modules/@babel/helper-validator-identifier/package.json +28 -0
  21. package/my_template/node_modules/@babel/helper-validator-identifier/scripts/generate-identifier-regex.js +73 -0
  22. package/my_template/node_modules/@babel/highlight/LICENSE +22 -0
  23. package/my_template/node_modules/@babel/highlight/README.md +19 -0
  24. package/my_template/node_modules/@babel/highlight/lib/index.js +105 -0
  25. package/my_template/node_modules/@babel/highlight/lib/index.js.map +1 -0
  26. package/my_template/node_modules/@babel/highlight/package.json +29 -0
  27. package/my_template/node_modules/@types/estree/LICENSE +21 -0
  28. package/my_template/node_modules/@types/estree/README.md +15 -0
  29. package/my_template/node_modules/@types/estree/flow.d.ts +167 -0
  30. package/my_template/node_modules/@types/estree/index.d.ts +683 -0
  31. package/my_template/node_modules/@types/estree/package.json +26 -0
  32. package/my_template/node_modules/@types/node/LICENSE +21 -0
  33. package/my_template/node_modules/@types/node/README.md +15 -0
  34. package/my_template/node_modules/@types/node/assert/strict.d.ts +8 -0
  35. package/my_template/node_modules/@types/node/assert.d.ts +996 -0
  36. package/my_template/node_modules/@types/node/async_hooks.d.ts +539 -0
  37. package/my_template/node_modules/@types/node/buffer.d.ts +2362 -0
  38. package/my_template/node_modules/@types/node/child_process.d.ts +1540 -0
  39. package/my_template/node_modules/@types/node/cluster.d.ts +432 -0
  40. package/my_template/node_modules/@types/node/console.d.ts +415 -0
  41. package/my_template/node_modules/@types/node/constants.d.ts +19 -0
  42. package/my_template/node_modules/@types/node/crypto.d.ts +4456 -0
  43. package/my_template/node_modules/@types/node/dgram.d.ts +586 -0
  44. package/my_template/node_modules/@types/node/diagnostics_channel.d.ts +191 -0
  45. package/my_template/node_modules/@types/node/dns/promises.d.ts +425 -0
  46. package/my_template/node_modules/@types/node/dns.d.ts +809 -0
  47. package/my_template/node_modules/@types/node/dom-events.d.ts +122 -0
  48. package/my_template/node_modules/@types/node/domain.d.ts +170 -0
  49. package/my_template/node_modules/@types/node/events.d.ts +879 -0
  50. package/my_template/node_modules/@types/node/fs/promises.d.ts +1239 -0
  51. package/my_template/node_modules/@types/node/fs.d.ts +4291 -0
  52. package/my_template/node_modules/@types/node/globals.d.ts +385 -0
  53. package/my_template/node_modules/@types/node/globals.global.d.ts +1 -0
  54. package/my_template/node_modules/@types/node/http.d.ts +1888 -0
  55. package/my_template/node_modules/@types/node/http2.d.ts +2382 -0
  56. package/my_template/node_modules/@types/node/https.d.ts +550 -0
  57. package/my_template/node_modules/@types/node/index.d.ts +88 -0
  58. package/my_template/node_modules/@types/node/inspector.d.ts +2747 -0
  59. package/my_template/node_modules/@types/node/module.d.ts +301 -0
  60. package/my_template/node_modules/@types/node/net.d.ts +949 -0
  61. package/my_template/node_modules/@types/node/os.d.ts +478 -0
  62. package/my_template/node_modules/@types/node/package.json +230 -0
  63. package/my_template/node_modules/@types/node/path.d.ts +191 -0
  64. package/my_template/node_modules/@types/node/perf_hooks.d.ts +639 -0
  65. package/my_template/node_modules/@types/node/process.d.ts +1539 -0
  66. package/my_template/node_modules/@types/node/punycode.d.ts +117 -0
  67. package/my_template/node_modules/@types/node/querystring.d.ts +141 -0
  68. package/my_template/node_modules/@types/node/readline/promises.d.ts +150 -0
  69. package/my_template/node_modules/@types/node/readline.d.ts +539 -0
  70. package/my_template/node_modules/@types/node/repl.d.ts +430 -0
  71. package/my_template/node_modules/@types/node/stream/consumers.d.ts +12 -0
  72. package/my_template/node_modules/@types/node/stream/promises.d.ts +83 -0
  73. package/my_template/node_modules/@types/node/stream/web.d.ts +350 -0
  74. package/my_template/node_modules/@types/node/stream.d.ts +1701 -0
  75. package/my_template/node_modules/@types/node/string_decoder.d.ts +67 -0
  76. package/my_template/node_modules/@types/node/test.d.ts +1382 -0
  77. package/my_template/node_modules/@types/node/timers/promises.d.ts +93 -0
  78. package/my_template/node_modules/@types/node/timers.d.ts +240 -0
  79. package/my_template/node_modules/@types/node/tls.d.ts +1210 -0
  80. package/my_template/node_modules/@types/node/trace_events.d.ts +182 -0
  81. package/my_template/node_modules/@types/node/ts4.8/assert/strict.d.ts +8 -0
  82. package/my_template/node_modules/@types/node/ts4.8/assert.d.ts +996 -0
  83. package/my_template/node_modules/@types/node/ts4.8/async_hooks.d.ts +539 -0
  84. package/my_template/node_modules/@types/node/ts4.8/buffer.d.ts +2362 -0
  85. package/my_template/node_modules/@types/node/ts4.8/child_process.d.ts +1540 -0
  86. package/my_template/node_modules/@types/node/ts4.8/cluster.d.ts +432 -0
  87. package/my_template/node_modules/@types/node/ts4.8/console.d.ts +415 -0
  88. package/my_template/node_modules/@types/node/ts4.8/constants.d.ts +19 -0
  89. package/my_template/node_modules/@types/node/ts4.8/crypto.d.ts +4455 -0
  90. package/my_template/node_modules/@types/node/ts4.8/dgram.d.ts +586 -0
  91. package/my_template/node_modules/@types/node/ts4.8/diagnostics_channel.d.ts +191 -0
  92. package/my_template/node_modules/@types/node/ts4.8/dns/promises.d.ts +425 -0
  93. package/my_template/node_modules/@types/node/ts4.8/dns.d.ts +809 -0
  94. package/my_template/node_modules/@types/node/ts4.8/dom-events.d.ts +122 -0
  95. package/my_template/node_modules/@types/node/ts4.8/domain.d.ts +170 -0
  96. package/my_template/node_modules/@types/node/ts4.8/events.d.ts +879 -0
  97. package/my_template/node_modules/@types/node/ts4.8/fs/promises.d.ts +1239 -0
  98. package/my_template/node_modules/@types/node/ts4.8/fs.d.ts +4291 -0
  99. package/my_template/node_modules/@types/node/ts4.8/globals.d.ts +385 -0
  100. package/my_template/node_modules/@types/node/ts4.8/globals.global.d.ts +1 -0
  101. package/my_template/node_modules/@types/node/ts4.8/http.d.ts +1888 -0
  102. package/my_template/node_modules/@types/node/ts4.8/http2.d.ts +2382 -0
  103. package/my_template/node_modules/@types/node/ts4.8/https.d.ts +550 -0
  104. package/my_template/node_modules/@types/node/ts4.8/index.d.ts +88 -0
  105. package/my_template/node_modules/@types/node/ts4.8/inspector.d.ts +2747 -0
  106. package/my_template/node_modules/@types/node/ts4.8/module.d.ts +301 -0
  107. package/my_template/node_modules/@types/node/ts4.8/net.d.ts +949 -0
  108. package/my_template/node_modules/@types/node/ts4.8/os.d.ts +478 -0
  109. package/my_template/node_modules/@types/node/ts4.8/path.d.ts +191 -0
  110. package/my_template/node_modules/@types/node/ts4.8/perf_hooks.d.ts +639 -0
  111. package/my_template/node_modules/@types/node/ts4.8/process.d.ts +1539 -0
  112. package/my_template/node_modules/@types/node/ts4.8/punycode.d.ts +117 -0
  113. package/my_template/node_modules/@types/node/ts4.8/querystring.d.ts +141 -0
  114. package/my_template/node_modules/@types/node/ts4.8/readline/promises.d.ts +150 -0
  115. package/my_template/node_modules/@types/node/ts4.8/readline.d.ts +539 -0
  116. package/my_template/node_modules/@types/node/ts4.8/repl.d.ts +430 -0
  117. package/my_template/node_modules/@types/node/ts4.8/stream/consumers.d.ts +12 -0
  118. package/my_template/node_modules/@types/node/ts4.8/stream/promises.d.ts +83 -0
  119. package/my_template/node_modules/@types/node/ts4.8/stream/web.d.ts +350 -0
  120. package/my_template/node_modules/@types/node/ts4.8/stream.d.ts +1701 -0
  121. package/my_template/node_modules/@types/node/ts4.8/string_decoder.d.ts +67 -0
  122. package/my_template/node_modules/@types/node/ts4.8/test.d.ts +1382 -0
  123. package/my_template/node_modules/@types/node/ts4.8/timers/promises.d.ts +93 -0
  124. package/my_template/node_modules/@types/node/ts4.8/timers.d.ts +240 -0
  125. package/my_template/node_modules/@types/node/ts4.8/tls.d.ts +1210 -0
  126. package/my_template/node_modules/@types/node/ts4.8/trace_events.d.ts +182 -0
  127. package/my_template/node_modules/@types/node/ts4.8/tty.d.ts +208 -0
  128. package/my_template/node_modules/@types/node/ts4.8/url.d.ts +927 -0
  129. package/my_template/node_modules/@types/node/ts4.8/util.d.ts +2183 -0
  130. package/my_template/node_modules/@types/node/ts4.8/v8.d.ts +635 -0
  131. package/my_template/node_modules/@types/node/ts4.8/vm.d.ts +903 -0
  132. package/my_template/node_modules/@types/node/ts4.8/wasi.d.ts +158 -0
  133. package/my_template/node_modules/@types/node/ts4.8/worker_threads.d.ts +691 -0
  134. package/my_template/node_modules/@types/node/ts4.8/zlib.d.ts +517 -0
  135. package/my_template/node_modules/@types/node/tty.d.ts +208 -0
  136. package/my_template/node_modules/@types/node/url.d.ts +927 -0
  137. package/my_template/node_modules/@types/node/util.d.ts +2183 -0
  138. package/my_template/node_modules/@types/node/v8.d.ts +635 -0
  139. package/my_template/node_modules/@types/node/vm.d.ts +903 -0
  140. package/my_template/node_modules/@types/node/wasi.d.ts +158 -0
  141. package/my_template/node_modules/@types/node/worker_threads.d.ts +691 -0
  142. package/my_template/node_modules/@types/node/zlib.d.ts +517 -0
  143. package/my_template/node_modules/@types/resolve/LICENSE +21 -0
  144. package/my_template/node_modules/@types/resolve/README.md +16 -0
  145. package/my_template/node_modules/@types/resolve/index.d.ts +113 -0
  146. package/my_template/node_modules/@types/resolve/package.json +29 -0
  147. package/my_template/node_modules/acorn/CHANGELOG.md +620 -0
  148. package/my_template/node_modules/acorn/LICENSE +21 -0
  149. package/my_template/node_modules/acorn/README.md +269 -0
  150. package/my_template/node_modules/acorn/bin/acorn +4 -0
  151. package/my_template/node_modules/acorn/dist/acorn.d.ts +209 -0
  152. package/my_template/node_modules/acorn/dist/acorn.js +5186 -0
  153. package/my_template/node_modules/acorn/dist/acorn.js.map +1 -0
  154. package/my_template/node_modules/acorn/dist/acorn.mjs +5155 -0
  155. package/my_template/node_modules/acorn/dist/acorn.mjs.d.ts +2 -0
  156. package/my_template/node_modules/acorn/dist/acorn.mjs.map +1 -0
  157. package/my_template/node_modules/acorn/dist/bin.js +64 -0
  158. package/my_template/node_modules/acorn/package.json +35 -0
  159. package/my_template/node_modules/amdefine/LICENSE +58 -0
  160. package/my_template/node_modules/amdefine/README.md +171 -0
  161. package/my_template/node_modules/amdefine/amdefine.js +301 -0
  162. package/my_template/node_modules/amdefine/intercept.js +36 -0
  163. package/my_template/node_modules/amdefine/package.json +16 -0
  164. package/my_template/node_modules/ansi-styles/index.js +165 -0
  165. package/my_template/node_modules/ansi-styles/license +9 -0
  166. package/my_template/node_modules/ansi-styles/package.json +56 -0
  167. package/my_template/node_modules/ansi-styles/readme.md +147 -0
  168. package/my_template/node_modules/builtin-modules/builtin-modules.json +43 -0
  169. package/my_template/node_modules/builtin-modules/index.d.ts +14 -0
  170. package/my_template/node_modules/builtin-modules/index.js +11 -0
  171. package/my_template/node_modules/builtin-modules/license +9 -0
  172. package/my_template/node_modules/builtin-modules/package.json +44 -0
  173. package/my_template/node_modules/builtin-modules/readme.md +44 -0
  174. package/my_template/node_modules/builtin-modules/static.d.ts +14 -0
  175. package/my_template/node_modules/builtin-modules/static.js +2 -0
  176. package/my_template/node_modules/chalk/index.js +228 -0
  177. package/my_template/node_modules/chalk/index.js.flow +93 -0
  178. package/my_template/node_modules/chalk/license +9 -0
  179. package/my_template/node_modules/chalk/package.json +71 -0
  180. package/my_template/node_modules/chalk/readme.md +314 -0
  181. package/my_template/node_modules/chalk/templates.js +128 -0
  182. package/my_template/node_modules/chalk/types/index.d.ts +97 -0
  183. package/my_template/node_modules/clean-css/History.md +1138 -0
  184. package/my_template/node_modules/clean-css/LICENSE +19 -0
  185. package/my_template/node_modules/clean-css/README.md +369 -0
  186. package/my_template/node_modules/clean-css/bin/cleancss +184 -0
  187. package/my_template/node_modules/clean-css/index.js +1 -0
  188. package/my_template/node_modules/clean-css/lib/clean.js +231 -0
  189. package/my_template/node_modules/clean-css/lib/colors/hex-name-shortener.js +186 -0
  190. package/my_template/node_modules/clean-css/lib/colors/hsl.js +67 -0
  191. package/my_template/node_modules/clean-css/lib/colors/rgb.js +16 -0
  192. package/my_template/node_modules/clean-css/lib/imports/inliner.js +399 -0
  193. package/my_template/node_modules/clean-css/lib/properties/break-up.js +335 -0
  194. package/my_template/node_modules/clean-css/lib/properties/can-override.js +142 -0
  195. package/my_template/node_modules/clean-css/lib/properties/clone.js +26 -0
  196. package/my_template/node_modules/clean-css/lib/properties/compactable.js +285 -0
  197. package/my_template/node_modules/clean-css/lib/properties/every-combination.js +28 -0
  198. package/my_template/node_modules/clean-css/lib/properties/has-inherit.js +10 -0
  199. package/my_template/node_modules/clean-css/lib/properties/invalid-property-error.js +10 -0
  200. package/my_template/node_modules/clean-css/lib/properties/optimizer.js +215 -0
  201. package/my_template/node_modules/clean-css/lib/properties/override-compactor.js +384 -0
  202. package/my_template/node_modules/clean-css/lib/properties/populate-components.js +32 -0
  203. package/my_template/node_modules/clean-css/lib/properties/remove-unused.js +10 -0
  204. package/my_template/node_modules/clean-css/lib/properties/restore-from-optimizing.js +60 -0
  205. package/my_template/node_modules/clean-css/lib/properties/restore.js +232 -0
  206. package/my_template/node_modules/clean-css/lib/properties/shorthand-compactor.js +134 -0
  207. package/my_template/node_modules/clean-css/lib/properties/validator.js +197 -0
  208. package/my_template/node_modules/clean-css/lib/properties/vendor-prefixes.js +26 -0
  209. package/my_template/node_modules/clean-css/lib/properties/wrap-for-optimizing.js +118 -0
  210. package/my_template/node_modules/clean-css/lib/selectors/advanced.js +86 -0
  211. package/my_template/node_modules/clean-css/lib/selectors/clean-up.js +89 -0
  212. package/my_template/node_modules/clean-css/lib/selectors/extractor.js +69 -0
  213. package/my_template/node_modules/clean-css/lib/selectors/is-special.js +5 -0
  214. package/my_template/node_modules/clean-css/lib/selectors/merge-adjacent.js +35 -0
  215. package/my_template/node_modules/clean-css/lib/selectors/merge-media-queries.js +64 -0
  216. package/my_template/node_modules/clean-css/lib/selectors/merge-non-adjacent-by-body.js +61 -0
  217. package/my_template/node_modules/clean-css/lib/selectors/merge-non-adjacent-by-selector.js +76 -0
  218. package/my_template/node_modules/clean-css/lib/selectors/reduce-non-adjacent.js +172 -0
  219. package/my_template/node_modules/clean-css/lib/selectors/remove-duplicate-media-queries.js +21 -0
  220. package/my_template/node_modules/clean-css/lib/selectors/remove-duplicates.js +41 -0
  221. package/my_template/node_modules/clean-css/lib/selectors/reorderable.js +99 -0
  222. package/my_template/node_modules/clean-css/lib/selectors/restructure.js +369 -0
  223. package/my_template/node_modules/clean-css/lib/selectors/simple.js +454 -0
  224. package/my_template/node_modules/clean-css/lib/source-maps/track.js +119 -0
  225. package/my_template/node_modules/clean-css/lib/stringifier/helpers.js +167 -0
  226. package/my_template/node_modules/clean-css/lib/stringifier/one-time.js +50 -0
  227. package/my_template/node_modules/clean-css/lib/stringifier/simple.js +22 -0
  228. package/my_template/node_modules/clean-css/lib/stringifier/source-maps.js +96 -0
  229. package/my_template/node_modules/clean-css/lib/text/comments-processor.js +131 -0
  230. package/my_template/node_modules/clean-css/lib/text/escape-store.js +53 -0
  231. package/my_template/node_modules/clean-css/lib/text/expressions-processor.js +117 -0
  232. package/my_template/node_modules/clean-css/lib/text/free-text-processor.js +98 -0
  233. package/my_template/node_modules/clean-css/lib/text/urls-processor.js +75 -0
  234. package/my_template/node_modules/clean-css/lib/tokenizer/extract-properties.js +193 -0
  235. package/my_template/node_modules/clean-css/lib/tokenizer/extract-selectors.js +17 -0
  236. package/my_template/node_modules/clean-css/lib/tokenizer/tokenize.js +297 -0
  237. package/my_template/node_modules/clean-css/lib/urls/rebase.js +30 -0
  238. package/my_template/node_modules/clean-css/lib/urls/reduce.js +154 -0
  239. package/my_template/node_modules/clean-css/lib/urls/rewrite.js +107 -0
  240. package/my_template/node_modules/clean-css/lib/utils/clone-array.js +12 -0
  241. package/my_template/node_modules/clean-css/lib/utils/compatibility.js +162 -0
  242. package/my_template/node_modules/clean-css/lib/utils/input-source-map-tracker.js +284 -0
  243. package/my_template/node_modules/clean-css/lib/utils/object.js +11 -0
  244. package/my_template/node_modules/clean-css/lib/utils/quote-scanner.js +119 -0
  245. package/my_template/node_modules/clean-css/lib/utils/source-reader.js +96 -0
  246. package/my_template/node_modules/clean-css/lib/utils/source-tracker.js +31 -0
  247. package/my_template/node_modules/clean-css/lib/utils/split.js +62 -0
  248. package/my_template/node_modules/clean-css/node_modules/source-map/README.md +510 -0
  249. package/my_template/node_modules/clean-css/node_modules/source-map/build/assert-shim.js +56 -0
  250. package/my_template/node_modules/clean-css/node_modules/source-map/build/mini-require.js +152 -0
  251. package/my_template/node_modules/clean-css/node_modules/source-map/build/prefix-source-map.jsm +21 -0
  252. package/my_template/node_modules/clean-css/node_modules/source-map/build/prefix-utils.jsm +18 -0
  253. package/my_template/node_modules/clean-css/node_modules/source-map/build/suffix-browser.js +8 -0
  254. package/my_template/node_modules/clean-css/node_modules/source-map/build/suffix-source-map.jsm +6 -0
  255. package/my_template/node_modules/clean-css/node_modules/source-map/build/suffix-utils.jsm +21 -0
  256. package/my_template/node_modules/clean-css/node_modules/source-map/build/test-prefix.js +8 -0
  257. package/my_template/node_modules/clean-css/node_modules/source-map/build/test-suffix.js +3 -0
  258. package/my_template/node_modules/clean-css/node_modules/source-map/lib/source-map/array-set.js +107 -0
  259. package/my_template/node_modules/clean-css/node_modules/source-map/lib/source-map/base64-vlq.js +146 -0
  260. package/my_template/node_modules/clean-css/node_modules/source-map/lib/source-map/base64.js +73 -0
  261. package/my_template/node_modules/clean-css/node_modules/source-map/lib/source-map/binary-search.js +117 -0
  262. package/my_template/node_modules/clean-css/node_modules/source-map/lib/source-map/mapping-list.js +86 -0
  263. package/my_template/node_modules/clean-css/node_modules/source-map/lib/source-map/quick-sort.js +120 -0
  264. package/my_template/node_modules/clean-css/node_modules/source-map/lib/source-map/source-map-consumer.js +1077 -0
  265. package/my_template/node_modules/clean-css/node_modules/source-map/lib/source-map/source-map-generator.js +399 -0
  266. package/my_template/node_modules/clean-css/node_modules/source-map/lib/source-map/source-node.js +414 -0
  267. package/my_template/node_modules/clean-css/node_modules/source-map/lib/source-map/util.js +370 -0
  268. package/my_template/node_modules/clean-css/node_modules/source-map/lib/source-map.js +8 -0
  269. package/my_template/node_modules/clean-css/node_modules/source-map/package.json +68 -0
  270. package/my_template/node_modules/clean-css/package.json +53 -0
  271. package/my_template/node_modules/color-convert/CHANGELOG.md +54 -0
  272. package/my_template/node_modules/color-convert/LICENSE +21 -0
  273. package/my_template/node_modules/color-convert/README.md +68 -0
  274. package/my_template/node_modules/color-convert/conversions.js +868 -0
  275. package/my_template/node_modules/color-convert/index.js +78 -0
  276. package/my_template/node_modules/color-convert/package.json +46 -0
  277. package/my_template/node_modules/color-convert/route.js +97 -0
  278. package/my_template/node_modules/color-name/.eslintrc.json +43 -0
  279. package/my_template/node_modules/color-name/LICENSE +8 -0
  280. package/my_template/node_modules/color-name/README.md +11 -0
  281. package/my_template/node_modules/color-name/index.js +152 -0
  282. package/my_template/node_modules/color-name/package.json +25 -0
  283. package/my_template/node_modules/color-name/test.js +7 -0
  284. package/my_template/node_modules/commander/History.md +256 -0
  285. package/my_template/node_modules/commander/LICENSE +22 -0
  286. package/my_template/node_modules/commander/Readme.md +342 -0
  287. package/my_template/node_modules/commander/index.js +1103 -0
  288. package/my_template/node_modules/commander/package.json +33 -0
  289. package/my_template/node_modules/copy-anything/LICENSE +21 -0
  290. package/my_template/node_modules/copy-anything/README.md +130 -0
  291. package/my_template/node_modules/copy-anything/dist/index.cjs +52 -0
  292. package/my_template/node_modules/copy-anything/dist/index.es.js +48 -0
  293. package/my_template/node_modules/copy-anything/dist/types/index.d.ts +15 -0
  294. package/my_template/node_modules/copy-anything/package.json +98 -0
  295. package/my_template/node_modules/errno/.jshintrc +59 -0
  296. package/my_template/node_modules/errno/.travis.yml +19 -0
  297. package/my_template/node_modules/errno/README.md +145 -0
  298. package/my_template/node_modules/errno/build.js +43 -0
  299. package/my_template/node_modules/errno/cli.js +22 -0
  300. package/my_template/node_modules/errno/custom.js +57 -0
  301. package/my_template/node_modules/errno/errno.js +313 -0
  302. package/my_template/node_modules/errno/package.json +33 -0
  303. package/my_template/node_modules/errno/test.js +88 -0
  304. package/my_template/node_modules/escape-string-regexp/index.js +11 -0
  305. package/my_template/node_modules/escape-string-regexp/license +21 -0
  306. package/my_template/node_modules/escape-string-regexp/package.json +41 -0
  307. package/my_template/node_modules/escape-string-regexp/readme.md +27 -0
  308. package/my_template/node_modules/estree-walker/CHANGELOG.md +55 -0
  309. package/my_template/node_modules/estree-walker/README.md +45 -0
  310. package/my_template/node_modules/estree-walker/dist/estree-walker.umd.js +65 -0
  311. package/my_template/node_modules/estree-walker/dist/estree-walker.umd.js.map +1 -0
  312. package/my_template/node_modules/estree-walker/index.d.ts +27 -0
  313. package/my_template/node_modules/estree-walker/package.json +30 -0
  314. package/my_template/node_modules/estree-walker/src/estree-walker.js +51 -0
  315. package/my_template/node_modules/function-bind/.eslintrc +21 -0
  316. package/my_template/node_modules/function-bind/.github/FUNDING.yml +12 -0
  317. package/my_template/node_modules/function-bind/.github/SECURITY.md +3 -0
  318. package/my_template/node_modules/function-bind/.nycrc +13 -0
  319. package/my_template/node_modules/function-bind/CHANGELOG.md +136 -0
  320. package/my_template/node_modules/function-bind/LICENSE +20 -0
  321. package/my_template/node_modules/function-bind/README.md +46 -0
  322. package/my_template/node_modules/function-bind/implementation.js +84 -0
  323. package/my_template/node_modules/function-bind/index.js +5 -0
  324. package/my_template/node_modules/function-bind/package.json +87 -0
  325. package/my_template/node_modules/function-bind/test/.eslintrc +9 -0
  326. package/my_template/node_modules/function-bind/test/index.js +252 -0
  327. package/my_template/node_modules/graceful-fs/LICENSE +15 -0
  328. package/my_template/node_modules/graceful-fs/README.md +143 -0
  329. package/my_template/node_modules/graceful-fs/clone.js +23 -0
  330. package/my_template/node_modules/graceful-fs/graceful-fs.js +448 -0
  331. package/my_template/node_modules/graceful-fs/legacy-streams.js +118 -0
  332. package/my_template/node_modules/graceful-fs/package.json +53 -0
  333. package/my_template/node_modules/graceful-fs/polyfills.js +355 -0
  334. package/my_template/node_modules/graceful-readlink/.travis.yml +5 -0
  335. package/my_template/node_modules/graceful-readlink/LICENSE +22 -0
  336. package/my_template/node_modules/graceful-readlink/README.md +17 -0
  337. package/my_template/node_modules/graceful-readlink/index.js +12 -0
  338. package/my_template/node_modules/graceful-readlink/package.json +18 -0
  339. package/my_template/node_modules/has-flag/index.js +8 -0
  340. package/my_template/node_modules/has-flag/license +9 -0
  341. package/my_template/node_modules/has-flag/package.json +44 -0
  342. package/my_template/node_modules/has-flag/readme.md +70 -0
  343. package/my_template/node_modules/hasown/.eslintrc +5 -0
  344. package/my_template/node_modules/hasown/.github/FUNDING.yml +12 -0
  345. package/my_template/node_modules/hasown/.nycrc +13 -0
  346. package/my_template/node_modules/hasown/CHANGELOG.md +20 -0
  347. package/my_template/node_modules/hasown/LICENSE +21 -0
  348. package/my_template/node_modules/hasown/README.md +40 -0
  349. package/my_template/node_modules/hasown/index.d.ts +3 -0
  350. package/my_template/node_modules/hasown/index.d.ts.map +1 -0
  351. package/my_template/node_modules/hasown/index.js +8 -0
  352. package/my_template/node_modules/hasown/package.json +91 -0
  353. package/my_template/node_modules/hasown/tsconfig.json +49 -0
  354. package/my_template/node_modules/image-size/LICENSE +9 -0
  355. package/my_template/node_modules/image-size/Readme.md +88 -0
  356. package/my_template/node_modules/image-size/bin/image-size.js +36 -0
  357. package/my_template/node_modules/image-size/lib/detector.js +19 -0
  358. package/my_template/node_modules/image-size/lib/index.js +105 -0
  359. package/my_template/node_modules/image-size/lib/readUInt.js +11 -0
  360. package/my_template/node_modules/image-size/lib/types/bmp.js +17 -0
  361. package/my_template/node_modules/image-size/lib/types/dds.js +18 -0
  362. package/my_template/node_modules/image-size/lib/types/gif.js +19 -0
  363. package/my_template/node_modules/image-size/lib/types/jpg.js +62 -0
  364. package/my_template/node_modules/image-size/lib/types/png.js +36 -0
  365. package/my_template/node_modules/image-size/lib/types/psd.js +17 -0
  366. package/my_template/node_modules/image-size/lib/types/svg.js +78 -0
  367. package/my_template/node_modules/image-size/lib/types/tiff.js +118 -0
  368. package/my_template/node_modules/image-size/lib/types/webp.js +69 -0
  369. package/my_template/node_modules/image-size/lib/types.js +13 -0
  370. package/my_template/node_modules/image-size/package.json +49 -0
  371. package/my_template/node_modules/is-core-module/.eslintrc +18 -0
  372. package/my_template/node_modules/is-core-module/.nycrc +9 -0
  373. package/my_template/node_modules/is-core-module/CHANGELOG.md +180 -0
  374. package/my_template/node_modules/is-core-module/LICENSE +20 -0
  375. package/my_template/node_modules/is-core-module/README.md +40 -0
  376. package/my_template/node_modules/is-core-module/core.json +158 -0
  377. package/my_template/node_modules/is-core-module/index.js +69 -0
  378. package/my_template/node_modules/is-core-module/package.json +73 -0
  379. package/my_template/node_modules/is-core-module/test/index.js +133 -0
  380. package/my_template/node_modules/is-module/README.md +41 -0
  381. package/my_template/node_modules/is-module/component.json +11 -0
  382. package/my_template/node_modules/is-module/index.js +11 -0
  383. package/my_template/node_modules/is-module/package.json +20 -0
  384. package/my_template/node_modules/is-what/.babelrc +3 -0
  385. package/my_template/node_modules/is-what/.eslintignore +9 -0
  386. package/my_template/node_modules/is-what/.eslintrc.js +18 -0
  387. package/my_template/node_modules/is-what/.github/FUNDING.yml +12 -0
  388. package/my_template/node_modules/is-what/.prettierrc +9 -0
  389. package/my_template/node_modules/is-what/.vscode/settings.json +9 -0
  390. package/my_template/node_modules/is-what/LICENSE +21 -0
  391. package/my_template/node_modules/is-what/README.md +191 -0
  392. package/my_template/node_modules/is-what/build.js +60 -0
  393. package/my_template/node_modules/is-what/dist/index.cjs.js +364 -0
  394. package/my_template/node_modules/is-what/dist/index.esm.js +327 -0
  395. package/my_template/node_modules/is-what/package.json +86 -0
  396. package/my_template/node_modules/is-what/src/index.ts +395 -0
  397. package/my_template/node_modules/is-what/test/ava.ts +376 -0
  398. package/my_template/node_modules/is-what/test/index.test.js +15 -0
  399. package/my_template/node_modules/is-what/tsconfig.json +11 -0
  400. package/my_template/node_modules/is-what/types/index.d.ts +253 -0
  401. package/my_template/node_modules/jest-worker/LICENSE +21 -0
  402. package/my_template/node_modules/jest-worker/README.md +215 -0
  403. package/my_template/node_modules/jest-worker/build/Farm.d.ts +27 -0
  404. package/my_template/node_modules/jest-worker/build/Farm.d.ts.map +1 -0
  405. package/my_template/node_modules/jest-worker/build/Farm.js +179 -0
  406. package/my_template/node_modules/jest-worker/build/WorkerPool.d.ts +14 -0
  407. package/my_template/node_modules/jest-worker/build/WorkerPool.d.ts.map +1 -0
  408. package/my_template/node_modules/jest-worker/build/WorkerPool.js +49 -0
  409. package/my_template/node_modules/jest-worker/build/base/BaseWorkerPool.d.ts +22 -0
  410. package/my_template/node_modules/jest-worker/build/base/BaseWorkerPool.d.ts.map +1 -0
  411. package/my_template/node_modules/jest-worker/build/base/BaseWorkerPool.js +134 -0
  412. package/my_template/node_modules/jest-worker/build/index.d.ts +46 -0
  413. package/my_template/node_modules/jest-worker/build/index.d.ts.map +1 -0
  414. package/my_template/node_modules/jest-worker/build/index.js +184 -0
  415. package/my_template/node_modules/jest-worker/build/types.d.ts +98 -0
  416. package/my_template/node_modules/jest-worker/build/types.d.ts.map +1 -0
  417. package/my_template/node_modules/jest-worker/build/types.js +43 -0
  418. package/my_template/node_modules/jest-worker/build/workers/ChildProcessWorker.d.ts +47 -0
  419. package/my_template/node_modules/jest-worker/build/workers/ChildProcessWorker.d.ts.map +1 -0
  420. package/my_template/node_modules/jest-worker/build/workers/ChildProcessWorker.js +310 -0
  421. package/my_template/node_modules/jest-worker/build/workers/NodeThreadsWorker.d.ts +29 -0
  422. package/my_template/node_modules/jest-worker/build/workers/NodeThreadsWorker.d.ts.map +1 -0
  423. package/my_template/node_modules/jest-worker/build/workers/NodeThreadsWorker.js +289 -0
  424. package/my_template/node_modules/jest-worker/build/workers/processChild.d.ts +8 -0
  425. package/my_template/node_modules/jest-worker/build/workers/processChild.d.ts.map +1 -0
  426. package/my_template/node_modules/jest-worker/build/workers/processChild.js +166 -0
  427. package/my_template/node_modules/jest-worker/build/workers/threadChild.d.ts +8 -0
  428. package/my_template/node_modules/jest-worker/build/workers/threadChild.d.ts.map +1 -0
  429. package/my_template/node_modules/jest-worker/build/workers/threadChild.js +176 -0
  430. package/my_template/node_modules/jest-worker/node_modules/supports-color/browser.js +5 -0
  431. package/my_template/node_modules/jest-worker/node_modules/supports-color/index.js +138 -0
  432. package/my_template/node_modules/jest-worker/node_modules/supports-color/license +9 -0
  433. package/my_template/node_modules/jest-worker/node_modules/supports-color/package.json +53 -0
  434. package/my_template/node_modules/jest-worker/node_modules/supports-color/readme.md +85 -0
  435. package/my_template/node_modules/jest-worker/package.json +29 -0
  436. package/my_template/node_modules/js-tokens/CHANGELOG.md +151 -0
  437. package/my_template/node_modules/js-tokens/LICENSE +21 -0
  438. package/my_template/node_modules/js-tokens/README.md +240 -0
  439. package/my_template/node_modules/js-tokens/index.js +23 -0
  440. package/my_template/node_modules/js-tokens/package.json +30 -0
  441. package/my_template/node_modules/less/.eslintignore +5 -0
  442. package/my_template/node_modules/less/.eslintrc.json +3 -0
  443. package/my_template/node_modules/less/Gruntfile.js +420 -0
  444. package/my_template/node_modules/less/README.md +13 -0
  445. package/my_template/node_modules/less/bin/lessc +633 -0
  446. package/my_template/node_modules/less/bower.json +22 -0
  447. package/my_template/node_modules/less/dist/less.js +11275 -0
  448. package/my_template/node_modules/less/dist/less.min.js +11 -0
  449. package/my_template/node_modules/less/dist/less.min.js.map +1 -0
  450. package/my_template/node_modules/less/index.js +1 -0
  451. package/my_template/node_modules/less/lib/less/constants.js +15 -0
  452. package/my_template/node_modules/less/lib/less/constants.js.map +1 -0
  453. package/my_template/node_modules/less/lib/less/contexts.js +171 -0
  454. package/my_template/node_modules/less/lib/less/contexts.js.map +1 -0
  455. package/my_template/node_modules/less/lib/less/data/colors.js +153 -0
  456. package/my_template/node_modules/less/lib/less/data/colors.js.map +1 -0
  457. package/my_template/node_modules/less/lib/less/data/index.js +9 -0
  458. package/my_template/node_modules/less/lib/less/data/index.js.map +1 -0
  459. package/my_template/node_modules/less/lib/less/data/unit-conversions.js +24 -0
  460. package/my_template/node_modules/less/lib/less/data/unit-conversions.js.map +1 -0
  461. package/my_template/node_modules/less/lib/less/default-options.js +57 -0
  462. package/my_template/node_modules/less/lib/less/default-options.js.map +1 -0
  463. package/my_template/node_modules/less/lib/less/environment/abstract-file-manager.js +122 -0
  464. package/my_template/node_modules/less/lib/less/environment/abstract-file-manager.js.map +1 -0
  465. package/my_template/node_modules/less/lib/less/environment/abstract-plugin-loader.js +168 -0
  466. package/my_template/node_modules/less/lib/less/environment/abstract-plugin-loader.js.map +1 -0
  467. package/my_template/node_modules/less/lib/less/environment/environment-api.js +28 -0
  468. package/my_template/node_modules/less/lib/less/environment/environment-api.js.map +1 -0
  469. package/my_template/node_modules/less/lib/less/environment/environment.js +57 -0
  470. package/my_template/node_modules/less/lib/less/environment/environment.js.map +1 -0
  471. package/my_template/node_modules/less/lib/less/environment/file-manager-api.js +106 -0
  472. package/my_template/node_modules/less/lib/less/environment/file-manager-api.js.map +1 -0
  473. package/my_template/node_modules/less/lib/less/functions/boolean.js +21 -0
  474. package/my_template/node_modules/less/lib/less/functions/boolean.js.map +1 -0
  475. package/my_template/node_modules/less/lib/less/functions/color-blending.js +78 -0
  476. package/my_template/node_modules/less/lib/less/functions/color-blending.js.map +1 -0
  477. package/my_template/node_modules/less/lib/less/functions/color.js +404 -0
  478. package/my_template/node_modules/less/lib/less/functions/color.js.map +1 -0
  479. package/my_template/node_modules/less/lib/less/functions/data-uri.js +86 -0
  480. package/my_template/node_modules/less/lib/less/functions/data-uri.js.map +1 -0
  481. package/my_template/node_modules/less/lib/less/functions/default.js +29 -0
  482. package/my_template/node_modules/less/lib/less/functions/default.js.map +1 -0
  483. package/my_template/node_modules/less/lib/less/functions/function-caller.js +66 -0
  484. package/my_template/node_modules/less/lib/less/functions/function-caller.js.map +1 -0
  485. package/my_template/node_modules/less/lib/less/functions/function-registry.js +36 -0
  486. package/my_template/node_modules/less/lib/less/functions/function-registry.js.map +1 -0
  487. package/my_template/node_modules/less/lib/less/functions/index.js +35 -0
  488. package/my_template/node_modules/less/lib/less/functions/index.js.map +1 -0
  489. package/my_template/node_modules/less/lib/less/functions/list.js +136 -0
  490. package/my_template/node_modules/less/lib/less/functions/list.js.map +1 -0
  491. package/my_template/node_modules/less/lib/less/functions/math-helper.js +20 -0
  492. package/my_template/node_modules/less/lib/less/functions/math-helper.js.map +1 -0
  493. package/my_template/node_modules/less/lib/less/functions/math.js +30 -0
  494. package/my_template/node_modules/less/lib/less/functions/math.js.map +1 -0
  495. package/my_template/node_modules/less/lib/less/functions/number.js +98 -0
  496. package/my_template/node_modules/less/lib/less/functions/number.js.map +1 -0
  497. package/my_template/node_modules/less/lib/less/functions/string.js +42 -0
  498. package/my_template/node_modules/less/lib/less/functions/string.js.map +1 -0
  499. package/my_template/node_modules/less/lib/less/functions/svg.js +88 -0
  500. package/my_template/node_modules/less/lib/less/functions/svg.js.map +1 -0
  501. package/my_template/node_modules/less/lib/less/functions/types.js +75 -0
  502. package/my_template/node_modules/less/lib/less/functions/types.js.map +1 -0
  503. package/my_template/node_modules/less/lib/less/import-manager.js +196 -0
  504. package/my_template/node_modules/less/lib/less/import-manager.js.map +1 -0
  505. package/my_template/node_modules/less/lib/less/index.js +130 -0
  506. package/my_template/node_modules/less/lib/less/index.js.map +1 -0
  507. package/my_template/node_modules/less/lib/less/less-error.js +162 -0
  508. package/my_template/node_modules/less/lib/less/less-error.js.map +1 -0
  509. package/my_template/node_modules/less/lib/less/logger.js +37 -0
  510. package/my_template/node_modules/less/lib/less/logger.js.map +1 -0
  511. package/my_template/node_modules/less/lib/less/parse-tree.js +69 -0
  512. package/my_template/node_modules/less/lib/less/parse-tree.js.map +1 -0
  513. package/my_template/node_modules/less/lib/less/parse.js +108 -0
  514. package/my_template/node_modules/less/lib/less/parse.js.map +1 -0
  515. package/my_template/node_modules/less/lib/less/parser/chunker.js +147 -0
  516. package/my_template/node_modules/less/lib/less/parser/chunker.js.map +1 -0
  517. package/my_template/node_modules/less/lib/less/parser/parser-input.js +355 -0
  518. package/my_template/node_modules/less/lib/less/parser/parser-input.js.map +1 -0
  519. package/my_template/node_modules/less/lib/less/parser/parser.js +2262 -0
  520. package/my_template/node_modules/less/lib/less/parser/parser.js.map +1 -0
  521. package/my_template/node_modules/less/lib/less/plugin-manager.js +158 -0
  522. package/my_template/node_modules/less/lib/less/plugin-manager.js.map +1 -0
  523. package/my_template/node_modules/less/lib/less/render.js +64 -0
  524. package/my_template/node_modules/less/lib/less/render.js.map +1 -0
  525. package/my_template/node_modules/less/lib/less/source-map-builder.js +72 -0
  526. package/my_template/node_modules/less/lib/less/source-map-builder.js.map +1 -0
  527. package/my_template/node_modules/less/lib/less/source-map-output.js +140 -0
  528. package/my_template/node_modules/less/lib/less/source-map-output.js.map +1 -0
  529. package/my_template/node_modules/less/lib/less/transform-tree.js +93 -0
  530. package/my_template/node_modules/less/lib/less/transform-tree.js.map +1 -0
  531. package/my_template/node_modules/less/lib/less/tree/anonymous.js +34 -0
  532. package/my_template/node_modules/less/lib/less/tree/anonymous.js.map +1 -0
  533. package/my_template/node_modules/less/lib/less/tree/assignment.js +32 -0
  534. package/my_template/node_modules/less/lib/less/tree/assignment.js.map +1 -0
  535. package/my_template/node_modules/less/lib/less/tree/atrule.js +146 -0
  536. package/my_template/node_modules/less/lib/less/tree/atrule.js.map +1 -0
  537. package/my_template/node_modules/less/lib/less/tree/attribute.js +29 -0
  538. package/my_template/node_modules/less/lib/less/tree/attribute.js.map +1 -0
  539. package/my_template/node_modules/less/lib/less/tree/call.js +104 -0
  540. package/my_template/node_modules/less/lib/less/tree/call.js.map +1 -0
  541. package/my_template/node_modules/less/lib/less/tree/color.js +243 -0
  542. package/my_template/node_modules/less/lib/less/tree/color.js.map +1 -0
  543. package/my_template/node_modules/less/lib/less/tree/combinator.js +29 -0
  544. package/my_template/node_modules/less/lib/less/tree/combinator.js.map +1 -0
  545. package/my_template/node_modules/less/lib/less/tree/comment.js +28 -0
  546. package/my_template/node_modules/less/lib/less/tree/comment.js.map +1 -0
  547. package/my_template/node_modules/less/lib/less/tree/condition.js +41 -0
  548. package/my_template/node_modules/less/lib/less/tree/condition.js.map +1 -0
  549. package/my_template/node_modules/less/lib/less/tree/debug-info.js +37 -0
  550. package/my_template/node_modules/less/lib/less/tree/debug-info.js.map +1 -0
  551. package/my_template/node_modules/less/lib/less/tree/declaration.js +118 -0
  552. package/my_template/node_modules/less/lib/less/tree/declaration.js.map +1 -0
  553. package/my_template/node_modules/less/lib/less/tree/detached-ruleset.js +47 -0
  554. package/my_template/node_modules/less/lib/less/tree/detached-ruleset.js.map +1 -0
  555. package/my_template/node_modules/less/lib/less/tree/dimension.js +159 -0
  556. package/my_template/node_modules/less/lib/less/tree/dimension.js.map +1 -0
  557. package/my_template/node_modules/less/lib/less/tree/element.js +64 -0
  558. package/my_template/node_modules/less/lib/less/tree/element.js.map +1 -0
  559. package/my_template/node_modules/less/lib/less/tree/expression.js +90 -0
  560. package/my_template/node_modules/less/lib/less/tree/expression.js.map +1 -0
  561. package/my_template/node_modules/less/lib/less/tree/extend.js +62 -0
  562. package/my_template/node_modules/less/lib/less/tree/extend.js.map +1 -0
  563. package/my_template/node_modules/less/lib/less/tree/import.js +191 -0
  564. package/my_template/node_modules/less/lib/less/tree/import.js.map +1 -0
  565. package/my_template/node_modules/less/lib/less/tree/index.js +56 -0
  566. package/my_template/node_modules/less/lib/less/tree/index.js.map +1 -0
  567. package/my_template/node_modules/less/lib/less/tree/javascript.js +35 -0
  568. package/my_template/node_modules/less/lib/less/tree/javascript.js.map +1 -0
  569. package/my_template/node_modules/less/lib/less/tree/js-eval-node.js +57 -0
  570. package/my_template/node_modules/less/lib/less/tree/js-eval-node.js.map +1 -0
  571. package/my_template/node_modules/less/lib/less/tree/keyword.js +21 -0
  572. package/my_template/node_modules/less/lib/less/tree/keyword.js.map +1 -0
  573. package/my_template/node_modules/less/lib/less/tree/media.js +152 -0
  574. package/my_template/node_modules/less/lib/less/tree/media.js.map +1 -0
  575. package/my_template/node_modules/less/lib/less/tree/mixin-call.js +194 -0
  576. package/my_template/node_modules/less/lib/less/tree/mixin-call.js.map +1 -0
  577. package/my_template/node_modules/less/lib/less/tree/mixin-definition.js +233 -0
  578. package/my_template/node_modules/less/lib/less/tree/mixin-definition.js.map +1 -0
  579. package/my_template/node_modules/less/lib/less/tree/namespace-value.js +76 -0
  580. package/my_template/node_modules/less/lib/less/tree/namespace-value.js.map +1 -0
  581. package/my_template/node_modules/less/lib/less/tree/negative.js +25 -0
  582. package/my_template/node_modules/less/lib/less/tree/negative.js.map +1 -0
  583. package/my_template/node_modules/less/lib/less/tree/node.js +166 -0
  584. package/my_template/node_modules/less/lib/less/tree/node.js.map +1 -0
  585. package/my_template/node_modules/less/lib/less/tree/operation.js +77 -0
  586. package/my_template/node_modules/less/lib/less/tree/operation.js.map +1 -0
  587. package/my_template/node_modules/less/lib/less/tree/paren.js +21 -0
  588. package/my_template/node_modules/less/lib/less/tree/paren.js.map +1 -0
  589. package/my_template/node_modules/less/lib/less/tree/property.js +62 -0
  590. package/my_template/node_modules/less/lib/less/tree/property.js.map +1 -0
  591. package/my_template/node_modules/less/lib/less/tree/quoted.js +66 -0
  592. package/my_template/node_modules/less/lib/less/tree/quoted.js.map +1 -0
  593. package/my_template/node_modules/less/lib/less/tree/ruleset.js +786 -0
  594. package/my_template/node_modules/less/lib/less/tree/ruleset.js.map +1 -0
  595. package/my_template/node_modules/less/lib/less/tree/selector.js +126 -0
  596. package/my_template/node_modules/less/lib/less/tree/selector.js.map +1 -0
  597. package/my_template/node_modules/less/lib/less/tree/unicode-descriptor.js +13 -0
  598. package/my_template/node_modules/less/lib/less/tree/unicode-descriptor.js.map +1 -0
  599. package/my_template/node_modules/less/lib/less/tree/unit.js +141 -0
  600. package/my_template/node_modules/less/lib/less/tree/unit.js.map +1 -0
  601. package/my_template/node_modules/less/lib/less/tree/url.js +60 -0
  602. package/my_template/node_modules/less/lib/less/tree/url.js.map +1 -0
  603. package/my_template/node_modules/less/lib/less/tree/value.js +43 -0
  604. package/my_template/node_modules/less/lib/less/tree/value.js.map +1 -0
  605. package/my_template/node_modules/less/lib/less/tree/variable-call.js +44 -0
  606. package/my_template/node_modules/less/lib/less/tree/variable-call.js.map +1 -0
  607. package/my_template/node_modules/less/lib/less/tree/variable.js +61 -0
  608. package/my_template/node_modules/less/lib/less/tree/variable.js.map +1 -0
  609. package/my_template/node_modules/less/lib/less/utils.js +143 -0
  610. package/my_template/node_modules/less/lib/less/utils.js.map +1 -0
  611. package/my_template/node_modules/less/lib/less/visitors/extend-visitor.js +462 -0
  612. package/my_template/node_modules/less/lib/less/visitors/extend-visitor.js.map +1 -0
  613. package/my_template/node_modules/less/lib/less/visitors/import-sequencer.js +61 -0
  614. package/my_template/node_modules/less/lib/less/visitors/import-sequencer.js.map +1 -0
  615. package/my_template/node_modules/less/lib/less/visitors/import-visitor.js +202 -0
  616. package/my_template/node_modules/less/lib/less/visitors/import-visitor.js.map +1 -0
  617. package/my_template/node_modules/less/lib/less/visitors/index.js +20 -0
  618. package/my_template/node_modules/less/lib/less/visitors/index.js.map +1 -0
  619. package/my_template/node_modules/less/lib/less/visitors/join-selector-visitor.js +57 -0
  620. package/my_template/node_modules/less/lib/less/visitors/join-selector-visitor.js.map +1 -0
  621. package/my_template/node_modules/less/lib/less/visitors/set-tree-visibility-visitor.js +43 -0
  622. package/my_template/node_modules/less/lib/less/visitors/set-tree-visibility-visitor.js.map +1 -0
  623. package/my_template/node_modules/less/lib/less/visitors/to-css-visitor.js +321 -0
  624. package/my_template/node_modules/less/lib/less/visitors/to-css-visitor.js.map +1 -0
  625. package/my_template/node_modules/less/lib/less/visitors/visitor.js +158 -0
  626. package/my_template/node_modules/less/lib/less/visitors/visitor.js.map +1 -0
  627. package/my_template/node_modules/less/lib/less-browser/add-default-options.js +45 -0
  628. package/my_template/node_modules/less/lib/less-browser/add-default-options.js.map +1 -0
  629. package/my_template/node_modules/less/lib/less-browser/bootstrap.js +64 -0
  630. package/my_template/node_modules/less/lib/less-browser/bootstrap.js.map +1 -0
  631. package/my_template/node_modules/less/lib/less-browser/browser.js +80 -0
  632. package/my_template/node_modules/less/lib/less-browser/browser.js.map +1 -0
  633. package/my_template/node_modules/less/lib/less-browser/cache.js +45 -0
  634. package/my_template/node_modules/less/lib/less-browser/cache.js.map +1 -0
  635. package/my_template/node_modules/less/lib/less-browser/error-reporting.js +183 -0
  636. package/my_template/node_modules/less/lib/less-browser/error-reporting.js.map +1 -0
  637. package/my_template/node_modules/less/lib/less-browser/file-manager.js +122 -0
  638. package/my_template/node_modules/less/lib/less-browser/file-manager.js.map +1 -0
  639. package/my_template/node_modules/less/lib/less-browser/image-size.js +30 -0
  640. package/my_template/node_modules/less/lib/less-browser/image-size.js.map +1 -0
  641. package/my_template/node_modules/less/lib/less-browser/index.js +256 -0
  642. package/my_template/node_modules/less/lib/less-browser/index.js.map +1 -0
  643. package/my_template/node_modules/less/lib/less-browser/log-listener.js +43 -0
  644. package/my_template/node_modules/less/lib/less-browser/log-listener.js.map +1 -0
  645. package/my_template/node_modules/less/lib/less-browser/plugin-loader.js +42 -0
  646. package/my_template/node_modules/less/lib/less-browser/plugin-loader.js.map +1 -0
  647. package/my_template/node_modules/less/lib/less-browser/utils.js +29 -0
  648. package/my_template/node_modules/less/lib/less-browser/utils.js.map +1 -0
  649. package/my_template/node_modules/less/lib/less-node/environment.js +19 -0
  650. package/my_template/node_modules/less/lib/less-node/environment.js.map +1 -0
  651. package/my_template/node_modules/less/lib/less-node/file-manager.js +158 -0
  652. package/my_template/node_modules/less/lib/less-node/file-manager.js.map +1 -0
  653. package/my_template/node_modules/less/lib/less-node/fs.js +11 -0
  654. package/my_template/node_modules/less/lib/less-node/fs.js.map +1 -0
  655. package/my_template/node_modules/less/lib/less-node/image-size.js +54 -0
  656. package/my_template/node_modules/less/lib/less-node/image-size.js.map +1 -0
  657. package/my_template/node_modules/less/lib/less-node/index.js +28 -0
  658. package/my_template/node_modules/less/lib/less-node/index.js.map +1 -0
  659. package/my_template/node_modules/less/lib/less-node/lessc-helper.js +92 -0
  660. package/my_template/node_modules/less/lib/less-node/lessc-helper.js.map +1 -0
  661. package/my_template/node_modules/less/lib/less-node/plugin-loader.js +73 -0
  662. package/my_template/node_modules/less/lib/less-node/plugin-loader.js.map +1 -0
  663. package/my_template/node_modules/less/lib/less-node/url-file-manager.js +68 -0
  664. package/my_template/node_modules/less/lib/less-node/url-file-manager.js.map +1 -0
  665. package/my_template/node_modules/less/package.json +133 -0
  666. package/my_template/node_modules/less/test/.eslintrc.json +9 -0
  667. package/my_template/node_modules/less/test/README.md +3 -0
  668. package/my_template/node_modules/less/test/browser/common.js +230 -0
  669. package/my_template/node_modules/less/test/browser/css/global-vars/simple.css +3 -0
  670. package/my_template/node_modules/less/test/browser/css/modify-vars/simple.css +8 -0
  671. package/my_template/node_modules/less/test/browser/css/plugin/plugin.css +3 -0
  672. package/my_template/node_modules/less/test/browser/css/postProcessor/postProcessor.css +4 -0
  673. package/my_template/node_modules/less/test/browser/css/relative-urls/urls.css +36 -0
  674. package/my_template/node_modules/less/test/browser/css/rewrite-urls/urls.css +36 -0
  675. package/my_template/node_modules/less/test/browser/css/rootpath/urls.css +35 -0
  676. package/my_template/node_modules/less/test/browser/css/rootpath-relative/urls.css +35 -0
  677. package/my_template/node_modules/less/test/browser/css/rootpath-rewrite-urls/urls.css +35 -0
  678. package/my_template/node_modules/less/test/browser/css/urls.css +54 -0
  679. package/my_template/node_modules/less/test/browser/generator/benchmark.config.js +50 -0
  680. package/my_template/node_modules/less/test/browser/generator/generate.js +78 -0
  681. package/my_template/node_modules/less/test/browser/generator/runner.config.js +186 -0
  682. package/my_template/node_modules/less/test/browser/generator/runner.js +2 -0
  683. package/my_template/node_modules/less/test/browser/generator/template.js +83 -0
  684. package/my_template/node_modules/less/test/browser/less/console-errors/test-error.less +3 -0
  685. package/my_template/node_modules/less/test/browser/less/console-errors/test-error.txt +2 -0
  686. package/my_template/node_modules/less/test/browser/less/errors/image-height-error.less +3 -0
  687. package/my_template/node_modules/less/test/browser/less/errors/image-height-error.txt +4 -0
  688. package/my_template/node_modules/less/test/browser/less/errors/image-size-error.less +3 -0
  689. package/my_template/node_modules/less/test/browser/less/errors/image-size-error.txt +4 -0
  690. package/my_template/node_modules/less/test/browser/less/errors/image-width-error.less +3 -0
  691. package/my_template/node_modules/less/test/browser/less/errors/image-width-error.txt +4 -0
  692. package/my_template/node_modules/less/test/browser/less/global-vars/simple.less +3 -0
  693. package/my_template/node_modules/less/test/browser/less/imports/urls.less +4 -0
  694. package/my_template/node_modules/less/test/browser/less/imports/urls2.less +4 -0
  695. package/my_template/node_modules/less/test/browser/less/modify-vars/imports/simple2.less +4 -0
  696. package/my_template/node_modules/less/test/browser/less/modify-vars/simple.less +8 -0
  697. package/my_template/node_modules/less/test/browser/less/nested-gradient-with-svg-gradient/mixin-consumer.less +5 -0
  698. package/my_template/node_modules/less/test/browser/less/nested-gradient-with-svg-gradient/svg-gradient-mixin.less +15 -0
  699. package/my_template/node_modules/less/test/browser/less/plugin/plugin.js +4 -0
  700. package/my_template/node_modules/less/test/browser/less/plugin/plugin.less +4 -0
  701. package/my_template/node_modules/less/test/browser/less/postProcessor/postProcessor.less +4 -0
  702. package/my_template/node_modules/less/test/browser/less/relative-urls/urls.less +34 -0
  703. package/my_template/node_modules/less/test/browser/less/rewrite-urls/urls.less +34 -0
  704. package/my_template/node_modules/less/test/browser/less/rootpath/urls.less +33 -0
  705. package/my_template/node_modules/less/test/browser/less/rootpath-relative/urls.less +33 -0
  706. package/my_template/node_modules/less/test/browser/less/rootpath-rewrite-urls/urls.less +33 -0
  707. package/my_template/node_modules/less/test/browser/less/urls.less +62 -0
  708. package/my_template/node_modules/less/test/browser/runner-VisitorPlugin-options.js +3 -0
  709. package/my_template/node_modules/less/test/browser/runner-VisitorPlugin.js +3 -0
  710. package/my_template/node_modules/less/test/browser/runner-browser-options.js +51 -0
  711. package/my_template/node_modules/less/test/browser/runner-browser-spec.js +12 -0
  712. package/my_template/node_modules/less/test/browser/runner-console-errors.js +5 -0
  713. package/my_template/node_modules/less/test/browser/runner-errors-options.js +6 -0
  714. package/my_template/node_modules/less/test/browser/runner-errors-spec.js +3 -0
  715. package/my_template/node_modules/less/test/browser/runner-filemanagerPlugin-options.js +5 -0
  716. package/my_template/node_modules/less/test/browser/runner-filemanagerPlugin.js +3 -0
  717. package/my_template/node_modules/less/test/browser/runner-global-vars-options.js +7 -0
  718. package/my_template/node_modules/less/test/browser/runner-global-vars-spec.js +3 -0
  719. package/my_template/node_modules/less/test/browser/runner-legacy-options.js +6 -0
  720. package/my_template/node_modules/less/test/browser/runner-legacy-spec.js +3 -0
  721. package/my_template/node_modules/less/test/browser/runner-main-options.js +17 -0
  722. package/my_template/node_modules/less/test/browser/runner-main-spec.js +7 -0
  723. package/my_template/node_modules/less/test/browser/runner-modify-vars-options.js +5 -0
  724. package/my_template/node_modules/less/test/browser/runner-modify-vars-spec.js +33 -0
  725. package/my_template/node_modules/less/test/browser/runner-no-js-errors-options.js +4 -0
  726. package/my_template/node_modules/less/test/browser/runner-no-js-errors-spec.js +3 -0
  727. package/my_template/node_modules/less/test/browser/runner-postProcessorPlugin-options.js +3 -0
  728. package/my_template/node_modules/less/test/browser/runner-postProcessorPlugin.js +3 -0
  729. package/my_template/node_modules/less/test/browser/runner-preProcessorPlugin-options.js +3 -0
  730. package/my_template/node_modules/less/test/browser/runner-preProcessorPlugin.js +3 -0
  731. package/my_template/node_modules/less/test/browser/runner-production-options.js +3 -0
  732. package/my_template/node_modules/less/test/browser/runner-production-spec.js +5 -0
  733. package/my_template/node_modules/less/test/browser/runner-relative-urls-options.js +3 -0
  734. package/my_template/node_modules/less/test/browser/runner-relative-urls-spec.js +3 -0
  735. package/my_template/node_modules/less/test/browser/runner-rewrite-urls-options.js +3 -0
  736. package/my_template/node_modules/less/test/browser/runner-rewrite-urls-spec.js +3 -0
  737. package/my_template/node_modules/less/test/browser/runner-rootpath-options.js +3 -0
  738. package/my_template/node_modules/less/test/browser/runner-rootpath-relative-options.js +4 -0
  739. package/my_template/node_modules/less/test/browser/runner-rootpath-relative-spec.js +3 -0
  740. package/my_template/node_modules/less/test/browser/runner-rootpath-rewrite-urls-options.js +4 -0
  741. package/my_template/node_modules/less/test/browser/runner-rootpath-rewrite-urls-spec.js +3 -0
  742. package/my_template/node_modules/less/test/browser/runner-rootpath-spec.js +3 -0
  743. package/my_template/node_modules/less/test/browser/runner-strict-units-options.js +5 -0
  744. package/my_template/node_modules/less/test/browser/runner-strict-units-spec.js +3 -0
  745. package/my_template/node_modules/less/test/index.js +89 -0
  746. package/my_template/node_modules/less/test/less-test.js +535 -0
  747. package/my_template/node_modules/less/test/modify-vars.js +28 -0
  748. package/my_template/node_modules/less/test/plugins/filemanager/index.js +19 -0
  749. package/my_template/node_modules/less/test/plugins/postprocess/index.js +14 -0
  750. package/my_template/node_modules/less/test/plugins/preprocess/index.js +19 -0
  751. package/my_template/node_modules/less/test/plugins/visitor/index.js +24 -0
  752. package/my_template/node_modules/less/test/sourcemaps/basic.json +1 -0
  753. package/my_template/node_modules/less/test/sourcemaps/custom-props.json +1 -0
  754. package/my_template/node_modules/less/test/sourcemaps/index.html +17 -0
  755. package/my_template/node_modules/less/test/sourcemaps-disable-annotation/basic.json +1 -0
  756. package/my_template/node_modules/less/test/test-es6.ts +17 -0
  757. package/my_template/node_modules/less/tsconfig.json +13 -0
  758. package/my_template/node_modules/less-plugin-clean-css/LICENSE +201 -0
  759. package/my_template/node_modules/less-plugin-clean-css/README.md +33 -0
  760. package/my_template/node_modules/less-plugin-clean-css/lib/clean-css-processor.js +63 -0
  761. package/my_template/node_modules/less-plugin-clean-css/lib/index.js +23 -0
  762. package/my_template/node_modules/less-plugin-clean-css/lib/parse-options.js +61 -0
  763. package/my_template/node_modules/less-plugin-clean-css/lib/usage.js +19 -0
  764. package/my_template/node_modules/less-plugin-clean-css/package.json +39 -0
  765. package/my_template/node_modules/make-dir/index.d.ts +39 -0
  766. package/my_template/node_modules/make-dir/index.js +139 -0
  767. package/my_template/node_modules/make-dir/license +9 -0
  768. package/my_template/node_modules/make-dir/package.json +59 -0
  769. package/my_template/node_modules/make-dir/readme.md +123 -0
  770. package/my_template/node_modules/merge-stream/LICENSE +21 -0
  771. package/my_template/node_modules/merge-stream/README.md +78 -0
  772. package/my_template/node_modules/merge-stream/index.js +41 -0
  773. package/my_template/node_modules/merge-stream/package.json +19 -0
  774. package/my_template/node_modules/mime/CHANGELOG.md +164 -0
  775. package/my_template/node_modules/mime/LICENSE +21 -0
  776. package/my_template/node_modules/mime/README.md +90 -0
  777. package/my_template/node_modules/mime/cli.js +8 -0
  778. package/my_template/node_modules/mime/mime.js +108 -0
  779. package/my_template/node_modules/mime/package.json +44 -0
  780. package/my_template/node_modules/mime/src/build.js +53 -0
  781. package/my_template/node_modules/mime/src/test.js +60 -0
  782. package/my_template/node_modules/mime/types.json +1 -0
  783. package/my_template/node_modules/native-request/README.md +184 -0
  784. package/my_template/node_modules/native-request/commons/jsonToParameter.js +14 -0
  785. package/my_template/node_modules/native-request/index.js +65 -0
  786. package/my_template/node_modules/native-request/lib/Request.js +144 -0
  787. package/my_template/node_modules/native-request/package.json +45 -0
  788. package/my_template/node_modules/native-request/test/express.get.cookies.js +58 -0
  789. package/my_template/node_modules/native-request/test/express.get.js +146 -0
  790. package/my_template/node_modules/native-request/test/express.post.cookies.js +59 -0
  791. package/my_template/node_modules/native-request/test/express.post.js +148 -0
  792. package/my_template/node_modules/native-request/test/get.cookies.js +72 -0
  793. package/my_template/node_modules/native-request/test/get.js +140 -0
  794. package/my_template/node_modules/native-request/test/post.cookies.js +72 -0
  795. package/my_template/node_modules/native-request/test/post.js +155 -0
  796. package/my_template/node_modules/path-parse/LICENSE +21 -0
  797. package/my_template/node_modules/path-parse/README.md +42 -0
  798. package/my_template/node_modules/path-parse/index.js +75 -0
  799. package/my_template/node_modules/path-parse/package.json +33 -0
  800. package/my_template/node_modules/pify/index.js +68 -0
  801. package/my_template/node_modules/pify/license +9 -0
  802. package/my_template/node_modules/pify/package.json +51 -0
  803. package/my_template/node_modules/pify/readme.md +145 -0
  804. package/my_template/node_modules/prr/.jshintrc +61 -0
  805. package/my_template/node_modules/prr/.travis.yml +10 -0
  806. package/my_template/node_modules/prr/LICENSE.md +11 -0
  807. package/my_template/node_modules/prr/README.md +47 -0
  808. package/my_template/node_modules/prr/package.json +26 -0
  809. package/my_template/node_modules/prr/prr.js +63 -0
  810. package/my_template/node_modules/prr/test.js +169 -0
  811. package/my_template/node_modules/resolve/.editorconfig +37 -0
  812. package/my_template/node_modules/resolve/.eslintrc +65 -0
  813. package/my_template/node_modules/resolve/.github/FUNDING.yml +12 -0
  814. package/my_template/node_modules/resolve/LICENSE +21 -0
  815. package/my_template/node_modules/resolve/SECURITY.md +3 -0
  816. package/my_template/node_modules/resolve/async.js +3 -0
  817. package/my_template/node_modules/resolve/bin/resolve +50 -0
  818. package/my_template/node_modules/resolve/example/async.js +5 -0
  819. package/my_template/node_modules/resolve/example/sync.js +3 -0
  820. package/my_template/node_modules/resolve/index.js +6 -0
  821. package/my_template/node_modules/resolve/lib/async.js +329 -0
  822. package/my_template/node_modules/resolve/lib/caller.js +8 -0
  823. package/my_template/node_modules/resolve/lib/core.js +12 -0
  824. package/my_template/node_modules/resolve/lib/core.json +158 -0
  825. package/my_template/node_modules/resolve/lib/homedir.js +24 -0
  826. package/my_template/node_modules/resolve/lib/is-core.js +5 -0
  827. package/my_template/node_modules/resolve/lib/node-modules-paths.js +42 -0
  828. package/my_template/node_modules/resolve/lib/normalize-options.js +10 -0
  829. package/my_template/node_modules/resolve/lib/sync.js +208 -0
  830. package/my_template/node_modules/resolve/package.json +72 -0
  831. package/my_template/node_modules/resolve/readme.markdown +301 -0
  832. package/my_template/node_modules/resolve/sync.js +3 -0
  833. package/my_template/node_modules/resolve/test/core.js +88 -0
  834. package/my_template/node_modules/resolve/test/dotdot/abc/index.js +2 -0
  835. package/my_template/node_modules/resolve/test/dotdot/index.js +1 -0
  836. package/my_template/node_modules/resolve/test/dotdot.js +29 -0
  837. package/my_template/node_modules/resolve/test/faulty_basedir.js +29 -0
  838. package/my_template/node_modules/resolve/test/filter.js +34 -0
  839. package/my_template/node_modules/resolve/test/filter_sync.js +33 -0
  840. package/my_template/node_modules/resolve/test/home_paths.js +127 -0
  841. package/my_template/node_modules/resolve/test/home_paths_sync.js +114 -0
  842. package/my_template/node_modules/resolve/test/mock.js +315 -0
  843. package/my_template/node_modules/resolve/test/mock_sync.js +214 -0
  844. package/my_template/node_modules/resolve/test/module_dir/xmodules/aaa/index.js +1 -0
  845. package/my_template/node_modules/resolve/test/module_dir/ymodules/aaa/index.js +1 -0
  846. package/my_template/node_modules/resolve/test/module_dir/zmodules/bbb/main.js +1 -0
  847. package/my_template/node_modules/resolve/test/module_dir/zmodules/bbb/package.json +3 -0
  848. package/my_template/node_modules/resolve/test/module_dir.js +56 -0
  849. package/my_template/node_modules/resolve/test/node-modules-paths.js +143 -0
  850. package/my_template/node_modules/resolve/test/node_path/x/aaa/index.js +1 -0
  851. package/my_template/node_modules/resolve/test/node_path/x/ccc/index.js +1 -0
  852. package/my_template/node_modules/resolve/test/node_path/y/bbb/index.js +1 -0
  853. package/my_template/node_modules/resolve/test/node_path/y/ccc/index.js +1 -0
  854. package/my_template/node_modules/resolve/test/node_path.js +70 -0
  855. package/my_template/node_modules/resolve/test/nonstring.js +9 -0
  856. package/my_template/node_modules/resolve/test/pathfilter/deep_ref/main.js +0 -0
  857. package/my_template/node_modules/resolve/test/pathfilter.js +75 -0
  858. package/my_template/node_modules/resolve/test/precedence/aaa/index.js +1 -0
  859. package/my_template/node_modules/resolve/test/precedence/aaa/main.js +1 -0
  860. package/my_template/node_modules/resolve/test/precedence/aaa.js +1 -0
  861. package/my_template/node_modules/resolve/test/precedence/bbb/main.js +1 -0
  862. package/my_template/node_modules/resolve/test/precedence/bbb.js +1 -0
  863. package/my_template/node_modules/resolve/test/precedence.js +23 -0
  864. package/my_template/node_modules/resolve/test/resolver/baz/doom.js +0 -0
  865. package/my_template/node_modules/resolve/test/resolver/baz/package.json +4 -0
  866. package/my_template/node_modules/resolve/test/resolver/baz/quux.js +1 -0
  867. package/my_template/node_modules/resolve/test/resolver/browser_field/a.js +0 -0
  868. package/my_template/node_modules/resolve/test/resolver/browser_field/b.js +0 -0
  869. package/my_template/node_modules/resolve/test/resolver/browser_field/package.json +5 -0
  870. package/my_template/node_modules/resolve/test/resolver/cup.coffee +1 -0
  871. package/my_template/node_modules/resolve/test/resolver/dot_main/index.js +1 -0
  872. package/my_template/node_modules/resolve/test/resolver/dot_main/package.json +3 -0
  873. package/my_template/node_modules/resolve/test/resolver/dot_slash_main/index.js +1 -0
  874. package/my_template/node_modules/resolve/test/resolver/dot_slash_main/package.json +3 -0
  875. package/my_template/node_modules/resolve/test/resolver/false_main/index.js +0 -0
  876. package/my_template/node_modules/resolve/test/resolver/false_main/package.json +4 -0
  877. package/my_template/node_modules/resolve/test/resolver/foo.js +1 -0
  878. package/my_template/node_modules/resolve/test/resolver/incorrect_main/index.js +2 -0
  879. package/my_template/node_modules/resolve/test/resolver/incorrect_main/package.json +3 -0
  880. package/my_template/node_modules/resolve/test/resolver/invalid_main/package.json +7 -0
  881. package/my_template/node_modules/resolve/test/resolver/mug.coffee +0 -0
  882. package/my_template/node_modules/resolve/test/resolver/mug.js +0 -0
  883. package/my_template/node_modules/resolve/test/resolver/multirepo/lerna.json +6 -0
  884. package/my_template/node_modules/resolve/test/resolver/multirepo/package.json +20 -0
  885. package/my_template/node_modules/resolve/test/resolver/multirepo/packages/package-a/index.js +35 -0
  886. package/my_template/node_modules/resolve/test/resolver/multirepo/packages/package-a/package.json +14 -0
  887. package/my_template/node_modules/resolve/test/resolver/multirepo/packages/package-b/index.js +0 -0
  888. package/my_template/node_modules/resolve/test/resolver/multirepo/packages/package-b/package.json +14 -0
  889. package/my_template/node_modules/resolve/test/resolver/nested_symlinks/mylib/async.js +26 -0
  890. package/my_template/node_modules/resolve/test/resolver/nested_symlinks/mylib/package.json +15 -0
  891. package/my_template/node_modules/resolve/test/resolver/nested_symlinks/mylib/sync.js +12 -0
  892. package/my_template/node_modules/resolve/test/resolver/other_path/lib/other-lib.js +0 -0
  893. package/my_template/node_modules/resolve/test/resolver/other_path/root.js +0 -0
  894. package/my_template/node_modules/resolve/test/resolver/quux/foo/index.js +1 -0
  895. package/my_template/node_modules/resolve/test/resolver/same_names/foo/index.js +1 -0
  896. package/my_template/node_modules/resolve/test/resolver/same_names/foo.js +1 -0
  897. package/my_template/node_modules/resolve/test/resolver/symlinked/_/node_modules/foo.js +0 -0
  898. package/my_template/node_modules/resolve/test/resolver/symlinked/_/symlink_target/.gitkeep +0 -0
  899. package/my_template/node_modules/resolve/test/resolver/symlinked/package/bar.js +1 -0
  900. package/my_template/node_modules/resolve/test/resolver/symlinked/package/package.json +3 -0
  901. package/my_template/node_modules/resolve/test/resolver/without_basedir/main.js +5 -0
  902. package/my_template/node_modules/resolve/test/resolver.js +597 -0
  903. package/my_template/node_modules/resolve/test/resolver_sync.js +730 -0
  904. package/my_template/node_modules/resolve/test/shadowed_core/node_modules/util/index.js +0 -0
  905. package/my_template/node_modules/resolve/test/shadowed_core.js +54 -0
  906. package/my_template/node_modules/resolve/test/subdirs.js +13 -0
  907. package/my_template/node_modules/resolve/test/symlinks.js +176 -0
  908. package/my_template/node_modules/rollup/CHANGELOG.md +3084 -0
  909. package/my_template/node_modules/rollup/LICENSE.md +578 -0
  910. package/my_template/node_modules/rollup/README.md +138 -0
  911. package/my_template/node_modules/rollup/dist/bin/rollup +1457 -0
  912. package/my_template/node_modules/rollup/dist/rollup.browser.es.js +25 -0
  913. package/my_template/node_modules/rollup/dist/rollup.browser.js +26 -0
  914. package/my_template/node_modules/rollup/dist/rollup.d.ts +656 -0
  915. package/my_template/node_modules/rollup/dist/rollup.es.js +17493 -0
  916. package/my_template/node_modules/rollup/dist/rollup.js +29 -0
  917. package/my_template/node_modules/rollup/dist/shared/index.js +321 -0
  918. package/my_template/node_modules/rollup/dist/shared/node-entry.js +17504 -0
  919. package/my_template/node_modules/rollup/package.json +139 -0
  920. package/my_template/node_modules/rollup-plugin-node-resolve/CHANGELOG.md +195 -0
  921. package/my_template/node_modules/rollup-plugin-node-resolve/README.md +135 -0
  922. package/my_template/node_modules/rollup-plugin-node-resolve/dist/rollup-plugin-node-resolve.cjs.js +425 -0
  923. package/my_template/node_modules/rollup-plugin-node-resolve/dist/rollup-plugin-node-resolve.es.js +421 -0
  924. package/my_template/node_modules/rollup-plugin-node-resolve/index.d.ts +100 -0
  925. package/my_template/node_modules/rollup-plugin-node-resolve/package.json +60 -0
  926. package/my_template/node_modules/rollup-plugin-node-resolve/src/index.js +358 -0
  927. package/my_template/node_modules/rollup-plugin-uglify/LICENSE +20 -0
  928. package/my_template/node_modules/rollup-plugin-uglify/README.md +84 -0
  929. package/my_template/node_modules/rollup-plugin-uglify/index.js +51 -0
  930. package/my_template/node_modules/rollup-plugin-uglify/package.json +43 -0
  931. package/my_template/node_modules/rollup-plugin-uglify/transform.js +13 -0
  932. package/my_template/node_modules/rollup-pluginutils/CHANGELOG.md +125 -0
  933. package/my_template/node_modules/rollup-pluginutils/README.md +169 -0
  934. package/my_template/node_modules/rollup-pluginutils/dist/pluginutils.cjs.js +3292 -0
  935. package/my_template/node_modules/rollup-pluginutils/dist/pluginutils.d.ts +39 -0
  936. package/my_template/node_modules/rollup-pluginutils/dist/pluginutils.es.js +3280 -0
  937. package/my_template/node_modules/rollup-pluginutils/package.json +57 -0
  938. package/my_template/node_modules/rollup-pluginutils/src/addExtension.ts +9 -0
  939. package/my_template/node_modules/rollup-pluginutils/src/attachScopes.ts +125 -0
  940. package/my_template/node_modules/rollup-pluginutils/src/createFilter.ts +52 -0
  941. package/my_template/node_modules/rollup-pluginutils/src/dataToEsm.ts +92 -0
  942. package/my_template/node_modules/rollup-pluginutils/src/extractAssignedNames.ts +46 -0
  943. package/my_template/node_modules/rollup-pluginutils/src/index.ts +6 -0
  944. package/my_template/node_modules/rollup-pluginutils/src/makeLegalIdentifier.ts +21 -0
  945. package/my_template/node_modules/rollup-pluginutils/src/pluginutils.d.ts +39 -0
  946. package/my_template/node_modules/rollup-pluginutils/src/utils/ensureArray.ts +5 -0
  947. package/my_template/node_modules/semver/LICENSE +15 -0
  948. package/my_template/node_modules/semver/README.md +412 -0
  949. package/my_template/node_modules/semver/bin/semver +160 -0
  950. package/my_template/node_modules/semver/package.json +38 -0
  951. package/my_template/node_modules/semver/range.bnf +16 -0
  952. package/my_template/node_modules/semver/semver.js +1525 -0
  953. package/my_template/node_modules/serialize-javascript/LICENSE +27 -0
  954. package/my_template/node_modules/serialize-javascript/README.md +143 -0
  955. package/my_template/node_modules/serialize-javascript/index.js +210 -0
  956. package/my_template/node_modules/serialize-javascript/package.json +33 -0
  957. package/my_template/node_modules/source-map/CHANGELOG.md +301 -0
  958. package/my_template/node_modules/source-map/LICENSE +28 -0
  959. package/my_template/node_modules/source-map/README.md +742 -0
  960. package/my_template/node_modules/source-map/dist/source-map.debug.js +3234 -0
  961. package/my_template/node_modules/source-map/dist/source-map.js +3233 -0
  962. package/my_template/node_modules/source-map/dist/source-map.min.js +2 -0
  963. package/my_template/node_modules/source-map/dist/source-map.min.js.map +1 -0
  964. package/my_template/node_modules/source-map/lib/array-set.js +121 -0
  965. package/my_template/node_modules/source-map/lib/base64-vlq.js +140 -0
  966. package/my_template/node_modules/source-map/lib/base64.js +67 -0
  967. package/my_template/node_modules/source-map/lib/binary-search.js +111 -0
  968. package/my_template/node_modules/source-map/lib/mapping-list.js +79 -0
  969. package/my_template/node_modules/source-map/lib/quick-sort.js +114 -0
  970. package/my_template/node_modules/source-map/lib/source-map-consumer.js +1145 -0
  971. package/my_template/node_modules/source-map/lib/source-map-generator.js +425 -0
  972. package/my_template/node_modules/source-map/lib/source-node.js +413 -0
  973. package/my_template/node_modules/source-map/lib/util.js +488 -0
  974. package/my_template/node_modules/source-map/package.json +73 -0
  975. package/my_template/node_modules/source-map/source-map.d.ts +98 -0
  976. package/my_template/node_modules/source-map/source-map.js +8 -0
  977. package/my_template/node_modules/supports-color/browser.js +5 -0
  978. package/my_template/node_modules/supports-color/index.js +131 -0
  979. package/my_template/node_modules/supports-color/license +9 -0
  980. package/my_template/node_modules/supports-color/package.json +53 -0
  981. package/my_template/node_modules/supports-color/readme.md +66 -0
  982. package/my_template/node_modules/supports-preserve-symlinks-flag/.eslintrc +14 -0
  983. package/my_template/node_modules/supports-preserve-symlinks-flag/.github/FUNDING.yml +12 -0
  984. package/my_template/node_modules/supports-preserve-symlinks-flag/.nycrc +9 -0
  985. package/my_template/node_modules/supports-preserve-symlinks-flag/CHANGELOG.md +22 -0
  986. package/my_template/node_modules/supports-preserve-symlinks-flag/LICENSE +21 -0
  987. package/my_template/node_modules/supports-preserve-symlinks-flag/README.md +42 -0
  988. package/my_template/node_modules/supports-preserve-symlinks-flag/browser.js +3 -0
  989. package/my_template/node_modules/supports-preserve-symlinks-flag/index.js +9 -0
  990. package/my_template/node_modules/supports-preserve-symlinks-flag/package.json +70 -0
  991. package/my_template/node_modules/supports-preserve-symlinks-flag/test/index.js +29 -0
  992. package/my_template/node_modules/tslib/CopyrightNotice.txt +15 -0
  993. package/my_template/node_modules/tslib/LICENSE.txt +12 -0
  994. package/my_template/node_modules/tslib/README.md +142 -0
  995. package/my_template/node_modules/tslib/modules/index.js +51 -0
  996. package/my_template/node_modules/tslib/modules/package.json +3 -0
  997. package/my_template/node_modules/tslib/package.json +37 -0
  998. package/my_template/node_modules/tslib/test/validateModuleExportsMatchCommonJS/index.js +23 -0
  999. package/my_template/node_modules/tslib/test/validateModuleExportsMatchCommonJS/package.json +6 -0
  1000. package/my_template/node_modules/tslib/tslib.d.ts +37 -0
  1001. package/my_template/node_modules/tslib/tslib.es6.html +1 -0
  1002. package/my_template/node_modules/tslib/tslib.es6.js +218 -0
  1003. package/my_template/node_modules/tslib/tslib.html +1 -0
  1004. package/my_template/node_modules/tslib/tslib.js +284 -0
  1005. package/my_template/node_modules/uglify-js/LICENSE +29 -0
  1006. package/my_template/node_modules/uglify-js/README.md +1478 -0
  1007. package/my_template/node_modules/uglify-js/bin/uglifyjs +605 -0
  1008. package/my_template/node_modules/uglify-js/lib/ast.js +2356 -0
  1009. package/my_template/node_modules/uglify-js/lib/compress.js +14241 -0
  1010. package/my_template/node_modules/uglify-js/lib/minify.js +276 -0
  1011. package/my_template/node_modules/uglify-js/lib/mozilla-ast.js +1310 -0
  1012. package/my_template/node_modules/uglify-js/lib/output.js +1956 -0
  1013. package/my_template/node_modules/uglify-js/lib/parse.js +2585 -0
  1014. package/my_template/node_modules/uglify-js/lib/propmangle.js +328 -0
  1015. package/my_template/node_modules/uglify-js/lib/scope.js +866 -0
  1016. package/my_template/node_modules/uglify-js/lib/sourcemap.js +195 -0
  1017. package/my_template/node_modules/uglify-js/lib/transform.js +250 -0
  1018. package/my_template/node_modules/uglify-js/lib/utils.js +287 -0
  1019. package/my_template/node_modules/uglify-js/package.json +56 -0
  1020. package/my_template/node_modules/uglify-js/tools/domprops.html +456 -0
  1021. package/my_template/node_modules/uglify-js/tools/domprops.json +8325 -0
  1022. package/my_template/node_modules/uglify-js/tools/exports.js +8 -0
  1023. package/my_template/node_modules/uglify-js/tools/node.js +110 -0
  1024. package/my_template/node_modules/uglify-js/tools/tty.js +22 -0
  1025. package/my_template/node_modules/undici-types/README.md +6 -0
  1026. package/my_template/node_modules/undici-types/agent.d.ts +31 -0
  1027. package/my_template/node_modules/undici-types/api.d.ts +43 -0
  1028. package/my_template/node_modules/undici-types/balanced-pool.d.ts +18 -0
  1029. package/my_template/node_modules/undici-types/cache.d.ts +36 -0
  1030. package/my_template/node_modules/undici-types/client.d.ts +97 -0
  1031. package/my_template/node_modules/undici-types/connector.d.ts +34 -0
  1032. package/my_template/node_modules/undici-types/content-type.d.ts +21 -0
  1033. package/my_template/node_modules/undici-types/cookies.d.ts +28 -0
  1034. package/my_template/node_modules/undici-types/diagnostics-channel.d.ts +67 -0
  1035. package/my_template/node_modules/undici-types/dispatcher.d.ts +241 -0
  1036. package/my_template/node_modules/undici-types/errors.d.ts +128 -0
  1037. package/my_template/node_modules/undici-types/fetch.d.ts +209 -0
  1038. package/my_template/node_modules/undici-types/file.d.ts +39 -0
  1039. package/my_template/node_modules/undici-types/filereader.d.ts +54 -0
  1040. package/my_template/node_modules/undici-types/formdata.d.ts +108 -0
  1041. package/my_template/node_modules/undici-types/global-dispatcher.d.ts +9 -0
  1042. package/my_template/node_modules/undici-types/global-origin.d.ts +7 -0
  1043. package/my_template/node_modules/undici-types/handlers.d.ts +9 -0
  1044. package/my_template/node_modules/undici-types/header.d.ts +4 -0
  1045. package/my_template/node_modules/undici-types/index.d.ts +63 -0
  1046. package/my_template/node_modules/undici-types/interceptors.d.ts +5 -0
  1047. package/my_template/node_modules/undici-types/mock-agent.d.ts +50 -0
  1048. package/my_template/node_modules/undici-types/mock-client.d.ts +25 -0
  1049. package/my_template/node_modules/undici-types/mock-errors.d.ts +12 -0
  1050. package/my_template/node_modules/undici-types/mock-interceptor.d.ts +93 -0
  1051. package/my_template/node_modules/undici-types/mock-pool.d.ts +25 -0
  1052. package/my_template/node_modules/undici-types/package.json +55 -0
  1053. package/my_template/node_modules/undici-types/patch.d.ts +71 -0
  1054. package/my_template/node_modules/undici-types/pool-stats.d.ts +19 -0
  1055. package/my_template/node_modules/undici-types/pool.d.ts +28 -0
  1056. package/my_template/node_modules/undici-types/proxy-agent.d.ts +30 -0
  1057. package/my_template/node_modules/undici-types/readable.d.ts +61 -0
  1058. package/my_template/node_modules/undici-types/webidl.d.ts +220 -0
  1059. package/my_template/node_modules/undici-types/websocket.d.ts +131 -0
  1060. package/package.json +1 -1
  1061. package/server/comms_js.js +1 -0
  1062. package/server/index.js +3 -3
  1063. package/site/images/icon-add-folder.svg +5 -0
  1064. package/site/images/icon-all-projects.svg +3 -0
  1065. package/site/images/icon-folder.svg +3 -0
  1066. package/site/images/icon-search.svg +5 -0
  1067. package/site/images/icon-shared-projects.svg +10 -0
  1068. package/site/images/onboarding-tour-story-duplicate-slide.png +0 -0
  1069. package/site/images/onboarding-tour-white-story.gif +0 -0
  1070. package/site/images/story-onboarding-tour-legend.gif +0 -0
  1071. package/site/script.js +2 -2
  1072. package/site/sdk.css +2 -2
  1073. package/tsconfig.json +10 -0
  1074. package/utils/state.js +0 -152
@@ -0,0 +1,462 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ var tree_1 = __importDefault(require("../tree"));
26
+ var visitor_1 = __importDefault(require("./visitor"));
27
+ var logger_1 = __importDefault(require("../logger"));
28
+ var utils = __importStar(require("../utils"));
29
+ /* jshint loopfunc:true */
30
+ var ExtendFinderVisitor = /** @class */ (function () {
31
+ function ExtendFinderVisitor() {
32
+ this._visitor = new visitor_1.default(this);
33
+ this.contexts = [];
34
+ this.allExtendsStack = [[]];
35
+ }
36
+ ExtendFinderVisitor.prototype.run = function (root) {
37
+ root = this._visitor.visit(root);
38
+ root.allExtends = this.allExtendsStack[0];
39
+ return root;
40
+ };
41
+ ExtendFinderVisitor.prototype.visitDeclaration = function (declNode, visitArgs) {
42
+ visitArgs.visitDeeper = false;
43
+ };
44
+ ExtendFinderVisitor.prototype.visitMixinDefinition = function (mixinDefinitionNode, visitArgs) {
45
+ visitArgs.visitDeeper = false;
46
+ };
47
+ ExtendFinderVisitor.prototype.visitRuleset = function (rulesetNode, visitArgs) {
48
+ if (rulesetNode.root) {
49
+ return;
50
+ }
51
+ var i;
52
+ var j;
53
+ var extend;
54
+ var allSelectorsExtendList = [];
55
+ var extendList;
56
+ // get &:extend(.a); rules which apply to all selectors in this ruleset
57
+ var rules = rulesetNode.rules;
58
+ var ruleCnt = rules ? rules.length : 0;
59
+ for (i = 0; i < ruleCnt; i++) {
60
+ if (rulesetNode.rules[i] instanceof tree_1.default.Extend) {
61
+ allSelectorsExtendList.push(rules[i]);
62
+ rulesetNode.extendOnEveryPath = true;
63
+ }
64
+ }
65
+ // now find every selector and apply the extends that apply to all extends
66
+ // and the ones which apply to an individual extend
67
+ var paths = rulesetNode.paths;
68
+ for (i = 0; i < paths.length; i++) {
69
+ var selectorPath = paths[i];
70
+ var selector = selectorPath[selectorPath.length - 1];
71
+ var selExtendList = selector.extendList;
72
+ extendList = selExtendList ? utils.copyArray(selExtendList).concat(allSelectorsExtendList)
73
+ : allSelectorsExtendList;
74
+ if (extendList) {
75
+ extendList = extendList.map(function (allSelectorsExtend) { return allSelectorsExtend.clone(); });
76
+ }
77
+ for (j = 0; j < extendList.length; j++) {
78
+ this.foundExtends = true;
79
+ extend = extendList[j];
80
+ extend.findSelfSelectors(selectorPath);
81
+ extend.ruleset = rulesetNode;
82
+ if (j === 0) {
83
+ extend.firstExtendOnThisSelectorPath = true;
84
+ }
85
+ this.allExtendsStack[this.allExtendsStack.length - 1].push(extend);
86
+ }
87
+ }
88
+ this.contexts.push(rulesetNode.selectors);
89
+ };
90
+ ExtendFinderVisitor.prototype.visitRulesetOut = function (rulesetNode) {
91
+ if (!rulesetNode.root) {
92
+ this.contexts.length = this.contexts.length - 1;
93
+ }
94
+ };
95
+ ExtendFinderVisitor.prototype.visitMedia = function (mediaNode, visitArgs) {
96
+ mediaNode.allExtends = [];
97
+ this.allExtendsStack.push(mediaNode.allExtends);
98
+ };
99
+ ExtendFinderVisitor.prototype.visitMediaOut = function (mediaNode) {
100
+ this.allExtendsStack.length = this.allExtendsStack.length - 1;
101
+ };
102
+ ExtendFinderVisitor.prototype.visitAtRule = function (atRuleNode, visitArgs) {
103
+ atRuleNode.allExtends = [];
104
+ this.allExtendsStack.push(atRuleNode.allExtends);
105
+ };
106
+ ExtendFinderVisitor.prototype.visitAtRuleOut = function (atRuleNode) {
107
+ this.allExtendsStack.length = this.allExtendsStack.length - 1;
108
+ };
109
+ return ExtendFinderVisitor;
110
+ }());
111
+ var ProcessExtendsVisitor = /** @class */ (function () {
112
+ function ProcessExtendsVisitor() {
113
+ this._visitor = new visitor_1.default(this);
114
+ }
115
+ ProcessExtendsVisitor.prototype.run = function (root) {
116
+ var extendFinder = new ExtendFinderVisitor();
117
+ this.extendIndices = {};
118
+ extendFinder.run(root);
119
+ if (!extendFinder.foundExtends) {
120
+ return root;
121
+ }
122
+ root.allExtends = root.allExtends.concat(this.doExtendChaining(root.allExtends, root.allExtends));
123
+ this.allExtendsStack = [root.allExtends];
124
+ var newRoot = this._visitor.visit(root);
125
+ this.checkExtendsForNonMatched(root.allExtends);
126
+ return newRoot;
127
+ };
128
+ ProcessExtendsVisitor.prototype.checkExtendsForNonMatched = function (extendList) {
129
+ var indices = this.extendIndices;
130
+ extendList.filter(function (extend) { return !extend.hasFoundMatches && extend.parent_ids.length == 1; }).forEach(function (extend) {
131
+ var selector = '_unknown_';
132
+ try {
133
+ selector = extend.selector.toCSS({});
134
+ }
135
+ catch (_) { }
136
+ if (!indices[extend.index + " " + selector]) {
137
+ indices[extend.index + " " + selector] = true;
138
+ logger_1.default.warn("extend '" + selector + "' has no matches");
139
+ }
140
+ });
141
+ };
142
+ ProcessExtendsVisitor.prototype.doExtendChaining = function (extendsList, extendsListTarget, iterationCount) {
143
+ //
144
+ // chaining is different from normal extension.. if we extend an extend then we are not just copying, altering
145
+ // and pasting the selector we would do normally, but we are also adding an extend with the same target selector
146
+ // this means this new extend can then go and alter other extends
147
+ //
148
+ // this method deals with all the chaining work - without it, extend is flat and doesn't work on other extend selectors
149
+ // this is also the most expensive.. and a match on one selector can cause an extension of a selector we had already
150
+ // processed if we look at each selector at a time, as is done in visitRuleset
151
+ var extendIndex;
152
+ var targetExtendIndex;
153
+ var matches;
154
+ var extendsToAdd = [];
155
+ var newSelector;
156
+ var extendVisitor = this;
157
+ var selectorPath;
158
+ var extend;
159
+ var targetExtend;
160
+ var newExtend;
161
+ iterationCount = iterationCount || 0;
162
+ // loop through comparing every extend with every target extend.
163
+ // a target extend is the one on the ruleset we are looking at copy/edit/pasting in place
164
+ // e.g. .a:extend(.b) {} and .b:extend(.c) {} then the first extend extends the second one
165
+ // and the second is the target.
166
+ // the separation into two lists allows us to process a subset of chains with a bigger set, as is the
167
+ // case when processing media queries
168
+ for (extendIndex = 0; extendIndex < extendsList.length; extendIndex++) {
169
+ for (targetExtendIndex = 0; targetExtendIndex < extendsListTarget.length; targetExtendIndex++) {
170
+ extend = extendsList[extendIndex];
171
+ targetExtend = extendsListTarget[targetExtendIndex];
172
+ // look for circular references
173
+ if (extend.parent_ids.indexOf(targetExtend.object_id) >= 0) {
174
+ continue;
175
+ }
176
+ // find a match in the target extends self selector (the bit before :extend)
177
+ selectorPath = [targetExtend.selfSelectors[0]];
178
+ matches = extendVisitor.findMatch(extend, selectorPath);
179
+ if (matches.length) {
180
+ extend.hasFoundMatches = true;
181
+ // we found a match, so for each self selector..
182
+ extend.selfSelectors.forEach(function (selfSelector) {
183
+ var info = targetExtend.visibilityInfo();
184
+ // process the extend as usual
185
+ newSelector = extendVisitor.extendSelector(matches, selectorPath, selfSelector, extend.isVisible());
186
+ // but now we create a new extend from it
187
+ newExtend = new (tree_1.default.Extend)(targetExtend.selector, targetExtend.option, 0, targetExtend.fileInfo(), info);
188
+ newExtend.selfSelectors = newSelector;
189
+ // add the extend onto the list of extends for that selector
190
+ newSelector[newSelector.length - 1].extendList = [newExtend];
191
+ // record that we need to add it.
192
+ extendsToAdd.push(newExtend);
193
+ newExtend.ruleset = targetExtend.ruleset;
194
+ // remember its parents for circular references
195
+ newExtend.parent_ids = newExtend.parent_ids.concat(targetExtend.parent_ids, extend.parent_ids);
196
+ // only process the selector once.. if we have :extend(.a,.b) then multiple
197
+ // extends will look at the same selector path, so when extending
198
+ // we know that any others will be duplicates in terms of what is added to the css
199
+ if (targetExtend.firstExtendOnThisSelectorPath) {
200
+ newExtend.firstExtendOnThisSelectorPath = true;
201
+ targetExtend.ruleset.paths.push(newSelector);
202
+ }
203
+ });
204
+ }
205
+ }
206
+ }
207
+ if (extendsToAdd.length) {
208
+ // try to detect circular references to stop a stack overflow.
209
+ // may no longer be needed.
210
+ this.extendChainCount++;
211
+ if (iterationCount > 100) {
212
+ var selectorOne = '{unable to calculate}';
213
+ var selectorTwo = '{unable to calculate}';
214
+ try {
215
+ selectorOne = extendsToAdd[0].selfSelectors[0].toCSS();
216
+ selectorTwo = extendsToAdd[0].selector.toCSS();
217
+ }
218
+ catch (e) { }
219
+ throw { message: "extend circular reference detected. One of the circular extends is currently:" + selectorOne + ":extend(" + selectorTwo + ")" };
220
+ }
221
+ // now process the new extends on the existing rules so that we can handle a extending b extending c extending
222
+ // d extending e...
223
+ return extendsToAdd.concat(extendVisitor.doExtendChaining(extendsToAdd, extendsListTarget, iterationCount + 1));
224
+ }
225
+ else {
226
+ return extendsToAdd;
227
+ }
228
+ };
229
+ ProcessExtendsVisitor.prototype.visitDeclaration = function (ruleNode, visitArgs) {
230
+ visitArgs.visitDeeper = false;
231
+ };
232
+ ProcessExtendsVisitor.prototype.visitMixinDefinition = function (mixinDefinitionNode, visitArgs) {
233
+ visitArgs.visitDeeper = false;
234
+ };
235
+ ProcessExtendsVisitor.prototype.visitSelector = function (selectorNode, visitArgs) {
236
+ visitArgs.visitDeeper = false;
237
+ };
238
+ ProcessExtendsVisitor.prototype.visitRuleset = function (rulesetNode, visitArgs) {
239
+ if (rulesetNode.root) {
240
+ return;
241
+ }
242
+ var matches;
243
+ var pathIndex;
244
+ var extendIndex;
245
+ var allExtends = this.allExtendsStack[this.allExtendsStack.length - 1];
246
+ var selectorsToAdd = [];
247
+ var extendVisitor = this;
248
+ var selectorPath;
249
+ // look at each selector path in the ruleset, find any extend matches and then copy, find and replace
250
+ for (extendIndex = 0; extendIndex < allExtends.length; extendIndex++) {
251
+ for (pathIndex = 0; pathIndex < rulesetNode.paths.length; pathIndex++) {
252
+ selectorPath = rulesetNode.paths[pathIndex];
253
+ // extending extends happens initially, before the main pass
254
+ if (rulesetNode.extendOnEveryPath) {
255
+ continue;
256
+ }
257
+ var extendList = selectorPath[selectorPath.length - 1].extendList;
258
+ if (extendList && extendList.length) {
259
+ continue;
260
+ }
261
+ matches = this.findMatch(allExtends[extendIndex], selectorPath);
262
+ if (matches.length) {
263
+ allExtends[extendIndex].hasFoundMatches = true;
264
+ allExtends[extendIndex].selfSelectors.forEach(function (selfSelector) {
265
+ var extendedSelectors;
266
+ extendedSelectors = extendVisitor.extendSelector(matches, selectorPath, selfSelector, allExtends[extendIndex].isVisible());
267
+ selectorsToAdd.push(extendedSelectors);
268
+ });
269
+ }
270
+ }
271
+ }
272
+ rulesetNode.paths = rulesetNode.paths.concat(selectorsToAdd);
273
+ };
274
+ ProcessExtendsVisitor.prototype.findMatch = function (extend, haystackSelectorPath) {
275
+ //
276
+ // look through the haystack selector path to try and find the needle - extend.selector
277
+ // returns an array of selector matches that can then be replaced
278
+ //
279
+ var haystackSelectorIndex;
280
+ var hackstackSelector;
281
+ var hackstackElementIndex;
282
+ var haystackElement;
283
+ var targetCombinator;
284
+ var i;
285
+ var extendVisitor = this;
286
+ var needleElements = extend.selector.elements;
287
+ var potentialMatches = [];
288
+ var potentialMatch;
289
+ var matches = [];
290
+ // loop through the haystack elements
291
+ for (haystackSelectorIndex = 0; haystackSelectorIndex < haystackSelectorPath.length; haystackSelectorIndex++) {
292
+ hackstackSelector = haystackSelectorPath[haystackSelectorIndex];
293
+ for (hackstackElementIndex = 0; hackstackElementIndex < hackstackSelector.elements.length; hackstackElementIndex++) {
294
+ haystackElement = hackstackSelector.elements[hackstackElementIndex];
295
+ // if we allow elements before our match we can add a potential match every time. otherwise only at the first element.
296
+ if (extend.allowBefore || (haystackSelectorIndex === 0 && hackstackElementIndex === 0)) {
297
+ potentialMatches.push({ pathIndex: haystackSelectorIndex, index: hackstackElementIndex, matched: 0,
298
+ initialCombinator: haystackElement.combinator });
299
+ }
300
+ for (i = 0; i < potentialMatches.length; i++) {
301
+ potentialMatch = potentialMatches[i];
302
+ // selectors add " " onto the first element. When we use & it joins the selectors together, but if we don't
303
+ // then each selector in haystackSelectorPath has a space before it added in the toCSS phase. so we need to
304
+ // work out what the resulting combinator will be
305
+ targetCombinator = haystackElement.combinator.value;
306
+ if (targetCombinator === '' && hackstackElementIndex === 0) {
307
+ targetCombinator = ' ';
308
+ }
309
+ // if we don't match, null our match to indicate failure
310
+ if (!extendVisitor.isElementValuesEqual(needleElements[potentialMatch.matched].value, haystackElement.value) ||
311
+ (potentialMatch.matched > 0 && needleElements[potentialMatch.matched].combinator.value !== targetCombinator)) {
312
+ potentialMatch = null;
313
+ }
314
+ else {
315
+ potentialMatch.matched++;
316
+ }
317
+ // if we are still valid and have finished, test whether we have elements after and whether these are allowed
318
+ if (potentialMatch) {
319
+ potentialMatch.finished = potentialMatch.matched === needleElements.length;
320
+ if (potentialMatch.finished &&
321
+ (!extend.allowAfter &&
322
+ (hackstackElementIndex + 1 < hackstackSelector.elements.length || haystackSelectorIndex + 1 < haystackSelectorPath.length))) {
323
+ potentialMatch = null;
324
+ }
325
+ }
326
+ // if null we remove, if not, we are still valid, so either push as a valid match or continue
327
+ if (potentialMatch) {
328
+ if (potentialMatch.finished) {
329
+ potentialMatch.length = needleElements.length;
330
+ potentialMatch.endPathIndex = haystackSelectorIndex;
331
+ potentialMatch.endPathElementIndex = hackstackElementIndex + 1; // index after end of match
332
+ potentialMatches.length = 0; // we don't allow matches to overlap, so start matching again
333
+ matches.push(potentialMatch);
334
+ }
335
+ }
336
+ else {
337
+ potentialMatches.splice(i, 1);
338
+ i--;
339
+ }
340
+ }
341
+ }
342
+ }
343
+ return matches;
344
+ };
345
+ ProcessExtendsVisitor.prototype.isElementValuesEqual = function (elementValue1, elementValue2) {
346
+ if (typeof elementValue1 === 'string' || typeof elementValue2 === 'string') {
347
+ return elementValue1 === elementValue2;
348
+ }
349
+ if (elementValue1 instanceof tree_1.default.Attribute) {
350
+ if (elementValue1.op !== elementValue2.op || elementValue1.key !== elementValue2.key) {
351
+ return false;
352
+ }
353
+ if (!elementValue1.value || !elementValue2.value) {
354
+ if (elementValue1.value || elementValue2.value) {
355
+ return false;
356
+ }
357
+ return true;
358
+ }
359
+ elementValue1 = elementValue1.value.value || elementValue1.value;
360
+ elementValue2 = elementValue2.value.value || elementValue2.value;
361
+ return elementValue1 === elementValue2;
362
+ }
363
+ elementValue1 = elementValue1.value;
364
+ elementValue2 = elementValue2.value;
365
+ if (elementValue1 instanceof tree_1.default.Selector) {
366
+ if (!(elementValue2 instanceof tree_1.default.Selector) || elementValue1.elements.length !== elementValue2.elements.length) {
367
+ return false;
368
+ }
369
+ for (var i = 0; i < elementValue1.elements.length; i++) {
370
+ if (elementValue1.elements[i].combinator.value !== elementValue2.elements[i].combinator.value) {
371
+ if (i !== 0 || (elementValue1.elements[i].combinator.value || ' ') !== (elementValue2.elements[i].combinator.value || ' ')) {
372
+ return false;
373
+ }
374
+ }
375
+ if (!this.isElementValuesEqual(elementValue1.elements[i].value, elementValue2.elements[i].value)) {
376
+ return false;
377
+ }
378
+ }
379
+ return true;
380
+ }
381
+ return false;
382
+ };
383
+ ProcessExtendsVisitor.prototype.extendSelector = function (matches, selectorPath, replacementSelector, isVisible) {
384
+ // for a set of matches, replace each match with the replacement selector
385
+ var currentSelectorPathIndex = 0;
386
+ var currentSelectorPathElementIndex = 0;
387
+ var path = [];
388
+ var matchIndex;
389
+ var selector;
390
+ var firstElement;
391
+ var match;
392
+ var newElements;
393
+ for (matchIndex = 0; matchIndex < matches.length; matchIndex++) {
394
+ match = matches[matchIndex];
395
+ selector = selectorPath[match.pathIndex];
396
+ firstElement = new tree_1.default.Element(match.initialCombinator, replacementSelector.elements[0].value, replacementSelector.elements[0].isVariable, replacementSelector.elements[0].getIndex(), replacementSelector.elements[0].fileInfo());
397
+ if (match.pathIndex > currentSelectorPathIndex && currentSelectorPathElementIndex > 0) {
398
+ path[path.length - 1].elements = path[path.length - 1]
399
+ .elements.concat(selectorPath[currentSelectorPathIndex].elements.slice(currentSelectorPathElementIndex));
400
+ currentSelectorPathElementIndex = 0;
401
+ currentSelectorPathIndex++;
402
+ }
403
+ newElements = selector.elements
404
+ .slice(currentSelectorPathElementIndex, match.index)
405
+ .concat([firstElement])
406
+ .concat(replacementSelector.elements.slice(1));
407
+ if (currentSelectorPathIndex === match.pathIndex && matchIndex > 0) {
408
+ path[path.length - 1].elements =
409
+ path[path.length - 1].elements.concat(newElements);
410
+ }
411
+ else {
412
+ path = path.concat(selectorPath.slice(currentSelectorPathIndex, match.pathIndex));
413
+ path.push(new tree_1.default.Selector(newElements));
414
+ }
415
+ currentSelectorPathIndex = match.endPathIndex;
416
+ currentSelectorPathElementIndex = match.endPathElementIndex;
417
+ if (currentSelectorPathElementIndex >= selectorPath[currentSelectorPathIndex].elements.length) {
418
+ currentSelectorPathElementIndex = 0;
419
+ currentSelectorPathIndex++;
420
+ }
421
+ }
422
+ if (currentSelectorPathIndex < selectorPath.length && currentSelectorPathElementIndex > 0) {
423
+ path[path.length - 1].elements = path[path.length - 1]
424
+ .elements.concat(selectorPath[currentSelectorPathIndex].elements.slice(currentSelectorPathElementIndex));
425
+ currentSelectorPathIndex++;
426
+ }
427
+ path = path.concat(selectorPath.slice(currentSelectorPathIndex, selectorPath.length));
428
+ path = path.map(function (currentValue) {
429
+ // we can re-use elements here, because the visibility property matters only for selectors
430
+ var derived = currentValue.createDerived(currentValue.elements);
431
+ if (isVisible) {
432
+ derived.ensureVisibility();
433
+ }
434
+ else {
435
+ derived.ensureInvisibility();
436
+ }
437
+ return derived;
438
+ });
439
+ return path;
440
+ };
441
+ ProcessExtendsVisitor.prototype.visitMedia = function (mediaNode, visitArgs) {
442
+ var newAllExtends = mediaNode.allExtends.concat(this.allExtendsStack[this.allExtendsStack.length - 1]);
443
+ newAllExtends = newAllExtends.concat(this.doExtendChaining(newAllExtends, mediaNode.allExtends));
444
+ this.allExtendsStack.push(newAllExtends);
445
+ };
446
+ ProcessExtendsVisitor.prototype.visitMediaOut = function (mediaNode) {
447
+ var lastIndex = this.allExtendsStack.length - 1;
448
+ this.allExtendsStack.length = lastIndex;
449
+ };
450
+ ProcessExtendsVisitor.prototype.visitAtRule = function (atRuleNode, visitArgs) {
451
+ var newAllExtends = atRuleNode.allExtends.concat(this.allExtendsStack[this.allExtendsStack.length - 1]);
452
+ newAllExtends = newAllExtends.concat(this.doExtendChaining(newAllExtends, atRuleNode.allExtends));
453
+ this.allExtendsStack.push(newAllExtends);
454
+ };
455
+ ProcessExtendsVisitor.prototype.visitAtRuleOut = function (atRuleNode) {
456
+ var lastIndex = this.allExtendsStack.length - 1;
457
+ this.allExtendsStack.length = lastIndex;
458
+ };
459
+ return ProcessExtendsVisitor;
460
+ }());
461
+ exports.default = ProcessExtendsVisitor;
462
+ //# sourceMappingURL=extend-visitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extend-visitor.js","sourceRoot":"","sources":["../../../src/less/visitors/extend-visitor.js"],"names":[],"mappings":"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","sourcesContent":["import tree from '../tree';\nimport Visitor from './visitor';\nimport logger from '../logger';\nimport * as utils from '../utils';\n\n/* jshint loopfunc:true */\n\nclass ExtendFinderVisitor {\n constructor() {\n this._visitor = new Visitor(this);\n this.contexts = [];\n this.allExtendsStack = [[]];\n }\n\n run(root) {\n root = this._visitor.visit(root);\n root.allExtends = this.allExtendsStack[0];\n return root;\n }\n\n visitDeclaration(declNode, visitArgs) {\n visitArgs.visitDeeper = false;\n }\n\n visitMixinDefinition(mixinDefinitionNode, visitArgs) {\n visitArgs.visitDeeper = false;\n }\n\n visitRuleset(rulesetNode, visitArgs) {\n if (rulesetNode.root) {\n return;\n }\n\n let i;\n let j;\n let extend;\n const allSelectorsExtendList = [];\n let extendList;\n\n // get &:extend(.a); rules which apply to all selectors in this ruleset\n const rules = rulesetNode.rules;\n\n const ruleCnt = rules ? rules.length : 0;\n for (i = 0; i < ruleCnt; i++) {\n if (rulesetNode.rules[i] instanceof tree.Extend) {\n allSelectorsExtendList.push(rules[i]);\n rulesetNode.extendOnEveryPath = true;\n }\n }\n\n // now find every selector and apply the extends that apply to all extends\n // and the ones which apply to an individual extend\n const paths = rulesetNode.paths;\n for (i = 0; i < paths.length; i++) {\n const selectorPath = paths[i];\n const selector = selectorPath[selectorPath.length - 1];\n const selExtendList = selector.extendList;\n\n extendList = selExtendList ? utils.copyArray(selExtendList).concat(allSelectorsExtendList)\n : allSelectorsExtendList;\n\n if (extendList) {\n extendList = extendList.map(allSelectorsExtend => allSelectorsExtend.clone());\n }\n\n for (j = 0; j < extendList.length; j++) {\n this.foundExtends = true;\n extend = extendList[j];\n extend.findSelfSelectors(selectorPath);\n extend.ruleset = rulesetNode;\n if (j === 0) { extend.firstExtendOnThisSelectorPath = true; }\n this.allExtendsStack[this.allExtendsStack.length - 1].push(extend);\n }\n }\n\n this.contexts.push(rulesetNode.selectors);\n }\n\n visitRulesetOut(rulesetNode) {\n if (!rulesetNode.root) {\n this.contexts.length = this.contexts.length - 1;\n }\n }\n\n visitMedia(mediaNode, visitArgs) {\n mediaNode.allExtends = [];\n this.allExtendsStack.push(mediaNode.allExtends);\n }\n\n visitMediaOut(mediaNode) {\n this.allExtendsStack.length = this.allExtendsStack.length - 1;\n }\n\n visitAtRule(atRuleNode, visitArgs) {\n atRuleNode.allExtends = [];\n this.allExtendsStack.push(atRuleNode.allExtends);\n }\n\n visitAtRuleOut(atRuleNode) {\n this.allExtendsStack.length = this.allExtendsStack.length - 1;\n }\n}\n\nclass ProcessExtendsVisitor {\n constructor() {\n this._visitor = new Visitor(this);\n }\n\n run(root) {\n const extendFinder = new ExtendFinderVisitor();\n this.extendIndices = {};\n extendFinder.run(root);\n if (!extendFinder.foundExtends) { return root; }\n root.allExtends = root.allExtends.concat(this.doExtendChaining(root.allExtends, root.allExtends));\n this.allExtendsStack = [root.allExtends];\n const newRoot = this._visitor.visit(root);\n this.checkExtendsForNonMatched(root.allExtends);\n return newRoot;\n }\n\n checkExtendsForNonMatched(extendList) {\n const indices = this.extendIndices;\n extendList.filter(extend => !extend.hasFoundMatches && extend.parent_ids.length == 1).forEach(extend => {\n let selector = '_unknown_';\n try {\n selector = extend.selector.toCSS({});\n }\n catch (_) {}\n\n if (!indices[`${extend.index} ${selector}`]) {\n indices[`${extend.index} ${selector}`] = true;\n logger.warn(`extend '${selector}' has no matches`);\n }\n });\n }\n\n doExtendChaining(extendsList, extendsListTarget, iterationCount) {\n //\n // chaining is different from normal extension.. if we extend an extend then we are not just copying, altering\n // and pasting the selector we would do normally, but we are also adding an extend with the same target selector\n // this means this new extend can then go and alter other extends\n //\n // this method deals with all the chaining work - without it, extend is flat and doesn't work on other extend selectors\n // this is also the most expensive.. and a match on one selector can cause an extension of a selector we had already\n // processed if we look at each selector at a time, as is done in visitRuleset\n\n let extendIndex;\n\n let targetExtendIndex;\n let matches;\n const extendsToAdd = [];\n let newSelector;\n const extendVisitor = this;\n let selectorPath;\n let extend;\n let targetExtend;\n let newExtend;\n\n iterationCount = iterationCount || 0;\n\n // loop through comparing every extend with every target extend.\n // a target extend is the one on the ruleset we are looking at copy/edit/pasting in place\n // e.g. .a:extend(.b) {} and .b:extend(.c) {} then the first extend extends the second one\n // and the second is the target.\n // the separation into two lists allows us to process a subset of chains with a bigger set, as is the\n // case when processing media queries\n for (extendIndex = 0; extendIndex < extendsList.length; extendIndex++) {\n for (targetExtendIndex = 0; targetExtendIndex < extendsListTarget.length; targetExtendIndex++) {\n\n extend = extendsList[extendIndex];\n targetExtend = extendsListTarget[targetExtendIndex];\n\n // look for circular references\n if ( extend.parent_ids.indexOf( targetExtend.object_id ) >= 0 ) { continue; }\n\n // find a match in the target extends self selector (the bit before :extend)\n selectorPath = [targetExtend.selfSelectors[0]];\n matches = extendVisitor.findMatch(extend, selectorPath);\n\n if (matches.length) {\n extend.hasFoundMatches = true;\n\n // we found a match, so for each self selector..\n extend.selfSelectors.forEach(selfSelector => {\n const info = targetExtend.visibilityInfo();\n\n // process the extend as usual\n newSelector = extendVisitor.extendSelector(matches, selectorPath, selfSelector, extend.isVisible());\n\n // but now we create a new extend from it\n newExtend = new(tree.Extend)(targetExtend.selector, targetExtend.option, 0, targetExtend.fileInfo(), info);\n newExtend.selfSelectors = newSelector;\n\n // add the extend onto the list of extends for that selector\n newSelector[newSelector.length - 1].extendList = [newExtend];\n\n // record that we need to add it.\n extendsToAdd.push(newExtend);\n newExtend.ruleset = targetExtend.ruleset;\n\n // remember its parents for circular references\n newExtend.parent_ids = newExtend.parent_ids.concat(targetExtend.parent_ids, extend.parent_ids);\n\n // only process the selector once.. if we have :extend(.a,.b) then multiple\n // extends will look at the same selector path, so when extending\n // we know that any others will be duplicates in terms of what is added to the css\n if (targetExtend.firstExtendOnThisSelectorPath) {\n newExtend.firstExtendOnThisSelectorPath = true;\n targetExtend.ruleset.paths.push(newSelector);\n }\n });\n }\n }\n }\n\n if (extendsToAdd.length) {\n // try to detect circular references to stop a stack overflow.\n // may no longer be needed.\n this.extendChainCount++;\n if (iterationCount > 100) {\n let selectorOne = '{unable to calculate}';\n let selectorTwo = '{unable to calculate}';\n try {\n selectorOne = extendsToAdd[0].selfSelectors[0].toCSS();\n selectorTwo = extendsToAdd[0].selector.toCSS();\n }\n catch (e) {}\n throw { message: `extend circular reference detected. One of the circular extends is currently:${selectorOne}:extend(${selectorTwo})`};\n }\n\n // now process the new extends on the existing rules so that we can handle a extending b extending c extending\n // d extending e...\n return extendsToAdd.concat(extendVisitor.doExtendChaining(extendsToAdd, extendsListTarget, iterationCount + 1));\n } else {\n return extendsToAdd;\n }\n }\n\n visitDeclaration(ruleNode, visitArgs) {\n visitArgs.visitDeeper = false;\n }\n\n visitMixinDefinition(mixinDefinitionNode, visitArgs) {\n visitArgs.visitDeeper = false;\n }\n\n visitSelector(selectorNode, visitArgs) {\n visitArgs.visitDeeper = false;\n }\n\n visitRuleset(rulesetNode, visitArgs) {\n if (rulesetNode.root) {\n return;\n }\n let matches;\n let pathIndex;\n let extendIndex;\n const allExtends = this.allExtendsStack[this.allExtendsStack.length - 1];\n const selectorsToAdd = [];\n const extendVisitor = this;\n let selectorPath;\n\n // look at each selector path in the ruleset, find any extend matches and then copy, find and replace\n\n for (extendIndex = 0; extendIndex < allExtends.length; extendIndex++) {\n for (pathIndex = 0; pathIndex < rulesetNode.paths.length; pathIndex++) {\n selectorPath = rulesetNode.paths[pathIndex];\n\n // extending extends happens initially, before the main pass\n if (rulesetNode.extendOnEveryPath) { continue; }\n const extendList = selectorPath[selectorPath.length - 1].extendList;\n if (extendList && extendList.length) { continue; }\n\n matches = this.findMatch(allExtends[extendIndex], selectorPath);\n\n if (matches.length) {\n allExtends[extendIndex].hasFoundMatches = true;\n\n allExtends[extendIndex].selfSelectors.forEach(selfSelector => {\n let extendedSelectors;\n extendedSelectors = extendVisitor.extendSelector(matches, selectorPath, selfSelector, allExtends[extendIndex].isVisible());\n selectorsToAdd.push(extendedSelectors);\n });\n }\n }\n }\n rulesetNode.paths = rulesetNode.paths.concat(selectorsToAdd);\n }\n\n findMatch(extend, haystackSelectorPath) {\n //\n // look through the haystack selector path to try and find the needle - extend.selector\n // returns an array of selector matches that can then be replaced\n //\n let haystackSelectorIndex;\n\n let hackstackSelector;\n let hackstackElementIndex;\n let haystackElement;\n let targetCombinator;\n let i;\n const extendVisitor = this;\n const needleElements = extend.selector.elements;\n const potentialMatches = [];\n let potentialMatch;\n const matches = [];\n\n // loop through the haystack elements\n for (haystackSelectorIndex = 0; haystackSelectorIndex < haystackSelectorPath.length; haystackSelectorIndex++) {\n hackstackSelector = haystackSelectorPath[haystackSelectorIndex];\n\n for (hackstackElementIndex = 0; hackstackElementIndex < hackstackSelector.elements.length; hackstackElementIndex++) {\n\n haystackElement = hackstackSelector.elements[hackstackElementIndex];\n\n // if we allow elements before our match we can add a potential match every time. otherwise only at the first element.\n if (extend.allowBefore || (haystackSelectorIndex === 0 && hackstackElementIndex === 0)) {\n potentialMatches.push({pathIndex: haystackSelectorIndex, index: hackstackElementIndex, matched: 0,\n initialCombinator: haystackElement.combinator});\n }\n\n for (i = 0; i < potentialMatches.length; i++) {\n potentialMatch = potentialMatches[i];\n\n // selectors add \" \" onto the first element. When we use & it joins the selectors together, but if we don't\n // then each selector in haystackSelectorPath has a space before it added in the toCSS phase. so we need to\n // work out what the resulting combinator will be\n targetCombinator = haystackElement.combinator.value;\n if (targetCombinator === '' && hackstackElementIndex === 0) {\n targetCombinator = ' ';\n }\n\n // if we don't match, null our match to indicate failure\n if (!extendVisitor.isElementValuesEqual(needleElements[potentialMatch.matched].value, haystackElement.value) ||\n (potentialMatch.matched > 0 && needleElements[potentialMatch.matched].combinator.value !== targetCombinator)) {\n potentialMatch = null;\n } else {\n potentialMatch.matched++;\n }\n\n // if we are still valid and have finished, test whether we have elements after and whether these are allowed\n if (potentialMatch) {\n potentialMatch.finished = potentialMatch.matched === needleElements.length;\n if (potentialMatch.finished &&\n (!extend.allowAfter &&\n (hackstackElementIndex + 1 < hackstackSelector.elements.length || haystackSelectorIndex + 1 < haystackSelectorPath.length))) {\n potentialMatch = null;\n }\n }\n // if null we remove, if not, we are still valid, so either push as a valid match or continue\n if (potentialMatch) {\n if (potentialMatch.finished) {\n potentialMatch.length = needleElements.length;\n potentialMatch.endPathIndex = haystackSelectorIndex;\n potentialMatch.endPathElementIndex = hackstackElementIndex + 1; // index after end of match\n potentialMatches.length = 0; // we don't allow matches to overlap, so start matching again\n matches.push(potentialMatch);\n }\n } else {\n potentialMatches.splice(i, 1);\n i--;\n }\n }\n }\n }\n return matches;\n }\n\n isElementValuesEqual(elementValue1, elementValue2) {\n if (typeof elementValue1 === 'string' || typeof elementValue2 === 'string') {\n return elementValue1 === elementValue2;\n }\n if (elementValue1 instanceof tree.Attribute) {\n if (elementValue1.op !== elementValue2.op || elementValue1.key !== elementValue2.key) {\n return false;\n }\n if (!elementValue1.value || !elementValue2.value) {\n if (elementValue1.value || elementValue2.value) {\n return false;\n }\n return true;\n }\n elementValue1 = elementValue1.value.value || elementValue1.value;\n elementValue2 = elementValue2.value.value || elementValue2.value;\n return elementValue1 === elementValue2;\n }\n elementValue1 = elementValue1.value;\n elementValue2 = elementValue2.value;\n if (elementValue1 instanceof tree.Selector) {\n if (!(elementValue2 instanceof tree.Selector) || elementValue1.elements.length !== elementValue2.elements.length) {\n return false;\n }\n for (let i = 0; i < elementValue1.elements.length; i++) {\n if (elementValue1.elements[i].combinator.value !== elementValue2.elements[i].combinator.value) {\n if (i !== 0 || (elementValue1.elements[i].combinator.value || ' ') !== (elementValue2.elements[i].combinator.value || ' ')) {\n return false;\n }\n }\n if (!this.isElementValuesEqual(elementValue1.elements[i].value, elementValue2.elements[i].value)) {\n return false;\n }\n }\n return true;\n }\n return false;\n }\n\n extendSelector(matches, selectorPath, replacementSelector, isVisible) {\n // for a set of matches, replace each match with the replacement selector\n\n let currentSelectorPathIndex = 0;\n\n let currentSelectorPathElementIndex = 0;\n let path = [];\n let matchIndex;\n let selector;\n let firstElement;\n let match;\n let newElements;\n\n for (matchIndex = 0; matchIndex < matches.length; matchIndex++) {\n match = matches[matchIndex];\n selector = selectorPath[match.pathIndex];\n firstElement = new tree.Element(\n match.initialCombinator,\n replacementSelector.elements[0].value,\n replacementSelector.elements[0].isVariable,\n replacementSelector.elements[0].getIndex(),\n replacementSelector.elements[0].fileInfo()\n );\n\n if (match.pathIndex > currentSelectorPathIndex && currentSelectorPathElementIndex > 0) {\n path[path.length - 1].elements = path[path.length - 1]\n .elements.concat(selectorPath[currentSelectorPathIndex].elements.slice(currentSelectorPathElementIndex));\n currentSelectorPathElementIndex = 0;\n currentSelectorPathIndex++;\n }\n\n newElements = selector.elements\n .slice(currentSelectorPathElementIndex, match.index)\n .concat([firstElement])\n .concat(replacementSelector.elements.slice(1));\n\n if (currentSelectorPathIndex === match.pathIndex && matchIndex > 0) {\n path[path.length - 1].elements =\n path[path.length - 1].elements.concat(newElements);\n } else {\n path = path.concat(selectorPath.slice(currentSelectorPathIndex, match.pathIndex));\n\n path.push(new tree.Selector(\n newElements\n ));\n }\n currentSelectorPathIndex = match.endPathIndex;\n currentSelectorPathElementIndex = match.endPathElementIndex;\n if (currentSelectorPathElementIndex >= selectorPath[currentSelectorPathIndex].elements.length) {\n currentSelectorPathElementIndex = 0;\n currentSelectorPathIndex++;\n }\n }\n\n if (currentSelectorPathIndex < selectorPath.length && currentSelectorPathElementIndex > 0) {\n path[path.length - 1].elements = path[path.length - 1]\n .elements.concat(selectorPath[currentSelectorPathIndex].elements.slice(currentSelectorPathElementIndex));\n currentSelectorPathIndex++;\n }\n\n path = path.concat(selectorPath.slice(currentSelectorPathIndex, selectorPath.length));\n path = path.map(currentValue => {\n // we can re-use elements here, because the visibility property matters only for selectors\n const derived = currentValue.createDerived(currentValue.elements);\n if (isVisible) {\n derived.ensureVisibility();\n } else {\n derived.ensureInvisibility();\n }\n return derived;\n });\n return path;\n }\n\n visitMedia(mediaNode, visitArgs) {\n let newAllExtends = mediaNode.allExtends.concat(this.allExtendsStack[this.allExtendsStack.length - 1]);\n newAllExtends = newAllExtends.concat(this.doExtendChaining(newAllExtends, mediaNode.allExtends));\n this.allExtendsStack.push(newAllExtends);\n }\n\n visitMediaOut(mediaNode) {\n const lastIndex = this.allExtendsStack.length - 1;\n this.allExtendsStack.length = lastIndex;\n }\n\n visitAtRule(atRuleNode, visitArgs) {\n let newAllExtends = atRuleNode.allExtends.concat(this.allExtendsStack[this.allExtendsStack.length - 1]);\n newAllExtends = newAllExtends.concat(this.doExtendChaining(newAllExtends, atRuleNode.allExtends));\n this.allExtendsStack.push(newAllExtends);\n }\n\n visitAtRuleOut(atRuleNode) {\n const lastIndex = this.allExtendsStack.length - 1;\n this.allExtendsStack.length = lastIndex;\n }\n}\n\nexport default ProcessExtendsVisitor;\n"]}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var ImportSequencer = /** @class */ (function () {
4
+ function ImportSequencer(onSequencerEmpty) {
5
+ this.imports = [];
6
+ this.variableImports = [];
7
+ this._onSequencerEmpty = onSequencerEmpty;
8
+ this._currentDepth = 0;
9
+ }
10
+ ImportSequencer.prototype.addImport = function (callback) {
11
+ var importSequencer = this;
12
+ var importItem = {
13
+ callback: callback,
14
+ args: null,
15
+ isReady: false
16
+ };
17
+ this.imports.push(importItem);
18
+ return function () {
19
+ var args = [];
20
+ for (var _i = 0; _i < arguments.length; _i++) {
21
+ args[_i] = arguments[_i];
22
+ }
23
+ importItem.args = Array.prototype.slice.call(args, 0);
24
+ importItem.isReady = true;
25
+ importSequencer.tryRun();
26
+ };
27
+ };
28
+ ImportSequencer.prototype.addVariableImport = function (callback) {
29
+ this.variableImports.push(callback);
30
+ };
31
+ ImportSequencer.prototype.tryRun = function () {
32
+ this._currentDepth++;
33
+ try {
34
+ while (true) {
35
+ while (this.imports.length > 0) {
36
+ var importItem = this.imports[0];
37
+ if (!importItem.isReady) {
38
+ return;
39
+ }
40
+ this.imports = this.imports.slice(1);
41
+ importItem.callback.apply(null, importItem.args);
42
+ }
43
+ if (this.variableImports.length === 0) {
44
+ break;
45
+ }
46
+ var variableImport = this.variableImports[0];
47
+ this.variableImports = this.variableImports.slice(1);
48
+ variableImport();
49
+ }
50
+ }
51
+ finally {
52
+ this._currentDepth--;
53
+ }
54
+ if (this._currentDepth === 0 && this._onSequencerEmpty) {
55
+ this._onSequencerEmpty();
56
+ }
57
+ };
58
+ return ImportSequencer;
59
+ }());
60
+ exports.default = ImportSequencer;
61
+ //# sourceMappingURL=import-sequencer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import-sequencer.js","sourceRoot":"","sources":["../../../src/less/visitors/import-sequencer.js"],"names":[],"mappings":";;AAAA;IACI,yBAAY,gBAAgB;QACxB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;QAC1C,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,mCAAS,GAAT,UAAU,QAAQ;QACd,IAAM,eAAe,GAAG,IAAI,CAAC;QAE7B,IAAM,UAAU,GAAG;YACf,QAAQ,UAAA;YACR,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,KAAK;SACjB,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9B,OAAO;YAAS,cAAO;iBAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;gBAAP,yBAAO;;YACnB,UAAU,CAAC,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACtD,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;YAC1B,eAAe,CAAC,MAAM,EAAE,CAAC;QAC7B,CAAC,CAAC;IACN,CAAC;IAED,2CAAiB,GAAjB,UAAkB,QAAQ;QACtB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED,gCAAM,GAAN;QACI,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI;YACA,OAAO,IAAI,EAAE;gBACT,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC5B,IAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;oBACnC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;wBACrB,OAAO;qBACV;oBACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACrC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;iBACpD;gBACD,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;oBACnC,MAAM;iBACT;gBACD,IAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;gBAC/C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACrD,cAAc,EAAE,CAAC;aACpB;SACJ;gBAAS;YACN,IAAI,CAAC,aAAa,EAAE,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,aAAa,KAAK,CAAC,IAAI,IAAI,CAAC,iBAAiB,EAAE;YACpD,IAAI,CAAC,iBAAiB,EAAE,CAAC;SAC5B;IACL,CAAC;IACL,sBAAC;AAAD,CAAC,AAvDD,IAuDC;AAED,kBAAe,eAAe,CAAC","sourcesContent":["class ImportSequencer {\n constructor(onSequencerEmpty) {\n this.imports = [];\n this.variableImports = [];\n this._onSequencerEmpty = onSequencerEmpty;\n this._currentDepth = 0;\n }\n\n addImport(callback) {\n const importSequencer = this;\n\n const importItem = {\n callback,\n args: null,\n isReady: false\n };\n\n this.imports.push(importItem);\n return function(...args) {\n importItem.args = Array.prototype.slice.call(args, 0);\n importItem.isReady = true;\n importSequencer.tryRun();\n };\n }\n\n addVariableImport(callback) {\n this.variableImports.push(callback);\n }\n\n tryRun() {\n this._currentDepth++;\n try {\n while (true) {\n while (this.imports.length > 0) {\n const importItem = this.imports[0];\n if (!importItem.isReady) {\n return;\n }\n this.imports = this.imports.slice(1);\n importItem.callback.apply(null, importItem.args);\n }\n if (this.variableImports.length === 0) {\n break;\n }\n const variableImport = this.variableImports[0];\n this.variableImports = this.variableImports.slice(1);\n variableImport();\n }\n } finally {\n this._currentDepth--;\n }\n if (this._currentDepth === 0 && this._onSequencerEmpty) {\n this._onSequencerEmpty();\n }\n }\n}\n\nexport default ImportSequencer;\n"]}