@kritzel/engine 0.4.31

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 (373) hide show
  1. package/LICENSE.md +50 -0
  2. package/dist/cjs/app-globals-V2Kpy_OQ.js +5 -0
  3. package/dist/cjs/engine.constants-CakmdKMW.js +28206 -0
  4. package/dist/cjs/index-BbbWU2aN.js +1742 -0
  5. package/dist/cjs/index.cjs.js +4232 -0
  6. package/dist/cjs/kritzel-awareness-cursors_5.cjs.entry.js +28004 -0
  7. package/dist/cjs/loader.cjs.js +13 -0
  8. package/dist/cjs/stencil.cjs.js +25 -0
  9. package/dist/collection/classes/core/core.class.js +1389 -0
  10. package/dist/collection/classes/core/reviver.class.js +124 -0
  11. package/dist/collection/classes/core/store.class.js +337 -0
  12. package/dist/collection/classes/core/viewport.class.js +794 -0
  13. package/dist/collection/classes/core/workspace.class.js +112 -0
  14. package/dist/collection/classes/handlers/base.handler.js +20 -0
  15. package/dist/collection/classes/handlers/context-menu.handler.js +170 -0
  16. package/dist/collection/classes/handlers/hover.handler.js +35 -0
  17. package/dist/collection/classes/handlers/key.handler.js +162 -0
  18. package/dist/collection/classes/handlers/line-handle.handler.js +475 -0
  19. package/dist/collection/classes/handlers/move.handler.js +295 -0
  20. package/dist/collection/classes/handlers/resize.handler.js +327 -0
  21. package/dist/collection/classes/handlers/rotation.handler.js +174 -0
  22. package/dist/collection/classes/handlers/selection.handler.js +526 -0
  23. package/dist/collection/classes/managers/anchor.manager.js +1476 -0
  24. package/dist/collection/classes/managers/browser-permission.manager.js +64 -0
  25. package/dist/collection/classes/managers/clipboard.manager.js +346 -0
  26. package/dist/collection/classes/managers/clipboard.types.js +1 -0
  27. package/dist/collection/classes/managers/cursor.manager.js +139 -0
  28. package/dist/collection/classes/managers/license.manager.js +341 -0
  29. package/dist/collection/classes/managers/localization.manager.js +227 -0
  30. package/dist/collection/classes/managers/theme.manager.js +206 -0
  31. package/dist/collection/classes/objects/base-object.class.js +462 -0
  32. package/dist/collection/classes/objects/dynamic-object.class.js +437 -0
  33. package/dist/collection/classes/objects/group.class.js +590 -0
  34. package/dist/collection/classes/objects/image.class.js +500 -0
  35. package/dist/collection/classes/objects/line.class.js +789 -0
  36. package/dist/collection/classes/objects/path.class.js +578 -0
  37. package/dist/collection/classes/objects/selection-box.class.js +32 -0
  38. package/dist/collection/classes/objects/selection-group.class.js +752 -0
  39. package/dist/collection/classes/objects/shape.class.js +628 -0
  40. package/dist/collection/classes/objects/text.class.js +461 -0
  41. package/dist/collection/classes/providers/assets/asset-resolver.class.js +536 -0
  42. package/dist/collection/classes/providers/assets/http-asset-provider.class.js +111 -0
  43. package/dist/collection/classes/providers/assets/indexeddb-asset-provider.class.js +241 -0
  44. package/dist/collection/classes/providers/assets/presigned-asset-provider.class.js +86 -0
  45. package/dist/collection/classes/providers/paste-intent/event-paste-intent.provider.js +48 -0
  46. package/dist/collection/classes/providers/paste-intent/ios-paste-intent.provider.js +16 -0
  47. package/dist/collection/classes/providers/paste-intent/navigator-paste-intent.provider.js +86 -0
  48. package/dist/collection/classes/providers/sync/broadcast-sync-provider.class.js +100 -0
  49. package/dist/collection/classes/providers/sync/hocuspocus-sync-provider.class.js +333 -0
  50. package/dist/collection/classes/providers/sync/in-memory-sync-provider.class.js +69 -0
  51. package/dist/collection/classes/providers/sync/indexeddb-sync-provider.class.js +39 -0
  52. package/dist/collection/classes/providers/sync/websocket-sync-provider.class.js +110 -0
  53. package/dist/collection/classes/registries/dynamic-object-renderer.registry.js +52 -0
  54. package/dist/collection/classes/registries/font-registry.class.js +161 -0
  55. package/dist/collection/classes/registries/icon-registry.class.js +118 -0
  56. package/dist/collection/classes/registries/paste-intent-provider.registry.js +26 -0
  57. package/dist/collection/classes/registries/tool.registry.js +69 -0
  58. package/dist/collection/classes/structures/app-state-map.structure.js +461 -0
  59. package/dist/collection/classes/structures/object-map.structure.js +1103 -0
  60. package/dist/collection/classes/structures/quadtree.structure.js +251 -0
  61. package/dist/collection/classes/tools/base-tool.class.js +88 -0
  62. package/dist/collection/classes/tools/brush-tool.class.js +236 -0
  63. package/dist/collection/classes/tools/eraser-tool.class.js +133 -0
  64. package/dist/collection/classes/tools/image-tool.class.js +152 -0
  65. package/dist/collection/classes/tools/line-tool.class.js +249 -0
  66. package/dist/collection/classes/tools/selection-tool.class.js +611 -0
  67. package/dist/collection/classes/tools/shape-tool.class.js +251 -0
  68. package/dist/collection/classes/tools/text-tool.class.js +179 -0
  69. package/dist/collection/collection-manifest.json +17 -0
  70. package/dist/collection/components/kritzel-awareness-cursors/kritzel-awareness-cursors.css +115 -0
  71. package/dist/collection/components/kritzel-awareness-cursors/kritzel-awareness-cursors.js +380 -0
  72. package/dist/collection/components/kritzel-cursor-trail/kritzel-cursor-trail.css +10 -0
  73. package/dist/collection/components/kritzel-cursor-trail/kritzel-cursor-trail.js +153 -0
  74. package/dist/collection/components/kritzel-engine/kritzel-engine.css +81 -0
  75. package/dist/collection/components/kritzel-engine/kritzel-engine.js +6345 -0
  76. package/dist/collection/components/kritzel-icon/kritzel-icon.css +18 -0
  77. package/dist/collection/components/kritzel-icon/kritzel-icon.js +93 -0
  78. package/dist/collection/components/kritzel-watermark/kritzel-watermark.css +29 -0
  79. package/dist/collection/components/kritzel-watermark/kritzel-watermark.js +83 -0
  80. package/dist/collection/configs/default-asset-storage.config.js +9 -0
  81. package/dist/collection/configs/default-brush-tool.config.js +9 -0
  82. package/dist/collection/configs/default-engine-config.js +73 -0
  83. package/dist/collection/configs/default-line-tool.config.js +12 -0
  84. package/dist/collection/configs/default-shape-tool.config.js +15 -0
  85. package/dist/collection/configs/default-sync.config.js +6 -0
  86. package/dist/collection/configs/default-text-tool.config.js +12 -0
  87. package/dist/collection/constants/color-palette.constants.js +40 -0
  88. package/dist/collection/constants/core.constants.js +1 -0
  89. package/dist/collection/constants/engine.constants.js +4 -0
  90. package/dist/collection/constants/license.constants.js +25 -0
  91. package/dist/collection/constants/schema.constants.js +4 -0
  92. package/dist/collection/constants/storage.constants.js +1 -0
  93. package/dist/collection/constants/stroke-size.constants.js +2 -0
  94. package/dist/collection/constants/text-tool-fonts.constants.js +18 -0
  95. package/dist/collection/constants/version.js +6 -0
  96. package/dist/collection/enums/alignment.enum.js +9 -0
  97. package/dist/collection/enums/event-button.enum.js +6 -0
  98. package/dist/collection/enums/handle-type.enum.js +7 -0
  99. package/dist/collection/enums/shape-type.enum.js +6 -0
  100. package/dist/collection/events/active-workspace-change.event.js +1 -0
  101. package/dist/collection/events/editor-is-ready.event.js +1 -0
  102. package/dist/collection/events/login.event.js +1 -0
  103. package/dist/collection/helpers/alignment.helper.js +73 -0
  104. package/dist/collection/helpers/class.helper.js +5 -0
  105. package/dist/collection/helpers/color.helper.js +106 -0
  106. package/dist/collection/helpers/cursor.helper.js +57 -0
  107. package/dist/collection/helpers/devices.helper.js +28 -0
  108. package/dist/collection/helpers/event.helper.js +58 -0
  109. package/dist/collection/helpers/geometry.helper.js +149 -0
  110. package/dist/collection/helpers/html.helper.js +116 -0
  111. package/dist/collection/helpers/image-file.helper.js +6 -0
  112. package/dist/collection/helpers/keyboard.helper.js +55 -0
  113. package/dist/collection/helpers/localization.helper.js +25 -0
  114. package/dist/collection/helpers/math.helper.js +8 -0
  115. package/dist/collection/helpers/migration.helper.js +45 -0
  116. package/dist/collection/helpers/object.helper.js +29 -0
  117. package/dist/collection/helpers/svg-export.helper.js +655 -0
  118. package/dist/collection/helpers/theme.helper.js +77 -0
  119. package/dist/collection/helpers/tool-config.helper.js +63 -0
  120. package/dist/collection/helpers/wheel.helper.js +113 -0
  121. package/dist/collection/index.js +107 -0
  122. package/dist/collection/interfaces/anchor.interface.js +1 -0
  123. package/dist/collection/interfaces/arrow-head.interface.js +1 -0
  124. package/dist/collection/interfaces/asset-provider.interface.js +1 -0
  125. package/dist/collection/interfaces/asset-storage-config.interface.js +1 -0
  126. package/dist/collection/interfaces/asset.interface.js +1 -0
  127. package/dist/collection/interfaces/bounding-box.interface.js +1 -0
  128. package/dist/collection/interfaces/clonable.interface.js +1 -0
  129. package/dist/collection/interfaces/context-menu-item.interface.js +1 -0
  130. package/dist/collection/interfaces/context-menu-state.interface.js +1 -0
  131. package/dist/collection/interfaces/debug-info.interface.js +1 -0
  132. package/dist/collection/interfaces/dialog.interface.js +1 -0
  133. package/dist/collection/interfaces/document-metadata.interface.js +1 -0
  134. package/dist/collection/interfaces/dynamic-object-renderer.interface.js +1 -0
  135. package/dist/collection/interfaces/engine-state.interface.js +1 -0
  136. package/dist/collection/interfaces/font.interface.js +1 -0
  137. package/dist/collection/interfaces/localization.interface.js +1 -0
  138. package/dist/collection/interfaces/login-config.interface.js +1 -0
  139. package/dist/collection/interfaces/master-detail.interface.js +1 -0
  140. package/dist/collection/interfaces/menu-item.interface.js +1 -0
  141. package/dist/collection/interfaces/migration.interface.js +1 -0
  142. package/dist/collection/interfaces/notification.interface.js +1 -0
  143. package/dist/collection/interfaces/object-change-event.interface.js +1 -0
  144. package/dist/collection/interfaces/object-export.interface.js +1 -0
  145. package/dist/collection/interfaces/object.interface.js +1 -0
  146. package/dist/collection/interfaces/paste-intent-provider.interface.js +1 -0
  147. package/dist/collection/interfaces/point.interface.js +1 -0
  148. package/dist/collection/interfaces/polygon.interface.js +1 -0
  149. package/dist/collection/interfaces/remote-cursor.interface.js +1 -0
  150. package/dist/collection/interfaces/selection-state.interface.js +1 -0
  151. package/dist/collection/interfaces/serializable.interface.js +1 -0
  152. package/dist/collection/interfaces/settings.interface.js +1 -0
  153. package/dist/collection/interfaces/share.interface.js +1 -0
  154. package/dist/collection/interfaces/shortcut.interface.js +1 -0
  155. package/dist/collection/interfaces/sync-config.interface.js +21 -0
  156. package/dist/collection/interfaces/sync-provider.interface.js +1 -0
  157. package/dist/collection/interfaces/theme.interface.js +1 -0
  158. package/dist/collection/interfaces/tool-config.interface.js +1 -0
  159. package/dist/collection/interfaces/tool-type.interface.js +1 -0
  160. package/dist/collection/interfaces/tool.interface.js +1 -0
  161. package/dist/collection/interfaces/toolbar-item.interface.js +1 -0
  162. package/dist/collection/interfaces/undo-state.interface.js +1 -0
  163. package/dist/collection/interfaces/user.interface.js +1 -0
  164. package/dist/collection/interfaces/viewport-state.interface.js +1 -0
  165. package/dist/collection/locales/de-locale.js +119 -0
  166. package/dist/collection/locales/en-locale.js +120 -0
  167. package/dist/collection/locales/fr-locale.js +119 -0
  168. package/dist/collection/migrations/app-state.migrations.js +47 -0
  169. package/dist/collection/migrations/workspace.migrations.js +67 -0
  170. package/dist/collection/themes/dark-theme.js +340 -0
  171. package/dist/collection/themes/light-theme.js +346 -0
  172. package/dist/collection/types/deep-readonly.type.js +1 -0
  173. package/dist/collection/types/state.types.js +1 -0
  174. package/dist/components/index.d.ts +47 -0
  175. package/dist/components/index.js +4143 -0
  176. package/dist/components/kritzel-awareness-cursors.d.ts +11 -0
  177. package/dist/components/kritzel-awareness-cursors.js +6 -0
  178. package/dist/components/kritzel-cursor-trail.d.ts +11 -0
  179. package/dist/components/kritzel-cursor-trail.js +6 -0
  180. package/dist/components/kritzel-engine.d.ts +11 -0
  181. package/dist/components/kritzel-engine.js +52641 -0
  182. package/dist/components/kritzel-icon.d.ts +11 -0
  183. package/dist/components/kritzel-icon.js +6 -0
  184. package/dist/components/kritzel-watermark.d.ts +11 -0
  185. package/dist/components/kritzel-watermark.js +6 -0
  186. package/dist/components/p-B2Htv9ou.js +49 -0
  187. package/dist/components/p-BvRGQvVI.js +3456 -0
  188. package/dist/components/p-CfSx6HU_.js +1469 -0
  189. package/dist/components/p-YP8wAcF4.js +122 -0
  190. package/dist/components/p-fx6msYHJ.js +167 -0
  191. package/dist/esm/app-globals-DQuL1Twl.js +3 -0
  192. package/dist/esm/engine.constants-Bl5-pbq-.js +28143 -0
  193. package/dist/esm/index-BU9Mv7y0.js +1715 -0
  194. package/dist/esm/index.js +4134 -0
  195. package/dist/esm/kritzel-awareness-cursors_5.entry.js +27978 -0
  196. package/dist/esm/loader.js +11 -0
  197. package/dist/esm/stencil.js +21 -0
  198. package/dist/index.cjs.js +1 -0
  199. package/dist/index.js +1 -0
  200. package/dist/stencil/index.esm.js +4134 -0
  201. package/dist/stencil/p-BU9Mv7y0.js +1702 -0
  202. package/dist/stencil/p-Bl5-pbq-.js +28143 -0
  203. package/dist/stencil/p-DQuL1Twl.js +3 -0
  204. package/dist/stencil/p-f0a8b7af.entry.js +27978 -0
  205. package/dist/stencil/stencil.esm.js +21 -0
  206. package/dist/types/classes/core/core.class.d.ts +532 -0
  207. package/dist/types/classes/core/reviver.class.d.ts +32 -0
  208. package/dist/types/classes/core/store.class.d.ts +198 -0
  209. package/dist/types/classes/core/viewport.class.d.ts +256 -0
  210. package/dist/types/classes/core/workspace.class.d.ts +95 -0
  211. package/dist/types/classes/handlers/base.handler.d.ts +18 -0
  212. package/dist/types/classes/handlers/context-menu.handler.d.ts +67 -0
  213. package/dist/types/classes/handlers/hover.handler.d.ts +23 -0
  214. package/dist/types/classes/handlers/key.handler.d.ts +44 -0
  215. package/dist/types/classes/handlers/line-handle.handler.d.ts +115 -0
  216. package/dist/types/classes/handlers/move.handler.d.ts +94 -0
  217. package/dist/types/classes/handlers/resize.handler.d.ts +95 -0
  218. package/dist/types/classes/handlers/rotation.handler.d.ts +50 -0
  219. package/dist/types/classes/handlers/selection.handler.d.ts +153 -0
  220. package/dist/types/classes/managers/anchor.manager.d.ts +513 -0
  221. package/dist/types/classes/managers/browser-permission.manager.d.ts +41 -0
  222. package/dist/types/classes/managers/clipboard.manager.d.ts +71 -0
  223. package/dist/types/classes/managers/clipboard.types.d.ts +23 -0
  224. package/dist/types/classes/managers/cursor.manager.d.ts +66 -0
  225. package/dist/types/classes/managers/license.manager.d.ts +147 -0
  226. package/dist/types/classes/managers/localization.manager.d.ts +145 -0
  227. package/dist/types/classes/managers/theme.manager.d.ts +112 -0
  228. package/dist/types/classes/objects/base-object.class.d.ts +266 -0
  229. package/dist/types/classes/objects/dynamic-object.class.d.ts +148 -0
  230. package/dist/types/classes/objects/group.class.d.ts +231 -0
  231. package/dist/types/classes/objects/image.class.d.ts +246 -0
  232. package/dist/types/classes/objects/line.class.d.ts +285 -0
  233. package/dist/types/classes/objects/path.class.d.ts +220 -0
  234. package/dist/types/classes/objects/selection-box.class.d.ts +19 -0
  235. package/dist/types/classes/objects/selection-group.class.d.ts +267 -0
  236. package/dist/types/classes/objects/shape.class.d.ts +322 -0
  237. package/dist/types/classes/objects/text.class.d.ts +197 -0
  238. package/dist/types/classes/providers/assets/asset-resolver.class.d.ts +141 -0
  239. package/dist/types/classes/providers/assets/http-asset-provider.class.d.ts +79 -0
  240. package/dist/types/classes/providers/assets/indexeddb-asset-provider.class.d.ts +69 -0
  241. package/dist/types/classes/providers/assets/presigned-asset-provider.class.d.ts +69 -0
  242. package/dist/types/classes/providers/paste-intent/event-paste-intent.provider.d.ts +8 -0
  243. package/dist/types/classes/providers/paste-intent/ios-paste-intent.provider.d.ts +6 -0
  244. package/dist/types/classes/providers/paste-intent/navigator-paste-intent.provider.d.ts +9 -0
  245. package/dist/types/classes/providers/sync/broadcast-sync-provider.class.d.ts +23 -0
  246. package/dist/types/classes/providers/sync/hocuspocus-sync-provider.class.d.ts +163 -0
  247. package/dist/types/classes/providers/sync/in-memory-sync-provider.class.d.ts +39 -0
  248. package/dist/types/classes/providers/sync/indexeddb-sync-provider.class.d.ts +25 -0
  249. package/dist/types/classes/providers/sync/websocket-sync-provider.class.d.ts +63 -0
  250. package/dist/types/classes/registries/dynamic-object-renderer.registry.d.ts +32 -0
  251. package/dist/types/classes/registries/font-registry.class.d.ts +19 -0
  252. package/dist/types/classes/registries/icon-registry.class.d.ts +39 -0
  253. package/dist/types/classes/registries/paste-intent-provider.registry.d.ts +10 -0
  254. package/dist/types/classes/registries/tool.registry.d.ts +53 -0
  255. package/dist/types/classes/structures/app-state-map.structure.d.ts +171 -0
  256. package/dist/types/classes/structures/object-map.structure.d.ts +403 -0
  257. package/dist/types/classes/structures/quadtree.structure.d.ts +128 -0
  258. package/dist/types/classes/tools/base-tool.class.d.ts +72 -0
  259. package/dist/types/classes/tools/brush-tool.class.d.ts +68 -0
  260. package/dist/types/classes/tools/eraser-tool.class.d.ts +38 -0
  261. package/dist/types/classes/tools/image-tool.class.d.ts +74 -0
  262. package/dist/types/classes/tools/line-tool.class.d.ts +63 -0
  263. package/dist/types/classes/tools/selection-tool.class.d.ts +188 -0
  264. package/dist/types/classes/tools/shape-tool.class.d.ts +90 -0
  265. package/dist/types/classes/tools/text-tool.class.d.ts +66 -0
  266. package/dist/types/components/kritzel-awareness-cursors/kritzel-awareness-cursors.d.ts +29 -0
  267. package/dist/types/components/kritzel-cursor-trail/kritzel-cursor-trail.d.ts +19 -0
  268. package/dist/types/components/kritzel-engine/kritzel-engine.d.ts +695 -0
  269. package/dist/types/components/kritzel-icon/kritzel-icon.d.ts +6 -0
  270. package/dist/types/components/kritzel-watermark/kritzel-watermark.d.ts +20 -0
  271. package/dist/types/components.d.ts +981 -0
  272. package/dist/types/configs/default-asset-storage.config.d.ts +8 -0
  273. package/dist/types/configs/default-brush-tool.config.d.ts +2 -0
  274. package/dist/types/configs/default-engine-config.d.ts +2 -0
  275. package/dist/types/configs/default-line-tool.config.d.ts +2 -0
  276. package/dist/types/configs/default-shape-tool.config.d.ts +2 -0
  277. package/dist/types/configs/default-sync.config.d.ts +5 -0
  278. package/dist/types/configs/default-text-tool.config.d.ts +2 -0
  279. package/dist/types/constants/color-palette.constants.d.ts +31 -0
  280. package/dist/types/constants/core.constants.d.ts +0 -0
  281. package/dist/types/constants/engine.constants.d.ts +4 -0
  282. package/dist/types/constants/license.constants.d.ts +25 -0
  283. package/dist/types/constants/schema.constants.d.ts +4 -0
  284. package/dist/types/constants/storage.constants.d.ts +1 -0
  285. package/dist/types/constants/stroke-size.constants.d.ts +2 -0
  286. package/dist/types/constants/text-tool-fonts.constants.d.ts +3 -0
  287. package/dist/types/constants/version.d.ts +6 -0
  288. package/dist/types/enums/alignment.enum.d.ts +8 -0
  289. package/dist/types/enums/event-button.enum.d.ts +5 -0
  290. package/dist/types/enums/handle-type.enum.d.ts +6 -0
  291. package/dist/types/enums/shape-type.enum.d.ts +5 -0
  292. package/dist/types/events/active-workspace-change.event.d.ts +7 -0
  293. package/dist/types/events/editor-is-ready.event.d.ts +18 -0
  294. package/dist/types/events/login.event.d.ts +3 -0
  295. package/dist/types/helpers/alignment.helper.d.ts +21 -0
  296. package/dist/types/helpers/class.helper.d.ts +3 -0
  297. package/dist/types/helpers/color.helper.d.ts +34 -0
  298. package/dist/types/helpers/cursor.helper.d.ts +22 -0
  299. package/dist/types/helpers/devices.helper.d.ts +8 -0
  300. package/dist/types/helpers/event.helper.d.ts +6 -0
  301. package/dist/types/helpers/geometry.helper.d.ts +38 -0
  302. package/dist/types/helpers/html.helper.d.ts +8 -0
  303. package/dist/types/helpers/image-file.helper.d.ts +3 -0
  304. package/dist/types/helpers/keyboard.helper.d.ts +6 -0
  305. package/dist/types/helpers/localization.helper.d.ts +18 -0
  306. package/dist/types/helpers/math.helper.d.ts +4 -0
  307. package/dist/types/helpers/migration.helper.d.ts +30 -0
  308. package/dist/types/helpers/object.helper.d.ts +9 -0
  309. package/dist/types/helpers/svg-export.helper.d.ts +231 -0
  310. package/dist/types/helpers/theme.helper.d.ts +42 -0
  311. package/dist/types/helpers/tool-config.helper.d.ts +4 -0
  312. package/dist/types/helpers/wheel.helper.d.ts +9 -0
  313. package/dist/types/index.d.ts +109 -0
  314. package/dist/types/interfaces/anchor.interface.d.ts +147 -0
  315. package/dist/types/interfaces/arrow-head.interface.d.ts +27 -0
  316. package/dist/types/interfaces/asset-provider.interface.d.ts +88 -0
  317. package/dist/types/interfaces/asset-storage-config.interface.d.ts +40 -0
  318. package/dist/types/interfaces/asset.interface.d.ts +43 -0
  319. package/dist/types/interfaces/bounding-box.interface.d.ts +8 -0
  320. package/dist/types/interfaces/clonable.interface.d.ts +3 -0
  321. package/dist/types/interfaces/context-menu-item.interface.d.ts +25 -0
  322. package/dist/types/interfaces/context-menu-state.interface.d.ts +16 -0
  323. package/dist/types/interfaces/debug-info.interface.d.ts +7 -0
  324. package/dist/types/interfaces/dialog.interface.d.ts +4 -0
  325. package/dist/types/interfaces/document-metadata.interface.d.ts +6 -0
  326. package/dist/types/interfaces/dynamic-object-renderer.interface.d.ts +40 -0
  327. package/dist/types/interfaces/engine-state.interface.d.ts +82 -0
  328. package/dist/types/interfaces/font.interface.d.ts +15 -0
  329. package/dist/types/interfaces/localization.interface.d.ts +143 -0
  330. package/dist/types/interfaces/login-config.interface.d.ts +24 -0
  331. package/dist/types/interfaces/master-detail.interface.d.ts +14 -0
  332. package/dist/types/interfaces/menu-item.interface.d.ts +27 -0
  333. package/dist/types/interfaces/migration.interface.d.ts +16 -0
  334. package/dist/types/interfaces/notification.interface.d.ts +10 -0
  335. package/dist/types/interfaces/object-change-event.interface.d.ts +31 -0
  336. package/dist/types/interfaces/object-export.interface.d.ts +20 -0
  337. package/dist/types/interfaces/object.interface.d.ts +53 -0
  338. package/dist/types/interfaces/paste-intent-provider.interface.d.ts +10 -0
  339. package/dist/types/interfaces/point.interface.d.ts +4 -0
  340. package/dist/types/interfaces/polygon.interface.d.ts +7 -0
  341. package/dist/types/interfaces/remote-cursor.interface.d.ts +18 -0
  342. package/dist/types/interfaces/selection-state.interface.d.ts +7 -0
  343. package/dist/types/interfaces/serializable.interface.d.ts +5 -0
  344. package/dist/types/interfaces/settings.interface.d.ts +25 -0
  345. package/dist/types/interfaces/share.interface.d.ts +9 -0
  346. package/dist/types/interfaces/shortcut.interface.d.ts +10 -0
  347. package/dist/types/interfaces/sync-config.interface.d.ts +41 -0
  348. package/dist/types/interfaces/sync-provider.interface.d.ts +66 -0
  349. package/dist/types/interfaces/theme.interface.d.ts +553 -0
  350. package/dist/types/interfaces/tool-config.interface.d.ts +24 -0
  351. package/dist/types/interfaces/tool-type.interface.d.ts +1 -0
  352. package/dist/types/interfaces/tool.interface.d.ts +8 -0
  353. package/dist/types/interfaces/toolbar-item.interface.d.ts +66 -0
  354. package/dist/types/interfaces/undo-state.interface.d.ts +6 -0
  355. package/dist/types/interfaces/user.interface.d.ts +22 -0
  356. package/dist/types/interfaces/viewport-state.interface.d.ts +7 -0
  357. package/dist/types/locales/de-locale.d.ts +5 -0
  358. package/dist/types/locales/en-locale.d.ts +6 -0
  359. package/dist/types/locales/fr-locale.d.ts +5 -0
  360. package/dist/types/migrations/app-state.migrations.d.ts +11 -0
  361. package/dist/types/migrations/workspace.migrations.d.ts +11 -0
  362. package/dist/types/stencil-public-runtime.d.ts +1873 -0
  363. package/dist/types/themes/dark-theme.d.ts +5 -0
  364. package/dist/types/themes/light-theme.d.ts +5 -0
  365. package/dist/types/types/deep-readonly.type.d.ts +7 -0
  366. package/dist/types/types/state.types.d.ts +3 -0
  367. package/loader/cdn.js +1 -0
  368. package/loader/index.cjs.js +1 -0
  369. package/loader/index.d.ts +24 -0
  370. package/loader/index.es2017.js +1 -0
  371. package/loader/index.js +2 -0
  372. package/package.json +101 -0
  373. package/readme.md +11 -0
