@rindo/core 1.8.12 → 1.17.4

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 (545) hide show
  1. package/bin/rindo +53 -19
  2. package/cli/index.cjs.js +524 -0
  3. package/cli/index.d.ts +15 -0
  4. package/cli/index.js +500 -0
  5. package/cli/package.json +9 -0
  6. package/compiler/package.json +8 -6
  7. package/compiler/rindo.d.ts +111 -0
  8. package/compiler/rindo.js +62852 -6655
  9. package/compiler/rindo.min.js +17 -0
  10. package/dependencies.json +80 -0
  11. package/dev-server/client/app-error.d.ts +18 -0
  12. package/dev-server/client/events.d.ts +6 -0
  13. package/dev-server/client/hmr-components.d.ts +1 -0
  14. package/dev-server/client/hmr-external-styles.d.ts +1 -0
  15. package/dev-server/client/hmr-images.d.ts +1 -0
  16. package/dev-server/client/hmr-inline-styles.d.ts +1 -0
  17. package/dev-server/client/hmr-util.d.ts +9 -0
  18. package/dev-server/client/hmr-window.d.ts +10 -0
  19. package/dev-server/client/index.d.ts +6 -0
  20. package/dev-server/client/index.js +785 -0
  21. package/dev-server/client/logger.d.ts +5 -0
  22. package/dev-server/client/package.json +8 -0
  23. package/dev-server/client/progress.d.ts +3 -0
  24. package/dev-server/client/status.d.ts +4 -0
  25. package/dev-server/connector.html +6 -0
  26. package/dev-server/content-type-db.json +1 -0
  27. package/dev-server/index.d.ts +6 -0
  28. package/dev-server/index.js +260 -0
  29. package/dev-server/open-in-editor-api.js +1 -0
  30. package/dev-server/package.json +8 -0
  31. package/dev-server/server-worker.js +1570 -0
  32. package/{dist/dev-server → dev-server}/static/favicon.ico +0 -0
  33. package/{dist/dev-server → dev-server}/templates/directory-index.html +132 -132
  34. package/dev-server/templates/initial-load.html +160 -0
  35. package/{dist/sys/node → dev-server}/visualstudio.vbs +0 -0
  36. package/dev-server/ws.js +1 -0
  37. package/{dist/sys/node → dev-server}/xdg-open +0 -0
  38. package/internal/app-data/index.cjs.js +88 -0
  39. package/internal/app-data/index.d.ts +3 -0
  40. package/internal/{client/build-conditionals.mjs → app-data/index.js} +24 -21
  41. package/internal/app-data/package.json +9 -0
  42. package/internal/client/css-shim.js +4 -0
  43. package/internal/client/{dom.rindo-client.mjs → dom.js} +73 -137
  44. package/{dist/client/index.mjs → internal/client/index.js} +736 -736
  45. package/internal/client/package.json +7 -0
  46. package/internal/client/patch.js +136 -0
  47. package/internal/client/polyfills/core-js.js +11 -10
  48. package/internal/client/polyfills/css-shim.js +1 -656
  49. package/internal/client/polyfills/dom.js +79 -146
  50. package/internal/client/polyfills/es5-html-element.js +1 -18
  51. package/internal/client/polyfills/index.js +6 -7
  52. package/internal/client/{shadow-css.rindo-client.mjs → shadow-css.js} +14 -17
  53. package/internal/hydrate/index.js +1073 -0
  54. package/internal/hydrate/package.json +7 -0
  55. package/internal/hydrate/runner.d.ts +205 -0
  56. package/internal/hydrate/runner.js +748 -0
  57. package/internal/hydrate/shadow-css.js +146 -0
  58. package/internal/index.d.ts +4 -18
  59. package/internal/index.js +1 -1
  60. package/internal/package.json +8 -6
  61. package/internal/rindo-core/index.d.ts +2 -0
  62. package/{dist → internal/rindo-core}/index.js +0 -0
  63. package/internal/rindo-ext-modules.d.ts +39 -0
  64. package/internal/rindo-private.d.ts +2183 -0
  65. package/internal/rindo-public-compiler.d.ts +2094 -0
  66. package/{dist/declarations/docs.d.ts → internal/rindo-public-docs.d.ts} +13 -1
  67. package/internal/rindo-public-runtime.d.ts +1552 -0
  68. package/internal/testing/index.js +1032 -0
  69. package/internal/testing/package.json +7 -0
  70. package/internal/testing/shadow-css.js +146 -0
  71. package/mock-doc/index.cjs.js +4500 -0
  72. package/mock-doc/index.d.ts +905 -0
  73. package/mock-doc/index.js +4464 -2
  74. package/mock-doc/package.json +9 -10
  75. package/package.json +84 -137
  76. package/readme.md +3 -82
  77. package/screenshot/compare/build/app.css +1 -1
  78. package/screenshot/compare/build/app.esm.js +1 -1
  79. package/screenshot/compare/build/app.js +27 -812
  80. package/{dist/compiler/polyfills.d.ts → screenshot/compare/build/index.esm.js} +0 -0
  81. package/screenshot/compare/build/{p-113f7459.js → p-081b0641.js} +1 -1
  82. package/screenshot/compare/build/p-227a1e18.entry.js +1 -0
  83. package/screenshot/compare/build/p-2c298727.entry.js +1 -0
  84. package/screenshot/compare/build/p-5479268c.entry.js +1 -0
  85. package/screenshot/compare/build/p-573ec8a4.entry.js +1 -0
  86. package/screenshot/compare/build/p-6ba08604.entry.js +1 -0
  87. package/screenshot/compare/build/p-6bc63295.entry.js +1 -0
  88. package/screenshot/compare/build/p-7a3759fd.entry.js +1 -0
  89. package/screenshot/compare/build/{p-ejpsp3kx.js → p-7b4e3ba7.js} +1 -1
  90. package/screenshot/compare/build/p-988eb362.css +1 -0
  91. package/screenshot/compare/build/p-9b6a9315.js +1 -0
  92. package/screenshot/compare/build/p-b4cc611c.entry.js +1 -0
  93. package/screenshot/compare/build/p-d1bf53f5.entry.js +1 -0
  94. package/screenshot/compare/build/{p-efb0eac6.js → p-e2efe0df.js} +1 -1
  95. package/screenshot/compare/build/p-e8ca6d97.entry.js +1 -0
  96. package/screenshot/compare/build/p-ec2f13e0.entry.js +1 -0
  97. package/screenshot/compare/build/p-f0b99977.entry.js +1 -0
  98. package/screenshot/compare/build/p-f4745c2f.entry.js +1 -0
  99. package/screenshot/compare/build/p-fbbae598.js +1 -0
  100. package/screenshot/compare/host.config.json +14 -14
  101. package/screenshot/compare/index.html +1 -1
  102. package/{dist/screenshot → screenshot}/connector-base.d.ts +1 -1
  103. package/{dist/screenshot → screenshot}/connector-local.d.ts +1 -1
  104. package/screenshot/connector.js +2 -3
  105. package/{dist/screenshot → screenshot}/index.d.ts +1 -1
  106. package/screenshot/index.js +642 -2
  107. package/screenshot/local-connector.js +2 -3
  108. package/screenshot/package.json +8 -13
  109. package/{dist/screenshot → screenshot}/pixel-match.d.ts +0 -0
  110. package/screenshot/pixel-match.js +22 -6
  111. package/screenshot/screenshot-compare.d.ts +3 -0
  112. package/{dist/screenshot → screenshot}/screenshot-fs.d.ts +1 -1
  113. package/sys/node/autoprefixer.js +1 -0
  114. package/sys/node/glob.js +1 -0
  115. package/sys/node/graceful-fs.js +1 -0
  116. package/sys/node/index.d.ts +18 -0
  117. package/sys/node/index.js +1402 -2
  118. package/sys/node/node-fetch.js +1 -0
  119. package/sys/node/package.json +8 -5
  120. package/sys/node/prompts.js +1 -0
  121. package/sys/node/worker.js +33 -0
  122. package/{dist/testing → testing}/index.d.ts +5 -6
  123. package/testing/index.js +3903 -2
  124. package/testing/jest/jest-config.d.ts +92 -0
  125. package/{dist/testing → testing}/jest/jest-environment.d.ts +4 -2
  126. package/{dist/testing → testing}/jest/jest-preprocessor.d.ts +1 -0
  127. package/{dist/testing → testing}/jest/jest-runner.d.ts +1 -1
  128. package/{dist/testing → testing}/jest/jest-screenshot.d.ts +1 -1
  129. package/{dist/testing → testing}/jest/jest-serializer.d.ts +1 -1
  130. package/{dist/testing → testing}/jest/jest-setup-test-framework.d.ts +0 -0
  131. package/testing/jest-environment.js +3 -3
  132. package/testing/jest-preprocessor.js +3 -3
  133. package/testing/jest-preset.js +20 -28
  134. package/testing/jest-runner.js +3 -3
  135. package/testing/jest-setuptestframework.js +3 -3
  136. package/{dist/testing → testing}/matchers/attributes.d.ts +0 -0
  137. package/{dist/testing → testing}/matchers/class-list.d.ts +0 -0
  138. package/{dist/testing → testing}/matchers/events.d.ts +9 -1
  139. package/{dist/testing → testing}/matchers/html.d.ts +0 -0
  140. package/{dist/testing → testing}/matchers/index.d.ts +3 -1
  141. package/{dist/testing → testing}/matchers/screenshot.d.ts +1 -1
  142. package/{dist/testing → testing}/matchers/text.d.ts +0 -0
  143. package/testing/mock-fetch.d.ts +11 -0
  144. package/testing/mocks.d.ts +14 -0
  145. package/testing/package.json +8 -6
  146. package/testing/puppeteer/index.d.ts +2 -0
  147. package/{dist/testing → testing}/puppeteer/puppeteer-browser.d.ts +2 -2
  148. package/{dist/testing → testing}/puppeteer/puppeteer-declarations.d.ts +9 -9
  149. package/{dist/testing → testing}/puppeteer/puppeteer-element.d.ts +5 -3
  150. package/testing/puppeteer/puppeteer-emulate.d.ts +2 -0
  151. package/{dist/testing → testing}/puppeteer/puppeteer-events.d.ts +7 -7
  152. package/testing/puppeteer/puppeteer-page.d.ts +2 -0
  153. package/testing/puppeteer/puppeteer-screenshot.d.ts +4 -0
  154. package/testing/reset-build-conditionals.d.ts +2 -0
  155. package/testing/spec-page.d.ts +2 -0
  156. package/testing/test-transpile.d.ts +2 -0
  157. package/{dist/testing → testing}/testing-logger.d.ts +10 -8
  158. package/testing/testing-sys.d.ts +1 -0
  159. package/{dist/testing → testing}/testing-utils.d.ts +3 -2
  160. package/testing/testing.d.ts +2 -0
  161. package/build-conditionals/index.d.ts +0 -2
  162. package/build-conditionals/index.mjs +0 -66
  163. package/build-conditionals/package.json +0 -6
  164. package/compiler/index.js +0 -2
  165. package/dist/cli/index.js +0 -6068
  166. package/dist/client/css-shim-14a9812e.js +0 -656
  167. package/dist/client/css-shim-69821662.js +0 -658
  168. package/dist/client/declarations/rindo.core.d.ts +0 -1347
  169. package/dist/client/dom-68c8fe31.js +0 -139
  170. package/dist/client/dom-af01458a.js +0 -137
  171. package/dist/client/index.js +0 -2937
  172. package/dist/client/polyfills/core-js.js +0 -10
  173. package/dist/client/polyfills/css-shim.js +0 -656
  174. package/dist/client/polyfills/dom.js +0 -146
  175. package/dist/client/polyfills/es5-html-element.js +0 -18
  176. package/dist/client/polyfills/index.js +0 -35
  177. package/dist/client/polyfills/promise.js +0 -9
  178. package/dist/client/polyfills/system.js +0 -6
  179. package/dist/client/shadow-css-6ef31c68.js +0 -386
  180. package/dist/client/shadow-css-8fd1a9e4.js +0 -388
  181. package/dist/compiler/app-core/app-es5-disabled.d.ts +0 -2
  182. package/dist/compiler/app-core/app-polyfills.d.ts +0 -3
  183. package/dist/compiler/app-core/build-conditionals.d.ts +0 -6
  184. package/dist/compiler/app-core/bundle-app-core.d.ts +0 -6
  185. package/dist/compiler/app-core/component-styles.d.ts +0 -4
  186. package/dist/compiler/app-core/format-component-runtime-meta.d.ts +0 -4
  187. package/dist/compiler/app-core/optimize-module.d.ts +0 -7
  188. package/dist/compiler/browser/build-conditionals-client.d.ts +0 -3
  189. package/dist/compiler/browser/compile-options.d.ts +0 -12
  190. package/dist/compiler/browser/compile.d.ts +0 -2
  191. package/dist/compiler/browser/create-compiler.d.ts +0 -14
  192. package/dist/compiler/browser/index.d.ts +0 -11
  193. package/dist/compiler/build/build-ctx.d.ts +0 -74
  194. package/dist/compiler/build/build-finish.d.ts +0 -3
  195. package/dist/compiler/build/build-hmr.d.ts +0 -2
  196. package/dist/compiler/build/build-results.d.ts +0 -2
  197. package/dist/compiler/build/build-stats.d.ts +0 -3
  198. package/dist/compiler/build/build.d.ts +0 -2
  199. package/dist/compiler/build/cache-stats.d.ts +0 -4
  200. package/dist/compiler/build/compiler-build-id.d.ts +0 -6
  201. package/dist/compiler/build/compiler-ctx.d.ts +0 -44
  202. package/dist/compiler/build/init-index-html.d.ts +0 -2
  203. package/dist/compiler/build/validate-files.d.ts +0 -2
  204. package/dist/compiler/build/write-build.d.ts +0 -2
  205. package/dist/compiler/cache.d.ts +0 -22
  206. package/dist/compiler/compiler.d.ts +0 -27
  207. package/dist/compiler/component-hydrate/bundle-hydrate-factory.d.ts +0 -3
  208. package/dist/compiler/component-hydrate/generate-hydrate-app.d.ts +0 -2
  209. package/dist/compiler/component-hydrate/hydrate-factory-closure.d.ts +0 -2
  210. package/dist/compiler/component-hydrate/update-to-hydrate-components.d.ts +0 -2
  211. package/dist/compiler/component-hydrate/write-hydrate-outputs.d.ts +0 -3
  212. package/dist/compiler/component-lazy/generate-cjs.d.ts +0 -3
  213. package/dist/compiler/component-lazy/generate-esm-browser.d.ts +0 -3
  214. package/dist/compiler/component-lazy/generate-esm.d.ts +0 -3
  215. package/dist/compiler/component-lazy/generate-lazy-app.d.ts +0 -3
  216. package/dist/compiler/component-lazy/generate-lazy-module.d.ts +0 -4
  217. package/dist/compiler/component-lazy/generate-system.d.ts +0 -3
  218. package/dist/compiler/component-lazy/update-to-lazy-component.d.ts +0 -2
  219. package/dist/compiler/component-lazy/write-lazy-entry-module.d.ts +0 -2
  220. package/dist/compiler/component-native/update-to-native-component.d.ts +0 -2
  221. package/dist/compiler/config/config-reload.d.ts +0 -3
  222. package/dist/compiler/config/config-utils.d.ts +0 -4
  223. package/dist/compiler/config/validate-config.d.ts +0 -4
  224. package/dist/compiler/config/validate-copy.d.ts +0 -2
  225. package/dist/compiler/config/validate-dev-server.d.ts +0 -2
  226. package/dist/compiler/config/validate-docs.d.ts +0 -2
  227. package/dist/compiler/config/validate-namespace.d.ts +0 -3
  228. package/dist/compiler/config/validate-output-stats.d.ts +0 -2
  229. package/dist/compiler/config/validate-outputs-angular.d.ts +0 -2
  230. package/dist/compiler/config/validate-outputs-custom.d.ts +0 -2
  231. package/dist/compiler/config/validate-outputs-dist-module.d.ts +0 -2
  232. package/dist/compiler/config/validate-outputs-dist.d.ts +0 -2
  233. package/dist/compiler/config/validate-outputs-hydrate-script.d.ts +0 -2
  234. package/dist/compiler/config/validate-outputs-www.d.ts +0 -2
  235. package/dist/compiler/config/validate-outputs.d.ts +0 -2
  236. package/dist/compiler/config/validate-paths.d.ts +0 -2
  237. package/dist/compiler/config/validate-plugins.d.ts +0 -2
  238. package/dist/compiler/config/validate-prerender.d.ts +0 -2
  239. package/dist/compiler/config/validate-rollup-config.d.ts +0 -2
  240. package/dist/compiler/config/validate-service-worker.d.ts +0 -2
  241. package/dist/compiler/config/validate-testing.d.ts +0 -2
  242. package/dist/compiler/config/validate-workers.d.ts +0 -2
  243. package/dist/compiler/copy/assets-copy-tasks.d.ts +0 -3
  244. package/dist/compiler/copy/hashed-copy.d.ts +0 -2
  245. package/dist/compiler/copy/local-copy-tasks.d.ts +0 -3
  246. package/dist/compiler/docs/constants.d.ts +0 -2
  247. package/dist/compiler/docs/custom/index.d.ts +0 -2
  248. package/dist/compiler/docs/docs.d.ts +0 -2
  249. package/dist/compiler/docs/generate-doc-data.d.ts +0 -3
  250. package/dist/compiler/docs/json/index.d.ts +0 -3
  251. package/dist/compiler/docs/readme/docs-util.d.ts +0 -13
  252. package/dist/compiler/docs/readme/index.d.ts +0 -3
  253. package/dist/compiler/docs/readme/markdown-css-props.d.ts +0 -2
  254. package/dist/compiler/docs/readme/markdown-dependencies.d.ts +0 -2
  255. package/dist/compiler/docs/readme/markdown-events.d.ts +0 -2
  256. package/dist/compiler/docs/readme/markdown-methods.d.ts +0 -2
  257. package/dist/compiler/docs/readme/markdown-props.d.ts +0 -2
  258. package/dist/compiler/docs/readme/markdown-slots.d.ts +0 -2
  259. package/dist/compiler/docs/readme/markdown-usage.d.ts +0 -6
  260. package/dist/compiler/docs/readme/output-docs.d.ts +0 -3
  261. package/dist/compiler/docs/style-docs.d.ts +0 -2
  262. package/dist/compiler/docs/vscode/index.d.ts +0 -2
  263. package/dist/compiler/entries/component-bundles.d.ts +0 -3
  264. package/dist/compiler/entries/component-graph.d.ts +0 -2
  265. package/dist/compiler/entries/default-bundles.d.ts +0 -3
  266. package/dist/compiler/entries/entry-modules.d.ts +0 -6
  267. package/dist/compiler/entries/resolve-component-dependencies.d.ts +0 -2
  268. package/dist/compiler/events.d.ts +0 -15
  269. package/dist/compiler/fs-watch/fs-watch-init.d.ts +0 -2
  270. package/dist/compiler/fs-watch/fs-watch-log.d.ts +0 -2
  271. package/dist/compiler/fs-watch/fs-watch-rebuild.d.ts +0 -7
  272. package/dist/compiler/html/inject-module-preloads.d.ts +0 -3
  273. package/dist/compiler/html/inject-sw-script.d.ts +0 -4
  274. package/dist/compiler/html/inline-esm-import.d.ts +0 -2
  275. package/dist/compiler/html/inline-style-sheets.d.ts +0 -2
  276. package/dist/compiler/html/update-global-styles-link.d.ts +0 -2
  277. package/dist/compiler/html/used-components.d.ts +0 -2
  278. package/dist/compiler/html/utils.d.ts +0 -2
  279. package/dist/compiler/html/validate-manifest-json.d.ts +0 -2
  280. package/dist/compiler/index.d.ts +0 -10
  281. package/dist/compiler/index.js +0 -18008
  282. package/dist/compiler/output-targets/empty-dir.d.ts +0 -6
  283. package/dist/compiler/output-targets/index.d.ts +0 -2
  284. package/dist/compiler/output-targets/output-angular.d.ts +0 -4
  285. package/dist/compiler/output-targets/output-app.d.ts +0 -4
  286. package/dist/compiler/output-targets/output-collection.d.ts +0 -3
  287. package/dist/compiler/output-targets/output-copy.d.ts +0 -2
  288. package/dist/compiler/output-targets/output-custom.d.ts +0 -2
  289. package/dist/compiler/output-targets/output-docs.d.ts +0 -2
  290. package/dist/compiler/output-targets/output-hydrate.d.ts +0 -2
  291. package/dist/compiler/output-targets/output-lazy-loader.d.ts +0 -2
  292. package/dist/compiler/output-targets/output-module.d.ts +0 -4
  293. package/dist/compiler/output-targets/output-prerender.d.ts +0 -2
  294. package/dist/compiler/output-targets/output-service-workers.d.ts +0 -2
  295. package/dist/compiler/output-targets/output-types.d.ts +0 -2
  296. package/dist/compiler/output-targets/output-utils.d.ts +0 -54
  297. package/dist/compiler/output-targets/output-www.d.ts +0 -2
  298. package/dist/compiler/plugin/plugin.d.ts +0 -6
  299. package/dist/compiler/prerender/crawl-urls.d.ts +0 -3
  300. package/dist/compiler/prerender/host-config.d.ts +0 -12
  301. package/dist/compiler/prerender/prerender-config.d.ts +0 -2
  302. package/dist/compiler/prerender/prerender-main.d.ts +0 -2
  303. package/dist/compiler/prerender/prerender-queue.d.ts +0 -3
  304. package/dist/compiler/prerender/prerender-template-html.d.ts +0 -2
  305. package/dist/compiler/prerender/prerendered-write-path.d.ts +0 -2
  306. package/dist/compiler/prerender/robots-txt.d.ts +0 -2
  307. package/dist/compiler/prerender/sitemap-xml.d.ts +0 -3
  308. package/dist/compiler/rollup-plugins/component-entry.d.ts +0 -3
  309. package/dist/compiler/rollup-plugins/css-transformer.d.ts +0 -3
  310. package/dist/compiler/rollup-plugins/global-scripts.d.ts +0 -4
  311. package/dist/compiler/rollup-plugins/image-plugin.d.ts +0 -3
  312. package/dist/compiler/rollup-plugins/in-memory-fs-read.d.ts +0 -3
  313. package/dist/compiler/rollup-plugins/loader.d.ts +0 -4
  314. package/dist/compiler/rollup-plugins/plugin-helper.d.ts +0 -5
  315. package/dist/compiler/rollup-plugins/rindo-build-conditionals.d.ts +0 -7
  316. package/dist/compiler/rollup-plugins/rindo-client.d.ts +0 -3
  317. package/dist/compiler/rollup-plugins/rindo-external-runtime.d.ts +0 -2
  318. package/dist/compiler/rollup-plugins/rindo-hydrate.d.ts +0 -3
  319. package/dist/compiler/rollup-plugins/rindo-public-plugin.d.ts +0 -2
  320. package/dist/compiler/service-worker/generate-sw.d.ts +0 -7
  321. package/dist/compiler/service-worker/service-worker-util.d.ts +0 -2
  322. package/dist/compiler/style/cached-styles.d.ts +0 -5
  323. package/dist/compiler/style/component-styles.d.ts +0 -2
  324. package/dist/compiler/style/css-imports.d.ts +0 -9
  325. package/dist/compiler/style/css-to-esm.d.ts +0 -5
  326. package/dist/compiler/style/generate-styles.d.ts +0 -2
  327. package/dist/compiler/style/global-styles.d.ts +0 -3
  328. package/dist/compiler/style/normalize-styles.d.ts +0 -2
  329. package/dist/compiler/style/optimize-css.d.ts +0 -2
  330. package/dist/compiler/style/scope-css.d.ts +0 -3
  331. package/dist/compiler/style/style-utils.d.ts +0 -10
  332. package/dist/compiler/transformers/add-component-meta-proxy.d.ts +0 -3
  333. package/dist/compiler/transformers/add-component-meta-static.d.ts +0 -4
  334. package/dist/compiler/transformers/add-imports.d.ts +0 -3
  335. package/dist/compiler/transformers/collections/add-external-import.d.ts +0 -2
  336. package/dist/compiler/transformers/collections/parse-collection-components.d.ts +0 -2
  337. package/dist/compiler/transformers/collections/parse-collection-deprecated.d.ts +0 -2
  338. package/dist/compiler/transformers/collections/parse-collection-manifest.d.ts +0 -7
  339. package/dist/compiler/transformers/collections/parse-collection-module.d.ts +0 -2
  340. package/dist/compiler/transformers/component-build-conditionals.d.ts +0 -2
  341. package/dist/compiler/transformers/component-hydrate/hydrate-component.d.ts +0 -3
  342. package/dist/compiler/transformers/component-hydrate/hydrate-runtime-cmp-meta.d.ts +0 -3
  343. package/dist/compiler/transformers/component-hydrate/tranform-to-hydrate-component.d.ts +0 -2
  344. package/dist/compiler/transformers/component-lazy/lazy-component.d.ts +0 -3
  345. package/dist/compiler/transformers/component-lazy/lazy-constructor.d.ts +0 -3
  346. package/dist/compiler/transformers/component-lazy/lazy-element-getter.d.ts +0 -3
  347. package/dist/compiler/transformers/component-lazy/transform-lazy-component.d.ts +0 -4
  348. package/dist/compiler/transformers/component-native/native-component.d.ts +0 -3
  349. package/dist/compiler/transformers/component-native/native-connected-callback.d.ts +0 -3
  350. package/dist/compiler/transformers/component-native/native-constructor.d.ts +0 -3
  351. package/dist/compiler/transformers/component-native/native-element-getter.d.ts +0 -3
  352. package/dist/compiler/transformers/component-native/native-static-style.d.ts +0 -3
  353. package/dist/compiler/transformers/component-native/tranform-to-native-component.d.ts +0 -4
  354. package/dist/compiler/transformers/core-runtime-apis.d.ts +0 -30
  355. package/dist/compiler/transformers/create-event.d.ts +0 -3
  356. package/dist/compiler/transformers/decorators-to-static/component-decorator.d.ts +0 -3
  357. package/dist/compiler/transformers/decorators-to-static/convert-decorators.d.ts +0 -3
  358. package/dist/compiler/transformers/decorators-to-static/decorator-utils.d.ts +0 -10
  359. package/dist/compiler/transformers/decorators-to-static/element-decorator.d.ts +0 -3
  360. package/dist/compiler/transformers/decorators-to-static/event-decorator.d.ts +0 -4
  361. package/dist/compiler/transformers/decorators-to-static/listen-decorator.d.ts +0 -6
  362. package/dist/compiler/transformers/decorators-to-static/method-decorator.d.ts +0 -3
  363. package/dist/compiler/transformers/decorators-to-static/prop-decorator.d.ts +0 -4
  364. package/dist/compiler/transformers/decorators-to-static/state-decorator.d.ts +0 -3
  365. package/dist/compiler/transformers/decorators-to-static/style-to-static.d.ts +0 -3
  366. package/dist/compiler/transformers/decorators-to-static/watch-decorator.d.ts +0 -3
  367. package/dist/compiler/transformers/define-custom-element.d.ts +0 -3
  368. package/dist/compiler/transformers/host-data-transform.d.ts +0 -3
  369. package/dist/compiler/transformers/legacy-props.d.ts +0 -3
  370. package/dist/compiler/transformers/remove-static-meta-properties.d.ts +0 -2
  371. package/dist/compiler/transformers/reserved-public-members.d.ts +0 -3
  372. package/dist/compiler/transformers/rindo-import-path.d.ts +0 -3
  373. package/dist/compiler/transformers/static-to-meta/call-expression.d.ts +0 -3
  374. package/dist/compiler/transformers/static-to-meta/class-methods.d.ts +0 -3
  375. package/dist/compiler/transformers/static-to-meta/component.d.ts +0 -3
  376. package/dist/compiler/transformers/static-to-meta/element-ref.d.ts +0 -2
  377. package/dist/compiler/transformers/static-to-meta/encapsulation.d.ts +0 -3
  378. package/dist/compiler/transformers/static-to-meta/events.d.ts +0 -3
  379. package/dist/compiler/transformers/static-to-meta/import.d.ts +0 -3
  380. package/dist/compiler/transformers/static-to-meta/listeners.d.ts +0 -3
  381. package/dist/compiler/transformers/static-to-meta/methods.d.ts +0 -3
  382. package/dist/compiler/transformers/static-to-meta/props.d.ts +0 -3
  383. package/dist/compiler/transformers/static-to-meta/states.d.ts +0 -3
  384. package/dist/compiler/transformers/static-to-meta/string-literal.d.ts +0 -3
  385. package/dist/compiler/transformers/static-to-meta/styles.d.ts +0 -3
  386. package/dist/compiler/transformers/static-to-meta/vdom.d.ts +0 -3
  387. package/dist/compiler/transformers/static-to-meta/visitor.d.ts +0 -3
  388. package/dist/compiler/transformers/static-to-meta/watchers.d.ts +0 -3
  389. package/dist/compiler/transformers/style-imports.d.ts +0 -3
  390. package/dist/compiler/transformers/transform-utils.d.ts +0 -31
  391. package/dist/compiler/transformers/update-component-class.d.ts +0 -3
  392. package/dist/compiler/transformers/update-rindo-core-import.d.ts +0 -3
  393. package/dist/compiler/transformers/watcher-meta-transform.d.ts +0 -3
  394. package/dist/compiler/transpile/compiler-options.d.ts +0 -4
  395. package/dist/compiler/transpile/transpile-app.d.ts +0 -2
  396. package/dist/compiler/transpile/transpile-module.d.ts +0 -5
  397. package/dist/compiler/transpile/transpile-service.d.ts +0 -3
  398. package/dist/compiler/transpile/transpile-to-es5-main.d.ts +0 -2
  399. package/dist/compiler/transpile/validate-types-main.d.ts +0 -2
  400. package/dist/compiler/types/generate-app-types.d.ts +0 -2
  401. package/dist/compiler/types/generate-component-types.d.ts +0 -8
  402. package/dist/compiler/types/generate-event-types.d.ts +0 -2
  403. package/dist/compiler/types/generate-method-types.d.ts +0 -2
  404. package/dist/compiler/types/generate-prop-types.d.ts +0 -2
  405. package/dist/compiler/types/generate-types.d.ts +0 -2
  406. package/dist/compiler/types/rindo-types.d.ts +0 -3
  407. package/dist/compiler/types/types-utils.d.ts +0 -4
  408. package/dist/compiler/types/update-import-refs.d.ts +0 -11
  409. package/dist/compiler/types/validate-package-json.d.ts +0 -9
  410. package/dist/declarations/assets.d.ts +0 -17
  411. package/dist/declarations/browser-compile.d.ts +0 -47
  412. package/dist/declarations/build-conditionals.d.ts +0 -91
  413. package/dist/declarations/build-events.d.ts +0 -19
  414. package/dist/declarations/build.d.ts +0 -247
  415. package/dist/declarations/cache.d.ts +0 -11
  416. package/dist/declarations/collection-manifest.d.ts +0 -106
  417. package/dist/declarations/collection.d.ts +0 -139
  418. package/dist/declarations/compiler.d.ts +0 -53
  419. package/dist/declarations/component-compiler-meta.d.ts +0 -198
  420. package/dist/declarations/component-constructor.d.ts +0 -61
  421. package/dist/declarations/component-interfaces.d.ts +0 -123
  422. package/dist/declarations/config.d.ts +0 -409
  423. package/dist/declarations/css-var-shim.d.ts +0 -9
  424. package/dist/declarations/decorators.d.ts +0 -150
  425. package/dist/declarations/dev-server.d.ts +0 -135
  426. package/dist/declarations/diagnostics.d.ts +0 -21
  427. package/dist/declarations/entry.d.ts +0 -28
  428. package/dist/declarations/events.d.ts +0 -13
  429. package/dist/declarations/file-system.d.ts +0 -91
  430. package/dist/declarations/fs-watch.d.ts +0 -15
  431. package/dist/declarations/host-element.d.ts +0 -53
  432. package/dist/declarations/hydrate.d.ts +0 -99
  433. package/dist/declarations/in-memory-fs.d.ts +0 -59
  434. package/dist/declarations/index.d.ts +0 -45
  435. package/dist/declarations/jsdoc.d.ts +0 -16
  436. package/dist/declarations/jsx.d.ts +0 -1050
  437. package/dist/declarations/logger.d.ts +0 -25
  438. package/dist/declarations/minify-js.d.ts +0 -11
  439. package/dist/declarations/module.d.ts +0 -35
  440. package/dist/declarations/optimize-css.d.ts +0 -12
  441. package/dist/declarations/output-targets.d.ts +0 -189
  442. package/dist/declarations/plugin.d.ts +0 -23
  443. package/dist/declarations/prerender.d.ts +0 -79
  444. package/dist/declarations/render.d.ts +0 -62
  445. package/dist/declarations/runtime.d.ts +0 -92
  446. package/dist/declarations/screenshots.d.ts +0 -192
  447. package/dist/declarations/server.d.ts +0 -19
  448. package/dist/declarations/style.d.ts +0 -35
  449. package/dist/declarations/system.d.ts +0 -174
  450. package/dist/declarations/testing.d.ts +0 -523
  451. package/dist/declarations/transpile.d.ts +0 -24
  452. package/dist/declarations/types.d.ts +0 -24
  453. package/dist/declarations/vdom.d.ts +0 -55
  454. package/dist/declarations/worker.d.ts +0 -33
  455. package/dist/dev-server/content-type-db.json +0 -1
  456. package/dist/dev-server/index.js +0 -887
  457. package/dist/dev-server/static/app-error.css +0 -257
  458. package/dist/dev-server/static/dev-server-client.html +0 -13
  459. package/dist/dev-server/templates/initial-load.html +0 -160
  460. package/dist/hydrate/index.d.ts +0 -101
  461. package/dist/hydrate/index.mjs +0 -1281
  462. package/dist/hydrate/platform.mjs +0 -347
  463. package/dist/index.d.ts +0 -99
  464. package/dist/mock-doc/index.d.ts +0 -851
  465. package/dist/mock-doc/index.js +0 -3982
  466. package/dist/mock-doc/index.mjs +0 -3954
  467. package/dist/runtime/index.js +0 -2576
  468. package/dist/runtime/index.mjs +0 -2521
  469. package/dist/runtime/shadow-css-6ef31c68.js +0 -386
  470. package/dist/runtime/shadow-css-8fd1a9e4.js +0 -388
  471. package/dist/screenshot/index.js +0 -520
  472. package/dist/sys/node/graceful-fs.js +0 -975
  473. package/dist/sys/node/index.js +0 -33545
  474. package/dist/sys/node/node-fetch.js +0 -1779
  475. package/dist/sys/node/open-in-editor.js +0 -734
  476. package/dist/sys/node/sys-worker.js +0 -67035
  477. package/dist/sys/node/websocket.js +0 -3728
  478. package/dist/testing/build-conditionals.d.ts +0 -4
  479. package/dist/testing/build-conditionals.js +0 -43
  480. package/dist/testing/core.d.ts +0 -35
  481. package/dist/testing/core.js +0 -52
  482. package/dist/testing/index.js +0 -40511
  483. package/dist/testing/jest/jest-config.d.ts +0 -4
  484. package/dist/testing/mock-fetch.d.ts +0 -46
  485. package/dist/testing/mocks.d.ts +0 -12
  486. package/dist/testing/platform.d.ts +0 -23
  487. package/dist/testing/platform.js +0 -321
  488. package/dist/testing/puppeteer/puppeteer-emulate.d.ts +0 -2
  489. package/dist/testing/puppeteer/puppeteer-find.d.ts +0 -5
  490. package/dist/testing/puppeteer/puppeteer-page.d.ts +0 -2
  491. package/dist/testing/puppeteer/puppeteer-screenshot.d.ts +0 -4
  492. package/dist/testing/spec-page.d.ts +0 -5
  493. package/dist/testing/task-queue.d.ts +0 -15
  494. package/dist/testing/test-transpile.d.ts +0 -5
  495. package/dist/testing/testing-fs.d.ts +0 -31
  496. package/dist/testing/testing-sys.d.ts +0 -19
  497. package/dist/testing/testing.d.ts +0 -12
  498. package/dist/utils/index.js +0 -1575
  499. package/dist/utils/index.mjs +0 -1511
  500. package/internal/client/css-shim.rindo-client.mjs +0 -656
  501. package/internal/client/index.mjs +0 -2859
  502. package/internal/client/polyfills/promise.js +0 -9
  503. package/internal/images.d.ts +0 -5
  504. package/runtime/package.json +0 -5
  505. package/screenshot/compare/build/p-020f8d73.js +0 -1
  506. package/screenshot/compare/build/p-09qdknbg.system.entry.js +0 -1
  507. package/screenshot/compare/build/p-0a13mpsc.system.entry.js +0 -1
  508. package/screenshot/compare/build/p-168ec2c4.system.js +0 -1
  509. package/screenshot/compare/build/p-2ab1fdf1.system.js +0 -1
  510. package/screenshot/compare/build/p-2pxcsgrj.entry.js +0 -1
  511. package/screenshot/compare/build/p-42fb7034.system.js +0 -1
  512. package/screenshot/compare/build/p-54d9d7c2.system.js +0 -1
  513. package/screenshot/compare/build/p-67c1f911.js +0 -1
  514. package/screenshot/compare/build/p-68613371.system.js +0 -1
  515. package/screenshot/compare/build/p-7dvsjpu0.entry.js +0 -1
  516. package/screenshot/compare/build/p-aa67fb06.js +0 -1
  517. package/screenshot/compare/build/p-aeb3cec1.system.js +0 -1
  518. package/screenshot/compare/build/p-b6e44a24.js +0 -1
  519. package/screenshot/compare/build/p-c1c25b8a.js +0 -1
  520. package/screenshot/compare/build/p-c9bopbjy.system.entry.js +0 -1
  521. package/screenshot/compare/build/p-c9iqz1pp.system.entry.js +0 -1
  522. package/screenshot/compare/build/p-dizjz8rg.entry.js +0 -1
  523. package/screenshot/compare/build/p-dnta0rwp.system.entry.js +0 -1
  524. package/screenshot/compare/build/p-e9670d22.system.js +0 -1
  525. package/screenshot/compare/build/p-ei9jkpd0.system.entry.js +0 -1
  526. package/screenshot/compare/build/p-ejwcppol.entry.js +0 -1
  527. package/screenshot/compare/build/p-f6612d5d.system.js +0 -1
  528. package/screenshot/compare/build/p-foiivsfc.css +0 -1
  529. package/screenshot/compare/build/p-gpjjyogx.entry.js +0 -1
  530. package/screenshot/compare/build/p-howklem2.system.entry.js +0 -1
  531. package/screenshot/compare/build/p-knv9wvoc.entry.js +0 -1
  532. package/screenshot/compare/build/p-nsqsfhhy.entry.js +0 -1
  533. package/screenshot/compare/build/p-ojt278pp.entry.js +0 -1
  534. package/screenshot/compare/build/p-oywass99.entry.js +0 -1
  535. package/screenshot/compare/build/p-q3ujhub6.entry.js +0 -1
  536. package/screenshot/compare/build/p-qw4xnmxv.entry.js +0 -1
  537. package/screenshot/compare/build/p-t1wvevhc.system.entry.js +0 -1
  538. package/screenshot/compare/build/p-tnjarrex.system.entry.js +0 -1
  539. package/screenshot/compare/build/p-vhfpd6kk.system.entry.js +0 -1
  540. package/screenshot/compare/build/p-vk6rhemd.system.entry.js +0 -1
  541. package/screenshot/compare/build/p-w6bnm16k.entry.js +0 -1
  542. package/screenshot/compare/build/p-xje6d7zl.system.entry.js +0 -1
  543. package/screenshot/compare/build/p-y5jlrcha.system.entry.js +0 -1
  544. package/screenshot/compare/build/p-yh170wkt.entry.js +0 -1
  545. package/testing/jest.preprocessor.js +0 -7
