@dooboostore/simple-web-component 1.0.13 → 1.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (427) hide show
  1. package/dist/cjs/decorators/elementDefine.js.map +2 -2
  2. package/dist/cjs/elements/SwcInterfaces.js.map +2 -2
  3. package/dist/cjs/elements/apps/SwcApp.js +14 -7
  4. package/dist/cjs/elements/apps/SwcApp.js.map +2 -2
  5. package/dist/cjs/elements/apps/SwcAppAnchor.js +14 -7
  6. package/dist/cjs/elements/apps/SwcAppAnchor.js.map +2 -2
  7. package/dist/cjs/elements/apps/SwcAppArea.js +14 -7
  8. package/dist/cjs/elements/apps/SwcAppArea.js.map +2 -2
  9. package/dist/cjs/elements/apps/SwcAppAudio.js +14 -7
  10. package/dist/cjs/elements/apps/SwcAppAudio.js.map +2 -2
  11. package/dist/cjs/elements/apps/SwcAppBase.js +14 -7
  12. package/dist/cjs/elements/apps/SwcAppBase.js.map +2 -2
  13. package/dist/cjs/elements/apps/SwcAppBody.js +14 -7
  14. package/dist/cjs/elements/apps/SwcAppBody.js.map +2 -2
  15. package/dist/cjs/elements/apps/SwcAppButton.js +14 -7
  16. package/dist/cjs/elements/apps/SwcAppButton.js.map +2 -2
  17. package/dist/cjs/elements/apps/SwcAppCanvas.js +14 -7
  18. package/dist/cjs/elements/apps/SwcAppCanvas.js.map +2 -2
  19. package/dist/cjs/elements/apps/SwcAppData.js +14 -7
  20. package/dist/cjs/elements/apps/SwcAppData.js.map +2 -2
  21. package/dist/cjs/elements/apps/SwcAppDataList.js +14 -7
  22. package/dist/cjs/elements/apps/SwcAppDataList.js.map +2 -2
  23. package/dist/cjs/elements/apps/SwcAppDetails.js +14 -7
  24. package/dist/cjs/elements/apps/SwcAppDetails.js.map +2 -2
  25. package/dist/cjs/elements/apps/SwcAppDialog.js +14 -7
  26. package/dist/cjs/elements/apps/SwcAppDialog.js.map +2 -2
  27. package/dist/cjs/elements/apps/SwcAppDiv.js +14 -7
  28. package/dist/cjs/elements/apps/SwcAppDiv.js.map +2 -2
  29. package/dist/cjs/elements/apps/SwcAppDl.js +14 -7
  30. package/dist/cjs/elements/apps/SwcAppDl.js.map +2 -2
  31. package/dist/cjs/elements/apps/SwcAppEmbed.js +14 -7
  32. package/dist/cjs/elements/apps/SwcAppEmbed.js.map +2 -2
  33. package/dist/cjs/elements/apps/SwcAppFieldSet.js +14 -7
  34. package/dist/cjs/elements/apps/SwcAppFieldSet.js.map +2 -2
  35. package/dist/cjs/elements/apps/SwcAppForm.js +14 -7
  36. package/dist/cjs/elements/apps/SwcAppForm.js.map +2 -2
  37. package/dist/cjs/elements/apps/SwcAppHeading.js +14 -7
  38. package/dist/cjs/elements/apps/SwcAppHeading.js.map +2 -2
  39. package/dist/cjs/elements/apps/SwcAppHr.js +14 -7
  40. package/dist/cjs/elements/apps/SwcAppHr.js.map +2 -2
  41. package/dist/cjs/elements/apps/SwcAppIFrame.js +14 -7
  42. package/dist/cjs/elements/apps/SwcAppIFrame.js.map +2 -2
  43. package/dist/cjs/elements/apps/SwcAppImage.js +14 -7
  44. package/dist/cjs/elements/apps/SwcAppImage.js.map +2 -2
  45. package/dist/cjs/elements/apps/SwcAppInput.js +14 -7
  46. package/dist/cjs/elements/apps/SwcAppInput.js.map +2 -2
  47. package/dist/cjs/elements/apps/SwcAppLabel.js +14 -7
  48. package/dist/cjs/elements/apps/SwcAppLabel.js.map +2 -2
  49. package/dist/cjs/elements/apps/SwcAppLegend.js +14 -7
  50. package/dist/cjs/elements/apps/SwcAppLegend.js.map +2 -2
  51. package/dist/cjs/elements/apps/SwcAppLi.js +14 -7
  52. package/dist/cjs/elements/apps/SwcAppLi.js.map +2 -2
  53. package/dist/cjs/elements/apps/SwcAppLink.js +14 -7
  54. package/dist/cjs/elements/apps/SwcAppLink.js.map +2 -2
  55. package/dist/cjs/elements/apps/SwcAppMap.js +14 -7
  56. package/dist/cjs/elements/apps/SwcAppMap.js.map +2 -2
  57. package/dist/cjs/elements/apps/SwcAppMeta.js +14 -7
  58. package/dist/cjs/elements/apps/SwcAppMeta.js.map +2 -2
  59. package/dist/cjs/elements/apps/SwcAppMeter.js +14 -7
  60. package/dist/cjs/elements/apps/SwcAppMeter.js.map +2 -2
  61. package/dist/cjs/elements/apps/SwcAppMod.js +14 -7
  62. package/dist/cjs/elements/apps/SwcAppMod.js.map +2 -2
  63. package/dist/cjs/elements/apps/SwcAppObject.js +14 -7
  64. package/dist/cjs/elements/apps/SwcAppObject.js.map +2 -2
  65. package/dist/cjs/elements/apps/SwcAppOl.js +14 -7
  66. package/dist/cjs/elements/apps/SwcAppOl.js.map +2 -2
  67. package/dist/cjs/elements/apps/SwcAppOptGroup.js +14 -7
  68. package/dist/cjs/elements/apps/SwcAppOptGroup.js.map +2 -2
  69. package/dist/cjs/elements/apps/SwcAppOption.js +14 -7
  70. package/dist/cjs/elements/apps/SwcAppOption.js.map +2 -2
  71. package/dist/cjs/elements/apps/SwcAppOutput.js +14 -7
  72. package/dist/cjs/elements/apps/SwcAppOutput.js.map +2 -2
  73. package/dist/cjs/elements/apps/SwcAppParagraph.js +14 -7
  74. package/dist/cjs/elements/apps/SwcAppParagraph.js.map +2 -2
  75. package/dist/cjs/elements/apps/SwcAppParam.js +14 -7
  76. package/dist/cjs/elements/apps/SwcAppParam.js.map +2 -2
  77. package/dist/cjs/elements/apps/SwcAppPicture.js +14 -7
  78. package/dist/cjs/elements/apps/SwcAppPicture.js.map +2 -2
  79. package/dist/cjs/elements/apps/SwcAppPre.js +14 -7
  80. package/dist/cjs/elements/apps/SwcAppPre.js.map +2 -2
  81. package/dist/cjs/elements/apps/SwcAppProgress.js +14 -7
  82. package/dist/cjs/elements/apps/SwcAppProgress.js.map +2 -2
  83. package/dist/cjs/elements/apps/SwcAppQuote.js +14 -7
  84. package/dist/cjs/elements/apps/SwcAppQuote.js.map +2 -2
  85. package/dist/cjs/elements/apps/SwcAppScript.js +14 -7
  86. package/dist/cjs/elements/apps/SwcAppScript.js.map +2 -2
  87. package/dist/cjs/elements/apps/SwcAppSelect.js +14 -7
  88. package/dist/cjs/elements/apps/SwcAppSelect.js.map +2 -2
  89. package/dist/cjs/elements/apps/SwcAppSlot.js +14 -7
  90. package/dist/cjs/elements/apps/SwcAppSlot.js.map +2 -2
  91. package/dist/cjs/elements/apps/SwcAppSource.js +14 -7
  92. package/dist/cjs/elements/apps/SwcAppSource.js.map +2 -2
  93. package/dist/cjs/elements/apps/SwcAppSpan.js +14 -7
  94. package/dist/cjs/elements/apps/SwcAppSpan.js.map +2 -2
  95. package/dist/cjs/elements/apps/SwcAppStyle.js +14 -7
  96. package/dist/cjs/elements/apps/SwcAppStyle.js.map +2 -2
  97. package/dist/cjs/elements/apps/SwcAppTable.js +14 -7
  98. package/dist/cjs/elements/apps/SwcAppTable.js.map +2 -2
  99. package/dist/cjs/elements/apps/SwcAppTableCell.js +14 -7
  100. package/dist/cjs/elements/apps/SwcAppTableCell.js.map +2 -2
  101. package/dist/cjs/elements/apps/SwcAppTableRow.js +14 -7
  102. package/dist/cjs/elements/apps/SwcAppTableRow.js.map +2 -2
  103. package/dist/cjs/elements/apps/SwcAppTableSection.js +14 -7
  104. package/dist/cjs/elements/apps/SwcAppTableSection.js.map +2 -2
  105. package/dist/cjs/elements/apps/SwcAppTemplate.js +14 -7
  106. package/dist/cjs/elements/apps/SwcAppTemplate.js.map +2 -2
  107. package/dist/cjs/elements/apps/SwcAppTextArea.js +14 -7
  108. package/dist/cjs/elements/apps/SwcAppTextArea.js.map +2 -2
  109. package/dist/cjs/elements/apps/SwcAppTime.js +14 -7
  110. package/dist/cjs/elements/apps/SwcAppTime.js.map +2 -2
  111. package/dist/cjs/elements/apps/SwcAppTitle.js +14 -7
  112. package/dist/cjs/elements/apps/SwcAppTitle.js.map +2 -2
  113. package/dist/cjs/elements/apps/SwcAppTrack.js +14 -7
  114. package/dist/cjs/elements/apps/SwcAppTrack.js.map +2 -2
  115. package/dist/cjs/elements/apps/SwcAppUl.js +14 -7
  116. package/dist/cjs/elements/apps/SwcAppUl.js.map +2 -2
  117. package/dist/cjs/elements/apps/SwcAppVideo.js +14 -7
  118. package/dist/cjs/elements/apps/SwcAppVideo.js.map +2 -2
  119. package/dist/cjs/router/ElementRouter.js +172 -0
  120. package/dist/cjs/router/ElementRouter.js.map +7 -0
  121. package/dist/esm/decorators/elementDefine.js.map +2 -2
  122. package/dist/esm/elements/SwcInterfaces.js.map +2 -2
  123. package/dist/esm/elements/apps/SwcApp.js +14 -7
  124. package/dist/esm/elements/apps/SwcApp.js.map +2 -2
  125. package/dist/esm/elements/apps/SwcAppAnchor.js +14 -7
  126. package/dist/esm/elements/apps/SwcAppAnchor.js.map +2 -2
  127. package/dist/esm/elements/apps/SwcAppArea.js +14 -7
  128. package/dist/esm/elements/apps/SwcAppArea.js.map +2 -2
  129. package/dist/esm/elements/apps/SwcAppAudio.js +14 -7
  130. package/dist/esm/elements/apps/SwcAppAudio.js.map +2 -2
  131. package/dist/esm/elements/apps/SwcAppBase.js +14 -7
  132. package/dist/esm/elements/apps/SwcAppBase.js.map +2 -2
  133. package/dist/esm/elements/apps/SwcAppBody.js +14 -7
  134. package/dist/esm/elements/apps/SwcAppBody.js.map +2 -2
  135. package/dist/esm/elements/apps/SwcAppButton.js +14 -7
  136. package/dist/esm/elements/apps/SwcAppButton.js.map +2 -2
  137. package/dist/esm/elements/apps/SwcAppCanvas.js +14 -7
  138. package/dist/esm/elements/apps/SwcAppCanvas.js.map +2 -2
  139. package/dist/esm/elements/apps/SwcAppData.js +14 -7
  140. package/dist/esm/elements/apps/SwcAppData.js.map +2 -2
  141. package/dist/esm/elements/apps/SwcAppDataList.js +14 -7
  142. package/dist/esm/elements/apps/SwcAppDataList.js.map +2 -2
  143. package/dist/esm/elements/apps/SwcAppDetails.js +14 -7
  144. package/dist/esm/elements/apps/SwcAppDetails.js.map +2 -2
  145. package/dist/esm/elements/apps/SwcAppDialog.js +14 -7
  146. package/dist/esm/elements/apps/SwcAppDialog.js.map +2 -2
  147. package/dist/esm/elements/apps/SwcAppDiv.js +14 -7
  148. package/dist/esm/elements/apps/SwcAppDiv.js.map +2 -2
  149. package/dist/esm/elements/apps/SwcAppDl.js +14 -7
  150. package/dist/esm/elements/apps/SwcAppDl.js.map +2 -2
  151. package/dist/esm/elements/apps/SwcAppEmbed.js +14 -7
  152. package/dist/esm/elements/apps/SwcAppEmbed.js.map +2 -2
  153. package/dist/esm/elements/apps/SwcAppFieldSet.js +14 -7
  154. package/dist/esm/elements/apps/SwcAppFieldSet.js.map +2 -2
  155. package/dist/esm/elements/apps/SwcAppForm.js +14 -7
  156. package/dist/esm/elements/apps/SwcAppForm.js.map +2 -2
  157. package/dist/esm/elements/apps/SwcAppHeading.js +14 -7
  158. package/dist/esm/elements/apps/SwcAppHeading.js.map +2 -2
  159. package/dist/esm/elements/apps/SwcAppHr.js +14 -7
  160. package/dist/esm/elements/apps/SwcAppHr.js.map +2 -2
  161. package/dist/esm/elements/apps/SwcAppIFrame.js +14 -7
  162. package/dist/esm/elements/apps/SwcAppIFrame.js.map +2 -2
  163. package/dist/esm/elements/apps/SwcAppImage.js +14 -7
  164. package/dist/esm/elements/apps/SwcAppImage.js.map +2 -2
  165. package/dist/esm/elements/apps/SwcAppInput.js +14 -7
  166. package/dist/esm/elements/apps/SwcAppInput.js.map +2 -2
  167. package/dist/esm/elements/apps/SwcAppLabel.js +14 -7
  168. package/dist/esm/elements/apps/SwcAppLabel.js.map +2 -2
  169. package/dist/esm/elements/apps/SwcAppLegend.js +14 -7
  170. package/dist/esm/elements/apps/SwcAppLegend.js.map +2 -2
  171. package/dist/esm/elements/apps/SwcAppLi.js +14 -7
  172. package/dist/esm/elements/apps/SwcAppLi.js.map +2 -2
  173. package/dist/esm/elements/apps/SwcAppLink.js +14 -7
  174. package/dist/esm/elements/apps/SwcAppLink.js.map +2 -2
  175. package/dist/esm/elements/apps/SwcAppMap.js +14 -7
  176. package/dist/esm/elements/apps/SwcAppMap.js.map +2 -2
  177. package/dist/esm/elements/apps/SwcAppMeta.js +14 -7
  178. package/dist/esm/elements/apps/SwcAppMeta.js.map +2 -2
  179. package/dist/esm/elements/apps/SwcAppMeter.js +14 -7
  180. package/dist/esm/elements/apps/SwcAppMeter.js.map +2 -2
  181. package/dist/esm/elements/apps/SwcAppMod.js +14 -7
  182. package/dist/esm/elements/apps/SwcAppMod.js.map +2 -2
  183. package/dist/esm/elements/apps/SwcAppObject.js +14 -7
  184. package/dist/esm/elements/apps/SwcAppObject.js.map +2 -2
  185. package/dist/esm/elements/apps/SwcAppOl.js +14 -7
  186. package/dist/esm/elements/apps/SwcAppOl.js.map +2 -2
  187. package/dist/esm/elements/apps/SwcAppOptGroup.js +14 -7
  188. package/dist/esm/elements/apps/SwcAppOptGroup.js.map +2 -2
  189. package/dist/esm/elements/apps/SwcAppOption.js +14 -7
  190. package/dist/esm/elements/apps/SwcAppOption.js.map +2 -2
  191. package/dist/esm/elements/apps/SwcAppOutput.js +14 -7
  192. package/dist/esm/elements/apps/SwcAppOutput.js.map +2 -2
  193. package/dist/esm/elements/apps/SwcAppParagraph.js +14 -7
  194. package/dist/esm/elements/apps/SwcAppParagraph.js.map +2 -2
  195. package/dist/esm/elements/apps/SwcAppParam.js +14 -7
  196. package/dist/esm/elements/apps/SwcAppParam.js.map +2 -2
  197. package/dist/esm/elements/apps/SwcAppPicture.js +14 -7
  198. package/dist/esm/elements/apps/SwcAppPicture.js.map +2 -2
  199. package/dist/esm/elements/apps/SwcAppPre.js +14 -7
  200. package/dist/esm/elements/apps/SwcAppPre.js.map +2 -2
  201. package/dist/esm/elements/apps/SwcAppProgress.js +14 -7
  202. package/dist/esm/elements/apps/SwcAppProgress.js.map +2 -2
  203. package/dist/esm/elements/apps/SwcAppQuote.js +14 -7
  204. package/dist/esm/elements/apps/SwcAppQuote.js.map +2 -2
  205. package/dist/esm/elements/apps/SwcAppScript.js +14 -7
  206. package/dist/esm/elements/apps/SwcAppScript.js.map +2 -2
  207. package/dist/esm/elements/apps/SwcAppSelect.js +14 -7
  208. package/dist/esm/elements/apps/SwcAppSelect.js.map +2 -2
  209. package/dist/esm/elements/apps/SwcAppSlot.js +14 -7
  210. package/dist/esm/elements/apps/SwcAppSlot.js.map +2 -2
  211. package/dist/esm/elements/apps/SwcAppSource.js +14 -7
  212. package/dist/esm/elements/apps/SwcAppSource.js.map +2 -2
  213. package/dist/esm/elements/apps/SwcAppSpan.js +14 -7
  214. package/dist/esm/elements/apps/SwcAppSpan.js.map +2 -2
  215. package/dist/esm/elements/apps/SwcAppStyle.js +14 -7
  216. package/dist/esm/elements/apps/SwcAppStyle.js.map +2 -2
  217. package/dist/esm/elements/apps/SwcAppTable.js +14 -7
  218. package/dist/esm/elements/apps/SwcAppTable.js.map +2 -2
  219. package/dist/esm/elements/apps/SwcAppTableCell.js +14 -7
  220. package/dist/esm/elements/apps/SwcAppTableCell.js.map +2 -2
  221. package/dist/esm/elements/apps/SwcAppTableRow.js +14 -7
  222. package/dist/esm/elements/apps/SwcAppTableRow.js.map +2 -2
  223. package/dist/esm/elements/apps/SwcAppTableSection.js +14 -7
  224. package/dist/esm/elements/apps/SwcAppTableSection.js.map +2 -2
  225. package/dist/esm/elements/apps/SwcAppTemplate.js +14 -7
  226. package/dist/esm/elements/apps/SwcAppTemplate.js.map +2 -2
  227. package/dist/esm/elements/apps/SwcAppTextArea.js +14 -7
  228. package/dist/esm/elements/apps/SwcAppTextArea.js.map +2 -2
  229. package/dist/esm/elements/apps/SwcAppTime.js +14 -7
  230. package/dist/esm/elements/apps/SwcAppTime.js.map +2 -2
  231. package/dist/esm/elements/apps/SwcAppTitle.js +14 -7
  232. package/dist/esm/elements/apps/SwcAppTitle.js.map +2 -2
  233. package/dist/esm/elements/apps/SwcAppTrack.js +14 -7
  234. package/dist/esm/elements/apps/SwcAppTrack.js.map +2 -2
  235. package/dist/esm/elements/apps/SwcAppUl.js +14 -7
  236. package/dist/esm/elements/apps/SwcAppUl.js.map +2 -2
  237. package/dist/esm/elements/apps/SwcAppVideo.js +14 -7
  238. package/dist/esm/elements/apps/SwcAppVideo.js.map +2 -2
  239. package/dist/esm/router/ElementRouter.js +153 -0
  240. package/dist/esm/router/ElementRouter.js.map +7 -0
  241. package/dist/esm-bundle/dooboostore-simple-web-component.esm.js +912 -415
  242. package/dist/esm-bundle/dooboostore-simple-web-component.esm.js.map +4 -4
  243. package/dist/types/decorators/elementDefine.d.ts.map +1 -1
  244. package/dist/types/elements/SwcInterfaces.d.ts +3 -1
  245. package/dist/types/elements/SwcInterfaces.d.ts.map +1 -1
  246. package/dist/types/elements/apps/SwcApp.d.ts +2 -3
  247. package/dist/types/elements/apps/SwcApp.d.ts.map +1 -1
  248. package/dist/types/elements/apps/SwcAppAnchor.d.ts +2 -3
  249. package/dist/types/elements/apps/SwcAppAnchor.d.ts.map +1 -1
  250. package/dist/types/elements/apps/SwcAppArea.d.ts +2 -3
  251. package/dist/types/elements/apps/SwcAppArea.d.ts.map +1 -1
  252. package/dist/types/elements/apps/SwcAppAudio.d.ts +2 -3
  253. package/dist/types/elements/apps/SwcAppAudio.d.ts.map +1 -1
  254. package/dist/types/elements/apps/SwcAppBase.d.ts +2 -3
  255. package/dist/types/elements/apps/SwcAppBase.d.ts.map +1 -1
  256. package/dist/types/elements/apps/SwcAppBody.d.ts +2 -3
  257. package/dist/types/elements/apps/SwcAppBody.d.ts.map +1 -1
  258. package/dist/types/elements/apps/SwcAppButton.d.ts +2 -3
  259. package/dist/types/elements/apps/SwcAppButton.d.ts.map +1 -1
  260. package/dist/types/elements/apps/SwcAppCanvas.d.ts +2 -3
  261. package/dist/types/elements/apps/SwcAppCanvas.d.ts.map +1 -1
  262. package/dist/types/elements/apps/SwcAppData.d.ts +2 -3
  263. package/dist/types/elements/apps/SwcAppData.d.ts.map +1 -1
  264. package/dist/types/elements/apps/SwcAppDataList.d.ts +2 -3
  265. package/dist/types/elements/apps/SwcAppDataList.d.ts.map +1 -1
  266. package/dist/types/elements/apps/SwcAppDetails.d.ts +2 -3
  267. package/dist/types/elements/apps/SwcAppDetails.d.ts.map +1 -1
  268. package/dist/types/elements/apps/SwcAppDialog.d.ts +2 -3
  269. package/dist/types/elements/apps/SwcAppDialog.d.ts.map +1 -1
  270. package/dist/types/elements/apps/SwcAppDiv.d.ts +2 -3
  271. package/dist/types/elements/apps/SwcAppDiv.d.ts.map +1 -1
  272. package/dist/types/elements/apps/SwcAppDl.d.ts +2 -3
  273. package/dist/types/elements/apps/SwcAppDl.d.ts.map +1 -1
  274. package/dist/types/elements/apps/SwcAppEmbed.d.ts +2 -3
  275. package/dist/types/elements/apps/SwcAppEmbed.d.ts.map +1 -1
  276. package/dist/types/elements/apps/SwcAppFieldSet.d.ts +2 -3
  277. package/dist/types/elements/apps/SwcAppFieldSet.d.ts.map +1 -1
  278. package/dist/types/elements/apps/SwcAppForm.d.ts +2 -3
  279. package/dist/types/elements/apps/SwcAppForm.d.ts.map +1 -1
  280. package/dist/types/elements/apps/SwcAppHeading.d.ts +2 -3
  281. package/dist/types/elements/apps/SwcAppHeading.d.ts.map +1 -1
  282. package/dist/types/elements/apps/SwcAppHr.d.ts +2 -3
  283. package/dist/types/elements/apps/SwcAppHr.d.ts.map +1 -1
  284. package/dist/types/elements/apps/SwcAppIFrame.d.ts +2 -3
  285. package/dist/types/elements/apps/SwcAppIFrame.d.ts.map +1 -1
  286. package/dist/types/elements/apps/SwcAppImage.d.ts +2 -3
  287. package/dist/types/elements/apps/SwcAppImage.d.ts.map +1 -1
  288. package/dist/types/elements/apps/SwcAppInput.d.ts +2 -3
  289. package/dist/types/elements/apps/SwcAppInput.d.ts.map +1 -1
  290. package/dist/types/elements/apps/SwcAppLabel.d.ts +2 -3
  291. package/dist/types/elements/apps/SwcAppLabel.d.ts.map +1 -1
  292. package/dist/types/elements/apps/SwcAppLegend.d.ts +2 -3
  293. package/dist/types/elements/apps/SwcAppLegend.d.ts.map +1 -1
  294. package/dist/types/elements/apps/SwcAppLi.d.ts +2 -3
  295. package/dist/types/elements/apps/SwcAppLi.d.ts.map +1 -1
  296. package/dist/types/elements/apps/SwcAppLink.d.ts +2 -3
  297. package/dist/types/elements/apps/SwcAppLink.d.ts.map +1 -1
  298. package/dist/types/elements/apps/SwcAppMap.d.ts +2 -3
  299. package/dist/types/elements/apps/SwcAppMap.d.ts.map +1 -1
  300. package/dist/types/elements/apps/SwcAppMeta.d.ts +2 -3
  301. package/dist/types/elements/apps/SwcAppMeta.d.ts.map +1 -1
  302. package/dist/types/elements/apps/SwcAppMeter.d.ts +2 -3
  303. package/dist/types/elements/apps/SwcAppMeter.d.ts.map +1 -1
  304. package/dist/types/elements/apps/SwcAppMod.d.ts +2 -3
  305. package/dist/types/elements/apps/SwcAppMod.d.ts.map +1 -1
  306. package/dist/types/elements/apps/SwcAppObject.d.ts +2 -3
  307. package/dist/types/elements/apps/SwcAppObject.d.ts.map +1 -1
  308. package/dist/types/elements/apps/SwcAppOl.d.ts +2 -3
  309. package/dist/types/elements/apps/SwcAppOl.d.ts.map +1 -1
  310. package/dist/types/elements/apps/SwcAppOptGroup.d.ts +2 -3
  311. package/dist/types/elements/apps/SwcAppOptGroup.d.ts.map +1 -1
  312. package/dist/types/elements/apps/SwcAppOption.d.ts +2 -3
  313. package/dist/types/elements/apps/SwcAppOption.d.ts.map +1 -1
  314. package/dist/types/elements/apps/SwcAppOutput.d.ts +2 -3
  315. package/dist/types/elements/apps/SwcAppOutput.d.ts.map +1 -1
  316. package/dist/types/elements/apps/SwcAppParagraph.d.ts +2 -3
  317. package/dist/types/elements/apps/SwcAppParagraph.d.ts.map +1 -1
  318. package/dist/types/elements/apps/SwcAppParam.d.ts +2 -3
  319. package/dist/types/elements/apps/SwcAppParam.d.ts.map +1 -1
  320. package/dist/types/elements/apps/SwcAppPicture.d.ts +2 -3
  321. package/dist/types/elements/apps/SwcAppPicture.d.ts.map +1 -1
  322. package/dist/types/elements/apps/SwcAppPre.d.ts +2 -3
  323. package/dist/types/elements/apps/SwcAppPre.d.ts.map +1 -1
  324. package/dist/types/elements/apps/SwcAppProgress.d.ts +2 -3
  325. package/dist/types/elements/apps/SwcAppProgress.d.ts.map +1 -1
  326. package/dist/types/elements/apps/SwcAppQuote.d.ts +2 -3
  327. package/dist/types/elements/apps/SwcAppQuote.d.ts.map +1 -1
  328. package/dist/types/elements/apps/SwcAppScript.d.ts +2 -3
  329. package/dist/types/elements/apps/SwcAppScript.d.ts.map +1 -1
  330. package/dist/types/elements/apps/SwcAppSelect.d.ts +2 -3
  331. package/dist/types/elements/apps/SwcAppSelect.d.ts.map +1 -1
  332. package/dist/types/elements/apps/SwcAppSlot.d.ts +2 -3
  333. package/dist/types/elements/apps/SwcAppSlot.d.ts.map +1 -1
  334. package/dist/types/elements/apps/SwcAppSource.d.ts +2 -3
  335. package/dist/types/elements/apps/SwcAppSource.d.ts.map +1 -1
  336. package/dist/types/elements/apps/SwcAppSpan.d.ts +2 -3
  337. package/dist/types/elements/apps/SwcAppSpan.d.ts.map +1 -1
  338. package/dist/types/elements/apps/SwcAppStyle.d.ts +2 -3
  339. package/dist/types/elements/apps/SwcAppStyle.d.ts.map +1 -1
  340. package/dist/types/elements/apps/SwcAppTable.d.ts +2 -3
  341. package/dist/types/elements/apps/SwcAppTable.d.ts.map +1 -1
  342. package/dist/types/elements/apps/SwcAppTableCell.d.ts +2 -3
  343. package/dist/types/elements/apps/SwcAppTableCell.d.ts.map +1 -1
  344. package/dist/types/elements/apps/SwcAppTableRow.d.ts +2 -3
  345. package/dist/types/elements/apps/SwcAppTableRow.d.ts.map +1 -1
  346. package/dist/types/elements/apps/SwcAppTableSection.d.ts +2 -3
  347. package/dist/types/elements/apps/SwcAppTableSection.d.ts.map +1 -1
  348. package/dist/types/elements/apps/SwcAppTemplate.d.ts +2 -3
  349. package/dist/types/elements/apps/SwcAppTemplate.d.ts.map +1 -1
  350. package/dist/types/elements/apps/SwcAppTextArea.d.ts +2 -3
  351. package/dist/types/elements/apps/SwcAppTextArea.d.ts.map +1 -1
  352. package/dist/types/elements/apps/SwcAppTime.d.ts +2 -3
  353. package/dist/types/elements/apps/SwcAppTime.d.ts.map +1 -1
  354. package/dist/types/elements/apps/SwcAppTitle.d.ts +2 -3
  355. package/dist/types/elements/apps/SwcAppTitle.d.ts.map +1 -1
  356. package/dist/types/elements/apps/SwcAppTrack.d.ts +2 -3
  357. package/dist/types/elements/apps/SwcAppTrack.d.ts.map +1 -1
  358. package/dist/types/elements/apps/SwcAppUl.d.ts +2 -3
  359. package/dist/types/elements/apps/SwcAppUl.d.ts.map +1 -1
  360. package/dist/types/elements/apps/SwcAppVideo.d.ts +2 -3
  361. package/dist/types/elements/apps/SwcAppVideo.d.ts.map +1 -1
  362. package/dist/types/router/ElementRouter.d.ts +41 -0
  363. package/dist/types/router/ElementRouter.d.ts.map +1 -0
  364. package/dist/umd-bundle/dooboostore-simple-web-component.umd.js +912 -415
  365. package/dist/umd-bundle/dooboostore-simple-web-component.umd.js.map +4 -4
  366. package/package.json +2 -2
  367. package/src/decorators/elementDefine.ts +1 -0
  368. package/src/elements/SwcInterfaces.ts +6 -2
  369. package/src/elements/apps/SwcApp.ts +17 -9
  370. package/src/elements/apps/SwcAppAnchor.ts +17 -9
  371. package/src/elements/apps/SwcAppArea.ts +17 -9
  372. package/src/elements/apps/SwcAppAudio.ts +17 -9
  373. package/src/elements/apps/SwcAppBase.ts +17 -9
  374. package/src/elements/apps/SwcAppBody.ts +17 -9
  375. package/src/elements/apps/SwcAppButton.ts +17 -9
  376. package/src/elements/apps/SwcAppCanvas.ts +17 -9
  377. package/src/elements/apps/SwcAppData.ts +17 -9
  378. package/src/elements/apps/SwcAppDataList.ts +17 -9
  379. package/src/elements/apps/SwcAppDetails.ts +17 -9
  380. package/src/elements/apps/SwcAppDialog.ts +17 -9
  381. package/src/elements/apps/SwcAppDiv.ts +17 -9
  382. package/src/elements/apps/SwcAppDl.ts +17 -9
  383. package/src/elements/apps/SwcAppEmbed.ts +17 -9
  384. package/src/elements/apps/SwcAppFieldSet.ts +17 -9
  385. package/src/elements/apps/SwcAppForm.ts +17 -9
  386. package/src/elements/apps/SwcAppHeading.ts +17 -9
  387. package/src/elements/apps/SwcAppHr.ts +17 -9
  388. package/src/elements/apps/SwcAppIFrame.ts +17 -9
  389. package/src/elements/apps/SwcAppImage.ts +17 -9
  390. package/src/elements/apps/SwcAppInput.ts +17 -9
  391. package/src/elements/apps/SwcAppLabel.ts +17 -9
  392. package/src/elements/apps/SwcAppLegend.ts +17 -9
  393. package/src/elements/apps/SwcAppLi.ts +17 -9
  394. package/src/elements/apps/SwcAppLink.ts +17 -9
  395. package/src/elements/apps/SwcAppMap.ts +17 -9
  396. package/src/elements/apps/SwcAppMeta.ts +17 -9
  397. package/src/elements/apps/SwcAppMeter.ts +17 -9
  398. package/src/elements/apps/SwcAppMod.ts +17 -9
  399. package/src/elements/apps/SwcAppObject.ts +17 -9
  400. package/src/elements/apps/SwcAppOl.ts +17 -9
  401. package/src/elements/apps/SwcAppOptGroup.ts +17 -9
  402. package/src/elements/apps/SwcAppOption.ts +17 -9
  403. package/src/elements/apps/SwcAppOutput.ts +17 -9
  404. package/src/elements/apps/SwcAppParagraph.ts +17 -9
  405. package/src/elements/apps/SwcAppParam.ts +17 -9
  406. package/src/elements/apps/SwcAppPicture.ts +17 -9
  407. package/src/elements/apps/SwcAppPre.ts +17 -9
  408. package/src/elements/apps/SwcAppProgress.ts +17 -9
  409. package/src/elements/apps/SwcAppQuote.ts +17 -9
  410. package/src/elements/apps/SwcAppScript.ts +17 -9
  411. package/src/elements/apps/SwcAppSelect.ts +17 -9
  412. package/src/elements/apps/SwcAppSlot.ts +17 -9
  413. package/src/elements/apps/SwcAppSource.ts +17 -9
  414. package/src/elements/apps/SwcAppSpan.ts +17 -9
  415. package/src/elements/apps/SwcAppStyle.ts +17 -9
  416. package/src/elements/apps/SwcAppTable.ts +17 -9
  417. package/src/elements/apps/SwcAppTableCell.ts +17 -9
  418. package/src/elements/apps/SwcAppTableRow.ts +17 -9
  419. package/src/elements/apps/SwcAppTableSection.ts +17 -9
  420. package/src/elements/apps/SwcAppTemplate.ts +17 -9
  421. package/src/elements/apps/SwcAppTextArea.ts +17 -9
  422. package/src/elements/apps/SwcAppTime.ts +17 -9
  423. package/src/elements/apps/SwcAppTitle.ts +17 -9
  424. package/src/elements/apps/SwcAppTrack.ts +17 -9
  425. package/src/elements/apps/SwcAppUl.ts +17 -9
  426. package/src/elements/apps/SwcAppVideo.ts +17 -9
  427. package/src/router/ElementRouter.ts +187 -0
