@dooboostore/simple-web-component 1.0.12 → 1.0.13

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 (757) hide show
  1. package/README.md +11 -12
  2. package/dist/cjs/decorators/elementDefine.js +88 -82
  3. package/dist/cjs/decorators/elementDefine.js.map +3 -3
  4. package/dist/cjs/decorators/index.js +26 -0
  5. package/dist/cjs/decorators/index.js.map +7 -0
  6. package/dist/cjs/elements/SwcInterfaces.js +35 -0
  7. package/dist/cjs/elements/SwcInterfaces.js.map +7 -0
  8. package/dist/cjs/elements/apps/SwcApp.js.map +2 -2
  9. package/dist/cjs/elements/apps/SwcAppAnchor.js.map +2 -2
  10. package/dist/cjs/elements/apps/SwcAppArea.js.map +2 -2
  11. package/dist/cjs/elements/apps/SwcAppAudio.js.map +2 -2
  12. package/dist/cjs/elements/apps/SwcAppBase.js.map +2 -2
  13. package/dist/cjs/elements/apps/SwcAppBody.js.map +2 -2
  14. package/dist/cjs/elements/apps/SwcAppButton.js.map +2 -2
  15. package/dist/cjs/elements/apps/SwcAppCanvas.js.map +2 -2
  16. package/dist/cjs/elements/apps/SwcAppData.js.map +2 -2
  17. package/dist/cjs/elements/apps/SwcAppDataList.js.map +2 -2
  18. package/dist/cjs/elements/apps/SwcAppDetails.js.map +2 -2
  19. package/dist/cjs/elements/apps/SwcAppDialog.js.map +2 -2
  20. package/dist/cjs/elements/apps/SwcAppDiv.js.map +2 -2
  21. package/dist/cjs/elements/apps/SwcAppDl.js.map +2 -2
  22. package/dist/cjs/elements/apps/SwcAppEmbed.js.map +2 -2
  23. package/dist/cjs/elements/apps/SwcAppFieldSet.js.map +2 -2
  24. package/dist/cjs/elements/apps/SwcAppForm.js.map +2 -2
  25. package/dist/cjs/elements/apps/SwcAppHeading.js.map +2 -2
  26. package/dist/cjs/elements/apps/SwcAppHr.js.map +2 -2
  27. package/dist/cjs/elements/apps/SwcAppIFrame.js.map +2 -2
  28. package/dist/cjs/elements/apps/SwcAppImage.js.map +2 -2
  29. package/dist/cjs/elements/apps/SwcAppInput.js.map +2 -2
  30. package/dist/cjs/elements/apps/SwcAppLabel.js.map +2 -2
  31. package/dist/cjs/elements/apps/SwcAppLegend.js.map +2 -2
  32. package/dist/cjs/elements/apps/SwcAppLi.js.map +2 -2
  33. package/dist/cjs/elements/apps/SwcAppLink.js.map +2 -2
  34. package/dist/cjs/elements/apps/SwcAppMap.js.map +2 -2
  35. package/dist/cjs/elements/apps/SwcAppMeta.js.map +2 -2
  36. package/dist/cjs/elements/apps/SwcAppMeter.js.map +2 -2
  37. package/dist/cjs/elements/apps/SwcAppMod.js.map +2 -2
  38. package/dist/cjs/elements/apps/SwcAppObject.js.map +2 -2
  39. package/dist/cjs/elements/apps/SwcAppOl.js.map +2 -2
  40. package/dist/cjs/elements/apps/SwcAppOptGroup.js.map +2 -2
  41. package/dist/cjs/elements/apps/SwcAppOption.js.map +2 -2
  42. package/dist/cjs/elements/apps/SwcAppOutput.js.map +2 -2
  43. package/dist/cjs/elements/apps/SwcAppParagraph.js.map +2 -2
  44. package/dist/cjs/elements/apps/SwcAppParam.js.map +2 -2
  45. package/dist/cjs/elements/apps/SwcAppPicture.js.map +2 -2
  46. package/dist/cjs/elements/apps/SwcAppPre.js.map +2 -2
  47. package/dist/cjs/elements/apps/SwcAppProgress.js.map +2 -2
  48. package/dist/cjs/elements/apps/SwcAppQuote.js.map +2 -2
  49. package/dist/cjs/elements/apps/SwcAppScript.js.map +2 -2
  50. package/dist/cjs/elements/apps/SwcAppSelect.js.map +2 -2
  51. package/dist/cjs/elements/apps/SwcAppSlot.js.map +2 -2
  52. package/dist/cjs/elements/apps/SwcAppSource.js.map +2 -2
  53. package/dist/cjs/elements/apps/SwcAppSpan.js.map +2 -2
  54. package/dist/cjs/elements/apps/SwcAppStyle.js.map +2 -2
  55. package/dist/cjs/elements/apps/SwcAppTable.js.map +2 -2
  56. package/dist/cjs/elements/apps/SwcAppTableCell.js.map +2 -2
  57. package/dist/cjs/elements/apps/SwcAppTableRow.js.map +2 -2
  58. package/dist/cjs/elements/apps/SwcAppTableSection.js.map +2 -2
  59. package/dist/cjs/elements/apps/SwcAppTemplate.js.map +2 -2
  60. package/dist/cjs/elements/apps/SwcAppTextArea.js.map +2 -2
  61. package/dist/cjs/elements/apps/SwcAppTime.js.map +2 -2
  62. package/dist/cjs/elements/apps/SwcAppTitle.js.map +2 -2
  63. package/dist/cjs/elements/apps/SwcAppTrack.js.map +2 -2
  64. package/dist/cjs/elements/apps/SwcAppUl.js.map +2 -2
  65. package/dist/cjs/elements/apps/SwcAppVideo.js.map +2 -2
  66. package/dist/cjs/elements/base/SwcHTMLAnchorElementBase.js +17 -8
  67. package/dist/cjs/elements/base/SwcHTMLAnchorElementBase.js.map +2 -2
  68. package/dist/cjs/elements/base/SwcHTMLAreaElementBase.js +17 -8
  69. package/dist/cjs/elements/base/SwcHTMLAreaElementBase.js.map +2 -2
  70. package/dist/cjs/elements/base/SwcHTMLAudioElementBase.js +17 -8
  71. package/dist/cjs/elements/base/SwcHTMLAudioElementBase.js.map +2 -2
  72. package/dist/cjs/elements/base/SwcHTMLBaseElementBase.js +17 -8
  73. package/dist/cjs/elements/base/SwcHTMLBaseElementBase.js.map +2 -2
  74. package/dist/cjs/elements/base/SwcHTMLBodyElementBase.js +17 -8
  75. package/dist/cjs/elements/base/SwcHTMLBodyElementBase.js.map +2 -2
  76. package/dist/cjs/elements/base/SwcHTMLButtonElementBase.js +17 -8
  77. package/dist/cjs/elements/base/SwcHTMLButtonElementBase.js.map +2 -2
  78. package/dist/cjs/elements/base/SwcHTMLCanvasElementBase.js +17 -8
  79. package/dist/cjs/elements/base/SwcHTMLCanvasElementBase.js.map +2 -2
  80. package/dist/cjs/elements/base/SwcHTMLDListElementBase.js +17 -8
  81. package/dist/cjs/elements/base/SwcHTMLDListElementBase.js.map +2 -2
  82. package/dist/cjs/elements/base/SwcHTMLDataElementBase.js +17 -8
  83. package/dist/cjs/elements/base/SwcHTMLDataElementBase.js.map +2 -2
  84. package/dist/cjs/elements/base/SwcHTMLDataListElementBase.js +17 -8
  85. package/dist/cjs/elements/base/SwcHTMLDataListElementBase.js.map +2 -2
  86. package/dist/cjs/elements/base/SwcHTMLDetailsElementBase.js +17 -8
  87. package/dist/cjs/elements/base/SwcHTMLDetailsElementBase.js.map +2 -2
  88. package/dist/cjs/elements/base/SwcHTMLDialogElementBase.js +17 -8
  89. package/dist/cjs/elements/base/SwcHTMLDialogElementBase.js.map +2 -2
  90. package/dist/cjs/elements/base/SwcHTMLDivElementBase.js +17 -8
  91. package/dist/cjs/elements/base/SwcHTMLDivElementBase.js.map +2 -2
  92. package/dist/cjs/elements/base/SwcHTMLElementBase.js +17 -8
  93. package/dist/cjs/elements/base/SwcHTMLElementBase.js.map +2 -2
  94. package/dist/cjs/elements/base/SwcHTMLEmbedElementBase.js +17 -8
  95. package/dist/cjs/elements/base/SwcHTMLEmbedElementBase.js.map +2 -2
  96. package/dist/cjs/elements/base/SwcHTMLFieldSetElementBase.js +17 -8
  97. package/dist/cjs/elements/base/SwcHTMLFieldSetElementBase.js.map +2 -2
  98. package/dist/cjs/elements/base/SwcHTMLFormElementBase.js +17 -8
  99. package/dist/cjs/elements/base/SwcHTMLFormElementBase.js.map +2 -2
  100. package/dist/cjs/elements/base/SwcHTMLHRElementBase.js +17 -8
  101. package/dist/cjs/elements/base/SwcHTMLHRElementBase.js.map +2 -2
  102. package/dist/cjs/elements/base/SwcHTMLHeadingElementBase.js +17 -8
  103. package/dist/cjs/elements/base/SwcHTMLHeadingElementBase.js.map +2 -2
  104. package/dist/cjs/elements/base/SwcHTMLIFrameElementBase.js +17 -8
  105. package/dist/cjs/elements/base/SwcHTMLIFrameElementBase.js.map +2 -2
  106. package/dist/cjs/elements/base/SwcHTMLImageElementBase.js +17 -8
  107. package/dist/cjs/elements/base/SwcHTMLImageElementBase.js.map +2 -2
  108. package/dist/cjs/elements/base/SwcHTMLInputElementBase.js +17 -8
  109. package/dist/cjs/elements/base/SwcHTMLInputElementBase.js.map +2 -2
  110. package/dist/cjs/elements/base/SwcHTMLLIElementBase.js +17 -8
  111. package/dist/cjs/elements/base/SwcHTMLLIElementBase.js.map +2 -2
  112. package/dist/cjs/elements/base/SwcHTMLLabelElementBase.js +17 -8
  113. package/dist/cjs/elements/base/SwcHTMLLabelElementBase.js.map +2 -2
  114. package/dist/cjs/elements/base/SwcHTMLLegendElementBase.js +17 -8
  115. package/dist/cjs/elements/base/SwcHTMLLegendElementBase.js.map +2 -2
  116. package/dist/cjs/elements/base/SwcHTMLLinkElementBase.js +17 -8
  117. package/dist/cjs/elements/base/SwcHTMLLinkElementBase.js.map +2 -2
  118. package/dist/cjs/elements/base/SwcHTMLMapElementBase.js +17 -8
  119. package/dist/cjs/elements/base/SwcHTMLMapElementBase.js.map +2 -2
  120. package/dist/cjs/elements/base/SwcHTMLMetaElementBase.js +17 -8
  121. package/dist/cjs/elements/base/SwcHTMLMetaElementBase.js.map +2 -2
  122. package/dist/cjs/elements/base/SwcHTMLMeterElementBase.js +17 -8
  123. package/dist/cjs/elements/base/SwcHTMLMeterElementBase.js.map +2 -2
  124. package/dist/cjs/elements/base/SwcHTMLModElementBase.js +17 -8
  125. package/dist/cjs/elements/base/SwcHTMLModElementBase.js.map +2 -2
  126. package/dist/cjs/elements/base/SwcHTMLOListElementBase.js +17 -8
  127. package/dist/cjs/elements/base/SwcHTMLOListElementBase.js.map +2 -2
  128. package/dist/cjs/elements/base/SwcHTMLObjectElementBase.js +17 -8
  129. package/dist/cjs/elements/base/SwcHTMLObjectElementBase.js.map +2 -2
  130. package/dist/cjs/elements/base/SwcHTMLOptGroupElementBase.js +17 -8
  131. package/dist/cjs/elements/base/SwcHTMLOptGroupElementBase.js.map +2 -2
  132. package/dist/cjs/elements/base/SwcHTMLOptionElementBase.js +17 -8
  133. package/dist/cjs/elements/base/SwcHTMLOptionElementBase.js.map +2 -2
  134. package/dist/cjs/elements/base/SwcHTMLOutputElementBase.js +17 -8
  135. package/dist/cjs/elements/base/SwcHTMLOutputElementBase.js.map +2 -2
  136. package/dist/cjs/elements/base/SwcHTMLParagraphElementBase.js +17 -8
  137. package/dist/cjs/elements/base/SwcHTMLParagraphElementBase.js.map +2 -2
  138. package/dist/cjs/elements/base/SwcHTMLParamElementBase.js +17 -8
  139. package/dist/cjs/elements/base/SwcHTMLParamElementBase.js.map +2 -2
  140. package/dist/cjs/elements/base/SwcHTMLPictureElementBase.js +17 -8
  141. package/dist/cjs/elements/base/SwcHTMLPictureElementBase.js.map +2 -2
  142. package/dist/cjs/elements/base/SwcHTMLPreElementBase.js +17 -8
  143. package/dist/cjs/elements/base/SwcHTMLPreElementBase.js.map +2 -2
  144. package/dist/cjs/elements/base/SwcHTMLProgressElementBase.js +17 -8
  145. package/dist/cjs/elements/base/SwcHTMLProgressElementBase.js.map +2 -2
  146. package/dist/cjs/elements/base/SwcHTMLQuoteElementBase.js +17 -8
  147. package/dist/cjs/elements/base/SwcHTMLQuoteElementBase.js.map +2 -2
  148. package/dist/cjs/elements/base/SwcHTMLScriptElementBase.js +17 -8
  149. package/dist/cjs/elements/base/SwcHTMLScriptElementBase.js.map +2 -2
  150. package/dist/cjs/elements/base/SwcHTMLSelectElementBase.js +17 -8
  151. package/dist/cjs/elements/base/SwcHTMLSelectElementBase.js.map +2 -2
  152. package/dist/cjs/elements/base/SwcHTMLSlotElementBase.js +17 -8
  153. package/dist/cjs/elements/base/SwcHTMLSlotElementBase.js.map +2 -2
  154. package/dist/cjs/elements/base/SwcHTMLSourceElementBase.js +17 -8
  155. package/dist/cjs/elements/base/SwcHTMLSourceElementBase.js.map +2 -2
  156. package/dist/cjs/elements/base/SwcHTMLSpanElementBase.js +17 -8
  157. package/dist/cjs/elements/base/SwcHTMLSpanElementBase.js.map +2 -2
  158. package/dist/cjs/elements/base/SwcHTMLStyleElementBase.js +17 -8
  159. package/dist/cjs/elements/base/SwcHTMLStyleElementBase.js.map +2 -2
  160. package/dist/cjs/elements/base/SwcHTMLTableCellElementBase.js +17 -8
  161. package/dist/cjs/elements/base/SwcHTMLTableCellElementBase.js.map +2 -2
  162. package/dist/cjs/elements/base/SwcHTMLTableElementBase.js +17 -8
  163. package/dist/cjs/elements/base/SwcHTMLTableElementBase.js.map +2 -2
  164. package/dist/cjs/elements/base/SwcHTMLTableRowElementBase.js +17 -8
  165. package/dist/cjs/elements/base/SwcHTMLTableRowElementBase.js.map +2 -2
  166. package/dist/cjs/elements/base/SwcHTMLTableSectionElementBase.js +17 -8
  167. package/dist/cjs/elements/base/SwcHTMLTableSectionElementBase.js.map +2 -2
  168. package/dist/cjs/elements/base/SwcHTMLTemplateElementBase.js +17 -8
  169. package/dist/cjs/elements/base/SwcHTMLTemplateElementBase.js.map +2 -2
  170. package/dist/cjs/elements/base/SwcHTMLTextAreaElementBase.js +17 -8
  171. package/dist/cjs/elements/base/SwcHTMLTextAreaElementBase.js.map +2 -2
  172. package/dist/cjs/elements/base/SwcHTMLTimeElementBase.js +17 -8
  173. package/dist/cjs/elements/base/SwcHTMLTimeElementBase.js.map +2 -2
  174. package/dist/cjs/elements/base/SwcHTMLTitleElementBase.js +17 -8
  175. package/dist/cjs/elements/base/SwcHTMLTitleElementBase.js.map +2 -2
  176. package/dist/cjs/elements/base/SwcHTMLTrackElementBase.js +17 -8
  177. package/dist/cjs/elements/base/SwcHTMLTrackElementBase.js.map +2 -2
  178. package/dist/cjs/elements/base/SwcHTMLUListElementBase.js +17 -8
  179. package/dist/cjs/elements/base/SwcHTMLUListElementBase.js.map +2 -2
  180. package/dist/cjs/elements/base/SwcHTMLVideoElementBase.js +17 -8
  181. package/dist/cjs/elements/base/SwcHTMLVideoElementBase.js.map +2 -2
  182. package/dist/cjs/elements/index.js +1 -0
  183. package/dist/cjs/elements/index.js.map +2 -2
  184. package/dist/cjs/index.js +2 -17
  185. package/dist/cjs/index.js.map +2 -2
  186. package/dist/cjs/utils/Utils.js +44 -0
  187. package/dist/cjs/utils/Utils.js.map +2 -2
  188. package/dist/esm/decorators/elementDefine.js +88 -82
  189. package/dist/esm/decorators/elementDefine.js.map +3 -3
  190. package/dist/esm/decorators/index.js +10 -0
  191. package/dist/esm/decorators/index.js.map +7 -0
  192. package/dist/esm/elements/SwcInterfaces.js +16 -0
  193. package/dist/esm/elements/SwcInterfaces.js.map +7 -0
  194. package/dist/esm/elements/apps/SwcApp.js.map +2 -2
  195. package/dist/esm/elements/apps/SwcAppAnchor.js.map +2 -2
  196. package/dist/esm/elements/apps/SwcAppArea.js.map +2 -2
  197. package/dist/esm/elements/apps/SwcAppAudio.js.map +2 -2
  198. package/dist/esm/elements/apps/SwcAppBase.js.map +2 -2
  199. package/dist/esm/elements/apps/SwcAppBody.js.map +2 -2
  200. package/dist/esm/elements/apps/SwcAppButton.js.map +2 -2
  201. package/dist/esm/elements/apps/SwcAppCanvas.js.map +2 -2
  202. package/dist/esm/elements/apps/SwcAppData.js.map +2 -2
  203. package/dist/esm/elements/apps/SwcAppDataList.js.map +2 -2
  204. package/dist/esm/elements/apps/SwcAppDetails.js.map +2 -2
  205. package/dist/esm/elements/apps/SwcAppDialog.js.map +2 -2
  206. package/dist/esm/elements/apps/SwcAppDiv.js.map +2 -2
  207. package/dist/esm/elements/apps/SwcAppDl.js.map +2 -2
  208. package/dist/esm/elements/apps/SwcAppEmbed.js.map +2 -2
  209. package/dist/esm/elements/apps/SwcAppFieldSet.js.map +2 -2
  210. package/dist/esm/elements/apps/SwcAppForm.js.map +2 -2
  211. package/dist/esm/elements/apps/SwcAppHeading.js.map +2 -2
  212. package/dist/esm/elements/apps/SwcAppHr.js.map +2 -2
  213. package/dist/esm/elements/apps/SwcAppIFrame.js.map +2 -2
  214. package/dist/esm/elements/apps/SwcAppImage.js.map +2 -2
  215. package/dist/esm/elements/apps/SwcAppInput.js.map +2 -2
  216. package/dist/esm/elements/apps/SwcAppLabel.js.map +2 -2
  217. package/dist/esm/elements/apps/SwcAppLegend.js.map +2 -2
  218. package/dist/esm/elements/apps/SwcAppLi.js.map +2 -2
  219. package/dist/esm/elements/apps/SwcAppLink.js.map +2 -2
  220. package/dist/esm/elements/apps/SwcAppMap.js.map +2 -2
  221. package/dist/esm/elements/apps/SwcAppMeta.js.map +2 -2
  222. package/dist/esm/elements/apps/SwcAppMeter.js.map +2 -2
  223. package/dist/esm/elements/apps/SwcAppMod.js.map +2 -2
  224. package/dist/esm/elements/apps/SwcAppObject.js.map +2 -2
  225. package/dist/esm/elements/apps/SwcAppOl.js.map +2 -2
  226. package/dist/esm/elements/apps/SwcAppOptGroup.js.map +2 -2
  227. package/dist/esm/elements/apps/SwcAppOption.js.map +2 -2
  228. package/dist/esm/elements/apps/SwcAppOutput.js.map +2 -2
  229. package/dist/esm/elements/apps/SwcAppParagraph.js.map +2 -2
  230. package/dist/esm/elements/apps/SwcAppParam.js.map +2 -2
  231. package/dist/esm/elements/apps/SwcAppPicture.js.map +2 -2
  232. package/dist/esm/elements/apps/SwcAppPre.js.map +2 -2
  233. package/dist/esm/elements/apps/SwcAppProgress.js.map +2 -2
  234. package/dist/esm/elements/apps/SwcAppQuote.js.map +2 -2
  235. package/dist/esm/elements/apps/SwcAppScript.js.map +2 -2
  236. package/dist/esm/elements/apps/SwcAppSelect.js.map +2 -2
  237. package/dist/esm/elements/apps/SwcAppSlot.js.map +2 -2
  238. package/dist/esm/elements/apps/SwcAppSource.js.map +2 -2
  239. package/dist/esm/elements/apps/SwcAppSpan.js.map +2 -2
  240. package/dist/esm/elements/apps/SwcAppStyle.js.map +2 -2
  241. package/dist/esm/elements/apps/SwcAppTable.js.map +2 -2
  242. package/dist/esm/elements/apps/SwcAppTableCell.js.map +2 -2
  243. package/dist/esm/elements/apps/SwcAppTableRow.js.map +2 -2
  244. package/dist/esm/elements/apps/SwcAppTableSection.js.map +2 -2
  245. package/dist/esm/elements/apps/SwcAppTemplate.js.map +2 -2
  246. package/dist/esm/elements/apps/SwcAppTextArea.js.map +2 -2
  247. package/dist/esm/elements/apps/SwcAppTime.js.map +2 -2
  248. package/dist/esm/elements/apps/SwcAppTitle.js.map +2 -2
  249. package/dist/esm/elements/apps/SwcAppTrack.js.map +2 -2
  250. package/dist/esm/elements/apps/SwcAppUl.js.map +2 -2
  251. package/dist/esm/elements/apps/SwcAppVideo.js.map +2 -2
  252. package/dist/esm/elements/base/SwcHTMLAnchorElementBase.js +17 -8
  253. package/dist/esm/elements/base/SwcHTMLAnchorElementBase.js.map +2 -2
  254. package/dist/esm/elements/base/SwcHTMLAreaElementBase.js +17 -8
  255. package/dist/esm/elements/base/SwcHTMLAreaElementBase.js.map +2 -2
  256. package/dist/esm/elements/base/SwcHTMLAudioElementBase.js +17 -8
  257. package/dist/esm/elements/base/SwcHTMLAudioElementBase.js.map +2 -2
  258. package/dist/esm/elements/base/SwcHTMLBaseElementBase.js +17 -8
  259. package/dist/esm/elements/base/SwcHTMLBaseElementBase.js.map +2 -2
  260. package/dist/esm/elements/base/SwcHTMLBodyElementBase.js +17 -8
  261. package/dist/esm/elements/base/SwcHTMLBodyElementBase.js.map +2 -2
  262. package/dist/esm/elements/base/SwcHTMLButtonElementBase.js +17 -8
  263. package/dist/esm/elements/base/SwcHTMLButtonElementBase.js.map +2 -2
  264. package/dist/esm/elements/base/SwcHTMLCanvasElementBase.js +17 -8
  265. package/dist/esm/elements/base/SwcHTMLCanvasElementBase.js.map +2 -2
  266. package/dist/esm/elements/base/SwcHTMLDListElementBase.js +17 -8
  267. package/dist/esm/elements/base/SwcHTMLDListElementBase.js.map +2 -2
  268. package/dist/esm/elements/base/SwcHTMLDataElementBase.js +17 -8
  269. package/dist/esm/elements/base/SwcHTMLDataElementBase.js.map +2 -2
  270. package/dist/esm/elements/base/SwcHTMLDataListElementBase.js +17 -8
  271. package/dist/esm/elements/base/SwcHTMLDataListElementBase.js.map +2 -2
  272. package/dist/esm/elements/base/SwcHTMLDetailsElementBase.js +17 -8
  273. package/dist/esm/elements/base/SwcHTMLDetailsElementBase.js.map +2 -2
  274. package/dist/esm/elements/base/SwcHTMLDialogElementBase.js +17 -8
  275. package/dist/esm/elements/base/SwcHTMLDialogElementBase.js.map +2 -2
  276. package/dist/esm/elements/base/SwcHTMLDivElementBase.js +17 -8
  277. package/dist/esm/elements/base/SwcHTMLDivElementBase.js.map +2 -2
  278. package/dist/esm/elements/base/SwcHTMLElementBase.js +17 -8
  279. package/dist/esm/elements/base/SwcHTMLElementBase.js.map +2 -2
  280. package/dist/esm/elements/base/SwcHTMLEmbedElementBase.js +17 -8
  281. package/dist/esm/elements/base/SwcHTMLEmbedElementBase.js.map +2 -2
  282. package/dist/esm/elements/base/SwcHTMLFieldSetElementBase.js +17 -8
  283. package/dist/esm/elements/base/SwcHTMLFieldSetElementBase.js.map +2 -2
  284. package/dist/esm/elements/base/SwcHTMLFormElementBase.js +17 -8
  285. package/dist/esm/elements/base/SwcHTMLFormElementBase.js.map +2 -2
  286. package/dist/esm/elements/base/SwcHTMLHRElementBase.js +17 -8
  287. package/dist/esm/elements/base/SwcHTMLHRElementBase.js.map +2 -2
  288. package/dist/esm/elements/base/SwcHTMLHeadingElementBase.js +17 -8
  289. package/dist/esm/elements/base/SwcHTMLHeadingElementBase.js.map +2 -2
  290. package/dist/esm/elements/base/SwcHTMLIFrameElementBase.js +17 -8
  291. package/dist/esm/elements/base/SwcHTMLIFrameElementBase.js.map +2 -2
  292. package/dist/esm/elements/base/SwcHTMLImageElementBase.js +17 -8
  293. package/dist/esm/elements/base/SwcHTMLImageElementBase.js.map +2 -2
  294. package/dist/esm/elements/base/SwcHTMLInputElementBase.js +17 -8
  295. package/dist/esm/elements/base/SwcHTMLInputElementBase.js.map +2 -2
  296. package/dist/esm/elements/base/SwcHTMLLIElementBase.js +17 -8
  297. package/dist/esm/elements/base/SwcHTMLLIElementBase.js.map +2 -2
  298. package/dist/esm/elements/base/SwcHTMLLabelElementBase.js +17 -8
  299. package/dist/esm/elements/base/SwcHTMLLabelElementBase.js.map +2 -2
  300. package/dist/esm/elements/base/SwcHTMLLegendElementBase.js +17 -8
  301. package/dist/esm/elements/base/SwcHTMLLegendElementBase.js.map +2 -2
  302. package/dist/esm/elements/base/SwcHTMLLinkElementBase.js +17 -8
  303. package/dist/esm/elements/base/SwcHTMLLinkElementBase.js.map +2 -2
  304. package/dist/esm/elements/base/SwcHTMLMapElementBase.js +17 -8
  305. package/dist/esm/elements/base/SwcHTMLMapElementBase.js.map +2 -2
  306. package/dist/esm/elements/base/SwcHTMLMetaElementBase.js +17 -8
  307. package/dist/esm/elements/base/SwcHTMLMetaElementBase.js.map +2 -2
  308. package/dist/esm/elements/base/SwcHTMLMeterElementBase.js +17 -8
  309. package/dist/esm/elements/base/SwcHTMLMeterElementBase.js.map +2 -2
  310. package/dist/esm/elements/base/SwcHTMLModElementBase.js +17 -8
  311. package/dist/esm/elements/base/SwcHTMLModElementBase.js.map +2 -2
  312. package/dist/esm/elements/base/SwcHTMLOListElementBase.js +17 -8
  313. package/dist/esm/elements/base/SwcHTMLOListElementBase.js.map +2 -2
  314. package/dist/esm/elements/base/SwcHTMLObjectElementBase.js +17 -8
  315. package/dist/esm/elements/base/SwcHTMLObjectElementBase.js.map +2 -2
  316. package/dist/esm/elements/base/SwcHTMLOptGroupElementBase.js +17 -8
  317. package/dist/esm/elements/base/SwcHTMLOptGroupElementBase.js.map +2 -2
  318. package/dist/esm/elements/base/SwcHTMLOptionElementBase.js +17 -8
  319. package/dist/esm/elements/base/SwcHTMLOptionElementBase.js.map +2 -2
  320. package/dist/esm/elements/base/SwcHTMLOutputElementBase.js +17 -8
  321. package/dist/esm/elements/base/SwcHTMLOutputElementBase.js.map +2 -2
  322. package/dist/esm/elements/base/SwcHTMLParagraphElementBase.js +17 -8
  323. package/dist/esm/elements/base/SwcHTMLParagraphElementBase.js.map +2 -2
  324. package/dist/esm/elements/base/SwcHTMLParamElementBase.js +17 -8
  325. package/dist/esm/elements/base/SwcHTMLParamElementBase.js.map +2 -2
  326. package/dist/esm/elements/base/SwcHTMLPictureElementBase.js +17 -8
  327. package/dist/esm/elements/base/SwcHTMLPictureElementBase.js.map +2 -2
  328. package/dist/esm/elements/base/SwcHTMLPreElementBase.js +17 -8
  329. package/dist/esm/elements/base/SwcHTMLPreElementBase.js.map +2 -2
  330. package/dist/esm/elements/base/SwcHTMLProgressElementBase.js +17 -8
  331. package/dist/esm/elements/base/SwcHTMLProgressElementBase.js.map +2 -2
  332. package/dist/esm/elements/base/SwcHTMLQuoteElementBase.js +17 -8
  333. package/dist/esm/elements/base/SwcHTMLQuoteElementBase.js.map +2 -2
  334. package/dist/esm/elements/base/SwcHTMLScriptElementBase.js +17 -8
  335. package/dist/esm/elements/base/SwcHTMLScriptElementBase.js.map +2 -2
  336. package/dist/esm/elements/base/SwcHTMLSelectElementBase.js +17 -8
  337. package/dist/esm/elements/base/SwcHTMLSelectElementBase.js.map +2 -2
  338. package/dist/esm/elements/base/SwcHTMLSlotElementBase.js +17 -8
  339. package/dist/esm/elements/base/SwcHTMLSlotElementBase.js.map +2 -2
  340. package/dist/esm/elements/base/SwcHTMLSourceElementBase.js +17 -8
  341. package/dist/esm/elements/base/SwcHTMLSourceElementBase.js.map +2 -2
  342. package/dist/esm/elements/base/SwcHTMLSpanElementBase.js +17 -8
  343. package/dist/esm/elements/base/SwcHTMLSpanElementBase.js.map +2 -2
  344. package/dist/esm/elements/base/SwcHTMLStyleElementBase.js +17 -8
  345. package/dist/esm/elements/base/SwcHTMLStyleElementBase.js.map +2 -2
  346. package/dist/esm/elements/base/SwcHTMLTableCellElementBase.js +17 -8
  347. package/dist/esm/elements/base/SwcHTMLTableCellElementBase.js.map +2 -2
  348. package/dist/esm/elements/base/SwcHTMLTableElementBase.js +17 -8
  349. package/dist/esm/elements/base/SwcHTMLTableElementBase.js.map +2 -2
  350. package/dist/esm/elements/base/SwcHTMLTableRowElementBase.js +17 -8
  351. package/dist/esm/elements/base/SwcHTMLTableRowElementBase.js.map +2 -2
  352. package/dist/esm/elements/base/SwcHTMLTableSectionElementBase.js +17 -8
  353. package/dist/esm/elements/base/SwcHTMLTableSectionElementBase.js.map +2 -2
  354. package/dist/esm/elements/base/SwcHTMLTemplateElementBase.js +17 -8
  355. package/dist/esm/elements/base/SwcHTMLTemplateElementBase.js.map +2 -2
  356. package/dist/esm/elements/base/SwcHTMLTextAreaElementBase.js +17 -8
  357. package/dist/esm/elements/base/SwcHTMLTextAreaElementBase.js.map +2 -2
  358. package/dist/esm/elements/base/SwcHTMLTimeElementBase.js +17 -8
  359. package/dist/esm/elements/base/SwcHTMLTimeElementBase.js.map +2 -2
  360. package/dist/esm/elements/base/SwcHTMLTitleElementBase.js +17 -8
  361. package/dist/esm/elements/base/SwcHTMLTitleElementBase.js.map +2 -2
  362. package/dist/esm/elements/base/SwcHTMLTrackElementBase.js +17 -8
  363. package/dist/esm/elements/base/SwcHTMLTrackElementBase.js.map +2 -2
  364. package/dist/esm/elements/base/SwcHTMLUListElementBase.js +17 -8
  365. package/dist/esm/elements/base/SwcHTMLUListElementBase.js.map +2 -2
  366. package/dist/esm/elements/base/SwcHTMLVideoElementBase.js +17 -8
  367. package/dist/esm/elements/base/SwcHTMLVideoElementBase.js.map +2 -2
  368. package/dist/esm/elements/index.js +1 -0
  369. package/dist/esm/elements/index.js.map +2 -2
  370. package/dist/esm/index.js +2 -17
  371. package/dist/esm/index.js.map +2 -2
  372. package/dist/esm/utils/Utils.js +44 -0
  373. package/dist/esm/utils/Utils.js.map +2 -2
  374. package/dist/esm-bundle/dooboostore-simple-web-component.esm.js +2402 -1816
  375. package/dist/esm-bundle/dooboostore-simple-web-component.esm.js.map +4 -4
  376. package/dist/types/decorators/elementDefine.d.ts.map +1 -1
  377. package/dist/types/decorators/index.d.ts +10 -0
  378. package/dist/types/decorators/index.d.ts.map +1 -0
  379. package/dist/types/elements/SwcInterfaces.d.ts +46 -0
  380. package/dist/types/elements/SwcInterfaces.d.ts.map +1 -0
  381. package/dist/types/elements/apps/SwcApp.d.ts +1 -1
  382. package/dist/types/elements/apps/SwcApp.d.ts.map +1 -1
  383. package/dist/types/elements/apps/SwcAppAnchor.d.ts +1 -1
  384. package/dist/types/elements/apps/SwcAppAnchor.d.ts.map +1 -1
  385. package/dist/types/elements/apps/SwcAppArea.d.ts +1 -1
  386. package/dist/types/elements/apps/SwcAppArea.d.ts.map +1 -1
  387. package/dist/types/elements/apps/SwcAppAudio.d.ts +1 -1
  388. package/dist/types/elements/apps/SwcAppAudio.d.ts.map +1 -1
  389. package/dist/types/elements/apps/SwcAppBase.d.ts +1 -1
  390. package/dist/types/elements/apps/SwcAppBase.d.ts.map +1 -1
  391. package/dist/types/elements/apps/SwcAppBody.d.ts +1 -1
  392. package/dist/types/elements/apps/SwcAppBody.d.ts.map +1 -1
  393. package/dist/types/elements/apps/SwcAppButton.d.ts +1 -1
  394. package/dist/types/elements/apps/SwcAppButton.d.ts.map +1 -1
  395. package/dist/types/elements/apps/SwcAppCanvas.d.ts +1 -1
  396. package/dist/types/elements/apps/SwcAppCanvas.d.ts.map +1 -1
  397. package/dist/types/elements/apps/SwcAppData.d.ts +1 -1
  398. package/dist/types/elements/apps/SwcAppData.d.ts.map +1 -1
  399. package/dist/types/elements/apps/SwcAppDataList.d.ts +1 -1
  400. package/dist/types/elements/apps/SwcAppDataList.d.ts.map +1 -1
  401. package/dist/types/elements/apps/SwcAppDetails.d.ts +1 -1
  402. package/dist/types/elements/apps/SwcAppDetails.d.ts.map +1 -1
  403. package/dist/types/elements/apps/SwcAppDialog.d.ts +1 -1
  404. package/dist/types/elements/apps/SwcAppDialog.d.ts.map +1 -1
  405. package/dist/types/elements/apps/SwcAppDiv.d.ts +1 -1
  406. package/dist/types/elements/apps/SwcAppDiv.d.ts.map +1 -1
  407. package/dist/types/elements/apps/SwcAppDl.d.ts +1 -1
  408. package/dist/types/elements/apps/SwcAppDl.d.ts.map +1 -1
  409. package/dist/types/elements/apps/SwcAppEmbed.d.ts +1 -1
  410. package/dist/types/elements/apps/SwcAppEmbed.d.ts.map +1 -1
  411. package/dist/types/elements/apps/SwcAppFieldSet.d.ts +1 -1
  412. package/dist/types/elements/apps/SwcAppFieldSet.d.ts.map +1 -1
  413. package/dist/types/elements/apps/SwcAppForm.d.ts +1 -1
  414. package/dist/types/elements/apps/SwcAppForm.d.ts.map +1 -1
  415. package/dist/types/elements/apps/SwcAppHeading.d.ts +1 -1
  416. package/dist/types/elements/apps/SwcAppHeading.d.ts.map +1 -1
  417. package/dist/types/elements/apps/SwcAppHr.d.ts +1 -1
  418. package/dist/types/elements/apps/SwcAppHr.d.ts.map +1 -1
  419. package/dist/types/elements/apps/SwcAppIFrame.d.ts +1 -1
  420. package/dist/types/elements/apps/SwcAppIFrame.d.ts.map +1 -1
  421. package/dist/types/elements/apps/SwcAppImage.d.ts +1 -1
  422. package/dist/types/elements/apps/SwcAppImage.d.ts.map +1 -1
  423. package/dist/types/elements/apps/SwcAppInput.d.ts +1 -1
  424. package/dist/types/elements/apps/SwcAppInput.d.ts.map +1 -1
  425. package/dist/types/elements/apps/SwcAppLabel.d.ts +1 -1
  426. package/dist/types/elements/apps/SwcAppLabel.d.ts.map +1 -1
  427. package/dist/types/elements/apps/SwcAppLegend.d.ts +1 -1
  428. package/dist/types/elements/apps/SwcAppLegend.d.ts.map +1 -1
  429. package/dist/types/elements/apps/SwcAppLi.d.ts +1 -1
  430. package/dist/types/elements/apps/SwcAppLi.d.ts.map +1 -1
  431. package/dist/types/elements/apps/SwcAppLink.d.ts +1 -1
  432. package/dist/types/elements/apps/SwcAppLink.d.ts.map +1 -1
  433. package/dist/types/elements/apps/SwcAppMap.d.ts +1 -1
  434. package/dist/types/elements/apps/SwcAppMap.d.ts.map +1 -1
  435. package/dist/types/elements/apps/SwcAppMeta.d.ts +1 -1
  436. package/dist/types/elements/apps/SwcAppMeta.d.ts.map +1 -1
  437. package/dist/types/elements/apps/SwcAppMeter.d.ts +1 -1
  438. package/dist/types/elements/apps/SwcAppMeter.d.ts.map +1 -1
  439. package/dist/types/elements/apps/SwcAppMod.d.ts +1 -1
  440. package/dist/types/elements/apps/SwcAppMod.d.ts.map +1 -1
  441. package/dist/types/elements/apps/SwcAppObject.d.ts +1 -1
  442. package/dist/types/elements/apps/SwcAppObject.d.ts.map +1 -1
  443. package/dist/types/elements/apps/SwcAppOl.d.ts +1 -1
  444. package/dist/types/elements/apps/SwcAppOl.d.ts.map +1 -1
  445. package/dist/types/elements/apps/SwcAppOptGroup.d.ts +1 -1
  446. package/dist/types/elements/apps/SwcAppOptGroup.d.ts.map +1 -1
  447. package/dist/types/elements/apps/SwcAppOption.d.ts +1 -1
  448. package/dist/types/elements/apps/SwcAppOption.d.ts.map +1 -1
  449. package/dist/types/elements/apps/SwcAppOutput.d.ts +1 -1
  450. package/dist/types/elements/apps/SwcAppOutput.d.ts.map +1 -1
  451. package/dist/types/elements/apps/SwcAppParagraph.d.ts +1 -1
  452. package/dist/types/elements/apps/SwcAppParagraph.d.ts.map +1 -1
  453. package/dist/types/elements/apps/SwcAppParam.d.ts +1 -1
  454. package/dist/types/elements/apps/SwcAppParam.d.ts.map +1 -1
  455. package/dist/types/elements/apps/SwcAppPicture.d.ts +1 -1
  456. package/dist/types/elements/apps/SwcAppPicture.d.ts.map +1 -1
  457. package/dist/types/elements/apps/SwcAppPre.d.ts +1 -1
  458. package/dist/types/elements/apps/SwcAppPre.d.ts.map +1 -1
  459. package/dist/types/elements/apps/SwcAppProgress.d.ts +1 -1
  460. package/dist/types/elements/apps/SwcAppProgress.d.ts.map +1 -1
  461. package/dist/types/elements/apps/SwcAppQuote.d.ts +1 -1
  462. package/dist/types/elements/apps/SwcAppQuote.d.ts.map +1 -1
  463. package/dist/types/elements/apps/SwcAppScript.d.ts +1 -1
  464. package/dist/types/elements/apps/SwcAppScript.d.ts.map +1 -1
  465. package/dist/types/elements/apps/SwcAppSelect.d.ts +1 -1
  466. package/dist/types/elements/apps/SwcAppSelect.d.ts.map +1 -1
  467. package/dist/types/elements/apps/SwcAppSlot.d.ts +1 -1
  468. package/dist/types/elements/apps/SwcAppSlot.d.ts.map +1 -1
  469. package/dist/types/elements/apps/SwcAppSource.d.ts +1 -1
  470. package/dist/types/elements/apps/SwcAppSource.d.ts.map +1 -1
  471. package/dist/types/elements/apps/SwcAppSpan.d.ts +1 -1
  472. package/dist/types/elements/apps/SwcAppSpan.d.ts.map +1 -1
  473. package/dist/types/elements/apps/SwcAppStyle.d.ts +1 -1
  474. package/dist/types/elements/apps/SwcAppStyle.d.ts.map +1 -1
  475. package/dist/types/elements/apps/SwcAppTable.d.ts +1 -1
  476. package/dist/types/elements/apps/SwcAppTable.d.ts.map +1 -1
  477. package/dist/types/elements/apps/SwcAppTableCell.d.ts +1 -1
  478. package/dist/types/elements/apps/SwcAppTableCell.d.ts.map +1 -1
  479. package/dist/types/elements/apps/SwcAppTableRow.d.ts +1 -1
  480. package/dist/types/elements/apps/SwcAppTableRow.d.ts.map +1 -1
  481. package/dist/types/elements/apps/SwcAppTableSection.d.ts +1 -1
  482. package/dist/types/elements/apps/SwcAppTableSection.d.ts.map +1 -1
  483. package/dist/types/elements/apps/SwcAppTemplate.d.ts +1 -1
  484. package/dist/types/elements/apps/SwcAppTemplate.d.ts.map +1 -1
  485. package/dist/types/elements/apps/SwcAppTextArea.d.ts +1 -1
  486. package/dist/types/elements/apps/SwcAppTextArea.d.ts.map +1 -1
  487. package/dist/types/elements/apps/SwcAppTime.d.ts +1 -1
  488. package/dist/types/elements/apps/SwcAppTime.d.ts.map +1 -1
  489. package/dist/types/elements/apps/SwcAppTitle.d.ts +1 -1
  490. package/dist/types/elements/apps/SwcAppTitle.d.ts.map +1 -1
  491. package/dist/types/elements/apps/SwcAppTrack.d.ts +1 -1
  492. package/dist/types/elements/apps/SwcAppTrack.d.ts.map +1 -1
  493. package/dist/types/elements/apps/SwcAppUl.d.ts +1 -1
  494. package/dist/types/elements/apps/SwcAppUl.d.ts.map +1 -1
  495. package/dist/types/elements/apps/SwcAppVideo.d.ts +1 -1
  496. package/dist/types/elements/apps/SwcAppVideo.d.ts.map +1 -1
  497. package/dist/types/elements/base/SwcHTMLAnchorElementBase.d.ts +6 -3
  498. package/dist/types/elements/base/SwcHTMLAnchorElementBase.d.ts.map +1 -1
  499. package/dist/types/elements/base/SwcHTMLAreaElementBase.d.ts +6 -3
  500. package/dist/types/elements/base/SwcHTMLAreaElementBase.d.ts.map +1 -1
  501. package/dist/types/elements/base/SwcHTMLAudioElementBase.d.ts +6 -3
  502. package/dist/types/elements/base/SwcHTMLAudioElementBase.d.ts.map +1 -1
  503. package/dist/types/elements/base/SwcHTMLBaseElementBase.d.ts +6 -3
  504. package/dist/types/elements/base/SwcHTMLBaseElementBase.d.ts.map +1 -1
  505. package/dist/types/elements/base/SwcHTMLBodyElementBase.d.ts +6 -3
  506. package/dist/types/elements/base/SwcHTMLBodyElementBase.d.ts.map +1 -1
  507. package/dist/types/elements/base/SwcHTMLButtonElementBase.d.ts +6 -3
  508. package/dist/types/elements/base/SwcHTMLButtonElementBase.d.ts.map +1 -1
  509. package/dist/types/elements/base/SwcHTMLCanvasElementBase.d.ts +6 -3
  510. package/dist/types/elements/base/SwcHTMLCanvasElementBase.d.ts.map +1 -1
  511. package/dist/types/elements/base/SwcHTMLDListElementBase.d.ts +6 -3
  512. package/dist/types/elements/base/SwcHTMLDListElementBase.d.ts.map +1 -1
  513. package/dist/types/elements/base/SwcHTMLDataElementBase.d.ts +6 -3
  514. package/dist/types/elements/base/SwcHTMLDataElementBase.d.ts.map +1 -1
  515. package/dist/types/elements/base/SwcHTMLDataListElementBase.d.ts +6 -3
  516. package/dist/types/elements/base/SwcHTMLDataListElementBase.d.ts.map +1 -1
  517. package/dist/types/elements/base/SwcHTMLDetailsElementBase.d.ts +6 -3
  518. package/dist/types/elements/base/SwcHTMLDetailsElementBase.d.ts.map +1 -1
  519. package/dist/types/elements/base/SwcHTMLDialogElementBase.d.ts +6 -3
  520. package/dist/types/elements/base/SwcHTMLDialogElementBase.d.ts.map +1 -1
  521. package/dist/types/elements/base/SwcHTMLDivElementBase.d.ts +6 -3
  522. package/dist/types/elements/base/SwcHTMLDivElementBase.d.ts.map +1 -1
  523. package/dist/types/elements/base/SwcHTMLElementBase.d.ts +6 -3
  524. package/dist/types/elements/base/SwcHTMLElementBase.d.ts.map +1 -1
  525. package/dist/types/elements/base/SwcHTMLEmbedElementBase.d.ts +6 -3
  526. package/dist/types/elements/base/SwcHTMLEmbedElementBase.d.ts.map +1 -1
  527. package/dist/types/elements/base/SwcHTMLFieldSetElementBase.d.ts +6 -3
  528. package/dist/types/elements/base/SwcHTMLFieldSetElementBase.d.ts.map +1 -1
  529. package/dist/types/elements/base/SwcHTMLFormElementBase.d.ts +6 -3
  530. package/dist/types/elements/base/SwcHTMLFormElementBase.d.ts.map +1 -1
  531. package/dist/types/elements/base/SwcHTMLHRElementBase.d.ts +6 -3
  532. package/dist/types/elements/base/SwcHTMLHRElementBase.d.ts.map +1 -1
  533. package/dist/types/elements/base/SwcHTMLHeadingElementBase.d.ts +6 -3
  534. package/dist/types/elements/base/SwcHTMLHeadingElementBase.d.ts.map +1 -1
  535. package/dist/types/elements/base/SwcHTMLIFrameElementBase.d.ts +6 -3
  536. package/dist/types/elements/base/SwcHTMLIFrameElementBase.d.ts.map +1 -1
  537. package/dist/types/elements/base/SwcHTMLImageElementBase.d.ts +6 -3
  538. package/dist/types/elements/base/SwcHTMLImageElementBase.d.ts.map +1 -1
  539. package/dist/types/elements/base/SwcHTMLInputElementBase.d.ts +6 -3
  540. package/dist/types/elements/base/SwcHTMLInputElementBase.d.ts.map +1 -1
  541. package/dist/types/elements/base/SwcHTMLLIElementBase.d.ts +6 -3
  542. package/dist/types/elements/base/SwcHTMLLIElementBase.d.ts.map +1 -1
  543. package/dist/types/elements/base/SwcHTMLLabelElementBase.d.ts +6 -3
  544. package/dist/types/elements/base/SwcHTMLLabelElementBase.d.ts.map +1 -1
  545. package/dist/types/elements/base/SwcHTMLLegendElementBase.d.ts +6 -3
  546. package/dist/types/elements/base/SwcHTMLLegendElementBase.d.ts.map +1 -1
  547. package/dist/types/elements/base/SwcHTMLLinkElementBase.d.ts +6 -3
  548. package/dist/types/elements/base/SwcHTMLLinkElementBase.d.ts.map +1 -1
  549. package/dist/types/elements/base/SwcHTMLMapElementBase.d.ts +6 -3
  550. package/dist/types/elements/base/SwcHTMLMapElementBase.d.ts.map +1 -1
  551. package/dist/types/elements/base/SwcHTMLMetaElementBase.d.ts +6 -3
  552. package/dist/types/elements/base/SwcHTMLMetaElementBase.d.ts.map +1 -1
  553. package/dist/types/elements/base/SwcHTMLMeterElementBase.d.ts +6 -3
  554. package/dist/types/elements/base/SwcHTMLMeterElementBase.d.ts.map +1 -1
  555. package/dist/types/elements/base/SwcHTMLModElementBase.d.ts +6 -3
  556. package/dist/types/elements/base/SwcHTMLModElementBase.d.ts.map +1 -1
  557. package/dist/types/elements/base/SwcHTMLOListElementBase.d.ts +6 -3
  558. package/dist/types/elements/base/SwcHTMLOListElementBase.d.ts.map +1 -1
  559. package/dist/types/elements/base/SwcHTMLObjectElementBase.d.ts +6 -3
  560. package/dist/types/elements/base/SwcHTMLObjectElementBase.d.ts.map +1 -1
  561. package/dist/types/elements/base/SwcHTMLOptGroupElementBase.d.ts +6 -3
  562. package/dist/types/elements/base/SwcHTMLOptGroupElementBase.d.ts.map +1 -1
  563. package/dist/types/elements/base/SwcHTMLOptionElementBase.d.ts +6 -3
  564. package/dist/types/elements/base/SwcHTMLOptionElementBase.d.ts.map +1 -1
  565. package/dist/types/elements/base/SwcHTMLOutputElementBase.d.ts +6 -3
  566. package/dist/types/elements/base/SwcHTMLOutputElementBase.d.ts.map +1 -1
  567. package/dist/types/elements/base/SwcHTMLParagraphElementBase.d.ts +6 -3
  568. package/dist/types/elements/base/SwcHTMLParagraphElementBase.d.ts.map +1 -1
  569. package/dist/types/elements/base/SwcHTMLParamElementBase.d.ts +6 -3
  570. package/dist/types/elements/base/SwcHTMLParamElementBase.d.ts.map +1 -1
  571. package/dist/types/elements/base/SwcHTMLPictureElementBase.d.ts +6 -3
  572. package/dist/types/elements/base/SwcHTMLPictureElementBase.d.ts.map +1 -1
  573. package/dist/types/elements/base/SwcHTMLPreElementBase.d.ts +6 -3
  574. package/dist/types/elements/base/SwcHTMLPreElementBase.d.ts.map +1 -1
  575. package/dist/types/elements/base/SwcHTMLProgressElementBase.d.ts +6 -3
  576. package/dist/types/elements/base/SwcHTMLProgressElementBase.d.ts.map +1 -1
  577. package/dist/types/elements/base/SwcHTMLQuoteElementBase.d.ts +6 -3
  578. package/dist/types/elements/base/SwcHTMLQuoteElementBase.d.ts.map +1 -1
  579. package/dist/types/elements/base/SwcHTMLScriptElementBase.d.ts +6 -3
  580. package/dist/types/elements/base/SwcHTMLScriptElementBase.d.ts.map +1 -1
  581. package/dist/types/elements/base/SwcHTMLSelectElementBase.d.ts +6 -3
  582. package/dist/types/elements/base/SwcHTMLSelectElementBase.d.ts.map +1 -1
  583. package/dist/types/elements/base/SwcHTMLSlotElementBase.d.ts +6 -3
  584. package/dist/types/elements/base/SwcHTMLSlotElementBase.d.ts.map +1 -1
  585. package/dist/types/elements/base/SwcHTMLSourceElementBase.d.ts +6 -3
  586. package/dist/types/elements/base/SwcHTMLSourceElementBase.d.ts.map +1 -1
  587. package/dist/types/elements/base/SwcHTMLSpanElementBase.d.ts +6 -3
  588. package/dist/types/elements/base/SwcHTMLSpanElementBase.d.ts.map +1 -1
  589. package/dist/types/elements/base/SwcHTMLStyleElementBase.d.ts +6 -3
  590. package/dist/types/elements/base/SwcHTMLStyleElementBase.d.ts.map +1 -1
  591. package/dist/types/elements/base/SwcHTMLTableCellElementBase.d.ts +6 -3
  592. package/dist/types/elements/base/SwcHTMLTableCellElementBase.d.ts.map +1 -1
  593. package/dist/types/elements/base/SwcHTMLTableElementBase.d.ts +6 -3
  594. package/dist/types/elements/base/SwcHTMLTableElementBase.d.ts.map +1 -1
  595. package/dist/types/elements/base/SwcHTMLTableRowElementBase.d.ts +6 -3
  596. package/dist/types/elements/base/SwcHTMLTableRowElementBase.d.ts.map +1 -1
  597. package/dist/types/elements/base/SwcHTMLTableSectionElementBase.d.ts +6 -3
  598. package/dist/types/elements/base/SwcHTMLTableSectionElementBase.d.ts.map +1 -1
  599. package/dist/types/elements/base/SwcHTMLTemplateElementBase.d.ts +6 -3
  600. package/dist/types/elements/base/SwcHTMLTemplateElementBase.d.ts.map +1 -1
  601. package/dist/types/elements/base/SwcHTMLTextAreaElementBase.d.ts +6 -3
  602. package/dist/types/elements/base/SwcHTMLTextAreaElementBase.d.ts.map +1 -1
  603. package/dist/types/elements/base/SwcHTMLTimeElementBase.d.ts +6 -3
  604. package/dist/types/elements/base/SwcHTMLTimeElementBase.d.ts.map +1 -1
  605. package/dist/types/elements/base/SwcHTMLTitleElementBase.d.ts +6 -3
  606. package/dist/types/elements/base/SwcHTMLTitleElementBase.d.ts.map +1 -1
  607. package/dist/types/elements/base/SwcHTMLTrackElementBase.d.ts +6 -3
  608. package/dist/types/elements/base/SwcHTMLTrackElementBase.d.ts.map +1 -1
  609. package/dist/types/elements/base/SwcHTMLUListElementBase.d.ts +6 -3
  610. package/dist/types/elements/base/SwcHTMLUListElementBase.d.ts.map +1 -1
  611. package/dist/types/elements/base/SwcHTMLVideoElementBase.d.ts +6 -3
  612. package/dist/types/elements/base/SwcHTMLVideoElementBase.d.ts.map +1 -1
  613. package/dist/types/elements/index.d.ts +1 -0
  614. package/dist/types/elements/index.d.ts.map +1 -1
  615. package/dist/types/index.d.ts +2 -17
  616. package/dist/types/index.d.ts.map +1 -1
  617. package/dist/types/utils/Utils.d.ts +9 -0
  618. package/dist/types/utils/Utils.d.ts.map +1 -1
  619. package/dist/umd-bundle/dooboostore-simple-web-component.umd.js +2402 -1816
  620. package/dist/umd-bundle/dooboostore-simple-web-component.umd.js.map +4 -4
  621. package/package.json +3 -3
  622. package/src/decorators/elementDefine.ts +97 -141
  623. package/src/decorators/index.ts +9 -0
  624. package/src/elements/SwcInterfaces.ts +49 -0
  625. package/src/elements/apps/SwcApp.ts +3 -2
  626. package/src/elements/apps/SwcAppAnchor.ts +3 -2
  627. package/src/elements/apps/SwcAppArea.ts +3 -2
  628. package/src/elements/apps/SwcAppAudio.ts +3 -2
  629. package/src/elements/apps/SwcAppBase.ts +3 -2
  630. package/src/elements/apps/SwcAppBody.ts +3 -2
  631. package/src/elements/apps/SwcAppButton.ts +3 -2
  632. package/src/elements/apps/SwcAppCanvas.ts +3 -2
  633. package/src/elements/apps/SwcAppData.ts +3 -2
  634. package/src/elements/apps/SwcAppDataList.ts +3 -2
  635. package/src/elements/apps/SwcAppDetails.ts +3 -2
  636. package/src/elements/apps/SwcAppDialog.ts +3 -2
  637. package/src/elements/apps/SwcAppDiv.ts +3 -2
  638. package/src/elements/apps/SwcAppDl.ts +3 -2
  639. package/src/elements/apps/SwcAppEmbed.ts +3 -2
  640. package/src/elements/apps/SwcAppFieldSet.ts +3 -2
  641. package/src/elements/apps/SwcAppForm.ts +3 -2
  642. package/src/elements/apps/SwcAppHeading.ts +3 -2
  643. package/src/elements/apps/SwcAppHr.ts +3 -2
  644. package/src/elements/apps/SwcAppIFrame.ts +3 -2
  645. package/src/elements/apps/SwcAppImage.ts +3 -2
  646. package/src/elements/apps/SwcAppInput.ts +3 -2
  647. package/src/elements/apps/SwcAppLabel.ts +3 -2
  648. package/src/elements/apps/SwcAppLegend.ts +3 -2
  649. package/src/elements/apps/SwcAppLi.ts +3 -2
  650. package/src/elements/apps/SwcAppLink.ts +3 -2
  651. package/src/elements/apps/SwcAppMap.ts +3 -2
  652. package/src/elements/apps/SwcAppMeta.ts +3 -2
  653. package/src/elements/apps/SwcAppMeter.ts +3 -2
  654. package/src/elements/apps/SwcAppMod.ts +3 -2
  655. package/src/elements/apps/SwcAppObject.ts +3 -2
  656. package/src/elements/apps/SwcAppOl.ts +3 -2
  657. package/src/elements/apps/SwcAppOptGroup.ts +3 -2
  658. package/src/elements/apps/SwcAppOption.ts +3 -2
  659. package/src/elements/apps/SwcAppOutput.ts +3 -2
  660. package/src/elements/apps/SwcAppParagraph.ts +3 -2
  661. package/src/elements/apps/SwcAppParam.ts +3 -2
  662. package/src/elements/apps/SwcAppPicture.ts +3 -2
  663. package/src/elements/apps/SwcAppPre.ts +3 -2
  664. package/src/elements/apps/SwcAppProgress.ts +3 -2
  665. package/src/elements/apps/SwcAppQuote.ts +3 -2
  666. package/src/elements/apps/SwcAppScript.ts +3 -2
  667. package/src/elements/apps/SwcAppSelect.ts +3 -2
  668. package/src/elements/apps/SwcAppSlot.ts +3 -2
  669. package/src/elements/apps/SwcAppSource.ts +3 -2
  670. package/src/elements/apps/SwcAppSpan.ts +3 -2
  671. package/src/elements/apps/SwcAppStyle.ts +3 -2
  672. package/src/elements/apps/SwcAppTable.ts +3 -2
  673. package/src/elements/apps/SwcAppTableCell.ts +3 -2
  674. package/src/elements/apps/SwcAppTableRow.ts +3 -2
  675. package/src/elements/apps/SwcAppTableSection.ts +3 -2
  676. package/src/elements/apps/SwcAppTemplate.ts +3 -2
  677. package/src/elements/apps/SwcAppTextArea.ts +3 -2
  678. package/src/elements/apps/SwcAppTime.ts +3 -2
  679. package/src/elements/apps/SwcAppTitle.ts +3 -2
  680. package/src/elements/apps/SwcAppTrack.ts +3 -2
  681. package/src/elements/apps/SwcAppUl.ts +3 -2
  682. package/src/elements/apps/SwcAppVideo.ts +3 -2
  683. package/src/elements/base/SwcHTMLAnchorElementBase.ts +22 -11
  684. package/src/elements/base/SwcHTMLAreaElementBase.ts +22 -11
  685. package/src/elements/base/SwcHTMLAudioElementBase.ts +22 -11
  686. package/src/elements/base/SwcHTMLBaseElementBase.ts +22 -11
  687. package/src/elements/base/SwcHTMLBodyElementBase.ts +22 -11
  688. package/src/elements/base/SwcHTMLButtonElementBase.ts +22 -11
  689. package/src/elements/base/SwcHTMLCanvasElementBase.ts +22 -11
  690. package/src/elements/base/SwcHTMLDListElementBase.ts +22 -11
  691. package/src/elements/base/SwcHTMLDataElementBase.ts +22 -11
  692. package/src/elements/base/SwcHTMLDataListElementBase.ts +22 -11
  693. package/src/elements/base/SwcHTMLDetailsElementBase.ts +22 -11
  694. package/src/elements/base/SwcHTMLDialogElementBase.ts +22 -11
  695. package/src/elements/base/SwcHTMLDivElementBase.ts +22 -11
  696. package/src/elements/base/SwcHTMLElementBase.ts +22 -11
  697. package/src/elements/base/SwcHTMLEmbedElementBase.ts +22 -11
  698. package/src/elements/base/SwcHTMLFieldSetElementBase.ts +22 -11
  699. package/src/elements/base/SwcHTMLFormElementBase.ts +22 -11
  700. package/src/elements/base/SwcHTMLHRElementBase.ts +22 -11
  701. package/src/elements/base/SwcHTMLHeadingElementBase.ts +22 -11
  702. package/src/elements/base/SwcHTMLIFrameElementBase.ts +22 -11
  703. package/src/elements/base/SwcHTMLImageElementBase.ts +22 -11
  704. package/src/elements/base/SwcHTMLInputElementBase.ts +22 -11
  705. package/src/elements/base/SwcHTMLLIElementBase.ts +22 -11
  706. package/src/elements/base/SwcHTMLLabelElementBase.ts +22 -11
  707. package/src/elements/base/SwcHTMLLegendElementBase.ts +22 -11
  708. package/src/elements/base/SwcHTMLLinkElementBase.ts +22 -11
  709. package/src/elements/base/SwcHTMLMapElementBase.ts +22 -11
  710. package/src/elements/base/SwcHTMLMetaElementBase.ts +22 -11
  711. package/src/elements/base/SwcHTMLMeterElementBase.ts +22 -11
  712. package/src/elements/base/SwcHTMLModElementBase.ts +22 -11
  713. package/src/elements/base/SwcHTMLOListElementBase.ts +22 -11
  714. package/src/elements/base/SwcHTMLObjectElementBase.ts +22 -11
  715. package/src/elements/base/SwcHTMLOptGroupElementBase.ts +22 -11
  716. package/src/elements/base/SwcHTMLOptionElementBase.ts +22 -11
  717. package/src/elements/base/SwcHTMLOutputElementBase.ts +22 -11
  718. package/src/elements/base/SwcHTMLParagraphElementBase.ts +22 -11
  719. package/src/elements/base/SwcHTMLParamElementBase.ts +22 -11
  720. package/src/elements/base/SwcHTMLPictureElementBase.ts +22 -11
  721. package/src/elements/base/SwcHTMLPreElementBase.ts +22 -11
  722. package/src/elements/base/SwcHTMLProgressElementBase.ts +22 -11
  723. package/src/elements/base/SwcHTMLQuoteElementBase.ts +22 -11
  724. package/src/elements/base/SwcHTMLScriptElementBase.ts +22 -11
  725. package/src/elements/base/SwcHTMLSelectElementBase.ts +22 -11
  726. package/src/elements/base/SwcHTMLSlotElementBase.ts +22 -11
  727. package/src/elements/base/SwcHTMLSourceElementBase.ts +22 -11
  728. package/src/elements/base/SwcHTMLSpanElementBase.ts +22 -11
  729. package/src/elements/base/SwcHTMLStyleElementBase.ts +22 -11
  730. package/src/elements/base/SwcHTMLTableCellElementBase.ts +22 -11
  731. package/src/elements/base/SwcHTMLTableElementBase.ts +22 -11
  732. package/src/elements/base/SwcHTMLTableRowElementBase.ts +22 -11
  733. package/src/elements/base/SwcHTMLTableSectionElementBase.ts +22 -11
  734. package/src/elements/base/SwcHTMLTemplateElementBase.ts +22 -11
  735. package/src/elements/base/SwcHTMLTextAreaElementBase.ts +22 -11
  736. package/src/elements/base/SwcHTMLTimeElementBase.ts +22 -11
  737. package/src/elements/base/SwcHTMLTitleElementBase.ts +22 -11
  738. package/src/elements/base/SwcHTMLTrackElementBase.ts +22 -11
  739. package/src/elements/base/SwcHTMLUListElementBase.ts +22 -11
  740. package/src/elements/base/SwcHTMLVideoElementBase.ts +22 -11
  741. package/src/elements/index.ts +1 -0
  742. package/src/index.ts +2 -17
  743. package/src/utils/Utils.ts +57 -0
  744. package/dist/cjs/elements/SwcAppInterface.js +0 -16
  745. package/dist/cjs/elements/SwcAppInterface.js.map +0 -7
  746. package/dist/cjs/elements/SwcHTMLElementInterface.js +0 -16
  747. package/dist/cjs/elements/SwcHTMLElementInterface.js.map +0 -7
  748. package/dist/esm/elements/SwcAppInterface.js +0 -1
  749. package/dist/esm/elements/SwcAppInterface.js.map +0 -7
  750. package/dist/esm/elements/SwcHTMLElementInterface.js +0 -1
  751. package/dist/esm/elements/SwcHTMLElementInterface.js.map +0 -7
  752. package/dist/types/elements/SwcAppInterface.d.ts +0 -15
  753. package/dist/types/elements/SwcAppInterface.d.ts.map +0 -1
  754. package/dist/types/elements/SwcHTMLElementInterface.d.ts +0 -9
  755. package/dist/types/elements/SwcHTMLElementInterface.d.ts.map +0 -1
  756. package/src/elements/SwcAppInterface.ts +0 -19
  757. package/src/elements/SwcHTMLElementInterface.ts +0 -9
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/elements/base/SwcHTMLSourceElementBase.ts"],
4
- "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface } from '../SwcAppInterface';\nimport { SwcHTMLElementInterface } from '../SwcHTMLElementInterface';\n\nexport abstract class SwcHTMLSourceElementBase extends HTMLSourceElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getNearAppHost(): SwcAppInterface | undefined {\n const hosts = this.getHosts();\n // [Root, ..., Parent] \uC21C\uC11C\uC774\uBBC0\uB85C reverse() \uD6C4 find \uD558\uC5EC \uCD5C\uCE21\uADFC\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.\n return hosts.reverse().find(host => host.tagName.toLowerCase() === 'swc-app' || host.getAttribute('is')?.startsWith('swc-app-')) as SwcAppInterface | undefined;\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.findAllSwcHosts(this as any);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[hosts.length - 1] : undefined;\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[0] : undefined;\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAIlB,MAAe,iCAAiC,kBAAqD;AAAA,EAO1G,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,iBAA8C;AACnD,UAAM,QAAQ,KAAK,SAAS;AAE5B,WAAO,MAAM,QAAQ,EAAE,KAAK,UAAQ,KAAK,QAAQ,YAAY,MAAM,aAAa,KAAK,aAAa,IAAI,GAAG,WAAW,UAAU,CAAC;AAAA,EACjI;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,gBAAgB,IAAW;AAAA,EAC7C;AAAA,EAEO,UAA+C;AACpD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,MAAM,SAAS,CAAC,IAAI;AAAA,EACtD;AAAA,EAEO,eAAoD;AACzD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI;AAAA,EACvC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
4
+ "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface, SwcHTMLElementInterface, HostSet } from '../SwcInterfaces';\n\nexport abstract class SwcHTMLSourceElementBase extends HTMLSourceElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getAppHost(this);\n }\n\n public getAppHosts(): SwcAppInterface[] {\n return SwcUtils.getAppHosts(this);\n }\n\n public getFirstAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getFirstAppHost(this);\n }\n\n public getLastAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getLastAppHost(this);\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.getHosts(this);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getHost(this);\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getFirstHost(this);\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n public getHostSet(): HostSet {\n return SwcUtils.getHostSet(this);\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAGlB,MAAe,iCAAiC,kBAAqD;AAAA,EAO1G,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,aAA0C;AAC/C,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA,EAEO,cAAiC;AACtC,WAAO,sBAAS,YAAY,IAAI;AAAA,EAClC;AAAA,EAEO,kBAA+C;AACpD,WAAO,sBAAS,gBAAgB,IAAI;AAAA,EACtC;AAAA,EAEO,iBAA8C;AACnD,WAAO,sBAAS,eAAe,IAAI;AAAA,EACrC;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,SAAS,IAAI;AAAA,EAC/B;AAAA,EAEO,UAA+C;AACpD,WAAO,sBAAS,QAAQ,IAAI;AAAA,EAC9B;AAAA,EAEO,eAAoD;AACzD,WAAO,sBAAS,aAAa,IAAI;AAAA,EACnC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAEO,aAAsB;AAC3B,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
6
6
  "names": []