@@ -1,257 +0,0 @@
1
- #dev-server-modal * {
2
- box-sizing: border-box !important;
3
- }
4
-
5
- #dev-server-modal {
6
- direction: ltr !important;
7
- display: block !important;
8
- position: absolute !important;
9
- top: 0 !important;
10
- right: 0 !important;
11
- bottom: 0 !important;
12
- left: 0 !important;
13
- z-index: 100000;
14
- margin: 0 !important;
15
- padding: 0 !important;
16
- font-family: -apple-system, "Roboto", BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !important;
17
- font-size: 14px !important;
18
- line-height: 1.5 !important;
19
- -webkit-font-smoothing: antialiased;
20
- font-smoothing: antialiased;
21
- text-rendering: optimizeLegibility;
22
- text-size-adjust: none;
23
- word-wrap: break-word;
24
- color: #333 !important;
25
- background-color: white !important;
26
- box-sizing: border-box !important;
27
- overflow: hidden;
28
- user-select: auto;
29
- }
30
-
31
- #dev-server-modal-inner {
32
- position: relative !important;
33
- padding: 0 0 30px 0 !important;
34
- width: 100% !important;
35
- height: 100%;
36
- overflow-x: hidden;
37
- overflow-y: scroll;
38
- -webkit-overflow-scrolling: touch;
39
- }
40
-
41
- .dev-server-diagnostic {
42
- margin: 20px !important;
43
- border: 1px solid #ddd !important;
44
- border-radius: 3px !important;
45
- }
46
-
47
- .dev-server-diagnostic-masthead {
48
- padding: 8px 12px 12px 12px !important;
49
- }
50
-
51
- .dev-server-diagnostic-title {
52
- margin: 0 !important;
53
- font-weight: bold !important;
54
- color: #222 !important;
55
- }
56
-
57
- .dev-server-diagnostic-message {
58
- margin-top: 4px !important;
59
- color: #555 !important;
60
- }
61
-
62
- .dev-server-diagnostic-file {
63
- position: relative !important;
64
- border-top: 1px solid #ddd !important;
65
- }
66
-
67
- .dev-server-diagnostic-file-header {
68
- display: block !important;
69
- padding: 5px 10px !important;
70
- color: #555 !important;
71
- border-bottom: 1px solid #ddd !important;
72
- border-top-left-radius: 2px !important;
73
- border-top-right-radius: 2px !important;
74
- background-color: #f9f9f9 !important;
75
- font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace !important;
76
- font-size: 12px !important;
77
- }
78
-
79
- a.dev-server-diagnostic-file-header {
80
- color: #0000EE !important;
81
- text-decoration: underline !important;
82
- }
83
-
84
- a.dev-server-diagnostic-file-header:hover {
85
- text-decoration: none !important;
86
- background-color: #f4f4f4 !important;
87
- }
88
-
89
- .dev-server-diagnostic-file-name {
90
- font-weight: bold !important;
91
- }
92
-
93
- .dev-server-diagnostic-blob {
94
- overflow-x: auto !important;
95
- overflow-y: hidden !important;
96
- border-bottom-right-radius: 3px !important;
97
- border-bottom-left-radius: 3px !important;
98
- }
99
-
100
- .dev-server-diagnostic-table {
101
- margin: 0 !important;
102
- padding: 0 !important;
103
- border-spacing: 0 !important;;
104
- border-collapse: collapse !important;;
105
- border-width: 0 !important;
106
- border-style: none !important;
107
- -moz-tab-size: 2;
108
- tab-size: 2;
109
- }
110
-
111
- .dev-server-diagnostic-table td,
112
- .dev-server-diagnostic-table th {
113
- padding: 0 !important;
114
- border-width: 0 !important;
115
- border-style: none !important;
116
- }
117
-
118
- td.dev-server-diagnostic-blob-num {
119
- padding-right: 10px !important;
120
- padding-left: 10px !important;
121
- width: 1% !important;
122
- min-width: 50px !important;
123
- font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace !important;
124
- font-size: 12px !important;
125
- line-height: 20px !important;
126
- color: rgba(0, 0, 0, 0.3) !important;
127
- text-align: right !important;
128
- white-space: nowrap !important;
129
- vertical-align: top !important;
130
- -webkit-user-select: none;
131
- -moz-user-select: none;
132
- -ms-user-select: none;
133
- user-select: none;
134
- border: solid #eee !important;
135
- border-width: 0 1px 0 0 !important;
136
- }
137
-
138
- td.dev-server-diagnostic-blob-num::before {
139
- content: attr(data-line-number) !important;
140
- }
141
-
142
- .dev-server-diagnostic-error-line td.dev-server-diagnostic-blob-num {
143
- background-color: #ffdddd !important;
144
- border-color: #ffc9c9 !important;
145
- }
146
-
147
- .dev-server-diagnostic-error-line td.dev-server-diagnostic-blob-code {
148
- background: rgba(255, 221, 221, 0.25) !important;
149
- z-index: -1;
150
- }
151
-
152
- .dev-server-diagnostic-open-in-editor td.dev-server-diagnostic-blob-num:hover {
153
- cursor: pointer;
154
- background-color: #ffffe3 !important;
155
- font-weight: bold;
156
- }
157
-
158
- .dev-server-diagnostic-open-in-editor.dev-server-diagnostic-error-line td.dev-server-diagnostic-blob-num:hover {
159
- background-color: #ffdada !important;
160
- }
161
-
162
- td.dev-server-diagnostic-blob-code {
163
- position: relative !important;
164
- padding-right: 10px !important;
165
- padding-left: 10px !important;
166
- line-height: 20px !important;
167
- vertical-align: top !important;
168
- overflow: visible !important;
169
- font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace !important;
170
- font-size: 12px !important;
171
- color: #333 !important;
172
- word-wrap: normal !important;
173
- white-space: pre !important;
174
- }
175
-
176
- td.dev-server-diagnostic-blob-code::before {
177
- content: "" !important;
178
- }
179
-
180
- .dev-server-diagnostic-error-chr {
181
- position: relative !important;
182
- }
183
-
184
- .dev-server-diagnostic-error-chr::before {
185
- position: absolute !important;
186
- z-index: -1;
187
- top: -3px !important;
188
- left: 0px !important;
189
- width: 8px !important;
190
- height: 20px !important;
191
- background-color: #ffdddd !important;
192
- content: "" !important;
193
- }
194
-
195
- /**
196
- * GitHub Gist Theme
197
- * Author : Louis Barranqueiro - https://github.com/LouisBarranqueiro
198
- * https://highlightjs.org/
199
- */
200
- .hljs-comment,
201
- .hljs-meta {
202
- color: #969896;
203
- }
204
-
205
- .hljs-string,
206
- .hljs-variable,
207
- .hljs-template-variable,
208
- .hljs-strong,
209
- .hljs-emphasis,
210
- .hljs-quote {
211
- color: #df5000;
212
- }
213
-
214
- .hljs-keyword,
215
- .hljs-selector-tag,
216
- .hljs-type {
217
- color: #a71d5d;
218
- }
219
-
220
- .hljs-literal,
221
- .hljs-symbol,
222
- .hljs-bullet,
223
- .hljs-attribute {
224
- color: #0086b3;
225
- }
226
-
227
- .hljs-section,
228
- .hljs-name {
229
- color: #63a35c;
230
- }
231
-
232
- .hljs-tag {
233
- color: #333333;
234
- }
235
-
236
- .hljs-title,
237
- .hljs-attr,
238
- .hljs-selector-id,
239
- .hljs-selector-class,
240
- .hljs-selector-attr,
241
- .hljs-selector-pseudo {
242
- color: #795da3;
243
- }
244
-
245
- .hljs-addition {
246
- color: #55a532;
247
- background-color: #eaffea;
248
- }
249
-
250
- .hljs-deletion {
251
- color: #bd2c00;
252
- background-color: #ffecec;
253
- }
254
-
255
- .hljs-link {
256
- text-decoration: underline;
257
- }
@@ -1,13 +0,0 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8">
5
- <title>Rindo Dev Server Connector &#9889;</title>
6
- <script>
7
- !function(e,t,A,n){"use strict";function r(e,t){e.dispatchEvent(new CustomEvent(c,{detail:t}))}function i(e,t){e.addEventListener(s,(function(e){t(e.detail)}))}function a(e,t){e.addEventListener(c,(function(e){t(e.detail)}))}var o="devserver:buildlog",s="devserver:buildresults",c="devserver:buildstatus",l=function(){for(var e=0,t=0,A=arguments.length;t<A;t++)e+=arguments[t].length;var n=Array(e),r=0;for(t=0;t<A;t++)for(var i=arguments[t],a=0,o=i.length;a<o;a++,r++)n[r]=i[a];return n};function g(e){f(h,"Build",e)}function d(e){u("Reload",e)}function u(e,t){f(B,e,t)}function f(e,t,A){var n=["%c"+t,"background: "+e+"; color: white; padding: 2px 3px; border-radius: 2px; font-size: 0.8em;"];console.log.apply(console,l(n,[A]))}var B="#f39c12",v="#c0392b",h="#3498db",m="#717171";function E(e,t,A,n){if(Array.isArray(n.diagnostics)){var i=n.diagnostics.filter((function(e){return"error"===e.level}));if(0!==i.length){var a=function(e){var t=e.getElementById(k);t||((t=e.createElement("div")).id=k,e.body.appendChild(t));return t.innerHTML="\n <style>#"+k+' { display: none; }</style>\n <link href="/~dev-server/app-error.css" rel="stylesheet">\n <div id="'+k+'-inner"></div>\n ',e.getElementById(k+"-inner")}(t);i.forEach((function(n){!function(e){var t=v,A="Error";"warn"===e.level&&(t=B,A="Warning"),e.header&&(A=e.header);var n="";e.relFilePath&&(n+=e.relFilePath,"number"==typeof e.lineNumber&&e.lineNumber>0&&(n+=", line "+e.lineNumber,"number"==typeof e.columnNumber&&e.columnNumber>0&&(n+=", column "+e.columnNumber)),n+="\n"),f(t,A,n+=e.messageText)}(n),function(e,t,A,n,r){var i=t.createElement("div");i.className="dev-server-diagnostic";var a=t.createElement("div");a.className="dev-server-diagnostic-masthead",a.title=y(r.type)+" error: "+y(r.code),i.appendChild(a);var o=t.createElement("div");o.className="dev-server-diagnostic-title","string"==typeof r.header&&r.header.trim().length>0?o.textContent=r.header:o.textContent=D(r.type)+" "+D(r.level);a.appendChild(o);var s=t.createElement("div");s.className="dev-server-diagnostic-message",s.textContent=r.messageText,a.appendChild(s);var c=t.createElement("div");c.className="dev-server-diagnostic-file",i.appendChild(c);var l=function(e,t){if(e.editors&&e.editors.length>0&&t&&"string"==typeof t.absFilePath)return!0;return!1}(A,r);if(r.relFilePath){var g=t.createElement(l?"a":"div");g.className="dev-server-diagnostic-file-header",r.absFilePath&&(g.title=y(r.absFilePath),l&&C(e,A,g,r.absFilePath,r.lineNumber,r.columnNumber));var d=r.relFilePath.split("/"),u=t.createElement("span");u.className="dev-server-diagnostic-file-name",u.textContent=d.pop();var f=t.createElement("span");f.className="dev-server-diagnostic-file-path",f.textContent=d.join("/")+"/",g.appendChild(f),g.appendChild(u),c.appendChild(g)}if(r.lines&&r.lines.length>0){var B=t.createElement("div");B.className="dev-server-diagnostic-blob",c.appendChild(B);var v=t.createElement("table");v.className="dev-server-diagnostic-table",B.appendChild(v),function(e){for(var t=JSON.parse(JSON.stringify(e)),A=0;A<100;A++){if(!p(t))return t;for(var n=0;n<t.length;n++)if(t[n].text=t[n].text.substr(1),t[n].errorCharStart--,!t[n].text.length)return t}return t}(r.lines).forEach((function(n){var i=t.createElement("tr");n.errorCharStart>0&&i.classList.add("dev-server-diagnostic-error-line"),l&&i.classList.add("dev-server-diagnostic-open-in-editor"),v.appendChild(i);var a=t.createElement("td");if(a.className="dev-server-diagnostic-blob-num",n.lineNumber>0&&(a.setAttribute("data-line-number",n.lineNumber+""),a.title=y(r.relFilePath)+", line "+n.lineNumber,l)){var o=n.lineNumber===r.lineNumber?r.columnNumber:1;C(e,A,a,r.absFilePath,n.lineNumber,o)}i.appendChild(a);var s=t.createElement("td");s.className="dev-server-diagnostic-blob-code",s.innerHTML=function(e,t,A){if("string"!=typeof e)return"";var n=t+A;return e.split("").map((function(e,A){var r;return r="<"===e?"&lt;":">"===e?"&gt;":'"'===e?"&quot;":"'"===e?"&#039;":"&"===e?"&amp;":e,A>=t&&A<n&&(r='<span class="dev-server-diagnostic-error-chr">'+r+"</span>"),r})).join("")}(n.text,n.errorCharStart,n.errorLength),i.appendChild(s)}))}n.appendChild(i)}(e,t,A,a,n)})),r(e,"error")}}}function C(e,t,A,n,r,i){"A"===A.tagName&&(A.href="#open-in-editor"),("number"!=typeof i||i<1)&&(i=1),A.addEventListener("click",(function(A){A.preventDefault(),A.stopPropagation();var a={file:n,line:r,column:i,editor:t.editors[0].id},o="/~dev-server-open-in-editor?"+Object.keys(a).map((function(e){return e+"="+a[e]})).join("&");e.fetch(o)}))}function y(e){return"number"==typeof e||"boolean"==typeof e?e.toString():"string"==typeof e?e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;"):""}function D(e){return e.charAt(0).toUpperCase()+e.substr(1)}function p(e){if(!e.length)return!1;for(var t=0;t<e.length;t++){if(!e[t].text||e[t].text.length<1)return!1;var A=e[t].text.charAt(0);if(" "!==A&&"\t"!==A)return!1}return!0}var k="dev-server-modal";function w(e,t,A){var n=[];A.forEach((function(A){!function e(t,A,n,r){A.nodeName.toLowerCase()===r&&A["s-hmr"]&&(A["s-hmr"](n),A.setAttribute("data-hmr",n),-1===t.indexOf(r)&&t.push(r));A.shadowRoot&&11===A.shadowRoot.nodeType&&A.shadowRoot!==A&&e(t,A.shadowRoot,n,r);if(A.children)for(var i=0;i<A.children.length;i++)e(t,A.children[i],n,r)}(n,e,t,A)})),n.length>0&&g("Updated component"+(n.length>1?"s":"")+": "+n.sort().join(", "))}function b(e,t,A){if("string"!=typeof A)return A;var n=A.split("/"),r=n[n.length-1],i=r.split("?");if(t!==(r=i[0]))return A;var a=I(i[1]);return a["s-hmr"]=e,A.split("?")[0]+"?"+Q(a)}function I(e){var t={};return e&&e.split("&").forEach((function(e){var A=e.split("=");t[A[0]]=A[1]?A[1]:""})),t}function Q(e){return Object.keys(e).map((function(t){return t+"="+e[t]})).join("&")}function H(e,t,A){for(var n,r=/url\((['"]?)(.*)\1\)/gi,i=A;null!==(n=r.exec(A));){var a=n[2];i=i.replace(a,b(e,t,a))}return i}function R(e,t,A){if("link"===e.nodeName.toLowerCase()&&A.forEach((function(A){!function(e,t,A){if(!e.href||!e.rel||"stylesheet"!==e.rel.toLowerCase())return;e.href=b(t,A,e.href),e.setAttribute("data-hmr",t)}(e,t,A)})),"template"===e.nodeName.toLowerCase()&&e.content&&R(e.content,t,A),e.shadowRoot&&R(e.shadowRoot,t,A),e.children)for(var n=0;n<e.children.length;n++)R(e.children[n],t,A)}function Y(e,t,A,n){"file:"!==e.location.protocol&&t.styleSheets&&function(e,t,A){for(var n=Object.keys(e.documentElement.style).filter((function(e){return e.endsWith("Image")})),r=0;r<e.styleSheets.length;r++)L(n,e.styleSheets[r],t,A)}(t,A,n),function e(t,A,n,r){"img"===A.nodeName.toLowerCase()&&function(e,t,A){A.forEach((function(A){e.src=b(t,A,e.src),e.setAttribute("data-hmr",t)}))}(A,n,r);if(A.getAttribute){var i=A.getAttribute("style");i&&function(e,t,A,n){A.forEach((function(A){var r=H(t,A,n);r!==n&&(e.setAttribute("style",r),e.setAttribute("data-hmr",t))}))}(A,n,r,i)}"style"===A.nodeName.toLowerCase()&&function(e,t,A){A.forEach((function(A){e.innerHTML=H(t,A,e.innerHTML),e.setAttribute("data-hmr",t)}))}(A,n,r);"file:"===t.location.protocol&&"link"===A.nodeName.toLowerCase()&&function(e,t,A){if(!e.href||!e.rel||"stylesheet"!==e.rel.toLowerCase())return;var n=e.href.split("?"),r=n[0],i=I(n[1]);i["s-hmr"]=t,i["s-hmr-urls"]=A.join(","),e.href=r+"?"+Q(i),e.setAttribute("data-hmr",t)}(A,n,r);"template"===A.nodeName.toLowerCase()&&A.content&&e(t,A.content,n,r);A.shadowRoot&&e(t,A.shadowRoot,n,r);if(A.children)for(var a=0;a<A.children.length;a++)e(t,A.children[a],n,r)}(e,t.documentElement,A,n)}function L(e,t,A,n){try{for(var r=t.cssRules,i=0;i<r.length;i++){var a=r[i];switch(a.type){case CSSRule.IMPORT_RULE:L(e,a.styleSheet,A,n);break;case CSSRule.STYLE_RULE:x(e,a,A,n);break;case CSSRule.MEDIA_RULE:L(e,a,A,n)}}}catch(e){console.error("hmrStyleSheetImages: "+e)}}function x(e,t,A,n){e.forEach((function(e){n.forEach((function(n){var r=t.style[e],i=H(A,n,r);r!==i&&(t.style[e]=i)}))}))}function F(e,t,A){i(e,(function(n){!function(e,t,A,n){try{if(function(e){var t=e.getElementById(k);t&&t.parentNode.removeChild(t)}(t),n.hasError)return void E(e,t,A,n);if(e["s-initial-load"])return void M(e,A,(function(){d("Initial load"),e.location.reload(!0)}));n.hmr&&function(e,t,A){var n=!1;"pageReload"===A.reloadStrategy&&(n=!0);A.indexHtmlUpdated&&(d("Updated index.html"),n=!0);A.serviceWorkerUpdated&&(d("Updated Service Worker: sw.js"),n=!0);A.scriptsAdded&&A.scriptsAdded.length>0&&(d("Added scripts: "+A.scriptsAdded.join(", ")),n=!0);A.scriptsDeleted&&A.scriptsDeleted.length>0&&(d("Deleted scripts: "+A.scriptsDeleted.join(", ")),n=!0);A.excludeHmr&&A.excludeHmr.length>0&&(d("Excluded From Hmr: "+A.excludeHmr.join(", ")),n=!0);if(n)return void e.location.reload(!0);t.documentElement.setAttribute("data-hmr",A.versionId),A.componentsUpdated&&w(t.documentElement,A.versionId,A.componentsUpdated);A.inlineStylesUpdated&&(g("Updated styles: "+A.inlineStylesUpdated.map((function(e){return e.styleTag})).reduce((function(e,t){return e.includes(t)||e.push(t),e}),[]).sort().join(", ")),function e(t,A,n){if("style"===t.nodeName.toLowerCase()&&n.forEach((function(e){!function(e,t,A){if(!e.getAttribute)return;if(e.getAttribute("sty-id")!==A.styleId||!A.styleText)return;e.innerHTML=A.styleText.replace(/\\n/g,"\n"),e.setAttribute("data-hmr",t)}(t,A,e)})),"template"===t.nodeName.toLowerCase()&&t.content&&e(t.content,A,n),t.shadowRoot&&e(t.shadowRoot,A,n),t.children)for(var r=0;r<t.children.length;r++)e(t.children[r],A,n)}(t.documentElement,A.versionId,A.inlineStylesUpdated));A.externalStylesUpdated&&(g("Updated stylesheets: "+A.externalStylesUpdated.sort().join(", ")),R(t.documentElement,A.versionId,A.externalStylesUpdated));A.imagesUpdated&&(g("Updated images: "+A.imagesUpdated.sort().join(", ")),Y(e,t,A.versionId,A.imagesUpdated))}(e,t,n.hmr)}catch(e){console.error(e)}}(e,t,A,n)}))}function M(e,t,A){e.history.replaceState({},"App",t.basePath),e.navigator.serviceWorker&&e.navigator.serviceWorker.getRegistration?e.navigator.serviceWorker.getRegistration().then((function(e){e?e.unregister().then((function(e){e&&g("unregistered service worker"),A()})):A()})).catch((function(e){u("Service Worker",e),A()})):A()}function N(e,t){var A,n,r,s,c,l=0;function g(){clearTimeout(r),clearTimeout(n);var e=f();if(!e)return function(){var e=t.createElement("div");e.id="dev-server-progress-bar",e.style.position="absolute",e.style.top="0",e.style.left="0",e.style.zIndex="100001",e.style.width="100%",e.style.height="2px",e.style.transform="scaleX(0)",e.style.opacity="1",e.style.background="#5851ff",e.style.transformOrigin="left center",e.style.transition="transform .1s ease-in-out, opacity .5s ease-in",e.style.contain="strict",t.body.appendChild(e)}(),void(A=setTimeout(g,16));e.style.background="#5851ff",e.style.opacity="1",e.style.transform="scaleX("+Math.min(1,u())+")",null==s&&(s=setInterval((function(){c+=.05*Math.random()+.01,u()<.9?g():clearInterval(s)}),800))}function d(){clearInterval(s),c=.05,s=null,clearTimeout(r),clearTimeout(A),clearTimeout(n);var e=f();e&&(l>=1&&(e.style.transform="scaleX(1)"),r=setTimeout((function(){try{var e=f();e&&(e.style.opacity="0")}catch(e){}}),150),n=setTimeout((function(){try{var e=f();e&&e.parentNode.removeChild(e)}catch(e){}}),1e3))}function u(){var e=l+c;return Math.max(0,Math.min(1,e))}d(),function(e,t){e.addEventListener(o,(function(e){t(e.detail)}))}(e,(function(e){(l=e.progress)>=0&&l<1?g():d()})),i(e,(function(e){if(e.hasError){var t=f();t&&(t.style.transform="scaleX(1)",t.style.background="#b70c19")}d()})),a(e,(function(e){"disabled"===e&&d()})),"tmpl-initial-load"===t.head.dataset.tmpl&&g();function f(){return t.getElementById("dev-server-progress-bar")}}function O(e,t){j(t).forEach((function(e){e.href&&(e.dataset.href=e.href,e.dataset.type=e.type)})),a(e,(function(e){!function(e,t){j(e).forEach((function(e){!function(e,t){"pending"===t?(e.href=T,e.type=K):"error"===t?(e.href=J,e.type=K):"disabled"===t?(e.href=U,e.type=K):e.dataset.href?(e.href=e.dataset.href,e.type=e.dataset.type):(e.href=G,e.type=K)}(e,t)}))}(t,e)}))}function j(e){for(var t=[],A=e.querySelectorAll("link"),n=0;n<A.length;n++)A[n].href&&A[n].rel&&(A[n].rel.indexOf("shortcut")>-1||A[n].rel.indexOf("icon")>-1)&&t.push(A[n]);if(0===t.length){var r=e.createElement("link");r.rel="shortcut icon",e.head.appendChild(r),t.push(r)}return t}var G="data:image/png;base64,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",T="data:image/png;base64,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",J="data:image/png;base64,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",U="data:image/png;base64,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",K="image/x-icon";function W(e){var t,A,n,i,a=("https:"===(t=e.location).protocol?"wss:":"ws:")+"//"+t.hostname+":"+t.port+"/",c=0,l=!1;function g(){var t=this;c>0&&r(e,"pending"),l||(i=setInterval((function(){if(l||t.readyState!==WebSocket.OPEN)clearInterval(i);else{t.send(JSON.stringify({requestBuildResults:!0}))}}),Z)),clearTimeout(n)}function B(){C()}function v(t){r(e,"disabled"),t.code>S?u("Dev Server","web socket closed: "+t.code+" "+t.reason):f(m,"Dev Server","Disconnected, attempting to reconnect..."),C()}function h(t){var A=JSON.parse(t.data);if(c>0){if(A.isActivelyBuilding)return;if(A.buildResults)return d("Reconnected to dev server"),l=!0,clearInterval(i),void e.location.reload(!0)}return A.buildLog?(A.buildLog.progress<1&&r(e,"pending"),void function(e,t){e.dispatchEvent(new CustomEvent(o,{detail:t}))}(e,A.buildLog)):A.buildResults?(l=!0,clearInterval(i),r(e,"default"),void function(e,t){e.dispatchEvent(new CustomEvent(s,{detail:t}))}(e,A.buildResults)):void 0}function E(){clearTimeout(n),(A=new e.WebSocket(a,["xmpp"])).addEventListener("open",g),A.addEventListener("error",B),A.addEventListener("close",v),A.addEventListener("message",h)}function C(){l=!1,A&&(A.readyState!==WebSocket.OPEN&&A.readyState!==WebSocket.CONNECTING||A.close(S),A.removeEventListener("open",g),A.removeEventListener("error",B),A.removeEventListener("close",v),A.removeEventListener("message",h),A=null),clearTimeout(n),c>=X?u("Dev Server","Canceling reconnect attempts"):(c++,n=setTimeout(E,z),r(e,"disabled"))}E()}var X=1e3,z=2500,S=1e3,Z=500;(function(e){function t(e,t){t=t||{bubbles:!1,cancelable:!1,detail:void 0};var A=document.createEvent("CustomEvent");return A.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),A}"function"!=typeof e.CustomEvent&&(t.prototype=e.Event.prototype,e.CustomEvent=t)})(e),function(e,t,A){try{if(e["s-dev-server"])return;e["s-dev-server"]=!0,O(e,t),N(e,t),F(e,t,A),!function(e,t){var A=e.location.pathname;return"/~dev-server-init"===(A="/"+A.substring(t.basePath.length))}(e,A)?W(e):(e["s-initial-load"]=!0,M(e,A,(function(){W(e)})))}catch(e){console.error(e)}}(t,A,n||{})}(window,window.parent,window.parent.document,window.__DEV_CLIENT_CONFIG__);
8
- </script>
9
- </head>
10
- <body style="background:black;color:white;font:24px monospace;text-align:center;">
11
- Rindo Dev Server Connector &#9889;
12
- </body>
13
- </html>
@@ -1,160 +0,0 @@
1
- <!DOCTYPE html>
2
- <html dir="ltr" lang="en">
3
- <head data-tmpl="tmpl-initial-load">
4
- <meta charset="utf-8">
5
- <script>
6
- if ('serviceWorker' in navigator) {
7
- navigator.serviceWorker.getRegistration().then(function(registration) {
8
- if (registration) {
9
- registration.unregister().then(function(hasUnregistered) {
10
- if (hasUnregistered) {
11
- console.log('unregistered service worker');
12
- }
13
- });
14
- }
15
- }).catch(function(err) {
16
- console.error(err.message || err);
17
- });
18
- }
19
- </script>
20
- <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
21
- <meta http-equiv="x-ua-compatible" content="IE=Edge">
22
- <title>Initializing First Build...</title>
23
- <link rel="shortcut icon" type="image/x-icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMAAAADACAYAAABS3GwHAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAgHUlEQVR4nO2dedxd07nHvzEkREIqiZgSkTRiFkWNV1HqknBjSlHU1BpalGsuKsQtLq0qik6qaqohUXOiMRdR8xBiCCmRSEiEJJJI7h+/fW7evH3fc9az9lp77fO+5/v5nE8r79pr7XPWevZe6xk7LFq0iGqcfPXdVf/ehA2BnwA7AysD04AHgF8AE1w7adCgCQOAk4BdgR7AJ8AY4JfAqy4dXHL0kKp/Xyrf/f0/BwIvA0cAawFdgbWBo9GN7hNonAbth33Q2jkaraWuaG0dAbwCHBBikBACsD7wlyp/Xxa4DTg8wFgN2geHojWzbJU2NwIb5B0ohADc5Nju98DZAcZr0Lb5KfBHx7Y35h0srwDsB2xsaH8ecF3OMRu0XX4LjDC03xjYN8+AeQXgEo9rvg88DfTOOXaDtkMv4DHgSI9rL80zcB4BOALo43ntN4GXgD1zjN+gbfCfSIGynef1fYDDfAfPIwDDc1wL0A0YBfxPzn4a1C/DgfuAngH68cJXAIYBa/gO2owzgCeRNqlB++DrwMPAOYH6643nWcBXAM7wvK41tkavwVMD99ugfPwI6fG/FbjfM30u8hGAbwKDfAarwVLARejJsGmE/hukZQNgNHAF0ClC/5sCW1gv8hGAYz2usfAt4DngAmCZyGM1KIazgBeRm0xMzGvTKgBd0P6/CM4EXqPhRlHP7Im0fecDSxcw3jC0Rp2xCsA+wPLGa/IwAJnE7wY2L3DcBvnYBLgdafk2KnDczsDelgusAvA9Q9uFwLvG/ltjMDAO7R/7B+qzQXjWAH4FvIBxIVbhXeArQ/sDLZ1b9tg9gV0M7d9B0n8acK7humr8CDgKWaAvA6YE6jcGPYHuyDW8K7J7dEVPqU4sdvTqACwC5gJfAJ8Ds4DZwAzgY+Ra/kVhd26nJ5qb/8a4BanBechO9DywnuM138nu52OXxhYB2M3QFuBONKnDkVvrNWgx5GUZ4HR04LkSPXFSCcJqwJrIJ6Uvctvtj3zXe6BFn5d5yA9+Jvqe44FJ6Mk4Hngfx8mOQA/geOA4wnzXCtPRg+727L/vQE5yLnRA1uU/uzS2CMDuhragBV/hNuAJ5Ow02NhPa6yI7BHHZv1eS9zAm6XRQt8C2S3Wzf67c8QxAToCq2afgcD2zf4+E9lQxqNt4nPo4Dkv4j31Rwv0SOBrgfu+G/gB8FGTf7sWdwEArVUnAejgGBHWMbsh1y87DtkLWuJ44H+zPkNzPXAVcrYLQW/g22jrtx3+vk9FMxk5l40FHkXatBBsBvwYOTR2CNRnhXnAKcDlrfz9cWBbx76mo7fz/FARYZtik/SRVf52OXpyjjH058ohwFPAvcD+wHIeffRBkzwGeAP5ph9I/Sx+0OQPA36Dtp9PIrWyj0amE/Bd4B7gWRSsEnrxj0aao9YWP2hL7Up3HI2prgLgKnkVRtX4+xvoqXosOuiFZjcUqPMGcCFuE78X2mu+DfwaPfmLVPnGZGtkWHwJWdqPoPbWbSP0270J3Ix9C+zCp8Ax6OA6vkbbWmuqOdu4NHIVAKfOMibgGLCMnlDrES9Ipg/SQr0EPITiS1dv8vdV0TniDbT496LtW5+/BfwOCfp5LBmXsTr6jR5Cv9lpxHvzXYccIK92bP8W7usKHB/arpNtifp6yNAWdLY4DIW3nYtN2CzslH0uQYfyKejp0zXSeGVnVRSiegrSpq2EAs1XiDzuk0gz+KDHtQ/hHgfstN1zeQOsilR8rjxuaNuU0Uhqj0JqvlisgA5xp9J+F39TlkP6+yOJu/j/hba82+K3+EGaRFf6oUizqrgIwAZUj85vzj8NbVviWrQtGkGc80GDYpmBfIHWRVvePDxraLssDm8LFwFYxzDoFHRoyssX6PU8EKlMY+q0G8RhHkpgNRAFvoSwZL+D3iSu1Fy7LgLQzzDga8gHKBRT0VZlIAp+nhuw71QsRN9jVrPPbGBBwvsKxVy08NdBWd2mBu7fYtNYu1YDl0OwJfQxlPNbcyYCJyO3hx8jNV73SGPlYRK616lIG/Y+8Bny5ZmG/Hy+RIt9LvIBqtARqV07Z59uyKdlRXQO64c0Nr3QAyFGUEkepqHcT1cS9wz3jqHtmrUauAiAJWD5PUNbHyYh1dyFyFx+JHKZTsGbyO3gVaQyfD27vyLeUmsgleUm6Ly0FXri9ihg7Oa8idSqv6WYM5tFuFap1cBFACwW4I9qNwnCp8DFSKV5IHLT3oz82QWqMRl4BFmIn0H+N6n4IPuMa/JvKyH3kx2BHZDxKxZTkfD/JftU96cJi2WNdavVwEUAVjQMON3QNgQLgRuyzxhkvQ3JJOCu7PMw5T6Mz0Sq5NHZf6+HIrL2J3wM90vYvYND8YmhbU01t8sh2OJPk8pn/TrCLv6RKM3GOujM8SDlXvwt8TpKMrApMgBeR7jvsDPu+TtDY1ljNV1ZXATA4hqQYpHcgQxbefkSHbLXQy4Rt9M2tE4gr9DDkEBfgLROeTmUxf76RTLf0Lbm2g1VH6BCaC/BWtyGFmseFiAV60BU4KOWU1Y98x7K0DAQRdTlVVnvjeagSCxrrObZxEUALBLn437sy7XkzxhxC/IZOZn4GqwyMRk4Efl4OZcAaoV9WDL4KTaWNVbTruIiAHMMA1oOzHk4A6lBfXkfTdz+tO0nfi1eBfZAcRSf5ujnhyhMtQhWMrSdXauBiwDMNAwYUw1ZYTD5EurejOqZ3RHmdtoEf0Zvwgdy9PFzwoW7VqOmbr8JNc86LgJgUTvVtLzlZE1skUHNORG5/IY4BLY1PkDB5JYCFc25g3BJk1vDUldiWq0GLgJgMTzEztlzFzbP1ApfokqDlwW9m7bJ2fhr1TqiOYqJZY3VXLsuAjDRMGDMLGDn4Zc0dyZyFfD1QW+PXI/CFH34BvlrR1TDssZqKjZcBMDi3jyAONug9fErsDcDuQe8EPJm2gmjUfikJStbhXMIUMGxBdZEtQVcqbl2XQTgdcOAECek0aca4AKUQydEfEJ75VH83wQ3hLyRDGtyhppr11UALD4+lvSJLhyGvB6t7Epah7W2wt8x5tvMGISsxSGxCOM0AgnAl8jzz5U9CGcR7gj8wuO6E9DENQjDTciFwsovCZcAbSm0tlx5HgfXHFdXCEugey/COaadjj3n5J1UT7DUwI+zkDu4hW4ofiMEu2CzMzmtWVcBGF27yRIcbWzfEp2xWxenU1wBj/bIf2HzDABZ7UMkGDvG2N5pzboKwDPY7AF7ofR8eTgJ+w93MPUVV9sLh9QdJWIm9mLWyyMDZB7WRMLnymS0ZmviKgBfYUtNtxT5fEOWRg5qFv6Gas7WAyehaK63ss+47N/qgRuRe7WFU8jneWytADkKR/Wt5aasaq3j8K8HcBA2pydQQq2ysxzK2nwpKvnUJftsnv3bY5Qv2L0ljjC274bm1Ice2Lc/TqnRwSYAj2OLyO+AAkx8ON7Y/lfotVd2bkRp1ltjO6RxKTvvInd0C9Y5rXCFsf1bKP2iE9bXkvVmDsJe3G4jZE53ZT7hSjDFZBBuwTt7UR91ki0FK0BJCzY0XrMlSs1u4UpLY6sAXINdC2B9olkdsa6hPlIoHhKpbSqmoXQoFqzfy7p25mB8M1kFYDZGCUO+G5cZ2u9r7P8SY/tUDDW03TPWTQTGGpexn6HtFThkdmvhmppBME3xOZlfgN1B6gTcJnVLYC1Dvw9QH6GMm2CbzH74uX8UzbvYjGN9UY21WuyFqk5aWICHtdpHAGagbL9W7qR2slLrk+8qj/tIgfWtBvnjnYvCanWvNcfr4pdt4nxs0YuAv252BA7RNi2M9TDVc3paki1NR7XA6oGhHtfkzXZRFKOwncGqlVrqgWwMVl+yj/HzVfIWgK+wWwRB1uFHaLk+1WrYtB93UR9W34HYtR9k1wwMfC8x+ApbZolvoGS/zVkeuV+39LdaHIlf3EIu69wo/FJqbIAqfTR3c/gPYz+xQ+9CkedJXi9vAeuWpflcr4B0967V4JvyN3KshbyJsQ5CKb+tDELm/6b+QtUMRM35AnstslQMTXRtkYzFlkWv6Vyvhvx2BnmMOwv5f3mTVwBm4nfAA70JnmXxwdiy/XmG+sjs0AdptnzZkvqoTzwTR+ezjMpcD0APwvU9x90Pj4NvU0KkRnwA5ev3YXVUU+xwbHs/q196KoYG6MPiBZkSSwDSamjOn8M/jcqF5MtjBITLDXoG/hqZLqiyiCXdxdOeYxXN3gH6qBd1qKWAXX805108x7oXrbnchEyOuye2QsbNcVV9LUL56ctOTxSUn5ftKSbjXl5eNLTNEzL7CrbQyKqEFICv0GTFrhIzAfgw8hgh2JMwsdEdqA/XiH8RPwPHZJSqJVghxtDp0T9BpXlCVwZsiqVKYEpCbH9i9BWTmHMzFaXcsaTqrEloAQBlktsOWediUA/ZnFdCVVRCsTP2AKEUvBGp32loTU0M3XEMAQBtUzYlTtnUengD7E64dCBkfaWqyWUhzxmwNd5Fa2lChL6jCQAo2/AWhNfY1EOmt6ER+qwHq3DoRToO2UIs1eFNxBQAkMPaVqgSSwjmEO81G4rlUJrx0OxGsRV4fBhPuLpqt6C8rrG20kB8AaiwP/YQupZ4m/JHf+1CnEo5XQmfdjI0M9Ac5eVstGaiU5QAgKKHhgBTcvRRDwfgmBqbetAG5ZmjaUjlm6dIh4kiBQDgHhT0fo/n9WXf/ljzV76MLYFvyLyrsfCdo3vR2vhbwHupSdECANrTDUEFqGcYry37AXgHqgf8NOfi7ONKd2BHyw0lwDpHM1EOqcHEN6L+G5Yi2KG5Ev1YlsotIfaXMbFuUXz8p/ah3Jmv3zK2H0bC6j0p3gBNsVSWn08cu0JIhhravo+smp9k/9+VsnuHTsQWqRdKa+RFagGwJM36F+X2Adoam2vvqFb+fy3WyMYqKx9i09u7ZImIRmoBsNR7KvvT32qoalrudWTksYpkEba5il1ZtCqpBcDy5aOYwgNi2ZpMQwHgFR7BZvAZamibAstctWsBsCTBKrMAbELtnEdNuYslsxh8hU39NwDY2NC+aCxzZVkDwUkpAKtgq/o9MdJ9hGCosf0djv9WjTIbxSYa2vYmYcBPSgFYA1sFmDKnQLQsxlm0XL5nNLZA/zILgGWuOqPY8CSkFADL038BNlVhkfTHth25h5bVv/OwWcg3IvH+uQqTsKlCk2W+SCkAlr3fJOypGIvC+iS+0/NvLVHWgPmp2FShyc4BKQXAIvWTCBgHGhiLAMyluvX3Xmz1F8q6DVqI5syVdvkGsHzpsu7/10TxDq6Mpnomvc+xlaTdEttWskgsc9YQgBqU1QhmdUtw0fRYt0FlzRgx0dC2XQqApY5wtJC4nFgssgtxO+Teg227V1arsGULlLemtDepBKBH9nHlg1g3koPuKEeNKw/jZu39OGvryg7YfsuisMxZD2xu5MFIJQCro5TYrpSxBOoe2NzJLYYuS9ulUXxF2bD49nch0VsglQD0MrSdRzm9QK0amJGR2kI5tUEfIBd2VyxrIhgp3wCufEzcTHM+rIAtQP1pbFuCD7Clk9kF2xu1CKZgm7ck1uBUAmB53U1GLrZlYndsKUqsfj7Wa5ajeu2tFCzCtg1qbIFaIU8WiVhYtxyxBQDKuQ2yzF272gJZvmzUxEgeWJ+2L2KPkyW7xpJyfHegk8c4MbHMnU9xvNykEgCL+2veN8DXUFbhbY3jtsbO2BJfjcwxluXaFQmTOKsnSkS7Dfrt8mCZuyQu0SntAK74psroioo4T0BVKR9HT9Xfk+91O9TY3mrZzXNtHqNYL+Ba9Bs9hn6zN4Ffo9/SB8vcJbFlpBCApbEZPXw0QCuj+lPHNRtrRVSb6mVgbY9+rYmvrNuY5li3T0Pwm9O+2Vg/YMm3Ww+Uv+l5/AxVli3QyiRYjykEoAv6sq5M9xjjDqoH3PfELwPZ9iiSzZU8T3+fPlbBZp2ucA/V34r9gds8+rW4sK+Mf80wb1IIwNew6aytFUG2xW0RbIDdma0I7U/ePqzboKG4lSndAZ0LLFjmrivQzdh/blIIgPVVaq0Da3ELsBZbG2po+yHwlLH/lngKmyV8qLF/y29gdbmwzp1lZxCEFAJg0aDMIu6PaGm7BTbf+xDbH5++emNLNmXR9Pg8vL4wtO9m7D83KQTAUutqFvCZsX+LG66lbcjQRysxQyUtrubWuOyZ2OYvRl2FqpRdAGZjCxEE22HNUrnGIgDTgLGG9rUYi02jYjkHWH4D60F4DrY3QOGFAMu+BZrt0f94pM+uxSjgScc+N8KW+OpuwsYwuwbTVFgH3bMLT+CWm/Ra/HL/VwsBbU67EACLUcWSJ6cpR1F92zAW2M/Q31Dj+CG3P759WjRc+1L9jTUK/aY+WM5w7UINavmS1v1/U/ZGRq/H0STMQi7GxwM7YfNVt2wprIHtrtQKqG+OZcu2AP0mJ6DfqKJ8eBz9hkMNfTXHIgC+FmdvUhTIKEoAAP6YfXogC7SPX1F/VKfWlfuwn1tcmJP17frm2hTdu6WoyOXZpxfKVxoiF5NFaNvFG8Ai5XkFoMI0/J3qrMayGNufClajmG8xjSmES0TWEIBmFPkGCIFlKzEf/wKALtyLbetWhsxxFgEofAtU9jeA5ceLwarItcKV0cQV2s+AMYb225DIz74JDQFohuUNYNEhxyBG4qu8WMcYGuMmDDS2QM2wpERP/QawbCEWosIXsRnFksU1apE6VNJiy7GsjSCkEIDOhrY+hrBQWGvyPkox4Zsfo4AVV3YkUdKpDMtb3LI2glC0AHTEJuUpt0CDsamJY2p/8oy1DPouqbAKwLKxbqQlihaA5bFJeUoBsPrVW0qd5sU6Vsr8oZY5XJ6Ct0FlF4BUWyBrgPk4ik3h/l42piu7kEDDkmGZw860AwGoh0Pwt7FFrRW5/fEZcwX0nVJgmcPO2BKO5aZoAehsHDOVIew/jO1vj3IXYce0fqdQWBwal6LgFI9FC4DFFXoh6c4AlowRL6L0IUXzJraME/1i3UgNPsfmGl5oUEyZBWAWcZzKXLCECd4U7S5qc7OhbbdYN1GDOdi2QW1aACwLaybpDWEupHQ1sIydKsHw59hcovNmozNRtABYsn/NwOb4FRJLOo8TgDNj3UgVTkOxDa5Y08uEYh6aS1cKNdoVLQCWLAzWbBAhmWBo2wG4AHgQt/w6edkAeAC4MBvbFZ8EvaGwzGWbFgDLl5sR6yYceMTjml2AV4HziZPnsnvW9yvAdzyu9/lOofjU0LbQHKFFC4ClCIJvUtwQPIS/AJ6FgsfPIUwN375o4b+R9e3DDODvAe7FF0swUqFnqoYAtMyXwDU5rl8ZGI62UjcB3wPWMFy/FnAoSkNSWfh5tgZXo++UCstcFioARccEW9KSpxQAgJ8DPyFf0YlOwP7ZZwHwGtLdf4ASUs1G2pkVUY2sNYFBwHqEezh9ib5LShoCgNRbFgFIXRp1JnAwcGug/pYBNs4+RXIw6UNLLXPZC+UHKkQJUuQWqDc2I0cZqsP/Fbgo9U3k4CL0HVJjqZC5EtAn1o00p0gBsOyB52PL2xmT05HKsd64EN17GZiEtoCuWNZKLooUAIt/zVTKVR3yDLSVSBmh5socdIA+I/F9NGUytko/PtV7vChSAAYa2r5H+WoD34D275asDEXzELrHP6W+kWYswhYvYVkruShSAAYY2lqymRXJ28jg9SPSGuqaMx3V8tqZtBbfaljuy7JWclGkAFSr2dUciytCCq5CqsrfEDYLtJWvUBXH9YArE96HCxYBsKyVXBQlAKtg80dP4V9v5SPgWGBdlDrccsjLyxzgCrRVOJ7yFRNvCctDrT8F1Q0uSgA2RMlpXSnra7wlJqDU4QOAc5GxKxYvAT/NxjqO8m4VW8IiAEujNROdogxhFi/JmdTHG6A5E5H7w3BUpXJ3VFlxY/zjXGehmsZjkAeoa0GPMvImMsi52oLWJ2yVnRYpSgBcq5WAfijfwhhl4REWe1/2Rk+zQahyy6rI2rkicpVYBMxFi+Oj7DMeLfwXSe8SEorP0Nxu7ti+EIt5UQKwnqHtq9HuIg2Tss99LfxtGSQAllSH9cwruAuAZc14U8QZoCM61LjS1gSgGgtoP4sfJACu9KOALHFFCEAf5OnoyuuxbqRBcsYb2q5BAT5BRQiAJQYA/CoRNqgPrHNrXTtmihAAiwv0J6R3g24Qj4+whUeuEutGKhQhAJZIpimkL4rRIB6fY3NyjB4gX4QAWCKqGou/7WOZ4zzReE4UoQbtaGhbNg/QlujIYmet2dh93UOyDLIzVDJuT0B5eMqMxXfKsna8KEIALMmtokt8DpYHRqCySWtl/7YIeBepbscAI4H3I99Hb1T2aGdkLV2bxfmBJqIaYmeRLq1kLSxW8eiJ0YoQAEt6w55I6sv2FOsOPMG/+6l3QPrqfsAewCXA71CiLEsYoAurIz+gI2n9ydgXOAkYgqpbhqr1G4qO2JzcoqfGLOIMYDn1r0oBqi8PRuIWpLEscAzSd/8w4Pg/zPo8FrdtwTqkqVlQi9WxZX2wrB0vihAAS2xvB4pJL2jh28B2xmu6oLxCvw4w/uVZX9YKL9sBOwUYPyTWuY0eF16EALyP7ZC4fawb8SRPfa0foy2RL79Hbs++pC6R2hxLkY55xD9PFSIAU7BZAMs2aXmNMUegvbuVnwKH5xw7uiHJiKXu8hsUEOhTVECMpZLJOugAVxZCWKZHAJsY2m+SXZOXDwP0EYptsMX6vhDpPpagKAGwJmY9P8pd+HFboH6uN7T9c6AxQ917CKxzWkgy36IE4F5j+x2xVWmPyWPA/QH62RjY1aHdrtgCiFrjfuDxAP2EYCfsB/KW4ieCU5QATMaen/4vMW7Ek/2AZwP043KgtVR9aY1/onsuCzcY2/+dghKjFZkW5Spj+9UoR15LkEFmCxT0bgnqaM7OKPdla3TL2vjyCrrHzSlPfbW/Yrft/CbGjbREkQJwG/b41n1Jn9q7KcPR9qQ/2tKcZ7y+E7BVlb9vhd3/5bzsXvpn9zbceH1Mfo7m0MKHyJ2jEIpMj74QuQhYjUOnoxz354a+oRy8k/3vyyiCzVIqdUOU4aG1v1nYH7jFeE1RnIdfct4RFJhsrOgKMVfgp1b8GapyUkZuBp4ztK+2HbC4CTxHeRf/NcDZHtd9QIHbHyheAECGIR+OQhqZwhKnGrDEMa/g+bc8YxbFAKR58vWD8l0b3qQQgPvw109vh4xqx4a7nSBYnLaqnYMsmo9UdX9b4xg0N75GzFtpfWsYjRQCACoa52th7YQSwT5BefyGLIe2am1vN/RjaRuTHdBcXIViJnyYDBwU6oYspBKAechnPQ/bINvCjUhFmZKxuNUNuBEdnFvj5axNLcaQtu4vwJboqT0WzUUeBlNA8EtLpBIA0CFuWIB+DgCeQa4GeSciD/sgA1RrjAUOcejnEKq7ATxPWofB7ZHW6ynCGNuGoe+UhJQCADKSHBWor4PRq3gs8H38E9L68hkyQA1nSWPZC8CpyBXAJQvcVygG4VSWdAirGLk2o/jcqZ1Q2aVH0Ztn/0D9HkNiY2eHRYuqx6GffPXdRdzHUYRXc05CTmXXkybZ1teRPvudWg1r0A89qFKkjF8XLfwDCVP1vinHUoDK85Kjq++0U78BKlwDfDdwn72BM1Eo4S3AboH7r8Vb5F/8ZH0Uvfh3RYfs14HTCL/4D6BgfX9rlEUAQAeqrYnjwz4MeaS+CJyArV5xe6Er+m1eQp6kMc4ZHyE16c0R+vaiTAIAOlgNAu6J1P/GwGXorXASi9OJtGeWAn6CnvaXEcYVuyXuR3NbqiIfZRMAUBjcEOBE4iWcWg24FOXzGRxpjHpgMDpc/5K4xalPRlvQMtV+BsopABUuQ1kEYr0NQEUY7gb+SAF5KEtEd+AP6LvHLERxP3LwuzTiGLkoswCAUv0NQQfkmMXnDkVvg4MjjlEWDkHf9bCIY7yNrP27UfKCJ2UXgAq3oifJCcRLldELqUzvRBnW2hp9kA/Wn7ClrLcwGTgF2AA3i3Zy6kUAQHk4L0e66dNQHswYDEVPrRMj9Z+CE9Ab1JKWxMIk5P48EKWH/DLSOMGpJwGoMAe4GP3YhwP/iDBGZ+AXKA64bHmKLOwNjEPnKYurtSvPAT9AqWxGUIfVPetRACrMQ4fXbYBdkEk9dHr1zZBBaCz1pS0ajPyJbse9KqOFkehsthnKfDc3whiFUGRIZEzGZJ9+yGx/AGFzjO6Qff6JMhzcSrmSToESzw5DbsWbRei/Evp5E2ncMqLQVgSgwjvoVTwCaSC+jzwWQ73pNss+I4AHkYp2LGFcHnzojwRzCHoLht7mLERv1uux53aqC9qaADTlvuxzdvYJqeJcASXNrSTOHZd9nkVPyteBmQHHA6VTWR8pATYHvkmc7U2F65GgT4g4RnLasgBUmIB0339Ah0FLjk5XtmDJoJzPgalIHz4JmN7k8xmycM9j8d55OZQOZRnkp9Q9+6yMAuX7I0utNUW6Dy8iN5FCUhOmpj0IQIWHkS/KcOCcyGN1yT79Io8TmgtQeaV2Qz1rgXz5GQrnezr1jZSIZ5Enbrta/NA+BQAUQrkVStxUtyq8AMxHRsUtkCduu6O9CkCFi5D7b1lykBbJ7ei7X5z6RlLS3gUApNMehqKgSuWrHol/IBXxvqQJFS0VDQFYzIMoWmkv2qYgPI1cI7YhTL2DNkFDAP6dkUgQdkPbhLLVLLawAH2HIejMU8bSqUlpT2pQK/dnn75oizSMOC4GMXgWLfabSWelrgsaAlCbieigeDGKSdgd5e3ZHBmqysAspNl6MPu8kPRu6oiGANh4JftcjBb/N5D+fF0UcN8XGcBi8jkKCnoNpVJ8EmVymBp53DZJQwD8+YTFXqgVVkNuC6ugVOF9Udmjntn/dkUJZJcDlgaWza6bjzLCzUXxDp8hX6KPgRnAu0hbNQVtaUKUbm0A/B9jNP4QL0LfPgAAAABJRU5ErkJggg==">
24
- <style>
25
- * {
26
- box-sizing: border-box;
27
- }
28
- body {
29
- position: absolute;
30
- padding: 0;
31
- margin: 0;
32
- width: 100%;
33
- height: 100%;
34
- font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
35
- }
36
- .toast {
37
- position: absolute;
38
- top: 12px;
39
- right: 10px;
40
- left: 10px;
41
- margin: auto;
42
- max-width: 700px;
43
- border-radius: 3px;
44
- background: rgba(0,0,0,.9);
45
- -webkit-transform: translate3d(0px, -60px, 0px);
46
- transform: translate3d(0px, -60px, 0px);
47
- -webkit-transition: -webkit-transform 75ms ease-out;
48
- transition: transform 75ms ease-out;
49
- pointer-events: none;
50
- }
51
- .active {
52
- -webkit-transform: translate3d(0px, 0px, 0px);
53
- transform: translate3d(0px, 0px, 0px);
54
- }
55
- .content {
56
- display: flex;
57
- -webkit-align-items: center;
58
- -ms-flex-align: center;
59
- align-items: center;
60
- pointer-events: auto;
61
- }
62
- .message {
63
- -webkit-flex: 1;
64
- -ms-flex: 1;
65
- flex: 1;
66
- padding: 15px;
67
- font-size: 14px;
68
- color: #fff;
69
- }
70
- .spinner {
71
- position: relative;
72
- display: inline-block;
73
- width: 56px;
74
- height: 28px;
75
- }
76
- svg:not(:root) {
77
- overflow: hidden;
78
- }
79
- svg {
80
- position: absolute;
81
- top: 0;
82
- left: 0;
83
- width: 100%;
84
- height: 100%;
85
- -webkit-transform: translateZ(0);
86
- transform: translateZ(0);
87
- -webkit-animation: rotate 600ms linear infinite;
88
- animation: rotate 600ms linear infinite;
89
- }
90
- @-webkit-keyframes rotate {
91
- 0% {
92
- -webkit-transform: rotate(0deg);
93
- transform: rotate(0deg);
94
- }
95
- 100% {
96
- -webkit-transform: rotate(360deg);
97
- transform: rotate(360deg);
98
- }
99
- }
100
- @keyframes rotate {
101
- 0% {
102
- -webkit-transform: rotate(0deg);
103
- transform: rotate(0deg);
104
- }
105
- 100% {
106
- -webkit-transform: rotate(360deg);
107
- transform: rotate(360deg);
108
- }
109
- }
110
- svg circle {
111
- fill: transparent;
112
- stroke: white;
113
- stroke-width: 4px;
114
- stroke-dasharray: 128px;
115
- stroke-dashoffset: 82px;
116
- }
117
- .logs {
118
- position: absolute;
119
- top: 50px;
120
- right: 10px;
121
- left: 10px;
122
- margin: auto;
123
- max-width: 700px;
124
- padding: 32px;
125
- color: #5a5a5a;
126
- line-height: 1.5;
127
- }
128
- </style>
129
- </head>
130
- <body>
131
-
132
- <div class="toast">
133
- <div class="content">
134
- <div class="message">Initializing First Build...</div>
135
- <div class="spinner">
136
- <svg viewBox="0 0 64 64"><circle transform="translate(32,32)" r="26"></circle></svg>
137
- </div>
138
- </div>
139
- </div>
140
-
141
- <div class="logs">
142
- <pre id="log-output"></pre>
143
- </div>
144
-
145
- <script>
146
- setTimeout(function() {
147
- document.querySelector('.toast').classList.add('active');
148
- }, 100);
149
-
150
- var logOutput = document.getElementById('log-output');
151
- window.addEventListener('devserver:buildlog', function(ev) {
152
- var buildLog = ev.detail;
153
- if (buildLog && buildLog.messages) {
154
- logOutput.innerText = buildLog.messages.join('\n');
155
- }
156
- });
157
- </script>
158
-
159
- </body>
160
- </html>
@@ -1,101 +0,0 @@
1
- export interface RenderToStringOptions extends SerializeDocumentOptions {
2
- afterHydrate?(document: any): any | Promise<any>;
3
- beforeHydrate?(document: any): any | Promise<any>;
4
- }
5
- export interface SerializeDocumentOptions extends HydrateDocumentOptions {
6
- approximateLineWidth?: number;
7
- prettyHtml?: boolean;
8
- removeAttributeQuotes?: boolean;
9
- removeBooleanAttributeQuotes?: boolean;
10
- removeEmptyAttributes?: boolean;
11
- removeHtmlComments?: boolean;
12
- }
13
- export interface HydrateDocumentOptions {
14
- canonicalUrl?: string;
15
- constrainTimeouts?: boolean;
16
- clientHydrateAnnotations?: boolean;
17
- cookie?: string;
18
- direction?: string;
19
- excludeComponents?: string[];
20
- language?: string;
21
- maxHydrateCount?: number;
22
- referrer?: string;
23
- removeScripts?: boolean;
24
- removeUnusedStyles?: boolean;
25
- resourcesUrl?: string;
26
- timeout?: number;
27
- title?: string;
28
- url?: string;
29
- userAgent?: string;
30
- }
31
- export interface HydrateFactoryOptions extends RenderToStringOptions {
32
- hasTimedOut: boolean;
33
- serializeToHtml: boolean;
34
- destroyWindow: boolean;
35
- destroyDocument: boolean;
36
- }
37
- export interface HydrateResults {
38
- diagnostics: HydrateDiagnostic[];
39
- url: string;
40
- host: string;
41
- hostname: string;
42
- href: string;
43
- port: string;
44
- pathname: string;
45
- search: string;
46
- hash: string;
47
- html: string;
48
- components: HydrateComponent[];
49
- anchors: HydrateAnchorElement[];
50
- styles: HydrateStyleElement[];
51
- scripts: HydrateScriptElement[];
52
- imgs: HydrateImgElement[];
53
- title: string;
54
- hydratedCount: number;
55
- httpStatus?: number;
56
- }
57
- export interface HydrateComponent {
58
- tag: string;
59
- mode: string;
60
- count: number;
61
- depth: number;
62
- }
63
- export interface HydrateElement {
64
- [attrName: string]: string | undefined;
65
- }
66
- export interface HydrateAnchorElement extends HydrateElement {
67
- href?: string;
68
- target?: string;
69
- }
70
- export interface HydrateStyleElement extends HydrateElement {
71
- href?: string;
72
- }
73
- export interface HydrateScriptElement extends HydrateElement {
74
- src?: string;
75
- type?: string;
76
- }
77
- export interface HydrateImgElement extends HydrateElement {
78
- src?: string;
79
- }
80
- export interface HydrateDiagnostic {
81
- level: string | any;
82
- type: string | any;
83
- header?: string;
84
- language?: string;
85
- messageText: string;
86
- debugText?: string;
87
- code?: string;
88
- absFilePath?: string;
89
- relFilePath?: string;
90
- lineNumber?: number;
91
- columnNumber?: number;
92
- lines?: {
93
- lineIndex: number;
94
- lineNumber: number;
95
- text?: string;
96
- errorCharStart: number;
97
- errorLength?: number;
98
- }[];
99
- }
100
- export declare function renderToString(html: string, opts?: RenderToStringOptions): Promise<HydrateResults>;
101
- export declare function hydrateDocument(doc: any, opts?: HydrateDocumentOptions): Promise<HydrateResults>;