@rindo/core 1.8.12 → 2.5.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 (608) hide show
  1. package/LICENSE.md +27 -27
  2. package/bin/cli.ts +20 -0
  3. package/bin/rindo +51 -22
  4. package/cli/index.cjs +1263 -0
  5. package/cli/index.d.ts +15 -0
  6. package/cli/index.js +1237 -0
  7. package/cli/package.json +14 -0
  8. package/compiler/lib.d.ts +24 -0
  9. package/compiler/lib.dom.d.ts +20230 -0
  10. package/compiler/lib.dom.iterable.d.ts +351 -0
  11. package/compiler/lib.es2015.collection.d.ts +89 -0
  12. package/compiler/lib.es2015.core.d.ts +517 -0
  13. package/compiler/lib.es2015.d.ts +30 -0
  14. package/compiler/lib.es2015.generator.d.ts +79 -0
  15. package/compiler/lib.es2015.iterable.d.ts +505 -0
  16. package/compiler/lib.es2015.promise.d.ts +150 -0
  17. package/compiler/lib.es2015.proxy.d.ts +41 -0
  18. package/compiler/lib.es2015.reflect.d.ts +123 -0
  19. package/compiler/lib.es2015.symbol.d.ts +48 -0
  20. package/compiler/lib.es2015.symbol.wellknown.d.ts +324 -0
  21. package/compiler/lib.es2016.array.include.d.ts +118 -0
  22. package/compiler/lib.es2016.d.ts +22 -0
  23. package/compiler/lib.es2016.full.d.ts +25 -0
  24. package/compiler/lib.es2017.d.ts +26 -0
  25. package/compiler/lib.es2017.full.d.ts +25 -0
  26. package/compiler/lib.es2017.intl.d.ts +32 -0
  27. package/compiler/lib.es2017.object.d.ts +51 -0
  28. package/compiler/lib.es2017.sharedmemory.d.ts +137 -0
  29. package/compiler/lib.es2017.string.d.ts +47 -0
  30. package/compiler/lib.es2017.typedarrays.d.ts +55 -0
  31. package/compiler/lib.es2018.asyncgenerator.d.ts +79 -0
  32. package/compiler/lib.es2018.asynciterable.d.ts +45 -0
  33. package/compiler/lib.es2018.d.ts +26 -0
  34. package/compiler/lib.es2018.full.d.ts +25 -0
  35. package/compiler/lib.es2018.intl.d.ts +61 -0
  36. package/compiler/lib.es2018.promise.d.ts +32 -0
  37. package/compiler/lib.es2018.regexp.d.ts +39 -0
  38. package/compiler/lib.es2019.array.d.ts +85 -0
  39. package/compiler/lib.es2019.d.ts +25 -0
  40. package/compiler/lib.es2019.full.d.ts +25 -0
  41. package/compiler/lib.es2019.object.d.ts +35 -0
  42. package/compiler/lib.es2019.string.d.ts +33 -0
  43. package/compiler/lib.es2019.symbol.d.ts +26 -0
  44. package/compiler/lib.es2020.bigint.d.ts +728 -0
  45. package/compiler/lib.es2020.d.ts +27 -0
  46. package/compiler/lib.es2020.full.d.ts +25 -0
  47. package/compiler/lib.es2020.intl.d.ts +310 -0
  48. package/compiler/lib.es2020.promise.d.ts +50 -0
  49. package/compiler/lib.es2020.sharedmemory.d.ts +99 -0
  50. package/compiler/lib.es2020.string.d.ts +30 -0
  51. package/compiler/lib.es2020.symbol.wellknown.d.ts +39 -0
  52. package/compiler/lib.es5.d.ts +4435 -0
  53. package/compiler/lib.es6.d.ts +25 -0
  54. package/compiler/lib.esnext.d.ts +25 -0
  55. package/compiler/lib.esnext.full.d.ts +25 -0
  56. package/compiler/lib.esnext.intl.d.ts +32 -0
  57. package/compiler/lib.esnext.promise.d.ts +43 -0
  58. package/compiler/lib.esnext.string.d.ts +35 -0
  59. package/compiler/lib.esnext.weakref.d.ts +75 -0
  60. package/compiler/lib.scripthost.d.ts +327 -0
  61. package/compiler/lib.webworker.d.ts +6042 -0
  62. package/compiler/lib.webworker.importscripts.d.ts +26 -0
  63. package/compiler/lib.webworker.iterable.d.ts +166 -0
  64. package/compiler/package.json +8 -6
  65. package/compiler/rindo.d.ts +95 -0
  66. package/compiler/rindo.js +65051 -6657
  67. package/compiler/rindo.min.js +4 -0
  68. package/dependencies.json +103 -0
  69. package/dev-server/client/app-error.d.ts +18 -0
  70. package/dev-server/client/events.d.ts +6 -0
  71. package/dev-server/client/hmr-components.d.ts +1 -0
  72. package/dev-server/client/hmr-external-styles.d.ts +1 -0
  73. package/dev-server/client/hmr-images.d.ts +1 -0
  74. package/dev-server/client/hmr-inline-styles.d.ts +1 -0
  75. package/dev-server/client/hmr-util.d.ts +9 -0
  76. package/dev-server/client/hmr-window.d.ts +10 -0
  77. package/dev-server/client/index.d.ts +6 -0
  78. package/dev-server/client/index.js +808 -0
  79. package/dev-server/client/logger.d.ts +5 -0
  80. package/dev-server/client/package.json +8 -0
  81. package/dev-server/client/progress.d.ts +3 -0
  82. package/dev-server/client/status.d.ts +4 -0
  83. package/dev-server/connector.html +6 -0
  84. package/dev-server/index.d.ts +3 -0
  85. package/dev-server/index.js +264 -0
  86. package/dev-server/open-in-editor-api.js +1 -0
  87. package/dev-server/package.json +8 -0
  88. package/dev-server/server-process.js +1738 -0
  89. package/dev-server/server-worker-thread.js +39 -0
  90. package/{dist/dev-server → dev-server}/templates/directory-index.html +132 -132
  91. package/{dist/dev-server → dev-server}/templates/initial-load.html +160 -160
  92. package/dev-server/ws.js +1 -0
  93. package/internal/app-data/index.cjs +90 -0
  94. package/internal/app-data/index.d.ts +4 -0
  95. package/internal/{client/build-conditionals.mjs → app-data/index.js} +25 -21
  96. package/internal/app-data/package.json +15 -0
  97. package/internal/client/css-shim.js +4 -0
  98. package/internal/client/{dom.rindo-client.mjs → dom.js} +73 -137
  99. package/{dist/client/index.mjs → internal/client/index.js} +863 -789
  100. package/internal/client/package.json +8 -0
  101. package/internal/client/patch-browser.js +120 -0
  102. package/internal/client/patch-esm.js +23 -0
  103. package/internal/client/polyfills/core-js.js +11 -10
  104. package/internal/client/polyfills/css-shim.js +1 -656
  105. package/internal/client/polyfills/dom.js +79 -146
  106. package/internal/client/polyfills/es5-html-element.js +1 -18
  107. package/internal/client/polyfills/index.js +34 -35
  108. package/internal/client/{shadow-css.rindo-client.mjs → shadow-css.js} +20 -17
  109. package/internal/hydrate/index.js +1097 -0
  110. package/internal/hydrate/package.json +7 -0
  111. package/internal/hydrate/runner.d.ts +217 -0
  112. package/internal/hydrate/runner.js +777 -0
  113. package/internal/hydrate/shadow-css.js +146 -0
  114. package/internal/index.d.ts +4 -18
  115. package/internal/index.js +1 -1
  116. package/internal/package.json +9 -6
  117. package/internal/rindo-core/index.cjs +1 -0
  118. package/internal/rindo-core/index.d.ts +51 -0
  119. package/internal/rindo-core/index.js +15 -0
  120. package/internal/rindo-ext-modules.d.ts +41 -0
  121. package/internal/rindo-private.d.ts +2128 -0
  122. package/internal/rindo-public-compiler.d.ts +2170 -0
  123. package/{dist/declarations/docs.d.ts → internal/rindo-public-docs.d.ts} +13 -1
  124. package/internal/rindo-public-runtime.d.ts +1555 -0
  125. package/internal/testing/index.js +1055 -0
  126. package/internal/testing/package.json +7 -0
  127. package/internal/testing/shadow-css.js +146 -0
  128. package/mock-doc/index.cjs +4610 -0
  129. package/mock-doc/index.d.ts +916 -0
  130. package/mock-doc/index.js +4574 -2
  131. package/mock-doc/package.json +15 -10
  132. package/package.json +132 -186
  133. package/readme.md +21 -174
  134. package/screenshot/compare/build/app.css +1 -1
  135. package/screenshot/compare/build/app.esm.js +1 -1
  136. package/screenshot/compare/build/app.js +33 -818
  137. package/screenshot/compare/build/{p-113f7459.js → p-081b0641.js} +1 -1
  138. package/screenshot/compare/build/p-227a1e18.entry.js +1 -0
  139. package/screenshot/compare/build/p-2c298727.entry.js +1 -0
  140. package/screenshot/compare/build/p-5479268c.entry.js +1 -0
  141. package/screenshot/compare/build/p-573ec8a4.entry.js +1 -0
  142. package/screenshot/compare/build/p-6ba08604.entry.js +1 -0
  143. package/screenshot/compare/build/p-6bc63295.entry.js +1 -0
  144. package/screenshot/compare/build/p-7a3759fd.entry.js +1 -0
  145. package/screenshot/compare/build/{p-ejpsp3kx.js → p-7b4e3ba7.js} +1 -1
  146. package/screenshot/compare/build/p-988eb362.css +1 -0
  147. package/screenshot/compare/build/p-9b6a9315.js +1 -0
  148. package/screenshot/compare/build/p-b4cc611c.entry.js +1 -0
  149. package/screenshot/compare/build/p-d1bf53f5.entry.js +1 -0
  150. package/screenshot/compare/build/{p-efb0eac6.js → p-e2efe0df.js} +1 -1
  151. package/screenshot/compare/build/p-e8ca6d97.entry.js +1 -0
  152. package/screenshot/compare/build/p-ec2f13e0.entry.js +1 -0
  153. package/screenshot/compare/build/p-f0b99977.entry.js +1 -0
  154. package/screenshot/compare/build/p-f4745c2f.entry.js +1 -0
  155. package/screenshot/compare/build/p-fbbae598.js +1 -0
  156. package/screenshot/compare/host.config.json +14 -14
  157. package/screenshot/compare/index.html +1 -1
  158. package/{dist/screenshot → screenshot}/connector-base.d.ts +1 -1
  159. package/{dist/screenshot → screenshot}/connector-local.d.ts +1 -1
  160. package/screenshot/connector.js +2 -3
  161. package/{dist/screenshot → screenshot}/index.d.ts +1 -1
  162. package/screenshot/index.js +659 -2
  163. package/screenshot/local-connector.js +2 -3
  164. package/screenshot/package.json +15 -13
  165. package/screenshot/pixel-match.js +62 -49
  166. package/screenshot/screenshot-compare.d.ts +3 -0
  167. package/{dist/screenshot → screenshot}/screenshot-fs.d.ts +1 -1
  168. package/sys/deno/index.js +1785 -0
  169. package/sys/deno/node-compat.js +2654 -0
  170. package/sys/deno/worker.js +44 -0
  171. package/sys/node/autoprefixer.js +8 -0
  172. package/sys/node/glob.js +1 -0
  173. package/sys/node/graceful-fs.js +1 -0
  174. package/sys/node/index.d.ts +18 -0
  175. package/sys/node/index.js +1386 -2
  176. package/sys/node/node-fetch.js +1 -0
  177. package/sys/node/package.json +8 -5
  178. package/sys/node/prompts.js +1 -0
  179. package/sys/node/worker.js +52 -0
  180. package/{dist/testing → testing}/index.d.ts +5 -6
  181. package/testing/index.js +4017 -2
  182. package/testing/jest/jest-config.d.ts +5 -0
  183. package/{dist/testing → testing}/jest/jest-environment.d.ts +4 -2
  184. package/{dist/testing → testing}/jest/jest-preprocessor.d.ts +1 -0
  185. package/{dist/testing → testing}/jest/jest-runner.d.ts +1 -1
  186. package/{dist/testing → testing}/jest/jest-screenshot.d.ts +1 -1
  187. package/{dist/testing → testing}/jest/jest-serializer.d.ts +1 -1
  188. package/testing/jest-environment.js +3 -3
  189. package/testing/jest-preprocessor.js +3 -3
  190. package/testing/jest-preset.js +32 -40
  191. package/testing/jest-runner.js +3 -3
  192. package/testing/jest-setuptestframework.js +3 -3
  193. package/{dist/testing → testing}/matchers/events.d.ts +9 -1
  194. package/{dist/testing → testing}/matchers/index.d.ts +3 -1
  195. package/{dist/testing → testing}/matchers/screenshot.d.ts +1 -1
  196. package/testing/mock-fetch.d.ts +11 -0
  197. package/testing/mocks.d.ts +14 -0
  198. package/testing/package.json +8 -6
  199. package/testing/puppeteer/index.d.ts +2 -0
  200. package/{dist/testing → testing}/puppeteer/puppeteer-browser.d.ts +3 -3
  201. package/{dist/testing → testing}/puppeteer/puppeteer-declarations.d.ts +18 -18
  202. package/{dist/testing → testing}/puppeteer/puppeteer-element.d.ts +7 -5
  203. package/testing/puppeteer/puppeteer-emulate.d.ts +2 -0
  204. package/{dist/testing → testing}/puppeteer/puppeteer-events.d.ts +9 -9
  205. package/testing/puppeteer/puppeteer-page.d.ts +2 -0
  206. package/testing/puppeteer/puppeteer-screenshot.d.ts +4 -0
  207. package/testing/reset-build-conditionals.d.ts +2 -0
  208. package/testing/spec-page.d.ts +2 -0
  209. package/testing/test-transpile.d.ts +2 -0
  210. package/{dist/testing → testing}/testing-logger.d.ts +10 -8
  211. package/testing/testing-sys.d.ts +1 -0
  212. package/{dist/testing → testing}/testing-utils.d.ts +3 -2
  213. package/testing/testing.d.ts +2 -0
  214. package/build-conditionals/index.d.ts +0 -2
  215. package/build-conditionals/index.mjs +0 -66
  216. package/build-conditionals/package.json +0 -6
  217. package/compiler/index.js +0 -2
  218. package/dist/cli/index.js +0 -6068
  219. package/dist/client/css-shim-14a9812e.js +0 -656
  220. package/dist/client/css-shim-69821662.js +0 -658
  221. package/dist/client/declarations/rindo.core.d.ts +0 -1347
  222. package/dist/client/dom-68c8fe31.js +0 -139
  223. package/dist/client/dom-af01458a.js +0 -137
  224. package/dist/client/index.js +0 -2937
  225. package/dist/client/polyfills/core-js.js +0 -10
  226. package/dist/client/polyfills/css-shim.js +0 -656
  227. package/dist/client/polyfills/dom.js +0 -146
  228. package/dist/client/polyfills/es5-html-element.js +0 -18
  229. package/dist/client/polyfills/index.js +0 -35
  230. package/dist/client/polyfills/promise.js +0 -9
  231. package/dist/client/polyfills/system.js +0 -6
  232. package/dist/client/shadow-css-6ef31c68.js +0 -386
  233. package/dist/client/shadow-css-8fd1a9e4.js +0 -388
  234. package/dist/compiler/app-core/app-es5-disabled.d.ts +0 -2
  235. package/dist/compiler/app-core/app-polyfills.d.ts +0 -3
  236. package/dist/compiler/app-core/build-conditionals.d.ts +0 -6
  237. package/dist/compiler/app-core/bundle-app-core.d.ts +0 -6
  238. package/dist/compiler/app-core/component-styles.d.ts +0 -4
  239. package/dist/compiler/app-core/format-component-runtime-meta.d.ts +0 -4
  240. package/dist/compiler/app-core/optimize-module.d.ts +0 -7
  241. package/dist/compiler/browser/build-conditionals-client.d.ts +0 -3
  242. package/dist/compiler/browser/compile-options.d.ts +0 -12
  243. package/dist/compiler/browser/compile.d.ts +0 -2
  244. package/dist/compiler/browser/create-compiler.d.ts +0 -14
  245. package/dist/compiler/browser/index.d.ts +0 -11
  246. package/dist/compiler/build/build-ctx.d.ts +0 -74
  247. package/dist/compiler/build/build-finish.d.ts +0 -3
  248. package/dist/compiler/build/build-hmr.d.ts +0 -2
  249. package/dist/compiler/build/build-results.d.ts +0 -2
  250. package/dist/compiler/build/build-stats.d.ts +0 -3
  251. package/dist/compiler/build/build.d.ts +0 -2
  252. package/dist/compiler/build/cache-stats.d.ts +0 -4
  253. package/dist/compiler/build/compiler-build-id.d.ts +0 -6
  254. package/dist/compiler/build/compiler-ctx.d.ts +0 -44
  255. package/dist/compiler/build/init-index-html.d.ts +0 -2
  256. package/dist/compiler/build/validate-files.d.ts +0 -2
  257. package/dist/compiler/build/write-build.d.ts +0 -2
  258. package/dist/compiler/cache.d.ts +0 -22
  259. package/dist/compiler/compiler.d.ts +0 -27
  260. package/dist/compiler/component-hydrate/bundle-hydrate-factory.d.ts +0 -3
  261. package/dist/compiler/component-hydrate/generate-hydrate-app.d.ts +0 -2
  262. package/dist/compiler/component-hydrate/hydrate-factory-closure.d.ts +0 -2
  263. package/dist/compiler/component-hydrate/update-to-hydrate-components.d.ts +0 -2
  264. package/dist/compiler/component-hydrate/write-hydrate-outputs.d.ts +0 -3
  265. package/dist/compiler/component-lazy/generate-cjs.d.ts +0 -3
  266. package/dist/compiler/component-lazy/generate-esm-browser.d.ts +0 -3
  267. package/dist/compiler/component-lazy/generate-esm.d.ts +0 -3
  268. package/dist/compiler/component-lazy/generate-lazy-app.d.ts +0 -3
  269. package/dist/compiler/component-lazy/generate-lazy-module.d.ts +0 -4
  270. package/dist/compiler/component-lazy/generate-system.d.ts +0 -3
  271. package/dist/compiler/component-lazy/update-to-lazy-component.d.ts +0 -2
  272. package/dist/compiler/component-lazy/write-lazy-entry-module.d.ts +0 -2
  273. package/dist/compiler/component-native/update-to-native-component.d.ts +0 -2
  274. package/dist/compiler/config/config-reload.d.ts +0 -3
  275. package/dist/compiler/config/config-utils.d.ts +0 -4
  276. package/dist/compiler/config/validate-config.d.ts +0 -4
  277. package/dist/compiler/config/validate-copy.d.ts +0 -2
  278. package/dist/compiler/config/validate-dev-server.d.ts +0 -2
  279. package/dist/compiler/config/validate-docs.d.ts +0 -2
  280. package/dist/compiler/config/validate-namespace.d.ts +0 -3
  281. package/dist/compiler/config/validate-output-stats.d.ts +0 -2
  282. package/dist/compiler/config/validate-outputs-angular.d.ts +0 -2
  283. package/dist/compiler/config/validate-outputs-custom.d.ts +0 -2
  284. package/dist/compiler/config/validate-outputs-dist-module.d.ts +0 -2
  285. package/dist/compiler/config/validate-outputs-dist.d.ts +0 -2
  286. package/dist/compiler/config/validate-outputs-hydrate-script.d.ts +0 -2
  287. package/dist/compiler/config/validate-outputs-www.d.ts +0 -2
  288. package/dist/compiler/config/validate-outputs.d.ts +0 -2
  289. package/dist/compiler/config/validate-paths.d.ts +0 -2
  290. package/dist/compiler/config/validate-plugins.d.ts +0 -2
  291. package/dist/compiler/config/validate-prerender.d.ts +0 -2
  292. package/dist/compiler/config/validate-rollup-config.d.ts +0 -2
  293. package/dist/compiler/config/validate-service-worker.d.ts +0 -2
  294. package/dist/compiler/config/validate-testing.d.ts +0 -2
  295. package/dist/compiler/config/validate-workers.d.ts +0 -2
  296. package/dist/compiler/copy/assets-copy-tasks.d.ts +0 -3
  297. package/dist/compiler/copy/hashed-copy.d.ts +0 -2
  298. package/dist/compiler/copy/local-copy-tasks.d.ts +0 -3
  299. package/dist/compiler/docs/constants.d.ts +0 -2
  300. package/dist/compiler/docs/custom/index.d.ts +0 -2
  301. package/dist/compiler/docs/docs.d.ts +0 -2
  302. package/dist/compiler/docs/generate-doc-data.d.ts +0 -3
  303. package/dist/compiler/docs/json/index.d.ts +0 -3
  304. package/dist/compiler/docs/readme/docs-util.d.ts +0 -13
  305. package/dist/compiler/docs/readme/index.d.ts +0 -3
  306. package/dist/compiler/docs/readme/markdown-css-props.d.ts +0 -2
  307. package/dist/compiler/docs/readme/markdown-dependencies.d.ts +0 -2
  308. package/dist/compiler/docs/readme/markdown-events.d.ts +0 -2
  309. package/dist/compiler/docs/readme/markdown-methods.d.ts +0 -2
  310. package/dist/compiler/docs/readme/markdown-props.d.ts +0 -2
  311. package/dist/compiler/docs/readme/markdown-slots.d.ts +0 -2
  312. package/dist/compiler/docs/readme/markdown-usage.d.ts +0 -6
  313. package/dist/compiler/docs/readme/output-docs.d.ts +0 -3
  314. package/dist/compiler/docs/style-docs.d.ts +0 -2
  315. package/dist/compiler/docs/vscode/index.d.ts +0 -2
  316. package/dist/compiler/entries/component-bundles.d.ts +0 -3
  317. package/dist/compiler/entries/component-graph.d.ts +0 -2
  318. package/dist/compiler/entries/default-bundles.d.ts +0 -3
  319. package/dist/compiler/entries/entry-modules.d.ts +0 -6
  320. package/dist/compiler/entries/resolve-component-dependencies.d.ts +0 -2
  321. package/dist/compiler/events.d.ts +0 -15
  322. package/dist/compiler/fs-watch/fs-watch-init.d.ts +0 -2
  323. package/dist/compiler/fs-watch/fs-watch-log.d.ts +0 -2
  324. package/dist/compiler/fs-watch/fs-watch-rebuild.d.ts +0 -7
  325. package/dist/compiler/html/inject-module-preloads.d.ts +0 -3
  326. package/dist/compiler/html/inject-sw-script.d.ts +0 -4
  327. package/dist/compiler/html/inline-esm-import.d.ts +0 -2
  328. package/dist/compiler/html/inline-style-sheets.d.ts +0 -2
  329. package/dist/compiler/html/update-global-styles-link.d.ts +0 -2
  330. package/dist/compiler/html/used-components.d.ts +0 -2
  331. package/dist/compiler/html/utils.d.ts +0 -2
  332. package/dist/compiler/html/validate-manifest-json.d.ts +0 -2
  333. package/dist/compiler/index.d.ts +0 -10
  334. package/dist/compiler/index.js +0 -18008
  335. package/dist/compiler/output-targets/empty-dir.d.ts +0 -6
  336. package/dist/compiler/output-targets/index.d.ts +0 -2
  337. package/dist/compiler/output-targets/output-angular.d.ts +0 -4
  338. package/dist/compiler/output-targets/output-app.d.ts +0 -4
  339. package/dist/compiler/output-targets/output-collection.d.ts +0 -3
  340. package/dist/compiler/output-targets/output-copy.d.ts +0 -2
  341. package/dist/compiler/output-targets/output-custom.d.ts +0 -2
  342. package/dist/compiler/output-targets/output-docs.d.ts +0 -2
  343. package/dist/compiler/output-targets/output-hydrate.d.ts +0 -2
  344. package/dist/compiler/output-targets/output-lazy-loader.d.ts +0 -2
  345. package/dist/compiler/output-targets/output-module.d.ts +0 -4
  346. package/dist/compiler/output-targets/output-prerender.d.ts +0 -2
  347. package/dist/compiler/output-targets/output-service-workers.d.ts +0 -2
  348. package/dist/compiler/output-targets/output-types.d.ts +0 -2
  349. package/dist/compiler/output-targets/output-utils.d.ts +0 -54
  350. package/dist/compiler/output-targets/output-www.d.ts +0 -2
  351. package/dist/compiler/plugin/plugin.d.ts +0 -6
  352. package/dist/compiler/prerender/crawl-urls.d.ts +0 -3
  353. package/dist/compiler/prerender/host-config.d.ts +0 -12
  354. package/dist/compiler/prerender/prerender-config.d.ts +0 -2
  355. package/dist/compiler/prerender/prerender-main.d.ts +0 -2
  356. package/dist/compiler/prerender/prerender-queue.d.ts +0 -3
  357. package/dist/compiler/prerender/prerender-template-html.d.ts +0 -2
  358. package/dist/compiler/prerender/prerendered-write-path.d.ts +0 -2
  359. package/dist/compiler/prerender/robots-txt.d.ts +0 -2
  360. package/dist/compiler/prerender/sitemap-xml.d.ts +0 -3
  361. package/dist/compiler/rollup-plugins/component-entry.d.ts +0 -3
  362. package/dist/compiler/rollup-plugins/css-transformer.d.ts +0 -3
  363. package/dist/compiler/rollup-plugins/global-scripts.d.ts +0 -4
  364. package/dist/compiler/rollup-plugins/image-plugin.d.ts +0 -3
  365. package/dist/compiler/rollup-plugins/in-memory-fs-read.d.ts +0 -3
  366. package/dist/compiler/rollup-plugins/loader.d.ts +0 -4
  367. package/dist/compiler/rollup-plugins/plugin-helper.d.ts +0 -5
  368. package/dist/compiler/rollup-plugins/rindo-build-conditionals.d.ts +0 -7
  369. package/dist/compiler/rollup-plugins/rindo-client.d.ts +0 -3
  370. package/dist/compiler/rollup-plugins/rindo-external-runtime.d.ts +0 -2
  371. package/dist/compiler/rollup-plugins/rindo-hydrate.d.ts +0 -3
  372. package/dist/compiler/rollup-plugins/rindo-public-plugin.d.ts +0 -2
  373. package/dist/compiler/service-worker/generate-sw.d.ts +0 -7
  374. package/dist/compiler/service-worker/service-worker-util.d.ts +0 -2
  375. package/dist/compiler/style/cached-styles.d.ts +0 -5
  376. package/dist/compiler/style/component-styles.d.ts +0 -2
  377. package/dist/compiler/style/css-imports.d.ts +0 -9
  378. package/dist/compiler/style/css-to-esm.d.ts +0 -5
  379. package/dist/compiler/style/generate-styles.d.ts +0 -2
  380. package/dist/compiler/style/global-styles.d.ts +0 -3
  381. package/dist/compiler/style/normalize-styles.d.ts +0 -2
  382. package/dist/compiler/style/optimize-css.d.ts +0 -2
  383. package/dist/compiler/style/scope-css.d.ts +0 -3
  384. package/dist/compiler/style/style-utils.d.ts +0 -10
  385. package/dist/compiler/transformers/add-component-meta-proxy.d.ts +0 -3
  386. package/dist/compiler/transformers/add-component-meta-static.d.ts +0 -4
  387. package/dist/compiler/transformers/add-imports.d.ts +0 -3
  388. package/dist/compiler/transformers/collections/add-external-import.d.ts +0 -2
  389. package/dist/compiler/transformers/collections/parse-collection-components.d.ts +0 -2
  390. package/dist/compiler/transformers/collections/parse-collection-deprecated.d.ts +0 -2
  391. package/dist/compiler/transformers/collections/parse-collection-manifest.d.ts +0 -7
  392. package/dist/compiler/transformers/collections/parse-collection-module.d.ts +0 -2
  393. package/dist/compiler/transformers/component-build-conditionals.d.ts +0 -2
  394. package/dist/compiler/transformers/component-hydrate/hydrate-component.d.ts +0 -3
  395. package/dist/compiler/transformers/component-hydrate/hydrate-runtime-cmp-meta.d.ts +0 -3
  396. package/dist/compiler/transformers/component-hydrate/tranform-to-hydrate-component.d.ts +0 -2
  397. package/dist/compiler/transformers/component-lazy/lazy-component.d.ts +0 -3
  398. package/dist/compiler/transformers/component-lazy/lazy-constructor.d.ts +0 -3
  399. package/dist/compiler/transformers/component-lazy/lazy-element-getter.d.ts +0 -3
  400. package/dist/compiler/transformers/component-lazy/transform-lazy-component.d.ts +0 -4
  401. package/dist/compiler/transformers/component-native/native-component.d.ts +0 -3
  402. package/dist/compiler/transformers/component-native/native-connected-callback.d.ts +0 -3
  403. package/dist/compiler/transformers/component-native/native-constructor.d.ts +0 -3
  404. package/dist/compiler/transformers/component-native/native-element-getter.d.ts +0 -3
  405. package/dist/compiler/transformers/component-native/native-static-style.d.ts +0 -3
  406. package/dist/compiler/transformers/component-native/tranform-to-native-component.d.ts +0 -4
  407. package/dist/compiler/transformers/core-runtime-apis.d.ts +0 -30
  408. package/dist/compiler/transformers/create-event.d.ts +0 -3
  409. package/dist/compiler/transformers/decorators-to-static/component-decorator.d.ts +0 -3
  410. package/dist/compiler/transformers/decorators-to-static/convert-decorators.d.ts +0 -3
  411. package/dist/compiler/transformers/decorators-to-static/decorator-utils.d.ts +0 -10
  412. package/dist/compiler/transformers/decorators-to-static/element-decorator.d.ts +0 -3
  413. package/dist/compiler/transformers/decorators-to-static/event-decorator.d.ts +0 -4
  414. package/dist/compiler/transformers/decorators-to-static/listen-decorator.d.ts +0 -6
  415. package/dist/compiler/transformers/decorators-to-static/method-decorator.d.ts +0 -3
  416. package/dist/compiler/transformers/decorators-to-static/prop-decorator.d.ts +0 -4
  417. package/dist/compiler/transformers/decorators-to-static/state-decorator.d.ts +0 -3
  418. package/dist/compiler/transformers/decorators-to-static/style-to-static.d.ts +0 -3
  419. package/dist/compiler/transformers/decorators-to-static/watch-decorator.d.ts +0 -3
  420. package/dist/compiler/transformers/define-custom-element.d.ts +0 -3
  421. package/dist/compiler/transformers/host-data-transform.d.ts +0 -3
  422. package/dist/compiler/transformers/legacy-props.d.ts +0 -3
  423. package/dist/compiler/transformers/remove-static-meta-properties.d.ts +0 -2
  424. package/dist/compiler/transformers/reserved-public-members.d.ts +0 -3
  425. package/dist/compiler/transformers/rindo-import-path.d.ts +0 -3
  426. package/dist/compiler/transformers/static-to-meta/call-expression.d.ts +0 -3
  427. package/dist/compiler/transformers/static-to-meta/class-methods.d.ts +0 -3
  428. package/dist/compiler/transformers/static-to-meta/component.d.ts +0 -3
  429. package/dist/compiler/transformers/static-to-meta/element-ref.d.ts +0 -2
  430. package/dist/compiler/transformers/static-to-meta/encapsulation.d.ts +0 -3
  431. package/dist/compiler/transformers/static-to-meta/events.d.ts +0 -3
  432. package/dist/compiler/transformers/static-to-meta/import.d.ts +0 -3
  433. package/dist/compiler/transformers/static-to-meta/listeners.d.ts +0 -3
  434. package/dist/compiler/transformers/static-to-meta/methods.d.ts +0 -3
  435. package/dist/compiler/transformers/static-to-meta/props.d.ts +0 -3
  436. package/dist/compiler/transformers/static-to-meta/states.d.ts +0 -3
  437. package/dist/compiler/transformers/static-to-meta/string-literal.d.ts +0 -3
  438. package/dist/compiler/transformers/static-to-meta/styles.d.ts +0 -3
  439. package/dist/compiler/transformers/static-to-meta/vdom.d.ts +0 -3
  440. package/dist/compiler/transformers/static-to-meta/visitor.d.ts +0 -3
  441. package/dist/compiler/transformers/static-to-meta/watchers.d.ts +0 -3
  442. package/dist/compiler/transformers/style-imports.d.ts +0 -3
  443. package/dist/compiler/transformers/transform-utils.d.ts +0 -31
  444. package/dist/compiler/transformers/update-component-class.d.ts +0 -3
  445. package/dist/compiler/transformers/update-rindo-core-import.d.ts +0 -3
  446. package/dist/compiler/transformers/watcher-meta-transform.d.ts +0 -3
  447. package/dist/compiler/transpile/compiler-options.d.ts +0 -4
  448. package/dist/compiler/transpile/transpile-app.d.ts +0 -2
  449. package/dist/compiler/transpile/transpile-module.d.ts +0 -5
  450. package/dist/compiler/transpile/transpile-service.d.ts +0 -3
  451. package/dist/compiler/transpile/transpile-to-es5-main.d.ts +0 -2
  452. package/dist/compiler/transpile/validate-types-main.d.ts +0 -2
  453. package/dist/compiler/types/generate-app-types.d.ts +0 -2
  454. package/dist/compiler/types/generate-component-types.d.ts +0 -8
  455. package/dist/compiler/types/generate-event-types.d.ts +0 -2
  456. package/dist/compiler/types/generate-method-types.d.ts +0 -2
  457. package/dist/compiler/types/generate-prop-types.d.ts +0 -2
  458. package/dist/compiler/types/generate-types.d.ts +0 -2
  459. package/dist/compiler/types/rindo-types.d.ts +0 -3
  460. package/dist/compiler/types/types-utils.d.ts +0 -4
  461. package/dist/compiler/types/update-import-refs.d.ts +0 -11
  462. package/dist/compiler/types/validate-package-json.d.ts +0 -9
  463. package/dist/declarations/assets.d.ts +0 -17
  464. package/dist/declarations/browser-compile.d.ts +0 -47
  465. package/dist/declarations/build-conditionals.d.ts +0 -91
  466. package/dist/declarations/build-events.d.ts +0 -19
  467. package/dist/declarations/build.d.ts +0 -247
  468. package/dist/declarations/cache.d.ts +0 -11
  469. package/dist/declarations/collection-manifest.d.ts +0 -106
  470. package/dist/declarations/collection.d.ts +0 -139
  471. package/dist/declarations/compiler.d.ts +0 -53
  472. package/dist/declarations/component-compiler-meta.d.ts +0 -198
  473. package/dist/declarations/component-constructor.d.ts +0 -61
  474. package/dist/declarations/component-interfaces.d.ts +0 -123
  475. package/dist/declarations/config.d.ts +0 -409
  476. package/dist/declarations/css-var-shim.d.ts +0 -9
  477. package/dist/declarations/decorators.d.ts +0 -150
  478. package/dist/declarations/dev-server.d.ts +0 -135
  479. package/dist/declarations/diagnostics.d.ts +0 -21
  480. package/dist/declarations/entry.d.ts +0 -28
  481. package/dist/declarations/events.d.ts +0 -13
  482. package/dist/declarations/file-system.d.ts +0 -91
  483. package/dist/declarations/fs-watch.d.ts +0 -15
  484. package/dist/declarations/host-element.d.ts +0 -53
  485. package/dist/declarations/hydrate.d.ts +0 -99
  486. package/dist/declarations/in-memory-fs.d.ts +0 -59
  487. package/dist/declarations/index.d.ts +0 -45
  488. package/dist/declarations/jsdoc.d.ts +0 -16
  489. package/dist/declarations/jsx.d.ts +0 -1050
  490. package/dist/declarations/logger.d.ts +0 -25
  491. package/dist/declarations/minify-js.d.ts +0 -11
  492. package/dist/declarations/module.d.ts +0 -35
  493. package/dist/declarations/optimize-css.d.ts +0 -12
  494. package/dist/declarations/output-targets.d.ts +0 -189
  495. package/dist/declarations/plugin.d.ts +0 -23
  496. package/dist/declarations/prerender.d.ts +0 -79
  497. package/dist/declarations/render.d.ts +0 -62
  498. package/dist/declarations/runtime.d.ts +0 -92
  499. package/dist/declarations/screenshots.d.ts +0 -192
  500. package/dist/declarations/server.d.ts +0 -19
  501. package/dist/declarations/style.d.ts +0 -35
  502. package/dist/declarations/system.d.ts +0 -174
  503. package/dist/declarations/testing.d.ts +0 -523
  504. package/dist/declarations/transpile.d.ts +0 -24
  505. package/dist/declarations/types.d.ts +0 -24
  506. package/dist/declarations/vdom.d.ts +0 -55
  507. package/dist/declarations/worker.d.ts +0 -33
  508. package/dist/dev-server/content-type-db.json +0 -1
  509. package/dist/dev-server/index.js +0 -887
  510. package/dist/dev-server/static/app-error.css +0 -257
  511. package/dist/dev-server/static/dev-server-client.html +0 -13
  512. package/dist/hydrate/index.d.ts +0 -101
  513. package/dist/hydrate/index.mjs +0 -1281
  514. package/dist/hydrate/platform.mjs +0 -347
  515. package/dist/index.d.ts +0 -99
  516. package/dist/index.js +0 -1
  517. package/dist/mock-doc/index.d.ts +0 -851
  518. package/dist/mock-doc/index.js +0 -3982
  519. package/dist/mock-doc/index.mjs +0 -3954
  520. package/dist/runtime/index.js +0 -2576
  521. package/dist/runtime/index.mjs +0 -2521
  522. package/dist/runtime/shadow-css-6ef31c68.js +0 -386
  523. package/dist/runtime/shadow-css-8fd1a9e4.js +0 -388
  524. package/dist/screenshot/index.js +0 -520
  525. package/dist/sys/node/graceful-fs.js +0 -975
  526. package/dist/sys/node/index.js +0 -33545
  527. package/dist/sys/node/node-fetch.js +0 -1779
  528. package/dist/sys/node/open-in-editor.js +0 -734
  529. package/dist/sys/node/sys-worker.js +0 -67035
  530. package/dist/sys/node/websocket.js +0 -3728
  531. package/dist/testing/build-conditionals.d.ts +0 -4
  532. package/dist/testing/build-conditionals.js +0 -43
  533. package/dist/testing/core.d.ts +0 -35
  534. package/dist/testing/core.js +0 -52
  535. package/dist/testing/index.js +0 -40511
  536. package/dist/testing/jest/jest-config.d.ts +0 -4
  537. package/dist/testing/mock-fetch.d.ts +0 -46
  538. package/dist/testing/mocks.d.ts +0 -12
  539. package/dist/testing/platform.d.ts +0 -23
  540. package/dist/testing/platform.js +0 -321
  541. package/dist/testing/puppeteer/puppeteer-emulate.d.ts +0 -2
  542. package/dist/testing/puppeteer/puppeteer-find.d.ts +0 -5
  543. package/dist/testing/puppeteer/puppeteer-page.d.ts +0 -2
  544. package/dist/testing/puppeteer/puppeteer-screenshot.d.ts +0 -4
  545. package/dist/testing/spec-page.d.ts +0 -5
  546. package/dist/testing/task-queue.d.ts +0 -15
  547. package/dist/testing/test-transpile.d.ts +0 -5
  548. package/dist/testing/testing-fs.d.ts +0 -31
  549. package/dist/testing/testing-sys.d.ts +0 -19
  550. package/dist/testing/testing.d.ts +0 -12
  551. package/dist/utils/index.js +0 -1575
  552. package/dist/utils/index.mjs +0 -1511
  553. package/internal/client/css-shim.rindo-client.mjs +0 -656
  554. package/internal/client/index.mjs +0 -2859
  555. package/internal/client/polyfills/promise.js +0 -9
  556. package/internal/images.d.ts +0 -5
  557. package/runtime/package.json +0 -5
  558. package/screenshot/compare/build/p-020f8d73.js +0 -1
  559. package/screenshot/compare/build/p-09qdknbg.system.entry.js +0 -1
  560. package/screenshot/compare/build/p-0a13mpsc.system.entry.js +0 -1
  561. package/screenshot/compare/build/p-168ec2c4.system.js +0 -1
  562. package/screenshot/compare/build/p-2ab1fdf1.system.js +0 -1
  563. package/screenshot/compare/build/p-2pxcsgrj.entry.js +0 -1
  564. package/screenshot/compare/build/p-42fb7034.system.js +0 -1
  565. package/screenshot/compare/build/p-54d9d7c2.system.js +0 -1
  566. package/screenshot/compare/build/p-67c1f911.js +0 -1
  567. package/screenshot/compare/build/p-68613371.system.js +0 -1
  568. package/screenshot/compare/build/p-7dvsjpu0.entry.js +0 -1
  569. package/screenshot/compare/build/p-aa67fb06.js +0 -1
  570. package/screenshot/compare/build/p-aeb3cec1.system.js +0 -1
  571. package/screenshot/compare/build/p-b6e44a24.js +0 -1
  572. package/screenshot/compare/build/p-c1c25b8a.js +0 -1
  573. package/screenshot/compare/build/p-c9bopbjy.system.entry.js +0 -1
  574. package/screenshot/compare/build/p-c9iqz1pp.system.entry.js +0 -1
  575. package/screenshot/compare/build/p-dizjz8rg.entry.js +0 -1
  576. package/screenshot/compare/build/p-dnta0rwp.system.entry.js +0 -1
  577. package/screenshot/compare/build/p-e9670d22.system.js +0 -1
  578. package/screenshot/compare/build/p-ei9jkpd0.system.entry.js +0 -1
  579. package/screenshot/compare/build/p-ejwcppol.entry.js +0 -1
  580. package/screenshot/compare/build/p-f6612d5d.system.js +0 -1
  581. package/screenshot/compare/build/p-foiivsfc.css +0 -1
  582. package/screenshot/compare/build/p-gpjjyogx.entry.js +0 -1
  583. package/screenshot/compare/build/p-howklem2.system.entry.js +0 -1
  584. package/screenshot/compare/build/p-knv9wvoc.entry.js +0 -1
  585. package/screenshot/compare/build/p-nsqsfhhy.entry.js +0 -1
  586. package/screenshot/compare/build/p-ojt278pp.entry.js +0 -1
  587. package/screenshot/compare/build/p-oywass99.entry.js +0 -1
  588. package/screenshot/compare/build/p-q3ujhub6.entry.js +0 -1
  589. package/screenshot/compare/build/p-qw4xnmxv.entry.js +0 -1
  590. package/screenshot/compare/build/p-t1wvevhc.system.entry.js +0 -1
  591. package/screenshot/compare/build/p-tnjarrex.system.entry.js +0 -1
  592. package/screenshot/compare/build/p-vhfpd6kk.system.entry.js +0 -1
  593. package/screenshot/compare/build/p-vk6rhemd.system.entry.js +0 -1
  594. package/screenshot/compare/build/p-w6bnm16k.entry.js +0 -1
  595. package/screenshot/compare/build/p-xje6d7zl.system.entry.js +0 -1
  596. package/screenshot/compare/build/p-y5jlrcha.system.entry.js +0 -1
  597. package/screenshot/compare/build/p-yh170wkt.entry.js +0 -1
  598. package/testing/jest.preprocessor.js +0 -7
  599. /package/{dist/dev-server → dev-server}/static/favicon.ico +0 -0
  600. /package/{dist/sys/node → dev-server}/visualstudio.vbs +0 -0
  601. /package/{dist/sys/node → dev-server}/xdg-open +0 -0
  602. /package/{dist/compiler/polyfills.d.ts → screenshot/compare/build/index.esm.js} +0 -0
  603. /package/{dist/screenshot → screenshot}/pixel-match.d.ts +0 -0
  604. /package/{dist/testing → testing}/jest/jest-setup-test-framework.d.ts +0 -0
  605. /package/{dist/testing → testing}/matchers/attributes.d.ts +0 -0
  606. /package/{dist/testing → testing}/matchers/class-list.d.ts +0 -0
  607. /package/{dist/testing → testing}/matchers/html.d.ts +0 -0
  608. /package/{dist/testing → testing}/matchers/text.d.ts +0 -0