@@ -12,6 +12,7 @@ import { elementDefine } from "../../decorators/elementDefine.js";
12
12
  import { SimpleApplication } from "@dooboostore/simple-boot/SimpleApplication";
13
13
  import { PathRouter } from "@dooboostore/core-web/routers/PathRouter";
14
14
  import { HashRouter } from "@dooboostore/core-web/routers/HashRouter";
15
+ import { ElementRouter } from "../../router/ElementRouter.js";
15
16
  import { SimOption } from "@dooboostore/simple-boot/SimOption";
16
17
  import { Router } from "@dooboostore/core-web/routers/Router";
17
18
  let SwcAppTitle = class SwcAppTitle2 extends SwcHTMLTitleElementBase {
@@ -29,12 +30,18 @@ let SwcAppTitle = class SwcAppTitle2 extends SwcHTMLTitleElementBase {
29
30
  const userConfig = new Function(`return ${applicationConfigStr}`).apply(this);
30
31
  if (userConfig) {
31
32
  const _config = {
32
- routeType: "path",
33
+ routeType: "element",
33
34
  window,
34
35
  ...userConfig
35
36
  };
36
- this._router = _config.routeType === "path" ? new PathRouter({ window: _config.window }) : new HashRouter({ window: _config.window });
37
- this.routerSubscription = this._router.observable.subscribe((route) => {
37
+ if (_config.routeType === "path") {
38
+ this.router = new PathRouter({ window: _config.window, firstUrl: _config.path });
39
+ } else if (_config.routeType === "hash") {
40
+ this.router = new HashRouter({ window: _config.window, firstUrl: _config.path });
41
+ } else {
42
+ this.router = new ElementRouter({ window: _config.window, firstUrl: _config.path });
43
+ }
44
+ this.routerSubscription = this.router.observable.subscribe((route) => {
38
45
  if (route.triggerPoint === "end") {
39
46
  this.routingProcess(route.path);
40
47
  }
@@ -45,8 +52,8 @@ let SwcAppTitle = class SwcAppTitle2 extends SwcHTMLTitleElementBase {
45
52
  });
46
53
  this.simpleApplication = new SimpleApplication(option);
47
54
  const otherInstanceSim = /* @__PURE__ */ new Map();
48
- if (this._router) {
49
- otherInstanceSim.set(Router, this._router);
55
+ if (this.router) {
56
+ otherInstanceSim.set(Router, this.router);
50
57
  }
51
58
  this.simpleApplication.run(otherInstanceSim);
52
59
  const data = this.simpleApplication.sim(_config.rootRouter);
@@ -58,7 +65,7 @@ let SwcAppTitle = class SwcAppTitle2 extends SwcHTMLTitleElementBase {
58
65
  }
59
66
  }
60
67
  if (_config.path) {
61
- await this._router?.go(_config.path);
68
+ await this.router?.go(_config.path);
62
69
  }
63
70
  }
64
71
  } catch (e) {
@@ -70,7 +77,7 @@ let SwcAppTitle = class SwcAppTitle2 extends SwcHTMLTitleElementBase {
70
77
  this.routerSubscription?.unsubscribe();
71
78
  }
72
79
  async routing(path) {
73
- await this._router?.go(path);
80
+ await this.router?.go(path);
74
81
  }
75
82
  async routingProcess(path) {
76
83
  await this.simpleApplication?.routing(path);
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/elements/apps/SwcAppTitle.ts"],
4
- "sourcesContent": ["import { SwcHTMLTitleElementBase } from '../base/SwcHTMLTitleElementBase';\nimport { elementDefine } from '../../decorators/elementDefine';\nimport { SimpleApplication } from '@dooboostore/simple-boot/SimpleApplication';\nimport { SwcAppInterface, SwcConfigType, SwcAttributeConfigType } from '../SwcInterfaces';\nimport { PathRouter } from '@dooboostore/core-web/routers/PathRouter';\nimport { HashRouter } from '@dooboostore/core-web/routers/HashRouter';\nimport { SimOption } from '@dooboostore/simple-boot/SimOption';\nimport { ConstructorType } from '@dooboostore/core/types';\nimport { Router, RouterEventType } from '@dooboostore/core-web/routers/Router';\nimport { Subscription } from '@dooboostore/core/message/Subscription';\n\n@elementDefine({ name: 'swc-app-title', extends: 'title' })\nexport class SwcAppTitle extends SwcHTMLTitleElementBase implements SwcAppInterface {\n public simpleApplication?: SimpleApplication;\n protected _router?: PathRouter | HashRouter;\n private routerSubscription?: Subscription;\n\n constructor() {\n super();\n }\n\n async connectedCallback() {\n if (this._isInitialized) return;\n this._isInitialized = true;\n\n // Push to the end of the event loop to ensure global scripts are evaluated\n await new Promise(resolve => setTimeout(resolve, 0));\n\n const applicationConfigStr = this.getAttribute('swc-get-application-config');\n if (applicationConfigStr) {\n try {\n const userConfig: SwcAttributeConfigType = new Function(`return ${applicationConfigStr}`).apply(this);\n if (userConfig) {\n const _config = {\n routeType: 'path',\n window: window,\n ...userConfig\n };\n\n this._router = _config.routeType === 'path' ? new PathRouter({ window: _config.window }) : new HashRouter({ window: _config.window });\n this.routerSubscription = this._router.observable.subscribe((route: RouterEventType) => {\n if (route.triggerPoint === 'end') {\n this.routingProcess(route.path);\n }\n });\n const option = new SimOption({\n excludeProxys: [Node],\n rootRouter: _config.rootRouter\n });\n\n this.simpleApplication = new SimpleApplication(option);\n\n // Use 'any' key for Map to allow Abstract classes like Router\n const otherInstanceSim = new Map<any, any>();\n if (this._router) {\n otherInstanceSim.set(Router, this._router);\n }\n this.simpleApplication.run(otherInstanceSim);\n const data = this.simpleApplication.sim(_config.rootRouter);\n if (data instanceof Node) {\n if (this.shadowRoot) {\n this.shadowRoot.replaceChildren(data);\n } else if (!this.contains(data)) {\n this.replaceChildren(data);\n }\n }\n if (_config.path) {\n await this._router?.go(_config.path);\n }\n }\n } catch (e) {\n console.error('[SWC-APP] Failed to execute swc-get-application-config script:', e);\n }\n }\n }\n\n disconnectedCallback() {\n this.routerSubscription?.unsubscribe();\n }\n\n async routing(path: string) {\n await this._router?.go(path);\n }\n\n private async routingProcess(path: string) {\n await this.simpleApplication?.routing(path);\n }\n}\n"],
5
- "mappings": ";;;;;;;;;AAAA,SAAS,+BAA+B;AACxC,SAAS,qBAAqB;AAC9B,SAAS,yBAAyB;AAElC,SAAS,kBAAkB;AAC3B,SAAS,kBAAkB;AAC3B,SAAS,iBAAiB;AAE1B,SAAS,cAA+B;AAIjC,IAAM,cAAN,MAAMA,qBAAoB,wBAAuB;EAKtD,cAAA;AACE,UAAK;EACP;EAEA,MAAM,oBAAiB;AACrB,QAAI,KAAK;AAAgB;AACzB,SAAK,iBAAiB;AAGtB,UAAM,IAAI,QAAQ,aAAW,WAAW,SAAS,CAAC,CAAC;AAEnD,UAAM,uBAAuB,KAAK,aAAa,4BAA4B;AAC3E,QAAI,sBAAsB;AACxB,UAAI;AACF,cAAM,aAAqC,IAAI,SAAS,UAAU,oBAAoB,EAAE,EAAE,MAAM,IAAI;AACpG,YAAI,YAAY;AACd,gBAAM,UAAU;YACd,WAAW;YACX;YACA,GAAG;;AAGL,eAAK,UAAU,QAAQ,cAAc,SAAS,IAAI,WAAW,EAAE,QAAQ,QAAQ,OAAM,CAAE,IAAI,IAAI,WAAW,EAAE,QAAQ,QAAQ,OAAM,CAAE;AACpI,eAAK,qBAAqB,KAAK,QAAQ,WAAW,UAAU,CAAC,UAA0B;AACrF,gBAAI,MAAM,iBAAiB,OAAO;AAChC,mBAAK,eAAe,MAAM,IAAI;YAChC;UACF,CAAC;AACD,gBAAM,SAAS,IAAI,UAAU;YAC3B,eAAe,CAAC,IAAI;YACpB,YAAY,QAAQ;WACrB;AAED,eAAK,oBAAoB,IAAI,kBAAkB,MAAM;AAGrD,gBAAM,mBAAmB,oBAAI,IAAG;AAChC,cAAI,KAAK,SAAS;AAChB,6BAAiB,IAAI,QAAQ,KAAK,OAAO;UAC3C;AACA,eAAK,kBAAkB,IAAI,gBAAgB;AAC3C,gBAAM,OAAO,KAAK,kBAAkB,IAAI,QAAQ,UAAU;AAC1D,cAAI,gBAAgB,MAAM;AACxB,gBAAI,KAAK,YAAY;AACnB,mBAAK,WAAW,gBAAgB,IAAI;YACtC,WAAW,CAAC,KAAK,SAAS,IAAI,GAAG;AAC/B,mBAAK,gBAAgB,IAAI;YAC3B;UACF;AACA,cAAI,QAAQ,MAAM;AAChB,kBAAM,KAAK,SAAS,GAAG,QAAQ,IAAI;UACrC;QACF;MACF,SAAS,GAAG;AACV,gBAAQ,MAAM,kEAAkE,CAAC;MACnF;IACF;EACF;EAEA,uBAAoB;AAClB,SAAK,oBAAoB,YAAW;EACtC;EAEA,MAAM,QAAQ,MAAY;AACxB,UAAM,KAAK,SAAS,GAAG,IAAI;EAC7B;EAEQ,MAAM,eAAe,MAAY;AACvC,UAAM,KAAK,mBAAmB,QAAQ,IAAI;EAC5C;;AA1EW,cAAW,WAAA;EADvB,cAAc,EAAE,MAAM,iBAAiB,SAAS,QAAO,CAAE;;GAC7C,WAAW;",
4
+ "sourcesContent": ["import { SwcHTMLTitleElementBase } from '../base/SwcHTMLTitleElementBase';\nimport { elementDefine } from '../../decorators/elementDefine';\nimport { SimpleApplication } from '@dooboostore/simple-boot/SimpleApplication';\nimport { SwcAppInterface, SwcConfigType, SwcAttributeConfigType } from '../SwcInterfaces';\nimport { PathRouter } from '@dooboostore/core-web/routers/PathRouter';\nimport { HashRouter } from '@dooboostore/core-web/routers/HashRouter';\nimport { ElementRouter } from '../../router/ElementRouter';\nimport { SimOption } from '@dooboostore/simple-boot/SimOption';\nimport { ConstructorType } from '@dooboostore/core/types';\nimport { Router, RouterEventType } from '@dooboostore/core-web/routers/Router';\nimport { Subscription } from '@dooboostore/core/message/Subscription';\n\n@elementDefine({ name: 'swc-app-title', extends: 'title' })\nexport class SwcAppTitle extends SwcHTMLTitleElementBase implements SwcAppInterface {\n public simpleApplication?: SimpleApplication;\n public router?: Router;\n private routerSubscription?: Subscription;\n\n constructor() {\n super();\n }\n\n async connectedCallback() {\n if (this._isInitialized) return;\n this._isInitialized = true;\n\n // Push to the end of the event loop to ensure global scripts are evaluated\n await new Promise(resolve => setTimeout(resolve, 0));\n\n const applicationConfigStr = this.getAttribute('swc-get-application-config');\n if (applicationConfigStr) {\n try {\n const userConfig: SwcAttributeConfigType = new Function(`return ${applicationConfigStr}`).apply(this);\n if (userConfig) {\n const _config: SwcConfigType = {\n routeType: 'element',\n window: window,\n ...userConfig\n };\n\n if (_config.routeType === 'path') {\n this.router = new PathRouter({ window: _config.window, firstUrl: _config.path });\n } else if (_config.routeType === 'hash') {\n this.router = new HashRouter({ window: _config.window, firstUrl: _config.path });\n } else {\n this.router = new ElementRouter({ window: _config.window, firstUrl: _config.path });\n }\n\n this.routerSubscription = this.router.observable.subscribe((route: RouterEventType) => {\n if (route.triggerPoint === 'end') {\n this.routingProcess(route.path);\n }\n });\n const option = new SimOption({\n excludeProxys: [Node],\n rootRouter: _config.rootRouter\n });\n\n this.simpleApplication = new SimpleApplication(option);\n\n // Use 'any' key for Map to allow Abstract classes like Router\n const otherInstanceSim = new Map<any, any>();\n if (this.router) {\n otherInstanceSim.set(Router, this.router);\n }\n this.simpleApplication.run(otherInstanceSim);\n const data = this.simpleApplication.sim(_config.rootRouter);\n if (data instanceof Node) {\n if (this.shadowRoot) {\n this.shadowRoot.replaceChildren(data);\n } else if (!this.contains(data)) {\n this.replaceChildren(data);\n }\n }\n if (_config.path) {\n await this.router?.go(_config.path);\n }\n }\n } catch (e) {\n console.error('[SWC-APP] Failed to execute swc-get-application-config script:', e);\n }\n }\n }\n\n disconnectedCallback() {\n this.routerSubscription?.unsubscribe();\n }\n\n async routing(path: string) {\n await this.router?.go(path);\n }\n\n private async routingProcess(path: string) {\n await this.simpleApplication?.routing(path);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;AAAA,SAAS,+BAA+B;AACxC,SAAS,qBAAqB;AAC9B,SAAS,yBAAyB;AAElC,SAAS,kBAAkB;AAC3B,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B,SAAS,iBAAiB;AAE1B,SAAS,cAA+B;AAIjC,IAAM,cAAN,MAAMA,qBAAoB,wBAAuB;EAKtD,cAAA;AACE,UAAK;EACP;EAEA,MAAM,oBAAiB;AACrB,QAAI,KAAK;AAAgB;AACzB,SAAK,iBAAiB;AAGtB,UAAM,IAAI,QAAQ,aAAW,WAAW,SAAS,CAAC,CAAC;AAEnD,UAAM,uBAAuB,KAAK,aAAa,4BAA4B;AAC3E,QAAI,sBAAsB;AACxB,UAAI;AACF,cAAM,aAAqC,IAAI,SAAS,UAAU,oBAAoB,EAAE,EAAE,MAAM,IAAI;AACpG,YAAI,YAAY;AACd,gBAAM,UAAyB;YAC7B,WAAW;YACX;YACA,GAAG;;AAGL,cAAI,QAAQ,cAAc,QAAQ;AAChC,iBAAK,SAAS,IAAI,WAAW,EAAE,QAAQ,QAAQ,QAAQ,UAAU,QAAQ,KAAI,CAAE;UACjF,WAAW,QAAQ,cAAc,QAAQ;AACvC,iBAAK,SAAS,IAAI,WAAW,EAAE,QAAQ,QAAQ,QAAQ,UAAU,QAAQ,KAAI,CAAE;UACjF,OAAO;AACL,iBAAK,SAAS,IAAI,cAAc,EAAE,QAAQ,QAAQ,QAAQ,UAAU,QAAQ,KAAI,CAAE;UACpF;AAEA,eAAK,qBAAqB,KAAK,OAAO,WAAW,UAAU,CAAC,UAA0B;AACpF,gBAAI,MAAM,iBAAiB,OAAO;AAChC,mBAAK,eAAe,MAAM,IAAI;YAChC;UACF,CAAC;AACD,gBAAM,SAAS,IAAI,UAAU;YAC3B,eAAe,CAAC,IAAI;YACpB,YAAY,QAAQ;WACrB;AAED,eAAK,oBAAoB,IAAI,kBAAkB,MAAM;AAGrD,gBAAM,mBAAmB,oBAAI,IAAG;AAChC,cAAI,KAAK,QAAQ;AACf,6BAAiB,IAAI,QAAQ,KAAK,MAAM;UAC1C;AACA,eAAK,kBAAkB,IAAI,gBAAgB;AAC3C,gBAAM,OAAO,KAAK,kBAAkB,IAAI,QAAQ,UAAU;AAC1D,cAAI,gBAAgB,MAAM;AACxB,gBAAI,KAAK,YAAY;AACnB,mBAAK,WAAW,gBAAgB,IAAI;YACtC,WAAW,CAAC,KAAK,SAAS,IAAI,GAAG;AAC/B,mBAAK,gBAAgB,IAAI;YAC3B;UACF;AACA,cAAI,QAAQ,MAAM;AAChB,kBAAM,KAAK,QAAQ,GAAG,QAAQ,IAAI;UACpC;QACF;MACF,SAAS,GAAG;AACV,gBAAQ,MAAM,kEAAkE,CAAC;MACnF;IACF;EACF;EAEA,uBAAoB;AAClB,SAAK,oBAAoB,YAAW;EACtC;EAEA,MAAM,QAAQ,MAAY;AACxB,UAAM,KAAK,QAAQ,GAAG,IAAI;EAC5B;EAEQ,MAAM,eAAe,MAAY;AACvC,UAAM,KAAK,mBAAmB,QAAQ,IAAI;EAC5C;;AAjFW,cAAW,WAAA;EADvB,cAAc,EAAE,MAAM,iBAAiB,SAAS,QAAO,CAAE;;GAC7C,WAAW;",
6
6
  "names": ["SwcAppTitle"]
7
7
  }
@@ -12,6 +12,7 @@ import { elementDefine } from "../../decorators/elementDefine.js";
12
12
  import { SimpleApplication } from "@dooboostore/simple-boot/SimpleApplication";
13
13
  import { PathRouter } from "@dooboostore/core-web/routers/PathRouter";
14
14
  import { HashRouter } from "@dooboostore/core-web/routers/HashRouter";
15
+ import { ElementRouter } from "../../router/ElementRouter.js";
15
16
  import { SimOption } from "@dooboostore/simple-boot/SimOption";
16
17
  import { Router } from "@dooboostore/core-web/routers/Router";
17
18
  let SwcAppTrack = class SwcAppTrack2 extends SwcHTMLTrackElementBase {
@@ -29,12 +30,18 @@ let SwcAppTrack = class SwcAppTrack2 extends SwcHTMLTrackElementBase {
29
30
  const userConfig = new Function(`return ${applicationConfigStr}`).apply(this);
30
31
  if (userConfig) {
31
32
  const _config = {
32
- routeType: "path",
33
+ routeType: "element",
33
34
  window,
34
35
  ...userConfig
35
36
  };
36
- this._router = _config.routeType === "path" ? new PathRouter({ window: _config.window }) : new HashRouter({ window: _config.window });
37
- this.routerSubscription = this._router.observable.subscribe((route) => {
37
+ if (_config.routeType === "path") {
38
+ this.router = new PathRouter({ window: _config.window, firstUrl: _config.path });
39
+ } else if (_config.routeType === "hash") {
40
+ this.router = new HashRouter({ window: _config.window, firstUrl: _config.path });
41
+ } else {
42
+ this.router = new ElementRouter({ window: _config.window, firstUrl: _config.path });
43
+ }
44
+ this.routerSubscription = this.router.observable.subscribe((route) => {
38
45
  if (route.triggerPoint === "end") {
39
46
  this.routingProcess(route.path);
40
47
  }
@@ -45,8 +52,8 @@ let SwcAppTrack = class SwcAppTrack2 extends SwcHTMLTrackElementBase {
45
52
  });
46
53
  this.simpleApplication = new SimpleApplication(option);
47
54
  const otherInstanceSim = /* @__PURE__ */ new Map();
48
- if (this._router) {
49
- otherInstanceSim.set(Router, this._router);
55
+ if (this.router) {
56
+ otherInstanceSim.set(Router, this.router);
50
57
  }
51
58
  this.simpleApplication.run(otherInstanceSim);
52
59
  const data = this.simpleApplication.sim(_config.rootRouter);
@@ -58,7 +65,7 @@ let SwcAppTrack = class SwcAppTrack2 extends SwcHTMLTrackElementBase {
58
65
  }
59
66
  }
60
67
  if (_config.path) {
61
- await this._router?.go(_config.path);
68
+ await this.router?.go(_config.path);
62
69
  }
63
70
  }
64
71
  } catch (e) {
@@ -70,7 +77,7 @@ let SwcAppTrack = class SwcAppTrack2 extends SwcHTMLTrackElementBase {
70
77
  this.routerSubscription?.unsubscribe();
71
78
  }
72
79
  async routing(path) {
73
- await this._router?.go(path);
80
+ await this.router?.go(path);
74
81
  }
75
82
  async routingProcess(path) {
76
83
  await this.simpleApplication?.routing(path);
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/elements/apps/SwcAppTrack.ts"],
4
- "sourcesContent": ["import { SwcHTMLTrackElementBase } from '../base/SwcHTMLTrackElementBase';\nimport { elementDefine } from '../../decorators/elementDefine';\nimport { SimpleApplication } from '@dooboostore/simple-boot/SimpleApplication';\nimport { SwcAppInterface, SwcConfigType, SwcAttributeConfigType } from '../SwcInterfaces';\nimport { PathRouter } from '@dooboostore/core-web/routers/PathRouter';\nimport { HashRouter } from '@dooboostore/core-web/routers/HashRouter';\nimport { SimOption } from '@dooboostore/simple-boot/SimOption';\nimport { ConstructorType } from '@dooboostore/core/types';\nimport { Router, RouterEventType } from '@dooboostore/core-web/routers/Router';\nimport { Subscription } from '@dooboostore/core/message/Subscription';\n\n@elementDefine({ name: 'swc-app-track', extends: 'track' })\nexport class SwcAppTrack extends SwcHTMLTrackElementBase implements SwcAppInterface {\n public simpleApplication?: SimpleApplication;\n protected _router?: PathRouter | HashRouter;\n private routerSubscription?: Subscription;\n\n constructor() {\n super();\n }\n\n async connectedCallback() {\n if (this._isInitialized) return;\n this._isInitialized = true;\n\n // Push to the end of the event loop to ensure global scripts are evaluated\n await new Promise(resolve => setTimeout(resolve, 0));\n\n const applicationConfigStr = this.getAttribute('swc-get-application-config');\n if (applicationConfigStr) {\n try {\n const userConfig: SwcAttributeConfigType = new Function(`return ${applicationConfigStr}`).apply(this);\n if (userConfig) {\n const _config = {\n routeType: 'path',\n window: window,\n ...userConfig\n };\n\n this._router = _config.routeType === 'path' ? new PathRouter({ window: _config.window }) : new HashRouter({ window: _config.window });\n this.routerSubscription = this._router.observable.subscribe((route: RouterEventType) => {\n if (route.triggerPoint === 'end') {\n this.routingProcess(route.path);\n }\n });\n const option = new SimOption({\n excludeProxys: [Node],\n rootRouter: _config.rootRouter\n });\n\n this.simpleApplication = new SimpleApplication(option);\n\n // Use 'any' key for Map to allow Abstract classes like Router\n const otherInstanceSim = new Map<any, any>();\n if (this._router) {\n otherInstanceSim.set(Router, this._router);\n }\n this.simpleApplication.run(otherInstanceSim);\n const data = this.simpleApplication.sim(_config.rootRouter);\n if (data instanceof Node) {\n if (this.shadowRoot) {\n this.shadowRoot.replaceChildren(data);\n } else if (!this.contains(data)) {\n this.replaceChildren(data);\n }\n }\n if (_config.path) {\n await this._router?.go(_config.path);\n }\n }\n } catch (e) {\n console.error('[SWC-APP] Failed to execute swc-get-application-config script:', e);\n }\n }\n }\n\n disconnectedCallback() {\n this.routerSubscription?.unsubscribe();\n }\n\n async routing(path: string) {\n await this._router?.go(path);\n }\n\n private async routingProcess(path: string) {\n await this.simpleApplication?.routing(path);\n }\n}\n"],
5
- "mappings": ";;;;;;;;;AAAA,SAAS,+BAA+B;AACxC,SAAS,qBAAqB;AAC9B,SAAS,yBAAyB;AAElC,SAAS,kBAAkB;AAC3B,SAAS,kBAAkB;AAC3B,SAAS,iBAAiB;AAE1B,SAAS,cAA+B;AAIjC,IAAM,cAAN,MAAMA,qBAAoB,wBAAuB;EAKtD,cAAA;AACE,UAAK;EACP;EAEA,MAAM,oBAAiB;AACrB,QAAI,KAAK;AAAgB;AACzB,SAAK,iBAAiB;AAGtB,UAAM,IAAI,QAAQ,aAAW,WAAW,SAAS,CAAC,CAAC;AAEnD,UAAM,uBAAuB,KAAK,aAAa,4BAA4B;AAC3E,QAAI,sBAAsB;AACxB,UAAI;AACF,cAAM,aAAqC,IAAI,SAAS,UAAU,oBAAoB,EAAE,EAAE,MAAM,IAAI;AACpG,YAAI,YAAY;AACd,gBAAM,UAAU;YACd,WAAW;YACX;YACA,GAAG;;AAGL,eAAK,UAAU,QAAQ,cAAc,SAAS,IAAI,WAAW,EAAE,QAAQ,QAAQ,OAAM,CAAE,IAAI,IAAI,WAAW,EAAE,QAAQ,QAAQ,OAAM,CAAE;AACpI,eAAK,qBAAqB,KAAK,QAAQ,WAAW,UAAU,CAAC,UAA0B;AACrF,gBAAI,MAAM,iBAAiB,OAAO;AAChC,mBAAK,eAAe,MAAM,IAAI;YAChC;UACF,CAAC;AACD,gBAAM,SAAS,IAAI,UAAU;YAC3B,eAAe,CAAC,IAAI;YACpB,YAAY,QAAQ;WACrB;AAED,eAAK,oBAAoB,IAAI,kBAAkB,MAAM;AAGrD,gBAAM,mBAAmB,oBAAI,IAAG;AAChC,cAAI,KAAK,SAAS;AAChB,6BAAiB,IAAI,QAAQ,KAAK,OAAO;UAC3C;AACA,eAAK,kBAAkB,IAAI,gBAAgB;AAC3C,gBAAM,OAAO,KAAK,kBAAkB,IAAI,QAAQ,UAAU;AAC1D,cAAI,gBAAgB,MAAM;AACxB,gBAAI,KAAK,YAAY;AACnB,mBAAK,WAAW,gBAAgB,IAAI;YACtC,WAAW,CAAC,KAAK,SAAS,IAAI,GAAG;AAC/B,mBAAK,gBAAgB,IAAI;YAC3B;UACF;AACA,cAAI,QAAQ,MAAM;AAChB,kBAAM,KAAK,SAAS,GAAG,QAAQ,IAAI;UACrC;QACF;MACF,SAAS,GAAG;AACV,gBAAQ,MAAM,kEAAkE,CAAC;MACnF;IACF;EACF;EAEA,uBAAoB;AAClB,SAAK,oBAAoB,YAAW;EACtC;EAEA,MAAM,QAAQ,MAAY;AACxB,UAAM,KAAK,SAAS,GAAG,IAAI;EAC7B;EAEQ,MAAM,eAAe,MAAY;AACvC,UAAM,KAAK,mBAAmB,QAAQ,IAAI;EAC5C;;AA1EW,cAAW,WAAA;EADvB,cAAc,EAAE,MAAM,iBAAiB,SAAS,QAAO,CAAE;;GAC7C,WAAW;",
4
+ "sourcesContent": ["import { SwcHTMLTrackElementBase } from '../base/SwcHTMLTrackElementBase';\nimport { elementDefine } from '../../decorators/elementDefine';\nimport { SimpleApplication } from '@dooboostore/simple-boot/SimpleApplication';\nimport { SwcAppInterface, SwcConfigType, SwcAttributeConfigType } from '../SwcInterfaces';\nimport { PathRouter } from '@dooboostore/core-web/routers/PathRouter';\nimport { HashRouter } from '@dooboostore/core-web/routers/HashRouter';\nimport { ElementRouter } from '../../router/ElementRouter';\nimport { SimOption } from '@dooboostore/simple-boot/SimOption';\nimport { ConstructorType } from '@dooboostore/core/types';\nimport { Router, RouterEventType } from '@dooboostore/core-web/routers/Router';\nimport { Subscription } from '@dooboostore/core/message/Subscription';\n\n@elementDefine({ name: 'swc-app-track', extends: 'track' })\nexport class SwcAppTrack extends SwcHTMLTrackElementBase implements SwcAppInterface {\n public simpleApplication?: SimpleApplication;\n public router?: Router;\n private routerSubscription?: Subscription;\n\n constructor() {\n super();\n }\n\n async connectedCallback() {\n if (this._isInitialized) return;\n this._isInitialized = true;\n\n // Push to the end of the event loop to ensure global scripts are evaluated\n await new Promise(resolve => setTimeout(resolve, 0));\n\n const applicationConfigStr = this.getAttribute('swc-get-application-config');\n if (applicationConfigStr) {\n try {\n const userConfig: SwcAttributeConfigType = new Function(`return ${applicationConfigStr}`).apply(this);\n if (userConfig) {\n const _config: SwcConfigType = {\n routeType: 'element',\n window: window,\n ...userConfig\n };\n\n if (_config.routeType === 'path') {\n this.router = new PathRouter({ window: _config.window, firstUrl: _config.path });\n } else if (_config.routeType === 'hash') {\n this.router = new HashRouter({ window: _config.window, firstUrl: _config.path });\n } else {\n this.router = new ElementRouter({ window: _config.window, firstUrl: _config.path });\n }\n\n this.routerSubscription = this.router.observable.subscribe((route: RouterEventType) => {\n if (route.triggerPoint === 'end') {\n this.routingProcess(route.path);\n }\n });\n const option = new SimOption({\n excludeProxys: [Node],\n rootRouter: _config.rootRouter\n });\n\n this.simpleApplication = new SimpleApplication(option);\n\n // Use 'any' key for Map to allow Abstract classes like Router\n const otherInstanceSim = new Map<any, any>();\n if (this.router) {\n otherInstanceSim.set(Router, this.router);\n }\n this.simpleApplication.run(otherInstanceSim);\n const data = this.simpleApplication.sim(_config.rootRouter);\n if (data instanceof Node) {\n if (this.shadowRoot) {\n this.shadowRoot.replaceChildren(data);\n } else if (!this.contains(data)) {\n this.replaceChildren(data);\n }\n }\n if (_config.path) {\n await this.router?.go(_config.path);\n }\n }\n } catch (e) {\n console.error('[SWC-APP] Failed to execute swc-get-application-config script:', e);\n }\n }\n }\n\n disconnectedCallback() {\n this.routerSubscription?.unsubscribe();\n }\n\n async routing(path: string) {\n await this.router?.go(path);\n }\n\n private async routingProcess(path: string) {\n await this.simpleApplication?.routing(path);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;AAAA,SAAS,+BAA+B;AACxC,SAAS,qBAAqB;AAC9B,SAAS,yBAAyB;AAElC,SAAS,kBAAkB;AAC3B,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B,SAAS,iBAAiB;AAE1B,SAAS,cAA+B;AAIjC,IAAM,cAAN,MAAMA,qBAAoB,wBAAuB;EAKtD,cAAA;AACE,UAAK;EACP;EAEA,MAAM,oBAAiB;AACrB,QAAI,KAAK;AAAgB;AACzB,SAAK,iBAAiB;AAGtB,UAAM,IAAI,QAAQ,aAAW,WAAW,SAAS,CAAC,CAAC;AAEnD,UAAM,uBAAuB,KAAK,aAAa,4BAA4B;AAC3E,QAAI,sBAAsB;AACxB,UAAI;AACF,cAAM,aAAqC,IAAI,SAAS,UAAU,oBAAoB,EAAE,EAAE,MAAM,IAAI;AACpG,YAAI,YAAY;AACd,gBAAM,UAAyB;YAC7B,WAAW;YACX;YACA,GAAG;;AAGL,cAAI,QAAQ,cAAc,QAAQ;AAChC,iBAAK,SAAS,IAAI,WAAW,EAAE,QAAQ,QAAQ,QAAQ,UAAU,QAAQ,KAAI,CAAE;UACjF,WAAW,QAAQ,cAAc,QAAQ;AACvC,iBAAK,SAAS,IAAI,WAAW,EAAE,QAAQ,QAAQ,QAAQ,UAAU,QAAQ,KAAI,CAAE;UACjF,OAAO;AACL,iBAAK,SAAS,IAAI,cAAc,EAAE,QAAQ,QAAQ,QAAQ,UAAU,QAAQ,KAAI,CAAE;UACpF;AAEA,eAAK,qBAAqB,KAAK,OAAO,WAAW,UAAU,CAAC,UAA0B;AACpF,gBAAI,MAAM,iBAAiB,OAAO;AAChC,mBAAK,eAAe,MAAM,IAAI;YAChC;UACF,CAAC;AACD,gBAAM,SAAS,IAAI,UAAU;YAC3B,eAAe,CAAC,IAAI;YACpB,YAAY,QAAQ;WACrB;AAED,eAAK,oBAAoB,IAAI,kBAAkB,MAAM;AAGrD,gBAAM,mBAAmB,oBAAI,IAAG;AAChC,cAAI,KAAK,QAAQ;AACf,6BAAiB,IAAI,QAAQ,KAAK,MAAM;UAC1C;AACA,eAAK,kBAAkB,IAAI,gBAAgB;AAC3C,gBAAM,OAAO,KAAK,kBAAkB,IAAI,QAAQ,UAAU;AAC1D,cAAI,gBAAgB,MAAM;AACxB,gBAAI,KAAK,YAAY;AACnB,mBAAK,WAAW,gBAAgB,IAAI;YACtC,WAAW,CAAC,KAAK,SAAS,IAAI,GAAG;AAC/B,mBAAK,gBAAgB,IAAI;YAC3B;UACF;AACA,cAAI,QAAQ,MAAM;AAChB,kBAAM,KAAK,QAAQ,GAAG,QAAQ,IAAI;UACpC;QACF;MACF,SAAS,GAAG;AACV,gBAAQ,MAAM,kEAAkE,CAAC;MACnF;IACF;EACF;EAEA,uBAAoB;AAClB,SAAK,oBAAoB,YAAW;EACtC;EAEA,MAAM,QAAQ,MAAY;AACxB,UAAM,KAAK,QAAQ,GAAG,IAAI;EAC5B;EAEQ,MAAM,eAAe,MAAY;AACvC,UAAM,KAAK,mBAAmB,QAAQ,IAAI;EAC5C;;AAjFW,cAAW,WAAA;EADvB,cAAc,EAAE,MAAM,iBAAiB,SAAS,QAAO,CAAE;;GAC7C,WAAW;",
6
6
  "names": ["SwcAppTrack"]
7
7
  }
@@ -12,6 +12,7 @@ import { elementDefine } from "../../decorators/elementDefine.js";
12
12
  import { SimpleApplication } from "@dooboostore/simple-boot/SimpleApplication";
13
13
  import { PathRouter } from "@dooboostore/core-web/routers/PathRouter";
14
14
  import { HashRouter } from "@dooboostore/core-web/routers/HashRouter";
15
+ import { ElementRouter } from "../../router/ElementRouter.js";
15
16
  import { SimOption } from "@dooboostore/simple-boot/SimOption";
16
17
  import { Router } from "@dooboostore/core-web/routers/Router";
17
18
  let SwcAppUl = class SwcAppUl2 extends SwcHTMLUListElementBase {
@@ -29,12 +30,18 @@ let SwcAppUl = class SwcAppUl2 extends SwcHTMLUListElementBase {
29
30
  const userConfig = new Function(`return ${applicationConfigStr}`).apply(this);
30
31
  if (userConfig) {
31
32
  const _config = {
32
- routeType: "path",
33
+ routeType: "element",
33
34
  window,
34
35
  ...userConfig
35
36
  };
36
- this._router = _config.routeType === "path" ? new PathRouter({ window: _config.window }) : new HashRouter({ window: _config.window });
37
- this.routerSubscription = this._router.observable.subscribe((route) => {
37
+ if (_config.routeType === "path") {
38
+ this.router = new PathRouter({ window: _config.window, firstUrl: _config.path });
39
+ } else if (_config.routeType === "hash") {
40
+ this.router = new HashRouter({ window: _config.window, firstUrl: _config.path });
41
+ } else {
42
+ this.router = new ElementRouter({ window: _config.window, firstUrl: _config.path });
43
+ }
44
+ this.routerSubscription = this.router.observable.subscribe((route) => {
38
45
  if (route.triggerPoint === "end") {
39
46
  this.routingProcess(route.path);
40
47
  }
@@ -45,8 +52,8 @@ let SwcAppUl = class SwcAppUl2 extends SwcHTMLUListElementBase {
45
52
  });
46
53
  this.simpleApplication = new SimpleApplication(option);
47
54
  const otherInstanceSim = /* @__PURE__ */ new Map();
48
- if (this._router) {
49
- otherInstanceSim.set(Router, this._router);
55
+ if (this.router) {
56
+ otherInstanceSim.set(Router, this.router);
50
57
  }
51
58
  this.simpleApplication.run(otherInstanceSim);
52
59
  const data = this.simpleApplication.sim(_config.rootRouter);
@@ -58,7 +65,7 @@ let SwcAppUl = class SwcAppUl2 extends SwcHTMLUListElementBase {
58
65
  }
59
66
  }
60
67
  if (_config.path) {
61
- await this._router?.go(_config.path);
68
+ await this.router?.go(_config.path);
62
69
  }
63
70
  }
64
71
  } catch (e) {
@@ -70,7 +77,7 @@ let SwcAppUl = class SwcAppUl2 extends SwcHTMLUListElementBase {
70
77
  this.routerSubscription?.unsubscribe();
71
78
  }
72
79
  async routing(path) {
73
- await this._router?.go(path);
80
+ await this.router?.go(path);
74
81
  }
75
82
  async routingProcess(path) {
76
83
  await this.simpleApplication?.routing(path);
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/elements/apps/SwcAppUl.ts"],
4
- "sourcesContent": ["import { SwcHTMLUListElementBase } from '../base/SwcHTMLUListElementBase';\nimport { elementDefine } from '../../decorators/elementDefine';\nimport { SimpleApplication } from '@dooboostore/simple-boot/SimpleApplication';\nimport { SwcAppInterface, SwcConfigType, SwcAttributeConfigType } from '../SwcInterfaces';\nimport { PathRouter } from '@dooboostore/core-web/routers/PathRouter';\nimport { HashRouter } from '@dooboostore/core-web/routers/HashRouter';\nimport { SimOption } from '@dooboostore/simple-boot/SimOption';\nimport { ConstructorType } from '@dooboostore/core/types';\nimport { Router, RouterEventType } from '@dooboostore/core-web/routers/Router';\nimport { Subscription } from '@dooboostore/core/message/Subscription';\n\n@elementDefine({ name: 'swc-app-ul', extends: 'ul' })\nexport class SwcAppUl extends SwcHTMLUListElementBase implements SwcAppInterface {\n public simpleApplication?: SimpleApplication;\n protected _router?: PathRouter | HashRouter;\n private routerSubscription?: Subscription;\n\n constructor() {\n super();\n }\n\n async connectedCallback() {\n if (this._isInitialized) return;\n this._isInitialized = true;\n\n // Push to the end of the event loop to ensure global scripts are evaluated\n await new Promise(resolve => setTimeout(resolve, 0));\n\n const applicationConfigStr = this.getAttribute('swc-get-application-config');\n if (applicationConfigStr) {\n try {\n const userConfig: SwcAttributeConfigType = new Function(`return ${applicationConfigStr}`).apply(this);\n if (userConfig) {\n const _config = {\n routeType: 'path',\n window: window,\n ...userConfig\n };\n\n this._router = _config.routeType === 'path' ? new PathRouter({ window: _config.window }) : new HashRouter({ window: _config.window });\n this.routerSubscription = this._router.observable.subscribe((route: RouterEventType) => {\n if (route.triggerPoint === 'end') {\n this.routingProcess(route.path);\n }\n });\n const option = new SimOption({\n excludeProxys: [Node],\n rootRouter: _config.rootRouter\n });\n\n this.simpleApplication = new SimpleApplication(option);\n\n // Use 'any' key for Map to allow Abstract classes like Router\n const otherInstanceSim = new Map<any, any>();\n if (this._router) {\n otherInstanceSim.set(Router, this._router);\n }\n this.simpleApplication.run(otherInstanceSim);\n const data = this.simpleApplication.sim(_config.rootRouter);\n if (data instanceof Node) {\n if (this.shadowRoot) {\n this.shadowRoot.replaceChildren(data);\n } else if (!this.contains(data)) {\n this.replaceChildren(data);\n }\n }\n if (_config.path) {\n await this._router?.go(_config.path);\n }\n }\n } catch (e) {\n console.error('[SWC-APP] Failed to execute swc-get-application-config script:', e);\n }\n }\n }\n\n disconnectedCallback() {\n this.routerSubscription?.unsubscribe();\n }\n\n async routing(path: string) {\n await this._router?.go(path);\n }\n\n private async routingProcess(path: string) {\n await this.simpleApplication?.routing(path);\n }\n}\n"],
5
- "mappings": ";;;;;;;;;AAAA,SAAS,+BAA+B;AACxC,SAAS,qBAAqB;AAC9B,SAAS,yBAAyB;AAElC,SAAS,kBAAkB;AAC3B,SAAS,kBAAkB;AAC3B,SAAS,iBAAiB;AAE1B,SAAS,cAA+B;AAIjC,IAAM,WAAN,MAAMA,kBAAiB,wBAAuB;EAKnD,cAAA;AACE,UAAK;EACP;EAEA,MAAM,oBAAiB;AACrB,QAAI,KAAK;AAAgB;AACzB,SAAK,iBAAiB;AAGtB,UAAM,IAAI,QAAQ,aAAW,WAAW,SAAS,CAAC,CAAC;AAEnD,UAAM,uBAAuB,KAAK,aAAa,4BAA4B;AAC3E,QAAI,sBAAsB;AACxB,UAAI;AACF,cAAM,aAAqC,IAAI,SAAS,UAAU,oBAAoB,EAAE,EAAE,MAAM,IAAI;AACpG,YAAI,YAAY;AACd,gBAAM,UAAU;YACd,WAAW;YACX;YACA,GAAG;;AAGL,eAAK,UAAU,QAAQ,cAAc,SAAS,IAAI,WAAW,EAAE,QAAQ,QAAQ,OAAM,CAAE,IAAI,IAAI,WAAW,EAAE,QAAQ,QAAQ,OAAM,CAAE;AACpI,eAAK,qBAAqB,KAAK,QAAQ,WAAW,UAAU,CAAC,UAA0B;AACrF,gBAAI,MAAM,iBAAiB,OAAO;AAChC,mBAAK,eAAe,MAAM,IAAI;YAChC;UACF,CAAC;AACD,gBAAM,SAAS,IAAI,UAAU;YAC3B,eAAe,CAAC,IAAI;YACpB,YAAY,QAAQ;WACrB;AAED,eAAK,oBAAoB,IAAI,kBAAkB,MAAM;AAGrD,gBAAM,mBAAmB,oBAAI,IAAG;AAChC,cAAI,KAAK,SAAS;AAChB,6BAAiB,IAAI,QAAQ,KAAK,OAAO;UAC3C;AACA,eAAK,kBAAkB,IAAI,gBAAgB;AAC3C,gBAAM,OAAO,KAAK,kBAAkB,IAAI,QAAQ,UAAU;AAC1D,cAAI,gBAAgB,MAAM;AACxB,gBAAI,KAAK,YAAY;AACnB,mBAAK,WAAW,gBAAgB,IAAI;YACtC,WAAW,CAAC,KAAK,SAAS,IAAI,GAAG;AAC/B,mBAAK,gBAAgB,IAAI;YAC3B;UACF;AACA,cAAI,QAAQ,MAAM;AAChB,kBAAM,KAAK,SAAS,GAAG,QAAQ,IAAI;UACrC;QACF;MACF,SAAS,GAAG;AACV,gBAAQ,MAAM,kEAAkE,CAAC;MACnF;IACF;EACF;EAEA,uBAAoB;AAClB,SAAK,oBAAoB,YAAW;EACtC;EAEA,MAAM,QAAQ,MAAY;AACxB,UAAM,KAAK,SAAS,GAAG,IAAI;EAC7B;EAEQ,MAAM,eAAe,MAAY;AACvC,UAAM,KAAK,mBAAmB,QAAQ,IAAI;EAC5C;;AA1EW,WAAQ,WAAA;EADpB,cAAc,EAAE,MAAM,cAAc,SAAS,KAAI,CAAE;;GACvC,QAAQ;",
4
+ "sourcesContent": ["import { SwcHTMLUListElementBase } from '../base/SwcHTMLUListElementBase';\nimport { elementDefine } from '../../decorators/elementDefine';\nimport { SimpleApplication } from '@dooboostore/simple-boot/SimpleApplication';\nimport { SwcAppInterface, SwcConfigType, SwcAttributeConfigType } from '../SwcInterfaces';\nimport { PathRouter } from '@dooboostore/core-web/routers/PathRouter';\nimport { HashRouter } from '@dooboostore/core-web/routers/HashRouter';\nimport { ElementRouter } from '../../router/ElementRouter';\nimport { SimOption } from '@dooboostore/simple-boot/SimOption';\nimport { ConstructorType } from '@dooboostore/core/types';\nimport { Router, RouterEventType } from '@dooboostore/core-web/routers/Router';\nimport { Subscription } from '@dooboostore/core/message/Subscription';\n\n@elementDefine({ name: 'swc-app-ul', extends: 'ul' })\nexport class SwcAppUl extends SwcHTMLUListElementBase implements SwcAppInterface {\n public simpleApplication?: SimpleApplication;\n public router?: Router;\n private routerSubscription?: Subscription;\n\n constructor() {\n super();\n }\n\n async connectedCallback() {\n if (this._isInitialized) return;\n this._isInitialized = true;\n\n // Push to the end of the event loop to ensure global scripts are evaluated\n await new Promise(resolve => setTimeout(resolve, 0));\n\n const applicationConfigStr = this.getAttribute('swc-get-application-config');\n if (applicationConfigStr) {\n try {\n const userConfig: SwcAttributeConfigType = new Function(`return ${applicationConfigStr}`).apply(this);\n if (userConfig) {\n const _config: SwcConfigType = {\n routeType: 'element',\n window: window,\n ...userConfig\n };\n\n if (_config.routeType === 'path') {\n this.router = new PathRouter({ window: _config.window, firstUrl: _config.path });\n } else if (_config.routeType === 'hash') {\n this.router = new HashRouter({ window: _config.window, firstUrl: _config.path });\n } else {\n this.router = new ElementRouter({ window: _config.window, firstUrl: _config.path });\n }\n\n this.routerSubscription = this.router.observable.subscribe((route: RouterEventType) => {\n if (route.triggerPoint === 'end') {\n this.routingProcess(route.path);\n }\n });\n const option = new SimOption({\n excludeProxys: [Node],\n rootRouter: _config.rootRouter\n });\n\n this.simpleApplication = new SimpleApplication(option);\n\n // Use 'any' key for Map to allow Abstract classes like Router\n const otherInstanceSim = new Map<any, any>();\n if (this.router) {\n otherInstanceSim.set(Router, this.router);\n }\n this.simpleApplication.run(otherInstanceSim);\n const data = this.simpleApplication.sim(_config.rootRouter);\n if (data instanceof Node) {\n if (this.shadowRoot) {\n this.shadowRoot.replaceChildren(data);\n } else if (!this.contains(data)) {\n this.replaceChildren(data);\n }\n }\n if (_config.path) {\n await this.router?.go(_config.path);\n }\n }\n } catch (e) {\n console.error('[SWC-APP] Failed to execute swc-get-application-config script:', e);\n }\n }\n }\n\n disconnectedCallback() {\n this.routerSubscription?.unsubscribe();\n }\n\n async routing(path: string) {\n await this.router?.go(path);\n }\n\n private async routingProcess(path: string) {\n await this.simpleApplication?.routing(path);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;AAAA,SAAS,+BAA+B;AACxC,SAAS,qBAAqB;AAC9B,SAAS,yBAAyB;AAElC,SAAS,kBAAkB;AAC3B,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B,SAAS,iBAAiB;AAE1B,SAAS,cAA+B;AAIjC,IAAM,WAAN,MAAMA,kBAAiB,wBAAuB;EAKnD,cAAA;AACE,UAAK;EACP;EAEA,MAAM,oBAAiB;AACrB,QAAI,KAAK;AAAgB;AACzB,SAAK,iBAAiB;AAGtB,UAAM,IAAI,QAAQ,aAAW,WAAW,SAAS,CAAC,CAAC;AAEnD,UAAM,uBAAuB,KAAK,aAAa,4BAA4B;AAC3E,QAAI,sBAAsB;AACxB,UAAI;AACF,cAAM,aAAqC,IAAI,SAAS,UAAU,oBAAoB,EAAE,EAAE,MAAM,IAAI;AACpG,YAAI,YAAY;AACd,gBAAM,UAAyB;YAC7B,WAAW;YACX;YACA,GAAG;;AAGL,cAAI,QAAQ,cAAc,QAAQ;AAChC,iBAAK,SAAS,IAAI,WAAW,EAAE,QAAQ,QAAQ,QAAQ,UAAU,QAAQ,KAAI,CAAE;UACjF,WAAW,QAAQ,cAAc,QAAQ;AACvC,iBAAK,SAAS,IAAI,WAAW,EAAE,QAAQ,QAAQ,QAAQ,UAAU,QAAQ,KAAI,CAAE;UACjF,OAAO;AACL,iBAAK,SAAS,IAAI,cAAc,EAAE,QAAQ,QAAQ,QAAQ,UAAU,QAAQ,KAAI,CAAE;UACpF;AAEA,eAAK,qBAAqB,KAAK,OAAO,WAAW,UAAU,CAAC,UAA0B;AACpF,gBAAI,MAAM,iBAAiB,OAAO;AAChC,mBAAK,eAAe,MAAM,IAAI;YAChC;UACF,CAAC;AACD,gBAAM,SAAS,IAAI,UAAU;YAC3B,eAAe,CAAC,IAAI;YACpB,YAAY,QAAQ;WACrB;AAED,eAAK,oBAAoB,IAAI,kBAAkB,MAAM;AAGrD,gBAAM,mBAAmB,oBAAI,IAAG;AAChC,cAAI,KAAK,QAAQ;AACf,6BAAiB,IAAI,QAAQ,KAAK,MAAM;UAC1C;AACA,eAAK,kBAAkB,IAAI,gBAAgB;AAC3C,gBAAM,OAAO,KAAK,kBAAkB,IAAI,QAAQ,UAAU;AAC1D,cAAI,gBAAgB,MAAM;AACxB,gBAAI,KAAK,YAAY;AACnB,mBAAK,WAAW,gBAAgB,IAAI;YACtC,WAAW,CAAC,KAAK,SAAS,IAAI,GAAG;AAC/B,mBAAK,gBAAgB,IAAI;YAC3B;UACF;AACA,cAAI,QAAQ,MAAM;AAChB,kBAAM,KAAK,QAAQ,GAAG,QAAQ,IAAI;UACpC;QACF;MACF,SAAS,GAAG;AACV,gBAAQ,MAAM,kEAAkE,CAAC;MACnF;IACF;EACF;EAEA,uBAAoB;AAClB,SAAK,oBAAoB,YAAW;EACtC;EAEA,MAAM,QAAQ,MAAY;AACxB,UAAM,KAAK,QAAQ,GAAG,IAAI;EAC5B;EAEQ,MAAM,eAAe,MAAY;AACvC,UAAM,KAAK,mBAAmB,QAAQ,IAAI;EAC5C;;AAjFW,WAAQ,WAAA;EADpB,cAAc,EAAE,MAAM,cAAc,SAAS,KAAI,CAAE;;GACvC,QAAQ;",
6
6
  "names": ["SwcAppUl"]
7
7
  }
@@ -12,6 +12,7 @@ import { elementDefine } from "../../decorators/elementDefine.js";
12
12
  import { SimpleApplication } from "@dooboostore/simple-boot/SimpleApplication";
13
13
  import { PathRouter } from "@dooboostore/core-web/routers/PathRouter";
14
14
  import { HashRouter } from "@dooboostore/core-web/routers/HashRouter";
15
+ import { ElementRouter } from "../../router/ElementRouter.js";
15
16
  import { SimOption } from "@dooboostore/simple-boot/SimOption";
16
17
  import { Router } from "@dooboostore/core-web/routers/Router";
17
18
  let SwcAppVideo = class SwcAppVideo2 extends SwcHTMLVideoElementBase {
@@ -29,12 +30,18 @@ let SwcAppVideo = class SwcAppVideo2 extends SwcHTMLVideoElementBase {
29
30
  const userConfig = new Function(`return ${applicationConfigStr}`).apply(this);
30
31
  if (userConfig) {
31
32
  const _config = {
32
- routeType: "path",
33
+ routeType: "element",
33
34
  window,
34
35
  ...userConfig
35
36
  };
36
- this._router = _config.routeType === "path" ? new PathRouter({ window: _config.window }) : new HashRouter({ window: _config.window });
37
- this.routerSubscription = this._router.observable.subscribe((route) => {
37
+ if (_config.routeType === "path") {
38
+ this.router = new PathRouter({ window: _config.window, firstUrl: _config.path });
39
+ } else if (_config.routeType === "hash") {
40
+ this.router = new HashRouter({ window: _config.window, firstUrl: _config.path });
41
+ } else {
42
+ this.router = new ElementRouter({ window: _config.window, firstUrl: _config.path });
43
+ }
44
+ this.routerSubscription = this.router.observable.subscribe((route) => {
38
45
  if (route.triggerPoint === "end") {
39
46
  this.routingProcess(route.path);
40
47
  }
@@ -45,8 +52,8 @@ let SwcAppVideo = class SwcAppVideo2 extends SwcHTMLVideoElementBase {
45
52
  });
46
53
  this.simpleApplication = new SimpleApplication(option);
47
54
  const otherInstanceSim = /* @__PURE__ */ new Map();
48
- if (this._router) {
49
- otherInstanceSim.set(Router, this._router);
55
+ if (this.router) {
56
+ otherInstanceSim.set(Router, this.router);
50
57
  }
51
58
  this.simpleApplication.run(otherInstanceSim);
52
59
  const data = this.simpleApplication.sim(_config.rootRouter);
@@ -58,7 +65,7 @@ let SwcAppVideo = class SwcAppVideo2 extends SwcHTMLVideoElementBase {
58
65
  }
59
66
  }
60
67
  if (_config.path) {
61
- await this._router?.go(_config.path);
68
+ await this.router?.go(_config.path);
62
69
  }
63
70
  }
64
71
  } catch (e) {
@@ -70,7 +77,7 @@ let SwcAppVideo = class SwcAppVideo2 extends SwcHTMLVideoElementBase {
70
77
  this.routerSubscription?.unsubscribe();
71
78
  }
72
79
  async routing(path) {
73
- await this._router?.go(path);
80
+ await this.router?.go(path);
74
81
  }
75
82
  async routingProcess(path) {
76
83
  await this.simpleApplication?.routing(path);
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/elements/apps/SwcAppVideo.ts"],
4
- "sourcesContent": ["import { SwcHTMLVideoElementBase } from '../base/SwcHTMLVideoElementBase';\nimport { elementDefine } from '../../decorators/elementDefine';\nimport { SimpleApplication } from '@dooboostore/simple-boot/SimpleApplication';\nimport { SwcAppInterface, SwcConfigType, SwcAttributeConfigType } from '../SwcInterfaces';\nimport { PathRouter } from '@dooboostore/core-web/routers/PathRouter';\nimport { HashRouter } from '@dooboostore/core-web/routers/HashRouter';\nimport { SimOption } from '@dooboostore/simple-boot/SimOption';\nimport { ConstructorType } from '@dooboostore/core/types';\nimport { Router, RouterEventType } from '@dooboostore/core-web/routers/Router';\nimport { Subscription } from '@dooboostore/core/message/Subscription';\n\n@elementDefine({ name: 'swc-app-video', extends: 'video' })\nexport class SwcAppVideo extends SwcHTMLVideoElementBase implements SwcAppInterface {\n public simpleApplication?: SimpleApplication;\n protected _router?: PathRouter | HashRouter;\n private routerSubscription?: Subscription;\n\n constructor() {\n super();\n }\n\n async connectedCallback() {\n if (this._isInitialized) return;\n this._isInitialized = true;\n\n // Push to the end of the event loop to ensure global scripts are evaluated\n await new Promise(resolve => setTimeout(resolve, 0));\n\n const applicationConfigStr = this.getAttribute('swc-get-application-config');\n if (applicationConfigStr) {\n try {\n const userConfig: SwcAttributeConfigType = new Function(`return ${applicationConfigStr}`).apply(this);\n if (userConfig) {\n const _config = {\n routeType: 'path',\n window: window,\n ...userConfig\n };\n\n this._router = _config.routeType === 'path' ? new PathRouter({ window: _config.window }) : new HashRouter({ window: _config.window });\n this.routerSubscription = this._router.observable.subscribe((route: RouterEventType) => {\n if (route.triggerPoint === 'end') {\n this.routingProcess(route.path);\n }\n });\n const option = new SimOption({\n excludeProxys: [Node],\n rootRouter: _config.rootRouter\n });\n\n this.simpleApplication = new SimpleApplication(option);\n\n // Use 'any' key for Map to allow Abstract classes like Router\n const otherInstanceSim = new Map<any, any>();\n if (this._router) {\n otherInstanceSim.set(Router, this._router);\n }\n this.simpleApplication.run(otherInstanceSim);\n const data = this.simpleApplication.sim(_config.rootRouter);\n if (data instanceof Node) {\n if (this.shadowRoot) {\n this.shadowRoot.replaceChildren(data);\n } else if (!this.contains(data)) {\n this.replaceChildren(data);\n }\n }\n if (_config.path) {\n await this._router?.go(_config.path);\n }\n }\n } catch (e) {\n console.error('[SWC-APP] Failed to execute swc-get-application-config script:', e);\n }\n }\n }\n\n disconnectedCallback() {\n this.routerSubscription?.unsubscribe();\n }\n\n async routing(path: string) {\n await this._router?.go(path);\n }\n\n private async routingProcess(path: string) {\n await this.simpleApplication?.routing(path);\n }\n}\n"],
5
- "mappings": ";;;;;;;;;AAAA,SAAS,+BAA+B;AACxC,SAAS,qBAAqB;AAC9B,SAAS,yBAAyB;AAElC,SAAS,kBAAkB;AAC3B,SAAS,kBAAkB;AAC3B,SAAS,iBAAiB;AAE1B,SAAS,cAA+B;AAIjC,IAAM,cAAN,MAAMA,qBAAoB,wBAAuB;EAKtD,cAAA;AACE,UAAK;EACP;EAEA,MAAM,oBAAiB;AACrB,QAAI,KAAK;AAAgB;AACzB,SAAK,iBAAiB;AAGtB,UAAM,IAAI,QAAQ,aAAW,WAAW,SAAS,CAAC,CAAC;AAEnD,UAAM,uBAAuB,KAAK,aAAa,4BAA4B;AAC3E,QAAI,sBAAsB;AACxB,UAAI;AACF,cAAM,aAAqC,IAAI,SAAS,UAAU,oBAAoB,EAAE,EAAE,MAAM,IAAI;AACpG,YAAI,YAAY;AACd,gBAAM,UAAU;YACd,WAAW;YACX;YACA,GAAG;;AAGL,eAAK,UAAU,QAAQ,cAAc,SAAS,IAAI,WAAW,EAAE,QAAQ,QAAQ,OAAM,CAAE,IAAI,IAAI,WAAW,EAAE,QAAQ,QAAQ,OAAM,CAAE;AACpI,eAAK,qBAAqB,KAAK,QAAQ,WAAW,UAAU,CAAC,UAA0B;AACrF,gBAAI,MAAM,iBAAiB,OAAO;AAChC,mBAAK,eAAe,MAAM,IAAI;YAChC;UACF,CAAC;AACD,gBAAM,SAAS,IAAI,UAAU;YAC3B,eAAe,CAAC,IAAI;YACpB,YAAY,QAAQ;WACrB;AAED,eAAK,oBAAoB,IAAI,kBAAkB,MAAM;AAGrD,gBAAM,mBAAmB,oBAAI,IAAG;AAChC,cAAI,KAAK,SAAS;AAChB,6BAAiB,IAAI,QAAQ,KAAK,OAAO;UAC3C;AACA,eAAK,kBAAkB,IAAI,gBAAgB;AAC3C,gBAAM,OAAO,KAAK,kBAAkB,IAAI,QAAQ,UAAU;AAC1D,cAAI,gBAAgB,MAAM;AACxB,gBAAI,KAAK,YAAY;AACnB,mBAAK,WAAW,gBAAgB,IAAI;YACtC,WAAW,CAAC,KAAK,SAAS,IAAI,GAAG;AAC/B,mBAAK,gBAAgB,IAAI;YAC3B;UACF;AACA,cAAI,QAAQ,MAAM;AAChB,kBAAM,KAAK,SAAS,GAAG,QAAQ,IAAI;UACrC;QACF;MACF,SAAS,GAAG;AACV,gBAAQ,MAAM,kEAAkE,CAAC;MACnF;IACF;EACF;EAEA,uBAAoB;AAClB,SAAK,oBAAoB,YAAW;EACtC;EAEA,MAAM,QAAQ,MAAY;AACxB,UAAM,KAAK,SAAS,GAAG,IAAI;EAC7B;EAEQ,MAAM,eAAe,MAAY;AACvC,UAAM,KAAK,mBAAmB,QAAQ,IAAI;EAC5C;;AA1EW,cAAW,WAAA;EADvB,cAAc,EAAE,MAAM,iBAAiB,SAAS,QAAO,CAAE;;GAC7C,WAAW;",
4
+ "sourcesContent": ["import { SwcHTMLVideoElementBase } from '../base/SwcHTMLVideoElementBase';\nimport { elementDefine } from '../../decorators/elementDefine';\nimport { SimpleApplication } from '@dooboostore/simple-boot/SimpleApplication';\nimport { SwcAppInterface, SwcConfigType, SwcAttributeConfigType } from '../SwcInterfaces';\nimport { PathRouter } from '@dooboostore/core-web/routers/PathRouter';\nimport { HashRouter } from '@dooboostore/core-web/routers/HashRouter';\nimport { ElementRouter } from '../../router/ElementRouter';\nimport { SimOption } from '@dooboostore/simple-boot/SimOption';\nimport { ConstructorType } from '@dooboostore/core/types';\nimport { Router, RouterEventType } from '@dooboostore/core-web/routers/Router';\nimport { Subscription } from '@dooboostore/core/message/Subscription';\n\n@elementDefine({ name: 'swc-app-video', extends: 'video' })\nexport class SwcAppVideo extends SwcHTMLVideoElementBase implements SwcAppInterface {\n public simpleApplication?: SimpleApplication;\n public router?: Router;\n private routerSubscription?: Subscription;\n\n constructor() {\n super();\n }\n\n async connectedCallback() {\n if (this._isInitialized) return;\n this._isInitialized = true;\n\n // Push to the end of the event loop to ensure global scripts are evaluated\n await new Promise(resolve => setTimeout(resolve, 0));\n\n const applicationConfigStr = this.getAttribute('swc-get-application-config');\n if (applicationConfigStr) {\n try {\n const userConfig: SwcAttributeConfigType = new Function(`return ${applicationConfigStr}`).apply(this);\n if (userConfig) {\n const _config: SwcConfigType = {\n routeType: 'element',\n window: window,\n ...userConfig\n };\n\n if (_config.routeType === 'path') {\n this.router = new PathRouter({ window: _config.window, firstUrl: _config.path });\n } else if (_config.routeType === 'hash') {\n this.router = new HashRouter({ window: _config.window, firstUrl: _config.path });\n } else {\n this.router = new ElementRouter({ window: _config.window, firstUrl: _config.path });\n }\n\n this.routerSubscription = this.router.observable.subscribe((route: RouterEventType) => {\n if (route.triggerPoint === 'end') {\n this.routingProcess(route.path);\n }\n });\n const option = new SimOption({\n excludeProxys: [Node],\n rootRouter: _config.rootRouter\n });\n\n this.simpleApplication = new SimpleApplication(option);\n\n // Use 'any' key for Map to allow Abstract classes like Router\n const otherInstanceSim = new Map<any, any>();\n if (this.router) {\n otherInstanceSim.set(Router, this.router);\n }\n this.simpleApplication.run(otherInstanceSim);\n const data = this.simpleApplication.sim(_config.rootRouter);\n if (data instanceof Node) {\n if (this.shadowRoot) {\n this.shadowRoot.replaceChildren(data);\n } else if (!this.contains(data)) {\n this.replaceChildren(data);\n }\n }\n if (_config.path) {\n await this.router?.go(_config.path);\n }\n }\n } catch (e) {\n console.error('[SWC-APP] Failed to execute swc-get-application-config script:', e);\n }\n }\n }\n\n disconnectedCallback() {\n this.routerSubscription?.unsubscribe();\n }\n\n async routing(path: string) {\n await this.router?.go(path);\n }\n\n private async routingProcess(path: string) {\n await this.simpleApplication?.routing(path);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;AAAA,SAAS,+BAA+B;AACxC,SAAS,qBAAqB;AAC9B,SAAS,yBAAyB;AAElC,SAAS,kBAAkB;AAC3B,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B,SAAS,iBAAiB;AAE1B,SAAS,cAA+B;AAIjC,IAAM,cAAN,MAAMA,qBAAoB,wBAAuB;EAKtD,cAAA;AACE,UAAK;EACP;EAEA,MAAM,oBAAiB;AACrB,QAAI,KAAK;AAAgB;AACzB,SAAK,iBAAiB;AAGtB,UAAM,IAAI,QAAQ,aAAW,WAAW,SAAS,CAAC,CAAC;AAEnD,UAAM,uBAAuB,KAAK,aAAa,4BAA4B;AAC3E,QAAI,sBAAsB;AACxB,UAAI;AACF,cAAM,aAAqC,IAAI,SAAS,UAAU,oBAAoB,EAAE,EAAE,MAAM,IAAI;AACpG,YAAI,YAAY;AACd,gBAAM,UAAyB;YAC7B,WAAW;YACX;YACA,GAAG;;AAGL,cAAI,QAAQ,cAAc,QAAQ;AAChC,iBAAK,SAAS,IAAI,WAAW,EAAE,QAAQ,QAAQ,QAAQ,UAAU,QAAQ,KAAI,CAAE;UACjF,WAAW,QAAQ,cAAc,QAAQ;AACvC,iBAAK,SAAS,IAAI,WAAW,EAAE,QAAQ,QAAQ,QAAQ,UAAU,QAAQ,KAAI,CAAE;UACjF,OAAO;AACL,iBAAK,SAAS,IAAI,cAAc,EAAE,QAAQ,QAAQ,QAAQ,UAAU,QAAQ,KAAI,CAAE;UACpF;AAEA,eAAK,qBAAqB,KAAK,OAAO,WAAW,UAAU,CAAC,UAA0B;AACpF,gBAAI,MAAM,iBAAiB,OAAO;AAChC,mBAAK,eAAe,MAAM,IAAI;YAChC;UACF,CAAC;AACD,gBAAM,SAAS,IAAI,UAAU;YAC3B,eAAe,CAAC,IAAI;YACpB,YAAY,QAAQ;WACrB;AAED,eAAK,oBAAoB,IAAI,kBAAkB,MAAM;AAGrD,gBAAM,mBAAmB,oBAAI,IAAG;AAChC,cAAI,KAAK,QAAQ;AACf,6BAAiB,IAAI,QAAQ,KAAK,MAAM;UAC1C;AACA,eAAK,kBAAkB,IAAI,gBAAgB;AAC3C,gBAAM,OAAO,KAAK,kBAAkB,IAAI,QAAQ,UAAU;AAC1D,cAAI,gBAAgB,MAAM;AACxB,gBAAI,KAAK,YAAY;AACnB,mBAAK,WAAW,gBAAgB,IAAI;YACtC,WAAW,CAAC,KAAK,SAAS,IAAI,GAAG;AAC/B,mBAAK,gBAAgB,IAAI;YAC3B;UACF;AACA,cAAI,QAAQ,MAAM;AAChB,kBAAM,KAAK,QAAQ,GAAG,QAAQ,IAAI;UACpC;QACF;MACF,SAAS,GAAG;AACV,gBAAQ,MAAM,kEAAkE,CAAC;MACnF;IACF;EACF;EAEA,uBAAoB;AAClB,SAAK,oBAAoB,YAAW;EACtC;EAEA,MAAM,QAAQ,MAAY;AACxB,UAAM,KAAK,QAAQ,GAAG,IAAI;EAC5B;EAEQ,MAAM,eAAe,MAAY;AACvC,UAAM,KAAK,mBAAmB,QAAQ,IAAI;EAC5C;;AAjFW,cAAW,WAAA;EADvB,cAAc,EAAE,MAAM,iBAAiB,SAAS,QAAO,CAAE;;GAC7C,WAAW;",
6
6
  "names": ["SwcAppVideo"]
7
7
  }
@@ -0,0 +1,153 @@
1
+ import { Router } from "@dooboostore/core-web/routers/Router";
2
+ import { UrlUtils } from "@dooboostore/core/url/UrlUtils";
3
+ class ElementRouter extends Router {
4
+ constructor(config) {
5
+ const { firstUrl, ...rest } = config;
6
+ super(rest);
7
+ this._history = [];
8
+ this._currentIndex = -1;
9
+ const startUrl = firstUrl ?? "/";
10
+ this._history = [{ url: startUrl, data: null }];
11
+ this._currentIndex = 0;
12
+ if (firstUrl) {
13
+ this.replace(firstUrl, { config: { noEventAndPublish: true } });
14
+ }
15
+ }
16
+ // Override pushState to manage internal history
17
+ pushState(data, title, path, config) {
18
+ const behaviorSubject = this.behaviorSubject;
19
+ if (!config?.noEventAndPublish && behaviorSubject) {
20
+ behaviorSubject.next({ ...this.getRouteData({ pathOrUrl: path }), triggerPoint: "start" });
21
+ }
22
+ if (!this._history) this._history = [];
23
+ this._history = this._history.slice(0, this._currentIndex + 1);
24
+ this._history.push({ url: path, data, title });
25
+ this._currentIndex++;
26
+ if (!config?.noEventAndPublish && behaviorSubject) {
27
+ behaviorSubject.next({ ...this.getRouteData({ pathOrUrl: path }), triggerPoint: "end" });
28
+ }
29
+ return { data };
30
+ }
31
+ // Override replaceState to manage internal history
32
+ replaceState(data, title, path, config) {
33
+ const behaviorSubject = this.behaviorSubject;
34
+ if (!config?.noEventAndPublish && behaviorSubject) {
35
+ behaviorSubject.next({ ...this.getRouteData({ pathOrUrl: path }), triggerPoint: "start" });
36
+ }
37
+ if (!this._history) this._history = [];
38
+ if (this._currentIndex === -1) {
39
+ this._history.push({ url: path, data, title });
40
+ this._currentIndex = 0;
41
+ } else {
42
+ this._history[this._currentIndex] = { url: path, data, title };
43
+ }
44
+ if (!config?.noEventAndPublish && behaviorSubject) {
45
+ behaviorSubject.next({ ...this.getRouteData({ pathOrUrl: path }), triggerPoint: "end" });
46
+ }
47
+ return { data };
48
+ }
49
+ push(path, state) {
50
+ this.pushState(state?.data, state?.title, this.toUrl(path), state?.config);
51
+ }
52
+ replace(path, state) {
53
+ this.replaceState(state?.data, state?.title, this.toUrl(path), state?.config);
54
+ }
55
+ back(config) {
56
+ if (this._currentIndex > 0) {
57
+ this.go(-1, config);
58
+ }
59
+ }
60
+ forward(config) {
61
+ if (this._currentIndex < this._history.length - 1) {
62
+ this.go(1, config);
63
+ }
64
+ }
65
+ go(config, changeStateConfig) {
66
+ if (typeof config === "number") {
67
+ const targetIndex = this._currentIndex + config;
68
+ if (this._history && targetIndex >= 0 && targetIndex < this._history.length) {
69
+ const behaviorSubject = this.behaviorSubject;
70
+ if (!changeStateConfig?.noEventAndPublish && behaviorSubject) {
71
+ behaviorSubject.next({ ...this.getRouteData(), triggerPoint: "start" });
72
+ }
73
+ this._currentIndex = targetIndex;
74
+ const entry = this._history[this._currentIndex];
75
+ if (!changeStateConfig?.noEventAndPublish && behaviorSubject) {
76
+ behaviorSubject.next({ ...this.getRouteData({ pathOrUrl: entry.url }), triggerPoint: "end" });
77
+ }
78
+ }
79
+ return;
80
+ }
81
+ return super.go(config, changeStateConfig);
82
+ }
83
+ getData() {
84
+ return this._history?.[this._currentIndex]?.data;
85
+ }
86
+ getUrl() {
87
+ return this._history?.[this._currentIndex]?.url ?? this.config?.firstUrl ?? "/";
88
+ }
89
+ getHref() {
90
+ return this.getUrl();
91
+ }
92
+ getPathName() {
93
+ return this.getUrl().split("?")[0];
94
+ }
95
+ getSearch() {
96
+ const parts = this.getUrl().split("?");
97
+ return parts[1] ? `?${parts[1]}` : "";
98
+ }
99
+ getSearchParams(data) {
100
+ const search = this.getSearch();
101
+ const searchParams = new URLSearchParams(search);
102
+ return UrlUtils.manipulateSearchParams(searchParams, data);
103
+ }
104
+ getHashSearchParams(data) {
105
+ const url = this.getUrl();
106
+ const hashIdx = url.indexOf("#");
107
+ const hash = hashIdx !== -1 ? url.slice(hashIdx + 1) : "";
108
+ const searchParams = new URLSearchParams(hash);
109
+ return UrlUtils.manipulateSearchParams(searchParams, data);
110
+ }
111
+ pushAddSearchParam(params, state) {
112
+ const s = this.getSearchParams({ append: params });
113
+ this.push({ searchParams: s }, state);
114
+ }
115
+ pushDeleteHashSearchParam(name, state) {
116
+ const s = this.getHashSearchParams({ delete: Array.isArray(name) ? name : [name] });
117
+ const url = this.getUrl().split("#")[0];
118
+ const size = Array.from(s.entries()).length;
119
+ this.push(url + (size > 0 ? "#" + s.toString() : ""), state);
120
+ }
121
+ pushDeleteSearchParam(name, state) {
122
+ const s = this.getSearchParams({ delete: Array.isArray(name) ? name : [name] });
123
+ this.push({ searchParams: s }, state);
124
+ }
125
+ pushUpsertSearchParam(params, state) {
126
+ const s = this.getSearchParams();
127
+ UrlUtils.upsertSearchParam(s, params);
128
+ this.push({ searchParams: s }, state);
129
+ }
130
+ replaceAddSearchParam(params, state) {
131
+ const s = this.getSearchParams({ append: params });
132
+ this.replace({ searchParams: s }, state);
133
+ }
134
+ replaceDeleteHashSearchParam(name, state) {
135
+ const s = this.getHashSearchParams({ delete: Array.isArray(name) ? name : [name] });
136
+ const url = this.getUrl().split("#")[0];
137
+ const size = Array.from(s.entries()).length;
138
+ this.replace(url + (size > 0 ? "#" + s.toString() : ""), state);
139
+ }
140
+ replaceDeleteSearchParam(name, state) {
141
+ const s = this.getSearchParams({ delete: Array.isArray(name) ? name : [name] });
142
+ this.replace({ searchParams: s }, state);
143
+ }
144
+ replaceUpsertSearchParam(params, state) {
145
+ const s = this.getSearchParamObject();
146
+ UrlUtils.upsertSearchParam(s, params);
147
+ this.replace({ searchParams: s }, state);
148
+ }
149
+ }
150
+ export {
151
+ ElementRouter
152
+ };
153
+ //# sourceMappingURL=ElementRouter.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/router/ElementRouter.ts"],
4
+ "sourcesContent": ["import { ChangeStateConfig, ChangeStateResult, RouteAction, Router, RouterConfig, RouterMethodOptions } from '@dooboostore/core-web/routers/Router';\nimport { UrlUtils } from '@dooboostore/core/url/UrlUtils';\n\nexport class ElementRouter extends Router {\n private _history: { url: string; data: any; title?: string }[] = [];\n private _currentIndex = -1;\n\n constructor(config: RouterConfig) {\n // Router \uBD80\uBAA8 \uD074\uB798\uC2A4\uAC00 \uC0DD\uC131\uC790\uC5D0\uC11C go()\uB97C \uD638\uCD9C\uD558\uC5EC \uCD08\uAE30\uD654\uB418\uC9C0 \uC54A\uC740 \uD544\uB4DC\uC5D0 \uC811\uADFC\uD558\uB294 \uAC83\uC744 \uBC29\uC9C0\uD558\uAE30 \uC704\uD574\n // firstUrl\uC744 \uC81C\uAC70\uD558\uACE0 \uB118\uAE34 \uB4A4 \uC790\uC2DD\uC5D0\uC11C \uC218\uB3D9 \uCC98\uB9AC\uD569\uB2C8\uB2E4.\n const { firstUrl, ...rest } = config;\n super(rest);\n\n const startUrl = firstUrl ?? '/';\n this._history = [{ url: startUrl, data: null }];\n this._currentIndex = 0;\n\n if (firstUrl) {\n this.replace(firstUrl, { config: { noEventAndPublish: true } });\n }\n }\n\n // Override pushState to manage internal history\n pushState(data: any, title: string | undefined, path: string, config?: ChangeStateConfig): ChangeStateResult {\n const behaviorSubject = (this as any).behaviorSubject;\n if (!config?.noEventAndPublish && behaviorSubject) {\n behaviorSubject.next({ ...this.getRouteData({ pathOrUrl: path }), triggerPoint: 'start' });\n }\n\n // Ensure _history is initialized (defense for super calls)\n if (!this._history) this._history = [];\n\n this._history = this._history.slice(0, this._currentIndex + 1);\n this._history.push({ url: path, data, title });\n this._currentIndex++;\n\n if (!config?.noEventAndPublish && behaviorSubject) {\n behaviorSubject.next({ ...this.getRouteData({ pathOrUrl: path }), triggerPoint: 'end' });\n }\n return { data };\n }\n\n // Override replaceState to manage internal history\n replaceState(data: any, title: string | undefined, path: string, config?: ChangeStateConfig): ChangeStateResult {\n const behaviorSubject = (this as any).behaviorSubject;\n if (!config?.noEventAndPublish && behaviorSubject) {\n behaviorSubject.next({ ...this.getRouteData({ pathOrUrl: path }), triggerPoint: 'start' });\n }\n\n if (!this._history) this._history = [];\n if (this._currentIndex === -1) {\n this._history.push({ url: path, data, title });\n this._currentIndex = 0;\n } else {\n this._history[this._currentIndex] = { url: path, data, title };\n }\n\n if (!config?.noEventAndPublish && behaviorSubject) {\n behaviorSubject.next({ ...this.getRouteData({ pathOrUrl: path }), triggerPoint: 'end' });\n }\n return { data };\n }\n\n push(path: RouteAction, state?: RouterMethodOptions): void {\n this.pushState(state?.data, state?.title, this.toUrl(path), state?.config);\n }\n\n replace(path: RouteAction, state?: RouterMethodOptions): void {\n this.replaceState(state?.data, state?.title, this.toUrl(path), state?.config);\n }\n\n back(config?: ChangeStateConfig): void {\n if (this._currentIndex > 0) {\n this.go(-1, config);\n }\n }\n\n forward(config?: ChangeStateConfig): void {\n if (this._currentIndex < this._history.length - 1) {\n this.go(1, config);\n }\n }\n\n go(i: number, config?: ChangeStateConfig): void;\n async go(config: string | { path: RouteAction; state?: RouterMethodOptions; replace?: boolean; scrollToTop?: boolean }): Promise<void>;\n go(config: number | string | { path: RouteAction; state?: RouterMethodOptions; replace?: boolean; scrollToTop?: boolean }, changeStateConfig?: ChangeStateConfig): Promise<void> | void {\n if (typeof config === 'number') {\n const targetIndex = this._currentIndex + config;\n if (this._history && targetIndex >= 0 && targetIndex < this._history.length) {\n const behaviorSubject = (this as any).behaviorSubject;\n if (!changeStateConfig?.noEventAndPublish && behaviorSubject) {\n behaviorSubject.next({ ...this.getRouteData(), triggerPoint: 'start' });\n }\n\n this._currentIndex = targetIndex;\n const entry = this._history[this._currentIndex];\n\n if (!changeStateConfig?.noEventAndPublish && behaviorSubject) {\n behaviorSubject.next({ ...this.getRouteData({ pathOrUrl: entry.url }), triggerPoint: 'end' });\n }\n }\n return;\n }\n return super.go(config as any, changeStateConfig);\n }\n\n getData(): any {\n return this._history?.[this._currentIndex]?.data;\n }\n\n getUrl(): string {\n return this._history?.[this._currentIndex]?.url ?? this.config?.firstUrl ?? '/';\n }\n\n getHref(): string {\n return this.getUrl();\n }\n\n getPathName(): string {\n return this.getUrl().split('?')[0];\n }\n\n getSearch(): string {\n const parts = this.getUrl().split('?');\n return parts[1] ? `?${parts[1]}` : '';\n }\n\n getSearchParams(data?: { delete?: string[]; append?: [[string, string]] }): URLSearchParams {\n const search = this.getSearch();\n const searchParams = new URLSearchParams(search);\n return UrlUtils.manipulateSearchParams(searchParams, data);\n }\n\n getHashSearchParams(data?: { delete?: string[]; append?: [[string, string]] }): URLSearchParams {\n const url = this.getUrl();\n const hashIdx = url.indexOf('#');\n const hash = hashIdx !== -1 ? url.slice(hashIdx + 1) : '';\n const searchParams = new URLSearchParams(hash);\n return UrlUtils.manipulateSearchParams(searchParams, data);\n }\n\n pushAddSearchParam(params: [[string, string]], state: RouterMethodOptions | undefined): void {\n const s = this.getSearchParams({ append: params });\n this.push({ searchParams: s }, state);\n }\n\n pushDeleteHashSearchParam(name: string | string[], state: RouterMethodOptions | undefined): void {\n const s = this.getHashSearchParams({ delete: Array.isArray(name) ? name : [name] });\n const url = this.getUrl().split('#')[0];\n const size = Array.from(s.entries()).length;\n this.push(url + (size > 0 ? '#' + s.toString() : ''), state);\n }\n\n pushDeleteSearchParam(name: string | string[], state: RouterMethodOptions | undefined): void {\n const s = this.getSearchParams({ delete: Array.isArray(name) ? name : [name] });\n this.push({ searchParams: s }, state);\n }\n\n pushUpsertSearchParam(params: Record<string, string | string[]>, state: RouterMethodOptions | undefined): void {\n const s = this.getSearchParams();\n UrlUtils.upsertSearchParam(s, params);\n this.push({ searchParams: s }, state);\n }\n\n replaceAddSearchParam(params: [[string, string]], state: RouterMethodOptions | undefined): void {\n const s = this.getSearchParams({ append: params });\n this.replace({ searchParams: s }, state);\n }\n\n replaceDeleteHashSearchParam(name: string | string[], state: RouterMethodOptions | undefined): void {\n const s = this.getHashSearchParams({ delete: Array.isArray(name) ? name : [name] });\n const url = this.getUrl().split('#')[0];\n const size = Array.from(s.entries()).length;\n this.replace(url + (size > 0 ? '#' + s.toString() : ''), state);\n }\n\n replaceDeleteSearchParam(name: string | string[], state: RouterMethodOptions | undefined): void {\n const s = this.getSearchParams({ delete: Array.isArray(name) ? name : [name] });\n this.replace({ searchParams: s }, state);\n }\n\n replaceUpsertSearchParam(params: Record<string, string | string[]>, state: RouterMethodOptions | undefined): void {\n const s = this.getSearchParamObject();\n UrlUtils.upsertSearchParam(s as any, params);\n this.replace({ searchParams: s as any }, state);\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }