@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
package/bin/rindo CHANGED
@@ -1,22 +1,56 @@
1
1
  #!/usr/bin/env node
2
2
  'use strict';
3
3
 
4
- try {
5
- var v = process.version.replace('v', '').split('.');
6
- var major = parseInt(v[0], 10);
7
- var minor = parseInt(v[1], 10);
8
- if (major < 8 || (major === 8 && minor < 9)) {
9
- console.error('\nYour current version of Node is ' + process.version + ' but Rindo needs v8.9 at least. It\'s recommended to install latest Node (https://github.com/nodejs/Release).\n');
10
- exit(1);
11
- }
12
- if (major < 10 || (major === 10 && minor < 13)) {
13
- console.log('\nYour current version of Node is ' + process.version + ', however the recommendation is a minimum of Node LTS (https://github.com/nodejs/Release). Note that future versions of Rindo will eventually remove support for non-LTS Node versions.\n');
14
- }
15
- } catch (e) {}
16
-
17
- var cli = require('../dist/cli');
18
- var node = require('../sys/node');
19
- var sys = new node.NodeSystem();
20
- var logger = new node.NodeLogger();
21
-
22
- cli.run(process, sys, logger);
4
+ var minimumVersion = '10.13';
5
+ var recommendedVersion = '12.17';
6
+ var currentVersion = process.versions.node;
7
+
8
+ function isNodeLT(v) {
9
+ var check = v.split('.').map(Number);
10
+ var node = currentVersion.split('.').map(Number);
11
+ return node[0] < check[0] || (node[0] === check[0] && node[1] < check[1]);
12
+ }
13
+
14
+ if (isNodeLT(minimumVersion)) {
15
+ console.error(
16
+ '\nYour current version of Node is v' +
17
+ currentVersion +
18
+ ', however Rindo requires v' +
19
+ minimumVersion +
20
+ '.0 or greater. It is recommended to install latest version of Node (https://github.com/nodejs/Release).\n',
21
+ );
22
+ process.exit(1);
23
+ }
24
+
25
+ if (isNodeLT(recommendedVersion)) {
26
+ console.warn(
27
+ '\nYour current version of Node is v' +
28
+ currentVersion +
29
+ ", however Rindo's recommendation is v" +
30
+ recommendedVersion +
31
+ '.0 or greater. Note that future versions of Rindo will eventually remove support for non-LTS Node versions (https://github.com/nodejs/Release).\n',
32
+ );
33
+ }
34
+
35
+ if (process.argv.indexOf('--next') > -1) {
36
+ console.warn('\nThe next compiler is now the default and the --next flag is no longer needed.\n');
37
+ }
38
+
39
+ if (typeof globalThis === 'undefined') {
40
+ // globalThis not added until node 12
41
+ global.globalThis = global;
42
+ }
43
+
44
+ var cli = require('../cli/index.cjs.js');
45
+ var nodeApi = require('../sys/node/index.js');
46
+ var nodeLogger = nodeApi.createNodeLogger({ process: process });
47
+ var nodeSys = nodeApi.createNodeSys({ process: process, logger: nodeLogger });
48
+
49
+ nodeApi.setupNodeProcess({ process: process, logger: nodeLogger });
50
+
51
+ cli.run({
52
+ args: process.argv.slice(2),
53
+ logger: nodeLogger,
54
+ sys: nodeSys,
55
+ checkVersion: nodeApi.checkVersion
56
+ });
@@ -0,0 +1,524 @@
1
+ function _interopNamespace(e) {
2
+ if (e && e.__esModule) return e;
3
+ var t = {};
4
+ return e && Object.keys(e).forEach((function(s) {
5
+ var n = Object.getOwnPropertyDescriptor(e, s);
6
+ Object.defineProperty(t, s, n.get ? n : {
7
+ enumerable: !0,
8
+ get: function() {
9
+ return e[s];
10
+ }
11
+ });
12
+ })), t.default = e, t;
13
+ }
14
+
15
+ Object.defineProperty(exports, "__esModule", {
16
+ value: !0
17
+ });
18
+
19
+ const IS_NODE_ENV = !("undefined" == typeof global || "function" != typeof require || !global.process || "string" != typeof __filename || global.origin && "string" == typeof global.origin), dashToPascalCase = e => (e => e.toLowerCase())(e).split("-").map(e => e.charAt(0).toUpperCase() + e.slice(1)).join(""), isFunction = e => "function" == typeof e, isString = e => "string" == typeof e, 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", normalizePath = e => {
20
+ if ("string" != typeof e) throw new Error("invalid path to normalize");
21
+ e = normalizeSlashes(e.trim());
22
+ const t = pathComponents(e, getRootLength(e)), s = reducePathComponents(t), n = s[0], r = s[1], o = n + s.slice(1).join("/");
23
+ return "" === o ? "." : "" === n && r && e.includes("/") && !r.startsWith(".") && !r.startsWith("@") ? "./" + o : o;
24
+ }, normalizeSlashes = e => e.replace(backslashRegExp, "/"), backslashRegExp = /\\/g, reducePathComponents = e => {
25
+ if (!Array.isArray(e) || 0 === e.length) return [];
26
+ const t = [ e[0] ];
27
+ for (let s = 1; s < e.length; s++) {
28
+ const n = e[s];
29
+ if (n && "." !== n) {
30
+ if (".." === n) if (t.length > 1) {
31
+ if (".." !== t[t.length - 1]) {
32
+ t.pop();
33
+ continue;
34
+ }
35
+ } else if (t[0]) continue;
36
+ t.push(n);
37
+ }
38
+ }
39
+ return t;
40
+ }, getRootLength = e => {
41
+ const t = getEncodedRootLength(e);
42
+ return t < 0 ? ~t : t;
43
+ }, getEncodedRootLength = e => {
44
+ if (!e) return 0;
45
+ const t = e.charCodeAt(0);
46
+ if (47 === t || 92 === t) {
47
+ if (e.charCodeAt(1) !== t) return 1;
48
+ const s = e.indexOf(47 === t ? "/" : "\\", 2);
49
+ return s < 0 ? e.length : s + 1;
50
+ }
51
+ if (isVolumeCharacter(t) && 58 === e.charCodeAt(1)) {
52
+ const t = e.charCodeAt(2);
53
+ if (47 === t || 92 === t) return 3;
54
+ if (2 === e.length) return 2;
55
+ }
56
+ const s = e.indexOf("://");
57
+ if (-1 !== s) {
58
+ const t = s + "://".length, n = e.indexOf("/", t);
59
+ if (-1 !== n) {
60
+ const r = e.slice(0, s), o = e.slice(t, n);
61
+ if ("file" === r && ("" === o || "localhost" === o) && isVolumeCharacter(e.charCodeAt(n + 1))) {
62
+ const t = getFileUrlVolumeSeparatorEnd(e, n + 2);
63
+ if (-1 !== t) {
64
+ if (47 === e.charCodeAt(t)) return ~(t + 1);
65
+ if (t === e.length) return ~t;
66
+ }
67
+ }
68
+ return ~(n + 1);
69
+ }
70
+ return ~e.length;
71
+ }
72
+ return 0;
73
+ }, isVolumeCharacter = e => e >= 97 && e <= 122 || e >= 65 && e <= 90, getFileUrlVolumeSeparatorEnd = (e, t) => {
74
+ const s = e.charCodeAt(t);
75
+ if (58 === s) return t + 1;
76
+ if (37 === s && 51 === e.charCodeAt(t + 1)) {
77
+ const s = e.charCodeAt(t + 2);
78
+ if (97 === s || 65 === s) return t + 3;
79
+ }
80
+ return -1;
81
+ }, pathComponents = (e, t) => {
82
+ const s = e.substring(0, t), n = e.substring(t).split("/"), r = n.length;
83
+ return r > 0 && !n[r - 1] && n.pop(), [ s, ...n ];
84
+ }, parseFlags = (e, t) => {
85
+ const s = {
86
+ task: null,
87
+ args: [],
88
+ knownArgs: [],
89
+ unknownArgs: null
90
+ };
91
+ if (s.args = e.slice(), s.args.length > 0 && s.args[0] && !s.args[0].startsWith("-") && (s.task = s.args[0]),
92
+ parseArgs(s, s.args, s.knownArgs), t && "node" === t.name) {
93
+ const e = getNpmConfigEnvArgs(t);
94
+ parseArgs(s, e, s.knownArgs), e.forEach(e => {
95
+ s.args.includes(e) || s.args.push(e);
96
+ });
97
+ }
98
+ if (null != s.task) {
99
+ const e = s.args.indexOf(s.task);
100
+ e > -1 && s.args.splice(e, 1);
101
+ }
102
+ return s.unknownArgs = s.args.filter(e => !s.knownArgs.includes(e)), s;
103
+ }, parseArgs = (e, t, s) => {
104
+ ARG_OPTS.boolean.forEach(n => {
105
+ const r = ARG_OPTS.alias[n], o = configCase(n);
106
+ "boolean" != typeof e[o] && (e[o] = null), t.forEach(t => {
107
+ t === "--" + n || t === "--" + o ? (e[o] = !0, s.push(t)) : t === "--no-" + n || t === "--no" + dashToPascalCase(n) ? (e[o] = !1,
108
+ s.push(t)) : r && t === "-" + r && (e[o] = !0, s.push(t));
109
+ });
110
+ }), ARG_OPTS.string.forEach(n => {
111
+ const r = ARG_OPTS.alias[n], o = configCase(n);
112
+ "string" != typeof e[o] && (e[o] = null);
113
+ for (let i = 0; i < t.length; i++) {
114
+ const a = t[i];
115
+ if (a.startsWith(`--${n}=`)) {
116
+ const t = a.split("=");
117
+ t.shift(), e[o] = t.join("="), s.push(a);
118
+ } else if (a === "--" + n) e[o] = t[i + 1], s.push(a), s.push(t[i + 1]); else if (a === "--" + o) e[o] = t[i + 1],
119
+ s.push(a), s.push(t[i + 1]); else if (a.startsWith(`--${o}=`)) {
120
+ const t = a.split("=");
121
+ t.shift(), e[o] = t.join("="), s.push(a);
122
+ } else if (r) if (a.startsWith(`-${r}=`)) {
123
+ const t = a.split("=");
124
+ t.shift(), e[o] = t.join("="), s.push(a);
125
+ } else a === "-" + r && (e[o] = t[i + 1], s.push(t[i + 1]));
126
+ }
127
+ }), ARG_OPTS.number.forEach(n => {
128
+ const r = ARG_OPTS.alias[n], o = configCase(n);
129
+ "number" != typeof e[o] && (e[o] = null);
130
+ for (let i = 0; i < t.length; i++) {
131
+ const a = t[i];
132
+ if (a.startsWith(`--${n}=`)) {
133
+ const t = a.split("=");
134
+ t.shift(), e[o] = parseInt(t.join(""), 10), s.push(a);
135
+ } else if (a === "--" + n) e[o] = parseInt(t[i + 1], 10), s.push(t[i + 1]); else if (a.startsWith(`--${o}=`)) {
136
+ const t = a.split("=");
137
+ t.shift(), e[o] = parseInt(t.join(""), 10), s.push(a);
138
+ } else if (a === "--" + o) e[o] = parseInt(t[i + 1], 10), s.push(t[i + 1]); else if (r) if (a.startsWith(`-${r}=`)) {
139
+ const t = a.split("=");
140
+ t.shift(), e[o] = parseInt(t.join(""), 10), s.push(a);
141
+ } else a === "-" + r && (e[o] = parseInt(t[i + 1], 10), s.push(t[i + 1]));
142
+ }
143
+ });
144
+ }, configCase = e => (e = dashToPascalCase(e)).charAt(0).toLowerCase() + e.substr(1), ARG_OPTS = {
145
+ boolean: [ "build", "cache", "check-version", "ci", "compare", "debug", "dev", "devtools", "docs", "e2e", "es5", "esm", "headless", "help", "log", "open", "prerender", "prerender-external", "prod", "profile", "service-worker", "screenshot", "serve", "skip-node-check", "spec", "stats", "update-screenshot", "verbose", "version", "watch" ],
146
+ number: [ "max-workers", "port" ],
147
+ string: [ "address", "config", "docs-json", "emulate", "log-level", "root", "screenshot-connector" ],
148
+ alias: {
149
+ config: "c",
150
+ help: "h",
151
+ port: "p",
152
+ version: "v"
153
+ }
154
+ }, getNpmConfigEnvArgs = e => {
155
+ let t = [];
156
+ try {
157
+ const s = e.getEnvironmentVar("npm_config_argv");
158
+ s && (t = JSON.parse(s).original, "run" === t[0] && (t = t.slice(2)));
159
+ } catch (e) {}
160
+ return t;
161
+ }, dependencies = [ {
162
+ name: "@rindo/core",
163
+ version: "0.0.0-dev.20221104122636",
164
+ main: "compiler/rindo.js",
165
+ resources: [ "internal/index.js", "internal/index.d.ts", "internal/package.json", "internal/rindo-core/index.js", "internal/rindo-core/index.d.ts", "internal/rindo-ext-modules.d.ts", "internal/rindo-private.d.ts", "internal/rindo-public-compiler.d.ts", "internal/rindo-public-docs.d.ts", "internal/rindo-public-runtime.d.ts", "internal/client/css-shim.js", "internal/client/dom.js", "internal/client/index.js", "internal/client/patch.js", "internal/client/shadow-css.js", "internal/client/package.json", "internal/hydrate/index.js", "internal/hydrate/runner.js", "internal/hydrate/shadow-css.js", "internal/hydrate/package.json", "mock-doc/index.js", "mock-doc/package.json", "package.json" ]
166
+ }, {
167
+ name: "typescript",
168
+ version: "3.9.7",
169
+ main: "lib/typescript.js",
170
+ resources: [ "lib/lib.dom.d.ts", "lib/lib.es2015.d.ts", "lib/lib.es5.d.ts", "lib/lib.es2015.core.d.ts", "lib/lib.es2015.collection.d.ts", "lib/lib.es2015.generator.d.ts", "lib/lib.es2015.iterable.d.ts", "lib/lib.es2015.symbol.d.ts", "lib/lib.es2015.promise.d.ts", "lib/lib.es2015.proxy.d.ts", "lib/lib.es2015.reflect.d.ts", "lib/lib.es2015.symbol.wellknown.d.ts", "lib/lib.es2016.d.ts", "lib/lib.es2016.array.include.d.ts", "lib/lib.es2017.d.ts", "lib/lib.es2017.typedarrays.d.ts", "lib/lib.es2017.intl.d.ts", "lib/lib.es2017.object.d.ts", "lib/lib.es2017.sharedmemory.d.ts", "lib/lib.es2017.string.d.ts", "lib/lib.es2018.d.ts", "lib/lib.es2018.asyncgenerator.d.ts", "lib/lib.es2018.asynciterable.d.ts", "lib/lib.es2018.promise.d.ts", "lib/lib.es2018.regexp.d.ts", "lib/lib.es2018.intl.d.ts", "lib/lib.esnext.intl.d.ts", "lib/lib.es2020.bigint.d.ts", "package.json" ]
171
+ }, {
172
+ name: "rollup",
173
+ version: "2.23.0",
174
+ main: "dist/rollup.browser.es.js"
175
+ }, {
176
+ name: "terser",
177
+ version: "4.8.0",
178
+ main: "dist/bundle.min.js"
179
+ } ], startupCompilerLog = (e, t) => {
180
+ if (!0 === t.suppressLogs) return;
181
+ const {logger: s} = t, n = "debug" === s.getLevel(), r = e.version.includes("-"), o = e.version.includes("-dev.");
182
+ r && !o && s.warn(s.yellow("This is a prerelease build, undocumented changes might happen at any time. Technical support is not available for prereleases, but any assistance testing is appreciated.")),
183
+ t.devMode && !n && (t.buildEs5 && s.warn("Generating ES5 during development is a very task expensive, initial and incremental builds will be much slower. Drop the '--es5' flag and use a modern browser for development."),
184
+ t.enableCache || s.warn("Disabling cache during development will slow down incremental builds."));
185
+ }, runPrerenderTask = async (e, t, s, n, r) => {
186
+ const o = [];
187
+ try {
188
+ const i = await e.createPrerenderer(t), a = await i.start({
189
+ hydrateAppFilePath: s,
190
+ componentGraph: n,
191
+ srcIndexHtmlPath: r
192
+ });
193
+ o.push(...a.diagnostics);
194
+ } catch (e) {
195
+ ((e, t, s) => {
196
+ const n = {
197
+ level: "error",
198
+ type: "build",
199
+ header: "Build Error",
200
+ messageText: "build error",
201
+ relFilePath: null,
202
+ absFilePath: null,
203
+ lines: []
204
+ };
205
+ isString(void 0) ? n.messageText = void 0 : null != t && (null != t.stack ? n.messageText = t.stack.toString() : null != t.message ? n.messageText = t.message.toString() : n.messageText = t.toString()),
206
+ null == e || shouldIgnoreError(n.messageText) || e.push(n);
207
+ })(o, e);
208
+ }
209
+ return o;
210
+ }, startCheckVersion = async (e, t) => e.devMode && !e.flags.ci && !t.includes("-dev.") && isFunction(e.sys.checkVersion) ? e.sys.checkVersion(e.logger, t) : null, printCheckVersionResults = async e => {
211
+ if (e) {
212
+ const t = await e;
213
+ isFunction(t) && t();
214
+ }
215
+ }, isOutputTargetDocs = e => e.type === DOCS || e.type === DOCS_README || e.type === DOCS_JSON || e.type === DOCS_CUSTOM || e.type === DOCS_VSCODE, DOCS = "docs", DOCS_CUSTOM = "docs-custom", DOCS_JSON = "docs-json", DOCS_README = "docs-readme", DOCS_VSCODE = "docs-vscode", chooseFilesToGenerate = async () => {
216
+ const {prompt: e} = await Promise.resolve().then((function() {
217
+ return _interopNamespace(require("../sys/node/prompts.js"));
218
+ }));
219
+ return (await e({
220
+ name: "filesToGenerate",
221
+ type: "multiselect",
222
+ message: "Which additional files do you want to generate?",
223
+ choices: [ {
224
+ value: "css",
225
+ title: "Stylesheet (.css)",
226
+ selected: !0
227
+ }, {
228
+ value: "spec.tsx",
229
+ title: "Spec Test (.spec.tsx)",
230
+ selected: !0
231
+ }, {
232
+ value: "e2e.ts",
233
+ title: "E2E Test (.e2e.ts)",
234
+ selected: !0
235
+ } ]
236
+ })).filesToGenerate;
237
+ }, isTest = e => "e2e.ts" === e || "spec.tsx" === e, getBoilerplateByExtension = (e, t, s) => {
238
+ switch (t) {
239
+ case "tsx":
240
+ return getComponentBoilerplate(e, s);
241
+
242
+ case "css":
243
+ return getStyleUrlBoilerplate();
244
+
245
+ case "spec.tsx":
246
+ return getSpecTestBoilerplate(e);
247
+
248
+ case "e2e.ts":
249
+ return getE2eTestBoilerplate(e);
250
+
251
+ default:
252
+ throw new Error(`Unkown extension "${t}".`);
253
+ }
254
+ }, getComponentBoilerplate = (e, t) => {
255
+ const s = [ "{" ];
256
+ return s.push(` tag: '${e}',`), t && s.push(` styleUrl: '${e}.css',`), s.push(" shadow: true,"),
257
+ s.push("}"), `import { Component, Host, h } from '@rindo/core';\n\n@Component(${s.join("\n")})\nexport class ${toPascalCase(e)} {\n\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n\n}\n`;
258
+ }, getStyleUrlBoilerplate = () => ":host {\n display: block;\n}\n", getSpecTestBoilerplate = e => `import { newSpecPage } from '@rindo/core/testing';\nimport { ${toPascalCase(e)} } from '../${e}';\n\ndescribe('${e}', () => {\n it('renders', async () => {\n const page = await newSpecPage({\n components: [${toPascalCase(e)}],\n html: \`<${e}></${e}>\`,\n });\n expect(page.root).toEqualHtml(\`\n <${e}>\n <mock:shadow-root>\n <slot></slot>\n </mock:shadow-root>\n </${e}>\n \`);\n });\n});\n`, getE2eTestBoilerplate = e => `import { newE2EPage } from '@rindo/core/testing';\n\ndescribe('${e}', () => {\n it('renders', async () => {\n const page = await newE2EPage();\n await page.setContent('<${e}></${e}>');\n\n const element = await page.find('${e}');\n expect(element).toHaveClass('hydrated');\n });\n});\n`, toPascalCase = e => e.split("-").reduce((e, t) => e + t[0].toUpperCase() + t.substr(1), ""), taskHelp = (e, t) => {
259
+ const s = t.dim("windows" === e.details.platform ? ">" : "$");
260
+ console.log(`\n ${t.bold("Build:")} ${t.dim("Build components for development or production.")}\n\n ${s} ${t.green("rindo build [--dev] [--watch] [--prerender] [--debug]")}\n\n ${t.cyan("--dev")} ${t.dim(".............")} Development build\n ${t.cyan("--watch")} ${t.dim("...........")} Rebuild when files update\n ${t.cyan("--serve")} ${t.dim("...........")} Start the dev-server\n ${t.cyan("--prerender")} ${t.dim(".......")} Prerender the application\n ${t.cyan("--docs")} ${t.dim("............")} Generate component readme.md docs\n ${t.cyan("--config")} ${t.dim("..........")} Set rindo config file\n ${t.cyan("--stats")} ${t.dim("...........")} Write rindo-stats.json file\n ${t.cyan("--log")} ${t.dim(".............")} Write rindo-build.log file\n ${t.cyan("--debug")} ${t.dim("...........")} Set the log level to debug\n\n\n ${t.bold("Test:")} ${t.dim("Run unit and end-to-end tests.")}\n\n ${s} ${t.green("rindo test [--spec] [--e2e]")}\n\n ${t.cyan("--spec")} ${t.dim("............")} Run unit tests with Jest\n ${t.cyan("--e2e")} ${t.dim(".............")} Run e2e tests with Puppeteer\n\n\n ${t.bold("Generate:")} ${t.dim("Bootstrap components.")}\n\n ${s} ${t.green("rindo generate")} or ${t.green("rindo g")}\n\n\n ${t.bold("Examples:")}\n\n ${s} ${t.green("rindo build --dev --watch --serve")}\n ${s} ${t.green("rindo build --prerender")}\n ${s} ${t.green("rindo test --spec --e2e")}\n ${s} ${t.green("rindo generate")}\n ${s} ${t.green("rindo g my-component")}\n\n`);
261
+ }, runTask = async (e, t, s) => {
262
+ switch (t.flags = t.flags || {}, t.outputTargets = t.outputTargets || [], s) {
263
+ case "build":
264
+ await (async (e, t) => {
265
+ if (t.flags.watch) return void await (async (e, t) => {
266
+ let s = null, n = 0;
267
+ try {
268
+ startupCompilerLog(e, t);
269
+ const r = startCheckVersion(t, e.version), o = await e.createCompiler(t), i = await o.createWatcher();
270
+ if (t.flags.serve) {
271
+ const e = t.sys.getDevServerExecutingPath(), {start: n} = await t.sys.dynamicImport(e);
272
+ s = await n(t.devServer, t.logger, i);
273
+ }
274
+ t.sys.onProcessInterrupt(() => {
275
+ t.logger.debug("close watch"), o && o.destroy();
276
+ });
277
+ const a = i.on("buildFinish", async () => {
278
+ a(), printCheckVersionResults(r);
279
+ });
280
+ if (s) {
281
+ const e = i.on("buildFinish", () => {
282
+ e(), t.logger.info(t.logger.cyan(s.browserUrl) + "\n");
283
+ });
284
+ }
285
+ t.flags.prerender && i.on("buildFinish", async s => {
286
+ if (!s.hasError) {
287
+ const n = await runPrerenderTask(e, t, s.hydrateAppFilePath, s.componentGraph, null);
288
+ t.logger.printDiagnostics(n);
289
+ }
290
+ });
291
+ const l = await i.start();
292
+ l.exitCode > 0 && (n = l.exitCode);
293
+ } catch (e) {
294
+ n = 1, t.logger.error(e);
295
+ }
296
+ s && await s.close(), n > 0 && t.sys.exit(n);
297
+ })(e, t);
298
+ let s = 0;
299
+ try {
300
+ startupCompilerLog(e, t);
301
+ const n = startCheckVersion(t, e.version), r = await e.createCompiler(t), o = await r.build();
302
+ if (await r.destroy(), o.hasError) s = 1; else if (t.flags.prerender) {
303
+ const n = await runPrerenderTask(e, t, o.hydrateAppFilePath, o.componentGraph, null);
304
+ t.logger.printDiagnostics(n), n.some(e => "error" === e.level) && (s = 1);
305
+ }
306
+ await printCheckVersionResults(n);
307
+ } catch (e) {
308
+ s = 1, t.logger.error(e);
309
+ }
310
+ s > 0 && t.sys.exit(s);
311
+ })(e, t);
312
+ break;
313
+
314
+ case "docs":
315
+ await (async (e, t) => {
316
+ t.devServer = null, t.outputTargets = t.outputTargets.filter(isOutputTargetDocs),
317
+ t.devMode = !0, startupCompilerLog(e, t);
318
+ const s = await e.createCompiler(t);
319
+ await s.build(), await s.destroy();
320
+ })(e, t);
321
+ break;
322
+
323
+ case "help":
324
+ taskHelp(t.sys, t.logger);
325
+ break;
326
+
327
+ case "generate":
328
+ case "g":
329
+ await (async (e, t) => {
330
+ IS_NODE_ENV || (t.logger.error('"generate" command is currently only implemented for a NodeJS environment'),
331
+ t.sys.exit(1));
332
+ const s = e.path;
333
+ t.configPath || (t.logger.error("Please run this command in your root directory (i. e. the one containing rindo.config.ts)."),
334
+ t.sys.exit(1));
335
+ const n = t.srcDir;
336
+ n || (t.logger.error("Rindo's srcDir was not specified."), t.sys.exit(1));
337
+ const {prompt: r} = await Promise.resolve().then((function() {
338
+ return _interopNamespace(require("../sys/node/prompts.js"));
339
+ })), o = t.flags.unknownArgs.find(e => !e.startsWith("-")) || (await r({
340
+ name: "tagName",
341
+ type: "text",
342
+ message: "Component tag name (dash-case):"
343
+ })).tagName, {dir: i, base: a} = s.parse(o), l = (e => {
344
+ if (e !== e.trim()) return "Tag can not contain white spaces";
345
+ if (e !== e.toLowerCase()) return "Tag can not contain upper case characters";
346
+ if ("string" != typeof e) return `Tag "${e}" must be a string type`;
347
+ if (0 === e.length) return "Received empty tag value";
348
+ if (e.indexOf(" ") > -1) return `"${e}" tag cannot contain a space`;
349
+ if (e.indexOf(",") > -1) return `"${e}" tag cannot be used for multiple tags`;
350
+ const t = e.replace(/\w|-/g, "");
351
+ return "" !== t ? `"${e}" tag contains invalid characters: ${t}` : -1 === e.indexOf("-") ? `"${e}" tag must contain a dash (-) to work as a valid web component` : e.indexOf("--") > -1 ? `"${e}" tag cannot contain multiple dashes (--) next to each other` : 0 === e.indexOf("-") ? `"${e}" tag cannot start with a dash (-)` : e.lastIndexOf("-") === e.length - 1 ? `"${e}" tag cannot end with a dash (-)` : void 0;
352
+ })(a);
353
+ l && (t.logger.error(l), t.sys.exit(1));
354
+ const c = [ "tsx", ...await chooseFilesToGenerate() ], d = c.some(isTest) ? "test" : "", g = s.join(n, "components", i, a);
355
+ await t.sys.mkdir(s.join(g, d), {
356
+ recursive: !0
357
+ });
358
+ const p = await Promise.all(c.map(s => (async (e, t, s, n, r, o) => {
359
+ isTest(r) && (s = e.path.join(s, "test"));
360
+ const i = e.path.join(s, `${n}.${r}`), a = getBoilerplateByExtension(n, r, o);
361
+ return await t.sys.writeFile(i, a), i;
362
+ })(e, t, g, a, s, c.includes("css")))).catch(e => t.logger.error(e));
363
+ if (!p) return t.sys.exit(1);
364
+ console.log(), console.log(`${t.logger.gray("$")} rindo generate ${o}`), console.log(),
365
+ console.log(t.logger.bold("The following files have been generated:"));
366
+ const u = t.rootDir;
367
+ p.map(e => console.log(" - " + s.relative(u, e)));
368
+ })(e, t);
369
+ break;
370
+
371
+ case "prerender":
372
+ await (async (e, t) => {
373
+ startupCompilerLog(e, t);
374
+ const s = t.flags.unknownArgs[0];
375
+ "string" != typeof s && (t.logger.error("Missing hydrate app script path"), t.sys.exit(1));
376
+ const n = t.srcIndexHtml, r = await runPrerenderTask(e, t, s, null, n);
377
+ t.logger.printDiagnostics(r), r.some(e => "error" === e.level) && t.sys.exit(1);
378
+ })(e, t);
379
+ break;
380
+
381
+ case "serve":
382
+ await (async e => {
383
+ e.suppressLogs = !0, e.flags.serve = !0, e.devServer.openBrowser = e.flags.open,
384
+ e.devServer.reloadStrategy = null, e.devServer.initialLoadUrl = "/", e.devServer.websocket = !1,
385
+ e.maxConcurrentWorkers = 1, e.devServer.root = isString(e.flags.root) ? e.flags.root : e.sys.getCurrentDirectory();
386
+ const t = e.sys.getDevServerExecutingPath(), {start: s} = await e.sys.dynamicImport(t), n = await s(e.devServer, e.logger);
387
+ console.log(`${e.logger.cyan(" Root:")} ${n.root}`), console.log(`${e.logger.cyan(" Address:")} ${n.address}`),
388
+ console.log(`${e.logger.cyan(" Port:")} ${n.port}`), console.log(`${e.logger.cyan(" Server:")} ${n.browserUrl}`),
389
+ console.log(""), e.sys.onProcessInterrupt(() => {
390
+ n && (e.logger.debug("dev server close: " + n.browserUrl), n.close());
391
+ });
392
+ })(t);
393
+ break;
394
+
395
+ case "test":
396
+ await (async e => {
397
+ IS_NODE_ENV || (e.logger.error('"test" command is currently only implemented for a NodeJS environment'),
398
+ e.sys.exit(1));
399
+ try {
400
+ const t = {
401
+ e2e: !!e.flags.e2e,
402
+ screenshot: !!e.flags.screenshot,
403
+ spec: !!e.flags.spec,
404
+ updateScreenshot: !!e.flags.updateScreenshot
405
+ }, s = [ "@types/jest", "jest", "jest-cli" ];
406
+ if (t.e2e) {
407
+ const n = e.testing.browserExecutablePath ? "puppeteer-core" : "puppeteer";
408
+ s.push("@types/puppeteer", n), t.screenshot && e.logger.warn(e.logger.yellow("EXPERIMENTAL: screenshot visual diff testing is currently under heavy development and has not reached a stable status. However, any assistance testing would be appreciated."));
409
+ }
410
+ await e.sys.lazyRequire.ensure(e.logger, e.rootDir, s);
411
+ const {createTesting: n} = await Promise.resolve().then((function() {
412
+ return _interopNamespace(require("../testing/index.js"));
413
+ })), r = await n(e), o = await r.run(t);
414
+ await r.destroy(), o || e.sys.exit(1);
415
+ } catch (t) {
416
+ e.logger.error(t), e.sys.exit(1);
417
+ }
418
+ })(t);
419
+ break;
420
+
421
+ case "version":
422
+ console.log(e.version);
423
+ break;
424
+
425
+ default:
426
+ t.logger.error(t.logger.emoji("❌ ") + "Invalid rindo command, please see the options below:"),
427
+ taskHelp(t.sys, t.logger), t.sys.exit(1);
428
+ }
429
+ };
430
+
431
+ exports.parseFlags = parseFlags, exports.run = async e => {
432
+ const {args: t, logger: s, sys: n} = e;
433
+ try {
434
+ const e = parseFlags(t, n), r = e.task;
435
+ if ((e.debug || e.verbose) && s.setLevel("debug"), e.ci && s.enableColors(!1), isFunction(n.applyGlobalPatch) && n.applyGlobalPatch(n.getCurrentDirectory()),
436
+ "help" === r || e.help) return void taskHelp(n, s);
437
+ ((e, t) => {
438
+ "info" !== t && "serve" !== t && "version" !== t && e.info(e.cyan("@rindo/core"));
439
+ })(s, r);
440
+ const o = await (async e => {
441
+ const t = e.sys, s = t.getCurrentDirectory(), n = {
442
+ configPath: null,
443
+ rootDir: normalizePath(s),
444
+ diagnostics: []
445
+ };
446
+ let r = e.configPath;
447
+ r = isString(r) ? t.platformPath.isAbsolute(r) ? normalizePath(e.configPath) : normalizePath(t.platformPath.join(s, r)) : n.rootDir;
448
+ const o = await t.stat(r);
449
+ if (!o) {
450
+ const e = (e => {
451
+ const t = {
452
+ level: "error",
453
+ type: "build",
454
+ header: "Build Error",
455
+ messageText: "build error",
456
+ relFilePath: null,
457
+ absFilePath: null,
458
+ lines: []
459
+ };
460
+ return e && e.push(t), t;
461
+ })(n.diagnostics);
462
+ return e.absFilePath = r, e.header = "Invalid config path", e.messageText = `Config path "${r}" not found`,
463
+ n;
464
+ }
465
+ if (o.isFile()) n.configPath = r, n.rootDir = t.platformPath.dirname(r); else if (o.isDirectory()) for (const e of [ "rindo.config.ts", "rindo.config.js" ]) {
466
+ const s = t.platformPath.join(r, e), o = await t.stat(s);
467
+ if (o && o.isFile()) {
468
+ n.configPath = s, n.rootDir = t.platformPath.dirname(s);
469
+ break;
470
+ }
471
+ }
472
+ return n;
473
+ })({
474
+ sys: n,
475
+ configPath: e.config
476
+ });
477
+ hasError(o.diagnostics) && (s.printDiagnostics(o.diagnostics), n.exit(1));
478
+ const i = await n.ensureDependencies({
479
+ rootDir: o.rootDir,
480
+ logger: s,
481
+ dependencies
482
+ });
483
+ hasError(i.diagnostics) && (s.printDiagnostics(i.diagnostics), n.exit(1));
484
+ const a = await (async e => (await e.dynamicImport(e.getCompilerExecutingPath()),
485
+ globalThis.rindo))(n);
486
+ if ("version" === r || e.version) return void console.log(a.version);
487
+ if (((e, t, s) => {
488
+ if ("info" === t || "serve" === t || "version" === t) return;
489
+ let n;
490
+ n = s.version.includes("-dev.") ? e.yellow("[LOCAL DEV]") : e.cyan("v" + s.version),
491
+ n += e.emoji(" " + s.vermoji), e.info(n);
492
+ })(s, r, a), ((e, t, s, n) => {
493
+ const r = e.details, o = `${e.name} ${e.version}`, i = `${r.platform}, ${r.cpuModel}`, a = `cpus: ${e.hardwareConcurrency}, freemem: ${Math.round(r.freemem() / 1e6)}MB, totalmem: ${Math.round(r.totalmem / 1e6)}MB`;
494
+ "debug" === t.getLevel() ? (t.debug(o), t.debug(i), t.debug(a), t.debug("compiler: " + e.getCompilerExecutingPath()),
495
+ t.debug("build: " + n.buildId)) : s.ci && (t.info(o), t.info(i), t.info(a));
496
+ })(n, s, e, a), "info" === r) return void ((e, t, s) => {
497
+ const n = t.details, r = e.versions;
498
+ console.log(""), console.log(`${s.cyan(" System:")} ${t.name} ${t.version}`),
499
+ console.log(`${s.cyan(" Plaform:")} ${n.platform} (${n.release})`), console.log(`${s.cyan(" CPU Model:")} ${n.cpuModel} (${t.hardwareConcurrency} cpu${1 !== t.hardwareConcurrency ? "s" : ""})`),
500
+ console.log(`${s.cyan(" Compiler:")} ${t.getCompilerExecutingPath()}`), console.log(`${s.cyan(" Build:")} ${e.buildId}`),
501
+ console.log(`${s.cyan(" Rindo:")} ${e.version}${s.emoji(" " + e.vermoji)}`),
502
+ console.log(`${s.cyan(" TypeScript:")} ${r.typescript}`), console.log(`${s.cyan(" Rollup:")} ${r.rollup}`),
503
+ console.log(`${s.cyan(" Terser:")} ${r.terser}`), console.log("");
504
+ })(a, n, s);
505
+ const l = await a.loadConfig({
506
+ config: {
507
+ flags: e
508
+ },
509
+ configPath: o.configPath,
510
+ logger: s,
511
+ sys: n,
512
+ typescriptPath: i.typescriptPath
513
+ });
514
+ l.diagnostics.length > 0 && (s.printDiagnostics(l.diagnostics), hasError(l.diagnostics) && n.exit(1)),
515
+ isFunction(n.applyGlobalPatch) && n.applyGlobalPatch(l.config.rootDir), await n.ensureResources({
516
+ rootDir: l.config.rootDir,
517
+ logger: s,
518
+ dependencies
519
+ }), await runTask(a, l.config, r);
520
+ } catch (e) {
521
+ shouldIgnoreError(e) || (s.error(`uncaught cli error: ${e}${"debug" === s.getLevel() ? e.stack : ""}`),
522
+ n.exit(1));
523
+ }
524
+ }, exports.runTask = runTask;
package/cli/index.d.ts ADDED
@@ -0,0 +1,15 @@
1
+ import { CliInitOptions, CompilerSystem, Config, ConfigFlags, Logger, TaskCommand } from '../internal/index';
2
+ /**
3
+ * Runs the CLI with the given options. This is used by Rindo's default `bin/rindo` file,
4
+ * but can be used externally too.
5
+ */
6
+ export declare function run(init: CliInitOptions): Promise<void>;
7
+ /**
8
+ * Run individual CLI tasks.
9
+ * @param coreCompiler The core Rindo compiler to be used. The `run()` method handles loading the core compiler, however, `runTask()` must be passed it.
10
+ * @param config Assumes the config has already been validated and has the "sys" and "logger" properties.
11
+ * @param task The task command to run, such as `build`.
12
+ */
13
+ export declare function runTask(coreCompiler: any, config: Config, task: TaskCommand): Promise<void>;
14
+ export declare function parseFlags(args: string[], sys?: CompilerSystem): ConfigFlags;
15
+ export { CompilerSystem, Config, ConfigFlags, Logger, TaskCommand };