@dooboostore/simple-web-component 1.0.18 → 1.0.19

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 (589) hide show
  1. package/README.md +96 -77
  2. package/dist/cjs/config/config.js +2 -0
  3. package/dist/cjs/config/config.js.map +2 -2
  4. package/dist/cjs/decorators/addEventListener.js +4 -4
  5. package/dist/cjs/decorators/addEventListener.js.map +2 -2
  6. package/dist/cjs/decorators/appendChild.js +51 -7
  7. package/dist/cjs/decorators/appendChild.js.map +2 -2
  8. package/dist/cjs/decorators/classList.js +104 -0
  9. package/dist/cjs/decorators/classList.js.map +7 -0
  10. package/dist/cjs/decorators/elementDefine.js +306 -424
  11. package/dist/cjs/decorators/elementDefine.js.map +3 -3
  12. package/dist/cjs/decorators/emitCustomEvent.js +61 -9
  13. package/dist/cjs/decorators/emitCustomEvent.js.map +2 -2
  14. package/dist/cjs/decorators/index.js +3 -0
  15. package/dist/cjs/decorators/index.js.map +2 -2
  16. package/dist/cjs/decorators/query.js +56 -32
  17. package/dist/cjs/decorators/query.js.map +2 -2
  18. package/dist/cjs/decorators/queryAll.js +43 -19
  19. package/dist/cjs/decorators/queryAll.js.map +2 -2
  20. package/dist/cjs/decorators/replaceChildren.js +27 -1
  21. package/dist/cjs/decorators/replaceChildren.js.map +2 -2
  22. package/dist/cjs/decorators/setAttribute.js +35 -7
  23. package/dist/cjs/decorators/setAttribute.js.map +2 -2
  24. package/dist/cjs/decorators/style.js +88 -0
  25. package/dist/cjs/decorators/style.js.map +7 -0
  26. package/dist/cjs/elements/SwcAppEngine.js +23 -8
  27. package/dist/cjs/elements/SwcAppEngine.js.map +2 -2
  28. package/dist/cjs/elements/SwcAppMixin.js +52 -0
  29. package/dist/cjs/elements/SwcAppMixin.js.map +7 -0
  30. package/dist/cjs/elements/SwcAsync.js +57 -122
  31. package/dist/cjs/elements/SwcAsync.js.map +3 -3
  32. package/dist/cjs/elements/SwcChoose.js +51 -75
  33. package/dist/cjs/elements/SwcChoose.js.map +3 -3
  34. package/dist/cjs/elements/SwcIf.js +65 -93
  35. package/dist/cjs/elements/SwcIf.js.map +3 -3
  36. package/dist/cjs/elements/SwcLoop.js +72 -173
  37. package/dist/cjs/elements/SwcLoop.js.map +3 -3
  38. package/dist/cjs/elements/SwcSubTemplates.js +12 -37
  39. package/dist/cjs/elements/SwcSubTemplates.js.map +3 -3
  40. package/dist/cjs/elements/index.js +1 -8
  41. package/dist/cjs/elements/index.js.map +2 -2
  42. package/dist/cjs/elements/register.js +831 -0
  43. package/dist/cjs/elements/register.js.map +7 -0
  44. package/dist/cjs/index.js +13 -3
  45. package/dist/cjs/index.js.map +2 -2
  46. package/dist/cjs/types.js.map +1 -1
  47. package/dist/cjs/utils/TemplateUtils.js +103 -0
  48. package/dist/cjs/utils/TemplateUtils.js.map +7 -0
  49. package/dist/cjs/utils/Utils.js +10 -7
  50. package/dist/cjs/utils/Utils.js.map +2 -2
  51. package/dist/esm/config/config.js +2 -0
  52. package/dist/esm/config/config.js.map +2 -2
  53. package/dist/esm/decorators/addEventListener.js +4 -4
  54. package/dist/esm/decorators/addEventListener.js.map +2 -2
  55. package/dist/esm/decorators/appendChild.js +51 -7
  56. package/dist/esm/decorators/appendChild.js.map +2 -2
  57. package/dist/esm/decorators/classList.js +85 -0
  58. package/dist/esm/decorators/classList.js.map +7 -0
  59. package/dist/esm/decorators/elementDefine.js +306 -424
  60. package/dist/esm/decorators/elementDefine.js.map +3 -3
  61. package/dist/esm/decorators/emitCustomEvent.js +61 -9
  62. package/dist/esm/decorators/emitCustomEvent.js.map +2 -2
  63. package/dist/esm/decorators/index.js +3 -0
  64. package/dist/esm/decorators/index.js.map +2 -2
  65. package/dist/esm/decorators/query.js +57 -33
  66. package/dist/esm/decorators/query.js.map +2 -2
  67. package/dist/esm/decorators/queryAll.js +44 -20
  68. package/dist/esm/decorators/queryAll.js.map +2 -2
  69. package/dist/esm/decorators/replaceChildren.js +27 -1
  70. package/dist/esm/decorators/replaceChildren.js.map +2 -2
  71. package/dist/esm/decorators/setAttribute.js +35 -7
  72. package/dist/esm/decorators/setAttribute.js.map +2 -2
  73. package/dist/esm/decorators/style.js +69 -0
  74. package/dist/esm/decorators/style.js.map +7 -0
  75. package/dist/esm/elements/SwcAppEngine.js +23 -8
  76. package/dist/esm/elements/SwcAppEngine.js.map +2 -2
  77. package/dist/esm/elements/SwcAppMixin.js +33 -0
  78. package/dist/esm/elements/SwcAppMixin.js.map +7 -0
  79. package/dist/esm/elements/SwcAsync.js +57 -122
  80. package/dist/esm/elements/SwcAsync.js.map +3 -3
  81. package/dist/esm/elements/SwcChoose.js +51 -75
  82. package/dist/esm/elements/SwcChoose.js.map +3 -3
  83. package/dist/esm/elements/SwcIf.js +65 -93
  84. package/dist/esm/elements/SwcIf.js.map +3 -3
  85. package/dist/esm/elements/SwcLoop.js +71 -172
  86. package/dist/esm/elements/SwcLoop.js.map +3 -3
  87. package/dist/esm/elements/SwcSubTemplates.js +12 -37
  88. package/dist/esm/elements/SwcSubTemplates.js.map +3 -3
  89. package/dist/esm/elements/index.js +1 -8
  90. package/dist/esm/elements/index.js.map +2 -2
  91. package/dist/esm/elements/register.js +812 -0
  92. package/dist/esm/elements/register.js.map +7 -0
  93. package/dist/esm/index.js +13 -3
  94. package/dist/esm/index.js.map +2 -2
  95. package/dist/esm/types.js.map +1 -1
  96. package/dist/esm/utils/TemplateUtils.js +84 -0
  97. package/dist/esm/utils/TemplateUtils.js.map +7 -0
  98. package/dist/esm/utils/Utils.js +6 -3
  99. package/dist/esm/utils/Utils.js.map +2 -2
  100. package/dist/esm-bundle/dooboostore-simple-web-component.esm.js +1010 -5634
  101. package/dist/esm-bundle/dooboostore-simple-web-component.esm.js.map +4 -4
  102. package/dist/types/config/config.d.ts +1 -0
  103. package/dist/types/config/config.d.ts.map +1 -1
  104. package/dist/types/decorators/addEventListener.d.ts +11 -11
  105. package/dist/types/decorators/addEventListener.d.ts.map +1 -1
  106. package/dist/types/decorators/appendChild.d.ts +1 -1
  107. package/dist/types/decorators/appendChild.d.ts.map +1 -1
  108. package/dist/types/decorators/classList.d.ts +34 -0
  109. package/dist/types/decorators/classList.d.ts.map +1 -0
  110. package/dist/types/decorators/elementDefine.d.ts +9 -5
  111. package/dist/types/decorators/elementDefine.d.ts.map +1 -1
  112. package/dist/types/decorators/emitCustomEvent.d.ts +7 -4
  113. package/dist/types/decorators/emitCustomEvent.d.ts.map +1 -1
  114. package/dist/types/decorators/index.d.ts +3 -0
  115. package/dist/types/decorators/index.d.ts.map +1 -1
  116. package/dist/types/decorators/query.d.ts +7 -8
  117. package/dist/types/decorators/query.d.ts.map +1 -1
  118. package/dist/types/decorators/queryAll.d.ts +5 -9
  119. package/dist/types/decorators/queryAll.d.ts.map +1 -1
  120. package/dist/types/decorators/replaceChildren.d.ts.map +1 -1
  121. package/dist/types/decorators/setAttribute.d.ts +13 -3
  122. package/dist/types/decorators/setAttribute.d.ts.map +1 -1
  123. package/dist/types/decorators/style.d.ts +24 -0
  124. package/dist/types/decorators/style.d.ts.map +1 -0
  125. package/dist/types/elements/SwcAppEngine.d.ts +2 -2
  126. package/dist/types/elements/SwcAppEngine.d.ts.map +1 -1
  127. package/dist/types/elements/SwcAppMixin.d.ts +364 -0
  128. package/dist/types/elements/SwcAppMixin.d.ts.map +1 -0
  129. package/dist/types/elements/SwcAsync.d.ts +2 -6
  130. package/dist/types/elements/SwcAsync.d.ts.map +1 -1
  131. package/dist/types/elements/SwcChoose.d.ts +2 -1
  132. package/dist/types/elements/SwcChoose.d.ts.map +1 -1
  133. package/dist/types/elements/SwcIf.d.ts +5 -6
  134. package/dist/types/elements/SwcIf.d.ts.map +1 -1
  135. package/dist/types/elements/SwcLoop.d.ts +4 -10
  136. package/dist/types/elements/SwcLoop.d.ts.map +1 -1
  137. package/dist/types/elements/SwcSubTemplates.d.ts.map +1 -1
  138. package/dist/types/elements/index.d.ts +1 -8
  139. package/dist/types/elements/index.d.ts.map +1 -1
  140. package/dist/types/elements/register.d.ts +2 -0
  141. package/dist/types/elements/register.d.ts.map +1 -0
  142. package/dist/types/index.d.ts +7 -3
  143. package/dist/types/index.d.ts.map +1 -1
  144. package/dist/types/types.d.ts +6 -1
  145. package/dist/types/types.d.ts.map +1 -1
  146. package/dist/types/utils/TemplateUtils.d.ts +54 -0
  147. package/dist/types/utils/TemplateUtils.d.ts.map +1 -0
  148. package/dist/types/utils/Utils.d.ts.map +1 -1
  149. package/dist/umd-bundle/dooboostore-simple-web-component.umd.js +1010 -5634
  150. package/dist/umd-bundle/dooboostore-simple-web-component.umd.js.map +4 -4
  151. package/package.json +2 -2
  152. package/src/config/config.ts +2 -0
  153. package/src/decorators/addEventListener.ts +12 -11
  154. package/src/decorators/appendChild.ts +52 -8
  155. package/src/decorators/classList.ts +117 -0
  156. package/src/decorators/elementDefine.ts +340 -427
  157. package/src/decorators/emitCustomEvent.ts +76 -12
  158. package/src/decorators/index.ts +3 -0
  159. package/src/decorators/query.ts +57 -37
  160. package/src/decorators/queryAll.ts +44 -28
  161. package/src/decorators/replaceChildren.ts +30 -1
  162. package/src/decorators/setAttribute.ts +53 -11
  163. package/src/decorators/style.ts +89 -0
  164. package/src/elements/SwcAppEngine.ts +26 -11
  165. package/src/elements/SwcAppMixin.ts +34 -0
  166. package/src/elements/SwcAsync.ts +57 -127
  167. package/src/elements/SwcChoose.ts +50 -76
  168. package/src/elements/SwcIf.ts +63 -85
  169. package/src/elements/SwcLoop.ts +70 -167
  170. package/src/elements/SwcSubTemplates.ts +0 -13
  171. package/src/elements/index.ts +1 -8
  172. package/src/elements/register.ts +735 -0
  173. package/src/index.ts +16 -5
  174. package/src/types.ts +13 -5
  175. package/src/utils/TemplateUtils.ts +83 -0
  176. package/src/utils/Utils.ts +6 -3
  177. package/dist/cjs/elements/SwcApp.js +0 -55
  178. package/dist/cjs/elements/SwcApp.js.map +0 -7
  179. package/dist/cjs/elements/is/SwcAppAnchor.js +0 -55
  180. package/dist/cjs/elements/is/SwcAppAnchor.js.map +0 -7
  181. package/dist/cjs/elements/is/SwcAppArea.js +0 -55
  182. package/dist/cjs/elements/is/SwcAppArea.js.map +0 -7
  183. package/dist/cjs/elements/is/SwcAppAudio.js +0 -55
  184. package/dist/cjs/elements/is/SwcAppAudio.js.map +0 -7
  185. package/dist/cjs/elements/is/SwcAppBase.js +0 -55
  186. package/dist/cjs/elements/is/SwcAppBase.js.map +0 -7
  187. package/dist/cjs/elements/is/SwcAppBody.js +0 -55
  188. package/dist/cjs/elements/is/SwcAppBody.js.map +0 -7
  189. package/dist/cjs/elements/is/SwcAppButton.js +0 -55
  190. package/dist/cjs/elements/is/SwcAppButton.js.map +0 -7
  191. package/dist/cjs/elements/is/SwcAppCanvas.js +0 -55
  192. package/dist/cjs/elements/is/SwcAppCanvas.js.map +0 -7
  193. package/dist/cjs/elements/is/SwcAppData.js +0 -55
  194. package/dist/cjs/elements/is/SwcAppData.js.map +0 -7
  195. package/dist/cjs/elements/is/SwcAppDataList.js +0 -55
  196. package/dist/cjs/elements/is/SwcAppDataList.js.map +0 -7
  197. package/dist/cjs/elements/is/SwcAppDetails.js +0 -55
  198. package/dist/cjs/elements/is/SwcAppDetails.js.map +0 -7
  199. package/dist/cjs/elements/is/SwcAppDialog.js +0 -55
  200. package/dist/cjs/elements/is/SwcAppDialog.js.map +0 -7
  201. package/dist/cjs/elements/is/SwcAppDiv.js +0 -55
  202. package/dist/cjs/elements/is/SwcAppDiv.js.map +0 -7
  203. package/dist/cjs/elements/is/SwcAppDl.js +0 -55
  204. package/dist/cjs/elements/is/SwcAppDl.js.map +0 -7
  205. package/dist/cjs/elements/is/SwcAppEmbed.js +0 -55
  206. package/dist/cjs/elements/is/SwcAppEmbed.js.map +0 -7
  207. package/dist/cjs/elements/is/SwcAppFieldSet.js +0 -55
  208. package/dist/cjs/elements/is/SwcAppFieldSet.js.map +0 -7
  209. package/dist/cjs/elements/is/SwcAppForm.js +0 -55
  210. package/dist/cjs/elements/is/SwcAppForm.js.map +0 -7
  211. package/dist/cjs/elements/is/SwcAppHeading.js +0 -55
  212. package/dist/cjs/elements/is/SwcAppHeading.js.map +0 -7
  213. package/dist/cjs/elements/is/SwcAppHr.js +0 -55
  214. package/dist/cjs/elements/is/SwcAppHr.js.map +0 -7
  215. package/dist/cjs/elements/is/SwcAppIFrame.js +0 -55
  216. package/dist/cjs/elements/is/SwcAppIFrame.js.map +0 -7
  217. package/dist/cjs/elements/is/SwcAppImage.js +0 -55
  218. package/dist/cjs/elements/is/SwcAppImage.js.map +0 -7
  219. package/dist/cjs/elements/is/SwcAppInput.js +0 -55
  220. package/dist/cjs/elements/is/SwcAppInput.js.map +0 -7
  221. package/dist/cjs/elements/is/SwcAppLabel.js +0 -55
  222. package/dist/cjs/elements/is/SwcAppLabel.js.map +0 -7
  223. package/dist/cjs/elements/is/SwcAppLegend.js +0 -55
  224. package/dist/cjs/elements/is/SwcAppLegend.js.map +0 -7
  225. package/dist/cjs/elements/is/SwcAppLi.js +0 -55
  226. package/dist/cjs/elements/is/SwcAppLi.js.map +0 -7
  227. package/dist/cjs/elements/is/SwcAppLink.js +0 -55
  228. package/dist/cjs/elements/is/SwcAppLink.js.map +0 -7
  229. package/dist/cjs/elements/is/SwcAppMap.js +0 -55
  230. package/dist/cjs/elements/is/SwcAppMap.js.map +0 -7
  231. package/dist/cjs/elements/is/SwcAppMeta.js +0 -55
  232. package/dist/cjs/elements/is/SwcAppMeta.js.map +0 -7
  233. package/dist/cjs/elements/is/SwcAppMeter.js +0 -55
  234. package/dist/cjs/elements/is/SwcAppMeter.js.map +0 -7
  235. package/dist/cjs/elements/is/SwcAppMod.js +0 -55
  236. package/dist/cjs/elements/is/SwcAppMod.js.map +0 -7
  237. package/dist/cjs/elements/is/SwcAppObject.js +0 -55
  238. package/dist/cjs/elements/is/SwcAppObject.js.map +0 -7
  239. package/dist/cjs/elements/is/SwcAppOl.js +0 -55
  240. package/dist/cjs/elements/is/SwcAppOl.js.map +0 -7
  241. package/dist/cjs/elements/is/SwcAppOptGroup.js +0 -55
  242. package/dist/cjs/elements/is/SwcAppOptGroup.js.map +0 -7
  243. package/dist/cjs/elements/is/SwcAppOption.js +0 -55
  244. package/dist/cjs/elements/is/SwcAppOption.js.map +0 -7
  245. package/dist/cjs/elements/is/SwcAppOutput.js +0 -55
  246. package/dist/cjs/elements/is/SwcAppOutput.js.map +0 -7
  247. package/dist/cjs/elements/is/SwcAppParagraph.js +0 -55
  248. package/dist/cjs/elements/is/SwcAppParagraph.js.map +0 -7
  249. package/dist/cjs/elements/is/SwcAppParam.js +0 -55
  250. package/dist/cjs/elements/is/SwcAppParam.js.map +0 -7
  251. package/dist/cjs/elements/is/SwcAppPicture.js +0 -55
  252. package/dist/cjs/elements/is/SwcAppPicture.js.map +0 -7
  253. package/dist/cjs/elements/is/SwcAppPre.js +0 -55
  254. package/dist/cjs/elements/is/SwcAppPre.js.map +0 -7
  255. package/dist/cjs/elements/is/SwcAppProgress.js +0 -55
  256. package/dist/cjs/elements/is/SwcAppProgress.js.map +0 -7
  257. package/dist/cjs/elements/is/SwcAppQuote.js +0 -55
  258. package/dist/cjs/elements/is/SwcAppQuote.js.map +0 -7
  259. package/dist/cjs/elements/is/SwcAppScript.js +0 -55
  260. package/dist/cjs/elements/is/SwcAppScript.js.map +0 -7
  261. package/dist/cjs/elements/is/SwcAppSelect.js +0 -55
  262. package/dist/cjs/elements/is/SwcAppSelect.js.map +0 -7
  263. package/dist/cjs/elements/is/SwcAppSlot.js +0 -55
  264. package/dist/cjs/elements/is/SwcAppSlot.js.map +0 -7
  265. package/dist/cjs/elements/is/SwcAppSource.js +0 -55
  266. package/dist/cjs/elements/is/SwcAppSource.js.map +0 -7
  267. package/dist/cjs/elements/is/SwcAppSpan.js +0 -55
  268. package/dist/cjs/elements/is/SwcAppSpan.js.map +0 -7
  269. package/dist/cjs/elements/is/SwcAppStyle.js +0 -55
  270. package/dist/cjs/elements/is/SwcAppStyle.js.map +0 -7
  271. package/dist/cjs/elements/is/SwcAppTable.js +0 -55
  272. package/dist/cjs/elements/is/SwcAppTable.js.map +0 -7
  273. package/dist/cjs/elements/is/SwcAppTableCell.js +0 -55
  274. package/dist/cjs/elements/is/SwcAppTableCell.js.map +0 -7
  275. package/dist/cjs/elements/is/SwcAppTableRow.js +0 -55
  276. package/dist/cjs/elements/is/SwcAppTableRow.js.map +0 -7
  277. package/dist/cjs/elements/is/SwcAppTableSection.js +0 -55
  278. package/dist/cjs/elements/is/SwcAppTableSection.js.map +0 -7
  279. package/dist/cjs/elements/is/SwcAppTemplate.js +0 -55
  280. package/dist/cjs/elements/is/SwcAppTemplate.js.map +0 -7
  281. package/dist/cjs/elements/is/SwcAppTextArea.js +0 -55
  282. package/dist/cjs/elements/is/SwcAppTextArea.js.map +0 -7
  283. package/dist/cjs/elements/is/SwcAppTime.js +0 -55
  284. package/dist/cjs/elements/is/SwcAppTime.js.map +0 -7
  285. package/dist/cjs/elements/is/SwcAppTitle.js +0 -55
  286. package/dist/cjs/elements/is/SwcAppTitle.js.map +0 -7
  287. package/dist/cjs/elements/is/SwcAppTrack.js +0 -55
  288. package/dist/cjs/elements/is/SwcAppTrack.js.map +0 -7
  289. package/dist/cjs/elements/is/SwcAppUl.js +0 -55
  290. package/dist/cjs/elements/is/SwcAppUl.js.map +0 -7
  291. package/dist/cjs/elements/is/SwcAppVideo.js +0 -55
  292. package/dist/cjs/elements/is/SwcAppVideo.js.map +0 -7
  293. package/dist/cjs/elements/is/index.js +0 -74
  294. package/dist/cjs/elements/is/index.js.map +0 -7
  295. package/dist/esm/elements/SwcApp.js +0 -36
  296. package/dist/esm/elements/SwcApp.js.map +0 -7
  297. package/dist/esm/elements/is/SwcAppAnchor.js +0 -36
  298. package/dist/esm/elements/is/SwcAppAnchor.js.map +0 -7
  299. package/dist/esm/elements/is/SwcAppArea.js +0 -36
  300. package/dist/esm/elements/is/SwcAppArea.js.map +0 -7
  301. package/dist/esm/elements/is/SwcAppAudio.js +0 -36
  302. package/dist/esm/elements/is/SwcAppAudio.js.map +0 -7
  303. package/dist/esm/elements/is/SwcAppBase.js +0 -36
  304. package/dist/esm/elements/is/SwcAppBase.js.map +0 -7
  305. package/dist/esm/elements/is/SwcAppBody.js +0 -36
  306. package/dist/esm/elements/is/SwcAppBody.js.map +0 -7
  307. package/dist/esm/elements/is/SwcAppButton.js +0 -36
  308. package/dist/esm/elements/is/SwcAppButton.js.map +0 -7
  309. package/dist/esm/elements/is/SwcAppCanvas.js +0 -36
  310. package/dist/esm/elements/is/SwcAppCanvas.js.map +0 -7
  311. package/dist/esm/elements/is/SwcAppData.js +0 -36
  312. package/dist/esm/elements/is/SwcAppData.js.map +0 -7
  313. package/dist/esm/elements/is/SwcAppDataList.js +0 -36
  314. package/dist/esm/elements/is/SwcAppDataList.js.map +0 -7
  315. package/dist/esm/elements/is/SwcAppDetails.js +0 -36
  316. package/dist/esm/elements/is/SwcAppDetails.js.map +0 -7
  317. package/dist/esm/elements/is/SwcAppDialog.js +0 -36
  318. package/dist/esm/elements/is/SwcAppDialog.js.map +0 -7
  319. package/dist/esm/elements/is/SwcAppDiv.js +0 -36
  320. package/dist/esm/elements/is/SwcAppDiv.js.map +0 -7
  321. package/dist/esm/elements/is/SwcAppDl.js +0 -36
  322. package/dist/esm/elements/is/SwcAppDl.js.map +0 -7
  323. package/dist/esm/elements/is/SwcAppEmbed.js +0 -36
  324. package/dist/esm/elements/is/SwcAppEmbed.js.map +0 -7
  325. package/dist/esm/elements/is/SwcAppFieldSet.js +0 -36
  326. package/dist/esm/elements/is/SwcAppFieldSet.js.map +0 -7
  327. package/dist/esm/elements/is/SwcAppForm.js +0 -36
  328. package/dist/esm/elements/is/SwcAppForm.js.map +0 -7
  329. package/dist/esm/elements/is/SwcAppHeading.js +0 -36
  330. package/dist/esm/elements/is/SwcAppHeading.js.map +0 -7
  331. package/dist/esm/elements/is/SwcAppHr.js +0 -36
  332. package/dist/esm/elements/is/SwcAppHr.js.map +0 -7
  333. package/dist/esm/elements/is/SwcAppIFrame.js +0 -36
  334. package/dist/esm/elements/is/SwcAppIFrame.js.map +0 -7
  335. package/dist/esm/elements/is/SwcAppImage.js +0 -36
  336. package/dist/esm/elements/is/SwcAppImage.js.map +0 -7
  337. package/dist/esm/elements/is/SwcAppInput.js +0 -36
  338. package/dist/esm/elements/is/SwcAppInput.js.map +0 -7
  339. package/dist/esm/elements/is/SwcAppLabel.js +0 -36
  340. package/dist/esm/elements/is/SwcAppLabel.js.map +0 -7
  341. package/dist/esm/elements/is/SwcAppLegend.js +0 -36
  342. package/dist/esm/elements/is/SwcAppLegend.js.map +0 -7
  343. package/dist/esm/elements/is/SwcAppLi.js +0 -36
  344. package/dist/esm/elements/is/SwcAppLi.js.map +0 -7
  345. package/dist/esm/elements/is/SwcAppLink.js +0 -36
  346. package/dist/esm/elements/is/SwcAppLink.js.map +0 -7
  347. package/dist/esm/elements/is/SwcAppMap.js +0 -36
  348. package/dist/esm/elements/is/SwcAppMap.js.map +0 -7
  349. package/dist/esm/elements/is/SwcAppMeta.js +0 -36
  350. package/dist/esm/elements/is/SwcAppMeta.js.map +0 -7
  351. package/dist/esm/elements/is/SwcAppMeter.js +0 -36
  352. package/dist/esm/elements/is/SwcAppMeter.js.map +0 -7
  353. package/dist/esm/elements/is/SwcAppMod.js +0 -36
  354. package/dist/esm/elements/is/SwcAppMod.js.map +0 -7
  355. package/dist/esm/elements/is/SwcAppObject.js +0 -36
  356. package/dist/esm/elements/is/SwcAppObject.js.map +0 -7
  357. package/dist/esm/elements/is/SwcAppOl.js +0 -36
  358. package/dist/esm/elements/is/SwcAppOl.js.map +0 -7
  359. package/dist/esm/elements/is/SwcAppOptGroup.js +0 -36
  360. package/dist/esm/elements/is/SwcAppOptGroup.js.map +0 -7
  361. package/dist/esm/elements/is/SwcAppOption.js +0 -36
  362. package/dist/esm/elements/is/SwcAppOption.js.map +0 -7
  363. package/dist/esm/elements/is/SwcAppOutput.js +0 -36
  364. package/dist/esm/elements/is/SwcAppOutput.js.map +0 -7
  365. package/dist/esm/elements/is/SwcAppParagraph.js +0 -36
  366. package/dist/esm/elements/is/SwcAppParagraph.js.map +0 -7
  367. package/dist/esm/elements/is/SwcAppParam.js +0 -36
  368. package/dist/esm/elements/is/SwcAppParam.js.map +0 -7
  369. package/dist/esm/elements/is/SwcAppPicture.js +0 -36
  370. package/dist/esm/elements/is/SwcAppPicture.js.map +0 -7
  371. package/dist/esm/elements/is/SwcAppPre.js +0 -36
  372. package/dist/esm/elements/is/SwcAppPre.js.map +0 -7
  373. package/dist/esm/elements/is/SwcAppProgress.js +0 -36
  374. package/dist/esm/elements/is/SwcAppProgress.js.map +0 -7
  375. package/dist/esm/elements/is/SwcAppQuote.js +0 -36
  376. package/dist/esm/elements/is/SwcAppQuote.js.map +0 -7
  377. package/dist/esm/elements/is/SwcAppScript.js +0 -36
  378. package/dist/esm/elements/is/SwcAppScript.js.map +0 -7
  379. package/dist/esm/elements/is/SwcAppSelect.js +0 -36
  380. package/dist/esm/elements/is/SwcAppSelect.js.map +0 -7
  381. package/dist/esm/elements/is/SwcAppSlot.js +0 -36
  382. package/dist/esm/elements/is/SwcAppSlot.js.map +0 -7
  383. package/dist/esm/elements/is/SwcAppSource.js +0 -36
  384. package/dist/esm/elements/is/SwcAppSource.js.map +0 -7
  385. package/dist/esm/elements/is/SwcAppSpan.js +0 -36
  386. package/dist/esm/elements/is/SwcAppSpan.js.map +0 -7
  387. package/dist/esm/elements/is/SwcAppStyle.js +0 -36
  388. package/dist/esm/elements/is/SwcAppStyle.js.map +0 -7
  389. package/dist/esm/elements/is/SwcAppTable.js +0 -36
  390. package/dist/esm/elements/is/SwcAppTable.js.map +0 -7
  391. package/dist/esm/elements/is/SwcAppTableCell.js +0 -36
  392. package/dist/esm/elements/is/SwcAppTableCell.js.map +0 -7
  393. package/dist/esm/elements/is/SwcAppTableRow.js +0 -36
  394. package/dist/esm/elements/is/SwcAppTableRow.js.map +0 -7
  395. package/dist/esm/elements/is/SwcAppTableSection.js +0 -36
  396. package/dist/esm/elements/is/SwcAppTableSection.js.map +0 -7
  397. package/dist/esm/elements/is/SwcAppTemplate.js +0 -36
  398. package/dist/esm/elements/is/SwcAppTemplate.js.map +0 -7
  399. package/dist/esm/elements/is/SwcAppTextArea.js +0 -36
  400. package/dist/esm/elements/is/SwcAppTextArea.js.map +0 -7
  401. package/dist/esm/elements/is/SwcAppTime.js +0 -36
  402. package/dist/esm/elements/is/SwcAppTime.js.map +0 -7
  403. package/dist/esm/elements/is/SwcAppTitle.js +0 -36
  404. package/dist/esm/elements/is/SwcAppTitle.js.map +0 -7
  405. package/dist/esm/elements/is/SwcAppTrack.js +0 -36
  406. package/dist/esm/elements/is/SwcAppTrack.js.map +0 -7
  407. package/dist/esm/elements/is/SwcAppUl.js +0 -36
  408. package/dist/esm/elements/is/SwcAppUl.js.map +0 -7
  409. package/dist/esm/elements/is/SwcAppVideo.js +0 -36
  410. package/dist/esm/elements/is/SwcAppVideo.js.map +0 -7
  411. package/dist/esm/elements/is/index.js +0 -58
  412. package/dist/esm/elements/is/index.js.map +0 -7
  413. package/dist/types/elements/SwcApp.d.ts +0 -9
  414. package/dist/types/elements/SwcApp.d.ts.map +0 -1
  415. package/dist/types/elements/is/SwcAppAnchor.d.ts +0 -9
  416. package/dist/types/elements/is/SwcAppAnchor.d.ts.map +0 -1
  417. package/dist/types/elements/is/SwcAppArea.d.ts +0 -9
  418. package/dist/types/elements/is/SwcAppArea.d.ts.map +0 -1
  419. package/dist/types/elements/is/SwcAppAudio.d.ts +0 -9
  420. package/dist/types/elements/is/SwcAppAudio.d.ts.map +0 -1
  421. package/dist/types/elements/is/SwcAppBase.d.ts +0 -9
  422. package/dist/types/elements/is/SwcAppBase.d.ts.map +0 -1
  423. package/dist/types/elements/is/SwcAppBody.d.ts +0 -9
  424. package/dist/types/elements/is/SwcAppBody.d.ts.map +0 -1
  425. package/dist/types/elements/is/SwcAppButton.d.ts +0 -9
  426. package/dist/types/elements/is/SwcAppButton.d.ts.map +0 -1
  427. package/dist/types/elements/is/SwcAppCanvas.d.ts +0 -9
  428. package/dist/types/elements/is/SwcAppCanvas.d.ts.map +0 -1
  429. package/dist/types/elements/is/SwcAppData.d.ts +0 -9
  430. package/dist/types/elements/is/SwcAppData.d.ts.map +0 -1
  431. package/dist/types/elements/is/SwcAppDataList.d.ts +0 -9
  432. package/dist/types/elements/is/SwcAppDataList.d.ts.map +0 -1
  433. package/dist/types/elements/is/SwcAppDetails.d.ts +0 -9
  434. package/dist/types/elements/is/SwcAppDetails.d.ts.map +0 -1
  435. package/dist/types/elements/is/SwcAppDialog.d.ts +0 -9
  436. package/dist/types/elements/is/SwcAppDialog.d.ts.map +0 -1
  437. package/dist/types/elements/is/SwcAppDiv.d.ts +0 -9
  438. package/dist/types/elements/is/SwcAppDiv.d.ts.map +0 -1
  439. package/dist/types/elements/is/SwcAppDl.d.ts +0 -9
  440. package/dist/types/elements/is/SwcAppDl.d.ts.map +0 -1
  441. package/dist/types/elements/is/SwcAppEmbed.d.ts +0 -9
  442. package/dist/types/elements/is/SwcAppEmbed.d.ts.map +0 -1
  443. package/dist/types/elements/is/SwcAppFieldSet.d.ts +0 -9
  444. package/dist/types/elements/is/SwcAppFieldSet.d.ts.map +0 -1
  445. package/dist/types/elements/is/SwcAppForm.d.ts +0 -9
  446. package/dist/types/elements/is/SwcAppForm.d.ts.map +0 -1
  447. package/dist/types/elements/is/SwcAppHeading.d.ts +0 -9
  448. package/dist/types/elements/is/SwcAppHeading.d.ts.map +0 -1
  449. package/dist/types/elements/is/SwcAppHr.d.ts +0 -9
  450. package/dist/types/elements/is/SwcAppHr.d.ts.map +0 -1
  451. package/dist/types/elements/is/SwcAppIFrame.d.ts +0 -9
  452. package/dist/types/elements/is/SwcAppIFrame.d.ts.map +0 -1
  453. package/dist/types/elements/is/SwcAppImage.d.ts +0 -9
  454. package/dist/types/elements/is/SwcAppImage.d.ts.map +0 -1
  455. package/dist/types/elements/is/SwcAppInput.d.ts +0 -9
  456. package/dist/types/elements/is/SwcAppInput.d.ts.map +0 -1
  457. package/dist/types/elements/is/SwcAppLabel.d.ts +0 -9
  458. package/dist/types/elements/is/SwcAppLabel.d.ts.map +0 -1
  459. package/dist/types/elements/is/SwcAppLegend.d.ts +0 -9
  460. package/dist/types/elements/is/SwcAppLegend.d.ts.map +0 -1
  461. package/dist/types/elements/is/SwcAppLi.d.ts +0 -9
  462. package/dist/types/elements/is/SwcAppLi.d.ts.map +0 -1
  463. package/dist/types/elements/is/SwcAppLink.d.ts +0 -9
  464. package/dist/types/elements/is/SwcAppLink.d.ts.map +0 -1
  465. package/dist/types/elements/is/SwcAppMap.d.ts +0 -9
  466. package/dist/types/elements/is/SwcAppMap.d.ts.map +0 -1
  467. package/dist/types/elements/is/SwcAppMeta.d.ts +0 -9
  468. package/dist/types/elements/is/SwcAppMeta.d.ts.map +0 -1
  469. package/dist/types/elements/is/SwcAppMeter.d.ts +0 -9
  470. package/dist/types/elements/is/SwcAppMeter.d.ts.map +0 -1
  471. package/dist/types/elements/is/SwcAppMod.d.ts +0 -9
  472. package/dist/types/elements/is/SwcAppMod.d.ts.map +0 -1
  473. package/dist/types/elements/is/SwcAppObject.d.ts +0 -9
  474. package/dist/types/elements/is/SwcAppObject.d.ts.map +0 -1
  475. package/dist/types/elements/is/SwcAppOl.d.ts +0 -9
  476. package/dist/types/elements/is/SwcAppOl.d.ts.map +0 -1
  477. package/dist/types/elements/is/SwcAppOptGroup.d.ts +0 -9
  478. package/dist/types/elements/is/SwcAppOptGroup.d.ts.map +0 -1
  479. package/dist/types/elements/is/SwcAppOption.d.ts +0 -9
  480. package/dist/types/elements/is/SwcAppOption.d.ts.map +0 -1
  481. package/dist/types/elements/is/SwcAppOutput.d.ts +0 -9
  482. package/dist/types/elements/is/SwcAppOutput.d.ts.map +0 -1
  483. package/dist/types/elements/is/SwcAppParagraph.d.ts +0 -9
  484. package/dist/types/elements/is/SwcAppParagraph.d.ts.map +0 -1
  485. package/dist/types/elements/is/SwcAppParam.d.ts +0 -9
  486. package/dist/types/elements/is/SwcAppParam.d.ts.map +0 -1
  487. package/dist/types/elements/is/SwcAppPicture.d.ts +0 -9
  488. package/dist/types/elements/is/SwcAppPicture.d.ts.map +0 -1
  489. package/dist/types/elements/is/SwcAppPre.d.ts +0 -9
  490. package/dist/types/elements/is/SwcAppPre.d.ts.map +0 -1
  491. package/dist/types/elements/is/SwcAppProgress.d.ts +0 -9
  492. package/dist/types/elements/is/SwcAppProgress.d.ts.map +0 -1
  493. package/dist/types/elements/is/SwcAppQuote.d.ts +0 -9
  494. package/dist/types/elements/is/SwcAppQuote.d.ts.map +0 -1
  495. package/dist/types/elements/is/SwcAppScript.d.ts +0 -9
  496. package/dist/types/elements/is/SwcAppScript.d.ts.map +0 -1
  497. package/dist/types/elements/is/SwcAppSelect.d.ts +0 -9
  498. package/dist/types/elements/is/SwcAppSelect.d.ts.map +0 -1
  499. package/dist/types/elements/is/SwcAppSlot.d.ts +0 -9
  500. package/dist/types/elements/is/SwcAppSlot.d.ts.map +0 -1
  501. package/dist/types/elements/is/SwcAppSource.d.ts +0 -9
  502. package/dist/types/elements/is/SwcAppSource.d.ts.map +0 -1
  503. package/dist/types/elements/is/SwcAppSpan.d.ts +0 -9
  504. package/dist/types/elements/is/SwcAppSpan.d.ts.map +0 -1
  505. package/dist/types/elements/is/SwcAppStyle.d.ts +0 -9
  506. package/dist/types/elements/is/SwcAppStyle.d.ts.map +0 -1
  507. package/dist/types/elements/is/SwcAppTable.d.ts +0 -9
  508. package/dist/types/elements/is/SwcAppTable.d.ts.map +0 -1
  509. package/dist/types/elements/is/SwcAppTableCell.d.ts +0 -9
  510. package/dist/types/elements/is/SwcAppTableCell.d.ts.map +0 -1
  511. package/dist/types/elements/is/SwcAppTableRow.d.ts +0 -9
  512. package/dist/types/elements/is/SwcAppTableRow.d.ts.map +0 -1
  513. package/dist/types/elements/is/SwcAppTableSection.d.ts +0 -9
  514. package/dist/types/elements/is/SwcAppTableSection.d.ts.map +0 -1
  515. package/dist/types/elements/is/SwcAppTemplate.d.ts +0 -9
  516. package/dist/types/elements/is/SwcAppTemplate.d.ts.map +0 -1
  517. package/dist/types/elements/is/SwcAppTextArea.d.ts +0 -9
  518. package/dist/types/elements/is/SwcAppTextArea.d.ts.map +0 -1
  519. package/dist/types/elements/is/SwcAppTime.d.ts +0 -9
  520. package/dist/types/elements/is/SwcAppTime.d.ts.map +0 -1
  521. package/dist/types/elements/is/SwcAppTitle.d.ts +0 -9
  522. package/dist/types/elements/is/SwcAppTitle.d.ts.map +0 -1
  523. package/dist/types/elements/is/SwcAppTrack.d.ts +0 -9
  524. package/dist/types/elements/is/SwcAppTrack.d.ts.map +0 -1
  525. package/dist/types/elements/is/SwcAppUl.d.ts +0 -9
  526. package/dist/types/elements/is/SwcAppUl.d.ts.map +0 -1
  527. package/dist/types/elements/is/SwcAppVideo.d.ts +0 -9
  528. package/dist/types/elements/is/SwcAppVideo.d.ts.map +0 -1
  529. package/dist/types/elements/is/index.d.ts +0 -58
  530. package/dist/types/elements/is/index.d.ts.map +0 -1
  531. package/src/elements/SwcApp.ts +0 -26
  532. package/src/elements/is/SwcAppAnchor.ts +0 -26
  533. package/src/elements/is/SwcAppArea.ts +0 -26
  534. package/src/elements/is/SwcAppAudio.ts +0 -26
  535. package/src/elements/is/SwcAppBase.ts +0 -26
  536. package/src/elements/is/SwcAppBody.ts +0 -26
  537. package/src/elements/is/SwcAppButton.ts +0 -26
  538. package/src/elements/is/SwcAppCanvas.ts +0 -26
  539. package/src/elements/is/SwcAppData.ts +0 -26
  540. package/src/elements/is/SwcAppDataList.ts +0 -26
  541. package/src/elements/is/SwcAppDetails.ts +0 -26
  542. package/src/elements/is/SwcAppDialog.ts +0 -26
  543. package/src/elements/is/SwcAppDiv.ts +0 -26
  544. package/src/elements/is/SwcAppDl.ts +0 -26
  545. package/src/elements/is/SwcAppEmbed.ts +0 -26
  546. package/src/elements/is/SwcAppFieldSet.ts +0 -26
  547. package/src/elements/is/SwcAppForm.ts +0 -26
  548. package/src/elements/is/SwcAppHeading.ts +0 -26
  549. package/src/elements/is/SwcAppHr.ts +0 -26
  550. package/src/elements/is/SwcAppIFrame.ts +0 -26
  551. package/src/elements/is/SwcAppImage.ts +0 -26
  552. package/src/elements/is/SwcAppInput.ts +0 -26
  553. package/src/elements/is/SwcAppLabel.ts +0 -26
  554. package/src/elements/is/SwcAppLegend.ts +0 -26
  555. package/src/elements/is/SwcAppLi.ts +0 -26
  556. package/src/elements/is/SwcAppLink.ts +0 -26
  557. package/src/elements/is/SwcAppMap.ts +0 -26
  558. package/src/elements/is/SwcAppMeta.ts +0 -26
  559. package/src/elements/is/SwcAppMeter.ts +0 -26
  560. package/src/elements/is/SwcAppMod.ts +0 -26
  561. package/src/elements/is/SwcAppObject.ts +0 -26
  562. package/src/elements/is/SwcAppOl.ts +0 -26
  563. package/src/elements/is/SwcAppOptGroup.ts +0 -26
  564. package/src/elements/is/SwcAppOption.ts +0 -26
  565. package/src/elements/is/SwcAppOutput.ts +0 -26
  566. package/src/elements/is/SwcAppParagraph.ts +0 -26
  567. package/src/elements/is/SwcAppParam.ts +0 -26
  568. package/src/elements/is/SwcAppPicture.ts +0 -26
  569. package/src/elements/is/SwcAppPre.ts +0 -26
  570. package/src/elements/is/SwcAppProgress.ts +0 -26
  571. package/src/elements/is/SwcAppQuote.ts +0 -26
  572. package/src/elements/is/SwcAppScript.ts +0 -26
  573. package/src/elements/is/SwcAppSelect.ts +0 -26
  574. package/src/elements/is/SwcAppSlot.ts +0 -26
  575. package/src/elements/is/SwcAppSource.ts +0 -26
  576. package/src/elements/is/SwcAppSpan.ts +0 -26
  577. package/src/elements/is/SwcAppStyle.ts +0 -26
  578. package/src/elements/is/SwcAppTable.ts +0 -26
  579. package/src/elements/is/SwcAppTableCell.ts +0 -26
  580. package/src/elements/is/SwcAppTableRow.ts +0 -26
  581. package/src/elements/is/SwcAppTableSection.ts +0 -26
  582. package/src/elements/is/SwcAppTemplate.ts +0 -26
  583. package/src/elements/is/SwcAppTextArea.ts +0 -26
  584. package/src/elements/is/SwcAppTime.ts +0 -26
  585. package/src/elements/is/SwcAppTitle.ts +0 -26
  586. package/src/elements/is/SwcAppTrack.ts +0 -26
  587. package/src/elements/is/SwcAppUl.ts +0 -26
  588. package/src/elements/is/SwcAppVideo.ts +0 -26
  589. package/src/elements/is/index.ts +0 -57