7
7
  }
@@ -30,24 +30,33 @@ class SwcHTMLSpanElementBase extends HTMLSpanElement {
30
30
  this._asIndexKey = "index";
31
31
  this._isInitialized = false;
32
32
  }
33
- getNearAppHost() {
34
- const hosts = this.getHosts();
35
- return hosts.reverse().find((host) => host.tagName.toLowerCase() === "swc-app" || host.getAttribute("is")?.startsWith("swc-app-"));
33
+ getAppHost() {
34
+ return import_Utils.SwcUtils.getAppHost(this);
35
+ }
36
+ getAppHosts() {
37
+ return import_Utils.SwcUtils.getAppHosts(this);
38
+ }
39
+ getFirstAppHost() {
40
+ return import_Utils.SwcUtils.getFirstAppHost(this);
41
+ }
42
+ getLastAppHost() {
43
+ return import_Utils.SwcUtils.getLastAppHost(this);
36
44
  }
37
45
  getHosts() {
38
- return import_Utils.SwcUtils.findAllSwcHosts(this);
46
+ return import_Utils.SwcUtils.getHosts(this);
39
47
  }
40
48
  getHost() {
41
- const hosts = this.getHosts();
42
- return hosts.length > 0 ? hosts[hosts.length - 1] : void 0;
49
+ return import_Utils.SwcUtils.getHost(this);
43
50
  }
44
51
  getFirstHost() {
45
- const hosts = this.getHosts();
46
- return hosts.length > 0 ? hosts[0] : void 0;
52
+ return import_Utils.SwcUtils.getFirstHost(this);
47
53
  }
48
54
  getLastHost() {
49
55
  return this.getHost();
50
56
  }
57
+ getHostSet() {
58
+ return import_Utils.SwcUtils.getHostSet(this);
59
+ }
51
60
  /**
52
61
  * 상위 호스트 체인에서 모든 컨텍스트(데이터)를 수집합니다.
53
62
  */
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/elements/base/SwcHTMLSpanElementBase.ts"],
4
- "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface } from '../SwcAppInterface';\nimport { SwcHTMLElementInterface } from '../SwcHTMLElementInterface';\n\nexport abstract class SwcHTMLSpanElementBase extends HTMLSpanElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getNearAppHost(): SwcAppInterface | undefined {\n const hosts = this.getHosts();\n // [Root, ..., Parent] \uC21C\uC11C\uC774\uBBC0\uB85C reverse() \uD6C4 find \uD558\uC5EC \uCD5C\uCE21\uADFC\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.\n return hosts.reverse().find(host => host.tagName.toLowerCase() === 'swc-app' || host.getAttribute('is')?.startsWith('swc-app-')) as SwcAppInterface | undefined;\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.findAllSwcHosts(this as any);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[hosts.length - 1] : undefined;\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[0] : undefined;\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAIlB,MAAe,+BAA+B,gBAAmD;AAAA,EAOtG,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,iBAA8C;AACnD,UAAM,QAAQ,KAAK,SAAS;AAE5B,WAAO,MAAM,QAAQ,EAAE,KAAK,UAAQ,KAAK,QAAQ,YAAY,MAAM,aAAa,KAAK,aAAa,IAAI,GAAG,WAAW,UAAU,CAAC;AAAA,EACjI;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,gBAAgB,IAAW;AAAA,EAC7C;AAAA,EAEO,UAA+C;AACpD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,MAAM,SAAS,CAAC,IAAI;AAAA,EACtD;AAAA,EAEO,eAAoD;AACzD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI;AAAA,EACvC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
4
+ "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface, SwcHTMLElementInterface, HostSet } from '../SwcInterfaces';\n\nexport abstract class SwcHTMLSpanElementBase extends HTMLSpanElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getAppHost(this);\n }\n\n public getAppHosts(): SwcAppInterface[] {\n return SwcUtils.getAppHosts(this);\n }\n\n public getFirstAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getFirstAppHost(this);\n }\n\n public getLastAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getLastAppHost(this);\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.getHosts(this);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getHost(this);\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getFirstHost(this);\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n public getHostSet(): HostSet {\n return SwcUtils.getHostSet(this);\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAGlB,MAAe,+BAA+B,gBAAmD;AAAA,EAOtG,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,aAA0C;AAC/C,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA,EAEO,cAAiC;AACtC,WAAO,sBAAS,YAAY,IAAI;AAAA,EAClC;AAAA,EAEO,kBAA+C;AACpD,WAAO,sBAAS,gBAAgB,IAAI;AAAA,EACtC;AAAA,EAEO,iBAA8C;AACnD,WAAO,sBAAS,eAAe,IAAI;AAAA,EACrC;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,SAAS,IAAI;AAAA,EAC/B;AAAA,EAEO,UAA+C;AACpD,WAAO,sBAAS,QAAQ,IAAI;AAAA,EAC9B;AAAA,EAEO,eAAoD;AACzD,WAAO,sBAAS,aAAa,IAAI;AAAA,EACnC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAEO,aAAsB;AAC3B,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
6
6
  "names": []
7
7
  }