@@ -0,0 +1,1702 @@
1
+ const NAMESPACE = 'stencil';
2
+ const BUILD = /* stencil */ { hotModuleReplacement: false, hydratedSelectorName: "hydrated", lazyLoad: true, propChangeCallback: true, state: true, updatable: true};
3
+
4
+ /*
5
+ Stencil Client Platform v4.44.2 | MIT Licensed | https://stenciljs.com
6
+ */
7
+
8
+
9
+ // src/utils/constants.ts
10
+ var SVG_NS = "http://www.w3.org/2000/svg";
11
+ var HTML_NS = "http://www.w3.org/1999/xhtml";
12
+
13
+ // src/utils/get-prop-descriptor.ts
14
+ function getPropertyDescriptor(obj, memberName, getOnly) {
15
+ const stopAt = typeof HTMLElement !== "undefined" ? HTMLElement.prototype : null;
16
+ while (obj && obj !== stopAt) {
17
+ const desc = Object.getOwnPropertyDescriptor(obj, memberName);
18
+ if (desc && (!getOnly || desc.get)) return desc;
19
+ obj = Object.getPrototypeOf(obj);
20
+ }
21
+ return void 0;
22
+ }
23
+
24
+ // src/utils/es2022-rewire-class-members.ts
25
+ var reWireGetterSetter = (instance, hostRef) => {
26
+ var _a;
27
+ const cmpMeta = hostRef.$cmpMeta$;
28
+ const members = Object.entries((_a = cmpMeta.$members$) != null ? _a : {});
29
+ members.map(([memberName, [memberFlags]]) => {
30
+ if ((memberFlags & 31 /* Prop */ || memberFlags & 32 /* State */)) {
31
+ const ogValue = instance[memberName];
32
+ const ogDescriptor = getPropertyDescriptor(Object.getPrototypeOf(instance), memberName, true) || Object.getOwnPropertyDescriptor(instance, memberName);
33
+ if (ogDescriptor) {
34
+ Object.defineProperty(instance, memberName, {
35
+ get() {
36
+ return ogDescriptor.get.call(this);
37
+ },
38
+ set(newValue) {
39
+ ogDescriptor.set.call(this, newValue);
40
+ },
41
+ configurable: true,
42
+ enumerable: true
43
+ });
44
+ }
45
+ if (hostRef.$instanceValues$.has(memberName)) {
46
+ instance[memberName] = hostRef.$instanceValues$.get(memberName);
47
+ } else if (ogValue !== void 0) {
48
+ instance[memberName] = ogValue;
49
+ }
50
+ }
51
+ });
52
+ };
53
+
54
+ // src/client/client-host-ref.ts
55
+ var getHostRef = (ref) => {
56
+ if (ref.__stencil__getHostRef) {
57
+ return ref.__stencil__getHostRef();
58
+ }
59
+ return void 0;
60
+ };
61
+ var registerInstance = (lazyInstance, hostRef) => {
62
+ if (!hostRef) return;
63
+ lazyInstance.__stencil__getHostRef = () => hostRef;
64
+ hostRef.$lazyInstance$ = lazyInstance;
65
+ if (hostRef.$cmpMeta$.$flags$ & 512 /* hasModernPropertyDecls */ && (BUILD.state)) {
66
+ reWireGetterSetter(lazyInstance, hostRef);
67
+ }
68
+ };
69
+ var registerHost = (hostElement, cmpMeta) => {
70
+ const hostRef = {
71
+ $flags$: 0,
72
+ $hostElement$: hostElement,
73
+ $cmpMeta$: cmpMeta,
74
+ $instanceValues$: /* @__PURE__ */ new Map(),
75
+ $serializerValues$: /* @__PURE__ */ new Map()
76
+ };
77
+ {
78
+ hostRef.$onInstancePromise$ = new Promise((r) => hostRef.$onInstanceResolve$ = r);
79
+ }
80
+ {
81
+ hostRef.$onReadyPromise$ = new Promise((r) => hostRef.$onReadyResolve$ = r);
82
+ hostElement["s-p"] = [];
83
+ hostElement["s-rc"] = [];
84
+ }
85
+ {
86
+ hostRef.$fetchedCbList$ = [];
87
+ }
88
+ const ref = hostRef;
89
+ hostElement.__stencil__getHostRef = () => ref;
90
+ return ref;
91
+ };
92
+ var isMemberInElement = (elm, memberName) => memberName in elm;
93
+ var consoleError = (e, el) => (0, console.error)(e, el);
94
+
95
+ // src/client/client-load-module.ts
96
+ var cmpModules = /* @__PURE__ */ new Map();
97
+ var failedLoadAttempts = /* @__PURE__ */ new Map();
98
+ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
99
+ var _a;
100
+ const exportName = cmpMeta.$tagName$.replace(/-/g, "_");
101
+ const bundleId = cmpMeta.$lazyBundleId$;
102
+ if (!bundleId) {
103
+ return void 0;
104
+ }
105
+ const module = cmpModules.get(bundleId) ;
106
+ if (module) {
107
+ return module[exportName];
108
+ }
109
+ const retryCount = (_a = failedLoadAttempts.get(bundleId)) != null ? _a : 0;
110
+ const cacheBustParams = [
111
+ retryCount > 0 ? `s-retry=${retryCount}` : "",
112
+ ""
113
+ ].filter(Boolean).join("&");
114
+ /*!__STENCIL_STATIC_IMPORT_SWITCH__*/
115
+ return import(
116
+ /* @vite-ignore */
117
+ /* webpackInclude: /\.entry\.js$/ */
118
+ /* webpackExclude: /\.system\.entry\.js$/ */
119
+ /* webpackMode: "lazy" */
120
+ `./${bundleId}.entry.js${cacheBustParams ? "?" + cacheBustParams : ""}`
121
+ ).then(
122
+ (importedModule) => {
123
+ {
124
+ failedLoadAttempts.delete(bundleId);
125
+ cmpModules.set(bundleId, importedModule);
126
+ }
127
+ return importedModule[exportName];
128
+ },
129
+ (e) => {
130
+ failedLoadAttempts.set(bundleId, retryCount + 1);
131
+ consoleError(e, hostRef.$hostElement$);
132
+ }
133
+ );
134
+ };
135
+
136
+ // src/client/client-style.ts
137
+ var styles = /* @__PURE__ */ new Map();
138
+ var HYDRATED_CSS = "{visibility:hidden}.hydrated{visibility:inherit}";
139
+ var SLOT_FB_CSS = "slot-fb{display:contents}slot-fb[hidden]{display:none}";
140
+ var MAX_LAZY_LOAD_RETRIES = 3;
141
+ var LAZY_LOAD_RETRY_INTERVAL_MS = 1e3;
142
+ var win = typeof window !== "undefined" ? window : {};
143
+ var plt = {
144
+ $flags$: 0,
145
+ $resourcesUrl$: "",
146
+ jmp: (h2) => h2(),
147
+ raf: (h2) => requestAnimationFrame(h2),
148
+ ael: (el, eventName, listener, opts) => el.addEventListener(eventName, listener, opts),
149
+ rel: (el, eventName, listener, opts) => el.removeEventListener(eventName, listener, opts),
150
+ ce: (eventName, opts) => new CustomEvent(eventName, opts)
151
+ };
152
+ var supportsListenerOptions = /* @__PURE__ */ (() => {
153
+ var _a;
154
+ let supportsListenerOptions2 = false;
155
+ try {
156
+ (_a = win.document) == null ? void 0 : _a.addEventListener(
157
+ "e",
158
+ null,
159
+ Object.defineProperty({}, "passive", {
160
+ get() {
161
+ supportsListenerOptions2 = true;
162
+ }
163
+ })
164
+ );
165
+ } catch (e) {
166
+ }
167
+ return supportsListenerOptions2;
168
+ })();
169
+ var promiseResolve = (v) => Promise.resolve(v);
170
+ var supportsConstructableStylesheets = /* @__PURE__ */ (() => {
171
+ try {
172
+ if (!win.document.adoptedStyleSheets) {
173
+ return false;
174
+ }
175
+ new CSSStyleSheet();
176
+ return typeof new CSSStyleSheet().replaceSync === "function";
177
+ } catch (e) {
178
+ }
179
+ return false;
180
+ })() ;
181
+ var supportsMutableAdoptedStyleSheets = supportsConstructableStylesheets ? /* @__PURE__ */ (() => !!win.document && Object.getOwnPropertyDescriptor(win.document.adoptedStyleSheets, "length").writable)() : false;
182
+ var queuePending = false;
183
+ var queueDomReads = [];
184
+ var queueDomWrites = [];
185
+ var scheduleFlush = () => {
186
+ var _a;
187
+ return ((_a = win.document) == null ? void 0 : _a.hidden) ? nextTick(flush) : plt.raf(flush);
188
+ };
189
+ var queueTask = (queue, write) => (cb) => {
190
+ queue.push(cb);
191
+ if (!queuePending) {
192
+ queuePending = true;
193
+ if (write && plt.$flags$ & 4 /* queueSync */) {
194
+ nextTick(flush);
195
+ } else {
196
+ scheduleFlush();
197
+ }
198
+ }
199
+ };
200
+ var consume = (queue) => {
201
+ for (let i2 = 0; i2 < queue.length; i2++) {
202
+ try {
203
+ queue[i2](performance.now());
204
+ } catch (e) {
205
+ consoleError(e);
206
+ }
207
+ }
208
+ queue.length = 0;
209
+ };
210
+ var flush = () => {
211
+ consume(queueDomReads);
212
+ {
213
+ consume(queueDomWrites);
214
+ if (queuePending = queueDomReads.length > 0) {
215
+ scheduleFlush();
216
+ }
217
+ }
218
+ };
219
+ var nextTick = (cb) => promiseResolve().then(cb);
220
+ var writeTask = /* @__PURE__ */ queueTask(queueDomWrites, true);
221
+
222
+ // src/utils/style.ts
223
+ function createStyleSheetIfNeededAndSupported(styles2) {
224
+ return void 0;
225
+ }
226
+
227
+ // src/utils/shadow-root.ts
228
+ var globalStyleSheet;
229
+ function createShadowRoot(cmpMeta) {
230
+ var _a;
231
+ const opts = { mode: "open" };
232
+ const shadowRoot = this.attachShadow(opts);
233
+ if (globalStyleSheet === void 0) globalStyleSheet = (_a = createStyleSheetIfNeededAndSupported()) != null ? _a : null;
234
+ if (globalStyleSheet) {
235
+ if (supportsMutableAdoptedStyleSheets) {
236
+ shadowRoot.adoptedStyleSheets.push(globalStyleSheet);
237
+ } else {
238
+ shadowRoot.adoptedStyleSheets = [...shadowRoot.adoptedStyleSheets, globalStyleSheet];
239
+ }
240
+ }
241
+ }
242
+ var createTime = (fnName, tagName = "") => {
243
+ {
244
+ return () => {
245
+ return;
246
+ };
247
+ }
248
+ };
249
+ var uniqueTime = (key, measureText) => {
250
+ {
251
+ return () => {
252
+ return;
253
+ };
254
+ }
255
+ };
256
+
257
+ // src/utils/query-nonce-meta-tag-content.ts
258
+ function queryNonceMetaTagContent(doc) {
259
+ var _a, _b, _c;
260
+ return (_c = (_b = (_a = doc.head) == null ? void 0 : _a.querySelector('meta[name="csp-nonce"]')) == null ? void 0 : _b.getAttribute("content")) != null ? _c : void 0;
261
+ }
262
+
263
+ // src/runtime/styles.ts
264
+ var rootAppliedStyles = /* @__PURE__ */ new WeakMap();
265
+ var registerStyle = (scopeId2, cssText, allowCS) => {
266
+ let style = styles.get(scopeId2);
267
+ if (supportsConstructableStylesheets && allowCS) {
268
+ style = style || new CSSStyleSheet();
269
+ if (typeof style === "string") {
270
+ style = cssText;
271
+ } else {
272
+ style.replaceSync(cssText);
273
+ }
274
+ } else {
275
+ style = cssText;
276
+ }
277
+ styles.set(scopeId2, style);
278
+ };
279
+ var addStyle = (styleContainerNode, cmpMeta, mode) => {
280
+ var _a, _b, _c;
281
+ const scopeId2 = getScopeId(cmpMeta);
282
+ const style = styles.get(scopeId2);
283
+ if (!win.document) {
284
+ return scopeId2;
285
+ }
286
+ styleContainerNode = styleContainerNode.nodeType === 11 /* DocumentFragment */ ? styleContainerNode : win.document;
287
+ if (style) {
288
+ if (typeof style === "string") {
289
+ styleContainerNode = styleContainerNode.head || styleContainerNode;
290
+ let appliedStyles = rootAppliedStyles.get(styleContainerNode);
291
+ let styleElm;
292
+ if (!appliedStyles) {
293
+ rootAppliedStyles.set(styleContainerNode, appliedStyles = /* @__PURE__ */ new Set());
294
+ }
295
+ if (!appliedStyles.has(scopeId2)) {
296
+ styleElm = win.document.createElement("style");
297
+ styleElm.textContent = style;
298
+ const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(win.document);
299
+ if (nonce != null) {
300
+ styleElm.setAttribute("nonce", nonce);
301
+ }
302
+ if (!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */)) {
303
+ if (styleContainerNode.nodeName === "HEAD") {
304
+ const preconnectLinks = styleContainerNode.querySelectorAll("link[rel=preconnect]");
305
+ const referenceNode2 = preconnectLinks.length > 0 ? preconnectLinks[preconnectLinks.length - 1].nextSibling : styleContainerNode.querySelector("style");
306
+ styleContainerNode.insertBefore(
307
+ styleElm,
308
+ (referenceNode2 == null ? void 0 : referenceNode2.parentNode) === styleContainerNode ? referenceNode2 : null
309
+ );
310
+ } else if ("host" in styleContainerNode) {
311
+ if (supportsConstructableStylesheets) {
312
+ const currentWindow = (_b = styleContainerNode.defaultView) != null ? _b : styleContainerNode.ownerDocument.defaultView;
313
+ const stylesheet = new currentWindow.CSSStyleSheet();
314
+ stylesheet.replaceSync(style);
315
+ if (supportsMutableAdoptedStyleSheets) {
316
+ styleContainerNode.adoptedStyleSheets.unshift(stylesheet);
317
+ } else {
318
+ styleContainerNode.adoptedStyleSheets = [stylesheet, ...styleContainerNode.adoptedStyleSheets];
319
+ }
320
+ } else {
321
+ const existingStyleContainer = styleContainerNode.querySelector("style");
322
+ if (existingStyleContainer && true) {
323
+ existingStyleContainer.textContent = style + existingStyleContainer.textContent;
324
+ } else {
325
+ styleContainerNode.prepend(styleElm);
326
+ }
327
+ }
328
+ } else {
329
+ styleContainerNode.append(styleElm);
330
+ }
331
+ }
332
+ if (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) {
333
+ styleContainerNode.insertBefore(styleElm, null);
334
+ }
335
+ if (cmpMeta.$flags$ & 4 /* hasSlotRelocation */) {
336
+ styleElm.textContent += SLOT_FB_CSS;
337
+ }
338
+ if (appliedStyles) {
339
+ appliedStyles.add(scopeId2);
340
+ }
341
+ }
342
+ } else {
343
+ let appliedStyles = rootAppliedStyles.get(styleContainerNode);
344
+ if (!appliedStyles) {
345
+ rootAppliedStyles.set(styleContainerNode, appliedStyles = /* @__PURE__ */ new Set());
346
+ }
347
+ if (!appliedStyles.has(scopeId2)) {
348
+ const currentWindow = (_c = styleContainerNode.defaultView) != null ? _c : styleContainerNode.ownerDocument.defaultView;
349
+ let stylesheet;
350
+ if (style.constructor === currentWindow.CSSStyleSheet) {
351
+ stylesheet = style;
352
+ } else {
353
+ stylesheet = new currentWindow.CSSStyleSheet();
354
+ for (let i2 = 0; i2 < style.cssRules.length; i2++) {
355
+ stylesheet.insertRule(style.cssRules[i2].cssText, i2);
356
+ }
357
+ }
358
+ if (supportsMutableAdoptedStyleSheets) {
359
+ styleContainerNode.adoptedStyleSheets.push(stylesheet);
360
+ } else {
361
+ styleContainerNode.adoptedStyleSheets = [...styleContainerNode.adoptedStyleSheets, stylesheet];
362
+ }
363
+ appliedStyles.add(scopeId2);
364
+ }
365
+ }
366
+ }
367
+ return scopeId2;
368
+ };
369
+ var attachStyles = (hostRef) => {
370
+ const cmpMeta = hostRef.$cmpMeta$;
371
+ const elm = hostRef.$hostElement$;
372
+ const flags = cmpMeta.$flags$;
373
+ const endAttachStyles = createTime("attachStyles", cmpMeta.$tagName$);
374
+ const scopeId2 = addStyle(
375
+ elm.shadowRoot ? elm.shadowRoot : elm.getRootNode(),
376
+ cmpMeta);
377
+ if (flags & 10 /* needsScopedEncapsulation */) {
378
+ elm["s-sc"] = scopeId2;
379
+ elm.classList.add(scopeId2 + "-h");
380
+ }
381
+ endAttachStyles();
382
+ };
383
+ var getScopeId = (cmp, mode) => "sc-" + (cmp.$tagName$);
384
+ var isComplexType = (o) => {
385
+ o = typeof o;
386
+ return o === "object" || o === "function";
387
+ };
388
+
389
+ // src/runtime/vdom/h.ts
390
+ var h = (nodeName, vnodeData, ...children) => {
391
+ if (typeof nodeName === "string") {
392
+ nodeName = transformTag(nodeName);
393
+ }
394
+ let child = null;
395
+ let key = null;
396
+ let simple = false;
397
+ let lastSimple = false;
398
+ const vNodeChildren = [];
399
+ const walk = (c) => {
400
+ for (let i2 = 0; i2 < c.length; i2++) {
401
+ child = c[i2];
402
+ if (Array.isArray(child)) {
403
+ walk(child);
404
+ } else if (child != null && typeof child !== "boolean") {
405
+ if (simple = typeof nodeName !== "function" && !isComplexType(child)) {
406
+ child = String(child);
407
+ } else if (typeof nodeName !== "function" && child.$flags$ === void 0) {
408
+ {
409
+ consoleError("Invalid vNode child");
410
+ }
411
+ continue;
412
+ }
413
+ if (simple && lastSimple) {
414
+ vNodeChildren[vNodeChildren.length - 1].$text$ += child;
415
+ } else {
416
+ vNodeChildren.push(simple ? newVNode(null, child) : child);
417
+ }
418
+ lastSimple = simple;
419
+ }
420
+ }
421
+ };
422
+ walk(children);
423
+ if (vnodeData) {
424
+ if (vnodeData.key) {
425
+ key = vnodeData.key;
426
+ }
427
+ {
428
+ const classData = vnodeData.className || vnodeData.class;
429
+ if (classData) {
430
+ vnodeData.class = typeof classData !== "object" ? classData : Object.keys(classData).filter((k) => classData[k]).join(" ");
431
+ }
432
+ }
433
+ }
434
+ const vnode = newVNode(nodeName, null);
435
+ vnode.$attrs$ = vnodeData;
436
+ if (vNodeChildren.length > 0) {
437
+ vnode.$children$ = vNodeChildren;
438
+ }
439
+ {
440
+ vnode.$key$ = key;
441
+ }
442
+ return vnode;
443
+ };
444
+ var newVNode = (tag, text) => {
445
+ const vnode = {
446
+ $flags$: 0,
447
+ $tag$: tag,
448
+ // Normalize undefined to null to prevent rendering "undefined" as text
449
+ $text$: text != null ? text : null,
450
+ $elm$: null,
451
+ $children$: null
452
+ };
453
+ {
454
+ vnode.$attrs$ = null;
455
+ }
456
+ {
457
+ vnode.$key$ = null;
458
+ }
459
+ return vnode;
460
+ };
461
+ var Host = {};
462
+ var isHost = (node) => node && node.$tag$ === Host;
463
+
464
+ // src/runtime/normalize-watchers.ts
465
+ var normalizeWatchers = (raw) => {
466
+ if (!raw) return void 0;
467
+ const keys = Object.keys(raw);
468
+ if (keys.length === 0) return void 0;
469
+ let hasLegacy = false;
470
+ for (const propName of keys) {
471
+ if (hasLegacy) break;
472
+ for (const h2 of raw[propName]) {
473
+ if (typeof h2 === "string") {
474
+ hasLegacy = true;
475
+ break;
476
+ }
477
+ }
478
+ }
479
+ if (!hasLegacy) return raw;
480
+ const out = {};
481
+ for (const propName of keys) {
482
+ out[propName] = raw[propName].map(
483
+ (h2) => typeof h2 === "string" ? { [h2]: 0 } : h2
484
+ );
485
+ }
486
+ return out;
487
+ };
488
+
489
+ // src/runtime/parse-property-value.ts
490
+ var parsePropertyValue = (propValue, propType, isFormAssociated) => {
491
+ if (propValue != null && !isComplexType(propValue)) {
492
+ if (propType & 4 /* Boolean */) {
493
+ {
494
+ return propValue === "false" ? false : propValue === "" || !!propValue;
495
+ }
496
+ }
497
+ if (propType & 2 /* Number */) {
498
+ return typeof propValue === "string" ? parseFloat(propValue) : typeof propValue === "number" ? propValue : NaN;
499
+ }
500
+ if (propType & 1 /* String */) {
501
+ return String(propValue);
502
+ }
503
+ return propValue;
504
+ }
505
+ return propValue;
506
+ };
507
+ var getElement = (ref) => {
508
+ var _a;
509
+ return (_a = getHostRef(ref)) == null ? void 0 : _a.$hostElement$ ;
510
+ };
511
+
512
+ // src/runtime/event-emitter.ts
513
+ var createEvent = (ref, name, flags) => {
514
+ const elm = getElement(ref);
515
+ return {
516
+ emit: (detail) => {
517
+ return emitEvent(elm, name, {
518
+ bubbles: true,
519
+ composed: true,
520
+ cancelable: true,
521
+ detail
522
+ });
523
+ }
524
+ };
525
+ };
526
+ var emitEvent = (elm, name, opts) => {
527
+ const ev = plt.ce(name, opts);
528
+ elm.dispatchEvent(ev);
529
+ return ev;
530
+ };
531
+ var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags, initialRender) => {
532
+ if (oldValue === newValue) {
533
+ return;
534
+ }
535
+ let isProp = isMemberInElement(elm, memberName);
536
+ let ln = memberName.toLowerCase();
537
+ if (memberName === "class") {
538
+ const classList = elm.classList;
539
+ const oldClasses = parseClassList(oldValue);
540
+ let newClasses = parseClassList(newValue);
541
+ {
542
+ classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));
543
+ classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));
544
+ }
545
+ } else if (memberName === "style") {
546
+ {
547
+ for (const prop in oldValue) {
548
+ if (!newValue || newValue[prop] == null) {
549
+ if (prop.includes("-")) {
550
+ elm.style.removeProperty(prop);
551
+ } else {
552
+ elm.style[prop] = "";
553
+ }
554
+ }
555
+ }
556
+ }
557
+ for (const prop in newValue) {
558
+ if (!oldValue || newValue[prop] !== oldValue[prop]) {
559
+ if (prop.includes("-")) {
560
+ elm.style.setProperty(prop, newValue[prop]);
561
+ } else {
562
+ elm.style[prop] = newValue[prop];
563
+ }
564
+ }
565
+ }
566
+ } else if (memberName === "key") ; else if (memberName === "ref") {
567
+ if (newValue) {
568
+ queueRefAttachment(newValue, elm);
569
+ }
570
+ } else if ((!isProp ) && memberName[0] === "o" && memberName[1] === "n") {
571
+ if (memberName[2] === "-") {
572
+ memberName = memberName.slice(3);
573
+ } else if (isMemberInElement(win, ln)) {
574
+ memberName = ln.slice(2);
575
+ } else {
576
+ memberName = ln[2] + memberName.slice(3);
577
+ }
578
+ if (oldValue || newValue) {
579
+ const capture = memberName.endsWith(CAPTURE_EVENT_SUFFIX);
580
+ memberName = memberName.replace(CAPTURE_EVENT_REGEX, "");
581
+ if (oldValue) {
582
+ plt.rel(elm, memberName, oldValue, capture);
583
+ }
584
+ if (newValue) {
585
+ plt.ael(elm, memberName, newValue, capture);
586
+ }
587
+ }
588
+ } else if (memberName[0] === "a" && memberName.startsWith("attr:")) {
589
+ const propName = memberName.slice(5);
590
+ let attrName;
591
+ {
592
+ const hostRef = getHostRef(elm);
593
+ if (hostRef && hostRef.$cmpMeta$ && hostRef.$cmpMeta$.$members$) {
594
+ const memberMeta = hostRef.$cmpMeta$.$members$[propName];
595
+ if (memberMeta && memberMeta[1]) {
596
+ attrName = memberMeta[1];
597
+ }
598
+ }
599
+ }
600
+ if (!attrName) {
601
+ attrName = propName.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
602
+ }
603
+ if (newValue == null || newValue === false) {
604
+ if (newValue !== false || elm.getAttribute(attrName) === "") {
605
+ elm.removeAttribute(attrName);
606
+ }
607
+ } else {
608
+ elm.setAttribute(attrName, newValue === true ? "" : newValue);
609
+ }
610
+ return;
611
+ } else if (memberName[0] === "p" && memberName.startsWith("prop:")) {
612
+ const propName = memberName.slice(5);
613
+ try {
614
+ elm[propName] = newValue;
615
+ } catch (e) {
616
+ }
617
+ return;
618
+ } else {
619
+ const isComplex = isComplexType(newValue);
620
+ if ((isProp || isComplex && newValue !== null) && !isSvg) {
621
+ try {
622
+ if (!elm.tagName.includes("-")) {
623
+ const n = newValue == null ? "" : newValue;
624
+ if (memberName === "list") {
625
+ isProp = false;
626
+ } else if (oldValue == null || elm[memberName] !== n) {
627
+ if (typeof elm.__lookupSetter__(memberName) === "function") {
628
+ elm[memberName] = n;
629
+ } else {
630
+ elm.setAttribute(memberName, n);
631
+ }
632
+ }
633
+ } else if (elm[memberName] !== newValue) {
634
+ elm[memberName] = newValue;
635
+ }
636
+ } catch (e) {
637
+ }
638
+ }
639
+ if (newValue == null || newValue === false) {
640
+ if (newValue !== false || elm.getAttribute(memberName) === "" || flags & 4 /* isHost */ && !isEnumeratedAttribute(memberName)) {
641
+ {
642
+ elm.removeAttribute(memberName);
643
+ }
644
+ }
645
+ } else if ((!isProp || flags & 4 /* isHost */ || isSvg) && !isComplex && elm.nodeType === 1 /* ElementNode */) {
646
+ newValue = newValue === true ? "" : newValue;
647
+ {
648
+ elm.setAttribute(memberName, newValue);
649
+ }
650
+ }
651
+ }
652
+ };
653
+ var ENUMERATED_ATTRIBUTES = /* @__PURE__ */ new Set(["draggable", "contenteditable", "spellcheck"]);
654
+ var isEnumeratedAttribute = (attrName) => ENUMERATED_ATTRIBUTES.has(attrName) || attrName.startsWith("aria-");
655
+ var parseClassListRegex = /\s/;
656
+ var parseClassList = (value) => {
657
+ if (typeof value === "object" && value && "baseVal" in value) {
658
+ value = value.baseVal;
659
+ }
660
+ if (!value || typeof value !== "string") {
661
+ return [];
662
+ }
663
+ return value.split(parseClassListRegex);
664
+ };
665
+ var CAPTURE_EVENT_SUFFIX = "Capture";
666
+ var CAPTURE_EVENT_REGEX = new RegExp(CAPTURE_EVENT_SUFFIX + "$");
667
+
668
+ // src/runtime/vdom/update-element.ts
669
+ var updateElement = (oldVnode, newVnode, isSvgMode2, isInitialRender) => {
670
+ const elm = newVnode.$elm$.nodeType === 11 /* DocumentFragment */ && newVnode.$elm$.host ? newVnode.$elm$.host : newVnode.$elm$;
671
+ const oldVnodeAttrs = oldVnode && oldVnode.$attrs$ || {};
672
+ const newVnodeAttrs = newVnode.$attrs$ || {};
673
+ {
674
+ for (const memberName of sortedAttrNames(Object.keys(oldVnodeAttrs))) {
675
+ if (!(memberName in newVnodeAttrs)) {
676
+ setAccessor(
677
+ elm,
678
+ memberName,
679
+ oldVnodeAttrs[memberName],
680
+ void 0,
681
+ isSvgMode2,
682
+ newVnode.$flags$);
683
+ }
684
+ }
685
+ }
686
+ for (const memberName of sortedAttrNames(Object.keys(newVnodeAttrs))) {
687
+ setAccessor(
688
+ elm,
689
+ memberName,
690
+ oldVnodeAttrs[memberName],
691
+ newVnodeAttrs[memberName],
692
+ isSvgMode2,
693
+ newVnode.$flags$);
694
+ }
695
+ };
696
+ function sortedAttrNames(attrNames) {
697
+ return attrNames.includes("ref") ? (
698
+ // we need to sort these to ensure that `'ref'` is the last attr
699
+ [...attrNames.filter((attr) => attr !== "ref"), "ref"]
700
+ ) : (
701
+ // no need to sort, return the original array
702
+ attrNames
703
+ );
704
+ }
705
+ var hostTagName;
706
+ var isSvgMode = false;
707
+ var refCallbacksToRemove = [];
708
+ var refCallbacksToAttach = [];
709
+ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
710
+ const newVNode2 = newParentVNode.$children$[childIndex];
711
+ let i2 = 0;
712
+ let elm;
713
+ let childNode;
714
+ if (newVNode2.$text$ != null) {
715
+ elm = newVNode2.$elm$ = win.document.createTextNode(newVNode2.$text$);
716
+ } else {
717
+ if (!isSvgMode) {
718
+ isSvgMode = newVNode2.$tag$ === "svg";
719
+ }
720
+ if (!win.document) {
721
+ throw new Error("You are trying to render a Stencil component in an environment that doesn't support the DOM.");
722
+ }
723
+ elm = newVNode2.$elm$ = win.document.createElementNS(
724
+ isSvgMode ? SVG_NS : HTML_NS,
725
+ newVNode2.$tag$
726
+ ) ;
727
+ if (isSvgMode && newVNode2.$tag$ === "foreignObject") {
728
+ isSvgMode = false;
729
+ }
730
+ {
731
+ updateElement(null, newVNode2, isSvgMode);
732
+ }
733
+ if (newVNode2.$children$) {
734
+ const appendTarget = newVNode2.$tag$ === "template" ? elm.content : elm;
735
+ for (i2 = 0; i2 < newVNode2.$children$.length; ++i2) {
736
+ childNode = createElm(oldParentVNode, newVNode2, i2);
737
+ if (childNode) {
738
+ appendTarget.appendChild(childNode);
739
+ }
740
+ }
741
+ }
742
+ {
743
+ if (newVNode2.$tag$ === "svg") {
744
+ isSvgMode = false;
745
+ } else if (elm.tagName === "foreignObject") {
746
+ isSvgMode = true;
747
+ }
748
+ }
749
+ }
750
+ elm["s-hn"] = hostTagName;
751
+ return elm;
752
+ };
753
+ var addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
754
+ let containerElm = parentElm;
755
+ let childNode;
756
+ if (containerElm.shadowRoot && containerElm.tagName === hostTagName) {
757
+ containerElm = containerElm.shadowRoot;
758
+ }
759
+ if (parentVNode.$tag$ === "template") {
760
+ containerElm = containerElm.content;
761
+ }
762
+ for (; startIdx <= endIdx; ++startIdx) {
763
+ if (vnodes[startIdx]) {
764
+ childNode = createElm(null, parentVNode, startIdx);
765
+ if (childNode) {
766
+ vnodes[startIdx].$elm$ = childNode;
767
+ insertBefore(containerElm, childNode, before);
768
+ }
769
+ }
770
+ }
771
+ };
772
+ var removeVnodes = (vnodes, startIdx, endIdx) => {
773
+ for (let index = startIdx; index <= endIdx; ++index) {
774
+ const vnode = vnodes[index];
775
+ if (vnode) {
776
+ const elm = vnode.$elm$;
777
+ nullifyVNodeRefs(vnode);
778
+ if (elm) {
779
+ elm.remove();
780
+ }
781
+ }
782
+ }
783
+ };
784
+ var updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = false) => {
785
+ let oldStartIdx = 0;
786
+ let newStartIdx = 0;
787
+ let idxInOld = 0;
788
+ let i2 = 0;
789
+ let oldEndIdx = oldCh.length - 1;
790
+ let oldStartVnode = oldCh[0];
791
+ let oldEndVnode = oldCh[oldEndIdx];
792
+ let newEndIdx = newCh.length - 1;
793
+ let newStartVnode = newCh[0];
794
+ let newEndVnode = newCh[newEndIdx];
795
+ let node;
796
+ let elmToMove;
797
+ const containerElm = newVNode2.$tag$ === "template" ? parentElm.content : parentElm;
798
+ while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {
799
+ if (oldStartVnode == null) {
800
+ oldStartVnode = oldCh[++oldStartIdx];
801
+ } else if (oldEndVnode == null) {
802
+ oldEndVnode = oldCh[--oldEndIdx];
803
+ } else if (newStartVnode == null) {
804
+ newStartVnode = newCh[++newStartIdx];
805
+ } else if (newEndVnode == null) {
806
+ newEndVnode = newCh[--newEndIdx];
807
+ } else if (isSameVnode(oldStartVnode, newStartVnode, isInitialRender)) {
808
+ patch(oldStartVnode, newStartVnode, isInitialRender);
809
+ oldStartVnode = oldCh[++oldStartIdx];
810
+ newStartVnode = newCh[++newStartIdx];
811
+ } else if (isSameVnode(oldEndVnode, newEndVnode, isInitialRender)) {
812
+ patch(oldEndVnode, newEndVnode, isInitialRender);
813
+ oldEndVnode = oldCh[--oldEndIdx];
814
+ newEndVnode = newCh[--newEndIdx];
815
+ } else if (isSameVnode(oldStartVnode, newEndVnode, isInitialRender)) {
816
+ patch(oldStartVnode, newEndVnode, isInitialRender);
817
+ insertBefore(containerElm, oldStartVnode.$elm$, oldEndVnode.$elm$.nextSibling);
818
+ oldStartVnode = oldCh[++oldStartIdx];
819
+ newEndVnode = newCh[--newEndIdx];
820
+ } else if (isSameVnode(oldEndVnode, newStartVnode, isInitialRender)) {
821
+ patch(oldEndVnode, newStartVnode, isInitialRender);
822
+ insertBefore(containerElm, oldEndVnode.$elm$, oldStartVnode.$elm$);
823
+ oldEndVnode = oldCh[--oldEndIdx];
824
+ newStartVnode = newCh[++newStartIdx];
825
+ } else {
826
+ idxInOld = -1;
827
+ {
828
+ for (i2 = oldStartIdx; i2 <= oldEndIdx; ++i2) {
829
+ if (oldCh[i2] && oldCh[i2].$key$ !== null && oldCh[i2].$key$ === newStartVnode.$key$) {
830
+ idxInOld = i2;
831
+ break;
832
+ }
833
+ }
834
+ }
835
+ if (idxInOld >= 0) {
836
+ elmToMove = oldCh[idxInOld];
837
+ if (elmToMove.$tag$ !== newStartVnode.$tag$) {
838
+ node = createElm(oldCh && oldCh[newStartIdx], newVNode2, idxInOld);
839
+ } else {
840
+ patch(elmToMove, newStartVnode, isInitialRender);
841
+ oldCh[idxInOld] = void 0;
842
+ node = elmToMove.$elm$;
843
+ }
844
+ newStartVnode = newCh[++newStartIdx];
845
+ } else {
846
+ node = createElm(oldCh && oldCh[newStartIdx], newVNode2, newStartIdx);
847
+ newStartVnode = newCh[++newStartIdx];
848
+ }
849
+ if (node) {
850
+ {
851
+ insertBefore(oldStartVnode.$elm$.parentNode, node, oldStartVnode.$elm$);
852
+ }
853
+ }
854
+ }
855
+ }
856
+ if (oldStartIdx > oldEndIdx) {
857
+ addVnodes(
858
+ parentElm,
859
+ newCh[newEndIdx + 1] == null ? null : newCh[newEndIdx + 1].$elm$,
860
+ newVNode2,
861
+ newCh,
862
+ newStartIdx,
863
+ newEndIdx
864
+ );
865
+ } else if (newStartIdx > newEndIdx) {
866
+ removeVnodes(oldCh, oldStartIdx, oldEndIdx);
867
+ }
868
+ };
869
+ var isSameVnode = (leftVNode, rightVNode, isInitialRender = false) => {
870
+ if (leftVNode.$tag$ === rightVNode.$tag$) {
871
+ if (!isInitialRender) {
872
+ return leftVNode.$key$ === rightVNode.$key$;
873
+ }
874
+ if (isInitialRender && !leftVNode.$key$ && rightVNode.$key$) {
875
+ leftVNode.$key$ = rightVNode.$key$;
876
+ }
877
+ return true;
878
+ }
879
+ return false;
880
+ };
881
+ var patch = (oldVNode, newVNode2, isInitialRender = false) => {
882
+ const elm = newVNode2.$elm$ = oldVNode.$elm$;
883
+ const oldChildren = oldVNode.$children$;
884
+ const newChildren = newVNode2.$children$;
885
+ const tag = newVNode2.$tag$;
886
+ const text = newVNode2.$text$;
887
+ if (text == null) {
888
+ {
889
+ isSvgMode = tag === "svg" ? true : tag === "foreignObject" ? false : isSvgMode;
890
+ }
891
+ {
892
+ updateElement(oldVNode, newVNode2, isSvgMode);
893
+ }
894
+ if (oldChildren !== null && newChildren !== null) {
895
+ updateChildren(elm, oldChildren, newVNode2, newChildren, isInitialRender);
896
+ } else if (newChildren !== null) {
897
+ if (oldVNode.$text$ !== null) {
898
+ elm.textContent = "";
899
+ }
900
+ addVnodes(elm, null, newVNode2, newChildren, 0, newChildren.length - 1);
901
+ } else if (
902
+ // don't do this on initial render as it can cause non-hydrated content to be removed
903
+ !isInitialRender && BUILD.updatable && oldChildren !== null
904
+ ) {
905
+ removeVnodes(oldChildren, 0, oldChildren.length - 1);
906
+ } else ;
907
+ if (isSvgMode && tag === "svg") {
908
+ isSvgMode = false;
909
+ }
910
+ } else if (oldVNode.$text$ !== text) {
911
+ elm.data = text;
912
+ }
913
+ };
914
+ var nullifyVNodeRefs = (vNode) => {
915
+ {
916
+ if (vNode.$attrs$ && vNode.$attrs$.ref) {
917
+ refCallbacksToRemove.push(() => vNode.$attrs$.ref(null));
918
+ }
919
+ vNode.$children$ && vNode.$children$.map(nullifyVNodeRefs);
920
+ }
921
+ };
922
+ var queueRefAttachment = (refCallback, elm) => {
923
+ {
924
+ refCallbacksToAttach.push(() => refCallback(elm));
925
+ }
926
+ };
927
+ var flushQueuedRefCallbacks = () => {
928
+ {
929
+ refCallbacksToRemove.forEach((cb) => cb());
930
+ refCallbacksToRemove.length = 0;
931
+ refCallbacksToAttach.forEach((cb) => cb());
932
+ refCallbacksToAttach.length = 0;
933
+ }
934
+ };
935
+ var insertBefore = (parent, newNode, reference, isInitialLoad) => {
936
+ {
937
+ return parent == null ? void 0 : parent.insertBefore(newNode, reference);
938
+ }
939
+ };
940
+ var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
941
+ const hostElm = hostRef.$hostElement$;
942
+ const oldVNode = hostRef.$vnode$ || newVNode(null, null);
943
+ const isHostElement = isHost(renderFnResults);
944
+ const rootVnode = isHostElement ? renderFnResults : h(null, null, renderFnResults);
945
+ hostTagName = hostElm.tagName;
946
+ if (isInitialLoad && rootVnode.$attrs$) {
947
+ for (const key of Object.keys(rootVnode.$attrs$)) {
948
+ if (hostElm.hasAttribute(key) && !["key", "ref", "style", "class"].includes(key)) {
949
+ rootVnode.$attrs$[key] = hostElm[key];
950
+ }
951
+ }
952
+ }
953
+ rootVnode.$tag$ = null;
954
+ rootVnode.$flags$ |= 4 /* isHost */;
955
+ hostRef.$vnode$ = rootVnode;
956
+ rootVnode.$elm$ = oldVNode.$elm$ = hostElm.shadowRoot || hostElm ;
957
+ patch(oldVNode, rootVnode, isInitialLoad);
958
+ flushQueuedRefCallbacks();
959
+ };
960
+
961
+ // src/runtime/update-component.ts
962
+ var attachToAncestor = (hostRef, ancestorComponent) => {
963
+ if (ancestorComponent && !hostRef.$onRenderResolve$ && ancestorComponent["s-p"]) {
964
+ const index = ancestorComponent["s-p"].push(
965
+ new Promise(
966
+ (r) => hostRef.$onRenderResolve$ = () => {
967
+ ancestorComponent["s-p"].splice(index - 1, 1);
968
+ r();
969
+ }
970
+ )
971
+ );
972
+ }
973
+ };
974
+ var scheduleUpdate = (hostRef, isInitialLoad) => {
975
+ {
976
+ hostRef.$flags$ |= 16 /* isQueuedForUpdate */;
977
+ }
978
+ if (hostRef.$flags$ & 4 /* isWaitingForChildren */) {
979
+ hostRef.$flags$ |= 512 /* needsRerender */;
980
+ return;
981
+ }
982
+ attachToAncestor(hostRef, hostRef.$ancestorComponent$);
983
+ const dispatch = () => dispatchHooks(hostRef, isInitialLoad);
984
+ if (isInitialLoad) {
985
+ queueMicrotask(() => {
986
+ dispatch();
987
+ });
988
+ return;
989
+ }
990
+ return writeTask(dispatch) ;
991
+ };
992
+ var dispatchHooks = (hostRef, isInitialLoad) => {
993
+ const elm = hostRef.$hostElement$;
994
+ const endSchedule = createTime("scheduleUpdate", hostRef.$cmpMeta$.$tagName$);
995
+ const instance = hostRef.$lazyInstance$ ;
996
+ if (!instance) {
997
+ throw new Error(
998
+ `Can't render component <${elm.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`
999
+ );
1000
+ }
1001
+ let maybePromise;
1002
+ if (isInitialLoad) {
1003
+ {
1004
+ {
1005
+ hostRef.$flags$ |= 256 /* isListenReady */;
1006
+ if (hostRef.$queuedListeners$) {
1007
+ hostRef.$queuedListeners$.map(([methodName, event]) => safeCall(instance, methodName, event, elm));
1008
+ hostRef.$queuedListeners$ = void 0;
1009
+ }
1010
+ }
1011
+ if (hostRef.$fetchedCbList$.length) {
1012
+ hostRef.$fetchedCbList$.forEach((cb) => cb(elm));
1013
+ }
1014
+ }
1015
+ maybePromise = safeCall(instance, "componentWillLoad", void 0, elm);
1016
+ } else {
1017
+ maybePromise = safeCall(instance, "componentWillUpdate", void 0, elm);
1018
+ }
1019
+ maybePromise = enqueue(maybePromise, () => safeCall(instance, "componentWillRender", void 0, elm));
1020
+ endSchedule();
1021
+ return enqueue(maybePromise, () => updateComponent(hostRef, instance, isInitialLoad));
1022
+ };
1023
+ var enqueue = (maybePromise, fn) => isPromisey(maybePromise) ? maybePromise.then(fn).catch((err) => {
1024
+ console.error(err);
1025
+ fn();
1026
+ }) : fn();
1027
+ var isPromisey = (maybePromise) => maybePromise instanceof Promise || maybePromise && maybePromise.then && typeof maybePromise.then === "function";
1028
+ var updateComponent = async (hostRef, instance, isInitialLoad) => {
1029
+ var _a;
1030
+ const elm = hostRef.$hostElement$;
1031
+ const endUpdate = createTime("update", hostRef.$cmpMeta$.$tagName$);
1032
+ const rc = elm["s-rc"];
1033
+ if (isInitialLoad) {
1034
+ attachStyles(hostRef);
1035
+ }
1036
+ const endRender = createTime("render", hostRef.$cmpMeta$.$tagName$);
1037
+ {
1038
+ callRender(hostRef, instance, elm, isInitialLoad);
1039
+ }
1040
+ if (rc) {
1041
+ rc.map((cb) => cb());
1042
+ elm["s-rc"] = void 0;
1043
+ }
1044
+ endRender();
1045
+ endUpdate();
1046
+ {
1047
+ const childrenPromises = (_a = elm["s-p"]) != null ? _a : [];
1048
+ const postUpdate = () => postUpdateComponent(hostRef);
1049
+ if (childrenPromises.length === 0) {
1050
+ postUpdate();
1051
+ } else {
1052
+ Promise.all(childrenPromises).then(postUpdate).catch(postUpdate);
1053
+ hostRef.$flags$ |= 4 /* isWaitingForChildren */;
1054
+ childrenPromises.length = 0;
1055
+ }
1056
+ }
1057
+ };
1058
+ var callRender = (hostRef, instance, elm, isInitialLoad) => {
1059
+ try {
1060
+ instance = instance.render() ;
1061
+ {
1062
+ hostRef.$flags$ &= -17 /* isQueuedForUpdate */;
1063
+ }
1064
+ {
1065
+ hostRef.$flags$ |= 2 /* hasRendered */;
1066
+ }
1067
+ {
1068
+ {
1069
+ {
1070
+ renderVdom(hostRef, instance, isInitialLoad);
1071
+ }
1072
+ }
1073
+ }
1074
+ } catch (e) {
1075
+ consoleError(e, hostRef.$hostElement$);
1076
+ }
1077
+ return null;
1078
+ };
1079
+ var postUpdateComponent = (hostRef) => {
1080
+ const tagName = hostRef.$cmpMeta$.$tagName$;
1081
+ const elm = hostRef.$hostElement$;
1082
+ const endPostUpdate = createTime("postUpdate", tagName);
1083
+ const instance = hostRef.$lazyInstance$ ;
1084
+ const ancestorComponent = hostRef.$ancestorComponent$;
1085
+ safeCall(instance, "componentDidRender", void 0, elm);
1086
+ if (!(hostRef.$flags$ & 64 /* hasLoadedComponent */)) {
1087
+ hostRef.$flags$ |= 64 /* hasLoadedComponent */;
1088
+ {
1089
+ addHydratedFlag(elm);
1090
+ }
1091
+ safeCall(instance, "componentDidLoad", void 0, elm);
1092
+ endPostUpdate();
1093
+ {
1094
+ hostRef.$onReadyResolve$(elm);
1095
+ if (!ancestorComponent) {
1096
+ appDidLoad();
1097
+ }
1098
+ }
1099
+ } else {
1100
+ safeCall(instance, "componentDidUpdate", void 0, elm);
1101
+ endPostUpdate();
1102
+ }
1103
+ {
1104
+ hostRef.$onInstanceResolve$(elm);
1105
+ }
1106
+ {
1107
+ if (hostRef.$onRenderResolve$) {
1108
+ hostRef.$onRenderResolve$();
1109
+ hostRef.$onRenderResolve$ = void 0;
1110
+ }
1111
+ if (hostRef.$flags$ & 512 /* needsRerender */) {
1112
+ nextTick(() => scheduleUpdate(hostRef, false));
1113
+ }
1114
+ hostRef.$flags$ &= -517;
1115
+ }
1116
+ };
1117
+ var appDidLoad = (who) => {
1118
+ nextTick(() => emitEvent(win, "appload", { detail: { namespace: NAMESPACE } }));
1119
+ };
1120
+ var safeCall = (instance, method, arg, elm) => {
1121
+ if (instance && instance[method]) {
1122
+ try {
1123
+ return instance[method](arg);
1124
+ } catch (e) {
1125
+ consoleError(e, elm);
1126
+ }
1127
+ }
1128
+ return void 0;
1129
+ };
1130
+ var addHydratedFlag = (elm) => {
1131
+ var _a;
1132
+ return elm.classList.add((_a = BUILD.hydratedSelectorName) != null ? _a : "hydrated") ;
1133
+ };
1134
+
1135
+ // src/runtime/set-value.ts
1136
+ var getValue = (ref, propName) => getHostRef(ref).$instanceValues$.get(propName);
1137
+ var setValue = (ref, propName, newVal, cmpMeta) => {
1138
+ const hostRef = getHostRef(ref);
1139
+ if (!hostRef) {
1140
+ return;
1141
+ }
1142
+ if (!hostRef) {
1143
+ throw new Error(
1144
+ `Couldn't find host element for "${cmpMeta.$tagName$}" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/stenciljs/core/issues/5457).`
1145
+ );
1146
+ }
1147
+ const elm = hostRef.$hostElement$ ;
1148
+ const oldVal = hostRef.$instanceValues$.get(propName);
1149
+ const flags = hostRef.$flags$;
1150
+ const instance = hostRef.$lazyInstance$ ;
1151
+ newVal = parsePropertyValue(
1152
+ newVal,
1153
+ cmpMeta.$members$[propName][0]);
1154
+ const areBothNaN = Number.isNaN(oldVal) && Number.isNaN(newVal);
1155
+ const didValueChange = newVal !== oldVal && !areBothNaN;
1156
+ if ((!(flags & 8 /* isConstructingInstance */) || oldVal === void 0) && didValueChange) {
1157
+ hostRef.$instanceValues$.set(propName, newVal);
1158
+ if (cmpMeta.$watchers$) {
1159
+ const watchMethods = cmpMeta.$watchers$[propName];
1160
+ if (watchMethods) {
1161
+ watchMethods.map((watcher) => {
1162
+ try {
1163
+ const [[watchMethodName, watcherFlags]] = Object.entries(watcher);
1164
+ if (flags & 128 /* isWatchReady */ || watcherFlags & 1 /* Immediate */) {
1165
+ if (!instance) {
1166
+ hostRef.$fetchedCbList$.push(() => {
1167
+ hostRef.$lazyInstance$[watchMethodName](newVal, oldVal, propName);
1168
+ });
1169
+ } else {
1170
+ instance[watchMethodName](newVal, oldVal, propName);
1171
+ }
1172
+ }
1173
+ } catch (e) {
1174
+ consoleError(e, elm);
1175
+ }
1176
+ });
1177
+ }
1178
+ }
1179
+ if (flags & 2 /* hasRendered */) {
1180
+ if (instance.componentShouldUpdate) {
1181
+ const shouldUpdate = instance.componentShouldUpdate(newVal, oldVal, propName);
1182
+ if (shouldUpdate === false && !(flags & 16 /* isQueuedForUpdate */)) {
1183
+ return;
1184
+ }
1185
+ }
1186
+ if (!(flags & 16 /* isQueuedForUpdate */)) {
1187
+ scheduleUpdate(hostRef, false);
1188
+ }
1189
+ }
1190
+ }
1191
+ };
1192
+ var proxyComponent = (Cstr, cmpMeta, flags) => {
1193
+ var _a, _b;
1194
+ const prototype = Cstr.prototype;
1195
+ if (cmpMeta.$members$ || BUILD.propChangeCallback) {
1196
+ {
1197
+ if (Cstr.watchers && !cmpMeta.$watchers$) {
1198
+ cmpMeta.$watchers$ = normalizeWatchers(Cstr.watchers);
1199
+ }
1200
+ if (Cstr.deserializers && !cmpMeta.$deserializers$) {
1201
+ cmpMeta.$deserializers$ = Cstr.deserializers;
1202
+ }
1203
+ if (Cstr.serializers && !cmpMeta.$serializers$) {
1204
+ cmpMeta.$serializers$ = Cstr.serializers;
1205
+ }
1206
+ }
1207
+ const members = Object.entries((_a = cmpMeta.$members$) != null ? _a : {});
1208
+ members.map(([memberName, [memberFlags]]) => {
1209
+ if ((memberFlags & 31 /* Prop */ || (flags & 2 /* proxyState */) && memberFlags & 32 /* State */)) {
1210
+ const { get: origGetter, set: origSetter } = getPropertyDescriptor(prototype, memberName) || {};
1211
+ if (origGetter) cmpMeta.$members$[memberName][0] |= 2048 /* Getter */;
1212
+ if (origSetter) cmpMeta.$members$[memberName][0] |= 4096 /* Setter */;
1213
+ if (flags & 1 /* isElementConstructor */ || !origGetter) {
1214
+ Object.defineProperty(prototype, memberName, {
1215
+ get() {
1216
+ {
1217
+ if ((cmpMeta.$members$[memberName][0] & 2048 /* Getter */) === 0) {
1218
+ return getValue(this, memberName);
1219
+ }
1220
+ const ref = getHostRef(this);
1221
+ const instance = ref ? ref.$lazyInstance$ : prototype;
1222
+ if (!instance) return;
1223
+ return instance[memberName];
1224
+ }
1225
+ },
1226
+ configurable: true,
1227
+ enumerable: true
1228
+ });
1229
+ }
1230
+ Object.defineProperty(prototype, memberName, {
1231
+ set(newValue) {
1232
+ const ref = getHostRef(this);
1233
+ if (!ref) {
1234
+ return;
1235
+ }
1236
+ if (origSetter) {
1237
+ const currentValue = memberFlags & 32 /* State */ ? this[memberName] : ref.$hostElement$[memberName];
1238
+ if (typeof currentValue === "undefined" && ref.$instanceValues$.get(memberName)) {
1239
+ newValue = ref.$instanceValues$.get(memberName);
1240
+ }
1241
+ origSetter.apply(this, [
1242
+ parsePropertyValue(
1243
+ newValue,
1244
+ memberFlags)
1245
+ ]);
1246
+ newValue = memberFlags & 32 /* State */ ? this[memberName] : ref.$hostElement$[memberName];
1247
+ setValue(this, memberName, newValue, cmpMeta);
1248
+ return;
1249
+ }
1250
+ {
1251
+ if ((flags & 1 /* isElementConstructor */) === 0 || (cmpMeta.$members$[memberName][0] & 4096 /* Setter */) === 0) {
1252
+ setValue(this, memberName, newValue, cmpMeta);
1253
+ if (flags & 1 /* isElementConstructor */ && !ref.$lazyInstance$) {
1254
+ ref.$fetchedCbList$.push(() => {
1255
+ if (cmpMeta.$members$[memberName][0] & 4096 /* Setter */ && ref.$lazyInstance$[memberName] !== ref.$instanceValues$.get(memberName)) {
1256
+ ref.$lazyInstance$[memberName] = newValue;
1257
+ }
1258
+ });
1259
+ }
1260
+ return;
1261
+ }
1262
+ const setterSetVal = () => {
1263
+ const currentValue = ref.$lazyInstance$[memberName];
1264
+ if (!ref.$instanceValues$.get(memberName) && currentValue) {
1265
+ ref.$instanceValues$.set(memberName, currentValue);
1266
+ }
1267
+ ref.$lazyInstance$[memberName] = parsePropertyValue(
1268
+ newValue,
1269
+ memberFlags);
1270
+ setValue(this, memberName, ref.$lazyInstance$[memberName], cmpMeta);
1271
+ };
1272
+ if (ref.$lazyInstance$) {
1273
+ setterSetVal();
1274
+ } else {
1275
+ ref.$fetchedCbList$.push(() => {
1276
+ setterSetVal();
1277
+ });
1278
+ }
1279
+ }
1280
+ }
1281
+ });
1282
+ } else if (flags & 1 /* isElementConstructor */ && memberFlags & 64 /* Method */) {
1283
+ Object.defineProperty(prototype, memberName, {
1284
+ value(...args) {
1285
+ var _a2;
1286
+ const ref = getHostRef(this);
1287
+ return (_a2 = ref == null ? void 0 : ref.$onInstancePromise$) == null ? void 0 : _a2.then(() => {
1288
+ var _a3;
1289
+ return (_a3 = ref.$lazyInstance$) == null ? void 0 : _a3[memberName](...args);
1290
+ });
1291
+ }
1292
+ });
1293
+ }
1294
+ });
1295
+ if ((flags & 1 /* isElementConstructor */)) {
1296
+ const attrNameToPropName = /* @__PURE__ */ new Map();
1297
+ prototype.attributeChangedCallback = function(attrName, oldValue, newValue) {
1298
+ plt.jmp(() => {
1299
+ var _a2;
1300
+ const propName = attrNameToPropName.get(attrName);
1301
+ const hostRef = getHostRef(this);
1302
+ if (this.hasOwnProperty(propName) && BUILD.lazyLoad) {
1303
+ newValue = this[propName];
1304
+ delete this[propName];
1305
+ }
1306
+ if (prototype.hasOwnProperty(propName) && typeof this[propName] === "number" && // cast type to number to avoid TS compiler issues
1307
+ this[propName] == newValue) {
1308
+ return;
1309
+ } else if (propName == null) {
1310
+ const flags2 = hostRef == null ? void 0 : hostRef.$flags$;
1311
+ if (hostRef && flags2 && !(flags2 & 8 /* isConstructingInstance */) && newValue !== oldValue) {
1312
+ const instance = hostRef.$lazyInstance$ ;
1313
+ const entry = (_a2 = cmpMeta.$watchers$) == null ? void 0 : _a2[attrName];
1314
+ entry == null ? void 0 : entry.forEach((watcher) => {
1315
+ const [[watchMethodName, watcherFlags]] = Object.entries(watcher);
1316
+ if (instance[watchMethodName] != null && (flags2 & 128 /* isWatchReady */ || watcherFlags & 1 /* Immediate */)) {
1317
+ instance[watchMethodName].call(instance, newValue, oldValue, attrName);
1318
+ }
1319
+ });
1320
+ }
1321
+ return;
1322
+ }
1323
+ const propFlags = members.find(([m]) => m === propName);
1324
+ const propMemberFlags = propFlags ? propFlags[1][0] : 0;
1325
+ const isBooleanTarget = propMemberFlags & 4 /* Boolean */;
1326
+ const isSpuriousBooleanRemoval = isBooleanTarget && newValue === null && this[propName] === void 0;
1327
+ if (isBooleanTarget) {
1328
+ newValue = newValue === null || newValue === "false" ? false : true;
1329
+ }
1330
+ const propDesc = Object.getOwnPropertyDescriptor(prototype, propName);
1331
+ if (!isSpuriousBooleanRemoval && newValue != this[propName] && (!propDesc.get || !!propDesc.set)) {
1332
+ this[propName] = newValue;
1333
+ }
1334
+ });
1335
+ };
1336
+ Cstr.observedAttributes = Array.from(
1337
+ /* @__PURE__ */ new Set([
1338
+ ...Object.keys((_b = cmpMeta.$watchers$) != null ? _b : {}),
1339
+ ...members.filter(([_, m]) => m[0] & 31 /* HasAttribute */).map(([propName, m]) => {
1340
+ const attrName = m[1] || propName;
1341
+ attrNameToPropName.set(attrName, propName);
1342
+ return attrName;
1343
+ })
1344
+ ])
1345
+ );
1346
+ }
1347
+ }
1348
+ return Cstr;
1349
+ };
1350
+
1351
+ // src/runtime/initialize-component.ts
1352
+ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1353
+ var _a;
1354
+ let Cstr;
1355
+ try {
1356
+ if ((hostRef.$flags$ & 32 /* hasInitializedComponent */) === 0) {
1357
+ hostRef.$flags$ |= 32 /* hasInitializedComponent */;
1358
+ hostRef.$flags$ &= -1025 /* hasFailedLoad */;
1359
+ const bundleId = cmpMeta.$lazyBundleId$;
1360
+ if (bundleId) {
1361
+ const CstrImport = loadModule(cmpMeta, hostRef);
1362
+ if (CstrImport && "then" in CstrImport) {
1363
+ const endLoad = uniqueTime();
1364
+ Cstr = await CstrImport;
1365
+ endLoad();
1366
+ } else {
1367
+ Cstr = CstrImport;
1368
+ }
1369
+ if (!Cstr) {
1370
+ hostRef.$flags$ &= -33 /* hasInitializedComponent */;
1371
+ hostRef.$loadRetryCount$ = ((_a = hostRef.$loadRetryCount$) != null ? _a : 0) + 1;
1372
+ if (hostRef.$loadRetryCount$ < MAX_LAZY_LOAD_RETRIES) {
1373
+ hostRef.$flags$ |= 1024 /* hasFailedLoad */;
1374
+ }
1375
+ throw new Error(`Constructor for "${cmpMeta.$tagName$}#${hostRef.$modeName$}" was not found`);
1376
+ }
1377
+ if (!Cstr.isProxied) {
1378
+ {
1379
+ cmpMeta.$watchers$ = normalizeWatchers(Cstr.watchers);
1380
+ cmpMeta.$serializers$ = Cstr.serializers;
1381
+ cmpMeta.$deserializers$ = Cstr.deserializers;
1382
+ }
1383
+ proxyComponent(Cstr, cmpMeta, 2 /* proxyState */);
1384
+ Cstr.isProxied = true;
1385
+ }
1386
+ const endNewInstance = createTime("createInstance", cmpMeta.$tagName$);
1387
+ {
1388
+ hostRef.$flags$ |= 8 /* isConstructingInstance */;
1389
+ }
1390
+ try {
1391
+ new Cstr(hostRef);
1392
+ } catch (e) {
1393
+ consoleError(e, elm);
1394
+ }
1395
+ {
1396
+ hostRef.$flags$ &= -9 /* isConstructingInstance */;
1397
+ }
1398
+ {
1399
+ hostRef.$flags$ |= 128 /* isWatchReady */;
1400
+ }
1401
+ endNewInstance();
1402
+ {
1403
+ fireConnectedCallback(hostRef.$lazyInstance$, elm);
1404
+ }
1405
+ } else {
1406
+ Cstr = elm.constructor;
1407
+ const cmpTag = elm.localName;
1408
+ customElements.whenDefined(cmpTag).then(() => hostRef.$flags$ |= 128 /* isWatchReady */);
1409
+ }
1410
+ if (Cstr && Cstr.style) {
1411
+ let style;
1412
+ if (typeof Cstr.style === "string") {
1413
+ style = Cstr.style;
1414
+ }
1415
+ const scopeId2 = getScopeId(cmpMeta);
1416
+ if (!styles.has(scopeId2) || BUILD.hotModuleReplacement) {
1417
+ const endRegisterStyles = createTime("registerStyles", cmpMeta.$tagName$);
1418
+ registerStyle(scopeId2, style, !!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */));
1419
+ endRegisterStyles();
1420
+ }
1421
+ }
1422
+ }
1423
+ const ancestorComponent = hostRef.$ancestorComponent$;
1424
+ const schedule = () => scheduleUpdate(hostRef, true);
1425
+ if (ancestorComponent && ancestorComponent["s-rc"]) {
1426
+ ancestorComponent["s-rc"].push(schedule);
1427
+ } else {
1428
+ schedule();
1429
+ }
1430
+ } catch (e) {
1431
+ consoleError(e, elm);
1432
+ if (hostRef.$onRenderResolve$) {
1433
+ hostRef.$onRenderResolve$();
1434
+ hostRef.$onRenderResolve$ = void 0;
1435
+ }
1436
+ if (hostRef.$onReadyResolve$ && !(hostRef.$flags$ & 1024 /* hasFailedLoad */)) {
1437
+ hostRef.$onReadyResolve$(elm);
1438
+ }
1439
+ }
1440
+ };
1441
+ var fireConnectedCallback = (instance, elm) => {
1442
+ {
1443
+ safeCall(instance, "connectedCallback", void 0, elm);
1444
+ }
1445
+ };
1446
+
1447
+ // src/runtime/connected-callback.ts
1448
+ var connectedCallback = (elm) => {
1449
+ if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0) {
1450
+ const hostRef = getHostRef(elm);
1451
+ if (!hostRef) {
1452
+ return;
1453
+ }
1454
+ const cmpMeta = hostRef.$cmpMeta$;
1455
+ const endConnected = createTime("connectedCallback", cmpMeta.$tagName$);
1456
+ if (!(hostRef.$flags$ & 1 /* hasConnected */)) {
1457
+ hostRef.$flags$ |= 1 /* hasConnected */;
1458
+ {
1459
+ let ancestorComponent = elm;
1460
+ while (ancestorComponent = ancestorComponent.parentNode || ancestorComponent.host) {
1461
+ if (ancestorComponent["s-p"]) {
1462
+ attachToAncestor(hostRef, hostRef.$ancestorComponent$ = ancestorComponent);
1463
+ break;
1464
+ }
1465
+ }
1466
+ }
1467
+ if (cmpMeta.$members$) {
1468
+ Object.entries(cmpMeta.$members$).map(([memberName, [memberFlags]]) => {
1469
+ if (memberFlags & 31 /* Prop */ && Object.prototype.hasOwnProperty.call(elm, memberName)) {
1470
+ const value = elm[memberName];
1471
+ delete elm[memberName];
1472
+ elm[memberName] = value;
1473
+ }
1474
+ });
1475
+ }
1476
+ {
1477
+ initializeComponent(elm, hostRef, cmpMeta);
1478
+ }
1479
+ } else {
1480
+ addHostEventListeners(elm, hostRef, cmpMeta.$listeners$);
1481
+ if (hostRef == null ? void 0 : hostRef.$lazyInstance$) {
1482
+ fireConnectedCallback(hostRef.$lazyInstance$, elm);
1483
+ } else if (hostRef.$flags$ & 1024 /* hasFailedLoad */) {
1484
+ setTimeout(() => initializeComponent(elm, hostRef, cmpMeta), LAZY_LOAD_RETRY_INTERVAL_MS);
1485
+ } else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {
1486
+ hostRef.$onReadyPromise$.then(() => fireConnectedCallback(hostRef.$lazyInstance$, elm));
1487
+ }
1488
+ }
1489
+ endConnected();
1490
+ }
1491
+ };
1492
+ var disconnectInstance = (instance, elm) => {
1493
+ {
1494
+ safeCall(instance, "disconnectedCallback", void 0, elm || instance);
1495
+ }
1496
+ };
1497
+ var disconnectedCallback = async (elm) => {
1498
+ if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0) {
1499
+ const hostRef = getHostRef(elm);
1500
+ {
1501
+ if (hostRef == null ? void 0 : hostRef.$rmListeners$) {
1502
+ hostRef.$rmListeners$.map((rmListener) => rmListener());
1503
+ hostRef.$rmListeners$ = void 0;
1504
+ }
1505
+ }
1506
+ if (hostRef == null ? void 0 : hostRef.$lazyInstance$) {
1507
+ disconnectInstance(hostRef.$lazyInstance$, elm);
1508
+ } else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {
1509
+ hostRef.$onReadyPromise$.then(() => disconnectInstance(hostRef.$lazyInstance$, elm));
1510
+ }
1511
+ }
1512
+ if (rootAppliedStyles.has(elm)) {
1513
+ rootAppliedStyles.delete(elm);
1514
+ }
1515
+ if (elm.shadowRoot && rootAppliedStyles.has(elm.shadowRoot)) {
1516
+ rootAppliedStyles.delete(elm.shadowRoot);
1517
+ }
1518
+ };
1519
+
1520
+ // src/runtime/bootstrap-lazy.ts
1521
+ var bootstrapLazy = (lazyBundles, options = {}) => {
1522
+ var _a;
1523
+ if (!win.document) {
1524
+ console.warn("Stencil: No document found. Skipping bootstrapping lazy components.");
1525
+ return;
1526
+ }
1527
+ const endBootstrap = createTime();
1528
+ const cmpTags = [];
1529
+ const exclude = options.exclude || [];
1530
+ const customElements2 = win.customElements;
1531
+ const head = win.document.head;
1532
+ const metaCharset = /* @__PURE__ */ head.querySelector("meta[charset]");
1533
+ const dataStyles = /* @__PURE__ */ win.document.createElement("style");
1534
+ const deferredConnectedCallbacks = [];
1535
+ let appLoadFallback;
1536
+ let isBootstrapping = true;
1537
+ Object.assign(plt, options);
1538
+ plt.$resourcesUrl$ = new URL(options.resourcesUrl || "./", win.document.baseURI).href;
1539
+ lazyBundles.map((lazyBundle) => {
1540
+ lazyBundle[1].map((compactMeta) => {
1541
+ var _a2, _b;
1542
+ const cmpMeta = {
1543
+ $flags$: compactMeta[0],
1544
+ $tagName$: compactMeta[1],
1545
+ $members$: compactMeta[2],
1546
+ $listeners$: compactMeta[3]
1547
+ };
1548
+ {
1549
+ cmpMeta.$members$ = compactMeta[2];
1550
+ }
1551
+ {
1552
+ cmpMeta.$listeners$ = compactMeta[3];
1553
+ }
1554
+ {
1555
+ cmpMeta.$watchers$ = normalizeWatchers(compactMeta[4]);
1556
+ cmpMeta.$serializers$ = (_a2 = compactMeta[5]) != null ? _a2 : {};
1557
+ cmpMeta.$deserializers$ = (_b = compactMeta[6]) != null ? _b : {};
1558
+ }
1559
+ const tagName = transformTag(cmpMeta.$tagName$);
1560
+ const HostElement = class extends HTMLElement {
1561
+ ["s-p"];
1562
+ ["s-rc"];
1563
+ hasRegisteredEventListeners = false;
1564
+ // StencilLazyHost
1565
+ constructor(self) {
1566
+ super(self);
1567
+ self = this;
1568
+ registerHost(self, cmpMeta);
1569
+ if (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) {
1570
+ {
1571
+ if (!self.shadowRoot) {
1572
+ createShadowRoot.call(self, cmpMeta);
1573
+ } else {
1574
+ if (self.shadowRoot.mode !== "open") {
1575
+ throw new Error(
1576
+ `Unable to re-use existing shadow root for ${cmpMeta.$tagName$}! Mode is set to ${self.shadowRoot.mode} but Stencil only supports open shadow roots.`
1577
+ );
1578
+ }
1579
+ }
1580
+ }
1581
+ }
1582
+ }
1583
+ connectedCallback() {
1584
+ const hostRef = getHostRef(this);
1585
+ if (!hostRef) {
1586
+ return;
1587
+ }
1588
+ if (!this.hasRegisteredEventListeners) {
1589
+ this.hasRegisteredEventListeners = true;
1590
+ addHostEventListeners(this, hostRef, cmpMeta.$listeners$);
1591
+ }
1592
+ if (appLoadFallback) {
1593
+ clearTimeout(appLoadFallback);
1594
+ appLoadFallback = null;
1595
+ }
1596
+ if (isBootstrapping) {
1597
+ deferredConnectedCallbacks.push(this);
1598
+ } else {
1599
+ plt.jmp(() => connectedCallback(this));
1600
+ }
1601
+ }
1602
+ disconnectedCallback() {
1603
+ plt.jmp(() => disconnectedCallback(this));
1604
+ nextTick(() => {
1605
+ var _a3;
1606
+ const hostRef = getHostRef(this);
1607
+ if (!hostRef) {
1608
+ return;
1609
+ }
1610
+ const i2 = deferredConnectedCallbacks.findIndex((host) => host === this);
1611
+ if (i2 > -1) {
1612
+ deferredConnectedCallbacks.splice(i2, 1);
1613
+ }
1614
+ if (((_a3 = hostRef == null ? void 0 : hostRef.$vnode$) == null ? void 0 : _a3.$elm$) instanceof Node && !hostRef.$vnode$.$elm$.isConnected) {
1615
+ delete hostRef.$vnode$.$elm$;
1616
+ }
1617
+ });
1618
+ }
1619
+ componentOnReady() {
1620
+ var _a3;
1621
+ return (_a3 = getHostRef(this)) == null ? void 0 : _a3.$onReadyPromise$;
1622
+ }
1623
+ };
1624
+ cmpMeta.$lazyBundleId$ = lazyBundle[0];
1625
+ if (!exclude.includes(tagName) && !customElements2.get(tagName)) {
1626
+ cmpTags.push(tagName);
1627
+ customElements2.define(
1628
+ tagName,
1629
+ proxyComponent(HostElement, cmpMeta, 1 /* isElementConstructor */)
1630
+ );
1631
+ }
1632
+ });
1633
+ });
1634
+ if (cmpTags.length > 0) {
1635
+ {
1636
+ dataStyles.textContent += cmpTags.sort() + HYDRATED_CSS;
1637
+ }
1638
+ if (dataStyles.innerHTML.length) {
1639
+ dataStyles.setAttribute("data-styles", "");
1640
+ const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(win.document);
1641
+ if (nonce != null) {
1642
+ dataStyles.setAttribute("nonce", nonce);
1643
+ }
1644
+ head.insertBefore(dataStyles, metaCharset ? metaCharset.nextSibling : head.firstChild);
1645
+ }
1646
+ }
1647
+ isBootstrapping = false;
1648
+ if (deferredConnectedCallbacks.length) {
1649
+ deferredConnectedCallbacks.map((host) => host.connectedCallback());
1650
+ } else {
1651
+ {
1652
+ plt.jmp(() => appLoadFallback = setTimeout(appDidLoad, 30));
1653
+ }
1654
+ }
1655
+ endBootstrap();
1656
+ };
1657
+ var addHostEventListeners = (elm, hostRef, listeners, attachParentListeners) => {
1658
+ if (listeners && win.document) {
1659
+ listeners.map(([flags, name, method]) => {
1660
+ const target = getHostListenerTarget(win.document, elm, flags) ;
1661
+ const handler = hostListenerProxy(hostRef, method);
1662
+ const opts = hostListenerOpts(flags);
1663
+ plt.ael(target, name, handler, opts);
1664
+ (hostRef.$rmListeners$ = hostRef.$rmListeners$ || []).push(() => plt.rel(target, name, handler, opts));
1665
+ });
1666
+ }
1667
+ };
1668
+ var hostListenerProxy = (hostRef, methodName) => (ev) => {
1669
+ var _a;
1670
+ try {
1671
+ {
1672
+ if (hostRef.$flags$ & 256 /* isListenReady */) {
1673
+ (_a = hostRef.$lazyInstance$) == null ? void 0 : _a[methodName](ev);
1674
+ } else {
1675
+ (hostRef.$queuedListeners$ = hostRef.$queuedListeners$ || []).push([methodName, ev]);
1676
+ }
1677
+ }
1678
+ } catch (e) {
1679
+ consoleError(e, hostRef.$hostElement$);
1680
+ }
1681
+ };
1682
+ var getHostListenerTarget = (doc, elm, flags) => {
1683
+ if (flags & 4 /* TargetDocument */) {
1684
+ return doc;
1685
+ }
1686
+ if (flags & 8 /* TargetWindow */) {
1687
+ return win;
1688
+ }
1689
+ return elm;
1690
+ };
1691
+ var hostListenerOpts = (flags) => supportsListenerOptions ? {
1692
+ passive: (flags & 1 /* Passive */) !== 0,
1693
+ capture: (flags & 2 /* Capture */) !== 0
1694
+ } : (flags & 2 /* Capture */) !== 0;
1695
+
1696
+ // src/runtime/nonce.ts
1697
+ var setNonce = (nonce) => plt.$nonce$ = nonce;
1698
+ function transformTag(tag) {
1699
+ return tag;
1700
+ }
1701
+
1702
+ export { Host as H, bootstrapLazy as b, createEvent as c, getElement as g, h, promiseResolve as p, registerInstance as r, setNonce as s };