@@ -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 { FunctionUtils } from '@dooboostore/core/function/FunctionUtils';\nimport { getOnConnectedInnerHtmlMetadata } from './onConnectedInnerHtml';\nimport { getQueryMetadata } from './query';\nimport { getQueryAllMetadata } from './queryAll';\nimport { getAddEventListenerMetadata } from './addEventListener';\nimport { 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, ATTRIBUTE_CHANGED_WILDCARD, findAllLifecycleMetadata } from './lifecycles';\nimport { getEmitCustomEventMetadataList } from './emitCustomEvent';\nimport { changedAttribute, findAllAttributeChangedMetadata } from './changedAttribute';\nimport { setAttribute, findAllSetAttributeMetadata } from './setAttribute';\nimport { findAllReplaceChildrenMetadata } from './replaceChildren';\nimport { findAllAppendChildMetadata } from './appendChild';\nimport { SwcUtils } from '../utils/Utils';\nimport { HTML_TAG_ENTRIES, DOM_EVENT_NAMES } from '../config/config';\nimport { SituationType, SituationTypeContainer, SituationTypeContainers } from '@dooboostore/simple-boot/decorators/inject/Inject';\nimport { ConstructorType } from '@dooboostore/core/types';\nimport { SimpleApplication } from '@dooboostore/simple-boot/SimpleApplication';\nimport { Router } from '@dooboostore/core-web/routers/Router';\nimport { InjectSituationType, HostSet, SwcAppInterface } from '../types';\n\n// --- Core Interfaces & Types ---\n\nexport interface ElementConfig {\n name: string;\n extends?: string;\n observedAttributes?: string[];\n customElementRegistry?: CustomElementRegistry;\n window?: Window;\n}\n\nexport const ELEMENT_CONFIG_KEY = Symbol('simple-web-component:element-config');\n\n// Shared state for global delegation to prevent multiple listeners on the same root\nconst globalDelegatedRoots = new WeakSet<Node>();\n\n// --- Environment Initialization Helper ---\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 = SwcUtils.getHelperSet(win);\n return { win, doc, builtInTagMap, domHelpers };\n}\n\nconst getHandlers = (inst: any) => {\n if (!inst.__swc_attributeEventHandlers) inst.__swc_attributeEventHandlers = new Map();\n return inst.__swc_attributeEventHandlers;\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\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 emitCustomEventList = getEmitCustomEventMetadataList(constructor) || [];\n const addEventListenerList = getAddEventListenerMetadata(constructor) || [];\n const attrChangeMap = findAllAttributeChangedMetadata(constructor);\n const setAttrMap = findAllSetAttributeMetadata(constructor);\n const replaceChildrenMap = findAllReplaceChildrenMetadata(constructor);\n const appendChildMap = findAllAppendChildMetadata(constructor);\n\n const swcLifecycleAttributes = ['swc-on-constructor', 'swc-on-connected', 'swc-on-disconnected', '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 swcOnEvents = DOM_EVENT_NAMES.map(e => `swc-on-${e}`);\n\n const mergedObservedAttributes = [...new Set([...(config.observedAttributes ?? []), ...attrChangeMap.keys(), ...setAttrMap.keys(), ...emitCustomEventList.map(it => it.options.attributeName!), ...swcLifecycleAttributes, ...swcOnEvents])];\n const connectedInnerHtmlList = getOnConnectedInnerHtmlMetadata(constructor) || [];\n\n const NewClass = class extends (constructor as any) {\n private _swcId = Math.random().toString(36).substring(2, 11);\n private _emitHandlers = new Map<string, EventListener>();\n private _boundListeners: Array<{ target: EventTarget; type: string; handler: EventListener; options?: any }> = [];\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 FunctionUtils.execute({ script, context: this, args });\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attrName}:`, 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](...extraArgs);\n }\n }\n\n private _bindAttributeEvent(el: HTMLElement, attrName: string, script: string, eventName?: string) {\n if (!eventName) {\n if (!attrName.startsWith('swc-on-')) return;\n eventName = attrName.substring(7);\n }\n if (swcLifecycleAttributes.includes(attrName)) return;\n\n const elHandlers = getHandlers(this);\n let handlers = elHandlers.get(el);\n if (!handlers) {\n handlers = new Map();\n elHandlers.set(el, handlers);\n }\n\n const oldHandler = handlers.get(attrName);\n if (oldHandler) el.removeEventListener(eventName, oldHandler);\n\n const handler = (event: any) => {\n const hostSet = SwcUtils.getHostSet(el);\n const args = {\n event,\n $data: (event as CustomEvent).detail,\n ...hostSet,\n ...SWC_DOM_HELPERS\n };\n FunctionUtils.execute({ script, context: el, args });\n };\n\n el.addEventListener(eventName, handler);\n handlers.set(attrName, handler);\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 (connectedInnerHtmlList.some(it => it.options.useShadow === true) && !this.shadowRoot) {\n this.attachShadow({ mode: 'open' });\n }\n }\n\n static get observedAttributes() {\n return mergedObservedAttributes;\n }\n\n async connectedCallback() {\n const conf = getElementConfig(this);\n const currentWin = conf?.window || window;\n const currentDoc = currentWin.document;\n\n const hostSet = SwcUtils.getHostSet(this as any);\n\n this._executeSwcScript('swc-on-before-connected', hostSet);\n const bMethods = findAllLifecycleMetadata(this, ON_BEFORE_CONNECTED_METADATA_KEY);\n if (bMethods) {\n for (const m of bMethods) await this._invokeLifecycleMethod(m, hostSet);\n }\n\n if (typeof (this as any).initCore === 'function') (this as any).initCore();\n\n if (connectedInnerHtmlList.length > 0) {\n let sContent = '',\n lContent = '';\n for (const meta of connectedInnerHtmlList) {\n const res = await (this as any)[meta.propertyKey]();\n if (res !== undefined) {\n if (meta.options.useShadow) sContent += res;\n else lContent += res;\n }\n }\n if (this.shadowRoot) this.shadowRoot.innerHTML = sContent;\n if (lContent) this.innerHTML = lContent;\n }\n\n // --- Optimized Host Delegation ---\n const createDelegationHandler = (delegateHost: any) => (event: Event) => {\n if ((event as any).__swc_handled) return;\n\n const path = event.composedPath();\n const type = event.type;\n const attrName = `swc-on-${type}`;\n\n for (const node of path) {\n if (node === delegateHost) break;\n if (!(node instanceof HTMLElement)) continue;\n\n const script = node.getAttribute?.(attrName);\n if (script && !getElementConfig(node)) {\n const host = SwcUtils.findNearestSwcHost(node);\n if (host) {\n const childHostSet = SwcUtils.getHostSet(node);\n const args = {\n event,\n $data: (event as CustomEvent).detail,\n ...childHostSet,\n ...SWC_DOM_HELPERS\n };\n FunctionUtils.execute({ script, context: node, args });\n (event as any).__swc_handled = true;\n break;\n }\n }\n }\n };\n\n // 1. Local Delegation (To itself)\n DOM_EVENT_NAMES.forEach(type => {\n const handler = createDelegationHandler(this);\n this.addEventListener(type, handler);\n this._boundListeners.push({ target: this as any, type, handler });\n });\n\n // 2. Structural/Global Delegation (If no parent host exists)\n const hasParentHost = SwcUtils.findAllSwcHosts(this as any).length > 0;\n if (!hasParentHost) {\n const root = this.getRootNode();\n if (!globalDelegatedRoots.has(root)) {\n DOM_EVENT_NAMES.forEach(type => {\n const handler = createDelegationHandler(root);\n root.addEventListener(type, handler);\n });\n globalDelegatedRoots.add(root);\n }\n }\n\n // --- @addEventListener binding (Direct/Delegate/Global) ---\n addEventListenerList.forEach(meta => {\n const { selector, type, options } = meta;\n const { root, capture, once, passive, stopPropagation, stopImmediatePropagation, preventDefault, delegate, removeOnDisconnected } = options;\n const opts = { capture, once, passive };\n\n const bindTargets: EventTarget[] = [];\n\n if (selector === ':window') {\n bindTargets.push(currentWin);\n } else if (selector === ':document') {\n bindTargets.push(currentDoc);\n } else if (selector === ':parentHost') {\n if (hostSet.$parentHost) bindTargets.push(hostSet.$parentHost);\n } else if (selector === ':appHost') {\n if (hostSet.$appHost) bindTargets.push(hostSet.$appHost);\n } else if (selector === ':firstHost') {\n if (hostSet.$firstHost) bindTargets.push(hostSet.$firstHost);\n } else if (selector === ':lastHost') {\n if (hostSet.$lastHost) bindTargets.push(hostSet.$lastHost);\n } else if (selector === ':firstAppHost') {\n if (hostSet.$firstAppHost) bindTargets.push(hostSet.$firstAppHost);\n } else if (selector === ':lastAppHost') {\n if (hostSet.$lastAppHost) bindTargets.push(hostSet.$lastAppHost);\n } else if (!selector || selector === ':host') {\n bindTargets.push(this as any);\n } else if (delegate) {\n const bindRoots: (HTMLElement | ShadowRoot)[] = [];\n const r = root || 'auto';\n if (r === 'auto') bindRoots.push(this.shadowRoot || (this as any));\n else if (r === 'light') bindRoots.push(this as any);\n else if (r === 'shadow') {\n if (this.shadowRoot) bindRoots.push(this.shadowRoot as any);\n } else if (r === 'all') {\n bindRoots.push(this as any);\n if (this.shadowRoot) bindRoots.push(this.shadowRoot as any);\n }\n\n bindRoots.forEach(br => {\n const handler = (event: Event) => {\n const matchedEl = (event.target as HTMLElement).closest(selector);\n if (matchedEl && (br as any).contains(matchedEl)) {\n if (stopPropagation) event.stopPropagation();\n if (stopImmediatePropagation) event.stopImmediatePropagation();\n if (preventDefault) event.preventDefault();\n const currentHostSet = SwcUtils.getHostSet(this as any);\n this._invokeLifecycleMethod(meta.propertyKey, currentHostSet, [event, currentHostSet, matchedEl]);\n }\n };\n br.addEventListener(type, handler, opts);\n const self: any = this;\n if (removeOnDisconnected === true || (br !== self && br !== self.shadowRoot)) {\n this._boundListeners.push({ target: br, type, handler, options: opts });\n }\n });\n } else {\n const searchRoots: (HTMLElement | ShadowRoot)[] = [];\n const r = root || 'auto';\n if (r === 'auto') searchRoots.push((this.shadowRoot || (this as any)) as any);\n else if (r === 'light') searchRoots.push(this as any);\n else if (r === 'shadow') {\n if (this.shadowRoot) searchRoots.push(this.shadowRoot as any);\n } else if (r === 'all') {\n searchRoots.push(this as any);\n if (this.shadowRoot) searchRoots.push(this.shadowRoot as any);\n }\n\n searchRoots.forEach(sr => {\n sr.querySelectorAll(selector).forEach(el => bindTargets.push(el));\n });\n }\n\n bindTargets.forEach(target => {\n const handler = (event: Event) => {\n if (stopPropagation) event.stopPropagation();\n if (stopImmediatePropagation) event.stopImmediatePropagation();\n if (preventDefault) event.preventDefault();\n const currentHostSet = SwcUtils.getHostSet(this as any);\n this._invokeLifecycleMethod(meta.propertyKey, currentHostSet, [event, currentHostSet]);\n };\n target.addEventListener(type, handler, opts);\n if (removeOnDisconnected === true || target === currentWin || target === currentDoc) {\n this._boundListeners.push({ target, type, handler, options: opts });\n }\n });\n });\n\n if (super.connectedCallback) await super.connectedCallback();\n const aMethods = findAllLifecycleMetadata(this, ON_AFTER_CONNECTED_METADATA_KEY);\n if (aMethods) {\n for (const m of aMethods) await this._invokeLifecycleMethod(m, hostSet);\n }\n\n this._executeSwcScript('swc-on-connected', hostSet);\n this._executeSwcScript('swc-on-after-connected', hostSet);\n }\n\n disconnectedCallback() {\n const hostSet = SwcUtils.getHostSet(this as any);\n this._executeSwcScript('swc-on-before-disconnected', hostSet);\n const bMethods = findAllLifecycleMetadata(this, ON_BEFORE_DISCONNECTED_METADATA_KEY);\n if (bMethods) bMethods.forEach(m => this._invokeLifecycleMethod(m, hostSet));\n\n this._boundListeners.forEach(l => l.target.removeEventListener(l.type, l.handler, l.options));\n this._boundListeners = [];\n\n if (super.disconnectedCallback) super.disconnectedCallback();\n\n const aMethods = findAllLifecycleMetadata(this, ON_AFTER_DISCONNECTED_METADATA_KEY);\n if (aMethods) aMethods.forEach(m => this._invokeLifecycleMethod(m, hostSet));\n this._executeSwcScript('swc-on-disconnected', 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 = findAllLifecycleMetadata(this, ON_BEFORE_ADOPTED_METADATA_KEY);\n if (bMethods) bMethods.forEach(m => this._invokeLifecycleMethod(m, hostSet));\n\n if (super.adoptedCallback) super.adoptedCallback();\n\n const aMethods = findAllLifecycleMetadata(this, ON_AFTER_ADOPTED_METADATA_KEY);\n if (aMethods) aMethods.forEach(m => this._invokeLifecycleMethod(m, hostSet));\n this._executeSwcScript('swc-on-adopted', hostSet);\n this._executeSwcScript('swc-on-after-adopted', hostSet);\n }\n\n attributeChangedCallback(name: string, old: string | null, newVal: string | null) {\n if (super.attributeChangedCallback) super.attributeChangedCallback(name, old, newVal);\n\n if (name.startsWith('swc-on-') && !swcLifecycleAttributes.includes(name)) {\n if (newVal !== null) {\n const customEventMeta = emitCustomEventList.find(it => it.options.attributeName === name);\n const eventName = customEventMeta ? customEventMeta.options.type : name.substring(7);\n this._bindAttributeEvent(this as any, name, newVal, eventName);\n }\n }\n\n const mKeys = attrChangeMap.get(name);\n if (mKeys && Array.isArray(mKeys)) {\n const hSet = SwcUtils.getHostSet(this as any);\n mKeys.forEach(key => this._invokeLifecycleMethod(key, hSet, [newVal, old, name]));\n }\n }\n };\n\n // --- @setAttribute wrapping logic ---\n setAttrMap.forEach((methodName, attrName) => {\n const original = NewClass.prototype[methodName as any];\n if (typeof original === 'function') {\n NewClass.prototype[methodName as any] = function (...args: any[]) {\n const res = original.apply(this, args);\n if (res !== undefined) {\n if (res === null) this.removeAttribute(attrName);\n else this.setAttribute(attrName, String(res));\n }\n return res;\n };\n }\n });\n\n // --- @emitCustomEvent wrapping logic ---\n emitCustomEventList.forEach(meta => {\n const { propertyKey, options } = meta;\n const original = NewClass.prototype[propertyKey as any];\n if (typeof original === 'function') {\n NewClass.prototype[propertyKey as any] = function (...args: any[]) {\n const detail = original.apply(this, args);\n const event = new CustomEvent(options.type, {\n detail,\n bubbles: options.bubbles,\n composed: options.composed,\n cancelable: options.cancelable\n });\n this.dispatchEvent(event);\n return detail;\n };\n }\n });\n\n // --- @replaceChildren wrapping logic ---\n replaceChildrenMap.forEach((selector, methodName) => {\n const original = NewClass.prototype[methodName as any];\n if (typeof original === 'function') {\n NewClass.prototype[methodName as any] = function (...args: any[]) {\n const res = original.apply(this, args);\n if (res !== undefined) {\n const conf = getElementConfig(this);\n const currentWin = conf?.window || window;\n const currentDoc = currentWin.document;\n\n let targetEl: Element | null = null;\n if (selector === ':host' || !selector) {\n targetEl = this;\n } else {\n targetEl = (this.shadowRoot || this).querySelector(selector);\n }\n\n if (targetEl) {\n const nodes: (Node | string)[] = Array.isArray(res) ? res : [res];\n const normalizedNodes = nodes.map(n => {\n if (typeof n === 'string') {\n const t = currentDoc.createElement('template');\n t.innerHTML = n;\n return t.content;\n }\n return n as Node;\n });\n (targetEl as any).replaceChildren(...normalizedNodes);\n }\n }\n return res;\n };\n }\n });\n\n // --- @appendChild wrapping logic ---\n appendChildMap.forEach((meta, methodName) => {\n const { selector, options } = meta;\n const original = NewClass.prototype[methodName as any];\n if (typeof original === 'function') {\n NewClass.prototype[methodName as any] = function (...args: any[]) {\n const res = original.apply(this, args);\n if (res !== undefined) {\n const conf = getElementConfig(this);\n const currentWin = conf?.window || window;\n const currentDoc = currentWin.document;\n\n let targetEl: Element | null = null;\n if (selector === ':host' || !selector) {\n targetEl = this;\n } else {\n targetEl = (this.shadowRoot || this).querySelector(selector);\n }\n\n if (targetEl) {\n const nodes: (Node | string)[] = Array.isArray(res) ? res : [res];\n const normalizedNodes = nodes.map(n => {\n if (typeof n === 'string') {\n const t = currentDoc.createElement('template');\n t.innerHTML = n;\n return t.content;\n }\n return n as Node;\n });\n\n const pos = options.position || 'lastChild';\n if (pos === 'lastChild') (targetEl as any).append(...normalizedNodes);\n else if (pos === 'firstChild') (targetEl as any).prepend(...normalizedNodes);\n else if (pos === 'nextSibling') (targetEl as any).after(...normalizedNodes);\n else if (pos === 'previousSibling') (targetEl as any).before(...normalizedNodes);\n }\n }\n return res;\n };\n }\n });\n\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 => Reflect.defineMetadata(key, Reflect.getMetadata(key, originalProto, name), newProto, name));\n });\n\n ReflectUtils.defineMetadata(ELEMENT_CONFIG_KEY, config, NewClass);\n ReflectUtils.defineMetadata(ELEMENT_CONFIG_KEY, config, constructor);\n const registry = config.customElementRegistry || (win as any)?.customElements;\n if (registry && !registry.get(config.name)) {\n registry.define(config.name, NewClass as any, config.extends ? { extends: config.extends } : undefined);\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": []
4
+ "sourcesContent": ["import { ReflectUtils } from '@dooboostore/core/reflect/ReflectUtils';\nimport { FunctionUtils } from '@dooboostore/core/function/FunctionUtils';\nimport { getOnConnectedInnerHtmlMetadata } from './onConnectedInnerHtml';\nimport { getAddEventListenerMetadata } from './addEventListener';\nimport { 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, findAllLifecycleMetadata } from './lifecycles';\nimport { getEmitCustomEventMetadataList } from './emitCustomEvent';\nimport { findAllAttributeChangedMetadata } from './changedAttribute';\nimport { findAllSetAttributeMetadata } from './setAttribute';\nimport { findAllReplaceChildrenMetadata } from './replaceChildren';\nimport { findAllAppendChildMetadata } from './appendChild';\nimport { findAllClassListMetadata } from './classList';\nimport { findAllStyleMetadata } from './style';\nimport { SwcUtils } from '../utils/Utils';\nimport { HTML_TAG_ENTRIES, DOM_EVENT_NAMES } from '../config/config';\nimport { SituationTypeContainer, SituationTypeContainers } from '@dooboostore/simple-boot/decorators/inject/Inject';\nimport { InjectSituationType, HostSet } from '../types';\n\n// --- Core Interfaces & Types (Moved back from base.ts) ---\n\nexport const ELEMENT_CONFIG_KEY = Symbol('simple-web-component:element-config');\n\nexport interface ElementConfig {\n extends?: string;\n observedAttributes?: string[];\n customElementRegistry?: any;\n window?: Window;\n}\n\nexport interface ElementMetadata extends Omit<ElementConfig, 'window'> {\n name: string;\n window: Window;\n}\n\nexport const getElementConfig = (target: any): ElementMetadata | undefined => {\n const constructor = target instanceof Function ? target : target.constructor;\n return ReflectUtils.getMetadata(ELEMENT_CONFIG_KEY, constructor);\n};\n\nexport const ensureInit = (inst: any) => {\n if (!inst.__swc_initialized) {\n inst._swcId = Math.random().toString(36).substring(2, 11);\n inst._emitHandlers = new Map();\n inst._boundListeners = [];\n inst.__swc_initialized = true;\n\n // Call constructor script if present\n const hostSet = SwcUtils.getHostSet(inst);\n inst._executeSwcScript?.('swc-on-constructor', hostSet);\n }\n};\n\n// --- Global Event Handling ---\nconst globalDelegatedRoots = new WeakSet<Node>();\n\nconst handleGlobalSwcEvent = async (event: Event) => {\n if ((event as any).__swc_handled) return;\n const path = event.composedPath();\n const type = event.type;\n const attrName = `swc-on-${type}`;\n\n for (const node of path) {\n if (!(node instanceof HTMLElement)) continue;\n const script = node.getAttribute?.(attrName);\n if (script && !getElementConfig(node)) {\n const host: any = SwcUtils.findNearestSwcHost(node);\n if (host && host.isConnected && typeof host.__swc_executeAttributeEvent === 'function') {\n await host.__swc_executeAttributeEvent(node, attrName, script, event);\n (event as any).__swc_handled = true;\n break;\n }\n }\n }\n};\n\nfunction buildEnv(configWindow?: Window) {\n const win: Window = configWindow || ((typeof window !== 'undefined' ? window : undefined) as any);\n const doc: Document = win?.document;\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 const domHelpers = SwcUtils.getHelperSet(win);\n return { win, doc, builtInTagMap, domHelpers };\n}\n\nconst getHandlers = (inst: any) => {\n if (!inst.__swc_attributeEventHandlers) inst.__swc_attributeEventHandlers = new Map();\n return inst.__swc_attributeEventHandlers;\n};\n\nconst setupPrototype = (proto: any) => {\n if (proto.__swc_proto_setup) return;\n proto.__swc_proto_setup = true;\n\n proto._executeSwcScript = function (attrName: string, hostSet: HostSet, extraArgs: Record<string, any> = {}) {\n ensureInit(this);\n const script = this.getAttribute(attrName);\n if (script) {\n try {\n const conf = getElementConfig(this);\n const currentWin = (this as any)._resolveWindow(conf);\n const helpers = SwcUtils.getHelperSet(currentWin);\n const args = { ...hostSet, ...helpers, ...extraArgs, $el: this, $root: this.getRootNode() };\n FunctionUtils.execute({ script, context: this, args });\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attrName}:`, e);\n }\n }\n };\n\n proto._resolveWindow = function (localConfig?: ElementConfig): Window {\n ensureInit(this);\n if (localConfig?.window) return localConfig.window;\n const ancestors = SwcUtils.findAllSwcHosts(this as any);\n for (let i = ancestors.length - 1; i >= 0; i--) {\n const aConf = getElementConfig(ancestors[i]);\n if (aConf?.window) return aConf.window;\n }\n return (typeof window !== 'undefined' ? window : undefined) as Window;\n };\n\n proto._invokeLifecycleMethod = function (methodName: string | symbol, hostSet: HostSet, extraArgs: any[] = []) {\n ensureInit(this);\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](...extraArgs);\n }\n };\n\n proto._bindAttributeEvent = function (el: HTMLElement, attrName: string, script: string, eventName?: string) {\n ensureInit(this);\n if (!eventName) {\n if (!attrName.startsWith('swc-on-')) return;\n eventName = attrName.substring(7);\n }\n const elHandlers = getHandlers(this);\n let handlers = elHandlers.get(el);\n if (!handlers) {\n handlers = new Map();\n elHandlers.set(el, handlers);\n }\n\n const oldHandler = handlers.get(attrName);\n if (oldHandler) el.removeEventListener(eventName, oldHandler);\n\n const handler = async (event: any) => {\n const hostSet = SwcUtils.getHostSet(el);\n const conf = getElementConfig(this);\n const currentWin = (this as any)._resolveWindow(conf);\n const helpers = SwcUtils.getHelperSet(currentWin);\n const args = {\n event,\n $data: (event as CustomEvent).detail,\n ...hostSet,\n ...helpers,\n $el: el,\n $root: this.getRootNode()\n };\n await FunctionUtils.execute({ script, context: el, args });\n };\n\n el.addEventListener(eventName, handler);\n handlers.set(attrName, handler);\n };\n\n proto.__swc_executeAttributeEvent = async function (el: HTMLElement, attrName: string, script: string, event: Event) {\n ensureInit(this);\n const hostSet = SwcUtils.getHostSet(el);\n const conf = getElementConfig(this);\n const currentWin = (this as any)._resolveWindow(conf);\n const currentHelpers = SwcUtils.getHelperSet(currentWin);\n const args = {\n event,\n $data: (event as CustomEvent).detail,\n ...hostSet,\n ...currentHelpers,\n $el: el,\n $root: this.getRootNode()\n };\n await FunctionUtils.execute({ script, context: el, args });\n };\n};\n\nexport const elementDefine =\n (name: string, config: Partial<ElementConfig> = {}): ClassDecorator =>\n (constructor: any) => {\n const { win, doc, builtInTagMap: BUILT_IN_TAG_MAP, domHelpers: SWC_DOM_HELPERS } = buildEnv(config.window);\n const metadata: ElementMetadata = { ...config, name, window: win };\n\n if (!metadata.window) {\n throw new Error('window is required');\n }\n\n let extendsTagName = metadata.extends;\n if (!extendsTagName) {\n let proto = constructor;\n const BaseHTMLElement = (win as any).HTMLElement;\n while (proto && proto !== BaseHTMLElement && proto !== Function.prototype) {\n extendsTagName = BUILT_IN_TAG_MAP.get(proto);\n if (extendsTagName) break;\n proto = Object.getPrototypeOf(proto);\n }\n metadata.extends = extendsTagName;\n }\n\n const emitCustomEventList = getEmitCustomEventMetadataList(constructor) || [];\n const addEventListenerList = getAddEventListenerMetadata(constructor) || [];\n const attrChangeMap = findAllAttributeChangedMetadata(constructor);\n\n const swcLifecycleAttributes = ['swc-on-constructor', 'swc-on-connected', 'swc-on-disconnected', '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 swcOnEvents = DOM_EVENT_NAMES.map(e => `swc-on-${e}`);\n\n // Collect all observed attributes from all decorators\n const mergedObservedAttributes = [...new Set([...(metadata.observedAttributes ?? []), ...attrChangeMap.keys(), ...Array.from(findAllSetAttributeMetadata(constructor).values()).map(it => it.name), ...emitCustomEventList.map(it => it.options.attributeName!), ...swcLifecycleAttributes, ...swcOnEvents])];\n\n const connectedInnerHtmlList = getOnConnectedInnerHtmlMetadata(constructor) || [];\n\n const proto = constructor.prototype;\n setupPrototype(proto);\n\n const originalConnected = proto.connectedCallback;\n proto.connectedCallback = function () {\n ensureInit(this);\n\n if (connectedInnerHtmlList.some(it => it.options.useShadow === true) && !this.shadowRoot) {\n this.attachShadow({ mode: 'open' });\n }\n\n const conf = getElementConfig(this);\n const currentWin = (this as any)._resolveWindow(conf);\n const hostSet = SwcUtils.getHostSet(this as any);\n\n (this as any)._executeSwcScript('swc-on-before-connected', hostSet);\n const bMethods = findAllLifecycleMetadata(this, ON_BEFORE_CONNECTED_METADATA_KEY);\n if (bMethods) {\n for (const m of bMethods) (this as any)._invokeLifecycleMethod(m, hostSet);\n }\n\n if (typeof (this as any).initCore === 'function') (this as any).initCore();\n\n if (connectedInnerHtmlList.length > 0) {\n let sContent = '',\n lContent = '';\n for (const meta of connectedInnerHtmlList) {\n const res = (this as any)[meta.propertyKey]();\n if (res !== undefined) {\n if (meta.options.useShadow) sContent += res;\n else lContent += res;\n }\n }\n if (this.shadowRoot) this.shadowRoot.innerHTML = sContent;\n if (lContent) this.innerHTML = lContent;\n }\n\n const root = this.getRootNode();\n if (!globalDelegatedRoots.has(root)) {\n DOM_EVENT_NAMES.forEach(type => {\n root.addEventListener(type, handleGlobalSwcEvent);\n });\n globalDelegatedRoots.add(root);\n }\n\n addEventListenerList.forEach(meta => {\n const { selector, type, options } = meta;\n const opts = { capture: options.capture, once: options.once, passive: options.passive };\n const bindTargets: EventTarget[] = [];\n const r = options.root || 'auto';\n const applyRootOption = (target: any) => {\n if (!target) return;\n if (r === 'auto') {\n bindTargets.push(target.shadowRoot || target);\n } else {\n if (r === 'light' || r === 'all') bindTargets.push(target);\n if ((r === 'shadow' || r === 'all') && target.shadowRoot) bindTargets.push(target.shadowRoot);\n }\n };\n\n if (selector === ':window') bindTargets.push(currentWin);\n else if (selector === ':document') bindTargets.push(currentWin.document);\n else if (selector === ':parentHost') applyRootOption(hostSet.$parentHost);\n else if (selector === ':appHost') applyRootOption(hostSet.$appHost);\n else if (selector === ':firstHost') applyRootOption(hostSet.$firstHost);\n else if (selector === ':lastHost') applyRootOption(hostSet.$lastHost);\n else if (selector === ':firstAppHost') applyRootOption(hostSet.$firstAppHost);\n else if (selector === ':lastAppHost') applyRootOption(hostSet.$lastAppHost);\n else if (selector === ':hosts') hostSet.$hosts.forEach(applyRootOption);\n else if (selector === ':appHosts') hostSet.$appHosts.forEach(applyRootOption);\n else if (selector === ':host' || !selector) applyRootOption(this);\n else if (options.delegate) {\n const bindRoots: (HTMLElement | ShadowRoot)[] = [];\n if (r === 'auto') bindRoots.push(this.shadowRoot || (this as any));\n else if (r === 'light') bindRoots.push(this as any);\n else if (r === 'shadow' && this.shadowRoot) bindRoots.push(this.shadowRoot);\n else if (r === 'all') {\n bindRoots.push(this as any);\n if (this.shadowRoot) bindRoots.push(this.shadowRoot);\n }\n\n bindRoots.forEach(br => {\n const handler = async (event: Event) => {\n const matchedEl = (event.target as HTMLElement).closest(selector);\n if (matchedEl && (br as any).contains(matchedEl)) {\n if (options.stopPropagation) event.stopPropagation();\n if (options.stopImmediatePropagation) event.stopImmediatePropagation();\n if (options.preventDefault) event.preventDefault();\n const currentHostSet = SwcUtils.getHostSet(this as any);\n const args = { event, ...currentHostSet, $el: matchedEl, $root: br };\n await (this as any)._invokeLifecycleMethod(meta.propertyKey, currentHostSet, [event, currentHostSet, matchedEl, args]);\n }\n };\n br.addEventListener(type, handler, opts);\n if (options.removeOnDisconnected === true || (br !== this && br !== this.shadowRoot)) {\n (this as any)._boundListeners.push({ target: br, type, handler, options: opts });\n }\n });\n } else {\n const searchRoots: (HTMLElement | ShadowRoot)[] = [];\n if (r === 'auto') searchRoots.push(this.shadowRoot || (this as any));\n else if (r === 'light') searchRoots.push(this as any);\n else if (r === 'shadow' && this.shadowRoot) searchRoots.push(this.shadowRoot);\n else if (r === 'all') {\n searchRoots.push(this as any);\n if (this.shadowRoot) searchRoots.push(this.shadowRoot);\n }\n\n searchRoots.forEach(sr => {\n sr.querySelectorAll(selector).forEach(el => bindTargets.push(el));\n });\n }\n\n bindTargets.forEach(t => {\n const handler = async (event: Event) => {\n if (options.stopPropagation) event.stopPropagation();\n if (options.stopImmediatePropagation) event.stopImmediatePropagation();\n if (options.preventDefault) event.preventDefault();\n const currentHostSet = SwcUtils.getHostSet(this as any);\n const args = { event, ...currentHostSet, $el: t, $root: t };\n await (this as any)._invokeLifecycleMethod(meta.propertyKey, currentHostSet, [event, currentHostSet, args]);\n };\n t.addEventListener(type, handler, opts);\n if (options.removeOnDisconnected === true || t === currentWin || t === currentWin.document) {\n (this as any)._boundListeners.push({ target: t, type, handler, options: opts });\n }\n });\n });\n\n if (originalConnected) originalConnected.apply(this);\n const aMethods = findAllLifecycleMetadata(this, ON_AFTER_CONNECTED_METADATA_KEY);\n if (aMethods) {\n for (const m of aMethods) (this as any)._invokeLifecycleMethod(m, hostSet);\n }\n (this as any)._executeSwcScript('swc-on-connected', hostSet);\n (this as any)._executeSwcScript('swc-on-after-connected', hostSet);\n };\n\n const originalDisconnected = proto.disconnectedCallback;\n proto.disconnectedCallback = function () {\n const hostSet = SwcUtils.getHostSet(this as any);\n (this as any)._executeSwcScript('swc-on-before-disconnected', hostSet);\n const bMethods = findAllLifecycleMetadata(this, ON_BEFORE_DISCONNECTED_METADATA_KEY);\n if (bMethods) {\n for (const m of bMethods) (this as any)._invokeLifecycleMethod(m, hostSet);\n }\n\n if ((this as any)._boundListeners) {\n (this as any)._boundListeners.forEach((l: any) => l.target.removeEventListener(l.type, l.handler, l.options));\n (this as any)._boundListeners = [];\n }\n\n if (originalDisconnected) originalDisconnected.apply(this);\n\n const aMethods = findAllLifecycleMetadata(this, ON_AFTER_DISCONNECTED_METADATA_KEY);\n if (aMethods) {\n for (const m of aMethods) (this as any)._invokeLifecycleMethod(m, hostSet);\n }\n (this as any)._executeSwcScript('swc-on-disconnected', hostSet);\n (this as any)._executeSwcScript('swc-on-after-disconnected', hostSet);\n };\n\n const originalAdopted = proto.adoptedCallback;\n proto.adoptedCallback = function () {\n const hostSet = SwcUtils.getHostSet(this as any);\n (this as any)._executeSwcScript('swc-on-before-adopted', hostSet);\n const bMethods = findAllLifecycleMetadata(this, ON_BEFORE_ADOPTED_METADATA_KEY);\n if (bMethods) {\n for (const m of bMethods) (this as any)._invokeLifecycleMethod(m, hostSet);\n }\n\n if (originalAdopted) originalAdopted.apply(this);\n\n const aMethods = findAllLifecycleMetadata(this, ON_AFTER_ADOPTED_METADATA_KEY);\n if (aMethods) {\n for (const m of aMethods) (this as any)._invokeLifecycleMethod(m, hostSet);\n }\n (this as any)._executeSwcScript('swc-on-adopted', hostSet);\n (this as any)._executeSwcScript('swc-on-after-adopted', hostSet);\n };\n\n const originalAttributeChanged = proto.attributeChangedCallback;\n proto.attributeChangedCallback = function (name: string, old: string | null, newVal: string | null) {\n if (originalAttributeChanged) originalAttributeChanged.apply(this, [name, old, newVal]);\n\n if (name.startsWith('swc-on-') && !swcLifecycleAttributes.includes(name)) {\n if (newVal !== null) {\n const customEventMeta = emitCustomEventList.find(it => it.options.attributeName === name);\n const eventName = customEventMeta ? customEventMeta.type : name.substring(7);\n (this as any)._bindAttributeEvent(this as any, name, newVal, eventName);\n }\n }\n\n const mKeys = attrChangeMap.get(name);\n if (mKeys && Array.isArray(mKeys)) {\n const hSet = SwcUtils.getHostSet(this as any);\n for (const key of mKeys) (this as any)._invokeLifecycleMethod(key, hSet, [newVal, old, name]);\n }\n };\n\n Object.defineProperty(constructor, 'observedAttributes', {\n get: () => mergedObservedAttributes,\n configurable: true\n });\n\n ReflectUtils.defineMetadata(ELEMENT_CONFIG_KEY, metadata, constructor);\n const registry = metadata.customElementRegistry || (win as any)?.customElements;\n if (registry && !registry.get(metadata.name)) {\n registry.define(metadata.name, constructor as any, metadata.extends ? { extends: metadata.extends } : undefined);\n }\n return constructor;\n };\n"],
5
+ "mappings": "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",
6
+ "names": ["proto", "name"]
7
7
  }