@@ -30,24 +30,33 @@ class SwcHTMLStyleElementBase extends HTMLStyleElement {
30
30
  this._asIndexKey = "index";
31
31
  this._isInitialized = false;
32
32
  }
33
- getNearAppHost() {
34
- const hosts = this.getHosts();
35
- return hosts.reverse().find((host) => host.tagName.toLowerCase() === "swc-app" || host.getAttribute("is")?.startsWith("swc-app-"));
33
+ getAppHost() {
34
+ return import_Utils.SwcUtils.getAppHost(this);
35
+ }
36
+ getAppHosts() {
37
+ return import_Utils.SwcUtils.getAppHosts(this);
38
+ }
39
+ getFirstAppHost() {
40
+ return import_Utils.SwcUtils.getFirstAppHost(this);
41
+ }
42
+ getLastAppHost() {
43
+ return import_Utils.SwcUtils.getLastAppHost(this);
36
44
  }
37
45
  getHosts() {
38
- return import_Utils.SwcUtils.findAllSwcHosts(this);
46
+ return import_Utils.SwcUtils.getHosts(this);
39
47
  }
40
48
  getHost() {
41
- const hosts = this.getHosts();
42
- return hosts.length > 0 ? hosts[hosts.length - 1] : void 0;
49
+ return import_Utils.SwcUtils.getHost(this);
43
50
  }
44
51
  getFirstHost() {
45
- const hosts = this.getHosts();
46
- return hosts.length > 0 ? hosts[0] : void 0;
52
+ return import_Utils.SwcUtils.getFirstHost(this);
47
53
  }
48
54
  getLastHost() {
49
55
  return this.getHost();
50
56
  }
57
+ getHostSet() {
58
+ return import_Utils.SwcUtils.getHostSet(this);
59
+ }
51
60
  /**
52
61
  * 상위 호스트 체인에서 모든 컨텍스트(데이터)를 수집합니다.
53
62
  */
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/elements/base/SwcHTMLStyleElementBase.ts"],
4
- "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface } from '../SwcAppInterface';\nimport { SwcHTMLElementInterface } from '../SwcHTMLElementInterface';\n\nexport abstract class SwcHTMLStyleElementBase extends HTMLStyleElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getNearAppHost(): SwcAppInterface | undefined {\n const hosts = this.getHosts();\n // [Root, ..., Parent] \uC21C\uC11C\uC774\uBBC0\uB85C reverse() \uD6C4 find \uD558\uC5EC \uCD5C\uCE21\uADFC\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.\n return hosts.reverse().find(host => host.tagName.toLowerCase() === 'swc-app' || host.getAttribute('is')?.startsWith('swc-app-')) as SwcAppInterface | undefined;\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.findAllSwcHosts(this as any);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[hosts.length - 1] : undefined;\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[0] : undefined;\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAIlB,MAAe,gCAAgC,iBAAoD;AAAA,EAOxG,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,iBAA8C;AACnD,UAAM,QAAQ,KAAK,SAAS;AAE5B,WAAO,MAAM,QAAQ,EAAE,KAAK,UAAQ,KAAK,QAAQ,YAAY,MAAM,aAAa,KAAK,aAAa,IAAI,GAAG,WAAW,UAAU,CAAC;AAAA,EACjI;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,gBAAgB,IAAW;AAAA,EAC7C;AAAA,EAEO,UAA+C;AACpD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,MAAM,SAAS,CAAC,IAAI;AAAA,EACtD;AAAA,EAEO,eAAoD;AACzD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI;AAAA,EACvC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
4
+ "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface, SwcHTMLElementInterface, HostSet } from '../SwcInterfaces';\n\nexport abstract class SwcHTMLStyleElementBase extends HTMLStyleElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getAppHost(this);\n }\n\n public getAppHosts(): SwcAppInterface[] {\n return SwcUtils.getAppHosts(this);\n }\n\n public getFirstAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getFirstAppHost(this);\n }\n\n public getLastAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getLastAppHost(this);\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.getHosts(this);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getHost(this);\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getFirstHost(this);\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n public getHostSet(): HostSet {\n return SwcUtils.getHostSet(this);\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAGlB,MAAe,gCAAgC,iBAAoD;AAAA,EAOxG,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,aAA0C;AAC/C,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA,EAEO,cAAiC;AACtC,WAAO,sBAAS,YAAY,IAAI;AAAA,EAClC;AAAA,EAEO,kBAA+C;AACpD,WAAO,sBAAS,gBAAgB,IAAI;AAAA,EACtC;AAAA,EAEO,iBAA8C;AACnD,WAAO,sBAAS,eAAe,IAAI;AAAA,EACrC;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,SAAS,IAAI;AAAA,EAC/B;AAAA,EAEO,UAA+C;AACpD,WAAO,sBAAS,QAAQ,IAAI;AAAA,EAC9B;AAAA,EAEO,eAAoD;AACzD,WAAO,sBAAS,aAAa,IAAI;AAAA,EACnC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAEO,aAAsB;AAC3B,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
6
6
  "names": []
7
7
  }
