@dooboostore/simple-web-component 1.0.12 → 1.0.14

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 (880) hide show
  1. package/README.md +11 -12
  2. package/dist/cjs/decorators/elementDefine.js +88 -82
  3. package/dist/cjs/decorators/elementDefine.js.map +3 -3
  4. package/dist/cjs/decorators/index.js +26 -0
  5. package/dist/cjs/decorators/index.js.map +7 -0
  6. package/dist/cjs/elements/SwcInterfaces.js +35 -0
  7. package/dist/cjs/elements/SwcInterfaces.js.map +7 -0
  8. package/dist/cjs/elements/apps/SwcApp.js +14 -7
  9. package/dist/cjs/elements/apps/SwcApp.js.map +2 -2
  10. package/dist/cjs/elements/apps/SwcAppAnchor.js +14 -7
  11. package/dist/cjs/elements/apps/SwcAppAnchor.js.map +2 -2
  12. package/dist/cjs/elements/apps/SwcAppArea.js +14 -7
  13. package/dist/cjs/elements/apps/SwcAppArea.js.map +2 -2
  14. package/dist/cjs/elements/apps/SwcAppAudio.js +14 -7
  15. package/dist/cjs/elements/apps/SwcAppAudio.js.map +2 -2
  16. package/dist/cjs/elements/apps/SwcAppBase.js +14 -7
  17. package/dist/cjs/elements/apps/SwcAppBase.js.map +2 -2
  18. package/dist/cjs/elements/apps/SwcAppBody.js +14 -7
  19. package/dist/cjs/elements/apps/SwcAppBody.js.map +2 -2
  20. package/dist/cjs/elements/apps/SwcAppButton.js +14 -7
  21. package/dist/cjs/elements/apps/SwcAppButton.js.map +2 -2
  22. package/dist/cjs/elements/apps/SwcAppCanvas.js +14 -7
  23. package/dist/cjs/elements/apps/SwcAppCanvas.js.map +2 -2
  24. package/dist/cjs/elements/apps/SwcAppData.js +14 -7
  25. package/dist/cjs/elements/apps/SwcAppData.js.map +2 -2
  26. package/dist/cjs/elements/apps/SwcAppDataList.js +14 -7
  27. package/dist/cjs/elements/apps/SwcAppDataList.js.map +2 -2
  28. package/dist/cjs/elements/apps/SwcAppDetails.js +14 -7
  29. package/dist/cjs/elements/apps/SwcAppDetails.js.map +2 -2
  30. package/dist/cjs/elements/apps/SwcAppDialog.js +14 -7
  31. package/dist/cjs/elements/apps/SwcAppDialog.js.map +2 -2
  32. package/dist/cjs/elements/apps/SwcAppDiv.js +14 -7
  33. package/dist/cjs/elements/apps/SwcAppDiv.js.map +2 -2
  34. package/dist/cjs/elements/apps/SwcAppDl.js +14 -7
  35. package/dist/cjs/elements/apps/SwcAppDl.js.map +2 -2
  36. package/dist/cjs/elements/apps/SwcAppEmbed.js +14 -7
  37. package/dist/cjs/elements/apps/SwcAppEmbed.js.map +2 -2
  38. package/dist/cjs/elements/apps/SwcAppFieldSet.js +14 -7
  39. package/dist/cjs/elements/apps/SwcAppFieldSet.js.map +2 -2
  40. package/dist/cjs/elements/apps/SwcAppForm.js +14 -7
  41. package/dist/cjs/elements/apps/SwcAppForm.js.map +2 -2
  42. package/dist/cjs/elements/apps/SwcAppHeading.js +14 -7
  43. package/dist/cjs/elements/apps/SwcAppHeading.js.map +2 -2
  44. package/dist/cjs/elements/apps/SwcAppHr.js +14 -7
  45. package/dist/cjs/elements/apps/SwcAppHr.js.map +2 -2
  46. package/dist/cjs/elements/apps/SwcAppIFrame.js +14 -7
  47. package/dist/cjs/elements/apps/SwcAppIFrame.js.map +2 -2
  48. package/dist/cjs/elements/apps/SwcAppImage.js +14 -7
  49. package/dist/cjs/elements/apps/SwcAppImage.js.map +2 -2
  50. package/dist/cjs/elements/apps/SwcAppInput.js +14 -7
  51. package/dist/cjs/elements/apps/SwcAppInput.js.map +2 -2
  52. package/dist/cjs/elements/apps/SwcAppLabel.js +14 -7
  53. package/dist/cjs/elements/apps/SwcAppLabel.js.map +2 -2
  54. package/dist/cjs/elements/apps/SwcAppLegend.js +14 -7
  55. package/dist/cjs/elements/apps/SwcAppLegend.js.map +2 -2
  56. package/dist/cjs/elements/apps/SwcAppLi.js +14 -7
  57. package/dist/cjs/elements/apps/SwcAppLi.js.map +2 -2
  58. package/dist/cjs/elements/apps/SwcAppLink.js +14 -7
  59. package/dist/cjs/elements/apps/SwcAppLink.js.map +2 -2
  60. package/dist/cjs/elements/apps/SwcAppMap.js +14 -7
  61. package/dist/cjs/elements/apps/SwcAppMap.js.map +2 -2
  62. package/dist/cjs/elements/apps/SwcAppMeta.js +14 -7
  63. package/dist/cjs/elements/apps/SwcAppMeta.js.map +2 -2
  64. package/dist/cjs/elements/apps/SwcAppMeter.js +14 -7
  65. package/dist/cjs/elements/apps/SwcAppMeter.js.map +2 -2
  66. package/dist/cjs/elements/apps/SwcAppMod.js +14 -7
  67. package/dist/cjs/elements/apps/SwcAppMod.js.map +2 -2
  68. package/dist/cjs/elements/apps/SwcAppObject.js +14 -7
  69. package/dist/cjs/elements/apps/SwcAppObject.js.map +2 -2
  70. package/dist/cjs/elements/apps/SwcAppOl.js +14 -7
  71. package/dist/cjs/elements/apps/SwcAppOl.js.map +2 -2
  72. package/dist/cjs/elements/apps/SwcAppOptGroup.js +14 -7
  73. package/dist/cjs/elements/apps/SwcAppOptGroup.js.map +2 -2
  74. package/dist/cjs/elements/apps/SwcAppOption.js +14 -7
  75. package/dist/cjs/elements/apps/SwcAppOption.js.map +2 -2
  76. package/dist/cjs/elements/apps/SwcAppOutput.js +14 -7
  77. package/dist/cjs/elements/apps/SwcAppOutput.js.map +2 -2
  78. package/dist/cjs/elements/apps/SwcAppParagraph.js +14 -7
  79. package/dist/cjs/elements/apps/SwcAppParagraph.js.map +2 -2
  80. package/dist/cjs/elements/apps/SwcAppParam.js +14 -7
  81. package/dist/cjs/elements/apps/SwcAppParam.js.map +2 -2
  82. package/dist/cjs/elements/apps/SwcAppPicture.js +14 -7
  83. package/dist/cjs/elements/apps/SwcAppPicture.js.map +2 -2
  84. package/dist/cjs/elements/apps/SwcAppPre.js +14 -7
  85. package/dist/cjs/elements/apps/SwcAppPre.js.map +2 -2
  86. package/dist/cjs/elements/apps/SwcAppProgress.js +14 -7
  87. package/dist/cjs/elements/apps/SwcAppProgress.js.map +2 -2
  88. package/dist/cjs/elements/apps/SwcAppQuote.js +14 -7
  89. package/dist/cjs/elements/apps/SwcAppQuote.js.map +2 -2
  90. package/dist/cjs/elements/apps/SwcAppScript.js +14 -7
  91. package/dist/cjs/elements/apps/SwcAppScript.js.map +2 -2
  92. package/dist/cjs/elements/apps/SwcAppSelect.js +14 -7
  93. package/dist/cjs/elements/apps/SwcAppSelect.js.map +2 -2
  94. package/dist/cjs/elements/apps/SwcAppSlot.js +14 -7
  95. package/dist/cjs/elements/apps/SwcAppSlot.js.map +2 -2
  96. package/dist/cjs/elements/apps/SwcAppSource.js +14 -7
  97. package/dist/cjs/elements/apps/SwcAppSource.js.map +2 -2
  98. package/dist/cjs/elements/apps/SwcAppSpan.js +14 -7
  99. package/dist/cjs/elements/apps/SwcAppSpan.js.map +2 -2
  100. package/dist/cjs/elements/apps/SwcAppStyle.js +14 -7
  101. package/dist/cjs/elements/apps/SwcAppStyle.js.map +2 -2
  102. package/dist/cjs/elements/apps/SwcAppTable.js +14 -7
  103. package/dist/cjs/elements/apps/SwcAppTable.js.map +2 -2
  104. package/dist/cjs/elements/apps/SwcAppTableCell.js +14 -7
  105. package/dist/cjs/elements/apps/SwcAppTableCell.js.map +2 -2
  106. package/dist/cjs/elements/apps/SwcAppTableRow.js +14 -7
  107. package/dist/cjs/elements/apps/SwcAppTableRow.js.map +2 -2
  108. package/dist/cjs/elements/apps/SwcAppTableSection.js +14 -7
  109. package/dist/cjs/elements/apps/SwcAppTableSection.js.map +2 -2
  110. package/dist/cjs/elements/apps/SwcAppTemplate.js +14 -7
  111. package/dist/cjs/elements/apps/SwcAppTemplate.js.map +2 -2
  112. package/dist/cjs/elements/apps/SwcAppTextArea.js +14 -7
  113. package/dist/cjs/elements/apps/SwcAppTextArea.js.map +2 -2
  114. package/dist/cjs/elements/apps/SwcAppTime.js +14 -7
  115. package/dist/cjs/elements/apps/SwcAppTime.js.map +2 -2
  116. package/dist/cjs/elements/apps/SwcAppTitle.js +14 -7
  117. package/dist/cjs/elements/apps/SwcAppTitle.js.map +2 -2
  118. package/dist/cjs/elements/apps/SwcAppTrack.js +14 -7
  119. package/dist/cjs/elements/apps/SwcAppTrack.js.map +2 -2
  120. package/dist/cjs/elements/apps/SwcAppUl.js +14 -7
  121. package/dist/cjs/elements/apps/SwcAppUl.js.map +2 -2
  122. package/dist/cjs/elements/apps/SwcAppVideo.js +14 -7
  123. package/dist/cjs/elements/apps/SwcAppVideo.js.map +2 -2
  124. package/dist/cjs/elements/base/SwcHTMLAnchorElementBase.js +17 -8
  125. package/dist/cjs/elements/base/SwcHTMLAnchorElementBase.js.map +2 -2
  126. package/dist/cjs/elements/base/SwcHTMLAreaElementBase.js +17 -8
  127. package/dist/cjs/elements/base/SwcHTMLAreaElementBase.js.map +2 -2
  128. package/dist/cjs/elements/base/SwcHTMLAudioElementBase.js +17 -8
  129. package/dist/cjs/elements/base/SwcHTMLAudioElementBase.js.map +2 -2
  130. package/dist/cjs/elements/base/SwcHTMLBaseElementBase.js +17 -8
  131. package/dist/cjs/elements/base/SwcHTMLBaseElementBase.js.map +2 -2
  132. package/dist/cjs/elements/base/SwcHTMLBodyElementBase.js +17 -8
  133. package/dist/cjs/elements/base/SwcHTMLBodyElementBase.js.map +2 -2
  134. package/dist/cjs/elements/base/SwcHTMLButtonElementBase.js +17 -8
  135. package/dist/cjs/elements/base/SwcHTMLButtonElementBase.js.map +2 -2
  136. package/dist/cjs/elements/base/SwcHTMLCanvasElementBase.js +17 -8
  137. package/dist/cjs/elements/base/SwcHTMLCanvasElementBase.js.map +2 -2
  138. package/dist/cjs/elements/base/SwcHTMLDListElementBase.js +17 -8
  139. package/dist/cjs/elements/base/SwcHTMLDListElementBase.js.map +2 -2
  140. package/dist/cjs/elements/base/SwcHTMLDataElementBase.js +17 -8
  141. package/dist/cjs/elements/base/SwcHTMLDataElementBase.js.map +2 -2
  142. package/dist/cjs/elements/base/SwcHTMLDataListElementBase.js +17 -8
  143. package/dist/cjs/elements/base/SwcHTMLDataListElementBase.js.map +2 -2
  144. package/dist/cjs/elements/base/SwcHTMLDetailsElementBase.js +17 -8
  145. package/dist/cjs/elements/base/SwcHTMLDetailsElementBase.js.map +2 -2
  146. package/dist/cjs/elements/base/SwcHTMLDialogElementBase.js +17 -8
  147. package/dist/cjs/elements/base/SwcHTMLDialogElementBase.js.map +2 -2
  148. package/dist/cjs/elements/base/SwcHTMLDivElementBase.js +17 -8
  149. package/dist/cjs/elements/base/SwcHTMLDivElementBase.js.map +2 -2
  150. package/dist/cjs/elements/base/SwcHTMLElementBase.js +17 -8
  151. package/dist/cjs/elements/base/SwcHTMLElementBase.js.map +2 -2
  152. package/dist/cjs/elements/base/SwcHTMLEmbedElementBase.js +17 -8
  153. package/dist/cjs/elements/base/SwcHTMLEmbedElementBase.js.map +2 -2
  154. package/dist/cjs/elements/base/SwcHTMLFieldSetElementBase.js +17 -8
  155. package/dist/cjs/elements/base/SwcHTMLFieldSetElementBase.js.map +2 -2
  156. package/dist/cjs/elements/base/SwcHTMLFormElementBase.js +17 -8
  157. package/dist/cjs/elements/base/SwcHTMLFormElementBase.js.map +2 -2
  158. package/dist/cjs/elements/base/SwcHTMLHRElementBase.js +17 -8
  159. package/dist/cjs/elements/base/SwcHTMLHRElementBase.js.map +2 -2
  160. package/dist/cjs/elements/base/SwcHTMLHeadingElementBase.js +17 -8
  161. package/dist/cjs/elements/base/SwcHTMLHeadingElementBase.js.map +2 -2
  162. package/dist/cjs/elements/base/SwcHTMLIFrameElementBase.js +17 -8
  163. package/dist/cjs/elements/base/SwcHTMLIFrameElementBase.js.map +2 -2
  164. package/dist/cjs/elements/base/SwcHTMLImageElementBase.js +17 -8
  165. package/dist/cjs/elements/base/SwcHTMLImageElementBase.js.map +2 -2
  166. package/dist/cjs/elements/base/SwcHTMLInputElementBase.js +17 -8
  167. package/dist/cjs/elements/base/SwcHTMLInputElementBase.js.map +2 -2
  168. package/dist/cjs/elements/base/SwcHTMLLIElementBase.js +17 -8
  169. package/dist/cjs/elements/base/SwcHTMLLIElementBase.js.map +2 -2
  170. package/dist/cjs/elements/base/SwcHTMLLabelElementBase.js +17 -8
  171. package/dist/cjs/elements/base/SwcHTMLLabelElementBase.js.map +2 -2
  172. package/dist/cjs/elements/base/SwcHTMLLegendElementBase.js +17 -8
  173. package/dist/cjs/elements/base/SwcHTMLLegendElementBase.js.map +2 -2
  174. package/dist/cjs/elements/base/SwcHTMLLinkElementBase.js +17 -8
  175. package/dist/cjs/elements/base/SwcHTMLLinkElementBase.js.map +2 -2
  176. package/dist/cjs/elements/base/SwcHTMLMapElementBase.js +17 -8
  177. package/dist/cjs/elements/base/SwcHTMLMapElementBase.js.map +2 -2
  178. package/dist/cjs/elements/base/SwcHTMLMetaElementBase.js +17 -8
  179. package/dist/cjs/elements/base/SwcHTMLMetaElementBase.js.map +2 -2
  180. package/dist/cjs/elements/base/SwcHTMLMeterElementBase.js +17 -8
  181. package/dist/cjs/elements/base/SwcHTMLMeterElementBase.js.map +2 -2
  182. package/dist/cjs/elements/base/SwcHTMLModElementBase.js +17 -8
  183. package/dist/cjs/elements/base/SwcHTMLModElementBase.js.map +2 -2
  184. package/dist/cjs/elements/base/SwcHTMLOListElementBase.js +17 -8
  185. package/dist/cjs/elements/base/SwcHTMLOListElementBase.js.map +2 -2
  186. package/dist/cjs/elements/base/SwcHTMLObjectElementBase.js +17 -8
  187. package/dist/cjs/elements/base/SwcHTMLObjectElementBase.js.map +2 -2
  188. package/dist/cjs/elements/base/SwcHTMLOptGroupElementBase.js +17 -8
  189. package/dist/cjs/elements/base/SwcHTMLOptGroupElementBase.js.map +2 -2
  190. package/dist/cjs/elements/base/SwcHTMLOptionElementBase.js +17 -8
  191. package/dist/cjs/elements/base/SwcHTMLOptionElementBase.js.map +2 -2
  192. package/dist/cjs/elements/base/SwcHTMLOutputElementBase.js +17 -8
  193. package/dist/cjs/elements/base/SwcHTMLOutputElementBase.js.map +2 -2
  194. package/dist/cjs/elements/base/SwcHTMLParagraphElementBase.js +17 -8
  195. package/dist/cjs/elements/base/SwcHTMLParagraphElementBase.js.map +2 -2
  196. package/dist/cjs/elements/base/SwcHTMLParamElementBase.js +17 -8
  197. package/dist/cjs/elements/base/SwcHTMLParamElementBase.js.map +2 -2
  198. package/dist/cjs/elements/base/SwcHTMLPictureElementBase.js +17 -8
  199. package/dist/cjs/elements/base/SwcHTMLPictureElementBase.js.map +2 -2
  200. package/dist/cjs/elements/base/SwcHTMLPreElementBase.js +17 -8
  201. package/dist/cjs/elements/base/SwcHTMLPreElementBase.js.map +2 -2
  202. package/dist/cjs/elements/base/SwcHTMLProgressElementBase.js +17 -8
  203. package/dist/cjs/elements/base/SwcHTMLProgressElementBase.js.map +2 -2
  204. package/dist/cjs/elements/base/SwcHTMLQuoteElementBase.js +17 -8
  205. package/dist/cjs/elements/base/SwcHTMLQuoteElementBase.js.map +2 -2
  206. package/dist/cjs/elements/base/SwcHTMLScriptElementBase.js +17 -8
  207. package/dist/cjs/elements/base/SwcHTMLScriptElementBase.js.map +2 -2
  208. package/dist/cjs/elements/base/SwcHTMLSelectElementBase.js +17 -8
  209. package/dist/cjs/elements/base/SwcHTMLSelectElementBase.js.map +2 -2
  210. package/dist/cjs/elements/base/SwcHTMLSlotElementBase.js +17 -8
  211. package/dist/cjs/elements/base/SwcHTMLSlotElementBase.js.map +2 -2
  212. package/dist/cjs/elements/base/SwcHTMLSourceElementBase.js +17 -8
  213. package/dist/cjs/elements/base/SwcHTMLSourceElementBase.js.map +2 -2
  214. package/dist/cjs/elements/base/SwcHTMLSpanElementBase.js +17 -8
  215. package/dist/cjs/elements/base/SwcHTMLSpanElementBase.js.map +2 -2
  216. package/dist/cjs/elements/base/SwcHTMLStyleElementBase.js +17 -8
  217. package/dist/cjs/elements/base/SwcHTMLStyleElementBase.js.map +2 -2
  218. package/dist/cjs/elements/base/SwcHTMLTableCellElementBase.js +17 -8
  219. package/dist/cjs/elements/base/SwcHTMLTableCellElementBase.js.map +2 -2
  220. package/dist/cjs/elements/base/SwcHTMLTableElementBase.js +17 -8
  221. package/dist/cjs/elements/base/SwcHTMLTableElementBase.js.map +2 -2
  222. package/dist/cjs/elements/base/SwcHTMLTableRowElementBase.js +17 -8
  223. package/dist/cjs/elements/base/SwcHTMLTableRowElementBase.js.map +2 -2
  224. package/dist/cjs/elements/base/SwcHTMLTableSectionElementBase.js +17 -8
  225. package/dist/cjs/elements/base/SwcHTMLTableSectionElementBase.js.map +2 -2
  226. package/dist/cjs/elements/base/SwcHTMLTemplateElementBase.js +17 -8
  227. package/dist/cjs/elements/base/SwcHTMLTemplateElementBase.js.map +2 -2
  228. package/dist/cjs/elements/base/SwcHTMLTextAreaElementBase.js +17 -8
  229. package/dist/cjs/elements/base/SwcHTMLTextAreaElementBase.js.map +2 -2
  230. package/dist/cjs/elements/base/SwcHTMLTimeElementBase.js +17 -8
  231. package/dist/cjs/elements/base/SwcHTMLTimeElementBase.js.map +2 -2
  232. package/dist/cjs/elements/base/SwcHTMLTitleElementBase.js +17 -8
  233. package/dist/cjs/elements/base/SwcHTMLTitleElementBase.js.map +2 -2
  234. package/dist/cjs/elements/base/SwcHTMLTrackElementBase.js +17 -8
  235. package/dist/cjs/elements/base/SwcHTMLTrackElementBase.js.map +2 -2
  236. package/dist/cjs/elements/base/SwcHTMLUListElementBase.js +17 -8
  237. package/dist/cjs/elements/base/SwcHTMLUListElementBase.js.map +2 -2
  238. package/dist/cjs/elements/base/SwcHTMLVideoElementBase.js +17 -8
  239. package/dist/cjs/elements/base/SwcHTMLVideoElementBase.js.map +2 -2
  240. package/dist/cjs/elements/index.js +1 -0
  241. package/dist/cjs/elements/index.js.map +2 -2
  242. package/dist/cjs/index.js +2 -17
  243. package/dist/cjs/index.js.map +2 -2
  244. package/dist/cjs/router/ElementRouter.js +172 -0
  245. package/dist/cjs/router/ElementRouter.js.map +7 -0
  246. package/dist/cjs/utils/Utils.js +44 -0
  247. package/dist/cjs/utils/Utils.js.map +2 -2
  248. package/dist/esm/decorators/elementDefine.js +88 -82
  249. package/dist/esm/decorators/elementDefine.js.map +3 -3
  250. package/dist/esm/decorators/index.js +10 -0
  251. package/dist/esm/decorators/index.js.map +7 -0
  252. package/dist/esm/elements/SwcInterfaces.js +16 -0
  253. package/dist/esm/elements/SwcInterfaces.js.map +7 -0
  254. package/dist/esm/elements/apps/SwcApp.js +14 -7
  255. package/dist/esm/elements/apps/SwcApp.js.map +2 -2
  256. package/dist/esm/elements/apps/SwcAppAnchor.js +14 -7
  257. package/dist/esm/elements/apps/SwcAppAnchor.js.map +2 -2
  258. package/dist/esm/elements/apps/SwcAppArea.js +14 -7
  259. package/dist/esm/elements/apps/SwcAppArea.js.map +2 -2
  260. package/dist/esm/elements/apps/SwcAppAudio.js +14 -7
  261. package/dist/esm/elements/apps/SwcAppAudio.js.map +2 -2
  262. package/dist/esm/elements/apps/SwcAppBase.js +14 -7
  263. package/dist/esm/elements/apps/SwcAppBase.js.map +2 -2
  264. package/dist/esm/elements/apps/SwcAppBody.js +14 -7
  265. package/dist/esm/elements/apps/SwcAppBody.js.map +2 -2
  266. package/dist/esm/elements/apps/SwcAppButton.js +14 -7
  267. package/dist/esm/elements/apps/SwcAppButton.js.map +2 -2
  268. package/dist/esm/elements/apps/SwcAppCanvas.js +14 -7
  269. package/dist/esm/elements/apps/SwcAppCanvas.js.map +2 -2
  270. package/dist/esm/elements/apps/SwcAppData.js +14 -7
  271. package/dist/esm/elements/apps/SwcAppData.js.map +2 -2
  272. package/dist/esm/elements/apps/SwcAppDataList.js +14 -7
  273. package/dist/esm/elements/apps/SwcAppDataList.js.map +2 -2
  274. package/dist/esm/elements/apps/SwcAppDetails.js +14 -7
  275. package/dist/esm/elements/apps/SwcAppDetails.js.map +2 -2
  276. package/dist/esm/elements/apps/SwcAppDialog.js +14 -7
  277. package/dist/esm/elements/apps/SwcAppDialog.js.map +2 -2
  278. package/dist/esm/elements/apps/SwcAppDiv.js +14 -7
  279. package/dist/esm/elements/apps/SwcAppDiv.js.map +2 -2
  280. package/dist/esm/elements/apps/SwcAppDl.js +14 -7
  281. package/dist/esm/elements/apps/SwcAppDl.js.map +2 -2
  282. package/dist/esm/elements/apps/SwcAppEmbed.js +14 -7
  283. package/dist/esm/elements/apps/SwcAppEmbed.js.map +2 -2
  284. package/dist/esm/elements/apps/SwcAppFieldSet.js +14 -7
  285. package/dist/esm/elements/apps/SwcAppFieldSet.js.map +2 -2
  286. package/dist/esm/elements/apps/SwcAppForm.js +14 -7
  287. package/dist/esm/elements/apps/SwcAppForm.js.map +2 -2
  288. package/dist/esm/elements/apps/SwcAppHeading.js +14 -7
  289. package/dist/esm/elements/apps/SwcAppHeading.js.map +2 -2
  290. package/dist/esm/elements/apps/SwcAppHr.js +14 -7
  291. package/dist/esm/elements/apps/SwcAppHr.js.map +2 -2
  292. package/dist/esm/elements/apps/SwcAppIFrame.js +14 -7
  293. package/dist/esm/elements/apps/SwcAppIFrame.js.map +2 -2
  294. package/dist/esm/elements/apps/SwcAppImage.js +14 -7
  295. package/dist/esm/elements/apps/SwcAppImage.js.map +2 -2
  296. package/dist/esm/elements/apps/SwcAppInput.js +14 -7
  297. package/dist/esm/elements/apps/SwcAppInput.js.map +2 -2
  298. package/dist/esm/elements/apps/SwcAppLabel.js +14 -7
  299. package/dist/esm/elements/apps/SwcAppLabel.js.map +2 -2
  300. package/dist/esm/elements/apps/SwcAppLegend.js +14 -7
  301. package/dist/esm/elements/apps/SwcAppLegend.js.map +2 -2
  302. package/dist/esm/elements/apps/SwcAppLi.js +14 -7
  303. package/dist/esm/elements/apps/SwcAppLi.js.map +2 -2
  304. package/dist/esm/elements/apps/SwcAppLink.js +14 -7
  305. package/dist/esm/elements/apps/SwcAppLink.js.map +2 -2
  306. package/dist/esm/elements/apps/SwcAppMap.js +14 -7
  307. package/dist/esm/elements/apps/SwcAppMap.js.map +2 -2
  308. package/dist/esm/elements/apps/SwcAppMeta.js +14 -7
  309. package/dist/esm/elements/apps/SwcAppMeta.js.map +2 -2
  310. package/dist/esm/elements/apps/SwcAppMeter.js +14 -7
  311. package/dist/esm/elements/apps/SwcAppMeter.js.map +2 -2
  312. package/dist/esm/elements/apps/SwcAppMod.js +14 -7
  313. package/dist/esm/elements/apps/SwcAppMod.js.map +2 -2
  314. package/dist/esm/elements/apps/SwcAppObject.js +14 -7
  315. package/dist/esm/elements/apps/SwcAppObject.js.map +2 -2
  316. package/dist/esm/elements/apps/SwcAppOl.js +14 -7
  317. package/dist/esm/elements/apps/SwcAppOl.js.map +2 -2
  318. package/dist/esm/elements/apps/SwcAppOptGroup.js +14 -7
  319. package/dist/esm/elements/apps/SwcAppOptGroup.js.map +2 -2
  320. package/dist/esm/elements/apps/SwcAppOption.js +14 -7
  321. package/dist/esm/elements/apps/SwcAppOption.js.map +2 -2
  322. package/dist/esm/elements/apps/SwcAppOutput.js +14 -7
  323. package/dist/esm/elements/apps/SwcAppOutput.js.map +2 -2
  324. package/dist/esm/elements/apps/SwcAppParagraph.js +14 -7
  325. package/dist/esm/elements/apps/SwcAppParagraph.js.map +2 -2
  326. package/dist/esm/elements/apps/SwcAppParam.js +14 -7
  327. package/dist/esm/elements/apps/SwcAppParam.js.map +2 -2
  328. package/dist/esm/elements/apps/SwcAppPicture.js +14 -7
  329. package/dist/esm/elements/apps/SwcAppPicture.js.map +2 -2
  330. package/dist/esm/elements/apps/SwcAppPre.js +14 -7
  331. package/dist/esm/elements/apps/SwcAppPre.js.map +2 -2
  332. package/dist/esm/elements/apps/SwcAppProgress.js +14 -7
  333. package/dist/esm/elements/apps/SwcAppProgress.js.map +2 -2
  334. package/dist/esm/elements/apps/SwcAppQuote.js +14 -7
  335. package/dist/esm/elements/apps/SwcAppQuote.js.map +2 -2
  336. package/dist/esm/elements/apps/SwcAppScript.js +14 -7
  337. package/dist/esm/elements/apps/SwcAppScript.js.map +2 -2
  338. package/dist/esm/elements/apps/SwcAppSelect.js +14 -7
  339. package/dist/esm/elements/apps/SwcAppSelect.js.map +2 -2
  340. package/dist/esm/elements/apps/SwcAppSlot.js +14 -7
  341. package/dist/esm/elements/apps/SwcAppSlot.js.map +2 -2
  342. package/dist/esm/elements/apps/SwcAppSource.js +14 -7
  343. package/dist/esm/elements/apps/SwcAppSource.js.map +2 -2
  344. package/dist/esm/elements/apps/SwcAppSpan.js +14 -7
  345. package/dist/esm/elements/apps/SwcAppSpan.js.map +2 -2
  346. package/dist/esm/elements/apps/SwcAppStyle.js +14 -7
  347. package/dist/esm/elements/apps/SwcAppStyle.js.map +2 -2
  348. package/dist/esm/elements/apps/SwcAppTable.js +14 -7
  349. package/dist/esm/elements/apps/SwcAppTable.js.map +2 -2
  350. package/dist/esm/elements/apps/SwcAppTableCell.js +14 -7
  351. package/dist/esm/elements/apps/SwcAppTableCell.js.map +2 -2
  352. package/dist/esm/elements/apps/SwcAppTableRow.js +14 -7
  353. package/dist/esm/elements/apps/SwcAppTableRow.js.map +2 -2
  354. package/dist/esm/elements/apps/SwcAppTableSection.js +14 -7
  355. package/dist/esm/elements/apps/SwcAppTableSection.js.map +2 -2
  356. package/dist/esm/elements/apps/SwcAppTemplate.js +14 -7
  357. package/dist/esm/elements/apps/SwcAppTemplate.js.map +2 -2
  358. package/dist/esm/elements/apps/SwcAppTextArea.js +14 -7
  359. package/dist/esm/elements/apps/SwcAppTextArea.js.map +2 -2
  360. package/dist/esm/elements/apps/SwcAppTime.js +14 -7
  361. package/dist/esm/elements/apps/SwcAppTime.js.map +2 -2
  362. package/dist/esm/elements/apps/SwcAppTitle.js +14 -7
  363. package/dist/esm/elements/apps/SwcAppTitle.js.map +2 -2
  364. package/dist/esm/elements/apps/SwcAppTrack.js +14 -7
  365. package/dist/esm/elements/apps/SwcAppTrack.js.map +2 -2
  366. package/dist/esm/elements/apps/SwcAppUl.js +14 -7
  367. package/dist/esm/elements/apps/SwcAppUl.js.map +2 -2
  368. package/dist/esm/elements/apps/SwcAppVideo.js +14 -7
  369. package/dist/esm/elements/apps/SwcAppVideo.js.map +2 -2
  370. package/dist/esm/elements/base/SwcHTMLAnchorElementBase.js +17 -8
  371. package/dist/esm/elements/base/SwcHTMLAnchorElementBase.js.map +2 -2
  372. package/dist/esm/elements/base/SwcHTMLAreaElementBase.js +17 -8
  373. package/dist/esm/elements/base/SwcHTMLAreaElementBase.js.map +2 -2
  374. package/dist/esm/elements/base/SwcHTMLAudioElementBase.js +17 -8
  375. package/dist/esm/elements/base/SwcHTMLAudioElementBase.js.map +2 -2
  376. package/dist/esm/elements/base/SwcHTMLBaseElementBase.js +17 -8
  377. package/dist/esm/elements/base/SwcHTMLBaseElementBase.js.map +2 -2
  378. package/dist/esm/elements/base/SwcHTMLBodyElementBase.js +17 -8
  379. package/dist/esm/elements/base/SwcHTMLBodyElementBase.js.map +2 -2
  380. package/dist/esm/elements/base/SwcHTMLButtonElementBase.js +17 -8
  381. package/dist/esm/elements/base/SwcHTMLButtonElementBase.js.map +2 -2
  382. package/dist/esm/elements/base/SwcHTMLCanvasElementBase.js +17 -8
  383. package/dist/esm/elements/base/SwcHTMLCanvasElementBase.js.map +2 -2
  384. package/dist/esm/elements/base/SwcHTMLDListElementBase.js +17 -8
  385. package/dist/esm/elements/base/SwcHTMLDListElementBase.js.map +2 -2
  386. package/dist/esm/elements/base/SwcHTMLDataElementBase.js +17 -8
  387. package/dist/esm/elements/base/SwcHTMLDataElementBase.js.map +2 -2
  388. package/dist/esm/elements/base/SwcHTMLDataListElementBase.js +17 -8
  389. package/dist/esm/elements/base/SwcHTMLDataListElementBase.js.map +2 -2
  390. package/dist/esm/elements/base/SwcHTMLDetailsElementBase.js +17 -8
  391. package/dist/esm/elements/base/SwcHTMLDetailsElementBase.js.map +2 -2
  392. package/dist/esm/elements/base/SwcHTMLDialogElementBase.js +17 -8
  393. package/dist/esm/elements/base/SwcHTMLDialogElementBase.js.map +2 -2
  394. package/dist/esm/elements/base/SwcHTMLDivElementBase.js +17 -8
  395. package/dist/esm/elements/base/SwcHTMLDivElementBase.js.map +2 -2
  396. package/dist/esm/elements/base/SwcHTMLElementBase.js +17 -8
  397. package/dist/esm/elements/base/SwcHTMLElementBase.js.map +2 -2
  398. package/dist/esm/elements/base/SwcHTMLEmbedElementBase.js +17 -8
  399. package/dist/esm/elements/base/SwcHTMLEmbedElementBase.js.map +2 -2
  400. package/dist/esm/elements/base/SwcHTMLFieldSetElementBase.js +17 -8
  401. package/dist/esm/elements/base/SwcHTMLFieldSetElementBase.js.map +2 -2
  402. package/dist/esm/elements/base/SwcHTMLFormElementBase.js +17 -8
  403. package/dist/esm/elements/base/SwcHTMLFormElementBase.js.map +2 -2
  404. package/dist/esm/elements/base/SwcHTMLHRElementBase.js +17 -8
  405. package/dist/esm/elements/base/SwcHTMLHRElementBase.js.map +2 -2
  406. package/dist/esm/elements/base/SwcHTMLHeadingElementBase.js +17 -8
  407. package/dist/esm/elements/base/SwcHTMLHeadingElementBase.js.map +2 -2
  408. package/dist/esm/elements/base/SwcHTMLIFrameElementBase.js +17 -8
  409. package/dist/esm/elements/base/SwcHTMLIFrameElementBase.js.map +2 -2
  410. package/dist/esm/elements/base/SwcHTMLImageElementBase.js +17 -8
  411. package/dist/esm/elements/base/SwcHTMLImageElementBase.js.map +2 -2
  412. package/dist/esm/elements/base/SwcHTMLInputElementBase.js +17 -8
  413. package/dist/esm/elements/base/SwcHTMLInputElementBase.js.map +2 -2
  414. package/dist/esm/elements/base/SwcHTMLLIElementBase.js +17 -8
  415. package/dist/esm/elements/base/SwcHTMLLIElementBase.js.map +2 -2
  416. package/dist/esm/elements/base/SwcHTMLLabelElementBase.js +17 -8
  417. package/dist/esm/elements/base/SwcHTMLLabelElementBase.js.map +2 -2
  418. package/dist/esm/elements/base/SwcHTMLLegendElementBase.js +17 -8
  419. package/dist/esm/elements/base/SwcHTMLLegendElementBase.js.map +2 -2
  420. package/dist/esm/elements/base/SwcHTMLLinkElementBase.js +17 -8
  421. package/dist/esm/elements/base/SwcHTMLLinkElementBase.js.map +2 -2
  422. package/dist/esm/elements/base/SwcHTMLMapElementBase.js +17 -8
  423. package/dist/esm/elements/base/SwcHTMLMapElementBase.js.map +2 -2
  424. package/dist/esm/elements/base/SwcHTMLMetaElementBase.js +17 -8
  425. package/dist/esm/elements/base/SwcHTMLMetaElementBase.js.map +2 -2
  426. package/dist/esm/elements/base/SwcHTMLMeterElementBase.js +17 -8
  427. package/dist/esm/elements/base/SwcHTMLMeterElementBase.js.map +2 -2
  428. package/dist/esm/elements/base/SwcHTMLModElementBase.js +17 -8
  429. package/dist/esm/elements/base/SwcHTMLModElementBase.js.map +2 -2
  430. package/dist/esm/elements/base/SwcHTMLOListElementBase.js +17 -8
  431. package/dist/esm/elements/base/SwcHTMLOListElementBase.js.map +2 -2
  432. package/dist/esm/elements/base/SwcHTMLObjectElementBase.js +17 -8
  433. package/dist/esm/elements/base/SwcHTMLObjectElementBase.js.map +2 -2
  434. package/dist/esm/elements/base/SwcHTMLOptGroupElementBase.js +17 -8
  435. package/dist/esm/elements/base/SwcHTMLOptGroupElementBase.js.map +2 -2
  436. package/dist/esm/elements/base/SwcHTMLOptionElementBase.js +17 -8
  437. package/dist/esm/elements/base/SwcHTMLOptionElementBase.js.map +2 -2
  438. package/dist/esm/elements/base/SwcHTMLOutputElementBase.js +17 -8
  439. package/dist/esm/elements/base/SwcHTMLOutputElementBase.js.map +2 -2
  440. package/dist/esm/elements/base/SwcHTMLParagraphElementBase.js +17 -8
  441. package/dist/esm/elements/base/SwcHTMLParagraphElementBase.js.map +2 -2
  442. package/dist/esm/elements/base/SwcHTMLParamElementBase.js +17 -8
  443. package/dist/esm/elements/base/SwcHTMLParamElementBase.js.map +2 -2
  444. package/dist/esm/elements/base/SwcHTMLPictureElementBase.js +17 -8
  445. package/dist/esm/elements/base/SwcHTMLPictureElementBase.js.map +2 -2
  446. package/dist/esm/elements/base/SwcHTMLPreElementBase.js +17 -8
  447. package/dist/esm/elements/base/SwcHTMLPreElementBase.js.map +2 -2
  448. package/dist/esm/elements/base/SwcHTMLProgressElementBase.js +17 -8
  449. package/dist/esm/elements/base/SwcHTMLProgressElementBase.js.map +2 -2
  450. package/dist/esm/elements/base/SwcHTMLQuoteElementBase.js +17 -8
  451. package/dist/esm/elements/base/SwcHTMLQuoteElementBase.js.map +2 -2
  452. package/dist/esm/elements/base/SwcHTMLScriptElementBase.js +17 -8
  453. package/dist/esm/elements/base/SwcHTMLScriptElementBase.js.map +2 -2
  454. package/dist/esm/elements/base/SwcHTMLSelectElementBase.js +17 -8
  455. package/dist/esm/elements/base/SwcHTMLSelectElementBase.js.map +2 -2
  456. package/dist/esm/elements/base/SwcHTMLSlotElementBase.js +17 -8
  457. package/dist/esm/elements/base/SwcHTMLSlotElementBase.js.map +2 -2
  458. package/dist/esm/elements/base/SwcHTMLSourceElementBase.js +17 -8
  459. package/dist/esm/elements/base/SwcHTMLSourceElementBase.js.map +2 -2
  460. package/dist/esm/elements/base/SwcHTMLSpanElementBase.js +17 -8
  461. package/dist/esm/elements/base/SwcHTMLSpanElementBase.js.map +2 -2
  462. package/dist/esm/elements/base/SwcHTMLStyleElementBase.js +17 -8
  463. package/dist/esm/elements/base/SwcHTMLStyleElementBase.js.map +2 -2
  464. package/dist/esm/elements/base/SwcHTMLTableCellElementBase.js +17 -8
  465. package/dist/esm/elements/base/SwcHTMLTableCellElementBase.js.map +2 -2
  466. package/dist/esm/elements/base/SwcHTMLTableElementBase.js +17 -8
  467. package/dist/esm/elements/base/SwcHTMLTableElementBase.js.map +2 -2
  468. package/dist/esm/elements/base/SwcHTMLTableRowElementBase.js +17 -8
  469. package/dist/esm/elements/base/SwcHTMLTableRowElementBase.js.map +2 -2
  470. package/dist/esm/elements/base/SwcHTMLTableSectionElementBase.js +17 -8
  471. package/dist/esm/elements/base/SwcHTMLTableSectionElementBase.js.map +2 -2
  472. package/dist/esm/elements/base/SwcHTMLTemplateElementBase.js +17 -8
  473. package/dist/esm/elements/base/SwcHTMLTemplateElementBase.js.map +2 -2
  474. package/dist/esm/elements/base/SwcHTMLTextAreaElementBase.js +17 -8
  475. package/dist/esm/elements/base/SwcHTMLTextAreaElementBase.js.map +2 -2
  476. package/dist/esm/elements/base/SwcHTMLTimeElementBase.js +17 -8
  477. package/dist/esm/elements/base/SwcHTMLTimeElementBase.js.map +2 -2
  478. package/dist/esm/elements/base/SwcHTMLTitleElementBase.js +17 -8
  479. package/dist/esm/elements/base/SwcHTMLTitleElementBase.js.map +2 -2
  480. package/dist/esm/elements/base/SwcHTMLTrackElementBase.js +17 -8
  481. package/dist/esm/elements/base/SwcHTMLTrackElementBase.js.map +2 -2
  482. package/dist/esm/elements/base/SwcHTMLUListElementBase.js +17 -8
  483. package/dist/esm/elements/base/SwcHTMLUListElementBase.js.map +2 -2
  484. package/dist/esm/elements/base/SwcHTMLVideoElementBase.js +17 -8
  485. package/dist/esm/elements/base/SwcHTMLVideoElementBase.js.map +2 -2
  486. package/dist/esm/elements/index.js +1 -0
  487. package/dist/esm/elements/index.js.map +2 -2
  488. package/dist/esm/index.js +2 -17
  489. package/dist/esm/index.js.map +2 -2
  490. package/dist/esm/router/ElementRouter.js +153 -0
  491. package/dist/esm/router/ElementRouter.js.map +7 -0
  492. package/dist/esm/utils/Utils.js +44 -0
  493. package/dist/esm/utils/Utils.js.map +2 -2
  494. package/dist/esm-bundle/dooboostore-simple-web-component.esm.js +3334 -2251
  495. package/dist/esm-bundle/dooboostore-simple-web-component.esm.js.map +4 -4
  496. package/dist/types/decorators/elementDefine.d.ts.map +1 -1
  497. package/dist/types/decorators/index.d.ts +10 -0
  498. package/dist/types/decorators/index.d.ts.map +1 -0
  499. package/dist/types/elements/SwcInterfaces.d.ts +48 -0
  500. package/dist/types/elements/SwcInterfaces.d.ts.map +1 -0
  501. package/dist/types/elements/apps/SwcApp.d.ts +3 -4
  502. package/dist/types/elements/apps/SwcApp.d.ts.map +1 -1
  503. package/dist/types/elements/apps/SwcAppAnchor.d.ts +3 -4
  504. package/dist/types/elements/apps/SwcAppAnchor.d.ts.map +1 -1
  505. package/dist/types/elements/apps/SwcAppArea.d.ts +3 -4
  506. package/dist/types/elements/apps/SwcAppArea.d.ts.map +1 -1
  507. package/dist/types/elements/apps/SwcAppAudio.d.ts +3 -4
  508. package/dist/types/elements/apps/SwcAppAudio.d.ts.map +1 -1
  509. package/dist/types/elements/apps/SwcAppBase.d.ts +3 -4
  510. package/dist/types/elements/apps/SwcAppBase.d.ts.map +1 -1
  511. package/dist/types/elements/apps/SwcAppBody.d.ts +3 -4
  512. package/dist/types/elements/apps/SwcAppBody.d.ts.map +1 -1
  513. package/dist/types/elements/apps/SwcAppButton.d.ts +3 -4
  514. package/dist/types/elements/apps/SwcAppButton.d.ts.map +1 -1
  515. package/dist/types/elements/apps/SwcAppCanvas.d.ts +3 -4
  516. package/dist/types/elements/apps/SwcAppCanvas.d.ts.map +1 -1
  517. package/dist/types/elements/apps/SwcAppData.d.ts +3 -4
  518. package/dist/types/elements/apps/SwcAppData.d.ts.map +1 -1
  519. package/dist/types/elements/apps/SwcAppDataList.d.ts +3 -4
  520. package/dist/types/elements/apps/SwcAppDataList.d.ts.map +1 -1
  521. package/dist/types/elements/apps/SwcAppDetails.d.ts +3 -4
  522. package/dist/types/elements/apps/SwcAppDetails.d.ts.map +1 -1
  523. package/dist/types/elements/apps/SwcAppDialog.d.ts +3 -4
  524. package/dist/types/elements/apps/SwcAppDialog.d.ts.map +1 -1
  525. package/dist/types/elements/apps/SwcAppDiv.d.ts +3 -4
  526. package/dist/types/elements/apps/SwcAppDiv.d.ts.map +1 -1
  527. package/dist/types/elements/apps/SwcAppDl.d.ts +3 -4
  528. package/dist/types/elements/apps/SwcAppDl.d.ts.map +1 -1
  529. package/dist/types/elements/apps/SwcAppEmbed.d.ts +3 -4
  530. package/dist/types/elements/apps/SwcAppEmbed.d.ts.map +1 -1
  531. package/dist/types/elements/apps/SwcAppFieldSet.d.ts +3 -4
  532. package/dist/types/elements/apps/SwcAppFieldSet.d.ts.map +1 -1
  533. package/dist/types/elements/apps/SwcAppForm.d.ts +3 -4
  534. package/dist/types/elements/apps/SwcAppForm.d.ts.map +1 -1
  535. package/dist/types/elements/apps/SwcAppHeading.d.ts +3 -4
  536. package/dist/types/elements/apps/SwcAppHeading.d.ts.map +1 -1
  537. package/dist/types/elements/apps/SwcAppHr.d.ts +3 -4
  538. package/dist/types/elements/apps/SwcAppHr.d.ts.map +1 -1
  539. package/dist/types/elements/apps/SwcAppIFrame.d.ts +3 -4
  540. package/dist/types/elements/apps/SwcAppIFrame.d.ts.map +1 -1
  541. package/dist/types/elements/apps/SwcAppImage.d.ts +3 -4
  542. package/dist/types/elements/apps/SwcAppImage.d.ts.map +1 -1
  543. package/dist/types/elements/apps/SwcAppInput.d.ts +3 -4
  544. package/dist/types/elements/apps/SwcAppInput.d.ts.map +1 -1
  545. package/dist/types/elements/apps/SwcAppLabel.d.ts +3 -4
  546. package/dist/types/elements/apps/SwcAppLabel.d.ts.map +1 -1
  547. package/dist/types/elements/apps/SwcAppLegend.d.ts +3 -4
  548. package/dist/types/elements/apps/SwcAppLegend.d.ts.map +1 -1
  549. package/dist/types/elements/apps/SwcAppLi.d.ts +3 -4
  550. package/dist/types/elements/apps/SwcAppLi.d.ts.map +1 -1
  551. package/dist/types/elements/apps/SwcAppLink.d.ts +3 -4
  552. package/dist/types/elements/apps/SwcAppLink.d.ts.map +1 -1
  553. package/dist/types/elements/apps/SwcAppMap.d.ts +3 -4
  554. package/dist/types/elements/apps/SwcAppMap.d.ts.map +1 -1
  555. package/dist/types/elements/apps/SwcAppMeta.d.ts +3 -4
  556. package/dist/types/elements/apps/SwcAppMeta.d.ts.map +1 -1
  557. package/dist/types/elements/apps/SwcAppMeter.d.ts +3 -4
  558. package/dist/types/elements/apps/SwcAppMeter.d.ts.map +1 -1
  559. package/dist/types/elements/apps/SwcAppMod.d.ts +3 -4
  560. package/dist/types/elements/apps/SwcAppMod.d.ts.map +1 -1
  561. package/dist/types/elements/apps/SwcAppObject.d.ts +3 -4
  562. package/dist/types/elements/apps/SwcAppObject.d.ts.map +1 -1
  563. package/dist/types/elements/apps/SwcAppOl.d.ts +3 -4
  564. package/dist/types/elements/apps/SwcAppOl.d.ts.map +1 -1
  565. package/dist/types/elements/apps/SwcAppOptGroup.d.ts +3 -4
  566. package/dist/types/elements/apps/SwcAppOptGroup.d.ts.map +1 -1
  567. package/dist/types/elements/apps/SwcAppOption.d.ts +3 -4
  568. package/dist/types/elements/apps/SwcAppOption.d.ts.map +1 -1
  569. package/dist/types/elements/apps/SwcAppOutput.d.ts +3 -4
  570. package/dist/types/elements/apps/SwcAppOutput.d.ts.map +1 -1
  571. package/dist/types/elements/apps/SwcAppParagraph.d.ts +3 -4
  572. package/dist/types/elements/apps/SwcAppParagraph.d.ts.map +1 -1
  573. package/dist/types/elements/apps/SwcAppParam.d.ts +3 -4
  574. package/dist/types/elements/apps/SwcAppParam.d.ts.map +1 -1
  575. package/dist/types/elements/apps/SwcAppPicture.d.ts +3 -4
  576. package/dist/types/elements/apps/SwcAppPicture.d.ts.map +1 -1
  577. package/dist/types/elements/apps/SwcAppPre.d.ts +3 -4
  578. package/dist/types/elements/apps/SwcAppPre.d.ts.map +1 -1
  579. package/dist/types/elements/apps/SwcAppProgress.d.ts +3 -4
  580. package/dist/types/elements/apps/SwcAppProgress.d.ts.map +1 -1
  581. package/dist/types/elements/apps/SwcAppQuote.d.ts +3 -4
  582. package/dist/types/elements/apps/SwcAppQuote.d.ts.map +1 -1
  583. package/dist/types/elements/apps/SwcAppScript.d.ts +3 -4
  584. package/dist/types/elements/apps/SwcAppScript.d.ts.map +1 -1
  585. package/dist/types/elements/apps/SwcAppSelect.d.ts +3 -4
  586. package/dist/types/elements/apps/SwcAppSelect.d.ts.map +1 -1
  587. package/dist/types/elements/apps/SwcAppSlot.d.ts +3 -4
  588. package/dist/types/elements/apps/SwcAppSlot.d.ts.map +1 -1
  589. package/dist/types/elements/apps/SwcAppSource.d.ts +3 -4
  590. package/dist/types/elements/apps/SwcAppSource.d.ts.map +1 -1
  591. package/dist/types/elements/apps/SwcAppSpan.d.ts +3 -4
  592. package/dist/types/elements/apps/SwcAppSpan.d.ts.map +1 -1
  593. package/dist/types/elements/apps/SwcAppStyle.d.ts +3 -4
  594. package/dist/types/elements/apps/SwcAppStyle.d.ts.map +1 -1
  595. package/dist/types/elements/apps/SwcAppTable.d.ts +3 -4
  596. package/dist/types/elements/apps/SwcAppTable.d.ts.map +1 -1
  597. package/dist/types/elements/apps/SwcAppTableCell.d.ts +3 -4
  598. package/dist/types/elements/apps/SwcAppTableCell.d.ts.map +1 -1
  599. package/dist/types/elements/apps/SwcAppTableRow.d.ts +3 -4
  600. package/dist/types/elements/apps/SwcAppTableRow.d.ts.map +1 -1
  601. package/dist/types/elements/apps/SwcAppTableSection.d.ts +3 -4
  602. package/dist/types/elements/apps/SwcAppTableSection.d.ts.map +1 -1
  603. package/dist/types/elements/apps/SwcAppTemplate.d.ts +3 -4
  604. package/dist/types/elements/apps/SwcAppTemplate.d.ts.map +1 -1
  605. package/dist/types/elements/apps/SwcAppTextArea.d.ts +3 -4
  606. package/dist/types/elements/apps/SwcAppTextArea.d.ts.map +1 -1
  607. package/dist/types/elements/apps/SwcAppTime.d.ts +3 -4
  608. package/dist/types/elements/apps/SwcAppTime.d.ts.map +1 -1
  609. package/dist/types/elements/apps/SwcAppTitle.d.ts +3 -4
  610. package/dist/types/elements/apps/SwcAppTitle.d.ts.map +1 -1
  611. package/dist/types/elements/apps/SwcAppTrack.d.ts +3 -4
  612. package/dist/types/elements/apps/SwcAppTrack.d.ts.map +1 -1
  613. package/dist/types/elements/apps/SwcAppUl.d.ts +3 -4
  614. package/dist/types/elements/apps/SwcAppUl.d.ts.map +1 -1
  615. package/dist/types/elements/apps/SwcAppVideo.d.ts +3 -4
  616. package/dist/types/elements/apps/SwcAppVideo.d.ts.map +1 -1
  617. package/dist/types/elements/base/SwcHTMLAnchorElementBase.d.ts +6 -3
  618. package/dist/types/elements/base/SwcHTMLAnchorElementBase.d.ts.map +1 -1
  619. package/dist/types/elements/base/SwcHTMLAreaElementBase.d.ts +6 -3
  620. package/dist/types/elements/base/SwcHTMLAreaElementBase.d.ts.map +1 -1
  621. package/dist/types/elements/base/SwcHTMLAudioElementBase.d.ts +6 -3
  622. package/dist/types/elements/base/SwcHTMLAudioElementBase.d.ts.map +1 -1
  623. package/dist/types/elements/base/SwcHTMLBaseElementBase.d.ts +6 -3
  624. package/dist/types/elements/base/SwcHTMLBaseElementBase.d.ts.map +1 -1
  625. package/dist/types/elements/base/SwcHTMLBodyElementBase.d.ts +6 -3
  626. package/dist/types/elements/base/SwcHTMLBodyElementBase.d.ts.map +1 -1
  627. package/dist/types/elements/base/SwcHTMLButtonElementBase.d.ts +6 -3
  628. package/dist/types/elements/base/SwcHTMLButtonElementBase.d.ts.map +1 -1
  629. package/dist/types/elements/base/SwcHTMLCanvasElementBase.d.ts +6 -3
  630. package/dist/types/elements/base/SwcHTMLCanvasElementBase.d.ts.map +1 -1
  631. package/dist/types/elements/base/SwcHTMLDListElementBase.d.ts +6 -3
  632. package/dist/types/elements/base/SwcHTMLDListElementBase.d.ts.map +1 -1
  633. package/dist/types/elements/base/SwcHTMLDataElementBase.d.ts +6 -3
  634. package/dist/types/elements/base/SwcHTMLDataElementBase.d.ts.map +1 -1
  635. package/dist/types/elements/base/SwcHTMLDataListElementBase.d.ts +6 -3
  636. package/dist/types/elements/base/SwcHTMLDataListElementBase.d.ts.map +1 -1
  637. package/dist/types/elements/base/SwcHTMLDetailsElementBase.d.ts +6 -3
  638. package/dist/types/elements/base/SwcHTMLDetailsElementBase.d.ts.map +1 -1
  639. package/dist/types/elements/base/SwcHTMLDialogElementBase.d.ts +6 -3
  640. package/dist/types/elements/base/SwcHTMLDialogElementBase.d.ts.map +1 -1
  641. package/dist/types/elements/base/SwcHTMLDivElementBase.d.ts +6 -3
  642. package/dist/types/elements/base/SwcHTMLDivElementBase.d.ts.map +1 -1
  643. package/dist/types/elements/base/SwcHTMLElementBase.d.ts +6 -3
  644. package/dist/types/elements/base/SwcHTMLElementBase.d.ts.map +1 -1
  645. package/dist/types/elements/base/SwcHTMLEmbedElementBase.d.ts +6 -3
  646. package/dist/types/elements/base/SwcHTMLEmbedElementBase.d.ts.map +1 -1
  647. package/dist/types/elements/base/SwcHTMLFieldSetElementBase.d.ts +6 -3
  648. package/dist/types/elements/base/SwcHTMLFieldSetElementBase.d.ts.map +1 -1
  649. package/dist/types/elements/base/SwcHTMLFormElementBase.d.ts +6 -3
  650. package/dist/types/elements/base/SwcHTMLFormElementBase.d.ts.map +1 -1
  651. package/dist/types/elements/base/SwcHTMLHRElementBase.d.ts +6 -3
  652. package/dist/types/elements/base/SwcHTMLHRElementBase.d.ts.map +1 -1
  653. package/dist/types/elements/base/SwcHTMLHeadingElementBase.d.ts +6 -3
  654. package/dist/types/elements/base/SwcHTMLHeadingElementBase.d.ts.map +1 -1
  655. package/dist/types/elements/base/SwcHTMLIFrameElementBase.d.ts +6 -3
  656. package/dist/types/elements/base/SwcHTMLIFrameElementBase.d.ts.map +1 -1
  657. package/dist/types/elements/base/SwcHTMLImageElementBase.d.ts +6 -3
  658. package/dist/types/elements/base/SwcHTMLImageElementBase.d.ts.map +1 -1
  659. package/dist/types/elements/base/SwcHTMLInputElementBase.d.ts +6 -3
  660. package/dist/types/elements/base/SwcHTMLInputElementBase.d.ts.map +1 -1
  661. package/dist/types/elements/base/SwcHTMLLIElementBase.d.ts +6 -3
  662. package/dist/types/elements/base/SwcHTMLLIElementBase.d.ts.map +1 -1
  663. package/dist/types/elements/base/SwcHTMLLabelElementBase.d.ts +6 -3
  664. package/dist/types/elements/base/SwcHTMLLabelElementBase.d.ts.map +1 -1
  665. package/dist/types/elements/base/SwcHTMLLegendElementBase.d.ts +6 -3
  666. package/dist/types/elements/base/SwcHTMLLegendElementBase.d.ts.map +1 -1
  667. package/dist/types/elements/base/SwcHTMLLinkElementBase.d.ts +6 -3
  668. package/dist/types/elements/base/SwcHTMLLinkElementBase.d.ts.map +1 -1
  669. package/dist/types/elements/base/SwcHTMLMapElementBase.d.ts +6 -3
  670. package/dist/types/elements/base/SwcHTMLMapElementBase.d.ts.map +1 -1
  671. package/dist/types/elements/base/SwcHTMLMetaElementBase.d.ts +6 -3
  672. package/dist/types/elements/base/SwcHTMLMetaElementBase.d.ts.map +1 -1
  673. package/dist/types/elements/base/SwcHTMLMeterElementBase.d.ts +6 -3
  674. package/dist/types/elements/base/SwcHTMLMeterElementBase.d.ts.map +1 -1
  675. package/dist/types/elements/base/SwcHTMLModElementBase.d.ts +6 -3
  676. package/dist/types/elements/base/SwcHTMLModElementBase.d.ts.map +1 -1
  677. package/dist/types/elements/base/SwcHTMLOListElementBase.d.ts +6 -3
  678. package/dist/types/elements/base/SwcHTMLOListElementBase.d.ts.map +1 -1
  679. package/dist/types/elements/base/SwcHTMLObjectElementBase.d.ts +6 -3
  680. package/dist/types/elements/base/SwcHTMLObjectElementBase.d.ts.map +1 -1
  681. package/dist/types/elements/base/SwcHTMLOptGroupElementBase.d.ts +6 -3
  682. package/dist/types/elements/base/SwcHTMLOptGroupElementBase.d.ts.map +1 -1
  683. package/dist/types/elements/base/SwcHTMLOptionElementBase.d.ts +6 -3
  684. package/dist/types/elements/base/SwcHTMLOptionElementBase.d.ts.map +1 -1
  685. package/dist/types/elements/base/SwcHTMLOutputElementBase.d.ts +6 -3
  686. package/dist/types/elements/base/SwcHTMLOutputElementBase.d.ts.map +1 -1
  687. package/dist/types/elements/base/SwcHTMLParagraphElementBase.d.ts +6 -3
  688. package/dist/types/elements/base/SwcHTMLParagraphElementBase.d.ts.map +1 -1
  689. package/dist/types/elements/base/SwcHTMLParamElementBase.d.ts +6 -3
  690. package/dist/types/elements/base/SwcHTMLParamElementBase.d.ts.map +1 -1
  691. package/dist/types/elements/base/SwcHTMLPictureElementBase.d.ts +6 -3
  692. package/dist/types/elements/base/SwcHTMLPictureElementBase.d.ts.map +1 -1
  693. package/dist/types/elements/base/SwcHTMLPreElementBase.d.ts +6 -3
  694. package/dist/types/elements/base/SwcHTMLPreElementBase.d.ts.map +1 -1
  695. package/dist/types/elements/base/SwcHTMLProgressElementBase.d.ts +6 -3
  696. package/dist/types/elements/base/SwcHTMLProgressElementBase.d.ts.map +1 -1
  697. package/dist/types/elements/base/SwcHTMLQuoteElementBase.d.ts +6 -3
  698. package/dist/types/elements/base/SwcHTMLQuoteElementBase.d.ts.map +1 -1
  699. package/dist/types/elements/base/SwcHTMLScriptElementBase.d.ts +6 -3
  700. package/dist/types/elements/base/SwcHTMLScriptElementBase.d.ts.map +1 -1
  701. package/dist/types/elements/base/SwcHTMLSelectElementBase.d.ts +6 -3
  702. package/dist/types/elements/base/SwcHTMLSelectElementBase.d.ts.map +1 -1
  703. package/dist/types/elements/base/SwcHTMLSlotElementBase.d.ts +6 -3
  704. package/dist/types/elements/base/SwcHTMLSlotElementBase.d.ts.map +1 -1
  705. package/dist/types/elements/base/SwcHTMLSourceElementBase.d.ts +6 -3
  706. package/dist/types/elements/base/SwcHTMLSourceElementBase.d.ts.map +1 -1
  707. package/dist/types/elements/base/SwcHTMLSpanElementBase.d.ts +6 -3
  708. package/dist/types/elements/base/SwcHTMLSpanElementBase.d.ts.map +1 -1
  709. package/dist/types/elements/base/SwcHTMLStyleElementBase.d.ts +6 -3
  710. package/dist/types/elements/base/SwcHTMLStyleElementBase.d.ts.map +1 -1
  711. package/dist/types/elements/base/SwcHTMLTableCellElementBase.d.ts +6 -3
  712. package/dist/types/elements/base/SwcHTMLTableCellElementBase.d.ts.map +1 -1
  713. package/dist/types/elements/base/SwcHTMLTableElementBase.d.ts +6 -3
  714. package/dist/types/elements/base/SwcHTMLTableElementBase.d.ts.map +1 -1
  715. package/dist/types/elements/base/SwcHTMLTableRowElementBase.d.ts +6 -3
  716. package/dist/types/elements/base/SwcHTMLTableRowElementBase.d.ts.map +1 -1
  717. package/dist/types/elements/base/SwcHTMLTableSectionElementBase.d.ts +6 -3
  718. package/dist/types/elements/base/SwcHTMLTableSectionElementBase.d.ts.map +1 -1
  719. package/dist/types/elements/base/SwcHTMLTemplateElementBase.d.ts +6 -3
  720. package/dist/types/elements/base/SwcHTMLTemplateElementBase.d.ts.map +1 -1
  721. package/dist/types/elements/base/SwcHTMLTextAreaElementBase.d.ts +6 -3
  722. package/dist/types/elements/base/SwcHTMLTextAreaElementBase.d.ts.map +1 -1
  723. package/dist/types/elements/base/SwcHTMLTimeElementBase.d.ts +6 -3
  724. package/dist/types/elements/base/SwcHTMLTimeElementBase.d.ts.map +1 -1
  725. package/dist/types/elements/base/SwcHTMLTitleElementBase.d.ts +6 -3
  726. package/dist/types/elements/base/SwcHTMLTitleElementBase.d.ts.map +1 -1
  727. package/dist/types/elements/base/SwcHTMLTrackElementBase.d.ts +6 -3
  728. package/dist/types/elements/base/SwcHTMLTrackElementBase.d.ts.map +1 -1
  729. package/dist/types/elements/base/SwcHTMLUListElementBase.d.ts +6 -3
  730. package/dist/types/elements/base/SwcHTMLUListElementBase.d.ts.map +1 -1
  731. package/dist/types/elements/base/SwcHTMLVideoElementBase.d.ts +6 -3
  732. package/dist/types/elements/base/SwcHTMLVideoElementBase.d.ts.map +1 -1
  733. package/dist/types/elements/index.d.ts +1 -0
  734. package/dist/types/elements/index.d.ts.map +1 -1
  735. package/dist/types/index.d.ts +2 -17
  736. package/dist/types/index.d.ts.map +1 -1
  737. package/dist/types/router/ElementRouter.d.ts +41 -0
  738. package/dist/types/router/ElementRouter.d.ts.map +1 -0
  739. package/dist/types/utils/Utils.d.ts +9 -0
  740. package/dist/types/utils/Utils.d.ts.map +1 -1
  741. package/dist/umd-bundle/dooboostore-simple-web-component.umd.js +3334 -2251
  742. package/dist/umd-bundle/dooboostore-simple-web-component.umd.js.map +4 -4
  743. package/package.json +3 -3
  744. package/src/decorators/elementDefine.ts +98 -141
  745. package/src/decorators/index.ts +9 -0
  746. package/src/elements/SwcInterfaces.ts +53 -0
  747. package/src/elements/apps/SwcApp.ts +20 -11
  748. package/src/elements/apps/SwcAppAnchor.ts +20 -11
  749. package/src/elements/apps/SwcAppArea.ts +20 -11
  750. package/src/elements/apps/SwcAppAudio.ts +20 -11
  751. package/src/elements/apps/SwcAppBase.ts +20 -11
  752. package/src/elements/apps/SwcAppBody.ts +20 -11
  753. package/src/elements/apps/SwcAppButton.ts +20 -11
  754. package/src/elements/apps/SwcAppCanvas.ts +20 -11
  755. package/src/elements/apps/SwcAppData.ts +20 -11
  756. package/src/elements/apps/SwcAppDataList.ts +20 -11
  757. package/src/elements/apps/SwcAppDetails.ts +20 -11
  758. package/src/elements/apps/SwcAppDialog.ts +20 -11
  759. package/src/elements/apps/SwcAppDiv.ts +20 -11
  760. package/src/elements/apps/SwcAppDl.ts +20 -11
  761. package/src/elements/apps/SwcAppEmbed.ts +20 -11
  762. package/src/elements/apps/SwcAppFieldSet.ts +20 -11
  763. package/src/elements/apps/SwcAppForm.ts +20 -11
  764. package/src/elements/apps/SwcAppHeading.ts +20 -11
  765. package/src/elements/apps/SwcAppHr.ts +20 -11
  766. package/src/elements/apps/SwcAppIFrame.ts +20 -11
  767. package/src/elements/apps/SwcAppImage.ts +20 -11
  768. package/src/elements/apps/SwcAppInput.ts +20 -11
  769. package/src/elements/apps/SwcAppLabel.ts +20 -11
  770. package/src/elements/apps/SwcAppLegend.ts +20 -11
  771. package/src/elements/apps/SwcAppLi.ts +20 -11
  772. package/src/elements/apps/SwcAppLink.ts +20 -11
  773. package/src/elements/apps/SwcAppMap.ts +20 -11
  774. package/src/elements/apps/SwcAppMeta.ts +20 -11
  775. package/src/elements/apps/SwcAppMeter.ts +20 -11
  776. package/src/elements/apps/SwcAppMod.ts +20 -11
  777. package/src/elements/apps/SwcAppObject.ts +20 -11
  778. package/src/elements/apps/SwcAppOl.ts +20 -11
  779. package/src/elements/apps/SwcAppOptGroup.ts +20 -11
  780. package/src/elements/apps/SwcAppOption.ts +20 -11
  781. package/src/elements/apps/SwcAppOutput.ts +20 -11
  782. package/src/elements/apps/SwcAppParagraph.ts +20 -11
  783. package/src/elements/apps/SwcAppParam.ts +20 -11
  784. package/src/elements/apps/SwcAppPicture.ts +20 -11
  785. package/src/elements/apps/SwcAppPre.ts +20 -11
  786. package/src/elements/apps/SwcAppProgress.ts +20 -11
  787. package/src/elements/apps/SwcAppQuote.ts +20 -11
  788. package/src/elements/apps/SwcAppScript.ts +20 -11
  789. package/src/elements/apps/SwcAppSelect.ts +20 -11
  790. package/src/elements/apps/SwcAppSlot.ts +20 -11
  791. package/src/elements/apps/SwcAppSource.ts +20 -11
  792. package/src/elements/apps/SwcAppSpan.ts +20 -11
  793. package/src/elements/apps/SwcAppStyle.ts +20 -11
  794. package/src/elements/apps/SwcAppTable.ts +20 -11
  795. package/src/elements/apps/SwcAppTableCell.ts +20 -11
  796. package/src/elements/apps/SwcAppTableRow.ts +20 -11
  797. package/src/elements/apps/SwcAppTableSection.ts +20 -11
  798. package/src/elements/apps/SwcAppTemplate.ts +20 -11
  799. package/src/elements/apps/SwcAppTextArea.ts +20 -11
  800. package/src/elements/apps/SwcAppTime.ts +20 -11
  801. package/src/elements/apps/SwcAppTitle.ts +20 -11
  802. package/src/elements/apps/SwcAppTrack.ts +20 -11
  803. package/src/elements/apps/SwcAppUl.ts +20 -11
  804. package/src/elements/apps/SwcAppVideo.ts +20 -11
  805. package/src/elements/base/SwcHTMLAnchorElementBase.ts +22 -11
  806. package/src/elements/base/SwcHTMLAreaElementBase.ts +22 -11
  807. package/src/elements/base/SwcHTMLAudioElementBase.ts +22 -11
  808. package/src/elements/base/SwcHTMLBaseElementBase.ts +22 -11
  809. package/src/elements/base/SwcHTMLBodyElementBase.ts +22 -11
  810. package/src/elements/base/SwcHTMLButtonElementBase.ts +22 -11
  811. package/src/elements/base/SwcHTMLCanvasElementBase.ts +22 -11
  812. package/src/elements/base/SwcHTMLDListElementBase.ts +22 -11
  813. package/src/elements/base/SwcHTMLDataElementBase.ts +22 -11
  814. package/src/elements/base/SwcHTMLDataListElementBase.ts +22 -11
  815. package/src/elements/base/SwcHTMLDetailsElementBase.ts +22 -11
  816. package/src/elements/base/SwcHTMLDialogElementBase.ts +22 -11
  817. package/src/elements/base/SwcHTMLDivElementBase.ts +22 -11
  818. package/src/elements/base/SwcHTMLElementBase.ts +22 -11
  819. package/src/elements/base/SwcHTMLEmbedElementBase.ts +22 -11
  820. package/src/elements/base/SwcHTMLFieldSetElementBase.ts +22 -11
  821. package/src/elements/base/SwcHTMLFormElementBase.ts +22 -11
  822. package/src/elements/base/SwcHTMLHRElementBase.ts +22 -11
  823. package/src/elements/base/SwcHTMLHeadingElementBase.ts +22 -11
  824. package/src/elements/base/SwcHTMLIFrameElementBase.ts +22 -11
  825. package/src/elements/base/SwcHTMLImageElementBase.ts +22 -11
  826. package/src/elements/base/SwcHTMLInputElementBase.ts +22 -11
  827. package/src/elements/base/SwcHTMLLIElementBase.ts +22 -11
  828. package/src/elements/base/SwcHTMLLabelElementBase.ts +22 -11
  829. package/src/elements/base/SwcHTMLLegendElementBase.ts +22 -11
  830. package/src/elements/base/SwcHTMLLinkElementBase.ts +22 -11
  831. package/src/elements/base/SwcHTMLMapElementBase.ts +22 -11
  832. package/src/elements/base/SwcHTMLMetaElementBase.ts +22 -11
  833. package/src/elements/base/SwcHTMLMeterElementBase.ts +22 -11
  834. package/src/elements/base/SwcHTMLModElementBase.ts +22 -11
  835. package/src/elements/base/SwcHTMLOListElementBase.ts +22 -11
  836. package/src/elements/base/SwcHTMLObjectElementBase.ts +22 -11
  837. package/src/elements/base/SwcHTMLOptGroupElementBase.ts +22 -11
  838. package/src/elements/base/SwcHTMLOptionElementBase.ts +22 -11
  839. package/src/elements/base/SwcHTMLOutputElementBase.ts +22 -11
  840. package/src/elements/base/SwcHTMLParagraphElementBase.ts +22 -11
  841. package/src/elements/base/SwcHTMLParamElementBase.ts +22 -11
  842. package/src/elements/base/SwcHTMLPictureElementBase.ts +22 -11
  843. package/src/elements/base/SwcHTMLPreElementBase.ts +22 -11
  844. package/src/elements/base/SwcHTMLProgressElementBase.ts +22 -11
  845. package/src/elements/base/SwcHTMLQuoteElementBase.ts +22 -11
  846. package/src/elements/base/SwcHTMLScriptElementBase.ts +22 -11
  847. package/src/elements/base/SwcHTMLSelectElementBase.ts +22 -11
  848. package/src/elements/base/SwcHTMLSlotElementBase.ts +22 -11
  849. package/src/elements/base/SwcHTMLSourceElementBase.ts +22 -11
  850. package/src/elements/base/SwcHTMLSpanElementBase.ts +22 -11
  851. package/src/elements/base/SwcHTMLStyleElementBase.ts +22 -11
  852. package/src/elements/base/SwcHTMLTableCellElementBase.ts +22 -11
  853. package/src/elements/base/SwcHTMLTableElementBase.ts +22 -11
  854. package/src/elements/base/SwcHTMLTableRowElementBase.ts +22 -11
  855. package/src/elements/base/SwcHTMLTableSectionElementBase.ts +22 -11
  856. package/src/elements/base/SwcHTMLTemplateElementBase.ts +22 -11
  857. package/src/elements/base/SwcHTMLTextAreaElementBase.ts +22 -11
  858. package/src/elements/base/SwcHTMLTimeElementBase.ts +22 -11
  859. package/src/elements/base/SwcHTMLTitleElementBase.ts +22 -11
  860. package/src/elements/base/SwcHTMLTrackElementBase.ts +22 -11
  861. package/src/elements/base/SwcHTMLUListElementBase.ts +22 -11
  862. package/src/elements/base/SwcHTMLVideoElementBase.ts +22 -11
  863. package/src/elements/index.ts +1 -0
  864. package/src/index.ts +2 -17
  865. package/src/router/ElementRouter.ts +187 -0
  866. package/src/utils/Utils.ts +57 -0
  867. package/dist/cjs/elements/SwcAppInterface.js +0 -16
  868. package/dist/cjs/elements/SwcAppInterface.js.map +0 -7
  869. package/dist/cjs/elements/SwcHTMLElementInterface.js +0 -16
  870. package/dist/cjs/elements/SwcHTMLElementInterface.js.map +0 -7
  871. package/dist/esm/elements/SwcAppInterface.js +0 -1
  872. package/dist/esm/elements/SwcAppInterface.js.map +0 -7
  873. package/dist/esm/elements/SwcHTMLElementInterface.js +0 -1
  874. package/dist/esm/elements/SwcHTMLElementInterface.js.map +0 -7
  875. package/dist/types/elements/SwcAppInterface.d.ts +0 -15
  876. package/dist/types/elements/SwcAppInterface.d.ts.map +0 -1
  877. package/dist/types/elements/SwcHTMLElementInterface.d.ts +0 -9
  878. package/dist/types/elements/SwcHTMLElementInterface.d.ts.map +0 -1
  879. package/src/elements/SwcAppInterface.ts +0 -19
  880. package/src/elements/SwcHTMLElementInterface.ts +0 -9