@@ -0,0 +1,777 @@
1
+ function createWindowFromHtml(e, t) {
2
+ let r = templateWindows.get(t);
3
+ return null == r && (r = new MockWindow(e), templateWindows.set(t, r)), cloneWindow(r);
4
+ }
5
+
6
+ function normalizeHydrateOptions(e) {
7
+ const t = Object.assign({
8
+ serializeToHtml: !1,
9
+ destroyWindow: !1,
10
+ destroyDocument: !1
11
+ }, e || {});
12
+ return "boolean" != typeof t.clientHydrateAnnotations && (t.clientHydrateAnnotations = !0),
13
+ "boolean" != typeof t.constrainTimeouts && (t.constrainTimeouts = !0), "number" != typeof t.maxHydrateCount && (t.maxHydrateCount = 300),
14
+ "boolean" != typeof t.runtimeLogging && (t.runtimeLogging = !1), "number" != typeof t.timeout && (t.timeout = 15e3),
15
+ Array.isArray(t.excludeComponents) ? t.excludeComponents = t.excludeComponents.filter(filterValidTags).map(mapValidTags) : t.excludeComponents = [],
16
+ Array.isArray(t.staticComponents) ? t.staticComponents = t.staticComponents.filter(filterValidTags).map(mapValidTags) : t.staticComponents = [],
17
+ t;
18
+ }
19
+
20
+ function filterValidTags(e) {
21
+ return "string" == typeof e && e.includes("-");
22
+ }
23
+
24
+ function mapValidTags(e) {
25
+ return e.trim().toLowerCase();
26
+ }
27
+
28
+ function generateHydrateResults(e) {
29
+ "string" != typeof e.url && (e.url = "https://hydrate-rindojs.web.app/"), "string" != typeof e.buildId && (e.buildId = createHydrateBuildId());
30
+ const t = {
31
+ buildId: e.buildId,
32
+ diagnostics: [],
33
+ url: e.url,
34
+ host: null,
35
+ hostname: null,
36
+ href: null,
37
+ pathname: null,
38
+ port: null,
39
+ search: null,
40
+ hash: null,
41
+ html: null,
42
+ httpStatus: null,
43
+ hydratedCount: 0,
44
+ anchors: [],
45
+ components: [],
46
+ imgs: [],
47
+ scripts: [],
48
+ staticData: [],
49
+ styles: [],
50
+ title: null
51
+ };
52
+ try {
53
+ const r = new URL(e.url, "https://hydrate-rindojs.web.app/");
54
+ t.url = r.href, t.host = r.host, t.hostname = r.hostname, t.href = r.href, t.port = r.port,
55
+ t.pathname = r.pathname, t.search = r.search, t.hash = r.hash;
56
+ } catch (e) {
57
+ renderCatchError(t, e);
58
+ }
59
+ return t;
60
+ }
61
+
62
+ function renderBuildDiagnostic(e, t, r, s) {
63
+ const n = {
64
+ level: t,
65
+ type: "build",
66
+ header: r,
67
+ messageText: s,
68
+ relFilePath: null,
69
+ absFilePath: null,
70
+ lines: []
71
+ };
72
+ return e.pathname ? "/" !== e.pathname && (n.header += ": " + e.pathname) : e.url && (n.header += ": " + e.url),
73
+ e.diagnostics.push(n), n;
74
+ }
75
+
76
+ function renderBuildError(e, t) {
77
+ return renderBuildDiagnostic(e, "error", "Hydrate Error", t);
78
+ }
79
+
80
+ function renderCatchError(e, t) {
81
+ const r = renderBuildError(e, null);
82
+ return null != t && (null != t.stack ? r.messageText = t.stack.toString() : null != t.message ? r.messageText = t.message.toString() : r.messageText = t.toString()),
83
+ r;
84
+ }
85
+
86
+ function runtimeLog(e, t, r) {
87
+ global.console[t].apply(global.console, [ `[ ${e} ${t} ] `, ...r ]);
88
+ }
89
+
90
+ function inspectElement(e, t, r) {
91
+ const s = t.children;
92
+ for (let t = 0, n = s.length; t < n; t++) {
93
+ const n = s[t], o = n.nodeName.toLowerCase();
94
+ if (o.includes("-")) {
95
+ const t = e.components.find((e => e.tag === o));
96
+ null != t && (t.count++, r > t.depth && (t.depth = r));
97
+ } else switch (o) {
98
+ case "a":
99
+ const t = collectAttributes(n);
100
+ t.href = n.href, "string" == typeof t.href && (e.anchors.some((e => e.href === t.href)) || e.anchors.push(t));
101
+ break;
102
+
103
+ case "img":
104
+ const r = collectAttributes(n);
105
+ r.src = n.src, "string" == typeof r.src && (e.imgs.some((e => e.src === r.src)) || e.imgs.push(r));
106
+ break;
107
+
108
+ case "link":
109
+ const s = collectAttributes(n);
110
+ s.href = n.href, "string" == typeof s.rel && "stylesheet" === s.rel.toLowerCase() && "string" == typeof s.href && (e.styles.some((e => e.link === s.href)) || (delete s.rel,
111
+ delete s.type, e.styles.push(s)));
112
+ break;
113
+
114
+ case "script":
115
+ const o = collectAttributes(n);
116
+ if (n.hasAttribute("src")) o.src = n.src, "string" == typeof o.src && (e.scripts.some((e => e.src === o.src)) || e.scripts.push(o)); else {
117
+ const t = n.getAttribute("data-rindo-static");
118
+ t && e.staticData.push({
119
+ id: t,
120
+ type: n.getAttribute("type"),
121
+ content: n.textContent
122
+ });
123
+ }
124
+ }
125
+ inspectElement(e, n, ++r);
126
+ }
127
+ }
128
+
129
+ function collectAttributes(e) {
130
+ const t = {}, r = e.attributes;
131
+ for (let e = 0, s = r.length; e < s; e++) {
132
+ const s = r.item(e), n = s.nodeName.toLowerCase();
133
+ if (SKIP_ATTRS.has(n)) continue;
134
+ const o = s.nodeValue;
135
+ "class" === n && "" === o || (t[n] = o);
136
+ }
137
+ return t;
138
+ }
139
+
140
+ function patchDomImplementation(e, t) {
141
+ let r;
142
+ if (null != e.defaultView ? (t.destroyWindow = !0, patchWindow(e.defaultView), r = e.defaultView) : (t.destroyWindow = !0,
143
+ t.destroyDocument = !1, r = new MockWindow(!1)), r.document !== e && (r.document = e),
144
+ e.defaultView !== r && (e.defaultView = r), "function" != typeof e.documentElement.constructor.prototype.getRootNode && (e.createElement("unknown-element").constructor.prototype.getRootNode = getRootNode),
145
+ "function" == typeof e.createEvent) {
146
+ const t = e.createEvent("CustomEvent").constructor;
147
+ r.CustomEvent !== t && (r.CustomEvent = t);
148
+ }
149
+ try {
150
+ e.baseURI;
151
+ } catch (t) {
152
+ Object.defineProperty(e, "baseURI", {
153
+ get() {
154
+ const t = e.querySelector("base[href]");
155
+ return t ? new URL(t.getAttribute("href"), r.location.href).href : r.location.href;
156
+ }
157
+ });
158
+ }
159
+ return r;
160
+ }
161
+
162
+ function getRootNode(e) {
163
+ const t = null != e && !0 === e.composed;
164
+ let r = this;
165
+ for (;null != r.parentNode; ) r = r.parentNode, !0 === t && null == r.parentNode && null != r.host && (r = r.host);
166
+ return r;
167
+ }
168
+
169
+ function renderToString(e, t) {
170
+ const r = normalizeHydrateOptions(t);
171
+ return r.serializeToHtml = !0, new Promise((t => {
172
+ let s;
173
+ const n = generateHydrateResults(r);
174
+ if (hasError(n.diagnostics)) t(n); else if ("string" == typeof e) try {
175
+ r.destroyWindow = !0, r.destroyDocument = !0, s = new MockWindow(e), render(s, r, n, t);
176
+ } catch (e) {
177
+ s && s.close && s.close(), s = null, renderCatchError(n, e), t(n);
178
+ } else if (isValidDocument(e)) try {
179
+ r.destroyDocument = !1, s = patchDomImplementation(e, r), render(s, r, n, t);
180
+ } catch (e) {
181
+ s && s.close && s.close(), s = null, renderCatchError(n, e), t(n);
182
+ } else renderBuildError(n, 'Invalid html or document. Must be either a valid "html" string, or DOM "document".'),
183
+ t(n);
184
+ }));
185
+ }
186
+
187
+ function hydrateDocument(e, t) {
188
+ const r = normalizeHydrateOptions(t);
189
+ return r.serializeToHtml = !1, new Promise((t => {
190
+ let s;
191
+ const n = generateHydrateResults(r);
192
+ if (hasError(n.diagnostics)) t(n); else if ("string" == typeof e) try {
193
+ r.destroyWindow = !0, r.destroyDocument = !0, s = new MockWindow(e), render(s, r, n, t);
194
+ } catch (e) {
195
+ s && s.close && s.close(), s = null, renderCatchError(n, e), t(n);
196
+ } else if (isValidDocument(e)) try {
197
+ r.destroyDocument = !1, s = patchDomImplementation(e, r), render(s, r, n, t);
198
+ } catch (e) {
199
+ s && s.close && s.close(), s = null, renderCatchError(n, e), t(n);
200
+ } else renderBuildError(n, 'Invalid html or document. Must be either a valid "html" string, or DOM "document".'),
201
+ t(n);
202
+ }));
203
+ }
204
+
205
+ function render(e, t, r, s) {
206
+ if (process.__rindoErrors || (process.__rindoErrors = !0, process.on("unhandledRejection", (e => {
207
+ console.log("unhandledRejection", e);
208
+ }))), function n(e, t, r, s) {
209
+ try {
210
+ e.location.href = r.url;
211
+ } catch (e) {
212
+ renderCatchError(s, e);
213
+ }
214
+ if ("string" == typeof r.userAgent) try {
215
+ e.navigator.userAgent = r.userAgent;
216
+ } catch (e) {}
217
+ if ("string" == typeof r.cookie) try {
218
+ t.cookie = r.cookie;
219
+ } catch (e) {}
220
+ if ("string" == typeof r.referrer) try {
221
+ t.referrer = r.referrer;
222
+ } catch (e) {}
223
+ if ("string" == typeof r.direction) try {
224
+ t.documentElement.setAttribute("dir", r.direction);
225
+ } catch (e) {}
226
+ if ("string" == typeof r.language) try {
227
+ t.documentElement.setAttribute("lang", r.language);
228
+ } catch (e) {}
229
+ if ("string" == typeof r.buildId) try {
230
+ t.documentElement.setAttribute("data-rindo-build", r.buildId);
231
+ } catch (e) {}
232
+ try {
233
+ e.customElements = null;
234
+ } catch (e) {}
235
+ return r.constrainTimeouts && constrainTimeouts(e), function n(e, t, r) {
236
+ try {
237
+ const s = e.location.pathname;
238
+ e.console.error = (...e) => {
239
+ const n = e.reduce(((e, t) => {
240
+ if (t) {
241
+ if (null != t.stack) return e + " " + String(t.stack);
242
+ if (null != t.message) return e + " " + String(t.message);
243
+ }
244
+ return String(t);
245
+ }), "").trim();
246
+ "" !== n && (renderCatchError(r, n), t.runtimeLogging && runtimeLog(s, "error", [ n ]));
247
+ }, e.console.debug = (...e) => {
248
+ renderBuildDiagnostic(r, "debug", "Hydrate Debug", [ ...e ].join(", ")), t.runtimeLogging && runtimeLog(s, "debug", e);
249
+ }, t.runtimeLogging && [ "log", "warn", "assert", "info", "trace" ].forEach((t => {
250
+ e.console[t] = (...e) => {
251
+ runtimeLog(s, t, e);
252
+ };
253
+ }));
254
+ } catch (e) {
255
+ renderCatchError(r, e);
256
+ }
257
+ }(e, r, s), e;
258
+ }(e, e.document, t, r), "function" == typeof t.beforeHydrate) try {
259
+ const n = t.beforeHydrate(e.document);
260
+ isPromise(n) ? n.then((() => {
261
+ hydrateFactory(e, t, r, afterHydrate, s);
262
+ })) : hydrateFactory(e, t, r, afterHydrate, s);
263
+ } catch (n) {
264
+ renderCatchError(r, n), finalizeHydrate(e, e.document, t, r, s);
265
+ } else hydrateFactory(e, t, r, afterHydrate, s);
266
+ }
267
+
268
+ function afterHydrate(e, t, r, s) {
269
+ if ("function" == typeof t.afterHydrate) try {
270
+ const n = t.afterHydrate(e.document);
271
+ isPromise(n) ? n.then((() => {
272
+ finalizeHydrate(e, e.document, t, r, s);
273
+ })) : finalizeHydrate(e, e.document, t, r, s);
274
+ } catch (n) {
275
+ renderCatchError(r, n), finalizeHydrate(e, e.document, t, r, s);
276
+ } else finalizeHydrate(e, e.document, t, r, s);
277
+ }
278
+
279
+ function finalizeHydrate(e, t, r, s, n) {
280
+ try {
281
+ if (inspectElement(s, t.documentElement, 0), !1 !== r.removeUnusedStyles) try {
282
+ ((e, t) => {
283
+ try {
284
+ const r = e.head.querySelectorAll("style[data-styles]"), s = r.length;
285
+ if (s > 0) {
286
+ const n = (e => {
287
+ const t = {
288
+ attrs: new Set,
289
+ classNames: new Set,
290
+ ids: new Set,
291
+ tags: new Set
292
+ };
293
+ return collectUsedSelectors(t, e), t;
294
+ })(e.documentElement);
295
+ for (let e = 0; e < s; e++) removeUnusedStyleText(n, t, r[e]);
296
+ }
297
+ } catch (e) {
298
+ ((e, t, r) => {
299
+ const s = {
300
+ level: "error",
301
+ type: "build",
302
+ header: "Build Error",
303
+ messageText: "build error",
304
+ relFilePath: null,
305
+ absFilePath: null,
306
+ lines: []
307
+ };
308
+ null != t && (null != t.stack ? s.messageText = t.stack.toString() : null != t.message ? s.messageText = t.message.toString() : s.messageText = t.toString()),
309
+ null == e || shouldIgnoreError(s.messageText) || e.push(s);
310
+ })(t, e);
311
+ }
312
+ })(t, s.diagnostics);
313
+ } catch (e) {
314
+ renderCatchError(s, e);
315
+ }
316
+ if ("string" == typeof r.title) try {
317
+ t.title = r.title;
318
+ } catch (e) {
319
+ renderCatchError(s, e);
320
+ }
321
+ s.title = t.title, r.removeScripts && removeScripts(t.documentElement);
322
+ try {
323
+ ((e, t) => {
324
+ let r = e.head.querySelector('link[rel="canonical"]');
325
+ "string" == typeof t ? (null == r && (r = e.createElement("link"), r.setAttribute("rel", "canonical"),
326
+ e.head.appendChild(r)), r.setAttribute("href", t)) : null != r && (r.getAttribute("href") || r.parentNode.removeChild(r));
327
+ })(t, r.canonicalUrl);
328
+ } catch (e) {
329
+ renderCatchError(s, e);
330
+ }
331
+ try {
332
+ (e => {
333
+ const t = e.head;
334
+ let r = t.querySelector("meta[charset]");
335
+ null == r ? (r = e.createElement("meta"), r.setAttribute("charset", "utf-8")) : r.remove(),
336
+ t.insertBefore(r, t.firstChild);
337
+ })(t);
338
+ } catch (e) {}
339
+ hasError(s.diagnostics) || (s.httpStatus = 200);
340
+ try {
341
+ const e = t.head.querySelector('meta[http-equiv="status"]');
342
+ if (null != e) {
343
+ const t = e.getAttribute("content");
344
+ t && t.length > 0 && (s.httpStatus = parseInt(t, 10));
345
+ }
346
+ } catch (e) {}
347
+ r.clientHydrateAnnotations && t.documentElement.classList.add("hydrated"), r.serializeToHtml && (s.html = serializeDocumentToString(t, r));
348
+ } catch (e) {
349
+ renderCatchError(s, e);
350
+ }
351
+ if (r.destroyWindow) try {
352
+ r.destroyDocument || (e.document = null, t.defaultView = null), e.close && e.close();
353
+ } catch (e) {
354
+ renderCatchError(s, e);
355
+ }
356
+ n(s);
357
+ }
358
+
359
+ function serializeDocumentToString(e, t) {
360
+ return serializeNodeToHtml(e, {
361
+ approximateLineWidth: t.approximateLineWidth,
362
+ outerHtml: !1,
363
+ prettyHtml: t.prettyHtml,
364
+ removeAttributeQuotes: t.removeAttributeQuotes,
365
+ removeBooleanAttributeQuotes: t.removeBooleanAttributeQuotes,
366
+ removeEmptyAttributes: t.removeEmptyAttributes,
367
+ removeHtmlComments: t.removeHtmlComments,
368
+ serializeShadowRoot: !1
369
+ });
370
+ }
371
+
372
+ function isValidDocument(e) {
373
+ return null != e && 9 === e.nodeType && null != e.documentElement && 1 === e.documentElement.nodeType && null != e.body && 1 === e.body.nodeType;
374
+ }
375
+
376
+ function removeScripts(e) {
377
+ const t = e.children;
378
+ for (let e = t.length - 1; e >= 0; e--) {
379
+ const r = t[e];
380
+ removeScripts(r), ("SCRIPT" === r.nodeName || "LINK" === r.nodeName && "modulepreload" === r.getAttribute("rel")) && r.remove();
381
+ }
382
+ }
383
+
384
+ import { MockWindow, cloneWindow, constrainTimeouts, patchWindow, serializeNodeToHtml } from "@rindo/core/mock-doc";
385
+
386
+ import { hydrateFactory } from "@rindo/core/hydrate-factory";
387
+
388
+ const templateWindows = new Map, createHydrateBuildId = () => {
389
+ let e = "abcdefghijklmnopqrstuvwxyz", t = "";
390
+ for (;t.length < 8; ) t += e[Math.floor(Math.random() * e.length)], 1 === t.length && (e += "0123456789");
391
+ return t;
392
+ }, isPromise = e => !!e && ("object" == typeof e || "function" == typeof e) && "function" == typeof e.then, hasError = e => null != e && 0 !== e.length && e.some((e => "error" === e.level && "runtime" !== e.type)), shouldIgnoreError = e => e === TASK_CANCELED_MSG, TASK_CANCELED_MSG = "task canceled", SKIP_ATTRS = new Set([ "s-id", "c-id" ]), collectUsedSelectors = (e, t) => {
393
+ if (null != t && 1 === t.nodeType) {
394
+ const r = t.children, s = t.nodeName.toLowerCase();
395
+ e.tags.add(s);
396
+ const n = t.attributes;
397
+ for (let r = 0, s = n.length; r < s; r++) {
398
+ const s = n.item(r), o = s.name.toLowerCase();
399
+ if (e.attrs.add(o), "class" === o) {
400
+ const r = t.classList;
401
+ for (let t = 0, s = r.length; t < s; t++) e.classNames.add(r.item(t));
402
+ } else "id" === o && e.ids.add(s.value);
403
+ }
404
+ if (r) for (let t = 0, s = r.length; t < s; t++) collectUsedSelectors(e, r[t]);
405
+ }
406
+ }, parseCss = (e, t) => {
407
+ let r = 1, s = 1;
408
+ const n = [], o = e => {
409
+ const t = e.match(/\n/g);
410
+ t && (r += t.length);
411
+ const n = e.lastIndexOf("\n");
412
+ s = ~n ? e.length - n : s + e.length;
413
+ }, i = () => {
414
+ const e = {
415
+ line: r,
416
+ column: s
417
+ };
418
+ return t => (t.position = new z(e), m(), t);
419
+ }, a = o => {
420
+ const i = e.split("\n"), a = {
421
+ level: "error",
422
+ type: "css",
423
+ language: "css",
424
+ header: "CSS Parse",
425
+ messageText: o,
426
+ absFilePath: t,
427
+ lines: [ {
428
+ lineIndex: r - 1,
429
+ lineNumber: r,
430
+ errorCharStart: s,
431
+ text: e[r - 1]
432
+ } ]
433
+ };
434
+ if (r > 1) {
435
+ const t = {
436
+ lineIndex: r - 1,
437
+ lineNumber: r - 1,
438
+ text: e[r - 2],
439
+ errorCharStart: -1,
440
+ errorLength: -1
441
+ };
442
+ a.lines.unshift(t);
443
+ }
444
+ if (r + 2 < i.length) {
445
+ const e = {
446
+ lineIndex: r,
447
+ lineNumber: r + 1,
448
+ text: i[r],
449
+ errorCharStart: -1,
450
+ errorLength: -1
451
+ };
452
+ a.lines.push(e);
453
+ }
454
+ return n.push(a), null;
455
+ }, l = () => u(/^{\s*/), c = () => u(/^}/), u = t => {
456
+ const r = t.exec(e);
457
+ if (!r) return;
458
+ const s = r[0];
459
+ return o(s), e = e.slice(s.length), r;
460
+ }, d = () => {
461
+ let t;
462
+ const r = [];
463
+ for (m(), h(r); e.length && "}" !== e.charAt(0) && (t = w() || A()); ) !1 !== t && (r.push(t),
464
+ h(r));
465
+ return r;
466
+ }, m = () => u(/^\s*/), h = e => {
467
+ let t;
468
+ for (e = e || []; t = p(); ) !1 !== t && e.push(t);
469
+ return e;
470
+ }, p = () => {
471
+ const t = i();
472
+ if ("/" !== e.charAt(0) || "*" !== e.charAt(1)) return null;
473
+ let r = 2;
474
+ for (;"" !== e.charAt(r) && ("*" !== e.charAt(r) || "/" !== e.charAt(r + 1)); ) ++r;
475
+ if (r += 2, "" === e.charAt(r - 1)) return a("End of comment missing");
476
+ const n = e.slice(2, r - 2);
477
+ return s += 2, o(n), e = e.slice(r), s += 2, t({
478
+ type: 1,
479
+ comment: n
480
+ });
481
+ }, f = () => {
482
+ const e = u(/^([^{]+)/);
483
+ return e ? trim(e[0]).replace(/\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*\/+/g, "").replace(/"(?:\\"|[^"])*"|'(?:\\'|[^'])*'/g, (function(e) {
484
+ return e.replace(/,/g, "‌");
485
+ })).split(/\s*(?![^(]*\)),\s*/).map((function(e) {
486
+ return e.replace(/\u200C/g, ",");
487
+ })) : null;
488
+ }, g = () => {
489
+ const e = i();
490
+ let t = u(/^(\*?[-#\/\*\\\w]+(\[[0-9a-z_-]+\])?)\s*/);
491
+ if (!t) return null;
492
+ if (t = trim(t[0]), !u(/^:\s*/)) return a("property missing ':'");
493
+ const r = u(/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^\)]*?\)|[^};])+)/), s = e({
494
+ type: 4,
495
+ property: t.replace(commentre, ""),
496
+ value: r ? trim(r[0]).replace(commentre, "") : ""
497
+ });
498
+ return u(/^[;\s]*/), s;
499
+ }, y = () => {
500
+ const e = [];
501
+ if (!l()) return a("missing '{'");
502
+ let t;
503
+ for (h(e); t = g(); ) !1 !== t && (e.push(t), h(e));
504
+ return c() ? e : a("missing '}'");
505
+ }, C = () => {
506
+ let e;
507
+ const t = [], r = i();
508
+ for (;e = u(/^((\d+\.\d+|\.\d+|\d+)%?|[a-z]+)\s*/); ) t.push(e[1]), u(/^,\s*/);
509
+ return t.length ? r({
510
+ type: 9,
511
+ values: t,
512
+ declarations: y()
513
+ }) : null;
514
+ }, S = (e, t) => {
515
+ const r = new RegExp("^@" + e + "\\s*([^;]+);");
516
+ return () => {
517
+ const s = i(), n = u(r);
518
+ if (!n) return null;
519
+ const o = {
520
+ type: t
521
+ };
522
+ return o[e] = n[1].trim(), s(o);
523
+ };
524
+ }, E = S("import", 7), b = S("charset", 0), T = S("namespace", 11), w = () => "@" !== e[0] ? null : (() => {
525
+ const e = i();
526
+ let t = u(/^@([-\w]+)?keyframes\s*/);
527
+ if (!t) return null;
528
+ const r = t[1];
529
+ if (t = u(/^([-\w]+)\s*/), !t) return a("@keyframes missing name");
530
+ const s = t[1];
531
+ if (!l()) return a("@keyframes missing '{'");
532
+ let n, o = h();
533
+ for (;n = C(); ) o.push(n), o = o.concat(h());
534
+ return c() ? e({
535
+ type: 8,
536
+ name: s,
537
+ vendor: r,
538
+ keyframes: o
539
+ }) : a("@keyframes missing '}'");
540
+ })() || (() => {
541
+ const e = i(), t = u(/^@media *([^{]+)/);
542
+ if (!t) return null;
543
+ const r = trim(t[1]);
544
+ if (!l()) return a("@media missing '{'");
545
+ const s = h().concat(d());
546
+ return c() ? e({
547
+ type: 10,
548
+ media: r,
549
+ rules: s
550
+ }) : a("@media missing '}'");
551
+ })() || (() => {
552
+ const e = i(), t = u(/^@custom-media\s+(--[^\s]+)\s*([^{;]+);/);
553
+ return t ? e({
554
+ type: 2,
555
+ name: trim(t[1]),
556
+ media: trim(t[2])
557
+ }) : null;
558
+ })() || (() => {
559
+ const e = i(), t = u(/^@supports *([^{]+)/);
560
+ if (!t) return null;
561
+ const r = trim(t[1]);
562
+ if (!l()) return a("@supports missing '{'");
563
+ const s = h().concat(d());
564
+ return c() ? e({
565
+ type: 15,
566
+ supports: r,
567
+ rules: s
568
+ }) : a("@supports missing '}'");
569
+ })() || E() || b() || T() || (() => {
570
+ const e = i(), t = u(/^@([-\w]+)?document *([^{]+)/);
571
+ if (!t) return null;
572
+ const r = trim(t[1]), s = trim(t[2]);
573
+ if (!l()) return a("@document missing '{'");
574
+ const n = h().concat(d());
575
+ return c() ? e({
576
+ type: 3,
577
+ document: s,
578
+ vendor: r,
579
+ rules: n
580
+ }) : a("@document missing '}'");
581
+ })() || (() => {
582
+ const e = i();
583
+ if (!u(/^@page */)) return null;
584
+ const t = f() || [];
585
+ if (!l()) return a("@page missing '{'");
586
+ let r, s = h();
587
+ for (;r = g(); ) s.push(r), s = s.concat(h());
588
+ return c() ? e({
589
+ type: 12,
590
+ selectors: t,
591
+ declarations: s
592
+ }) : a("@page missing '}'");
593
+ })() || (() => {
594
+ const e = i();
595
+ if (!u(/^@host\s*/)) return null;
596
+ if (!l()) return a("@host missing '{'");
597
+ const t = h().concat(d());
598
+ return c() ? e({
599
+ type: 6,
600
+ rules: t
601
+ }) : a("@host missing '}'");
602
+ })() || (() => {
603
+ const e = i();
604
+ if (!u(/^@font-face\s*/)) return null;
605
+ if (!l()) return a("@font-face missing '{'");
606
+ let t, r = h();
607
+ for (;t = g(); ) r.push(t), r = r.concat(h());
608
+ return c() ? e({
609
+ type: 5,
610
+ declarations: r
611
+ }) : a("@font-face missing '}'");
612
+ })(), A = () => {
613
+ const e = i(), t = f();
614
+ return t ? (h(), e({
615
+ type: 13,
616
+ selectors: t,
617
+ declarations: y()
618
+ })) : a("selector missing");
619
+ };
620
+ class z {
621
+ constructor(e) {
622
+ this.start = e, this.end = {
623
+ line: r,
624
+ column: s
625
+ }, this.source = t;
626
+ }
627
+ }
628
+ return z.prototype.content = e, {
629
+ diagnostics: n,
630
+ ...addParent((() => {
631
+ const e = d();
632
+ return {
633
+ type: 14,
634
+ stylesheet: {
635
+ source: t,
636
+ rules: e
637
+ }
638
+ };
639
+ })())
640
+ };
641
+ }, trim = e => e ? e.trim() : "", addParent = (e, t) => {
642
+ const r = e && "string" == typeof e.type, s = r ? e : t;
643
+ for (const t in e) {
644
+ const r = e[t];
645
+ Array.isArray(r) ? r.forEach((function(e) {
646
+ addParent(e, s);
647
+ })) : r && "object" == typeof r && addParent(r, s);
648
+ }
649
+ return r && Object.defineProperty(e, "parent", {
650
+ configurable: !0,
651
+ writable: !0,
652
+ enumerable: !1,
653
+ value: t || null
654
+ }), e;
655
+ }, commentre = /\/\*[^*]*\*+([^/*][^*]*\*+)*\//g, getCssSelectors = e => {
656
+ SELECTORS.all.length = SELECTORS.tags.length = SELECTORS.classNames.length = SELECTORS.ids.length = SELECTORS.attrs.length = 0;
657
+ const t = (e = e.replace(/\./g, " .").replace(/\#/g, " #").replace(/\[/g, " [").replace(/\>/g, " > ").replace(/\+/g, " + ").replace(/\~/g, " ~ ").replace(/\*/g, " * ").replace(/\:not\((.*?)\)/g, " ")).split(" ");
658
+ for (let e = 0, r = t.length; e < r; e++) t[e] = t[e].split(":")[0], 0 !== t[e].length && ("." === t[e].charAt(0) ? SELECTORS.classNames.push(t[e].substr(1)) : "#" === t[e].charAt(0) ? SELECTORS.ids.push(t[e].substr(1)) : "[" === t[e].charAt(0) ? (t[e] = t[e].substr(1).split("=")[0].split("]")[0].trim(),
659
+ SELECTORS.attrs.push(t[e].toLowerCase())) : /[a-z]/g.test(t[e].charAt(0)) && SELECTORS.tags.push(t[e].toLowerCase()));
660
+ return SELECTORS.classNames = SELECTORS.classNames.sort(((e, t) => e.length < t.length ? -1 : e.length > t.length ? 1 : 0)),
661
+ SELECTORS;
662
+ }, SELECTORS = {
663
+ all: [],
664
+ tags: [],
665
+ classNames: [],
666
+ ids: [],
667
+ attrs: []
668
+ }, serializeCssVisitNode = (e, t, r, s) => {
669
+ const n = t.type;
670
+ return 4 === n ? serializeCssDeclaration(t, r, s) : 13 === n ? serializeCssRule(e, t) : 1 === n ? "!" === t.comment[0] ? `/*${t.comment}*/` : "" : 10 === n ? serializeCssMedia(e, t) : 8 === n ? serializeCssKeyframes(e, t) : 9 === n ? serializeCssKeyframe(e, t) : 5 === n ? serializeCssFontFace(e, t) : 15 === n ? serializeCssSupports(e, t) : 7 === n ? "@import " + t.import + ";" : 0 === n ? "@charset " + t.charset + ";" : 12 === n ? serializeCssPage(e, t) : 6 === n ? "@host{" + serializeCssMapVisit(e, t.rules) + "}" : 2 === n ? "@custom-media " + t.name + " " + t.media + ";" : 3 === n ? serializeCssDocument(e, t) : 11 === n ? "@namespace " + t.namespace + ";" : "";
671
+ }, serializeCssRule = (e, t) => {
672
+ const r = t.declarations, s = e.usedSelectors, n = t.selectors.slice();
673
+ if (null == r || 0 === r.length) return "";
674
+ if (s) {
675
+ let t, r, o = !0;
676
+ for (t = n.length - 1; t >= 0; t--) {
677
+ const i = getCssSelectors(n[t]);
678
+ o = !0;
679
+ let a = i.classNames.length;
680
+ if (a > 0 && e.hasUsedClassNames) for (r = 0; r < a; r++) if (!s.classNames.has(i.classNames[r])) {
681
+ o = !1;
682
+ break;
683
+ }
684
+ if (o && e.hasUsedTags && (a = i.tags.length, a > 0)) for (r = 0; r < a; r++) if (!s.tags.has(i.tags[r])) {
685
+ o = !1;
686
+ break;
687
+ }
688
+ if (o && e.hasUsedAttrs && (a = i.attrs.length, a > 0)) for (r = 0; r < a; r++) if (!s.attrs.has(i.attrs[r])) {
689
+ o = !1;
690
+ break;
691
+ }
692
+ if (o && e.hasUsedIds && (a = i.ids.length, a > 0)) for (r = 0; r < a; r++) if (!s.ids.has(i.ids[r])) {
693
+ o = !1;
694
+ break;
695
+ }
696
+ o || n.splice(t, 1);
697
+ }
698
+ }
699
+ if (0 === n.length) return "";
700
+ const o = [];
701
+ let i = "";
702
+ for (const e of t.selectors) i = removeSelectorWhitespace(e), o.includes(i) || o.push(i);
703
+ return `${o}{${serializeCssMapVisit(e, r)}}`;
704
+ }, serializeCssDeclaration = (e, t, r) => "" === e.value ? "" : r - 1 === t ? e.property + ":" + e.value : e.property + ":" + e.value + ";", serializeCssMedia = (e, t) => {
705
+ const r = serializeCssMapVisit(e, t.rules);
706
+ return "" === r ? "" : "@media " + removeMediaWhitespace(t.media) + "{" + r + "}";
707
+ }, serializeCssKeyframes = (e, t) => {
708
+ const r = serializeCssMapVisit(e, t.keyframes);
709
+ return "" === r ? "" : "@" + (t.vendor || "") + "keyframes " + t.name + "{" + r + "}";
710
+ }, serializeCssKeyframe = (e, t) => t.values.join(",") + "{" + serializeCssMapVisit(e, t.declarations) + "}", serializeCssFontFace = (e, t) => {
711
+ const r = serializeCssMapVisit(e, t.declarations);
712
+ return "" === r ? "" : "@font-face{" + r + "}";
713
+ }, serializeCssSupports = (e, t) => {
714
+ const r = serializeCssMapVisit(e, t.rules);
715
+ return "" === r ? "" : "@supports " + t.supports + "{" + r + "}";
716
+ }, serializeCssPage = (e, t) => "@page " + t.selectors.join(", ") + "{" + serializeCssMapVisit(e, t.declarations) + "}", serializeCssDocument = (e, t) => {
717
+ const r = serializeCssMapVisit(e, t.rules), s = "@" + (t.vendor || "") + "document " + t.document;
718
+ return "" === r ? "" : s + "{" + r + "}";
719
+ }, serializeCssMapVisit = (e, t) => {
720
+ let r = "";
721
+ if (t) for (let s = 0, n = t.length; s < n; s++) r += serializeCssVisitNode(e, t[s], s, n);
722
+ return r;
723
+ }, removeSelectorWhitespace = e => {
724
+ let t = "", r = "", s = !1;
725
+ for (let n = 0, o = (e = e.trim()).length; n < o; n++) if (r = e[n], "[" === r && "\\" !== t[t.length - 1] ? s = !0 : "]" === r && "\\" !== t[t.length - 1] && (s = !1),
726
+ !s && CSS_WS_REG.test(r)) {
727
+ if (CSS_NEXT_CHAR_REG.test(e[n + 1])) continue;
728
+ if (CSS_PREV_CHAR_REG.test(t[t.length - 1])) continue;
729
+ t += " ";
730
+ } else t += r;
731
+ return t;
732
+ }, removeMediaWhitespace = e => {
733
+ let t = "", r = "";
734
+ for (let s = 0, n = (e = e.trim()).length; s < n; s++) if (r = e[s], CSS_WS_REG.test(r)) {
735
+ if (CSS_WS_REG.test(t[t.length - 1])) continue;
736
+ t += " ";
737
+ } else t += r;
738
+ return t;
739
+ }, CSS_WS_REG = /\s/, CSS_NEXT_CHAR_REG = /[>\(\)\~\,\+\s]/, CSS_PREV_CHAR_REG = /[>\(\~\,\+]/, removeUnusedStyleText = (e, t, r) => {
740
+ try {
741
+ const s = parseCss(r.innerHTML);
742
+ if (t.push(...s.diagnostics), hasError(t)) return;
743
+ try {
744
+ r.innerHTML = ((e, t) => {
745
+ const r = t.usedSelectors || null, s = {
746
+ usedSelectors: r || null,
747
+ hasUsedAttrs: !!r && r.attrs.size > 0,
748
+ hasUsedClassNames: !!r && r.classNames.size > 0,
749
+ hasUsedIds: !!r && r.ids.size > 0,
750
+ hasUsedTags: !!r && r.tags.size > 0
751
+ }, n = e.rules;
752
+ if (!n) return "";
753
+ const o = n.length, i = [];
754
+ for (let e = 0; e < o; e++) i.push(serializeCssVisitNode(s, n[e], e, o));
755
+ return i.join("");
756
+ })(s.stylesheet, {
757
+ usedSelectors: e
758
+ });
759
+ } catch (e) {
760
+ t.push({
761
+ level: "warn",
762
+ type: "css",
763
+ header: "CSS Stringify",
764
+ messageText: e
765
+ });
766
+ }
767
+ } catch (e) {
768
+ t.push({
769
+ level: "warn",
770
+ type: "css",
771
+ header: "CSS Parse",
772
+ messageText: e
773
+ });
774
+ }
775
+ };
776
+
777
+ export { createWindowFromHtml, hydrateDocument, renderToString, serializeDocumentToString };