@@ -30,24 +30,33 @@ class SwcHTMLTableCellElementBase extends HTMLTableCellElement {
30
30
  this._asIndexKey = "index";
31
31
  this._isInitialized = false;
32
32
  }
33
- getNearAppHost() {
34
- const hosts = this.getHosts();
35
- return hosts.reverse().find((host) => host.tagName.toLowerCase() === "swc-app" || host.getAttribute("is")?.startsWith("swc-app-"));
33
+ getAppHost() {
34
+ return import_Utils.SwcUtils.getAppHost(this);
35
+ }
36
+ getAppHosts() {
37
+ return import_Utils.SwcUtils.getAppHosts(this);
38
+ }
39
+ getFirstAppHost() {
40
+ return import_Utils.SwcUtils.getFirstAppHost(this);
41
+ }
42
+ getLastAppHost() {
43
+ return import_Utils.SwcUtils.getLastAppHost(this);
36
44
  }
37
45
  getHosts() {
38
- return import_Utils.SwcUtils.findAllSwcHosts(this);
46
+ return import_Utils.SwcUtils.getHosts(this);
39
47
  }
40
48
  getHost() {
41
- const hosts = this.getHosts();
42
- return hosts.length > 0 ? hosts[hosts.length - 1] : void 0;
49
+ return import_Utils.SwcUtils.getHost(this);
43
50
  }
44
51
  getFirstHost() {
45
- const hosts = this.getHosts();
46
- return hosts.length > 0 ? hosts[0] : void 0;
52
+ return import_Utils.SwcUtils.getFirstHost(this);
47
53
  }
48
54
  getLastHost() {
49
55
  return this.getHost();
50
56
  }
57
+ getHostSet() {
58
+ return import_Utils.SwcUtils.getHostSet(this);
59
+ }
51
60
  /**
52
61
  * 상위 호스트 체인에서 모든 컨텍스트(데이터)를 수집합니다.
53
62
  */
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/elements/base/SwcHTMLTableCellElementBase.ts"],
4
- "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface } from '../SwcAppInterface';\nimport { SwcHTMLElementInterface } from '../SwcHTMLElementInterface';\n\nexport abstract class SwcHTMLTableCellElementBase extends HTMLTableCellElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getNearAppHost(): SwcAppInterface | undefined {\n const hosts = this.getHosts();\n // [Root, ..., Parent] \uC21C\uC11C\uC774\uBBC0\uB85C reverse() \uD6C4 find \uD558\uC5EC \uCD5C\uCE21\uADFC\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.\n return hosts.reverse().find(host => host.tagName.toLowerCase() === 'swc-app' || host.getAttribute('is')?.startsWith('swc-app-')) as SwcAppInterface | undefined;\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.findAllSwcHosts(this as any);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[hosts.length - 1] : undefined;\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[0] : undefined;\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAIlB,MAAe,oCAAoC,qBAAwD;AAAA,EAOhH,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,iBAA8C;AACnD,UAAM,QAAQ,KAAK,SAAS;AAE5B,WAAO,MAAM,QAAQ,EAAE,KAAK,UAAQ,KAAK,QAAQ,YAAY,MAAM,aAAa,KAAK,aAAa,IAAI,GAAG,WAAW,UAAU,CAAC;AAAA,EACjI;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,gBAAgB,IAAW;AAAA,EAC7C;AAAA,EAEO,UAA+C;AACpD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,MAAM,SAAS,CAAC,IAAI;AAAA,EACtD;AAAA,EAEO,eAAoD;AACzD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI;AAAA,EACvC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
4
+ "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface, SwcHTMLElementInterface, HostSet } from '../SwcInterfaces';\n\nexport abstract class SwcHTMLTableCellElementBase extends HTMLTableCellElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getAppHost(this);\n }\n\n public getAppHosts(): SwcAppInterface[] {\n return SwcUtils.getAppHosts(this);\n }\n\n public getFirstAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getFirstAppHost(this);\n }\n\n public getLastAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getLastAppHost(this);\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.getHosts(this);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getHost(this);\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getFirstHost(this);\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n public getHostSet(): HostSet {\n return SwcUtils.getHostSet(this);\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAGlB,MAAe,oCAAoC,qBAAwD;AAAA,EAOhH,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,aAA0C;AAC/C,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA,EAEO,cAAiC;AACtC,WAAO,sBAAS,YAAY,IAAI;AAAA,EAClC;AAAA,EAEO,kBAA+C;AACpD,WAAO,sBAAS,gBAAgB,IAAI;AAAA,EACtC;AAAA,EAEO,iBAA8C;AACnD,WAAO,sBAAS,eAAe,IAAI;AAAA,EACrC;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,SAAS,IAAI;AAAA,EAC/B;AAAA,EAEO,UAA+C;AACpD,WAAO,sBAAS,QAAQ,IAAI;AAAA,EAC9B;AAAA,EAEO,eAAoD;AACzD,WAAO,sBAAS,aAAa,IAAI;AAAA,EACnC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAEO,aAAsB;AAC3B,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
6
6
  "names": []
7
7
  }
