@rindo/core 1.8.12

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 (463) hide show
  1. package/LICENSE.md +27 -0
  2. package/bin/rindo +22 -0
  3. package/build-conditionals/index.d.ts +2 -0
  4. package/build-conditionals/index.mjs +66 -0
  5. package/build-conditionals/package.json +6 -0
  6. package/compiler/index.js +2 -0
  7. package/compiler/package.json +6 -0
  8. package/compiler/rindo.js +6765 -0
  9. package/dist/cli/index.js +6068 -0
  10. package/dist/client/css-shim-14a9812e.js +656 -0
  11. package/dist/client/css-shim-69821662.js +658 -0
  12. package/dist/client/declarations/rindo.core.d.ts +1347 -0
  13. package/dist/client/dom-68c8fe31.js +139 -0
  14. package/dist/client/dom-af01458a.js +137 -0
  15. package/dist/client/index.js +2937 -0
  16. package/dist/client/index.mjs +2820 -0
  17. package/dist/client/polyfills/core-js.js +10 -0
  18. package/dist/client/polyfills/css-shim.js +656 -0
  19. package/dist/client/polyfills/dom.js +146 -0
  20. package/dist/client/polyfills/es5-html-element.js +18 -0
  21. package/dist/client/polyfills/index.js +35 -0
  22. package/dist/client/polyfills/promise.js +9 -0
  23. package/dist/client/polyfills/system.js +6 -0
  24. package/dist/client/shadow-css-6ef31c68.js +386 -0
  25. package/dist/client/shadow-css-8fd1a9e4.js +388 -0
  26. package/dist/compiler/app-core/app-es5-disabled.d.ts +2 -0
  27. package/dist/compiler/app-core/app-polyfills.d.ts +3 -0
  28. package/dist/compiler/app-core/build-conditionals.d.ts +6 -0
  29. package/dist/compiler/app-core/bundle-app-core.d.ts +6 -0
  30. package/dist/compiler/app-core/component-styles.d.ts +4 -0
  31. package/dist/compiler/app-core/format-component-runtime-meta.d.ts +4 -0
  32. package/dist/compiler/app-core/optimize-module.d.ts +7 -0
  33. package/dist/compiler/browser/build-conditionals-client.d.ts +3 -0
  34. package/dist/compiler/browser/compile-options.d.ts +12 -0
  35. package/dist/compiler/browser/compile.d.ts +2 -0
  36. package/dist/compiler/browser/create-compiler.d.ts +14 -0
  37. package/dist/compiler/browser/index.d.ts +11 -0
  38. package/dist/compiler/build/build-ctx.d.ts +74 -0
  39. package/dist/compiler/build/build-finish.d.ts +3 -0
  40. package/dist/compiler/build/build-hmr.d.ts +2 -0
  41. package/dist/compiler/build/build-results.d.ts +2 -0
  42. package/dist/compiler/build/build-stats.d.ts +3 -0
  43. package/dist/compiler/build/build.d.ts +2 -0
  44. package/dist/compiler/build/cache-stats.d.ts +4 -0
  45. package/dist/compiler/build/compiler-build-id.d.ts +6 -0
  46. package/dist/compiler/build/compiler-ctx.d.ts +44 -0
  47. package/dist/compiler/build/init-index-html.d.ts +2 -0
  48. package/dist/compiler/build/validate-files.d.ts +2 -0
  49. package/dist/compiler/build/write-build.d.ts +2 -0
  50. package/dist/compiler/cache.d.ts +22 -0
  51. package/dist/compiler/compiler.d.ts +27 -0
  52. package/dist/compiler/component-hydrate/bundle-hydrate-factory.d.ts +3 -0
  53. package/dist/compiler/component-hydrate/generate-hydrate-app.d.ts +2 -0
  54. package/dist/compiler/component-hydrate/hydrate-factory-closure.d.ts +2 -0
  55. package/dist/compiler/component-hydrate/update-to-hydrate-components.d.ts +2 -0
  56. package/dist/compiler/component-hydrate/write-hydrate-outputs.d.ts +3 -0
  57. package/dist/compiler/component-lazy/generate-cjs.d.ts +3 -0
  58. package/dist/compiler/component-lazy/generate-esm-browser.d.ts +3 -0
  59. package/dist/compiler/component-lazy/generate-esm.d.ts +3 -0
  60. package/dist/compiler/component-lazy/generate-lazy-app.d.ts +3 -0
  61. package/dist/compiler/component-lazy/generate-lazy-module.d.ts +4 -0
  62. package/dist/compiler/component-lazy/generate-system.d.ts +3 -0
  63. package/dist/compiler/component-lazy/update-to-lazy-component.d.ts +2 -0
  64. package/dist/compiler/component-lazy/write-lazy-entry-module.d.ts +2 -0
  65. package/dist/compiler/component-native/update-to-native-component.d.ts +2 -0
  66. package/dist/compiler/config/config-reload.d.ts +3 -0
  67. package/dist/compiler/config/config-utils.d.ts +4 -0
  68. package/dist/compiler/config/validate-config.d.ts +4 -0
  69. package/dist/compiler/config/validate-copy.d.ts +2 -0
  70. package/dist/compiler/config/validate-dev-server.d.ts +2 -0
  71. package/dist/compiler/config/validate-docs.d.ts +2 -0
  72. package/dist/compiler/config/validate-namespace.d.ts +3 -0
  73. package/dist/compiler/config/validate-output-stats.d.ts +2 -0
  74. package/dist/compiler/config/validate-outputs-angular.d.ts +2 -0
  75. package/dist/compiler/config/validate-outputs-custom.d.ts +2 -0
  76. package/dist/compiler/config/validate-outputs-dist-module.d.ts +2 -0
  77. package/dist/compiler/config/validate-outputs-dist.d.ts +2 -0
  78. package/dist/compiler/config/validate-outputs-hydrate-script.d.ts +2 -0
  79. package/dist/compiler/config/validate-outputs-www.d.ts +2 -0
  80. package/dist/compiler/config/validate-outputs.d.ts +2 -0
  81. package/dist/compiler/config/validate-paths.d.ts +2 -0
  82. package/dist/compiler/config/validate-plugins.d.ts +2 -0
  83. package/dist/compiler/config/validate-prerender.d.ts +2 -0
  84. package/dist/compiler/config/validate-rollup-config.d.ts +2 -0
  85. package/dist/compiler/config/validate-service-worker.d.ts +2 -0
  86. package/dist/compiler/config/validate-testing.d.ts +2 -0
  87. package/dist/compiler/config/validate-workers.d.ts +2 -0
  88. package/dist/compiler/copy/assets-copy-tasks.d.ts +3 -0
  89. package/dist/compiler/copy/hashed-copy.d.ts +2 -0
  90. package/dist/compiler/copy/local-copy-tasks.d.ts +3 -0
  91. package/dist/compiler/docs/constants.d.ts +2 -0
  92. package/dist/compiler/docs/custom/index.d.ts +2 -0
  93. package/dist/compiler/docs/docs.d.ts +2 -0
  94. package/dist/compiler/docs/generate-doc-data.d.ts +3 -0
  95. package/dist/compiler/docs/json/index.d.ts +3 -0
  96. package/dist/compiler/docs/readme/docs-util.d.ts +13 -0
  97. package/dist/compiler/docs/readme/index.d.ts +3 -0
  98. package/dist/compiler/docs/readme/markdown-css-props.d.ts +2 -0
  99. package/dist/compiler/docs/readme/markdown-dependencies.d.ts +2 -0
  100. package/dist/compiler/docs/readme/markdown-events.d.ts +2 -0
  101. package/dist/compiler/docs/readme/markdown-methods.d.ts +2 -0
  102. package/dist/compiler/docs/readme/markdown-props.d.ts +2 -0
  103. package/dist/compiler/docs/readme/markdown-slots.d.ts +2 -0
  104. package/dist/compiler/docs/readme/markdown-usage.d.ts +6 -0
  105. package/dist/compiler/docs/readme/output-docs.d.ts +3 -0
  106. package/dist/compiler/docs/style-docs.d.ts +2 -0
  107. package/dist/compiler/docs/vscode/index.d.ts +2 -0
  108. package/dist/compiler/entries/component-bundles.d.ts +3 -0
  109. package/dist/compiler/entries/component-graph.d.ts +2 -0
  110. package/dist/compiler/entries/default-bundles.d.ts +3 -0
  111. package/dist/compiler/entries/entry-modules.d.ts +6 -0
  112. package/dist/compiler/entries/resolve-component-dependencies.d.ts +2 -0
  113. package/dist/compiler/events.d.ts +15 -0
  114. package/dist/compiler/fs-watch/fs-watch-init.d.ts +2 -0
  115. package/dist/compiler/fs-watch/fs-watch-log.d.ts +2 -0
  116. package/dist/compiler/fs-watch/fs-watch-rebuild.d.ts +7 -0
  117. package/dist/compiler/html/inject-module-preloads.d.ts +3 -0
  118. package/dist/compiler/html/inject-sw-script.d.ts +4 -0
  119. package/dist/compiler/html/inline-esm-import.d.ts +2 -0
  120. package/dist/compiler/html/inline-style-sheets.d.ts +2 -0
  121. package/dist/compiler/html/update-global-styles-link.d.ts +2 -0
  122. package/dist/compiler/html/used-components.d.ts +2 -0
  123. package/dist/compiler/html/utils.d.ts +2 -0
  124. package/dist/compiler/html/validate-manifest-json.d.ts +2 -0
  125. package/dist/compiler/index.d.ts +10 -0
  126. package/dist/compiler/index.js +18008 -0
  127. package/dist/compiler/output-targets/empty-dir.d.ts +6 -0
  128. package/dist/compiler/output-targets/index.d.ts +2 -0
  129. package/dist/compiler/output-targets/output-angular.d.ts +4 -0
  130. package/dist/compiler/output-targets/output-app.d.ts +4 -0
  131. package/dist/compiler/output-targets/output-collection.d.ts +3 -0
  132. package/dist/compiler/output-targets/output-copy.d.ts +2 -0
  133. package/dist/compiler/output-targets/output-custom.d.ts +2 -0
  134. package/dist/compiler/output-targets/output-docs.d.ts +2 -0
  135. package/dist/compiler/output-targets/output-hydrate.d.ts +2 -0
  136. package/dist/compiler/output-targets/output-lazy-loader.d.ts +2 -0
  137. package/dist/compiler/output-targets/output-module.d.ts +4 -0
  138. package/dist/compiler/output-targets/output-prerender.d.ts +2 -0
  139. package/dist/compiler/output-targets/output-service-workers.d.ts +2 -0
  140. package/dist/compiler/output-targets/output-types.d.ts +2 -0
  141. package/dist/compiler/output-targets/output-utils.d.ts +54 -0
  142. package/dist/compiler/output-targets/output-www.d.ts +2 -0
  143. package/dist/compiler/plugin/plugin.d.ts +6 -0
  144. package/dist/compiler/polyfills.d.ts +0 -0
  145. package/dist/compiler/prerender/crawl-urls.d.ts +3 -0
  146. package/dist/compiler/prerender/host-config.d.ts +12 -0
  147. package/dist/compiler/prerender/prerender-config.d.ts +2 -0
  148. package/dist/compiler/prerender/prerender-main.d.ts +2 -0
  149. package/dist/compiler/prerender/prerender-queue.d.ts +3 -0
  150. package/dist/compiler/prerender/prerender-template-html.d.ts +2 -0
  151. package/dist/compiler/prerender/prerendered-write-path.d.ts +2 -0
  152. package/dist/compiler/prerender/robots-txt.d.ts +2 -0
  153. package/dist/compiler/prerender/sitemap-xml.d.ts +3 -0
  154. package/dist/compiler/rollup-plugins/component-entry.d.ts +3 -0
  155. package/dist/compiler/rollup-plugins/css-transformer.d.ts +3 -0
  156. package/dist/compiler/rollup-plugins/global-scripts.d.ts +4 -0
  157. package/dist/compiler/rollup-plugins/image-plugin.d.ts +3 -0
  158. package/dist/compiler/rollup-plugins/in-memory-fs-read.d.ts +3 -0
  159. package/dist/compiler/rollup-plugins/loader.d.ts +4 -0
  160. package/dist/compiler/rollup-plugins/plugin-helper.d.ts +5 -0
  161. package/dist/compiler/rollup-plugins/rindo-build-conditionals.d.ts +7 -0
  162. package/dist/compiler/rollup-plugins/rindo-client.d.ts +3 -0
  163. package/dist/compiler/rollup-plugins/rindo-external-runtime.d.ts +2 -0
  164. package/dist/compiler/rollup-plugins/rindo-hydrate.d.ts +3 -0
  165. package/dist/compiler/rollup-plugins/rindo-public-plugin.d.ts +2 -0
  166. package/dist/compiler/service-worker/generate-sw.d.ts +7 -0
  167. package/dist/compiler/service-worker/service-worker-util.d.ts +2 -0
  168. package/dist/compiler/style/cached-styles.d.ts +5 -0
  169. package/dist/compiler/style/component-styles.d.ts +2 -0
  170. package/dist/compiler/style/css-imports.d.ts +9 -0
  171. package/dist/compiler/style/css-to-esm.d.ts +5 -0
  172. package/dist/compiler/style/generate-styles.d.ts +2 -0
  173. package/dist/compiler/style/global-styles.d.ts +3 -0
  174. package/dist/compiler/style/normalize-styles.d.ts +2 -0
  175. package/dist/compiler/style/optimize-css.d.ts +2 -0
  176. package/dist/compiler/style/scope-css.d.ts +3 -0
  177. package/dist/compiler/style/style-utils.d.ts +10 -0
  178. package/dist/compiler/transformers/add-component-meta-proxy.d.ts +3 -0
  179. package/dist/compiler/transformers/add-component-meta-static.d.ts +4 -0
  180. package/dist/compiler/transformers/add-imports.d.ts +3 -0
  181. package/dist/compiler/transformers/collections/add-external-import.d.ts +2 -0
  182. package/dist/compiler/transformers/collections/parse-collection-components.d.ts +2 -0
  183. package/dist/compiler/transformers/collections/parse-collection-deprecated.d.ts +2 -0
  184. package/dist/compiler/transformers/collections/parse-collection-manifest.d.ts +7 -0
  185. package/dist/compiler/transformers/collections/parse-collection-module.d.ts +2 -0
  186. package/dist/compiler/transformers/component-build-conditionals.d.ts +2 -0
  187. package/dist/compiler/transformers/component-hydrate/hydrate-component.d.ts +3 -0
  188. package/dist/compiler/transformers/component-hydrate/hydrate-runtime-cmp-meta.d.ts +3 -0
  189. package/dist/compiler/transformers/component-hydrate/tranform-to-hydrate-component.d.ts +2 -0
  190. package/dist/compiler/transformers/component-lazy/lazy-component.d.ts +3 -0
  191. package/dist/compiler/transformers/component-lazy/lazy-constructor.d.ts +3 -0
  192. package/dist/compiler/transformers/component-lazy/lazy-element-getter.d.ts +3 -0
  193. package/dist/compiler/transformers/component-lazy/transform-lazy-component.d.ts +4 -0
  194. package/dist/compiler/transformers/component-native/native-component.d.ts +3 -0
  195. package/dist/compiler/transformers/component-native/native-connected-callback.d.ts +3 -0
  196. package/dist/compiler/transformers/component-native/native-constructor.d.ts +3 -0
  197. package/dist/compiler/transformers/component-native/native-element-getter.d.ts +3 -0
  198. package/dist/compiler/transformers/component-native/native-static-style.d.ts +3 -0
  199. package/dist/compiler/transformers/component-native/tranform-to-native-component.d.ts +4 -0
  200. package/dist/compiler/transformers/core-runtime-apis.d.ts +30 -0
  201. package/dist/compiler/transformers/create-event.d.ts +3 -0
  202. package/dist/compiler/transformers/decorators-to-static/component-decorator.d.ts +3 -0
  203. package/dist/compiler/transformers/decorators-to-static/convert-decorators.d.ts +3 -0
  204. package/dist/compiler/transformers/decorators-to-static/decorator-utils.d.ts +10 -0
  205. package/dist/compiler/transformers/decorators-to-static/element-decorator.d.ts +3 -0
  206. package/dist/compiler/transformers/decorators-to-static/event-decorator.d.ts +4 -0
  207. package/dist/compiler/transformers/decorators-to-static/listen-decorator.d.ts +6 -0
  208. package/dist/compiler/transformers/decorators-to-static/method-decorator.d.ts +3 -0
  209. package/dist/compiler/transformers/decorators-to-static/prop-decorator.d.ts +4 -0
  210. package/dist/compiler/transformers/decorators-to-static/state-decorator.d.ts +3 -0
  211. package/dist/compiler/transformers/decorators-to-static/style-to-static.d.ts +3 -0
  212. package/dist/compiler/transformers/decorators-to-static/watch-decorator.d.ts +3 -0
  213. package/dist/compiler/transformers/define-custom-element.d.ts +3 -0
  214. package/dist/compiler/transformers/host-data-transform.d.ts +3 -0
  215. package/dist/compiler/transformers/legacy-props.d.ts +3 -0
  216. package/dist/compiler/transformers/remove-static-meta-properties.d.ts +2 -0
  217. package/dist/compiler/transformers/reserved-public-members.d.ts +3 -0
  218. package/dist/compiler/transformers/rindo-import-path.d.ts +3 -0
  219. package/dist/compiler/transformers/static-to-meta/call-expression.d.ts +3 -0
  220. package/dist/compiler/transformers/static-to-meta/class-methods.d.ts +3 -0
  221. package/dist/compiler/transformers/static-to-meta/component.d.ts +3 -0
  222. package/dist/compiler/transformers/static-to-meta/element-ref.d.ts +2 -0
  223. package/dist/compiler/transformers/static-to-meta/encapsulation.d.ts +3 -0
  224. package/dist/compiler/transformers/static-to-meta/events.d.ts +3 -0
  225. package/dist/compiler/transformers/static-to-meta/import.d.ts +3 -0
  226. package/dist/compiler/transformers/static-to-meta/listeners.d.ts +3 -0
  227. package/dist/compiler/transformers/static-to-meta/methods.d.ts +3 -0
  228. package/dist/compiler/transformers/static-to-meta/props.d.ts +3 -0
  229. package/dist/compiler/transformers/static-to-meta/states.d.ts +3 -0
  230. package/dist/compiler/transformers/static-to-meta/string-literal.d.ts +3 -0
  231. package/dist/compiler/transformers/static-to-meta/styles.d.ts +3 -0
  232. package/dist/compiler/transformers/static-to-meta/vdom.d.ts +3 -0
  233. package/dist/compiler/transformers/static-to-meta/visitor.d.ts +3 -0
  234. package/dist/compiler/transformers/static-to-meta/watchers.d.ts +3 -0
  235. package/dist/compiler/transformers/style-imports.d.ts +3 -0
  236. package/dist/compiler/transformers/transform-utils.d.ts +31 -0
  237. package/dist/compiler/transformers/update-component-class.d.ts +3 -0
  238. package/dist/compiler/transformers/update-rindo-core-import.d.ts +3 -0
  239. package/dist/compiler/transformers/watcher-meta-transform.d.ts +3 -0
  240. package/dist/compiler/transpile/compiler-options.d.ts +4 -0
  241. package/dist/compiler/transpile/transpile-app.d.ts +2 -0
  242. package/dist/compiler/transpile/transpile-module.d.ts +5 -0
  243. package/dist/compiler/transpile/transpile-service.d.ts +3 -0
  244. package/dist/compiler/transpile/transpile-to-es5-main.d.ts +2 -0
  245. package/dist/compiler/transpile/validate-types-main.d.ts +2 -0
  246. package/dist/compiler/types/generate-app-types.d.ts +2 -0
  247. package/dist/compiler/types/generate-component-types.d.ts +8 -0
  248. package/dist/compiler/types/generate-event-types.d.ts +2 -0
  249. package/dist/compiler/types/generate-method-types.d.ts +2 -0
  250. package/dist/compiler/types/generate-prop-types.d.ts +2 -0
  251. package/dist/compiler/types/generate-types.d.ts +2 -0
  252. package/dist/compiler/types/rindo-types.d.ts +3 -0
  253. package/dist/compiler/types/types-utils.d.ts +4 -0
  254. package/dist/compiler/types/update-import-refs.d.ts +11 -0
  255. package/dist/compiler/types/validate-package-json.d.ts +9 -0
  256. package/dist/declarations/assets.d.ts +17 -0
  257. package/dist/declarations/browser-compile.d.ts +47 -0
  258. package/dist/declarations/build-conditionals.d.ts +91 -0
  259. package/dist/declarations/build-events.d.ts +19 -0
  260. package/dist/declarations/build.d.ts +247 -0
  261. package/dist/declarations/cache.d.ts +11 -0
  262. package/dist/declarations/collection-manifest.d.ts +106 -0
  263. package/dist/declarations/collection.d.ts +139 -0
  264. package/dist/declarations/compiler.d.ts +53 -0
  265. package/dist/declarations/component-compiler-meta.d.ts +198 -0
  266. package/dist/declarations/component-constructor.d.ts +61 -0
  267. package/dist/declarations/component-interfaces.d.ts +123 -0
  268. package/dist/declarations/config.d.ts +409 -0
  269. package/dist/declarations/css-var-shim.d.ts +9 -0
  270. package/dist/declarations/decorators.d.ts +150 -0
  271. package/dist/declarations/dev-server.d.ts +135 -0
  272. package/dist/declarations/diagnostics.d.ts +21 -0
  273. package/dist/declarations/docs.d.ts +101 -0
  274. package/dist/declarations/entry.d.ts +28 -0
  275. package/dist/declarations/events.d.ts +13 -0
  276. package/dist/declarations/file-system.d.ts +91 -0
  277. package/dist/declarations/fs-watch.d.ts +15 -0
  278. package/dist/declarations/host-element.d.ts +53 -0
  279. package/dist/declarations/hydrate.d.ts +99 -0
  280. package/dist/declarations/in-memory-fs.d.ts +59 -0
  281. package/dist/declarations/index.d.ts +45 -0
  282. package/dist/declarations/jsdoc.d.ts +16 -0
  283. package/dist/declarations/jsx.d.ts +1050 -0
  284. package/dist/declarations/logger.d.ts +25 -0
  285. package/dist/declarations/minify-js.d.ts +11 -0
  286. package/dist/declarations/module.d.ts +35 -0
  287. package/dist/declarations/optimize-css.d.ts +12 -0
  288. package/dist/declarations/output-targets.d.ts +189 -0
  289. package/dist/declarations/plugin.d.ts +23 -0
  290. package/dist/declarations/prerender.d.ts +79 -0
  291. package/dist/declarations/render.d.ts +62 -0
  292. package/dist/declarations/runtime.d.ts +92 -0
  293. package/dist/declarations/screenshots.d.ts +192 -0
  294. package/dist/declarations/server.d.ts +19 -0
  295. package/dist/declarations/style.d.ts +35 -0
  296. package/dist/declarations/system.d.ts +174 -0
  297. package/dist/declarations/testing.d.ts +523 -0
  298. package/dist/declarations/transpile.d.ts +24 -0
  299. package/dist/declarations/types.d.ts +24 -0
  300. package/dist/declarations/vdom.d.ts +55 -0
  301. package/dist/declarations/worker.d.ts +33 -0
  302. package/dist/dev-server/content-type-db.json +1 -0
  303. package/dist/dev-server/index.js +887 -0
  304. package/dist/dev-server/static/app-error.css +257 -0
  305. package/dist/dev-server/static/dev-server-client.html +13 -0
  306. package/dist/dev-server/static/favicon.ico +0 -0
  307. package/dist/dev-server/templates/directory-index.html +132 -0
  308. package/dist/dev-server/templates/initial-load.html +160 -0
  309. package/dist/hydrate/index.d.ts +101 -0
  310. package/dist/hydrate/index.mjs +1281 -0
  311. package/dist/hydrate/platform.mjs +347 -0
  312. package/dist/index.d.ts +99 -0
  313. package/dist/index.js +1 -0
  314. package/dist/mock-doc/index.d.ts +851 -0
  315. package/dist/mock-doc/index.js +3982 -0
  316. package/dist/mock-doc/index.mjs +3954 -0
  317. package/dist/runtime/index.js +2576 -0
  318. package/dist/runtime/index.mjs +2521 -0
  319. package/dist/runtime/shadow-css-6ef31c68.js +386 -0
  320. package/dist/runtime/shadow-css-8fd1a9e4.js +388 -0
  321. package/dist/screenshot/connector-base.d.ts +42 -0
  322. package/dist/screenshot/connector-local.d.ts +7 -0
  323. package/dist/screenshot/index.d.ts +3 -0
  324. package/dist/screenshot/index.js +520 -0
  325. package/dist/screenshot/pixel-match.d.ts +1 -0
  326. package/dist/screenshot/screenshot-fs.d.ts +15 -0
  327. package/dist/sys/node/graceful-fs.js +975 -0
  328. package/dist/sys/node/index.js +33545 -0
  329. package/dist/sys/node/node-fetch.js +1779 -0
  330. package/dist/sys/node/open-in-editor.js +734 -0
  331. package/dist/sys/node/sys-worker.js +67035 -0
  332. package/dist/sys/node/visualstudio.vbs +82 -0
  333. package/dist/sys/node/websocket.js +3728 -0
  334. package/dist/sys/node/xdg-open +1066 -0
  335. package/dist/testing/build-conditionals.d.ts +4 -0
  336. package/dist/testing/build-conditionals.js +43 -0
  337. package/dist/testing/core.d.ts +35 -0
  338. package/dist/testing/core.js +52 -0
  339. package/dist/testing/index.d.ts +13 -0
  340. package/dist/testing/index.js +40511 -0
  341. package/dist/testing/jest/jest-config.d.ts +4 -0
  342. package/dist/testing/jest/jest-environment.d.ts +12 -0
  343. package/dist/testing/jest/jest-preprocessor.d.ts +10 -0
  344. package/dist/testing/jest/jest-runner.d.ts +5 -0
  345. package/dist/testing/jest/jest-screenshot.d.ts +2 -0
  346. package/dist/testing/jest/jest-serializer.d.ts +5 -0
  347. package/dist/testing/jest/jest-setup-test-framework.d.ts +1 -0
  348. package/dist/testing/matchers/attributes.d.ts +14 -0
  349. package/dist/testing/matchers/class-list.d.ts +12 -0
  350. package/dist/testing/matchers/events.d.ts +13 -0
  351. package/dist/testing/matchers/html.d.ts +12 -0
  352. package/dist/testing/matchers/index.d.ts +21 -0
  353. package/dist/testing/matchers/screenshot.d.ts +5 -0
  354. package/dist/testing/matchers/text.d.ts +4 -0
  355. package/dist/testing/mock-fetch.d.ts +46 -0
  356. package/dist/testing/mocks.d.ts +12 -0
  357. package/dist/testing/platform.d.ts +23 -0
  358. package/dist/testing/platform.js +321 -0
  359. package/dist/testing/puppeteer/puppeteer-browser.d.ts +6 -0
  360. package/dist/testing/puppeteer/puppeteer-declarations.d.ts +396 -0
  361. package/dist/testing/puppeteer/puppeteer-element.d.ts +65 -0
  362. package/dist/testing/puppeteer/puppeteer-emulate.d.ts +2 -0
  363. package/dist/testing/puppeteer/puppeteer-events.d.ts +21 -0
  364. package/dist/testing/puppeteer/puppeteer-find.d.ts +5 -0
  365. package/dist/testing/puppeteer/puppeteer-page.d.ts +2 -0
  366. package/dist/testing/puppeteer/puppeteer-screenshot.d.ts +4 -0
  367. package/dist/testing/spec-page.d.ts +5 -0
  368. package/dist/testing/task-queue.d.ts +15 -0
  369. package/dist/testing/test-transpile.d.ts +5 -0
  370. package/dist/testing/testing-fs.d.ts +31 -0
  371. package/dist/testing/testing-logger.d.ts +23 -0
  372. package/dist/testing/testing-sys.d.ts +19 -0
  373. package/dist/testing/testing-utils.d.ts +5 -0
  374. package/dist/testing/testing.d.ts +12 -0
  375. package/dist/utils/index.js +1575 -0
  376. package/dist/utils/index.mjs +1511 -0
  377. package/internal/client/build-conditionals.mjs +82 -0
  378. package/internal/client/css-shim.rindo-client.mjs +656 -0
  379. package/internal/client/dom.rindo-client.mjs +137 -0
  380. package/internal/client/index.mjs +2859 -0
  381. package/internal/client/polyfills/core-js.js +10 -0
  382. package/internal/client/polyfills/css-shim.js +656 -0
  383. package/internal/client/polyfills/dom.js +146 -0
  384. package/internal/client/polyfills/es5-html-element.js +18 -0
  385. package/internal/client/polyfills/index.js +35 -0
  386. package/internal/client/polyfills/promise.js +9 -0
  387. package/internal/client/polyfills/system.js +6 -0
  388. package/internal/client/shadow-css.rindo-client.mjs +386 -0
  389. package/internal/images.d.ts +5 -0
  390. package/internal/index.d.ts +18 -0
  391. package/internal/index.js +1 -0
  392. package/internal/package.json +6 -0
  393. package/mock-doc/index.js +2 -0
  394. package/mock-doc/package.json +10 -0
  395. package/package.json +186 -0
  396. package/readme.md +174 -0
  397. package/runtime/package.json +5 -0
  398. package/screenshot/compare/assets/favicon.ico +0 -0
  399. package/screenshot/compare/assets/logo.png +0 -0
  400. package/screenshot/compare/build/app.css +1 -0
  401. package/screenshot/compare/build/app.esm.js +1 -0
  402. package/screenshot/compare/build/app.js +818 -0
  403. package/screenshot/compare/build/p-020f8d73.js +1 -0
  404. package/screenshot/compare/build/p-09qdknbg.system.entry.js +1 -0
  405. package/screenshot/compare/build/p-0a13mpsc.system.entry.js +1 -0
  406. package/screenshot/compare/build/p-113f7459.js +1 -0
  407. package/screenshot/compare/build/p-168ec2c4.system.js +1 -0
  408. package/screenshot/compare/build/p-2ab1fdf1.system.js +1 -0
  409. package/screenshot/compare/build/p-2pxcsgrj.entry.js +1 -0
  410. package/screenshot/compare/build/p-42fb7034.system.js +1 -0
  411. package/screenshot/compare/build/p-54d9d7c2.system.js +1 -0
  412. package/screenshot/compare/build/p-67c1f911.js +1 -0
  413. package/screenshot/compare/build/p-68613371.system.js +1 -0
  414. package/screenshot/compare/build/p-7dvsjpu0.entry.js +1 -0
  415. package/screenshot/compare/build/p-aa67fb06.js +1 -0
  416. package/screenshot/compare/build/p-aeb3cec1.system.js +1 -0
  417. package/screenshot/compare/build/p-b6e44a24.js +1 -0
  418. package/screenshot/compare/build/p-c1c25b8a.js +1 -0
  419. package/screenshot/compare/build/p-c9bopbjy.system.entry.js +1 -0
  420. package/screenshot/compare/build/p-c9iqz1pp.system.entry.js +1 -0
  421. package/screenshot/compare/build/p-dizjz8rg.entry.js +1 -0
  422. package/screenshot/compare/build/p-dnta0rwp.system.entry.js +1 -0
  423. package/screenshot/compare/build/p-e9670d22.system.js +1 -0
  424. package/screenshot/compare/build/p-efb0eac6.js +1 -0
  425. package/screenshot/compare/build/p-ei9jkpd0.system.entry.js +1 -0
  426. package/screenshot/compare/build/p-ejpsp3kx.js +1 -0
  427. package/screenshot/compare/build/p-ejwcppol.entry.js +1 -0
  428. package/screenshot/compare/build/p-f6612d5d.system.js +1 -0
  429. package/screenshot/compare/build/p-foiivsfc.css +1 -0
  430. package/screenshot/compare/build/p-gpjjyogx.entry.js +1 -0
  431. package/screenshot/compare/build/p-howklem2.system.entry.js +1 -0
  432. package/screenshot/compare/build/p-knv9wvoc.entry.js +1 -0
  433. package/screenshot/compare/build/p-nsqsfhhy.entry.js +1 -0
  434. package/screenshot/compare/build/p-ojt278pp.entry.js +1 -0
  435. package/screenshot/compare/build/p-oywass99.entry.js +1 -0
  436. package/screenshot/compare/build/p-q3ujhub6.entry.js +1 -0
  437. package/screenshot/compare/build/p-qw4xnmxv.entry.js +1 -0
  438. package/screenshot/compare/build/p-t1wvevhc.system.entry.js +1 -0
  439. package/screenshot/compare/build/p-tnjarrex.system.entry.js +1 -0
  440. package/screenshot/compare/build/p-vhfpd6kk.system.entry.js +1 -0
  441. package/screenshot/compare/build/p-vk6rhemd.system.entry.js +1 -0
  442. package/screenshot/compare/build/p-w6bnm16k.entry.js +1 -0
  443. package/screenshot/compare/build/p-xje6d7zl.system.entry.js +1 -0
  444. package/screenshot/compare/build/p-y5jlrcha.system.entry.js +1 -0
  445. package/screenshot/compare/build/p-yh170wkt.entry.js +1 -0
  446. package/screenshot/compare/host.config.json +15 -0
  447. package/screenshot/compare/index.html +1 -0
  448. package/screenshot/compare/manifest.json +13 -0
  449. package/screenshot/connector.js +3 -0
  450. package/screenshot/index.js +2 -0
  451. package/screenshot/local-connector.js +3 -0
  452. package/screenshot/package.json +13 -0
  453. package/screenshot/pixel-match.js +2660 -0
  454. package/sys/node/index.js +2 -0
  455. package/sys/node/package.json +5 -0
  456. package/testing/index.js +2 -0
  457. package/testing/jest-environment.js +3 -0
  458. package/testing/jest-preprocessor.js +3 -0
  459. package/testing/jest-preset.js +40 -0
  460. package/testing/jest-runner.js +3 -0
  461. package/testing/jest-setuptestframework.js +3 -0
  462. package/testing/jest.preprocessor.js +7 -0
  463. package/testing/package.json +6 -0