@@ -9,6 +9,8 @@ import { getStateMetadataList } from "./state.js";
9
9
  import { getEmitCustomEventMetadataList } from "./emitCustomEvent.js";
10
10
  import { SwcUtils, SWC_NOT_FOUND } from "../utils/Utils.js";
11
11
  import { HTML_TAG_ENTRIES } from "../config/config.js";
12
+ import { SituationTypeContainer, SituationTypeContainers } from "@dooboostore/simple-boot/decorators/inject/Inject";
13
+ import { InjectSituationType } from "../elements/SwcInterfaces.js";
12
14
  const ELEMENT_CONFIG_KEY = Symbol("simple-web-component:element-config");
13
15
  const STATE_CHANGE_EVENT = "swc:state-change";
14
16
  function buildEnv(configWindow) {
@@ -64,7 +66,8 @@ const elementDefine = (inConfig) => (constructor) => {
64
66
  this._externalSources = /* @__PURE__ */ new Map();
65
67
  this._isSyncing = false;
66
68
  this._isUpdatingState = false;
67
- this._executeSwcScript("swc-on-constructor");
69
+ const hostSet = SwcUtils.getHostSet(this);
70
+ this._executeSwcScript("swc-on-constructor", hostSet);
68
71
  if (stateList) {
69
72
  stateList.forEach((meta) => {
70
73
  const key = meta.propertyKey;
@@ -128,7 +131,6 @@ const elementDefine = (inConfig) => (constructor) => {
128
131
  this.attachShadow({ mode: "open" });
129
132
  }
130
133
  }
131
- // name→value 컨텍스트 반환 (applyData의 hostContext용)
132
134
  _getHostContext() {
133
135
  const ctx = {};
134
136
  if (stateList) {
@@ -145,26 +147,20 @@ const elementDefine = (inConfig) => (constructor) => {
145
147
  ctx[name] = val;
146
148
  });
147
149
  }
148
- const alias = this.getAttribute("as");
149
150
  const hostVal = this.value !== void 0 ? this.value : this;
150
151
  ctx["value"] = hostVal;
151
- if (alias && alias !== "value") {
152
- ctx[alias] = hostVal;
153
- }
152
+ const alias = this.getAttribute("as");
153
+ if (alias && alias !== "value") ctx[alias] = hostVal;
154
154
  return ctx;
155
155
  }
156
156
  static get observedAttributes() {
157
157
  return mergedObservedAttributes;
158
158
  }
159
- _executeSwcScript(attrName, extraArgs = {}) {
159
+ _executeSwcScript(attrName, hostSet, extraArgs = {}) {
160
160
  const script = this.getAttribute(attrName);
161
161
  if (script) {
162
162
  try {
163
- const $hosts = SwcUtils.findAllSwcHosts(this);
164
- const $firstHost = $hosts[0] || null;
165
- const $lastHost = $hosts[$hosts.length - 1] || null;
166
- const $host = $lastHost;
167
- const args = { $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPERS, ...extraArgs };
163
+ const args = { ...hostSet, ...SWC_DOM_HELPERS, ...extraArgs };
168
164
  const argNames = Object.keys(args);
169
165
  const argValues = Object.values(args);
170
166
  new Function(...argNames, script).apply(this, argValues);
@@ -173,6 +169,25 @@ const elementDefine = (inConfig) => (constructor) => {
173
169
  }
174
170
  }
175
171
  }
172
+ async _invokeLifecycleMethod(methodName, hostSet, extraArgs = []) {
173
+ if (typeof this[methodName] !== "function") return;
174
+ const app = hostSet.$appHost?.simpleApplication;
175
+ if (app) {
176
+ const otherStorage = /* @__PURE__ */ new Map();
177
+ const situations = new SituationTypeContainers([new SituationTypeContainer({ situationType: InjectSituationType.HOST_SET, data: hostSet }), new SituationTypeContainer({ situationType: InjectSituationType.APP_HOST, data: hostSet.$appHost }), new SituationTypeContainer({ situationType: InjectSituationType.APP_HOSTS, data: hostSet.$appHosts }), new SituationTypeContainer({ situationType: InjectSituationType.HOST, data: hostSet.$host }), new SituationTypeContainer({ situationType: InjectSituationType.HOSTS, data: hostSet.$hosts }), new SituationTypeContainer({ situationType: InjectSituationType.FIRST_HOST, data: hostSet.$firstHost }), new SituationTypeContainer({ situationType: InjectSituationType.LAST_HOST, data: hostSet.$lastHost }), new SituationTypeContainer({ situationType: InjectSituationType.FIRST_APP_HOST, data: hostSet.$firstAppHost }), new SituationTypeContainer({ situationType: InjectSituationType.LAST_APP_HOST, data: hostSet.$lastAppHost })]);
178
+ otherStorage.set(SituationTypeContainers, situations);
179
+ return app.simstanceManager.executeBindParameterSimPromise(
180
+ {
181
+ target: this,
182
+ targetKey: methodName,
183
+ inputParameters: extraArgs
184
+ },
185
+ otherStorage
186
+ );
187
+ } else {
188
+ return this[methodName](hostSet, ...extraArgs);
189
+ }
190
+ }
176
191
  _syncDecorators() {
177
192
  if (this._isSyncing) return;
178
193
  this._isSyncing = true;
@@ -301,9 +316,7 @@ const elementDefine = (inConfig) => (constructor) => {
301
316
  this._boundElements.set(host, hBound);
302
317
  }
303
318
  if (!hBound.has(hostBindKey)) {
304
- host.addEventListener(STATE_CHANGE_EVENT, () => {
305
- this._updateState(hAlias);
306
- });
319
+ host.addEventListener(STATE_CHANGE_EVENT, () => this._updateState(hAlias));
307
320
  hBound.add(hostBindKey);
308
321
  }
309
322
  }
@@ -311,6 +324,8 @@ const elementDefine = (inConfig) => (constructor) => {
311
324
  Array.from(el.attributes).forEach((attr) => {
312
325
  if (attr.name.startsWith("swc-on-") && !swcLifecycleAttributes.includes(attr.name)) {
313
326
  const eventName = attr.name.substring(7);
327
+ const script = attr.value;
328
+ const hostSet = SwcUtils.getHostSet(el);
314
329
  if (eventName === "connected") {
315
330
  const eventKey2 = `attr-once:${attr.name}`;
316
331
  let bound2 = this._boundElements.get(el);
@@ -319,14 +334,11 @@ const elementDefine = (inConfig) => (constructor) => {
319
334
  this._boundElements.set(el, bound2);
320
335
  }
321
336
  if (!bound2.has(eventKey2)) {
322
- const script = el.getAttribute(attr.name);
323
337
  if (script) {
324
338
  try {
325
- const $hosts2 = SwcUtils.findAllSwcHosts(el);
326
- const $firstHost = $hosts2[0] || null;
327
- const $lastHost = $hosts2[$hosts2.length - 1] || null;
328
- const $host = $lastHost;
329
- new Function("event", "$data", "$host", "$hosts", "$firstHost", "$lastHost", ...SWC_DOM_HELPER_KEYS, script).call(el, null, null, $host, $hosts2, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());
339
+ const argNames = Object.keys(hostSet);
340
+ const argValues = Object.values(hostSet);
341
+ new Function("event", "$data", ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(el, null, null, ...argValues, ...SWC_DOM_HELPER_VALS());
330
342
  } catch (e) {
331
343
  console.error(`[SWC] Failed to execute ${attr.name} script:`, e);
332
344
  }
@@ -343,14 +355,11 @@ const elementDefine = (inConfig) => (constructor) => {
343
355
  }
344
356
  if (!bound.has(eventKey)) {
345
357
  const handler = (event) => {
346
- const rawScript = el.getAttribute(attr.name);
347
- if (rawScript) {
358
+ if (script) {
348
359
  try {
349
- const $hosts2 = SwcUtils.findAllSwcHosts(el);
350
- const $firstHost = $hosts2[0] || null;
351
- const $lastHost = $hosts2[$hosts2.length - 1] || null;
352
- const $host = $lastHost;
353
- new Function("event", "$data", "$host", "$hosts", "$firstHost", "$lastHost", ...SWC_DOM_HELPER_KEYS, rawScript).call(el, event, event.detail, $host, $hosts2, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());
360
+ const argNames = Object.keys(hostSet);
361
+ const argValues = Object.values(hostSet);
362
+ new Function("event", "$data", ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(el, event, event.detail, ...argValues, ...SWC_DOM_HELPER_VALS());
354
363
  } catch (e) {
355
364
  console.error(`[SWC] Failed to execute ${attr.name} script:`, e);
356
365
  }
@@ -387,7 +396,7 @@ const elementDefine = (inConfig) => (constructor) => {
387
396
  const rootName = fullPath.split(".")[0];
388
397
  const isState = stateList?.some((s) => s.options.name === rootName);
389
398
  const isAttr = attributePropsList?.some((a) => a.options.name === rootName);
390
- const isLogicKey = this._asKey === rootName || this._asIndexKey === rootName;
399
+ const isLogicKey = this._asKey === rootName || this._asItemKey === rootName || this._asIndexKey === rootName;
391
400
  const isExternal = this._externalSources.has(rootName);
392
401
  const isSelfAlias = this.getAttribute("as") === rootName;
393
402
  const isInstanceProp = rootName in this;
@@ -417,13 +426,7 @@ const elementDefine = (inConfig) => (constructor) => {
417
426
  this._executeBindingUpdate(stateName);
418
427
  const selfAlias = this.getAttribute("as");
419
428
  if (selfAlias && selfAlias !== stateName) this._executeBindingUpdate(selfAlias);
420
- this.dispatchEvent(
421
- new CustomEvent(STATE_CHANGE_EVENT, {
422
- bubbles: true,
423
- composed: true,
424
- detail: { source: stateName, host: this }
425
- })
426
- );
429
+ this.dispatchEvent(new CustomEvent(STATE_CHANGE_EVENT, { bubbles: true, composed: true, detail: { source: stateName, host: this } }));
427
430
  } finally {
428
431
  this._isUpdatingState = false;
429
432
  }
@@ -511,11 +514,10 @@ const elementDefine = (inConfig) => (constructor) => {
511
514
  });
512
515
  }
513
516
  disconnectedCallback() {
514
- this._executeSwcScript("swc-on-before-disconnected");
517
+ const hostSet = SwcUtils.getHostSet(this);
518
+ this._executeSwcScript("swc-on-before-disconnected", hostSet);
515
519
  const bMethods = getLifecycleMetadata(this, ON_BEFORE_DISCONNECTED_METADATA_KEY);
516
- bMethods?.forEach((m) => {
517
- if (typeof this[m] === "function") this[m]();
518
- });
520
+ bMethods?.forEach((m) => this._invokeLifecycleMethod(m, hostSet));
519
521
  if (this._observer) this._observer.disconnect();
520
522
  if (this._shadowObserver) this._shadowObserver.disconnect();
521
523
  if (config.autoRemoveEventListeners) {
@@ -524,30 +526,28 @@ const elementDefine = (inConfig) => (constructor) => {
524
526
  }
525
527
  if (super.disconnectedCallback) super.disconnectedCallback();
526
528
  const aMethods = getLifecycleMetadata(this, ON_AFTER_DISCONNECTED_METADATA_KEY);
527
- aMethods?.forEach((m) => {
528
- if (typeof this[m] === "function") this[m]();
529
- });
530
- this._executeSwcScript("swc-on-after-disconnected");
529
+ aMethods?.forEach((m) => this._invokeLifecycleMethod(m, hostSet));
530
+ this._executeSwcScript("swc-on-after-disconnected", hostSet);
531
531
  }
532
532
  adoptedCallback() {
533
- this._executeSwcScript("swc-on-before-adopted");
533
+ const hostSet = SwcUtils.getHostSet(this);
534
+ this._executeSwcScript("swc-on-before-adopted", hostSet);
534
535
  const bMethods = getLifecycleMetadata(this, ON_BEFORE_ADOPTED_METADATA_KEY);
535
- bMethods?.forEach((m) => {
536
- if (typeof this[m] === "function") this[m]();
537
- });
536
+ bMethods?.forEach((m) => this._invokeLifecycleMethod(m, hostSet));
538
537
  if (super.adoptedCallback) super.adoptedCallback();
539
538
  const aMethods = getLifecycleMetadata(this, ON_AFTER_ADOPTED_METADATA_KEY);
540
- aMethods?.forEach((m) => {
541
- if (typeof this[m] === "function") this[m]();
542
- });
543
- this._executeSwcScript("swc-on-after-adopted");
539
+ aMethods?.forEach((m) => this._invokeLifecycleMethod(m, hostSet));
540
+ this._executeSwcScript("swc-on-after-adopted", hostSet);
544
541
  }
545
542
  async connectedCallback() {
546
- this._executeSwcScript("swc-on-before-connected");
543
+ const hostSet = SwcUtils.getHostSet(this);
544
+ this._executeSwcScript("swc-on-before-connected", hostSet);
547
545
  const bMethods = getLifecycleMetadata(this, ON_BEFORE_CONNECTED_METADATA_KEY);
548
- bMethods?.forEach((m) => {
549
- if (typeof this[m] === "function") this[m]();
550
- });
546
+ if (bMethods) {
547
+ for (const m of bMethods) {
548
+ await this._invokeLifecycleMethod(m, hostSet);
549
+ }
550
+ }
551
551
  if (typeof this.initCore === "function") this.initCore();
552
552
  const iHtmlList = getInnerHtmlMetadataList(this);
553
553
  let sContent = "";
@@ -567,8 +567,9 @@ const elementDefine = (inConfig) => (constructor) => {
567
567
  const isManagedByParent = !!SwcUtils.findNearestSwcHost(this);
568
568
  if (!isManagedByParent) {
569
569
  Array.from(this.attributes).forEach((attr) => {
570
- if (attr.name.startsWith("swc-on-") && swcLifecycleAttributes.indexOf(attr.name) === -1) {
570
+ if (attr.name.startsWith("swc-on-") && !swcLifecycleAttributes.includes(attr.name)) {
571
571
  const eventName = attr.name.substring(7);
572
+ const script = attr.value;
572
573
  if (eventName === "connected") {
573
574
  const eventKey2 = `host-attr-once:${attr.name}`;
574
575
  let bound2 = this._boundElements.get(this);
@@ -577,14 +578,11 @@ const elementDefine = (inConfig) => (constructor) => {
577
578
  this._boundElements.set(this, bound2);
578
579
  }
579
580
  if (!bound2.has(eventKey2)) {
580
- const script = this.getAttribute(attr.name);
581
581
  if (script) {
582
582
  try {
583
- const $hosts = SwcUtils.findAllSwcHosts(this);
584
- const $firstHost = $hosts[0] || null;
585
- const $lastHost = $hosts[$hosts.length - 1] || null;
586
- const $host = $lastHost;
587
- new Function("event", "$data", "$host", "$hosts", "$firstHost", "$lastHost", ...SWC_DOM_HELPER_KEYS, script).call(this, null, null, $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());
583
+ const argNames = Object.keys(hostSet);
584
+ const argValues = Object.values(hostSet);
585
+ new Function("event", "$data", ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(this, null, null, ...argValues, ...SWC_DOM_HELPER_VALS());
588
586
  } catch (e) {
589
587
  console.error(`[SWC] Failed to execute ${attr.name} script:`, e);
590
588
  }
@@ -601,14 +599,11 @@ const elementDefine = (inConfig) => (constructor) => {
601
599
  }
602
600
  if (!bound.has(eventKey)) {
603
601
  const handler = (event) => {
604
- const script = this.getAttribute(attr.name);
605
602
  if (script) {
606
603
  try {
607
- const $hosts = SwcUtils.findAllSwcHosts(this);
608
- const $firstHost = $hosts[0] || null;
609
- const $lastHost = $hosts[$hosts.length - 1] || null;
610
- const $host = $lastHost;
611
- new Function("event", "$data", "$host", "$hosts", "$firstHost", "$lastHost", ...SWC_DOM_HELPER_KEYS, script).call(this, event, event.detail, $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());
604
+ const argNames = Object.keys(hostSet);
605
+ const argValues = Object.values(hostSet);
606
+ new Function("event", "$data", ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(this, event, event.detail, ...argValues, ...SWC_DOM_HELPER_VALS());
612
607
  } catch (e) {
613
608
  console.error(`[SWC] Failed to execute ${attr.name} script:`, e);
614
609
  }
@@ -645,10 +640,12 @@ const elementDefine = (inConfig) => (constructor) => {
645
640
  }
646
641
  if (super.connectedCallback) await super.connectedCallback();
647
642
  const aMethods = getLifecycleMetadata(this, ON_AFTER_CONNECTED_METADATA_KEY);
648
- aMethods?.forEach((m) => {
649
- if (typeof this[m] === "function") this[m]();
650
- });
651
- this._executeSwcScript("swc-on-after-connected");
643
+ if (aMethods) {
644
+ for (const m of aMethods) {
645
+ await this._invokeLifecycleMethod(m, hostSet);
646
+ }
647
+ }
648
+ this._executeSwcScript("swc-on-after-connected", hostSet);
652
649
  }
653
650
  attributeChangedCallback(name, oldValue, newValue) {
654
651
  if (super.attributeChangedCallback) super.attributeChangedCallback(name, oldValue, newValue);
@@ -664,10 +661,10 @@ const elementDefine = (inConfig) => (constructor) => {
664
661
  if (typeof this._updateState === "function") this._updateState(name);
665
662
  const aMethodsMap = getLifecycleMetadata(constructor, ON_ATTRIBUTE_CHANGED_METADATA_KEY);
666
663
  const mKeys = aMethodsMap?.get(name);
667
- if (mKeys && Array.isArray(mKeys))
668
- mKeys.forEach((key) => {
669
- if (typeof this[key] === "function") this[key](newValue, oldValue, name);
670
- });
664
+ const hostSet = SwcUtils.getHostSet(this);
665
+ if (mKeys && Array.isArray(mKeys)) {
666
+ mKeys.forEach((key) => this._invokeLifecycleMethod(key, hostSet, [newValue, oldValue, name]));
667
+ }
671
668
  if (emitCustomEventList) {
672
669
  const eMeta = emitCustomEventList.find((it) => it.options.attributeName === name);
673
670
  if (eMeta) {
@@ -684,13 +681,22 @@ const elementDefine = (inConfig) => (constructor) => {
684
681
  }
685
682
  }
686
683
  const wMethodsKeys = aMethodsMap?.get(ATTRIBUTE_CHANGED_WILDCARD);
687
- if (wMethodsKeys && Array.isArray(wMethodsKeys))
688
- wMethodsKeys.forEach((key) => {
689
- if (typeof this[key] === "function") this[key](newValue, oldValue, name);
690
- });
691
- this._executeSwcScript("swc-on-attribute-changed", { $new: newValue, $old: oldValue, $name: name });
684
+ if (wMethodsKeys && Array.isArray(wMethodsKeys)) {
685
+ wMethodsKeys.forEach((key) => this._invokeLifecycleMethod(key, hostSet, [newValue, oldValue, name]));
686
+ }
687
+ this._executeSwcScript("swc-on-attribute-changed", hostSet, { $new: newValue, $old: oldValue, $name: name });
692
688
  }
693
689
  };
690
+ const originalProto = constructor.prototype;
691
+ const newProto = NewClass.prototype;
692
+ Object.getOwnPropertyNames(originalProto).forEach((name) => {
693
+ if (name === "constructor") return;
694
+ const keys = Reflect.getMetadataKeys(originalProto, name);
695
+ keys.forEach((key) => {
696
+ const metadata = Reflect.getMetadata(key, originalProto, name);
697
+ Reflect.defineMetadata(key, metadata, newProto, name);
698
+ });
699
+ });
694
700
  ReflectUtils.defineMetadata(ELEMENT_CONFIG_KEY, config, NewClass);
695
701
  ReflectUtils.defineMetadata(ELEMENT_CONFIG_KEY, config, constructor);
696
702
  const registry = config.customElementRegistry || (typeof win !== "undefined" ? win.customElements : void 0);
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/decorators/elementDefine.ts"],
4
- "sourcesContent": ["import { ReflectUtils } from '@dooboostore/core/reflect/ReflectUtils';\nimport { getInnerHtmlMetadataList } from './innerHtml';\nimport { getQueryMetadata } from './query';\nimport { getQueryAllMetadata } from './queryAll';\nimport { getAddEventListenerMetadata } from './addEventListener';\nimport { getLifecycleMetadata, ON_BEFORE_CONNECTED_METADATA_KEY, ON_AFTER_CONNECTED_METADATA_KEY, ON_BEFORE_DISCONNECTED_METADATA_KEY, ON_AFTER_DISCONNECTED_METADATA_KEY, ON_BEFORE_ADOPTED_METADATA_KEY, ON_AFTER_ADOPTED_METADATA_KEY, ON_ADD_EVENT_LISTENER_METADATA_KEY, ON_ATTRIBUTE_CHANGED_METADATA_KEY, ATTRIBUTE_CHANGED_WILDCARD, getMutationSubscribeMetadataList } from './lifecycles';\nimport { getAttributeMetadataList } from './attribute';\nimport { getStateMetadataList } from './state';\nimport { getEmitCustomEventMetadataList } from './emitCustomEvent';\nimport { SwcUtils, SWC_NOT_FOUND } from '../utils/Utils';\nimport { HTML_TAG_ENTRIES } from '../config/config';\n\nexport interface ElementConfig {\n name: string;\n extends?: string;\n observedAttributes?: string[];\n customElementRegistry?: CustomElementRegistry;\n autoRemoveEventListeners?: boolean;\n window?: Window;\n}\n\nexport const ELEMENT_CONFIG_KEY = Symbol('simple-web-component:element-config');\nexport const STATE_CHANGE_EVENT = 'swc:state-change';\n\n// --- \uD658\uACBD \uCD08\uAE30\uD654 \uD5EC\uD37C ---\n\nfunction buildEnv(configWindow?: Window) {\n const win: any = configWindow || (typeof window !== 'undefined' ? window : undefined);\n const doc: Document = win?.document;\n\n const builtInTagMap = new Map<any, string>();\n for (const [cls, tag] of HTML_TAG_ENTRIES) {\n if (win?.[cls]) builtInTagMap.set(win[cls], tag);\n }\n\n const domHelpers = {\n $d: doc,\n $w: win,\n $q: (sel: string, root?: Element | Document | ShadowRoot) => (root ?? doc).querySelector(sel),\n $qa: (sel: string, root?: Element | Document | ShadowRoot) => Array.from((root ?? doc).querySelectorAll(sel)),\n $qi: (id: string, root?: Document | ShadowRoot) => (root ?? doc).getElementById(id)\n } as const;\n\n return { win, doc, builtInTagMap, domHelpers };\n}\n\nexport const elementDefine =\n (inConfig: ElementConfig | string): ClassDecorator =>\n (constructor: any) => {\n const config: ElementConfig = typeof inConfig === 'string' ? { name: inConfig } : inConfig;\n const { win, doc, builtInTagMap: BUILT_IN_TAG_MAP, domHelpers: SWC_DOM_HELPERS } = buildEnv(config.window);\n config.window = win;\n const SWC_DOM_HELPER_KEYS = Object.keys(SWC_DOM_HELPERS) as (keyof typeof SWC_DOM_HELPERS)[];\n const SWC_DOM_HELPER_VALS = () => SWC_DOM_HELPER_KEYS.map(k => (SWC_DOM_HELPERS as any)[k]);\n\n let extendsTagName = config.extends;\n if (!extendsTagName) {\n let proto = constructor;\n while (proto && proto !== HTMLElement && proto !== Function.prototype) {\n extendsTagName = BUILT_IN_TAG_MAP.get(proto);\n if (extendsTagName) break;\n proto = Object.getPrototypeOf(proto);\n }\n config.extends = extendsTagName;\n }\n\n const attributePropsList = getAttributeMetadataList(constructor);\n const emitCustomEventList = getEmitCustomEventMetadataList(constructor);\n const stateList = getStateMetadataList(constructor);\n const observedFromProps = attributePropsList ? attributePropsList.map(it => it.options.name!) : [];\n const observedFromEmits = emitCustomEventList ? emitCustomEventList.map(it => it.options.attributeName!) : [];\n const swcLifecycleAttributes = ['swc-on-constructor', 'swc-on-before-connected', 'swc-on-after-connected', 'swc-on-before-disconnected', 'swc-on-after-disconnected', 'swc-on-before-adopted', 'swc-on-after-adopted', 'swc-on-attribute-changed'];\n const mergedObservedAttributes = [...new Set([...(config.observedAttributes ?? []), ...observedFromProps, ...observedFromEmits, ...swcLifecycleAttributes])];\n\n const NewClass = class extends (constructor as any) {\n private _swcId = Math.random().toString(36).substring(2, 11);\n private _observer: MutationObserver | null = null;\n private _shadowObserver: MutationObserver | null = null;\n private _boundElements = new WeakMap<Element, Set<string | symbol>>();\n private _activeListeners: Array<{ el: Element | HTMLElement; type: string; handler: EventListener; options?: any }> = [];\n private _emitHandlers = new Map<string, EventListener>();\n private _stateBindings = new Map<string, any[]>();\n private _internalStates = new Map<string | symbol, any>();\n private _externalSources = new Map<string, HTMLElement>();\n\n // name\u2192value \uCEE8\uD14D\uC2A4\uD2B8 \uBC18\uD658 (applyData\uC758 hostContext\uC6A9)\n _getHostContext(): Record<string, any> {\n const ctx: Record<string, any> = {};\n\n // 1. @state \uBC0F @attribute \uC18D\uC131\uB4E4 \uC218\uC9D1\n if (stateList) {\n stateList.forEach(meta => {\n const name = meta.options.name!;\n const val = this._internalStates.get(meta.propertyKey);\n ctx[name] = val;\n });\n }\n if (attributePropsList) {\n attributePropsList.forEach(meta => {\n const name = meta.options.name!;\n const val = this._internalStates.get(meta.propertyKey);\n ctx[name] = val;\n });\n }\n\n // 2. 'as' \uBCC4\uCE6D \uBC0F \uAE30\uBCF8 'value' \uCC98\uB9AC\n const alias = this.getAttribute('as');\n const hostVal = (this as any).value !== undefined ? (this as any).value : this;\n\n // \uD56D\uC0C1 'value'\uB85C \uC811\uADFC \uAC00\uB2A5\uD558\uB3C4\uB85D \uC720\uC9C0\n ctx['value'] = hostVal;\n\n if (alias && alias !== 'value') {\n // \uC0AC\uC6A9\uC790\uAC00 \uC9C0\uC815\uD55C \uBCC4\uCE6D\uC73C\uB85C\uB3C4 \uC811\uADFC \uAC00\uB2A5 (\uC608: as=\"list\" -> {{list}})\n ctx[alias] = hostVal;\n }\n\n return ctx;\n }\n\n static get observedAttributes() {\n return mergedObservedAttributes;\n }\n\n private _executeSwcScript(attrName: string, extraArgs: Record<string, any> = {}) {\n const script = this.getAttribute(attrName);\n if (script) {\n try {\n const $hosts = SwcUtils.findAllSwcHosts(this as any);\n const $firstHost = $hosts[0] || null;\n const $lastHost = $hosts[$hosts.length - 1] || null;\n const $host = $lastHost;\n const args = { $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPERS, ...extraArgs };\n const argNames = Object.keys(args);\n const argValues = Object.values(args);\n new Function(...argNames, script).apply(this, argValues);\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attrName} script:`, e);\n }\n }\n }\n\n constructor(...args: any[]) {\n super(...args);\n this._executeSwcScript('swc-on-constructor');\n\n if (stateList) {\n stateList.forEach(meta => {\n const key = meta.propertyKey;\n const stateName = meta.options.name!;\n const initialVal = (this as any)[key];\n this._internalStates.set(\n key,\n SwcUtils.createReactiveProxy(initialVal, () => this._updateState(stateName))\n );\n Object.defineProperty(this, key, {\n get: () => this._internalStates.get(key),\n set: newVal => {\n if (this._internalStates.get(key) === newVal) return;\n this._internalStates.set(\n key,\n SwcUtils.createReactiveProxy(newVal, () => this._updateState(stateName))\n );\n this._updateState(stateName);\n },\n enumerable: true,\n configurable: true\n });\n });\n }\n\n if (attributePropsList) {\n attributePropsList.forEach(meta => {\n const key = meta.propertyKey;\n const attrName = meta.options.name!;\n const attrValue = this.getAttribute(attrName);\n let initialVal = attrValue !== null ? attrValue : (this as any)[key];\n if (initialVal === undefined) initialVal = null;\n\n if (attrValue !== null) {\n if (meta.options.type === Number) initialVal = Number(attrValue);\n else if (meta.options.type === Boolean) initialVal = true;\n else if (meta.options.type === Object) {\n try {\n initialVal = JSON.parse(attrValue);\n } catch (e) {}\n }\n }\n\n this._internalStates.set(key, initialVal);\n Object.defineProperty(this, key, {\n get: () => this._internalStates.get(key),\n set: newVal => {\n if (this._internalStates.get(key) === newVal) return;\n this._internalStates.set(key, newVal);\n if (typeof (this as any)._updateState === 'function') (this as any)._updateState(attrName);\n // \uAC1D\uCCB4/\uBC30\uC5F4\uC740 setAttribute\uB85C \uBC18\uC601\uD558\uC9C0 \uC54A\uC74C - attributeChangedCallback \uBB34\uD55C\uB8E8\uD504 \uBC29\uC9C0\n if (!meta.options.disableReflect && this.setAttribute && typeof newVal !== 'object') {\n if (newVal === null || newVal === undefined || newVal === false) this.removeAttribute(attrName);\n else this.setAttribute(attrName, String(newVal));\n }\n },\n enumerable: true,\n configurable: true\n });\n });\n }\n\n const innerHtmlList = getInnerHtmlMetadataList(this);\n if (innerHtmlList?.some(it => it.options.useShadow === true) && !this.shadowRoot) {\n this.attachShadow({ mode: 'open' });\n }\n }\n\n private _isSyncing = false;\n\n private _syncDecorators() {\n if (this._isSyncing) return;\n this._isSyncing = true;\n try {\n this._buildStateMap();\n this._syncEventListenersAndQueries();\n } finally {\n this._isSyncing = false;\n }\n }\n\n private _syncEventListenersAndQueries() {\n const getSearchRoots = (rootOption?: string): Node[] => {\n const roots: Node[] = [];\n if (rootOption === 'shadow') {\n if (this.shadowRoot) roots.push(this.shadowRoot);\n } else if (rootOption === 'light') {\n roots.push(this as any as Node);\n } else if (rootOption === 'all') {\n if (this.shadowRoot) roots.push(this.shadowRoot);\n roots.push(this as any as Node);\n } else {\n roots.push(this.shadowRoot || (this as any as Node));\n }\n return roots;\n };\n\n const queryMetadata = getQueryMetadata(this);\n if (queryMetadata) {\n queryMetadata\n .filter(it => it.isMethod)\n .forEach(it => {\n const searchRoots = getSearchRoots(it.options.root);\n let foundEl: Element | null = null;\n for (const root of searchRoots) {\n foundEl = it.selector ? (root as HTMLElement).querySelector(it.selector) : (this as any as Element);\n if (foundEl) break;\n }\n if (foundEl) {\n let bound = this._boundElements.get(foundEl);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(foundEl, bound);\n }\n if (!bound.has(it.propertyKey)) {\n (this as any)[it.propertyKey](foundEl);\n bound.add(it.propertyKey);\n }\n }\n });\n }\n\n const queryAllMetadata = getQueryAllMetadata(this);\n if (queryAllMetadata) {\n queryAllMetadata\n .filter(it => it.isMethod)\n .forEach(it => {\n const searchRoots = getSearchRoots(it.options.root);\n const allElements: Element[] = [];\n searchRoots.forEach(root => {\n const found = it.selector ? (root as HTMLElement).querySelectorAll(it.selector) : [this as any as Element];\n allElements.push(...Array.from(found));\n });\n (this as any)[it.propertyKey](allElements);\n });\n }\n\n const eventListeners = getAddEventListenerMetadata(this);\n if (eventListeners) {\n eventListeners.forEach(it => {\n const { query, type, root: rootOption, ...options } = it.options;\n const searchRoots = getSearchRoots(rootOption);\n searchRoots.forEach(root => {\n const targetElements = query ? (root as HTMLElement).querySelectorAll(query) : [this as any as Element];\n targetElements.forEach(targetElement => {\n if (targetElement) {\n let bound = this._boundElements.get(targetElement);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(targetElement, bound);\n }\n const eventKey = `event:${String(it.propertyKey)}:${type}`;\n if (!bound.has(eventKey)) {\n const handler = (event: any) => {\n if (it.options.stopImmediatePropagation) event.stopImmediatePropagation();\n if (it.options.stopPropagation) event.stopPropagation();\n if (it.options.preventDefault) event.preventDefault();\n (this as any)[it.propertyKey](event, targetElement);\n };\n targetElement.addEventListener(type, handler, options);\n bound.add(eventKey);\n if (config.autoRemoveEventListeners) this._activeListeners.push({ el: targetElement, type, handler, options });\n const addEventMethods = getLifecycleMetadata(this, ON_ADD_EVENT_LISTENER_METADATA_KEY);\n addEventMethods?.forEach((m: string | symbol) => {\n if (typeof (this as any)[m] === 'function') (this as any)[m](targetElement, type, handler);\n });\n }\n }\n });\n });\n });\n }\n }\n\n private _buildStateMap() {\n const scan = (root: Node) => {\n const walker = doc.createTreeWalker(root, (win as any).NodeFilter.SHOW_ELEMENT | (win as any).NodeFilter.SHOW_TEXT);\n let node: Node | null = null;\n while ((node = walker.nextNode())) {\n if (node.nodeType === Node.TEXT_NODE) this._parseAndBind(node, 'text');\n else if (node.nodeType === Node.ELEMENT_NODE) {\n const el = node as HTMLElement;\n\n const alias = el.getAttribute('as');\n if (alias && !this._externalSources.has(alias)) {\n this._externalSources.set(alias, el);\n const aliasKey = `alias-event:${alias}`;\n let bound = this._boundElements.get(el);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(el, bound);\n }\n if (!bound.has(aliasKey)) {\n // \uBD80\uBAA8\uAC00 \uC790\uC2DD\uC758 STATE_CHANGE_EVENT\uB97C \uB4E3\uACE0 \uC5C5\uB370\uC774\uD2B8 (\uAE30\uC874 \uBC84\uBE14\uB9C1\uC6A9)\n el.addEventListener(STATE_CHANGE_EVENT, () => this._updateState(alias));\n bound.add(aliasKey);\n }\n }\n\n // --- [FIX] \uBD80\uBAA8 \uD638\uC2A4\uD2B8\uC758 \uC0C1\uD0DC \uBCC0\uACBD \uAD6C\uB3C5 ---\n // \uD604\uC7AC \uC5D8\uB9AC\uBA3C\uD2B8\uAC00 \uC0C1\uC704 \uD638\uC2A4\uD2B8\uC758 \uBCC4\uCE6D(\uC608: t1)\uC744 \uCC38\uC870\uD558\uACE0 \uC788\uB2E4\uBA74,\n // \uC0C1\uC704 \uD638\uC2A4\uD2B8\uC5D0\uC11C \uBC1C\uC0DD\uD558\uB294 \uC774\uBCA4\uD2B8\uB97C \uAC10\uC9C0\uD574\uC57C \uD568.\n const $hosts = SwcUtils.findAllSwcHosts(el);\n $hosts.forEach(host => {\n const hAlias = host.getAttribute('as');\n if (hAlias) {\n const hostBindKey = `parent-host-event:${hAlias}`;\n let hBound = this._boundElements.get(host);\n if (!hBound) {\n hBound = new Set();\n this._boundElements.set(host, hBound);\n }\n if (!hBound.has(hostBindKey)) {\n host.addEventListener(STATE_CHANGE_EVENT, () => {\n // \uBD80\uBAA8 \uBCC4\uCE6D\uC774 \uBC14\uB00C\uC5C8\uC73C\uBBC0\uB85C, \uD574\uB2F9 \uBCC4\uCE6D\uC744 \uC0AC\uC6A9\uD558\uB294 \uC790\uC2E0\uC758 \uBC14\uC778\uB529\uB4E4 \uAC31\uC2E0\n this._updateState(hAlias);\n });\n hBound.add(hostBindKey);\n }\n }\n });\n\n Array.from(el.attributes).forEach(attr => {\n if (attr.name.startsWith('swc-on-') && !swcLifecycleAttributes.includes(attr.name)) {\n const eventName = attr.name.substring(7);\n if (eventName === 'connected') {\n const eventKey = `attr-once:${attr.name}`;\n let bound = this._boundElements.get(el);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(el, bound);\n }\n if (!bound.has(eventKey)) {\n const script = el.getAttribute(attr.name);\n if (script) {\n try {\n const $hosts = SwcUtils.findAllSwcHosts(el);\n const $firstHost = $hosts[0] || null;\n const $lastHost = $hosts[$hosts.length - 1] || null;\n const $host = $lastHost;\n new Function('event', '$data', '$host', '$hosts', '$firstHost', '$lastHost', ...SWC_DOM_HELPER_KEYS, script).call(el, null, null, $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n bound.add(eventKey);\n }\n return;\n }\n\n const eventKey = `attr-event:${attr.name}`;\n let bound = this._boundElements.get(el);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(el, bound);\n }\n if (!bound.has(eventKey)) {\n const handler = (event: any) => {\n const rawScript = el.getAttribute(attr.name);\n if (rawScript) {\n try {\n const $hosts = SwcUtils.findAllSwcHosts(el);\n const $firstHost = $hosts[0] || null;\n const $lastHost = $hosts[$hosts.length - 1] || null;\n const $host = $lastHost;\n new Function('event', '$data', '$host', '$hosts', '$firstHost', '$lastHost', ...SWC_DOM_HELPER_KEYS, rawScript).call(el, event, (event as CustomEvent).detail, $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n };\n el.addEventListener(eventName, handler);\n\n bound.add(eventKey);\n if (config.autoRemoveEventListeners) this._activeListeners.push({ el, type: eventName, handler });\n }\n }\n this._parseAndBind(attr, 'attribute', el);\n });\n\n // --- Scope Protection: Don't scan inside child SWC components ---\n // is \uC5B4\uD2B8\uB9AC\uBDF0\uD2B8 \uBC29\uC2DD \uCEE4\uC2A4\uD140 \uC5D8\uB9AC\uBA3C\uD2B8\uB3C4 \uD3EC\uD568 (swc-for-of-*, swc-if-* \uB4F1)\n const isSwcChild = (el as any)._swcId || getElementConfig(el.constructor) || (el.getAttribute('is')?.startsWith('swc-') ?? false);\n if (isSwcChild) {\n const next = walker.nextSibling();\n if (!next) break;\n node = next;\n if (node.nodeType === Node.TEXT_NODE) this._parseAndBind(node, 'text');\n }\n }\n }\n };\n if (this.shadowRoot) scan(this.shadowRoot);\n scan(this as any as Node);\n }\n\n private _parseAndBind(node: Node | Attr, type: 'text' | 'attribute', owner?: HTMLElement) {\n const tplKey = `__swc_original_${this._swcId}`;\n const isAlreadyBound = (node as any).__swc_bound_ids?.has(this._swcId);\n const content = (node as any)[tplKey] || node.textContent || '';\n const matches = Array.from(content.matchAll(/{{(.*?)}}/g)) as any[];\n if (matches.length === 0 || isAlreadyBound) return;\n\n matches.forEach(match => {\n const fullPath = (match[1] as string).trim();\n const rootName = fullPath.split('.')[0];\n const isState = stateList?.some(s => s.options.name === rootName);\n const isAttr = attributePropsList?.some(a => a.options.name === rootName);\n const isLogicKey = (this as any)._asKey === rootName || (this as any)._asIndexKey === rootName;\n const isExternal = this._externalSources.has(rootName);\n const isSelfAlias = this.getAttribute('as') === rootName;\n const isInstanceProp = rootName in this;\n\n // --- [FIX] \uBD80\uBAA8 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBCC4\uCE6D \uD655\uC778 \uCD94\uAC00 ---\n let isParentAlias = false;\n let curr: any = (this as any).parentElement || ((this as any).getRootNode?.() as any)?.host;\n while (curr) {\n if (curr.getAttribute?.('as') === rootName) {\n isParentAlias = true;\n break;\n }\n curr = curr.parentElement || (curr.getRootNode?.() as any)?.host;\n }\n\n if (!isState && !isAttr && !isLogicKey && !isExternal && !isSelfAlias && !isInstanceProp && !isParentAlias) return;\n\n if (!this._stateBindings.has(rootName)) this._stateBindings.set(rootName, []);\n if (!(node as any)[tplKey]) (node as any)[tplKey] = content;\n if (!(node as any).__swc_bound_ids) (node as any).__swc_bound_ids = new Set();\n (node as any).__swc_bound_ids.add(this._swcId);\n this._stateBindings.get(rootName)!.push({ node, type, owner, path: fullPath });\n this._updateState(rootName);\n });\n }\n\n private _isUpdatingState = false;\n\n private _updateState(stateName: string) {\n if (!this._stateBindings) return;\n if (this._isUpdatingState) return;\n this._isUpdatingState = true;\n try {\n this._executeBindingUpdate(stateName);\n const selfAlias = this.getAttribute('as');\n if (selfAlias && selfAlias !== stateName) this._executeBindingUpdate(selfAlias);\n\n // --- [FIX] \uC790\uC2DD\uB4E4\uC5D0\uAC8C \uC0C1\uD0DC \uBCC0\uACBD \uC54C\uB9BC ---\n this.dispatchEvent(\n new CustomEvent(STATE_CHANGE_EVENT, {\n bubbles: true,\n composed: true,\n detail: { source: stateName, host: this }\n })\n );\n } finally {\n this._isUpdatingState = false;\n }\n }\n\n private _executeBindingUpdate(stateName: string) {\n const bindings = this._stateBindings.get(stateName);\n if (!bindings) return;\n const tplKey = `__swc_original_${this._swcId}`;\n bindings.forEach(bin => {\n let text = (bin.node as any)[tplKey];\n if (!text) return;\n const matches = Array.from(text.matchAll(/{{(.*?)}}/g)) as RegExpMatchArray[];\n let updatedText = text;\n for (const match of matches) {\n const path = match[1].trim();\n const root = path.split('.')[0];\n let val: any = undefined;\n let current: HTMLElement | null = this as any as HTMLElement;\n while (current) {\n const currentNewClass = current as any;\n if (current.getAttribute('as') === root) {\n val = SwcUtils.getValueByPath(current, path.split('.').slice(1).join('.') || 'value', 'value');\n if (val !== SWC_NOT_FOUND) break;\n }\n const externalSource = currentNewClass._externalSources?.get(root);\n if (externalSource) {\n val = SwcUtils.getValueByPath(externalSource, path.split('.').slice(1).join('.') || 'value', 'value');\n if (val !== SWC_NOT_FOUND) break;\n }\n const cStates = getStateMetadataList(current.constructor);\n const cAttrs = getAttributeMetadataList(current.constructor);\n const sMeta = cStates?.find(s => s.options.name === root);\n const aMeta = cAttrs?.find(a => a.options.name === root);\n if (sMeta || aMeta) {\n // \uD504\uB85C\uD37C\uD2F0 \uD0A4\uB85C \uC778\uC2A4\uD134\uC2A4\uC5D0\uC11C \uB8E8\uD2B8 \uAC12\uC744 \uBA3C\uC800 \uAC00\uC838\uC628 \uB4A4 \uB098\uBA38\uC9C0 \uACBD\uB85C\uB97C \uD0D0\uC0C9\n const propKey = sMeta ? String(sMeta.propertyKey) : String(aMeta!.propertyKey);\n const rootVal = (current as any)[propKey];\n const subPath = path.split('.').slice(1).join('.');\n if (subPath) {\n // superUser.name \u2192 rootVal = superUser \uAC1D\uCCB4, subPath = \"name\"\n val = SwcUtils.getValueByPath(rootVal, subPath, subPath.split('.')[0]);\n if (val === SWC_NOT_FOUND) {\n // \uB2E8\uC21C \uC810 \uACBD\uB85C \uC9C1\uC811 \uC811\uADFC\n const parts = subPath.split('.');\n let cur = rootVal;\n for (const p of parts) {\n if (cur === null || cur === undefined) {\n cur = SWC_NOT_FOUND;\n break;\n }\n cur = cur[p];\n }\n if (cur !== undefined && cur !== SWC_NOT_FOUND) val = cur;\n }\n } else {\n // \uB8E8\uD2B8 \uC790\uCCB4\uAC00 \uAC12 (e.g. {{superUser}} \uC804\uCCB4)\n val = rootVal;\n }\n if (val !== SWC_NOT_FOUND && val !== undefined) break;\n }\n\n // Fallback: check raw property on instance even if not @state\n if (root in current) {\n val = SwcUtils.getValueByPath(current, path, root);\n if (val !== SWC_NOT_FOUND) break;\n }\n\n current = current.parentElement || (current.getRootNode() as any).host;\n }\n if (val !== SWC_NOT_FOUND && val !== undefined) {\n const strVal = val === null ? '' : typeof val === 'object' ? JSON.stringify(val) : String(val);\n updatedText = updatedText.replace(match[0], strVal);\n if (bin.type === 'attribute' && bin.owner) {\n const attrName = (bin.node as Attr).name;\n const ownerAttrs = getAttributeMetadataList(bin.owner.constructor);\n const attrMeta = ownerAttrs?.find(a => a.options.name === attrName);\n const propName = attrMeta ? String(attrMeta.propertyKey) : attrName.replace(/-([a-z])/g, g => g[1].toUpperCase());\n\n if (val === null || val === undefined) {\n bin.owner.removeAttribute(attrName);\n if (propName in bin.owner) (bin.owner as any)[propName] = val;\n } else {\n if (propName in bin.owner) (bin.owner as any)[propName] = val;\n bin.owner.setAttribute(attrName, updatedText);\n if ((attrName === 'value' || attrName === 'checked') && bin.owner.tagName.match(/INPUT|TEXTAREA|SELECT/)) {\n (bin.owner as any)[attrName] = updatedText;\n }\n }\n }\n }\n }\n if (bin.type === 'text') bin.node.textContent = updatedText;\n });\n }\n\n disconnectedCallback() {\n this._executeSwcScript('swc-on-before-disconnected');\n const bMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_BEFORE_DISCONNECTED_METADATA_KEY);\n bMethods?.forEach(m => {\n if (typeof (this as any)[m] === 'function') (this as any)[m]();\n });\n if (this._observer) this._observer.disconnect();\n if (this._shadowObserver) this._shadowObserver.disconnect();\n if (config.autoRemoveEventListeners) {\n this._activeListeners.forEach(({ el, type, handler, options }) => el.removeEventListener(type, handler, options));\n this._activeListeners = [];\n }\n if (super.disconnectedCallback) super.disconnectedCallback();\n const aMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_AFTER_DISCONNECTED_METADATA_KEY);\n aMethods?.forEach(m => {\n if (typeof (this as any)[m] === 'function') (this as any)[m]();\n });\n this._executeSwcScript('swc-on-after-disconnected');\n }\n\n adoptedCallback() {\n this._executeSwcScript('swc-on-before-adopted');\n const bMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_BEFORE_ADOPTED_METADATA_KEY);\n bMethods?.forEach(m => {\n if (typeof (this as any)[m] === 'function') (this as any)[m]();\n });\n if (super.adoptedCallback) super.adoptedCallback();\n const aMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_AFTER_ADOPTED_METADATA_KEY);\n aMethods?.forEach(m => {\n if (typeof (this as any)[m] === 'function') (this as any)[m]();\n });\n this._executeSwcScript('swc-on-after-adopted');\n }\n\n async connectedCallback() {\n this._executeSwcScript('swc-on-before-connected');\n const bMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_BEFORE_CONNECTED_METADATA_KEY);\n bMethods?.forEach(m => {\n if (typeof (this as any)[m] === 'function') (this as any)[m]();\n });\n if (typeof (this as any).initCore === 'function') (this as any).initCore();\n const iHtmlList = getInnerHtmlMetadataList(this);\n let sContent = '';\n let lContent = '';\n if (iHtmlList) {\n for (const meta of iHtmlList) {\n const result = await (this as any)[meta.propertyKey]();\n if (result !== undefined) {\n if (meta.options.useShadow === true) sContent += result;\n else lContent += result;\n }\n }\n }\n if (this.shadowRoot) this.shadowRoot.innerHTML = sContent;\n if (lContent) this.innerHTML = lContent;\n (this as any)._syncDecorators();\n\n const isManagedByParent = !!SwcUtils.findNearestSwcHost(this as any);\n\n if (!isManagedByParent) {\n Array.from(this.attributes as any).forEach((attr: any) => {\n if (attr.name.startsWith('swc-on-') && swcLifecycleAttributes.indexOf(attr.name) === -1) {\n const eventName = attr.name.substring(7);\n if (eventName === 'connected') {\n const eventKey = `host-attr-once:${attr.name}`;\n let bound = this._boundElements.get(this as any);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(this as any, bound);\n }\n if (!bound.has(eventKey)) {\n const script = (this as any).getAttribute(attr.name);\n if (script) {\n try {\n const $hosts = SwcUtils.findAllSwcHosts(this as any);\n const $firstHost = $hosts[0] || null;\n const $lastHost = $hosts[$hosts.length - 1] || null;\n const $host = $lastHost;\n new Function('event', '$data', '$host', '$hosts', '$firstHost', '$lastHost', ...SWC_DOM_HELPER_KEYS, script).call(this, null, null, $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n bound.add(eventKey);\n }\n return;\n }\n\n const eventKey = `host-attr-event:${attr.name}`;\n let bound = this._boundElements.get(this as any);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(this as any, bound);\n }\n\n if (!bound.has(eventKey)) {\n const handler = (event: any) => {\n const script = (this as any).getAttribute(attr.name);\n if (script) {\n try {\n const $hosts = SwcUtils.findAllSwcHosts(this as any);\n const $firstHost = $hosts[0] || null;\n const $lastHost = $hosts[$hosts.length - 1] || null;\n const $host = $lastHost;\n new Function('event', '$data', '$host', '$hosts', '$firstHost', '$lastHost', ...SWC_DOM_HELPER_KEYS, script).call(this, event, (event as CustomEvent).detail, $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n };\n this.addEventListener(eventName, handler);\n\n bound.add(eventKey);\n if (config.autoRemoveEventListeners) this._activeListeners.push({ el: this as any, type: eventName, handler });\n }\n }\n });\n }\n\n const mutationMetaList = getMutationSubscribeMetadataList(this);\n\n const fireMutationCallbacks = (mutationList: MutationRecord[], observer: MutationObserver, root: 'light' | 'shadow') => {\n mutationMetaList?.forEach(meta => {\n const r = meta.options.root ?? 'auto';\n const matches = r === 'all' || r === root || (r === 'auto' && (this.shadowRoot ? root === 'shadow' : root === 'light'));\n if (matches && typeof (this as any)[meta.propertyKey] === 'function') {\n (this as any)[meta.propertyKey](mutationList, observer, root);\n }\n });\n };\n\n this._observer = new (win as any).MutationObserver((mutationList: MutationRecord[], observer: MutationObserver) => {\n (this as any)._syncDecorators();\n fireMutationCallbacks(mutationList, observer, 'light');\n });\n // @ts-ignore\n this._observer.observe(this as any, { childList: true, subtree: true });\n\n if (this.shadowRoot) {\n this._shadowObserver = new (win as any).MutationObserver((mutationList: MutationRecord[], observer: MutationObserver) => {\n (this as any)._syncDecorators();\n fireMutationCallbacks(mutationList, observer, 'shadow');\n });\n // @ts-ignore\n this._shadowObserver.observe(this.shadowRoot, { childList: true, subtree: true });\n }\n if (super.connectedCallback) await super.connectedCallback();\n const aMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_AFTER_CONNECTED_METADATA_KEY);\n aMethods?.forEach(m => {\n if (typeof (this as any)[m] === 'function') (this as any)[m]();\n });\n this._executeSwcScript('swc-on-after-connected');\n }\n\n attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null) {\n if (super.attributeChangedCallback) super.attributeChangedCallback(name, oldValue, newValue);\n if (attributePropsList) {\n attributePropsList.forEach(meta => {\n if (meta.options.name === name) {\n const current = (this as any)[meta.propertyKey];\n // \uAC1D\uCCB4/\uBC30\uC5F4 \uD0C0\uC785\uC740 attributeChangedCallback\uC5D0\uC11C setter\uB97C \uC7AC\uD638\uCD9C\uD558\uC9C0 \uC54A\uC74C\n // (setter\uC5D0\uC11C setAttribute\uB97C \uD558\uC9C0 \uC54A\uC73C\uBBC0\uB85C \uC774 \uACBD\uB85C\uB85C \uB4E4\uC5B4\uC62C \uC77C\uC774 \uC5C6\uACE0,\n // \uC678\uBD80\uC5D0\uC11C attribute\uB97C \uC9C1\uC811 \uBC14\uAFB8\uB294 \uACBD\uC6B0\uB9CC \uCC98\uB9AC)\n if (typeof current === 'object' && current !== null) return;\n if (String(current) !== String(newValue)) (this as any)[meta.propertyKey] = newValue;\n }\n });\n }\n if (typeof (this as any)._updateState === 'function') (this as any)._updateState(name);\n const aMethodsMap = getLifecycleMetadata(constructor, ON_ATTRIBUTE_CHANGED_METADATA_KEY) as Map<string, (string | symbol)[]>;\n const mKeys = aMethodsMap?.get(name);\n if (mKeys && Array.isArray(mKeys))\n mKeys.forEach(key => {\n if (typeof (this as any)[key] === 'function') (this as any)[key](newValue, oldValue, name);\n });\n if (emitCustomEventList) {\n const eMeta = emitCustomEventList.find(it => it.options.attributeName === name);\n if (eMeta) {\n const eType = eMeta.options.type;\n const oHandler = this._emitHandlers.get(eType);\n if (oHandler) this.removeEventListener(eType, oHandler);\n if (newValue) {\n const nHandler = (e: Event) => {\n new Function('event', '$data', newValue).call(this, e, (e as CustomEvent).detail);\n };\n this.addEventListener(eType, nHandler);\n this._emitHandlers.set(eType, nHandler);\n }\n }\n }\n const wMethodsKeys = aMethodsMap?.get(ATTRIBUTE_CHANGED_WILDCARD);\n if (wMethodsKeys && Array.isArray(wMethodsKeys))\n wMethodsKeys.forEach(key => {\n if (typeof (this as any)[key] === 'function') (this as any)[key](newValue, oldValue, name);\n });\n this._executeSwcScript('swc-on-attribute-changed', { $new: newValue, $old: oldValue, $name: name });\n }\n };\n\n ReflectUtils.defineMetadata(ELEMENT_CONFIG_KEY, config, NewClass);\n ReflectUtils.defineMetadata(ELEMENT_CONFIG_KEY, config, constructor);\n\n const registry = config.customElementRegistry || (typeof win !== 'undefined' ? win.customElements : undefined);\n if (registry && !registry.get(config.name)) {\n const options = config.extends ? { extends: config.extends } : undefined;\n registry.define(config.name, NewClass as any, options);\n }\n\n return NewClass as any;\n };\n\nexport const getElementConfig = (target: any): ElementConfig | undefined => {\n const constructor = target instanceof Function ? target : target.constructor;\n return ReflectUtils.getMetadata(ELEMENT_CONFIG_KEY, constructor);\n};\n"],
5
- "mappings": "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",
6
- "names": ["eventKey", "bound", "$hosts"]
4
+ "sourcesContent": ["import { ReflectUtils } from '@dooboostore/core/reflect/ReflectUtils';\nimport { getInnerHtmlMetadataList } from './innerHtml';\nimport { getQueryMetadata } from './query';\nimport { getQueryAllMetadata } from './queryAll';\nimport { getAddEventListenerMetadata } from './addEventListener';\nimport { getLifecycleMetadata, ON_BEFORE_CONNECTED_METADATA_KEY, ON_AFTER_CONNECTED_METADATA_KEY, ON_BEFORE_DISCONNECTED_METADATA_KEY, ON_AFTER_DISCONNECTED_METADATA_KEY, ON_BEFORE_ADOPTED_METADATA_KEY, ON_AFTER_ADOPTED_METADATA_KEY, ON_ADD_EVENT_LISTENER_METADATA_KEY, ON_ATTRIBUTE_CHANGED_METADATA_KEY, ATTRIBUTE_CHANGED_WILDCARD, getMutationSubscribeMetadataList } from './lifecycles';\nimport { getAttributeMetadataList } from './attribute';\nimport { getStateMetadataList } from './state';\nimport { getEmitCustomEventMetadataList } from './emitCustomEvent';\nimport { SwcUtils, SWC_NOT_FOUND } from '../utils/Utils';\nimport { HTML_TAG_ENTRIES } from '../config/config';\nimport {getInject, SituationTypeContainer, SituationTypeContainers} from '@dooboostore/simple-boot/decorators/inject/Inject';\nimport { InjectSituationType, HostSet } from '../elements/SwcInterfaces';\nimport { ConstructorType } from '@dooboostore/core/types';\n\nexport interface ElementConfig {\n name: string;\n extends?: string;\n observedAttributes?: string[];\n customElementRegistry?: CustomElementRegistry;\n autoRemoveEventListeners?: boolean;\n window?: Window;\n}\n\nexport const ELEMENT_CONFIG_KEY = Symbol('simple-web-component:element-config');\nexport const STATE_CHANGE_EVENT = 'swc:state-change';\n\n// --- \uD658\uACBD \uCD08\uAE30\uD654 \uD5EC\uD37C ---\n\nfunction buildEnv(configWindow?: Window) {\n const win: any = configWindow || (typeof window !== 'undefined' ? window : undefined);\n const doc: Document = win?.document;\n\n const builtInTagMap = new Map<any, string>();\n for (const [cls, tag] of HTML_TAG_ENTRIES) {\n if (win?.[cls]) builtInTagMap.set(win[cls], tag);\n }\n\n const domHelpers = {\n $d: doc,\n $w: win,\n $q: (sel: string, root?: Element | Document | ShadowRoot) => (root ?? doc).querySelector(sel),\n $qa: (sel: string, root?: Element | Document | ShadowRoot) => Array.from((root ?? doc).querySelectorAll(sel)),\n $qi: (id: string, root?: Document | ShadowRoot) => (root ?? doc).getElementById(id)\n } as const;\n\n return { win, doc, builtInTagMap, domHelpers };\n}\n\nexport const elementDefine =\n (inConfig: ElementConfig | string): ClassDecorator =>\n (constructor: any) => {\n const config: ElementConfig = typeof inConfig === 'string' ? { name: inConfig } : inConfig;\n const { win, doc, builtInTagMap: BUILT_IN_TAG_MAP, domHelpers: SWC_DOM_HELPERS } = buildEnv(config.window);\n config.window = win;\n const SWC_DOM_HELPER_KEYS = Object.keys(SWC_DOM_HELPERS) as (keyof typeof SWC_DOM_HELPERS)[];\n const SWC_DOM_HELPER_VALS = () => SWC_DOM_HELPER_KEYS.map(k => (SWC_DOM_HELPERS as any)[k]);\n\n let extendsTagName = config.extends;\n if (!extendsTagName) {\n let proto = constructor;\n while (proto && proto !== HTMLElement && proto !== Function.prototype) {\n extendsTagName = BUILT_IN_TAG_MAP.get(proto);\n if (extendsTagName) break;\n proto = Object.getPrototypeOf(proto);\n }\n config.extends = extendsTagName;\n }\n\n const attributePropsList = getAttributeMetadataList(constructor);\n const emitCustomEventList = getEmitCustomEventMetadataList(constructor);\n const stateList = getStateMetadataList(constructor);\n const observedFromProps = attributePropsList ? attributePropsList.map(it => it.options.name!) : [];\n const observedFromEmits = emitCustomEventList ? emitCustomEventList.map(it => it.options.attributeName!) : [];\n const swcLifecycleAttributes = ['swc-on-constructor', 'swc-on-before-connected', 'swc-on-after-connected', 'swc-on-before-disconnected', 'swc-on-after-disconnected', 'swc-on-before-adopted', 'swc-on-after-adopted', 'swc-on-attribute-changed'];\n const mergedObservedAttributes = [...new Set([...(config.observedAttributes ?? []), ...observedFromProps, ...observedFromEmits, ...swcLifecycleAttributes])];\n\n const NewClass = class extends (constructor as any) {\n private _swcId = Math.random().toString(36).substring(2, 11);\n private _observer: MutationObserver | null = null;\n private _shadowObserver: MutationObserver | null = null;\n private _boundElements = new WeakMap<Element, Set<string | symbol>>();\n private _activeListeners: Array<{ el: Element | HTMLElement; type: string; handler: EventListener; options?: any }> = [];\n private _emitHandlers = new Map<string, EventListener>();\n private _stateBindings = new Map<string, any[]>();\n private _internalStates = new Map<string | symbol, any>();\n private _externalSources = new Map<string, HTMLElement>();\n\n _getHostContext(): Record<string, any> {\n const ctx: Record<string, any> = {};\n if (stateList) {\n stateList.forEach(meta => {\n const name = meta.options.name!;\n const val = this._internalStates.get(meta.propertyKey);\n ctx[name] = val;\n });\n }\n if (attributePropsList) {\n attributePropsList.forEach(meta => {\n const name = meta.options.name!;\n const val = this._internalStates.get(meta.propertyKey);\n ctx[name] = val;\n });\n }\n const hostVal = (this as any).value !== undefined ? (this as any).value : this;\n ctx['value'] = hostVal;\n const alias = this.getAttribute('as');\n if (alias && alias !== 'value') ctx[alias] = hostVal;\n return ctx;\n }\n\n static get observedAttributes() {\n return mergedObservedAttributes;\n }\n\n private _executeSwcScript(attrName: string, hostSet: HostSet, extraArgs: Record<string, any> = {}) {\n const script = this.getAttribute(attrName);\n if (script) {\n try {\n const args = { ...hostSet, ...SWC_DOM_HELPERS, ...extraArgs };\n const argNames = Object.keys(args);\n const argValues = Object.values(args);\n new Function(...argNames, script).apply(this, argValues);\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attrName} script:`, e);\n }\n }\n }\n\n private async _invokeLifecycleMethod(methodName: string | symbol, hostSet: HostSet, extraArgs: any[] = []) {\n if (typeof (this as any)[methodName] !== 'function') return;\n const app = hostSet.$appHost?.simpleApplication;\n\n if (app) {\n const otherStorage = new Map<any, any>();\n const situations = new SituationTypeContainers([new SituationTypeContainer({ situationType: InjectSituationType.HOST_SET, data: hostSet }), new SituationTypeContainer({ situationType: InjectSituationType.APP_HOST, data: hostSet.$appHost }), new SituationTypeContainer({ situationType: InjectSituationType.APP_HOSTS, data: hostSet.$appHosts }), new SituationTypeContainer({ situationType: InjectSituationType.HOST, data: hostSet.$host }), new SituationTypeContainer({ situationType: InjectSituationType.HOSTS, data: hostSet.$hosts }), new SituationTypeContainer({ situationType: InjectSituationType.FIRST_HOST, data: hostSet.$firstHost }), new SituationTypeContainer({ situationType: InjectSituationType.LAST_HOST, data: hostSet.$lastHost }), new SituationTypeContainer({ situationType: InjectSituationType.FIRST_APP_HOST, data: hostSet.$firstAppHost }), new SituationTypeContainer({ situationType: InjectSituationType.LAST_APP_HOST, data: hostSet.$lastAppHost })]);\n otherStorage.set(SituationTypeContainers, situations);\n\n return app.simstanceManager.executeBindParameterSimPromise(\n {\n target: this,\n targetKey: methodName,\n inputParameters: extraArgs\n },\n otherStorage\n );\n } else {\n return (this as any)[methodName](hostSet,...extraArgs);\n }\n }\n\n constructor(...args: any[]) {\n super(...args);\n const hostSet = SwcUtils.getHostSet(this as any);\n this._executeSwcScript('swc-on-constructor', hostSet);\n\n if (stateList) {\n stateList.forEach(meta => {\n const key = meta.propertyKey;\n const stateName = meta.options.name!;\n const initialVal = (this as any)[key];\n this._internalStates.set(\n key,\n SwcUtils.createReactiveProxy(initialVal, () => this._updateState(stateName))\n );\n Object.defineProperty(this, key, {\n get: () => this._internalStates.get(key),\n set: newVal => {\n if (this._internalStates.get(key) === newVal) return;\n this._internalStates.set(\n key,\n SwcUtils.createReactiveProxy(newVal, () => this._updateState(stateName))\n );\n this._updateState(stateName);\n },\n enumerable: true,\n configurable: true\n });\n });\n }\n if (attributePropsList) {\n attributePropsList.forEach(meta => {\n const key = meta.propertyKey;\n const attrName = meta.options.name!;\n const attrValue = this.getAttribute(attrName);\n let initialVal = attrValue !== null ? attrValue : (this as any)[key];\n if (initialVal === undefined) initialVal = null;\n if (attrValue !== null) {\n if (meta.options.type === Number) initialVal = Number(attrValue);\n else if (meta.options.type === Boolean) initialVal = true;\n else if (meta.options.type === Object) {\n try {\n initialVal = JSON.parse(attrValue);\n } catch (e) {}\n }\n }\n this._internalStates.set(key, initialVal);\n Object.defineProperty(this, key, {\n get: () => this._internalStates.get(key),\n set: newVal => {\n if (this._internalStates.get(key) === newVal) return;\n this._internalStates.set(key, newVal);\n if (typeof (this as any)._updateState === 'function') (this as any)._updateState(attrName);\n if (!meta.options.disableReflect && this.setAttribute && typeof newVal !== 'object') {\n if (newVal === null || newVal === undefined || newVal === false) this.removeAttribute(attrName);\n else this.setAttribute(attrName, String(newVal));\n }\n },\n enumerable: true,\n configurable: true\n });\n });\n }\n const innerHtmlList = getInnerHtmlMetadataList(this);\n if (innerHtmlList?.some(it => it.options.useShadow === true) && !this.shadowRoot) {\n this.attachShadow({ mode: 'open' });\n }\n }\n\n private _isSyncing = false;\n private _syncDecorators() {\n if (this._isSyncing) return;\n this._isSyncing = true;\n try {\n this._buildStateMap();\n this._syncEventListenersAndQueries();\n } finally {\n this._isSyncing = false;\n }\n }\n\n private _syncEventListenersAndQueries() {\n const getSearchRoots = (rootOption?: string): Node[] => {\n const roots: Node[] = [];\n if (rootOption === 'shadow') {\n if (this.shadowRoot) roots.push(this.shadowRoot);\n } else if (rootOption === 'light') {\n roots.push(this as any as Node);\n } else if (rootOption === 'all') {\n if (this.shadowRoot) roots.push(this.shadowRoot);\n roots.push(this as any as Node);\n } else {\n roots.push(this.shadowRoot || (this as any as Node));\n }\n return roots;\n };\n const queryMetadata = getQueryMetadata(this);\n if (queryMetadata) {\n queryMetadata\n .filter(it => it.isMethod)\n .forEach(it => {\n const searchRoots = getSearchRoots(it.options.root);\n let foundEl: Element | null = null;\n for (const root of searchRoots) {\n foundEl = it.selector ? (root as HTMLElement).querySelector(it.selector) : (this as any as Element);\n if (foundEl) break;\n }\n if (foundEl) {\n let bound = this._boundElements.get(foundEl);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(foundEl, bound);\n }\n if (!bound.has(it.propertyKey)) {\n (this as any)[it.propertyKey](foundEl);\n bound.add(it.propertyKey);\n }\n }\n });\n }\n const queryAllMetadata = getQueryAllMetadata(this);\n if (queryAllMetadata) {\n queryAllMetadata\n .filter(it => it.isMethod)\n .forEach(it => {\n const searchRoots = getSearchRoots(it.options.root);\n const allElements: Element[] = [];\n searchRoots.forEach(root => {\n const found = it.selector ? (root as HTMLElement).querySelectorAll(it.selector) : [this as any as Element];\n allElements.push(...Array.from(found));\n });\n (this as any)[it.propertyKey](allElements);\n });\n }\n const eventListeners = getAddEventListenerMetadata(this);\n if (eventListeners) {\n eventListeners.forEach(it => {\n const { query, type, root: rootOption, ...options } = it.options;\n const searchRoots = getSearchRoots(rootOption);\n searchRoots.forEach(root => {\n const targetElements = query ? (root as HTMLElement).querySelectorAll(query) : [this as any as Element];\n targetElements.forEach(targetElement => {\n if (targetElement) {\n let bound = this._boundElements.get(targetElement);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(targetElement, bound);\n }\n const eventKey = `event:${String(it.propertyKey)}:${type}`;\n if (!bound.has(eventKey)) {\n const handler = (event: any) => {\n if (it.options.stopImmediatePropagation) event.stopImmediatePropagation();\n if (it.options.stopPropagation) event.stopPropagation();\n if (it.options.preventDefault) event.preventDefault();\n (this as any)[it.propertyKey](event, targetElement);\n };\n targetElement.addEventListener(type, handler, options);\n bound.add(eventKey);\n if (config.autoRemoveEventListeners) this._activeListeners.push({ el: targetElement, type, handler, options });\n const addEventMethods = getLifecycleMetadata(this, ON_ADD_EVENT_LISTENER_METADATA_KEY);\n addEventMethods?.forEach((m: string | symbol) => {\n if (typeof (this as any)[m] === 'function') (this as any)[m](targetElement, type, handler);\n });\n }\n }\n });\n });\n });\n }\n }\n\n private _buildStateMap() {\n const scan = (root: Node) => {\n const walker = doc.createTreeWalker(root, (win as any).NodeFilter.SHOW_ELEMENT | (win as any).NodeFilter.SHOW_TEXT);\n let node: Node | null = null;\n while ((node = walker.nextNode())) {\n if (node.nodeType === Node.TEXT_NODE) this._parseAndBind(node, 'text');\n else if (node.nodeType === Node.ELEMENT_NODE) {\n const el = node as HTMLElement;\n const alias = el.getAttribute('as');\n if (alias && !this._externalSources.has(alias)) {\n this._externalSources.set(alias, el);\n const aliasKey = `alias-event:${alias}`;\n let bound = this._boundElements.get(el);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(el, bound);\n }\n if (!bound.has(aliasKey)) {\n el.addEventListener(STATE_CHANGE_EVENT, () => this._updateState(alias));\n bound.add(aliasKey);\n }\n }\n const $hosts = SwcUtils.findAllSwcHosts(el);\n $hosts.forEach(host => {\n const hAlias = host.getAttribute('as');\n if (hAlias) {\n const hostBindKey = `parent-host-event:${hAlias}`;\n let hBound = this._boundElements.get(host);\n if (!hBound) {\n hBound = new Set();\n this._boundElements.set(host, hBound);\n }\n if (!hBound.has(hostBindKey)) {\n host.addEventListener(STATE_CHANGE_EVENT, () => this._updateState(hAlias));\n hBound.add(hostBindKey);\n }\n }\n });\n Array.from(el.attributes).forEach(attr => {\n if (attr.name.startsWith('swc-on-') && !swcLifecycleAttributes.includes(attr.name)) {\n const eventName = attr.name.substring(7);\n const script = attr.value;\n const hostSet = SwcUtils.getHostSet(el);\n if (eventName === 'connected') {\n const eventKey = `attr-once:${attr.name}`;\n let bound = this._boundElements.get(el);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(el, bound);\n }\n if (!bound.has(eventKey)) {\n if (script) {\n try {\n const argNames = Object.keys(hostSet);\n const argValues = Object.values(hostSet);\n new Function('event', '$data', ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(el, null, null, ...argValues, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n bound.add(eventKey);\n }\n return;\n }\n const eventKey = `attr-event:${attr.name}`;\n let bound = this._boundElements.get(el);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(el, bound);\n }\n if (!bound.has(eventKey)) {\n const handler = (event: any) => {\n if (script) {\n try {\n const argNames = Object.keys(hostSet);\n const argValues = Object.values(hostSet);\n new Function('event', '$data', ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(el, event, (event as CustomEvent).detail, ...argValues, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n };\n el.addEventListener(eventName, handler);\n bound.add(eventKey);\n if (config.autoRemoveEventListeners) this._activeListeners.push({ el, type: eventName, handler });\n }\n }\n this._parseAndBind(attr, 'attribute', el);\n });\n const isSwcChild = (el as any)._swcId || getElementConfig(el.constructor) || (el.getAttribute('is')?.startsWith('swc-') ?? false);\n if (isSwcChild) {\n const next = walker.nextSibling();\n if (!next) break;\n node = next;\n if (node.nodeType === Node.TEXT_NODE) this._parseAndBind(node, 'text');\n }\n }\n }\n };\n if (this.shadowRoot) scan(this.shadowRoot);\n scan(this as any as Node);\n }\n\n private _parseAndBind(node: Node | Attr, type: 'text' | 'attribute', owner?: HTMLElement) {\n const tplKey = `__swc_original_${this._swcId}`;\n const isAlreadyBound = (node as any).__swc_bound_ids?.has(this._swcId);\n const content = (node as any)[tplKey] || node.textContent || '';\n const matches = Array.from(content.matchAll(/{{(.*?)}}/g)) as any[];\n if (matches.length === 0 || isAlreadyBound) return;\n matches.forEach(match => {\n const fullPath = (match[1] as string).trim();\n const rootName = fullPath.split('.')[0];\n const isState = stateList?.some(s => s.options.name === rootName);\n const isAttr = attributePropsList?.some(a => a.options.name === rootName);\n const isLogicKey = (this as any)._asKey === rootName || (this as any)._asItemKey === rootName || (this as any)._asIndexKey === rootName;\n const isExternal = this._externalSources.has(rootName);\n const isSelfAlias = this.getAttribute('as') === rootName;\n const isInstanceProp = rootName in this;\n let isParentAlias = false;\n let curr: any = (this as any).parentElement || ((this as any).getRootNode?.() as any)?.host;\n while (curr) {\n if (curr.getAttribute?.('as') === rootName) {\n isParentAlias = true;\n break;\n }\n curr = curr.parentElement || (curr.getRootNode?.() as any)?.host;\n }\n if (!isState && !isAttr && !isLogicKey && !isExternal && !isSelfAlias && !isInstanceProp && !isParentAlias) return;\n if (!this._stateBindings.has(rootName)) this._stateBindings.set(rootName, []);\n if (!(node as any)[tplKey]) (node as any)[tplKey] = content;\n if (!(node as any).__swc_bound_ids) (node as any).__swc_bound_ids = new Set();\n (node as any).__swc_bound_ids.add(this._swcId);\n this._stateBindings.get(rootName)!.push({ node, type, owner, path: fullPath });\n this._updateState(rootName);\n });\n }\n\n private _isUpdatingState = false;\n private _updateState(stateName: string) {\n if (!this._stateBindings) return;\n if (this._isUpdatingState) return;\n this._isUpdatingState = true;\n try {\n this._executeBindingUpdate(stateName);\n const selfAlias = this.getAttribute('as');\n if (selfAlias && selfAlias !== stateName) this._executeBindingUpdate(selfAlias);\n this.dispatchEvent(new CustomEvent(STATE_CHANGE_EVENT, { bubbles: true, composed: true, detail: { source: stateName, host: this } }));\n } finally {\n this._isUpdatingState = false;\n }\n }\n\n private _executeBindingUpdate(stateName: string) {\n const bindings = this._stateBindings.get(stateName);\n if (!bindings) return;\n const tplKey = `__swc_original_${this._swcId}`;\n bindings.forEach(bin => {\n let text = (bin.node as any)[tplKey];\n if (!text) return;\n const matches = Array.from(text.matchAll(/{{(.*?)}}/g)) as RegExpMatchArray[];\n let updatedText = text;\n for (const match of matches) {\n const path = match[1].trim();\n const root = path.split('.')[0];\n let val: any = undefined;\n let current: HTMLElement | null = this as any as HTMLElement;\n while (current) {\n const currentNewClass = current as any;\n if (current.getAttribute('as') === root) {\n val = SwcUtils.getValueByPath(current, path.split('.').slice(1).join('.') || 'value', 'value');\n if (val !== SWC_NOT_FOUND) break;\n }\n const externalSource = currentNewClass._externalSources?.get(root);\n if (externalSource) {\n val = SwcUtils.getValueByPath(externalSource, path.split('.').slice(1).join('.') || 'value', 'value');\n if (val !== SWC_NOT_FOUND) break;\n }\n const cStates = getStateMetadataList(current.constructor);\n const cAttrs = getAttributeMetadataList(current.constructor);\n const sMeta = cStates?.find(s => s.options.name === root);\n const aMeta = cAttrs?.find(a => a.options.name === root);\n if (sMeta || aMeta) {\n const propKey = sMeta ? String(sMeta.propertyKey) : String(aMeta!.propertyKey);\n const rootVal = (current as any)[propKey];\n const subPath = path.split('.').slice(1).join('.');\n if (subPath) {\n val = SwcUtils.getValueByPath(rootVal, subPath, subPath.split('.')[0]);\n if (val === SWC_NOT_FOUND) {\n const parts = subPath.split('.');\n let cur = rootVal;\n for (const p of parts) {\n if (cur === null || cur === undefined) {\n cur = SWC_NOT_FOUND;\n break;\n }\n cur = cur[p];\n }\n if (cur !== undefined && cur !== SWC_NOT_FOUND) val = cur;\n }\n } else {\n val = rootVal;\n }\n if (val !== SWC_NOT_FOUND && val !== undefined) break;\n }\n if (root in current) {\n val = SwcUtils.getValueByPath(current, path, root);\n if (val !== SWC_NOT_FOUND) break;\n }\n current = current.parentElement || (current.getRootNode() as any).host;\n }\n if (val !== SWC_NOT_FOUND && val !== undefined) {\n const strVal = val === null ? '' : typeof val === 'object' ? JSON.stringify(val) : String(val);\n updatedText = updatedText.replace(match[0], strVal);\n if (bin.type === 'attribute' && bin.owner) {\n const attrName = (bin.node as Attr).name;\n const ownerAttrs = getAttributeMetadataList(bin.owner.constructor);\n const attrMeta = ownerAttrs?.find(a => a.options.name === attrName);\n const propName = attrMeta ? String(attrMeta.propertyKey) : attrName.replace(/-([a-z])/g, g => g[1].toUpperCase());\n if (val === null || val === undefined) {\n bin.owner.removeAttribute(attrName);\n if (propName in bin.owner) (bin.owner as any)[propName] = val;\n } else {\n if (propName in bin.owner) (bin.owner as any)[propName] = val;\n bin.owner.setAttribute(attrName, updatedText);\n if ((attrName === 'value' || attrName === 'checked') && bin.owner.tagName.match(/INPUT|TEXTAREA|SELECT/)) {\n (bin.owner as any)[attrName] = updatedText;\n }\n }\n }\n }\n }\n if (bin.type === 'text') bin.node.textContent = updatedText;\n });\n }\n\n disconnectedCallback() {\n const hostSet = SwcUtils.getHostSet(this as any);\n this._executeSwcScript('swc-on-before-disconnected', hostSet);\n const bMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_BEFORE_DISCONNECTED_METADATA_KEY);\n bMethods?.forEach(m => this._invokeLifecycleMethod(m, hostSet));\n if (this._observer) this._observer.disconnect();\n if (this._shadowObserver) this._shadowObserver.disconnect();\n if (config.autoRemoveEventListeners) {\n this._activeListeners.forEach(({ el, type, handler, options }) => el.removeEventListener(type, handler, options));\n this._activeListeners = [];\n }\n if (super.disconnectedCallback) super.disconnectedCallback();\n const aMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_AFTER_DISCONNECTED_METADATA_KEY);\n aMethods?.forEach(m => this._invokeLifecycleMethod(m, hostSet));\n this._executeSwcScript('swc-on-after-disconnected', hostSet);\n }\n\n adoptedCallback() {\n const hostSet = SwcUtils.getHostSet(this as any);\n this._executeSwcScript('swc-on-before-adopted', hostSet);\n const bMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_BEFORE_ADOPTED_METADATA_KEY);\n bMethods?.forEach(m => this._invokeLifecycleMethod(m, hostSet));\n if (super.adoptedCallback) super.adoptedCallback();\n const aMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_AFTER_ADOPTED_METADATA_KEY);\n aMethods?.forEach(m => this._invokeLifecycleMethod(m, hostSet));\n this._executeSwcScript('swc-on-after-adopted', hostSet);\n }\n\n async connectedCallback() {\n // await new Promise(resolve => setTimeout(resolve, 0));\n const hostSet = SwcUtils.getHostSet(this as any);\n this._executeSwcScript('swc-on-before-connected', hostSet);\n const bMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_BEFORE_CONNECTED_METADATA_KEY);\n if (bMethods) {\n for (const m of bMethods) {\n await this._invokeLifecycleMethod(m, hostSet);\n }\n }\n if (typeof (this as any).initCore === 'function') (this as any).initCore();\n const iHtmlList = getInnerHtmlMetadataList(this);\n let sContent = '';\n let lContent = '';\n if (iHtmlList) {\n for (const meta of iHtmlList) {\n const result = await (this as any)[meta.propertyKey]();\n if (result !== undefined) {\n if (meta.options.useShadow === true) sContent += result;\n else lContent += result;\n }\n }\n }\n if (this.shadowRoot) this.shadowRoot.innerHTML = sContent;\n if (lContent) this.innerHTML = lContent;\n (this as any)._syncDecorators();\n\n // --- Root Host self-binding logic ---\n const isManagedByParent = !!SwcUtils.findNearestSwcHost(this as any);\n if (!isManagedByParent) {\n Array.from(this.attributes as any).forEach((attr: any) => {\n if (attr.name.startsWith('swc-on-') && !swcLifecycleAttributes.includes(attr.name)) {\n const eventName = attr.name.substring(7);\n const script = attr.value;\n if (eventName === 'connected') {\n const eventKey = `host-attr-once:${attr.name}`;\n let bound = this._boundElements.get(this as any);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(this as any, bound);\n }\n if (!bound.has(eventKey)) {\n if (script) {\n try {\n const argNames = Object.keys(hostSet);\n const argValues = Object.values(hostSet);\n new Function('event', '$data', ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(this, null, null, ...argValues, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n bound.add(eventKey);\n }\n return;\n }\n const eventKey = `host-attr-event:${attr.name}`;\n let bound = this._boundElements.get(this as any);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(this as any, bound);\n }\n if (!bound.has(eventKey)) {\n const handler = (event: any) => {\n if (script) {\n try {\n const argNames = Object.keys(hostSet);\n const argValues = Object.values(hostSet);\n new Function('event', '$data', ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(this, event, (event as CustomEvent).detail, ...argValues, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n };\n this.addEventListener(eventName, handler);\n bound.add(eventKey);\n if (config.autoRemoveEventListeners) this._activeListeners.push({ el: this as any, type: eventName, handler });\n }\n }\n });\n }\n\n const mutationMetaList = getMutationSubscribeMetadataList(this);\n const fireMutationCallbacks = (mutationList: MutationRecord[], observer: MutationObserver, root: 'light' | 'shadow') => {\n mutationMetaList?.forEach(meta => {\n const r = meta.options.root ?? 'auto';\n const matches = r === 'all' || r === root || (r === 'auto' && (this.shadowRoot ? root === 'shadow' : root === 'light'));\n if (matches && typeof (this as any)[meta.propertyKey] === 'function') {\n (this as any)[meta.propertyKey](mutationList, observer, root);\n }\n });\n };\n this._observer = new (win as any).MutationObserver((mutationList: MutationRecord[], observer: MutationObserver) => {\n (this as any)._syncDecorators();\n fireMutationCallbacks(mutationList, observer, 'light');\n });\n // @ts-ignore\n this._observer.observe(this as any, { childList: true, subtree: true });\n if (this.shadowRoot) {\n this._shadowObserver = new (win as any).MutationObserver((mutationList: MutationRecord[], observer: MutationObserver) => {\n (this as any)._syncDecorators();\n fireMutationCallbacks(mutationList, observer, 'shadow');\n });\n // @ts-ignore\n this._shadowObserver.observe(this.shadowRoot, { childList: true, subtree: true });\n }\n if (super.connectedCallback) await super.connectedCallback();\n const aMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_AFTER_CONNECTED_METADATA_KEY);\n if (aMethods) {\n for (const m of aMethods) {\n await this._invokeLifecycleMethod(m, hostSet);\n }\n }\n this._executeSwcScript('swc-on-after-connected', hostSet);\n }\n\n attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null) {\n if (super.attributeChangedCallback) super.attributeChangedCallback(name, oldValue, newValue);\n if (attributePropsList) {\n attributePropsList.forEach(meta => {\n if (meta.options.name === name) {\n const current = (this as any)[meta.propertyKey];\n if (typeof current === 'object' && current !== null) return;\n if (String(current) !== String(newValue)) (this as any)[meta.propertyKey] = newValue;\n }\n });\n }\n if (typeof (this as any)._updateState === 'function') (this as any)._updateState(name);\n const aMethodsMap = getLifecycleMetadata(constructor, ON_ATTRIBUTE_CHANGED_METADATA_KEY) as Map<string, (string | symbol)[]>;\n const mKeys = aMethodsMap?.get(name);\n const hostSet = SwcUtils.getHostSet(this as any);\n if (mKeys && Array.isArray(mKeys)) {\n mKeys.forEach(key => this._invokeLifecycleMethod(key, hostSet, [newValue, oldValue, name]));\n }\n if (emitCustomEventList) {\n const eMeta = emitCustomEventList.find(it => it.options.attributeName === name);\n if (eMeta) {\n const eType = eMeta.options.type;\n const oHandler = this._emitHandlers.get(eType);\n if (oHandler) this.removeEventListener(eType, oHandler);\n if (newValue) {\n const nHandler = (e: Event) => {\n new Function('event', '$data', newValue).call(this, e, (e as CustomEvent).detail);\n };\n this.addEventListener(eType, nHandler);\n this._emitHandlers.set(eType, nHandler);\n }\n }\n }\n const wMethodsKeys = aMethodsMap?.get(ATTRIBUTE_CHANGED_WILDCARD);\n if (wMethodsKeys && Array.isArray(wMethodsKeys)) {\n wMethodsKeys.forEach(key => this._invokeLifecycleMethod(key, hostSet, [newValue, oldValue, name]));\n }\n this._executeSwcScript('swc-on-attribute-changed', hostSet, { $new: newValue, $old: oldValue, $name: name });\n }\n };\n\n // [METADATA INHERITANCE FIX]\n // Copy method metadata from original constructor to NewClass\n // This ensures @Inject and other decorators on methods work correctly in the wrapped class.\n const originalProto = constructor.prototype;\n const newProto = NewClass.prototype;\n Object.getOwnPropertyNames(originalProto).forEach(name => {\n if (name === 'constructor') return;\n const keys = Reflect.getMetadataKeys(originalProto, name);\n keys.forEach(key => {\n const metadata = Reflect.getMetadata(key, originalProto, name);\n Reflect.defineMetadata(key, metadata, newProto, name);\n });\n });\n\n ReflectUtils.defineMetadata(ELEMENT_CONFIG_KEY, config, NewClass);\n ReflectUtils.defineMetadata(ELEMENT_CONFIG_KEY, config, constructor);\n const registry = config.customElementRegistry || (typeof win !== 'undefined' ? win.customElements : undefined);\n if (registry && !registry.get(config.name)) {\n const options = config.extends ? { extends: config.extends } : undefined;\n registry.define(config.name, NewClass as any, options);\n }\n return NewClass as any;\n };\n\nexport const getElementConfig = (target: any): ElementConfig | undefined => {\n const constructor = target instanceof Function ? target : target.constructor;\n return ReflectUtils.getMetadata(ELEMENT_CONFIG_KEY, constructor);\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["eventKey", "bound"]
7
7
  }