@@ -30,24 +30,33 @@ class SwcHTMLTableElementBase extends HTMLTableElement {
30
30
  this._asIndexKey = "index";
31
31
  this._isInitialized = false;
32
32
  }
33
- getNearAppHost() {
34
- const hosts = this.getHosts();
35
- return hosts.reverse().find((host) => host.tagName.toLowerCase() === "swc-app" || host.getAttribute("is")?.startsWith("swc-app-"));
33
+ getAppHost() {
34
+ return import_Utils.SwcUtils.getAppHost(this);
35
+ }
36
+ getAppHosts() {
37
+ return import_Utils.SwcUtils.getAppHosts(this);
38
+ }
39
+ getFirstAppHost() {
40
+ return import_Utils.SwcUtils.getFirstAppHost(this);
41
+ }
42
+ getLastAppHost() {
43
+ return import_Utils.SwcUtils.getLastAppHost(this);
36
44
  }
37
45
  getHosts() {
38
- return import_Utils.SwcUtils.findAllSwcHosts(this);
46
+ return import_Utils.SwcUtils.getHosts(this);
39
47
  }
40
48
  getHost() {
41
- const hosts = this.getHosts();
42
- return hosts.length > 0 ? hosts[hosts.length - 1] : void 0;
49
+ return import_Utils.SwcUtils.getHost(this);
43
50
  }
44
51
  getFirstHost() {
45
- const hosts = this.getHosts();
46
- return hosts.length > 0 ? hosts[0] : void 0;
52
+ return import_Utils.SwcUtils.getFirstHost(this);
47
53
  }
48
54
  getLastHost() {
49
55
  return this.getHost();
50
56
  }
57
+ getHostSet() {
58
+ return import_Utils.SwcUtils.getHostSet(this);
59
+ }
51
60
  /**
52
61
  * 상위 호스트 체인에서 모든 컨텍스트(데이터)를 수집합니다.
53
62
  */
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/elements/base/SwcHTMLTableElementBase.ts"],
4
- "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface } from '../SwcAppInterface';\nimport { SwcHTMLElementInterface } from '../SwcHTMLElementInterface';\n\nexport abstract class SwcHTMLTableElementBase extends HTMLTableElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getNearAppHost(): SwcAppInterface | undefined {\n const hosts = this.getHosts();\n // [Root, ..., Parent] \uC21C\uC11C\uC774\uBBC0\uB85C reverse() \uD6C4 find \uD558\uC5EC \uCD5C\uCE21\uADFC\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.\n return hosts.reverse().find(host => host.tagName.toLowerCase() === 'swc-app' || host.getAttribute('is')?.startsWith('swc-app-')) as SwcAppInterface | undefined;\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.findAllSwcHosts(this as any);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[hosts.length - 1] : undefined;\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[0] : undefined;\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAIlB,MAAe,gCAAgC,iBAAoD;AAAA,EAOxG,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,iBAA8C;AACnD,UAAM,QAAQ,KAAK,SAAS;AAE5B,WAAO,MAAM,QAAQ,EAAE,KAAK,UAAQ,KAAK,QAAQ,YAAY,MAAM,aAAa,KAAK,aAAa,IAAI,GAAG,WAAW,UAAU,CAAC;AAAA,EACjI;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,gBAAgB,IAAW;AAAA,EAC7C;AAAA,EAEO,UAA+C;AACpD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,MAAM,SAAS,CAAC,IAAI;AAAA,EACtD;AAAA,EAEO,eAAoD;AACzD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI;AAAA,EACvC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
4
+ "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface, SwcHTMLElementInterface, HostSet } from '../SwcInterfaces';\n\nexport abstract class SwcHTMLTableElementBase extends HTMLTableElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getAppHost(this);\n }\n\n public getAppHosts(): SwcAppInterface[] {\n return SwcUtils.getAppHosts(this);\n }\n\n public getFirstAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getFirstAppHost(this);\n }\n\n public getLastAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getLastAppHost(this);\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.getHosts(this);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getHost(this);\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getFirstHost(this);\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n public getHostSet(): HostSet {\n return SwcUtils.getHostSet(this);\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAGlB,MAAe,gCAAgC,iBAAoD;AAAA,EAOxG,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,aAA0C;AAC/C,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA,EAEO,cAAiC;AACtC,WAAO,sBAAS,YAAY,IAAI;AAAA,EAClC;AAAA,EAEO,kBAA+C;AACpD,WAAO,sBAAS,gBAAgB,IAAI;AAAA,EACtC;AAAA,EAEO,iBAA8C;AACnD,WAAO,sBAAS,eAAe,IAAI;AAAA,EACrC;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,SAAS,IAAI;AAAA,EAC/B;AAAA,EAEO,UAA+C;AACpD,WAAO,sBAAS,QAAQ,IAAI;AAAA,EAC9B;AAAA,EAEO,eAAoD;AACzD,WAAO,sBAAS,aAAa,IAAI;AAAA,EACnC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAEO,aAAsB;AAC3B,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
6
6
  "names": []
7
7
  }