@@ -23,22 +23,74 @@ __export(emitCustomEvent_exports, {
23
23
  });
24
24
  module.exports = __toCommonJS(emitCustomEvent_exports);
25
25
  var import_ReflectUtils = require("@dooboostore/core/reflect/ReflectUtils");
26
+ var import_elementDefine = require("./elementDefine");
27
+ var import_Utils = require("../utils/Utils");
26
28
  const EMIT_CUSTOM_EVENT_METADATA_KEY = Symbol("simple-web-component:emit-custom-event");
27
- function emitCustomEvent(typeOrOptions) {
28
- return (target, propertyKey) => {
29
- const constructor = target.constructor;
30
- const options = typeof typeOrOptions === "string" ? { type: typeOrOptions } : typeOrOptions;
31
- if (!options.attributeName) {
32
- options.attributeName = `swc-on-${options.type}`;
29
+ function emitCustomEvent(selectorOrTarget, type, options = {}) {
30
+ return (targetObj, propertyKey, descriptor) => {
31
+ const constructor = targetObj.constructor;
32
+ const fullOptions = { ...options, type };
33
+ if (!fullOptions.attributeName) {
34
+ fullOptions.attributeName = `swc-on-${type}`;
33
35
  }
34
- if (options.bubbles === void 0) options.bubbles = true;
35
- if (options.composed === void 0) options.composed = true;
36
+ if (fullOptions.bubbles === void 0) fullOptions.bubbles = true;
37
+ if (fullOptions.composed === void 0) fullOptions.composed = true;
36
38
  let list = import_ReflectUtils.ReflectUtils.getMetadata(EMIT_CUSTOM_EVENT_METADATA_KEY, constructor);
37
39
  if (!list) {
38
40
  list = [];
39
41
  import_ReflectUtils.ReflectUtils.defineMetadata(EMIT_CUSTOM_EVENT_METADATA_KEY, list, constructor);
40
42
  }
41
- list.push({ propertyKey, options });
43
+ list.push({ propertyKey, selector: selectorOrTarget, type, options: fullOptions });
44
+ const original = descriptor.value;
45
+ descriptor.value = async function(...args) {
46
+ (0, import_elementDefine.ensureInit)(this);
47
+ const detail = await original.apply(this, args);
48
+ const event = new CustomEvent(type, {
49
+ detail,
50
+ bubbles: fullOptions.bubbles,
51
+ composed: fullOptions.composed,
52
+ cancelable: fullOptions.cancelable
53
+ });
54
+ const hostSet = import_Utils.SwcUtils.getHostSet(this);
55
+ const conf = (0, import_elementDefine.getElementConfig)(this);
56
+ const currentWin = this._resolveWindow?.(conf) || (typeof window !== "undefined" ? window : void 0);
57
+ const eventTargets = [];
58
+ if (selectorOrTarget === ":window") eventTargets.push(currentWin);
59
+ else if (selectorOrTarget === ":document") eventTargets.push(currentWin.document);
60
+ else if (selectorOrTarget === ":parentHost") {
61
+ if (hostSet.$parentHost) eventTargets.push(hostSet.$parentHost);
62
+ } else if (selectorOrTarget === ":appHost") {
63
+ if (hostSet.$appHost) eventTargets.push(hostSet.$appHost);
64
+ } else if (selectorOrTarget === ":firstHost") {
65
+ if (hostSet.$firstHost) eventTargets.push(hostSet.$firstHost);
66
+ } else if (selectorOrTarget === ":lastHost") {
67
+ if (hostSet.$lastHost) eventTargets.push(hostSet.$lastHost);
68
+ } else if (selectorOrTarget === ":firstAppHost") {
69
+ if (hostSet.$firstAppHost) eventTargets.push(hostSet.$firstAppHost);
70
+ } else if (selectorOrTarget === ":lastAppHost") {
71
+ if (hostSet.$lastAppHost) eventTargets.push(hostSet.$lastAppHost);
72
+ } else if (selectorOrTarget === ":hosts") {
73
+ hostSet.$hosts.forEach((h) => eventTargets.push(h));
74
+ } else if (selectorOrTarget === ":appHosts") {
75
+ hostSet.$appHosts.forEach((h) => eventTargets.push(h));
76
+ } else if (selectorOrTarget === ":host" || !selectorOrTarget) eventTargets.push(this);
77
+ else {
78
+ const r = fullOptions.root || "auto";
79
+ const searchRoots = [];
80
+ if (r === "auto") searchRoots.push(this.shadowRoot || this);
81
+ else if (r === "light") searchRoots.push(this);
82
+ else if (r === "shadow" && this.shadowRoot) searchRoots.push(this.shadowRoot);
83
+ else if (r === "all") {
84
+ searchRoots.push(this);
85
+ if (this.shadowRoot) searchRoots.push(this.shadowRoot);
86
+ }
87
+ searchRoots.forEach((sr) => {
88
+ sr.querySelectorAll(selectorOrTarget).forEach((el) => eventTargets.push(el));
89
+ });
90
+ }
91
+ eventTargets.forEach((t) => t.dispatchEvent(event));
92
+ return detail;
93
+ };
42
94
  };
43
95
  }
44
96
  const getEmitCustomEventMetadataList = (target) => {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/decorators/emitCustomEvent.ts"],
4
- "sourcesContent": ["import { ReflectUtils } from '@dooboostore/core/reflect/ReflectUtils';\n\nexport interface EmitCustomEventOptions {\n type: string;\n attributeName?: string;\n bubbles?: boolean;\n composed?: boolean;\n cancelable?: boolean;\n}\n\nexport interface EmitCustomEventMetadata {\n propertyKey: string | symbol;\n options: EmitCustomEventOptions;\n}\n\nexport const EMIT_CUSTOM_EVENT_METADATA_KEY = Symbol('simple-web-component:emit-custom-event');\n\nexport function emitCustomEvent(typeOrOptions: string | EmitCustomEventOptions): MethodDecorator {\n return (target: Object, propertyKey: string | symbol) => {\n const constructor = target.constructor;\n const options: EmitCustomEventOptions = typeof typeOrOptions === 'string' ? { type: typeOrOptions } : typeOrOptions;\n\n if (!options.attributeName) {\n options.attributeName = `swc-on-${options.type}`;\n }\n if (options.bubbles === undefined) options.bubbles = true;\n if (options.composed === undefined) options.composed = true;\n\n let list = ReflectUtils.getMetadata<EmitCustomEventMetadata[]>(EMIT_CUSTOM_EVENT_METADATA_KEY, constructor);\n if (!list) {\n list = [];\n ReflectUtils.defineMetadata(EMIT_CUSTOM_EVENT_METADATA_KEY, list, constructor);\n }\n list.push({ propertyKey, options });\n };\n}\n\nexport const getEmitCustomEventMetadataList = (target: any): EmitCustomEventMetadata[] | undefined => {\n const constructor = target instanceof Function ? target : target.constructor;\n return ReflectUtils.getMetadata(EMIT_CUSTOM_EVENT_METADATA_KEY, constructor);\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAA6B;AAetB,MAAM,iCAAiC,OAAO,wCAAwC;AAEtF,SAAS,gBAAgB,eAAiE;AAC/F,SAAO,CAAC,QAAgB,gBAAiC;AACvD,UAAM,cAAc,OAAO;AAC3B,UAAM,UAAkC,OAAO,kBAAkB,WAAW,EAAE,MAAM,cAAc,IAAI;AAEtG,QAAI,CAAC,QAAQ,eAAe;AAC1B,cAAQ,gBAAgB,UAAU,QAAQ,IAAI;AAAA,IAChD;AACA,QAAI,QAAQ,YAAY,OAAW,SAAQ,UAAU;AACrD,QAAI,QAAQ,aAAa,OAAW,SAAQ,WAAW;AAEvD,QAAI,OAAO,iCAAa,YAAuC,gCAAgC,WAAW;AAC1G,QAAI,CAAC,MAAM;AACT,aAAO,CAAC;AACR,uCAAa,eAAe,gCAAgC,MAAM,WAAW;AAAA,IAC/E;AACA,SAAK,KAAK,EAAE,aAAa,QAAQ,CAAC;AAAA,EACpC;AACF;AAEO,MAAM,iCAAiC,CAAC,WAAuD;AACpG,QAAM,cAAc,kBAAkB,WAAW,SAAS,OAAO;AACjE,SAAO,iCAAa,YAAY,gCAAgC,WAAW;AAC7E;",
4
+ "sourcesContent": ["import { ReflectUtils } from '@dooboostore/core/reflect/ReflectUtils';\nimport { SpecialSelector, SwcQueryOptions } from '../types';\nimport { ensureInit, getElementConfig } from './elementDefine';\nimport { SwcUtils } from '../utils/Utils';\n\nexport interface EmitCustomEventBaseOptions {\n attributeName?: string;\n bubbles?: boolean;\n composed?: boolean;\n cancelable?: boolean;\n}\n\nexport interface EmitCustomEventMetadata {\n propertyKey: string | symbol;\n selector: string;\n type: string;\n options: EmitCustomEventBaseOptions & SwcQueryOptions;\n}\n\nexport const EMIT_CUSTOM_EVENT_METADATA_KEY = Symbol('simple-web-component:emit-custom-event');\nexport function emitCustomEvent(target: SpecialSelector, type: string, options?: EmitCustomEventBaseOptions): MethodDecorator;\nexport function emitCustomEvent(selector: string, type: string, options?: EmitCustomEventBaseOptions & SwcQueryOptions): MethodDecorator;\n/**\n * @emitCustomEvent decorator to dispatch custom events to a target.\n */\nexport function emitCustomEvent(selectorOrTarget: string, type: string, options: any = {}): MethodDecorator {\n return (targetObj: Object, propertyKey: string | symbol, descriptor: PropertyDescriptor) => {\n const constructor = targetObj.constructor;\n\n const fullOptions: any = { ...options, type };\n\n if (!fullOptions.attributeName) {\n fullOptions.attributeName = `swc-on-${type}`;\n }\n if (fullOptions.bubbles === undefined) fullOptions.bubbles = true;\n if (fullOptions.composed === undefined) fullOptions.composed = true;\n\n let list = ReflectUtils.getMetadata<EmitCustomEventMetadata[]>(EMIT_CUSTOM_EVENT_METADATA_KEY, constructor);\n if (!list) {\n list = [];\n ReflectUtils.defineMetadata(EMIT_CUSTOM_EVENT_METADATA_KEY, list, constructor);\n }\n list.push({ propertyKey, selector: selectorOrTarget, type, options: fullOptions });\n\n const original = descriptor.value;\n descriptor.value = async function (...args: any[]) {\n ensureInit(this);\n const detail = await original.apply(this, args);\n const event = new CustomEvent(type, {\n detail,\n bubbles: fullOptions.bubbles,\n composed: fullOptions.composed,\n cancelable: fullOptions.cancelable\n });\n\n const hostSet = SwcUtils.getHostSet(this as any);\n const conf = getElementConfig(this);\n const currentWin = (this as any)._resolveWindow?.(conf) || ((typeof window !== 'undefined' ? window : undefined) as Window);\n\n const eventTargets: EventTarget[] = [];\n if (selectorOrTarget === ':window') eventTargets.push(currentWin);\n else if (selectorOrTarget === ':document') eventTargets.push(currentWin.document);\n else if (selectorOrTarget === ':parentHost') {\n if (hostSet.$parentHost) eventTargets.push(hostSet.$parentHost);\n } else if (selectorOrTarget === ':appHost') {\n if (hostSet.$appHost) eventTargets.push(hostSet.$appHost);\n } else if (selectorOrTarget === ':firstHost') {\n if (hostSet.$firstHost) eventTargets.push(hostSet.$firstHost);\n } else if (selectorOrTarget === ':lastHost') {\n if (hostSet.$lastHost) eventTargets.push(hostSet.$lastHost);\n } else if (selectorOrTarget === ':firstAppHost') {\n if (hostSet.$firstAppHost) eventTargets.push(hostSet.$firstAppHost);\n } else if (selectorOrTarget === ':lastAppHost') {\n if (hostSet.$lastAppHost) eventTargets.push(hostSet.$lastAppHost);\n } else if (selectorOrTarget === ':hosts') {\n hostSet.$hosts.forEach(h => eventTargets.push(h));\n } else if (selectorOrTarget === ':appHosts') {\n hostSet.$appHosts.forEach(h => eventTargets.push(h));\n } else if (selectorOrTarget === ':host' || !selectorOrTarget) eventTargets.push(this as any);\n else {\n const r = fullOptions.root || 'auto';\n const searchRoots: (HTMLElement | ShadowRoot)[] = [];\n if (r === 'auto') searchRoots.push(this.shadowRoot || (this as any));\n else if (r === 'light') searchRoots.push(this as any);\n else if (r === 'shadow' && this.shadowRoot) searchRoots.push(this.shadowRoot);\n else if (r === 'all') {\n searchRoots.push(this as any);\n if (this.shadowRoot) searchRoots.push(this.shadowRoot);\n }\n\n searchRoots.forEach(sr => {\n sr.querySelectorAll(selectorOrTarget).forEach(el => eventTargets.push(el));\n });\n }\n\n eventTargets.forEach(t => t.dispatchEvent(event));\n return detail;\n };\n };\n}\n\nexport const getEmitCustomEventMetadataList = (target: any): EmitCustomEventMetadata[] | undefined => {\n const constructor = target instanceof Function ? target : target.constructor;\n return ReflectUtils.getMetadata(EMIT_CUSTOM_EVENT_METADATA_KEY, constructor);\n};\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -24,4 +24,7 @@ __reExport(decorators_exports, require("./appendChild"), module.exports);
24
24
  __reExport(decorators_exports, require("./lifecycles"), module.exports);
25
25
  __reExport(decorators_exports, require("./query"), module.exports);
26
26
  __reExport(decorators_exports, require("./queryAll"), module.exports);
27
+ __reExport(decorators_exports, require("./onConnectedInnerHtml"), module.exports);
28
+ __reExport(decorators_exports, require("./classList"), module.exports);
29
+ __reExport(decorators_exports, require("./style"), module.exports);
27
30
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/decorators/index.ts"],
4
- "sourcesContent": ["export * from './addEventListener';\nexport * from './elementDefine';\nexport * from './changedAttribute';\nexport * from './setAttribute';\nexport * from './emitCustomEvent';\nexport * from './replaceChildren';\nexport * from './appendChild';\nexport * from './lifecycles';\nexport * from './query';\nexport * from './queryAll';\n"],
5
- "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA,+BAAc,+BAAd;AACA,+BAAc,4BADd;AAEA,+BAAc,+BAFd;AAGA,+BAAc,2BAHd;AAIA,+BAAc,8BAJd;AAKA,+BAAc,8BALd;AAMA,+BAAc,0BANd;AAOA,+BAAc,yBAPd;AAQA,+BAAc,oBARd;AASA,+BAAc,uBATd;",
4
+ "sourcesContent": ["export * from './addEventListener';\nexport * from './elementDefine';\nexport * from './changedAttribute';\nexport * from './setAttribute';\nexport * from './emitCustomEvent';\nexport * from './replaceChildren';\nexport * from './appendChild';\nexport * from './lifecycles';\nexport * from './query';\nexport * from './queryAll';\nexport * from './onConnectedInnerHtml';\nexport * from './classList';\nexport * from './style';\n"],
5
+ "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA,+BAAc,+BAAd;AACA,+BAAc,4BADd;AAEA,+BAAc,+BAFd;AAGA,+BAAc,2BAHd;AAIA,+BAAc,8BAJd;AAKA,+BAAc,8BALd;AAMA,+BAAc,0BANd;AAOA,+BAAc,yBAPd;AAQA,+BAAc,oBARd;AASA,+BAAc,uBATd;AAUA,+BAAc,mCAVd;AAWA,+BAAc,wBAXd;AAYA,+BAAc,oBAZd;",
6
6
  "names": []
7
7
  }
@@ -26,68 +26,92 @@ var import_ReflectUtils = require("@dooboostore/core/reflect/ReflectUtils");
26
26
  var import_elementDefine = require("./elementDefine");
27
27
  var import_Utils = require("../utils/Utils");
28
28
  const QUERY_METADATA_KEY = Symbol("simple-web-component:query");
29
- function query(selector, options = {}) {
30
- return (target, propertyKey, descriptor) => {
29
+ function query(selectorOrTarget, options = {}) {
30
+ return (targetObj, propertyKey, descriptor) => {
31
31
  if (descriptor !== void 0) {
32
32
  throw new Error(`@query decorator cannot be used on methods. (Method: ${String(propertyKey)})`);
33
33
  }
34
- const constructor = target.constructor;
34
+ const constructor = targetObj.constructor;
35
35
  let queries = import_ReflectUtils.ReflectUtils.getMetadata(QUERY_METADATA_KEY, constructor);
36
36
  if (!queries) {
37
37
  queries = [];
38
38
  import_ReflectUtils.ReflectUtils.defineMetadata(QUERY_METADATA_KEY, queries, constructor);
39
39
  }
40
- queries.push({ selector, options, propertyKey });
41
- Object.defineProperty(target, propertyKey, {
40
+ queries.push({ propertyKey, selector: selectorOrTarget, options });
41
+ Object.defineProperty(targetObj, propertyKey, {
42
42
  get() {
43
+ (0, import_elementDefine.ensureInit)(this);
44
+ const selector = selectorOrTarget;
45
+ const r = options.root || "auto";
46
+ const applyRoot = (t) => {
47
+ if (!t || !(t instanceof HTMLElement))
48
+ return t;
49
+ if (r === "auto")
50
+ return t.shadowRoot || t;
51
+ if (r === "shadow")
52
+ return t.shadowRoot;
53
+ if (r === "light")
54
+ return t;
55
+ if (r === "all")
56
+ return t.shadowRoot || t;
57
+ return t;
58
+ };
43
59
  const hostSet = import_Utils.SwcUtils.getHostSet(this);
44
60
  if (selector === ":parentHost")
45
- return hostSet.$parentHost;
61
+ return applyRoot(hostSet.$parentHost);
46
62
  if (selector === ":appHost")
47
- return hostSet.$appHost;
63
+ return applyRoot(hostSet.$appHost);
48
64
  if (selector === ":firstHost")
49
- return hostSet.$firstHost;
65
+ return applyRoot(hostSet.$firstHost);
50
66
  if (selector === ":lastHost")
51
- return hostSet.$lastHost;
67
+ return applyRoot(hostSet.$lastHost);
52
68
  if (selector === ":firstAppHost")
53
- return hostSet.$firstAppHost;
69
+ return applyRoot(hostSet.$firstAppHost);
54
70
  if (selector === ":lastAppHost")
55
- return hostSet.$lastAppHost;
71
+ return applyRoot(hostSet.$lastAppHost);
56
72
  const config = (0, import_elementDefine.getElementConfig)(this);
57
73
  const win = config?.window || window;
58
- const doc = win.document;
59
74
  if (selector === ":window")
60
75
  return win;
61
76
  if (selector === ":document")
62
- return doc;
63
- if (!selector || selector === ":host")
64
- return this;
65
- const r = options.root || "auto";
66
- if (r === "shadow") {
77
+ return win.document;
78
+ if (selector === ":host")
79
+ return applyRoot(this);
80
+ if (r === "shadow")
67
81
  return this.shadowRoot ? this.shadowRoot.querySelector(selector) : null;
68
- }
69
- if (r === "light") {
82
+ if (r === "light")
70
83
  return this.querySelector(selector);
71
- }
72
84
  if (r === "all") {
73
- return this.shadowRoot?.querySelector(selector) || this.querySelector(selector);
85
+ const shadowMatch = this.shadowRoot ? this.shadowRoot.querySelector(selector) : null;
86
+ return shadowMatch || this.querySelector(selector);
74
87
  }
75
88
  return (this.shadowRoot || this).querySelector(selector);
76
89
  },
77
90
  set(nv) {
91
+ (0, import_elementDefine.ensureInit)(this);
78
92
  if (nv === null || nv === void 0) {
93
+ const selector = selectorOrTarget;
94
+ if (selector.startsWith(":") && selector !== ":host")
95
+ return;
79
96
  const r = options.root || "auto";
80
- let targetEl = null;
81
- if (r === "shadow")
82
- targetEl = this.shadowRoot ? this.shadowRoot.querySelector(selector) : null;
83
- else if (r === "light")
84
- targetEl = this.querySelector(selector);
85
- else if (r === "all")
86
- targetEl = this.shadowRoot?.querySelector(selector) || this.querySelector(selector);
87
- else
88
- targetEl = (this.shadowRoot || this).querySelector(selector);
89
- if (targetEl)
90
- targetEl.remove();
97
+ const targets = [];
98
+ if (r === "shadow") {
99
+ if (this.shadowRoot?.querySelector(selector))
100
+ targets.push(this.shadowRoot.querySelector(selector));
101
+ } else if (r === "light") {
102
+ if (this.querySelector(selector))
103
+ targets.push(this.querySelector(selector));
104
+ } else if (r === "all") {
105
+ if (this.shadowRoot?.querySelector(selector))
106
+ targets.push(this.shadowRoot.querySelector(selector));
107
+ if (this.querySelector(selector))
108
+ targets.push(this.querySelector(selector));
109
+ } else {
110
+ const el = (this.shadowRoot || this).querySelector(selector);
111
+ if (el)
112
+ targets.push(el);
113
+ }
114
+ targets.forEach((t) => t.remove());
91
115
  }
92
116
  },
93
117
  enumerable: true,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/decorators/query.ts"],
4
- "sourcesContent": ["import { ReflectUtils } from '@dooboostore/core/reflect/ReflectUtils';\nimport { getElementConfig } from './elementDefine';\nimport { SwcUtils } from '../utils/Utils';\n\nexport interface QueryOptions {\n root?: 'light' | 'shadow' | 'all' | 'auto';\n}\n\nexport interface QueryMetadata {\n selector: string;\n options: QueryOptions;\n propertyKey: string | symbol;\n}\n\nexport const QUERY_METADATA_KEY = Symbol('simple-web-component:query');\n\n/**\n * @query decorator to inject a single element into a class property.\n */\nexport function query(selector: string, options: QueryOptions = {}): PropertyDecorator {\n return (target: Object, propertyKey: string | symbol, descriptor?: never): void => {\n if (descriptor !== undefined) {\n throw new Error(`@query decorator cannot be used on methods. (Method: ${String(propertyKey)})`);\n }\n\n const constructor = target.constructor;\n let queries = ReflectUtils.getMetadata<QueryMetadata[]>(QUERY_METADATA_KEY, constructor);\n if (!queries) {\n queries = [];\n ReflectUtils.defineMetadata(QUERY_METADATA_KEY, queries, constructor);\n }\n queries.push({ selector, options, propertyKey });\n\n Object.defineProperty(target, propertyKey, {\n get(this: HTMLElement) {\n // --- Special Selectors: HostSet ---\n const hostSet = SwcUtils.getHostSet(this);\n if (selector === ':parentHost') return hostSet.$parentHost;\n if (selector === ':appHost') return hostSet.$appHost;\n if (selector === ':firstHost') return hostSet.$firstHost;\n if (selector === ':lastHost') return hostSet.$lastHost;\n if (selector === ':firstAppHost') return hostSet.$firstAppHost;\n if (selector === ':lastAppHost') return hostSet.$lastAppHost;\n\n // --- Special Selectors: Env ---\n const config = getElementConfig(this);\n const win = config?.window || window;\n const doc = win.document;\n\n if (selector === ':window') return win;\n if (selector === ':document') return doc;\n if (!selector || selector === ':host') return this;\n\n // --- Standard Selectors ---\n const r = options.root || 'auto';\n\n if (r === 'shadow') {\n return this.shadowRoot ? this.shadowRoot.querySelector(selector) : null;\n }\n if (r === 'light') {\n return this.querySelector(selector);\n }\n if (r === 'all') {\n return this.shadowRoot?.querySelector(selector) || this.querySelector(selector);\n }\n // auto\n return (this.shadowRoot || this).querySelector(selector);\n },\n set(this: HTMLElement, nv: any) {\n if (nv === null || nv === undefined) {\n const r = options.root || 'auto';\n let targetEl: Element | null = null;\n if (r === 'shadow') targetEl = this.shadowRoot ? this.shadowRoot.querySelector(selector) : null;\n else if (r === 'light') targetEl = this.querySelector(selector);\n else if (r === 'all') targetEl = this.shadowRoot?.querySelector(selector) || this.querySelector(selector);\n else targetEl = (this.shadowRoot || this).querySelector(selector);\n\n if (targetEl) targetEl.remove();\n }\n },\n enumerable: true,\n configurable: true\n });\n };\n}\n\nexport const getQueryMetadata = (target: any): QueryMetadata[] | undefined => {\n const constructor = target instanceof Function ? target : target.constructor;\n return ReflectUtils.getMetadata(QUERY_METADATA_KEY, constructor);\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;AAAA;;;;;;;0BAA6B;AAC7B,2BAAiC;AACjC,mBAAyB;AAYlB,MAAM,qBAAqB,OAAO,4BAA4B;AAK/D,SAAU,MAAM,UAAkB,UAAwB,CAAA,GAAE;AAChE,SAAO,CAAC,QAAgB,aAA8B,eAA4B;AAChF,QAAI,eAAe,QAAW;AAC5B,YAAM,IAAI,MAAM,wDAAwD,OAAO,WAAW,CAAC,GAAG;IAChG;AAEA,UAAM,cAAc,OAAO;AAC3B,QAAI,UAAU,iCAAa,YAA6B,oBAAoB,WAAW;AACvF,QAAI,CAAC,SAAS;AACZ,gBAAU,CAAA;AACV,uCAAa,eAAe,oBAAoB,SAAS,WAAW;IACtE;AACA,YAAQ,KAAK,EAAE,UAAU,SAAS,YAAW,CAAE;AAE/C,WAAO,eAAe,QAAQ,aAAa;MACzC,MAAG;AAED,cAAM,UAAU,sBAAS,WAAW,IAAI;AACxC,YAAI,aAAa;AAAe,iBAAO,QAAQ;AAC/C,YAAI,aAAa;AAAY,iBAAO,QAAQ;AAC5C,YAAI,aAAa;AAAc,iBAAO,QAAQ;AAC9C,YAAI,aAAa;AAAa,iBAAO,QAAQ;AAC7C,YAAI,aAAa;AAAiB,iBAAO,QAAQ;AACjD,YAAI,aAAa;AAAgB,iBAAO,QAAQ;AAGhD,cAAM,aAAS,uCAAiB,IAAI;AACpC,cAAM,MAAM,QAAQ,UAAU;AAC9B,cAAM,MAAM,IAAI;AAEhB,YAAI,aAAa;AAAW,iBAAO;AACnC,YAAI,aAAa;AAAa,iBAAO;AACrC,YAAI,CAAC,YAAY,aAAa;AAAS,iBAAO;AAG9C,cAAM,IAAI,QAAQ,QAAQ;AAE1B,YAAI,MAAM,UAAU;AAClB,iBAAO,KAAK,aAAa,KAAK,WAAW,cAAc,QAAQ,IAAI;QACrE;AACA,YAAI,MAAM,SAAS;AACjB,iBAAO,KAAK,cAAc,QAAQ;QACpC;AACA,YAAI,MAAM,OAAO;AACf,iBAAO,KAAK,YAAY,cAAc,QAAQ,KAAK,KAAK,cAAc,QAAQ;QAChF;AAEA,gBAAQ,KAAK,cAAc,MAAM,cAAc,QAAQ;MACzD;MACA,IAAuB,IAAO;AAC5B,YAAI,OAAO,QAAQ,OAAO,QAAW;AACnC,gBAAM,IAAI,QAAQ,QAAQ;AAC1B,cAAI,WAA2B;AAC/B,cAAI,MAAM;AAAU,uBAAW,KAAK,aAAa,KAAK,WAAW,cAAc,QAAQ,IAAI;mBAClF,MAAM;AAAS,uBAAW,KAAK,cAAc,QAAQ;mBACrD,MAAM;AAAO,uBAAW,KAAK,YAAY,cAAc,QAAQ,KAAK,KAAK,cAAc,QAAQ;;AACnG,wBAAY,KAAK,cAAc,MAAM,cAAc,QAAQ;AAEhE,cAAI;AAAU,qBAAS,OAAM;QAC/B;MACF;MACA,YAAY;MACZ,cAAc;KACf;EACH;AACF;AAEO,MAAM,mBAAmB,CAAC,WAA4C;AAC3E,QAAM,cAAc,kBAAkB,WAAW,SAAS,OAAO;AACjE,SAAO,iCAAa,YAAY,oBAAoB,WAAW;AACjE;",
4
+ "sourcesContent": ["import { ReflectUtils } from '@dooboostore/core/reflect/ReflectUtils';\nimport { getElementConfig, ensureInit } from './elementDefine';\nimport { SwcUtils } from '../utils/Utils';\nimport { SpecialSelector, SwcQueryOptions } from '../types';\n\nexport type QueryOptions = { root?: 'light' | 'shadow' | 'all' | 'auto' };\n\nexport interface QueryMetadata {\n propertyKey: string | symbol;\n selector: string;\n options: SwcQueryOptions;\n}\n\nexport const QUERY_METADATA_KEY = Symbol('simple-web-component:query');\n\nexport function query(target: SpecialSelector): PropertyDecorator;\nexport function query(selector: string, options?: SwcQueryOptions): PropertyDecorator;\n/**\n * @query decorator to inject a single element into a class property.\n */\nexport function query(selectorOrTarget: string, options: any = {}): PropertyDecorator {\n return (targetObj: Object, propertyKey: string | symbol, descriptor?: never): void => {\n if (descriptor !== undefined) {\n throw new Error(`@query decorator cannot be used on methods. (Method: ${String(propertyKey)})`);\n }\n\n const constructor = targetObj.constructor;\n let queries = ReflectUtils.getMetadata<QueryMetadata[]>(QUERY_METADATA_KEY, constructor);\n if (!queries) {\n queries = [];\n ReflectUtils.defineMetadata(QUERY_METADATA_KEY, queries, constructor);\n }\n queries.push({ propertyKey, selector: selectorOrTarget, options });\n\n // const propertyType = Reflect.getMetadata(\"design:type\", targetObj, propertyKey);\n // console.log(`Property ${String(propertyKey)} type is:`, propertyType.name);\n Object.defineProperty(targetObj, propertyKey, {\n get(this: HTMLElement) {\n ensureInit(this);\n const selector = selectorOrTarget;\n\n const r = options.root || 'auto';\n const applyRoot = (t: any) => {\n if (!t || !(t instanceof HTMLElement)) return t;\n if (r === 'auto') return t.shadowRoot || t;\n if (r === 'shadow') return t.shadowRoot;\n if (r === 'light') return t;\n if (r === 'all') return t.shadowRoot || t; // query only returns one, so shadow preferred\n return t;\n };\n\n // --- Special Selectors: HostSet ---\n const hostSet = SwcUtils.getHostSet(this);\n if (selector === ':parentHost') return applyRoot(hostSet.$parentHost);\n if (selector === ':appHost') return applyRoot(hostSet.$appHost);\n if (selector === ':firstHost') return applyRoot(hostSet.$firstHost);\n if (selector === ':lastHost') return applyRoot(hostSet.$lastHost);\n if (selector === ':firstAppHost') return applyRoot(hostSet.$firstAppHost);\n if (selector === ':lastAppHost') return applyRoot(hostSet.$lastAppHost);\n\n // --- Special Selectors: Env ---\n const config = getElementConfig(this);\n const win = config?.window || window;\n if (selector === ':window') return win;\n if (selector === ':document') return win.document;\n if (selector === ':host') return applyRoot(this);\n\n // --- Standard Selectors ---\n if (r === 'shadow') return this.shadowRoot ? this.shadowRoot.querySelector(selector) : null;\n if (r === 'light') return this.querySelector(selector);\n if (r === 'all') {\n const shadowMatch = this.shadowRoot ? this.shadowRoot.querySelector(selector) : null;\n return shadowMatch || this.querySelector(selector);\n }\n return (this.shadowRoot || this).querySelector(selector);\n },\n set(this: HTMLElement, nv: any) {\n ensureInit(this);\n if (nv === null || nv === undefined) {\n const selector = selectorOrTarget;\n if (selector.startsWith(':') && selector !== ':host') return;\n\n const r = options.root || 'auto';\n const targets: Element[] = [];\n\n if (r === 'shadow') {\n if (this.shadowRoot?.querySelector(selector)) targets.push(this.shadowRoot.querySelector(selector)!);\n } else if (r === 'light') {\n if (this.querySelector(selector)) targets.push(this.querySelector(selector)!);\n } else if (r === 'all') {\n if (this.shadowRoot?.querySelector(selector)) targets.push(this.shadowRoot.querySelector(selector)!);\n if (this.querySelector(selector)) targets.push(this.querySelector(selector)!);\n } else {\n const el = (this.shadowRoot || this).querySelector(selector);\n if (el) targets.push(el);\n }\n\n targets.forEach(t => t.remove());\n }\n },\n enumerable: true,\n configurable: true\n });\n };\n}\n\nexport const getQueryMetadata = (target: any): QueryMetadata[] | undefined => {\n const constructor = target instanceof Function ? target : target.constructor;\n return ReflectUtils.getMetadata(QUERY_METADATA_KEY, constructor);\n};\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -26,51 +26,75 @@ var import_ReflectUtils = require("@dooboostore/core/reflect/ReflectUtils");
26
26
  var import_elementDefine = require("./elementDefine");
27
27
  var import_Utils = require("../utils/Utils");
28
28
  const QUERY_ALL_METADATA_KEY = Symbol("simple-web-component:query-all");
29
- function queryAll(selector, options = {}) {
30
- return (target, propertyKey, descriptor) => {
29
+ function queryAll(selectorOrTarget, options = {}) {
30
+ return (targetObj, propertyKey, descriptor) => {
31
31
  if (descriptor !== void 0) {
32
32
  throw new Error(`@queryAll decorator cannot be used on methods. (Method: ${String(propertyKey)})`);
33
33
  }
34
- const constructor = target.constructor;
34
+ const constructor = targetObj.constructor;
35
35
  let queries = import_ReflectUtils.ReflectUtils.getMetadata(QUERY_ALL_METADATA_KEY, constructor);
36
36
  if (!queries) {
37
37
  queries = [];
38
38
  import_ReflectUtils.ReflectUtils.defineMetadata(QUERY_ALL_METADATA_KEY, queries, constructor);
39
39
  }
40
- queries.push({ selector, options, propertyKey });
41
- Object.defineProperty(target, propertyKey, {
40
+ queries.push({ propertyKey, selector: selectorOrTarget, options });
41
+ Object.defineProperty(targetObj, propertyKey, {
42
42
  get() {
43
+ (0, import_elementDefine.ensureInit)(this);
44
+ const selector = selectorOrTarget;
45
+ const r = options.root || "auto";
46
+ const applyRoot = (t) => {
47
+ if (!t)
48
+ return [];
49
+ const items = Array.isArray(t) ? t : [t];
50
+ const results = [];
51
+ items.forEach((it) => {
52
+ if (!(it instanceof HTMLElement)) {
53
+ results.push(it);
54
+ return;
55
+ }
56
+ if (r === "auto")
57
+ results.push(it.shadowRoot || it);
58
+ else {
59
+ if (r === "light" || r === "all")
60
+ results.push(it);
61
+ if ((r === "shadow" || r === "all") && it.shadowRoot)
62
+ results.push(it.shadowRoot);
63
+ }
64
+ });
65
+ return results;
66
+ };
43
67
  const hostSet = import_Utils.SwcUtils.getHostSet(this);
44
68
  if (selector === ":hosts")
45
- return hostSet.$hosts;
69
+ return applyRoot(hostSet.$hosts);
46
70
  if (selector === ":appHosts")
47
- return hostSet.$appHosts;
71
+ return applyRoot(hostSet.$appHosts);
48
72
  const config = (0, import_elementDefine.getElementConfig)(this);
49
73
  const win = config?.window || window;
50
- const doc = win.document;
51
74
  if (selector === ":window")
52
75
  return [win];
53
76
  if (selector === ":document")
54
- return [doc];
55
- if (!selector || selector === ":host")
56
- return [this];
57
- const r = options.root || "auto";
58
- if (r === "shadow") {
59
- return this.shadowRoot ? this.shadowRoot.querySelectorAll(selector) : [];
60
- }
61
- if (r === "light") {
62
- return this.querySelectorAll(selector);
63
- }
77
+ return [win.document];
78
+ if (selector === ":host")
79
+ return applyRoot(this);
80
+ if (r === "shadow")
81
+ return this.shadowRoot ? Array.from(this.shadowRoot.querySelectorAll(selector)) : [];
82
+ if (r === "light")
83
+ return Array.from(this.querySelectorAll(selector));
64
84
  if (r === "all") {
65
85
  const sNodes = this.shadowRoot ? Array.from(this.shadowRoot.querySelectorAll(selector)) : [];
66
86
  const lNodes = Array.from(this.querySelectorAll(selector));
67
87
  return [...sNodes, ...lNodes];
68
88
  }
69
89
  const root = this.shadowRoot || this;
70
- return root.querySelectorAll(selector);
90
+ return Array.from(root.querySelectorAll(selector));
71
91
  },
72
92
  set(nv) {
93
+ (0, import_elementDefine.ensureInit)(this);
73
94
  if (nv === null || nv === void 0 || Array.isArray(nv) && nv.length === 0) {
95
+ const selector = selectorOrTarget;
96
+ if (selector.startsWith(":") && selector !== ":host")
97
+ return;
74
98
  const r = options.root || "auto";
75
99
  let targets = [];
76
100
  if (r === "shadow")