@@ -0,0 +1,386 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google Inc. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ *
8
+ * This file is a port of shadowCSS from webcomponents.js to TypeScript.
9
+ * https://github.com/webcomponents/webcomponentsjs/blob/4efecd7e0e/src/ShadowCSS/ShadowCSS.js
10
+ * https://github.com/angular/angular/blob/master/packages/compiler/src/shadow_css.ts
11
+ */
12
+ const safeSelector = (selector) => {
13
+ const placeholders = [];
14
+ let index = 0;
15
+ let content;
16
+ // Replaces attribute selectors with placeholders.
17
+ // The WS in [attr="va lue"] would otherwise be interpreted as a selector separator.
18
+ selector = selector.replace(/(\[[^\]]*\])/g, (_, keep) => {
19
+ const replaceBy = `__ph-${index}__`;
20
+ placeholders.push(keep);
21
+ index++;
22
+ return replaceBy;
23
+ });
24
+ // Replaces the expression in `:nth-child(2n + 1)` with a placeholder.
25
+ // WS and "+" would otherwise be interpreted as selector separators.
26
+ content = selector.replace(/(:nth-[-\w]+)(\([^)]+\))/g, (_, pseudo, exp) => {
27
+ const replaceBy = `__ph-${index}__`;
28
+ placeholders.push(exp);
29
+ index++;
30
+ return pseudo + replaceBy;
31
+ });
32
+ const ss = {
33
+ content,
34
+ placeholders,
35
+ };
36
+ return ss;
37
+ };
38
+ const restoreSafeSelector = (placeholders, content) => {
39
+ return content.replace(/__ph-(\d+)__/g, (_, index) => placeholders[+index]);
40
+ };
41
+ const _polyfillHost = '-shadowcsshost';
42
+ const _polyfillSlotted = '-shadowcssslotted';
43
+ // note: :host-context pre-processed to -shadowcsshostcontext.
44
+ const _polyfillHostContext = '-shadowcsscontext';
45
+ const _parenSuffix = ')(?:\\((' +
46
+ '(?:\\([^)(]*\\)|[^)(]*)+?' +
47
+ ')\\))?([^,{]*)';
48
+ const _cssColonHostRe = new RegExp('(' + _polyfillHost + _parenSuffix, 'gim');
49
+ const _cssColonHostContextRe = new RegExp('(' + _polyfillHostContext + _parenSuffix, 'gim');
50
+ const _cssColonSlottedRe = new RegExp('(' + _polyfillSlotted + _parenSuffix, 'gim');
51
+ const _polyfillHostNoCombinator = _polyfillHost + '-no-combinator';
52
+ const _polyfillHostNoCombinatorRe = /-shadowcsshost-no-combinator([^\s]*)/;
53
+ const _shadowDOMSelectorsRe = [
54
+ /::shadow/g,
55
+ /::content/g
56
+ ];
57
+ const _selectorReSuffix = '([>\\s~+\[.,{:][\\s\\S]*)?$';
58
+ const _polyfillHostRe = /-shadowcsshost/gim;
59
+ const _colonHostRe = /:host/gim;
60
+ const _colonSlottedRe = /::slotted/gim;
61
+ const _colonHostContextRe = /:host-context/gim;
62
+ const _commentRe = /\/\*\s*[\s\S]*?\*\//g;
63
+ const stripComments = (input) => {
64
+ return input.replace(_commentRe, '');
65
+ };
66
+ const _commentWithHashRe = /\/\*\s*#\s*source(Mapping)?URL=[\s\S]+?\*\//g;
67
+ const extractCommentsWithHash = (input) => {
68
+ return input.match(_commentWithHashRe) || [];
69
+ };
70
+ const _ruleRe = /(\s*)([^;\{\}]+?)(\s*)((?:{%BLOCK%}?\s*;?)|(?:\s*;))/g;
71
+ const _curlyRe = /([{}])/g;
72
+ const OPEN_CURLY = '{';
73
+ const CLOSE_CURLY = '}';
74
+ const BLOCK_PLACEHOLDER = '%BLOCK%';
75
+ const processRules = (input, ruleCallback) => {
76
+ const inputWithEscapedBlocks = escapeBlocks(input);
77
+ let nextBlockIndex = 0;
78
+ return inputWithEscapedBlocks.escapedString.replace(_ruleRe, (...m) => {
79
+ const selector = m[2];
80
+ let content = '';
81
+ let suffix = m[4];
82
+ let contentPrefix = '';
83
+ if (suffix && suffix.startsWith('{' + BLOCK_PLACEHOLDER)) {
84
+ content = inputWithEscapedBlocks.blocks[nextBlockIndex++];
85
+ suffix = suffix.substring(BLOCK_PLACEHOLDER.length + 1);
86
+ contentPrefix = '{';
87
+ }
88
+ const cssRule = {
89
+ selector,
90
+ content
91
+ };
92
+ const rule = ruleCallback(cssRule);
93
+ return `${m[1]}${rule.selector}${m[3]}${contentPrefix}${rule.content}${suffix}`;
94
+ });
95
+ };
96
+ const escapeBlocks = (input) => {
97
+ const inputParts = input.split(_curlyRe);
98
+ const resultParts = [];
99
+ const escapedBlocks = [];
100
+ let bracketCount = 0;
101
+ let currentBlockParts = [];
102
+ for (let partIndex = 0; partIndex < inputParts.length; partIndex++) {
103
+ const part = inputParts[partIndex];
104
+ if (part === CLOSE_CURLY) {
105
+ bracketCount--;
106
+ }
107
+ if (bracketCount > 0) {
108
+ currentBlockParts.push(part);
109
+ }
110
+ else {
111
+ if (currentBlockParts.length > 0) {
112
+ escapedBlocks.push(currentBlockParts.join(''));
113
+ resultParts.push(BLOCK_PLACEHOLDER);
114
+ currentBlockParts = [];
115
+ }
116
+ resultParts.push(part);
117
+ }
118
+ if (part === OPEN_CURLY) {
119
+ bracketCount++;
120
+ }
121
+ }
122
+ if (currentBlockParts.length > 0) {
123
+ escapedBlocks.push(currentBlockParts.join(''));
124
+ resultParts.push(BLOCK_PLACEHOLDER);
125
+ }
126
+ const strEscapedBlocks = {
127
+ escapedString: resultParts.join(''),
128
+ blocks: escapedBlocks
129
+ };
130
+ return strEscapedBlocks;
131
+ };
132
+ const insertPolyfillHostInCssText = (selector) => {
133
+ selector = selector
134
+ .replace(_colonHostContextRe, _polyfillHostContext)
135
+ .replace(_colonHostRe, _polyfillHost)
136
+ .replace(_colonSlottedRe, _polyfillSlotted);
137
+ return selector;
138
+ };
139
+ const convertColonRule = (cssText, regExp, partReplacer) => {
140
+ // m[1] = :host(-context), m[2] = contents of (), m[3] rest of rule
141
+ return cssText.replace(regExp, (...m) => {
142
+ if (m[2]) {
143
+ const parts = m[2].split(',');
144
+ const r = [];
145
+ for (let i = 0; i < parts.length; i++) {
146
+ const p = parts[i].trim();
147
+ if (!p)
148
+ break;
149
+ r.push(partReplacer(_polyfillHostNoCombinator, p, m[3]));
150
+ }
151
+ return r.join(',');
152
+ }
153
+ else {
154
+ return _polyfillHostNoCombinator + m[3];
155
+ }
156
+ });
157
+ };
158
+ const colonHostPartReplacer = (host, part, suffix) => {
159
+ return host + part.replace(_polyfillHost, '') + suffix;
160
+ };
161
+ const convertColonHost = (cssText) => {
162
+ return convertColonRule(cssText, _cssColonHostRe, colonHostPartReplacer);
163
+ };
164
+ const colonHostContextPartReplacer = (host, part, suffix) => {
165
+ if (part.indexOf(_polyfillHost) > -1) {
166
+ return colonHostPartReplacer(host, part, suffix);
167
+ }
168
+ else {
169
+ return host + part + suffix + ', ' + part + ' ' + host + suffix;
170
+ }
171
+ };
172
+ const convertColonSlotted = (cssText, slotScopeId) => {
173
+ const slotClass = '.' + slotScopeId + ' > ';
174
+ const selectors = [];
175
+ cssText = cssText.replace(_cssColonSlottedRe, (...m) => {
176
+ if (m[2]) {
177
+ const compound = m[2].trim();
178
+ const suffix = m[3];
179
+ const slottedSelector = slotClass + compound + suffix;
180
+ let prefixSelector = '';
181
+ for (let i = m[4] - 1; i >= 0; i--) {
182
+ const char = m[5][i];
183
+ if (char === '}' || char === ',') {
184
+ break;
185
+ }
186
+ prefixSelector = char + prefixSelector;
187
+ }
188
+ const orgSelector = prefixSelector + slottedSelector;
189
+ const addedSelector = `${prefixSelector.trimRight()}${slottedSelector.trim()}`;
190
+ if (orgSelector.trim() !== addedSelector.trim()) {
191
+ const updatedSelector = `${addedSelector}, ${orgSelector}`;
192
+ selectors.push({
193
+ orgSelector,
194
+ updatedSelector,
195
+ });
196
+ }
197
+ return slottedSelector;
198
+ }
199
+ else {
200
+ return _polyfillHostNoCombinator + m[3];
201
+ }
202
+ });
203
+ return {
204
+ selectors,
205
+ cssText
206
+ };
207
+ };
208
+ const convertColonHostContext = (cssText) => {
209
+ return convertColonRule(cssText, _cssColonHostContextRe, colonHostContextPartReplacer);
210
+ };
211
+ const convertShadowDOMSelectors = (cssText) => {
212
+ return _shadowDOMSelectorsRe.reduce((result, pattern) => result.replace(pattern, ' '), cssText);
213
+ };
214
+ const makeScopeMatcher = (scopeSelector) => {
215
+ const lre = /\[/g;
216
+ const rre = /\]/g;
217
+ scopeSelector = scopeSelector.replace(lre, '\\[').replace(rre, '\\]');
218
+ return new RegExp('^(' + scopeSelector + ')' + _selectorReSuffix, 'm');
219
+ };
220
+ const selectorNeedsScoping = (selector, scopeSelector) => {
221
+ const re = makeScopeMatcher(scopeSelector);
222
+ return !re.test(selector);
223
+ };
224
+ const applySimpleSelectorScope = (selector, scopeSelector, hostSelector) => {
225
+ // In Android browser, the lastIndex is not reset when the regex is used in String.replace()
226
+ _polyfillHostRe.lastIndex = 0;
227
+ if (_polyfillHostRe.test(selector)) {
228
+ const replaceBy = `.${hostSelector}`;
229
+ return selector
230
+ .replace(_polyfillHostNoCombinatorRe, (_, selector) => {
231
+ return selector.replace(/([^:]*)(:*)(.*)/, (_, before, colon, after) => {
232
+ return before + replaceBy + colon + after;
233
+ });
234
+ })
235
+ .replace(_polyfillHostRe, replaceBy + ' ');
236
+ }
237
+ return scopeSelector + ' ' + selector;
238
+ };
239
+ const applyStrictSelectorScope = (selector, scopeSelector, hostSelector) => {
240
+ const isRe = /\[is=([^\]]*)\]/g;
241
+ scopeSelector = scopeSelector.replace(isRe, (_, ...parts) => parts[0]);
242
+ const className = '.' + scopeSelector;
243
+ const _scopeSelectorPart = (p) => {
244
+ let scopedP = p.trim();
245
+ if (!scopedP) {
246
+ return '';
247
+ }
248
+ if (p.indexOf(_polyfillHostNoCombinator) > -1) {
249
+ scopedP = applySimpleSelectorScope(p, scopeSelector, hostSelector);
250
+ }
251
+ else {
252
+ // remove :host since it should be unnecessary
253
+ const t = p.replace(_polyfillHostRe, '');
254
+ if (t.length > 0) {
255
+ const matches = t.match(/([^:]*)(:*)(.*)/);
256
+ if (matches) {
257
+ scopedP = matches[1] + className + matches[2] + matches[3];
258
+ }
259
+ }
260
+ }
261
+ return scopedP;
262
+ };
263
+ const safeContent = safeSelector(selector);
264
+ selector = safeContent.content;
265
+ let scopedSelector = '';
266
+ let startIndex = 0;
267
+ let res;
268
+ const sep = /( |>|\+|~(?!=))\s*/g;
269
+ // If a selector appears before :host it should not be shimmed as it
270
+ // matches on ancestor elements and not on elements in the host's shadow
271
+ // `:host-context(div)` is transformed to
272
+ // `-shadowcsshost-no-combinatordiv, div -shadowcsshost-no-combinator`
273
+ // the `div` is not part of the component in the 2nd selectors and should not be scoped.
274
+ // Historically `component-tag:host` was matching the component so we also want to preserve
275
+ // this behavior to avoid breaking legacy apps (it should not match).
276
+ // The behavior should be:
277
+ // - `tag:host` -> `tag[h]` (this is to avoid breaking legacy apps, should not match anything)
278
+ // - `tag :host` -> `tag [h]` (`tag` is not scoped because it's considered part of a
279
+ // `:host-context(tag)`)
280
+ const hasHost = selector.indexOf(_polyfillHostNoCombinator) > -1;
281
+ // Only scope parts after the first `-shadowcsshost-no-combinator` when it is present
282
+ let shouldScope = !hasHost;
283
+ while ((res = sep.exec(selector)) !== null) {
284
+ const separator = res[1];
285
+ const part = selector.slice(startIndex, res.index).trim();
286
+ shouldScope = shouldScope || part.indexOf(_polyfillHostNoCombinator) > -1;
287
+ const scopedPart = shouldScope ? _scopeSelectorPart(part) : part;
288
+ scopedSelector += `${scopedPart} ${separator} `;
289
+ startIndex = sep.lastIndex;
290
+ }
291
+ const part = selector.substring(startIndex);
292
+ shouldScope = shouldScope || part.indexOf(_polyfillHostNoCombinator) > -1;
293
+ scopedSelector += shouldScope ? _scopeSelectorPart(part) : part;
294
+ // replace the placeholders with their original values
295
+ return restoreSafeSelector(safeContent.placeholders, scopedSelector);
296
+ };
297
+ const scopeSelector = (selector, scopeSelectorText, hostSelector, slotSelector) => {
298
+ return selector.split(',')
299
+ .map(shallowPart => {
300
+ if (slotSelector && shallowPart.indexOf('.' + slotSelector) > -1) {
301
+ return shallowPart.trim();
302
+ }
303
+ if (selectorNeedsScoping(shallowPart, scopeSelectorText)) {
304
+ return applyStrictSelectorScope(shallowPart, scopeSelectorText, hostSelector).trim();
305
+ }
306
+ else {
307
+ return shallowPart.trim();
308
+ }
309
+ })
310
+ .join(', ');
311
+ };
312
+ const scopeSelectors = (cssText, scopeSelectorText, hostSelector, slotSelector, commentOriginalSelector) => {
313
+ return processRules(cssText, (rule) => {
314
+ let selector = rule.selector;
315
+ let content = rule.content;
316
+ if (rule.selector[0] !== '@') {
317
+ selector = scopeSelector(rule.selector, scopeSelectorText, hostSelector, slotSelector);
318
+ }
319
+ else if (rule.selector.startsWith('@media') || rule.selector.startsWith('@supports') ||
320
+ rule.selector.startsWith('@page') || rule.selector.startsWith('@document')) {
321
+ content = scopeSelectors(rule.content, scopeSelectorText, hostSelector, slotSelector);
322
+ }
323
+ const cssRule = {
324
+ selector: selector.replace(/\s{2,}/g, ' ').trim(),
325
+ content
326
+ };
327
+ return cssRule;
328
+ });
329
+ };
330
+ const scopeCssText = (cssText, scopeId, hostScopeId, slotScopeId, commentOriginalSelector) => {
331
+ cssText = insertPolyfillHostInCssText(cssText);
332
+ cssText = convertColonHost(cssText);
333
+ cssText = convertColonHostContext(cssText);
334
+ const slotted = convertColonSlotted(cssText, slotScopeId);
335
+ cssText = slotted.cssText;
336
+ cssText = convertShadowDOMSelectors(cssText);
337
+ if (scopeId) {
338
+ cssText = scopeSelectors(cssText, scopeId, hostScopeId, slotScopeId);
339
+ }
340
+ cssText = cssText.replace(/-shadowcsshost-no-combinator/g, `.${hostScopeId}`);
341
+ cssText = cssText.replace(/>\s*\*\s+([^{, ]+)/gm, ' $1 ');
342
+ return {
343
+ cssText: cssText.trim(),
344
+ slottedSelectors: slotted.selectors,
345
+ };
346
+ };
347
+ const scopeCss = (cssText, scopeId, commentOriginalSelector) => {
348
+ const hostScopeId = scopeId + '-h';
349
+ const slotScopeId = scopeId + '-s';
350
+ const commentsWithHash = extractCommentsWithHash(cssText);
351
+ cssText = stripComments(cssText);
352
+ const orgSelectors = [];
353
+ if (commentOriginalSelector) {
354
+ const processCommentedSelector = (rule) => {
355
+ const placeholder = `/*!@___${orgSelectors.length}___*/`;
356
+ const comment = `/*!@${rule.selector}*/`;
357
+ orgSelectors.push({ placeholder, comment });
358
+ rule.selector = placeholder + rule.selector;
359
+ return rule;
360
+ };
361
+ cssText = processRules(cssText, rule => {
362
+ if (rule.selector[0] !== '@') {
363
+ return processCommentedSelector(rule);
364
+ }
365
+ else if (rule.selector.startsWith('@media') || rule.selector.startsWith('@supports') ||
366
+ rule.selector.startsWith('@page') || rule.selector.startsWith('@document')) {
367
+ rule.content = processRules(rule.content, processCommentedSelector);
368
+ return rule;
369
+ }
370
+ return rule;
371
+ });
372
+ }
373
+ const scoped = scopeCssText(cssText, scopeId, hostScopeId, slotScopeId);
374
+ cssText = [scoped.cssText, ...commentsWithHash].join('\n');
375
+ if (commentOriginalSelector) {
376
+ orgSelectors.forEach(({ placeholder, comment }) => {
377
+ cssText = cssText.replace(placeholder, comment);
378
+ });
379
+ }
380
+ scoped.slottedSelectors.forEach(slottedSelector => {
381
+ cssText = cssText.replace(slottedSelector.orgSelector, slottedSelector.updatedSelector);
382
+ });
383
+ return cssText;
384
+ };
385
+
386
+ export { scopeCss };