@@ -30,24 +30,33 @@ class SwcHTMLTableRowElementBase extends HTMLTableRowElement {
30
30
  this._asIndexKey = "index";
31
31
  this._isInitialized = false;
32
32
  }
33
- getNearAppHost() {
34
- const hosts = this.getHosts();
35
- return hosts.reverse().find((host) => host.tagName.toLowerCase() === "swc-app" || host.getAttribute("is")?.startsWith("swc-app-"));
33
+ getAppHost() {
34
+ return import_Utils.SwcUtils.getAppHost(this);
35
+ }
36
+ getAppHosts() {
37
+ return import_Utils.SwcUtils.getAppHosts(this);
38
+ }
39
+ getFirstAppHost() {
40
+ return import_Utils.SwcUtils.getFirstAppHost(this);
41
+ }
42
+ getLastAppHost() {
43
+ return import_Utils.SwcUtils.getLastAppHost(this);
36
44
  }
37
45
  getHosts() {
38
- return import_Utils.SwcUtils.findAllSwcHosts(this);
46
+ return import_Utils.SwcUtils.getHosts(this);
39
47
  }
40
48
  getHost() {
41
- const hosts = this.getHosts();
42
- return hosts.length > 0 ? hosts[hosts.length - 1] : void 0;
49
+ return import_Utils.SwcUtils.getHost(this);
43
50
  }
44
51
  getFirstHost() {
45
- const hosts = this.getHosts();
46
- return hosts.length > 0 ? hosts[0] : void 0;
52
+ return import_Utils.SwcUtils.getFirstHost(this);
47
53
  }
48
54
  getLastHost() {
49
55
  return this.getHost();
50
56
  }
57
+ getHostSet() {
58
+ return import_Utils.SwcUtils.getHostSet(this);
59
+ }
51
60
  /**
52
61
  * 상위 호스트 체인에서 모든 컨텍스트(데이터)를 수집합니다.
53
62
  */
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/elements/base/SwcHTMLTableRowElementBase.ts"],
4
- "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface } from '../SwcAppInterface';\nimport { SwcHTMLElementInterface } from '../SwcHTMLElementInterface';\n\nexport abstract class SwcHTMLTableRowElementBase extends HTMLTableRowElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getNearAppHost(): SwcAppInterface | undefined {\n const hosts = this.getHosts();\n // [Root, ..., Parent] \uC21C\uC11C\uC774\uBBC0\uB85C reverse() \uD6C4 find \uD558\uC5EC \uCD5C\uCE21\uADFC\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.\n return hosts.reverse().find(host => host.tagName.toLowerCase() === 'swc-app' || host.getAttribute('is')?.startsWith('swc-app-')) as SwcAppInterface | undefined;\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.findAllSwcHosts(this as any);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[hosts.length - 1] : undefined;\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[0] : undefined;\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAIlB,MAAe,mCAAmC,oBAAuD;AAAA,EAO9G,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,iBAA8C;AACnD,UAAM,QAAQ,KAAK,SAAS;AAE5B,WAAO,MAAM,QAAQ,EAAE,KAAK,UAAQ,KAAK,QAAQ,YAAY,MAAM,aAAa,KAAK,aAAa,IAAI,GAAG,WAAW,UAAU,CAAC;AAAA,EACjI;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,gBAAgB,IAAW;AAAA,EAC7C;AAAA,EAEO,UAA+C;AACpD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,MAAM,SAAS,CAAC,IAAI;AAAA,EACtD;AAAA,EAEO,eAAoD;AACzD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI;AAAA,EACvC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
4
+ "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface, SwcHTMLElementInterface, HostSet } from '../SwcInterfaces';\n\nexport abstract class SwcHTMLTableRowElementBase extends HTMLTableRowElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getAppHost(this);\n }\n\n public getAppHosts(): SwcAppInterface[] {\n return SwcUtils.getAppHosts(this);\n }\n\n public getFirstAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getFirstAppHost(this);\n }\n\n public getLastAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getLastAppHost(this);\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.getHosts(this);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getHost(this);\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getFirstHost(this);\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n public getHostSet(): HostSet {\n return SwcUtils.getHostSet(this);\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAGlB,MAAe,mCAAmC,oBAAuD;AAAA,EAO9G,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,aAA0C;AAC/C,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA,EAEO,cAAiC;AACtC,WAAO,sBAAS,YAAY,IAAI;AAAA,EAClC;AAAA,EAEO,kBAA+C;AACpD,WAAO,sBAAS,gBAAgB,IAAI;AAAA,EACtC;AAAA,EAEO,iBAA8C;AACnD,WAAO,sBAAS,eAAe,IAAI;AAAA,EACrC;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,SAAS,IAAI;AAAA,EAC/B;AAAA,EAEO,UAA+C;AACpD,WAAO,sBAAS,QAAQ,IAAI;AAAA,EAC9B;AAAA,EAEO,eAAoD;AACzD,WAAO,sBAAS,aAAa,IAAI;AAAA,EACnC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAEO,aAAsB;AAC3B,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
6
6
  "names": []
7
7
  }
@@ -30,24 +30,33 @@ class SwcHTMLTableSectionElementBase extends HTMLTableSectionElement {
30
30
  this._asIndexKey = "index";
31
31
  this._isInitialized = false;
32
32
  }
33
- getNearAppHost() {
34
- const hosts = this.getHosts();
35
- return hosts.reverse().find((host) => host.tagName.toLowerCase() === "swc-app" || host.getAttribute("is")?.startsWith("swc-app-"));
33
+ getAppHost() {
34
+ return import_Utils.SwcUtils.getAppHost(this);
35
+ }
36
+ getAppHosts() {
37
+ return import_Utils.SwcUtils.getAppHosts(this);
38
+ }
39
+ getFirstAppHost() {
40
+ return import_Utils.SwcUtils.getFirstAppHost(this);
41
+ }
42
+ getLastAppHost() {
43
+ return import_Utils.SwcUtils.getLastAppHost(this);
36
44
  }
37
45
  getHosts() {
38
- return import_Utils.SwcUtils.findAllSwcHosts(this);
46
+ return import_Utils.SwcUtils.getHosts(this);
39
47
  }
40
48
  getHost() {
41
- const hosts = this.getHosts();
42
- return hosts.length > 0 ? hosts[hosts.length - 1] : void 0;
49
+ return import_Utils.SwcUtils.getHost(this);
43
50
  }
44
51
  getFirstHost() {
45
- const hosts = this.getHosts();
46
- return hosts.length > 0 ? hosts[0] : void 0;
52
+ return import_Utils.SwcUtils.getFirstHost(this);
47
53
  }
48
54
  getLastHost() {
49
55
  return this.getHost();
50
56
  }
57
+ getHostSet() {
58
+ return import_Utils.SwcUtils.getHostSet(this);
59
+ }
51
60
  /**
52
61
  * 상위 호스트 체인에서 모든 컨텍스트(데이터)를 수집합니다.
53
62
  */
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/elements/base/SwcHTMLTableSectionElementBase.ts"],
4
- "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface } from '../SwcAppInterface';\nimport { SwcHTMLElementInterface } from '../SwcHTMLElementInterface';\n\nexport abstract class SwcHTMLTableSectionElementBase extends HTMLTableSectionElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getNearAppHost(): SwcAppInterface | undefined {\n const hosts = this.getHosts();\n // [Root, ..., Parent] \uC21C\uC11C\uC774\uBBC0\uB85C reverse() \uD6C4 find \uD558\uC5EC \uCD5C\uCE21\uADFC\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.\n return hosts.reverse().find(host => host.tagName.toLowerCase() === 'swc-app' || host.getAttribute('is')?.startsWith('swc-app-')) as SwcAppInterface | undefined;\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.findAllSwcHosts(this as any);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[hosts.length - 1] : undefined;\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[0] : undefined;\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAIlB,MAAe,uCAAuC,wBAA2D;AAAA,EAOtH,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,iBAA8C;AACnD,UAAM,QAAQ,KAAK,SAAS;AAE5B,WAAO,MAAM,QAAQ,EAAE,KAAK,UAAQ,KAAK,QAAQ,YAAY,MAAM,aAAa,KAAK,aAAa,IAAI,GAAG,WAAW,UAAU,CAAC;AAAA,EACjI;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,gBAAgB,IAAW;AAAA,EAC7C;AAAA,EAEO,UAA+C;AACpD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,MAAM,SAAS,CAAC,IAAI;AAAA,EACtD;AAAA,EAEO,eAAoD;AACzD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI;AAAA,EACvC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
4
+ "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface, SwcHTMLElementInterface, HostSet } from '../SwcInterfaces';\n\nexport abstract class SwcHTMLTableSectionElementBase extends HTMLTableSectionElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getAppHost(this);\n }\n\n public getAppHosts(): SwcAppInterface[] {\n return SwcUtils.getAppHosts(this);\n }\n\n public getFirstAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getFirstAppHost(this);\n }\n\n public getLastAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getLastAppHost(this);\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.getHosts(this);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getHost(this);\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getFirstHost(this);\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n public getHostSet(): HostSet {\n return SwcUtils.getHostSet(this);\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAGlB,MAAe,uCAAuC,wBAA2D;AAAA,EAOtH,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,aAA0C;AAC/C,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA,EAEO,cAAiC;AACtC,WAAO,sBAAS,YAAY,IAAI;AAAA,EAClC;AAAA,EAEO,kBAA+C;AACpD,WAAO,sBAAS,gBAAgB,IAAI;AAAA,EACtC;AAAA,EAEO,iBAA8C;AACnD,WAAO,sBAAS,eAAe,IAAI;AAAA,EACrC;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,SAAS,IAAI;AAAA,EAC/B;AAAA,EAEO,UAA+C;AACpD,WAAO,sBAAS,QAAQ,IAAI;AAAA,EAC9B;AAAA,EAEO,eAAoD;AACzD,WAAO,sBAAS,aAAa,IAAI;AAAA,EACnC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAEO,aAAsB;AAC3B,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
6
6
  "names": []
7
7
  }
@@ -30,24 +30,33 @@ class SwcHTMLTemplateElementBase extends HTMLTemplateElement {
30
30
  this._asIndexKey = "index";
31
31
  this._isInitialized = false;
32
32
  }
33
- getNearAppHost() {
34
- const hosts = this.getHosts();
35
- return hosts.reverse().find((host) => host.tagName.toLowerCase() === "swc-app" || host.getAttribute("is")?.startsWith("swc-app-"));
33
+ getAppHost() {
34
+ return import_Utils.SwcUtils.getAppHost(this);
35
+ }
36
+ getAppHosts() {
37
+ return import_Utils.SwcUtils.getAppHosts(this);
38
+ }
39
+ getFirstAppHost() {
40
+ return import_Utils.SwcUtils.getFirstAppHost(this);
41
+ }
42
+ getLastAppHost() {
43
+ return import_Utils.SwcUtils.getLastAppHost(this);
36
44
  }
37
45
  getHosts() {
38
- return import_Utils.SwcUtils.findAllSwcHosts(this);
46
+ return import_Utils.SwcUtils.getHosts(this);
39
47
  }
40
48
  getHost() {
41
- const hosts = this.getHosts();
42
- return hosts.length > 0 ? hosts[hosts.length - 1] : void 0;
49
+ return import_Utils.SwcUtils.getHost(this);
43
50
  }
44
51
  getFirstHost() {
45
- const hosts = this.getHosts();
46
- return hosts.length > 0 ? hosts[0] : void 0;
52
+ return import_Utils.SwcUtils.getFirstHost(this);
47
53
  }
48
54
  getLastHost() {
49
55
  return this.getHost();
50
56
  }
57
+ getHostSet() {
58
+ return import_Utils.SwcUtils.getHostSet(this);
59
+ }
51
60
  /**
52
61
  * 상위 호스트 체인에서 모든 컨텍스트(데이터)를 수집합니다.
53
62
  */
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/elements/base/SwcHTMLTemplateElementBase.ts"],
4
- "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface } from '../SwcAppInterface';\nimport { SwcHTMLElementInterface } from '../SwcHTMLElementInterface';\n\nexport abstract class SwcHTMLTemplateElementBase extends HTMLTemplateElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getNearAppHost(): SwcAppInterface | undefined {\n const hosts = this.getHosts();\n // [Root, ..., Parent] \uC21C\uC11C\uC774\uBBC0\uB85C reverse() \uD6C4 find \uD558\uC5EC \uCD5C\uCE21\uADFC\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.\n return hosts.reverse().find(host => host.tagName.toLowerCase() === 'swc-app' || host.getAttribute('is')?.startsWith('swc-app-')) as SwcAppInterface | undefined;\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.findAllSwcHosts(this as any);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[hosts.length - 1] : undefined;\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n const hosts = this.getHosts();\n return hosts.length > 0 ? hosts[0] : undefined;\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAIlB,MAAe,mCAAmC,oBAAuD;AAAA,EAO9G,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,iBAA8C;AACnD,UAAM,QAAQ,KAAK,SAAS;AAE5B,WAAO,MAAM,QAAQ,EAAE,KAAK,UAAQ,KAAK,QAAQ,YAAY,MAAM,aAAa,KAAK,aAAa,IAAI,GAAG,WAAW,UAAU,CAAC;AAAA,EACjI;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,gBAAgB,IAAW;AAAA,EAC7C;AAAA,EAEO,UAA+C;AACpD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,MAAM,SAAS,CAAC,IAAI;AAAA,EACtD;AAAA,EAEO,eAAoD;AACzD,UAAM,QAAQ,KAAK,SAAS;AAC5B,WAAO,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI;AAAA,EACvC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
4
+ "sourcesContent": ["import { SwcUtils } from '../../utils/Utils';\nimport { SwcAppInterface, SwcHTMLElementInterface, HostSet } from '../SwcInterfaces';\n\nexport abstract class SwcHTMLTemplateElementBase extends HTMLTemplateElement implements SwcHTMLElementInterface {\n protected _masterTplNodes: Node[] = [];\n protected _asKey: string = 'value';\n protected _asItemKey: string = 'item';\n protected _asIndexKey: string = 'index';\n protected _isInitialized = false;\n\n constructor() {\n super();\n }\n\n public getAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getAppHost(this);\n }\n\n public getAppHosts(): SwcAppInterface[] {\n return SwcUtils.getAppHosts(this);\n }\n\n public getFirstAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getFirstAppHost(this);\n }\n\n public getLastAppHost(): SwcAppInterface | undefined {\n return SwcUtils.getLastAppHost(this);\n }\n\n public getHosts(): SwcHTMLElementInterface[] {\n return SwcUtils.getHosts(this);\n }\n\n public getHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getHost(this);\n }\n\n public getFirstHost(): SwcHTMLElementInterface | undefined {\n return SwcUtils.getFirstHost(this);\n }\n\n public getLastHost(): SwcHTMLElementInterface | undefined {\n return this.getHost();\n }\n\n public getHostSet(): HostSet {\n return SwcUtils.getHostSet(this);\n }\n\n /**\n * \uC0C1\uC704 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBAA8\uB4E0 \uCEE8\uD14D\uC2A4\uD2B8(\uB370\uC774\uD130)\uB97C \uC218\uC9D1\uD569\uB2C8\uB2E4.\n */\n protected _getSuperiorContext(): Record<string, any> {\n const hostContext: Record<string, any> = {};\n const hosts = this.getHosts();\n hosts.forEach(host => {\n if (typeof (host as any)._getHostContext === 'function') {\n Object.assign(hostContext, (host as any)._getHostContext());\n }\n });\n return hostContext;\n }\n\n protected initCore() {\n this._asKey = this.getAttribute('as') || 'value';\n this._asItemKey = this.getAttribute('as-item') || this.getAttribute('as') || 'item';\n this._asIndexKey = this.getAttribute('as-index') || 'index';\n\n if (this._masterTplNodes.length > 0) return; // \uC774\uBBF8 \uCD08\uAE30\uD654\uB428\n\n const tplSlot = this.shadowRoot?.getElementById('tpl-slot') as HTMLSlotElement;\n if (tplSlot) {\n this._masterTplNodes = tplSlot.assignedNodes().map(n => n.cloneNode(true));\n } else if (this.childNodes.length > 0) {\n // Light DOM\uC5D0\uC11C \uD15C\uD50C\uB9BF \uCD94\uCD9C\n this._masterTplNodes = Array.from(this.childNodes).map(n => n.cloneNode(true));\n }\n }\n\n protected applyData(node: Node, data: any, index?: number) {\n const hostContext = this._getSuperiorContext();\n\n SwcUtils.applyData(node, data, {\n asKey: this._asItemKey,\n asIndexKey: this._asIndexKey,\n index,\n hostContext\n });\n }\n\n protected createReactiveProxy(target: any, onChange: () => void, onIndexChange?: (index: number, val: any) => void) {\n return SwcUtils.createReactiveProxy(target, onChange, onIndexChange);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAGlB,MAAe,mCAAmC,oBAAuD;AAAA,EAO9G,cAAc;AACZ,UAAM;AAPR,SAAU,kBAA0B,CAAC;AACrC,SAAU,SAAiB;AAC3B,SAAU,aAAqB;AAC/B,SAAU,cAAsB;AAChC,SAAU,iBAAiB;AAAA,EAI3B;AAAA,EAEO,aAA0C;AAC/C,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA,EAEO,cAAiC;AACtC,WAAO,sBAAS,YAAY,IAAI;AAAA,EAClC;AAAA,EAEO,kBAA+C;AACpD,WAAO,sBAAS,gBAAgB,IAAI;AAAA,EACtC;AAAA,EAEO,iBAA8C;AACnD,WAAO,sBAAS,eAAe,IAAI;AAAA,EACrC;AAAA,EAEO,WAAsC;AAC3C,WAAO,sBAAS,SAAS,IAAI;AAAA,EAC/B;AAAA,EAEO,UAA+C;AACpD,WAAO,sBAAS,QAAQ,IAAI;AAAA,EAC9B;AAAA,EAEO,eAAoD;AACzD,WAAO,sBAAS,aAAa,IAAI;AAAA,EACnC;AAAA,EAEO,cAAmD;AACxD,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAEO,aAAsB;AAC3B,WAAO,sBAAS,WAAW,IAAI;AAAA,EACjC;AAAA;AAAA;AAAA;AAAA,EAKU,sBAA2C;AACnD,UAAM,cAAmC,CAAC;AAC1C,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,QAAQ,UAAQ;AACpB,UAAI,OAAQ,KAAa,oBAAoB,YAAY;AACvD,eAAO,OAAO,aAAc,KAAa,gBAAgB,CAAC;AAAA,MAC5D;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAAA,EAEU,WAAW;AACnB,SAAK,SAAS,KAAK,aAAa,IAAI,KAAK;AACzC,SAAK,aAAa,KAAK,aAAa,SAAS,KAAK,KAAK,aAAa,IAAI,KAAK;AAC7E,SAAK,cAAc,KAAK,aAAa,UAAU,KAAK;AAEpD,QAAI,KAAK,gBAAgB,SAAS,EAAG;AAErC,UAAM,UAAU,KAAK,YAAY,eAAe,UAAU;AAC1D,QAAI,SAAS;AACX,WAAK,kBAAkB,QAAQ,cAAc,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC3E,WAAW,KAAK,WAAW,SAAS,GAAG;AAErC,WAAK,kBAAkB,MAAM,KAAK,KAAK,UAAU,EAAE,IAAI,OAAK,EAAE,UAAU,IAAI,CAAC;AAAA,IAC/E;AAAA,EACF;AAAA,EAEU,UAAU,MAAY,MAAW,OAAgB;AACzD,UAAM,cAAc,KAAK,oBAAoB;AAE7C,0BAAS,UAAU,MAAM,MAAM;AAAA,MAC7B,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEU,oBAAoB,QAAa,UAAsB,eAAmD;AAClH,WAAO,sBAAS,oBAAoB,QAAQ,UAAU,aAAa;AAAA,EACrE;AACF;",
6
6
  "names": []
7
7
  }