@dooboostore/simple-web-component 1.0.12 → 1.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -12
- package/dist/cjs/decorators/elementDefine.js +88 -82
- package/dist/cjs/decorators/elementDefine.js.map +3 -3
- package/dist/cjs/decorators/index.js +26 -0
- package/dist/cjs/decorators/index.js.map +7 -0
- package/dist/cjs/elements/SwcInterfaces.js +35 -0
- package/dist/cjs/elements/SwcInterfaces.js.map +7 -0
- package/dist/cjs/elements/apps/SwcApp.js +14 -7
- package/dist/cjs/elements/apps/SwcApp.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppAnchor.js +14 -7
- package/dist/cjs/elements/apps/SwcAppAnchor.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppArea.js +14 -7
- package/dist/cjs/elements/apps/SwcAppArea.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppAudio.js +14 -7
- package/dist/cjs/elements/apps/SwcAppAudio.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppBase.js +14 -7
- package/dist/cjs/elements/apps/SwcAppBase.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppBody.js +14 -7
- package/dist/cjs/elements/apps/SwcAppBody.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppButton.js +14 -7
- package/dist/cjs/elements/apps/SwcAppButton.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppCanvas.js +14 -7
- package/dist/cjs/elements/apps/SwcAppCanvas.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppData.js +14 -7
- package/dist/cjs/elements/apps/SwcAppData.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppDataList.js +14 -7
- package/dist/cjs/elements/apps/SwcAppDataList.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppDetails.js +14 -7
- package/dist/cjs/elements/apps/SwcAppDetails.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppDialog.js +14 -7
- package/dist/cjs/elements/apps/SwcAppDialog.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppDiv.js +14 -7
- package/dist/cjs/elements/apps/SwcAppDiv.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppDl.js +14 -7
- package/dist/cjs/elements/apps/SwcAppDl.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppEmbed.js +14 -7
- package/dist/cjs/elements/apps/SwcAppEmbed.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppFieldSet.js +14 -7
- package/dist/cjs/elements/apps/SwcAppFieldSet.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppForm.js +14 -7
- package/dist/cjs/elements/apps/SwcAppForm.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppHeading.js +14 -7
- package/dist/cjs/elements/apps/SwcAppHeading.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppHr.js +14 -7
- package/dist/cjs/elements/apps/SwcAppHr.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppIFrame.js +14 -7
- package/dist/cjs/elements/apps/SwcAppIFrame.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppImage.js +14 -7
- package/dist/cjs/elements/apps/SwcAppImage.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppInput.js +14 -7
- package/dist/cjs/elements/apps/SwcAppInput.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppLabel.js +14 -7
- package/dist/cjs/elements/apps/SwcAppLabel.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppLegend.js +14 -7
- package/dist/cjs/elements/apps/SwcAppLegend.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppLi.js +14 -7
- package/dist/cjs/elements/apps/SwcAppLi.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppLink.js +14 -7
- package/dist/cjs/elements/apps/SwcAppLink.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppMap.js +14 -7
- package/dist/cjs/elements/apps/SwcAppMap.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppMeta.js +14 -7
- package/dist/cjs/elements/apps/SwcAppMeta.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppMeter.js +14 -7
- package/dist/cjs/elements/apps/SwcAppMeter.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppMod.js +14 -7
- package/dist/cjs/elements/apps/SwcAppMod.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppObject.js +14 -7
- package/dist/cjs/elements/apps/SwcAppObject.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppOl.js +14 -7
- package/dist/cjs/elements/apps/SwcAppOl.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppOptGroup.js +14 -7
- package/dist/cjs/elements/apps/SwcAppOptGroup.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppOption.js +14 -7
- package/dist/cjs/elements/apps/SwcAppOption.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppOutput.js +14 -7
- package/dist/cjs/elements/apps/SwcAppOutput.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppParagraph.js +14 -7
- package/dist/cjs/elements/apps/SwcAppParagraph.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppParam.js +14 -7
- package/dist/cjs/elements/apps/SwcAppParam.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppPicture.js +14 -7
- package/dist/cjs/elements/apps/SwcAppPicture.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppPre.js +14 -7
- package/dist/cjs/elements/apps/SwcAppPre.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppProgress.js +14 -7
- package/dist/cjs/elements/apps/SwcAppProgress.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppQuote.js +14 -7
- package/dist/cjs/elements/apps/SwcAppQuote.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppScript.js +14 -7
- package/dist/cjs/elements/apps/SwcAppScript.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppSelect.js +14 -7
- package/dist/cjs/elements/apps/SwcAppSelect.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppSlot.js +14 -7
- package/dist/cjs/elements/apps/SwcAppSlot.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppSource.js +14 -7
- package/dist/cjs/elements/apps/SwcAppSource.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppSpan.js +14 -7
- package/dist/cjs/elements/apps/SwcAppSpan.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppStyle.js +14 -7
- package/dist/cjs/elements/apps/SwcAppStyle.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppTable.js +14 -7
- package/dist/cjs/elements/apps/SwcAppTable.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppTableCell.js +14 -7
- package/dist/cjs/elements/apps/SwcAppTableCell.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppTableRow.js +14 -7
- package/dist/cjs/elements/apps/SwcAppTableRow.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppTableSection.js +14 -7
- package/dist/cjs/elements/apps/SwcAppTableSection.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppTemplate.js +14 -7
- package/dist/cjs/elements/apps/SwcAppTemplate.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppTextArea.js +14 -7
- package/dist/cjs/elements/apps/SwcAppTextArea.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppTime.js +14 -7
- package/dist/cjs/elements/apps/SwcAppTime.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppTitle.js +14 -7
- package/dist/cjs/elements/apps/SwcAppTitle.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppTrack.js +14 -7
- package/dist/cjs/elements/apps/SwcAppTrack.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppUl.js +14 -7
- package/dist/cjs/elements/apps/SwcAppUl.js.map +2 -2
- package/dist/cjs/elements/apps/SwcAppVideo.js +14 -7
- package/dist/cjs/elements/apps/SwcAppVideo.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLAnchorElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLAnchorElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLAreaElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLAreaElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLAudioElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLAudioElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLBaseElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLBaseElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLBodyElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLBodyElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLButtonElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLButtonElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLCanvasElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLCanvasElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLDListElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLDListElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLDataElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLDataElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLDataListElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLDataListElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLDetailsElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLDetailsElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLDialogElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLDialogElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLDivElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLDivElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLEmbedElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLEmbedElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLFieldSetElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLFieldSetElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLFormElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLFormElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLHRElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLHRElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLHeadingElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLHeadingElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLIFrameElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLIFrameElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLImageElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLImageElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLInputElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLInputElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLLIElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLLIElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLLabelElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLLabelElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLLegendElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLLegendElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLLinkElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLLinkElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLMapElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLMapElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLMetaElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLMetaElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLMeterElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLMeterElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLModElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLModElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLOListElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLOListElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLObjectElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLObjectElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLOptGroupElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLOptGroupElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLOptionElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLOptionElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLOutputElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLOutputElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLParagraphElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLParagraphElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLParamElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLParamElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLPictureElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLPictureElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLPreElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLPreElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLProgressElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLProgressElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLQuoteElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLQuoteElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLScriptElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLScriptElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLSelectElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLSelectElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLSlotElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLSlotElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLSourceElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLSourceElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLSpanElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLSpanElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLStyleElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLStyleElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLTableCellElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLTableCellElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLTableElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLTableElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLTableRowElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLTableRowElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLTableSectionElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLTableSectionElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLTemplateElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLTemplateElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLTextAreaElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLTextAreaElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLTimeElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLTimeElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLTitleElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLTitleElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLTrackElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLTrackElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLUListElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLUListElementBase.js.map +2 -2
- package/dist/cjs/elements/base/SwcHTMLVideoElementBase.js +17 -8
- package/dist/cjs/elements/base/SwcHTMLVideoElementBase.js.map +2 -2
- package/dist/cjs/elements/index.js +1 -0
- package/dist/cjs/elements/index.js.map +2 -2
- package/dist/cjs/index.js +2 -17
- package/dist/cjs/index.js.map +2 -2
- package/dist/cjs/router/ElementRouter.js +172 -0
- package/dist/cjs/router/ElementRouter.js.map +7 -0
- package/dist/cjs/utils/Utils.js +44 -0
- package/dist/cjs/utils/Utils.js.map +2 -2
- package/dist/esm/decorators/elementDefine.js +88 -82
- package/dist/esm/decorators/elementDefine.js.map +3 -3
- package/dist/esm/decorators/index.js +10 -0
- package/dist/esm/decorators/index.js.map +7 -0
- package/dist/esm/elements/SwcInterfaces.js +16 -0
- package/dist/esm/elements/SwcInterfaces.js.map +7 -0
- package/dist/esm/elements/apps/SwcApp.js +14 -7
- package/dist/esm/elements/apps/SwcApp.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppAnchor.js +14 -7
- package/dist/esm/elements/apps/SwcAppAnchor.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppArea.js +14 -7
- package/dist/esm/elements/apps/SwcAppArea.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppAudio.js +14 -7
- package/dist/esm/elements/apps/SwcAppAudio.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppBase.js +14 -7
- package/dist/esm/elements/apps/SwcAppBase.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppBody.js +14 -7
- package/dist/esm/elements/apps/SwcAppBody.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppButton.js +14 -7
- package/dist/esm/elements/apps/SwcAppButton.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppCanvas.js +14 -7
- package/dist/esm/elements/apps/SwcAppCanvas.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppData.js +14 -7
- package/dist/esm/elements/apps/SwcAppData.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppDataList.js +14 -7
- package/dist/esm/elements/apps/SwcAppDataList.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppDetails.js +14 -7
- package/dist/esm/elements/apps/SwcAppDetails.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppDialog.js +14 -7
- package/dist/esm/elements/apps/SwcAppDialog.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppDiv.js +14 -7
- package/dist/esm/elements/apps/SwcAppDiv.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppDl.js +14 -7
- package/dist/esm/elements/apps/SwcAppDl.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppEmbed.js +14 -7
- package/dist/esm/elements/apps/SwcAppEmbed.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppFieldSet.js +14 -7
- package/dist/esm/elements/apps/SwcAppFieldSet.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppForm.js +14 -7
- package/dist/esm/elements/apps/SwcAppForm.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppHeading.js +14 -7
- package/dist/esm/elements/apps/SwcAppHeading.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppHr.js +14 -7
- package/dist/esm/elements/apps/SwcAppHr.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppIFrame.js +14 -7
- package/dist/esm/elements/apps/SwcAppIFrame.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppImage.js +14 -7
- package/dist/esm/elements/apps/SwcAppImage.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppInput.js +14 -7
- package/dist/esm/elements/apps/SwcAppInput.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppLabel.js +14 -7
- package/dist/esm/elements/apps/SwcAppLabel.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppLegend.js +14 -7
- package/dist/esm/elements/apps/SwcAppLegend.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppLi.js +14 -7
- package/dist/esm/elements/apps/SwcAppLi.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppLink.js +14 -7
- package/dist/esm/elements/apps/SwcAppLink.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppMap.js +14 -7
- package/dist/esm/elements/apps/SwcAppMap.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppMeta.js +14 -7
- package/dist/esm/elements/apps/SwcAppMeta.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppMeter.js +14 -7
- package/dist/esm/elements/apps/SwcAppMeter.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppMod.js +14 -7
- package/dist/esm/elements/apps/SwcAppMod.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppObject.js +14 -7
- package/dist/esm/elements/apps/SwcAppObject.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppOl.js +14 -7
- package/dist/esm/elements/apps/SwcAppOl.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppOptGroup.js +14 -7
- package/dist/esm/elements/apps/SwcAppOptGroup.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppOption.js +14 -7
- package/dist/esm/elements/apps/SwcAppOption.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppOutput.js +14 -7
- package/dist/esm/elements/apps/SwcAppOutput.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppParagraph.js +14 -7
- package/dist/esm/elements/apps/SwcAppParagraph.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppParam.js +14 -7
- package/dist/esm/elements/apps/SwcAppParam.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppPicture.js +14 -7
- package/dist/esm/elements/apps/SwcAppPicture.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppPre.js +14 -7
- package/dist/esm/elements/apps/SwcAppPre.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppProgress.js +14 -7
- package/dist/esm/elements/apps/SwcAppProgress.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppQuote.js +14 -7
- package/dist/esm/elements/apps/SwcAppQuote.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppScript.js +14 -7
- package/dist/esm/elements/apps/SwcAppScript.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppSelect.js +14 -7
- package/dist/esm/elements/apps/SwcAppSelect.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppSlot.js +14 -7
- package/dist/esm/elements/apps/SwcAppSlot.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppSource.js +14 -7
- package/dist/esm/elements/apps/SwcAppSource.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppSpan.js +14 -7
- package/dist/esm/elements/apps/SwcAppSpan.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppStyle.js +14 -7
- package/dist/esm/elements/apps/SwcAppStyle.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppTable.js +14 -7
- package/dist/esm/elements/apps/SwcAppTable.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppTableCell.js +14 -7
- package/dist/esm/elements/apps/SwcAppTableCell.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppTableRow.js +14 -7
- package/dist/esm/elements/apps/SwcAppTableRow.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppTableSection.js +14 -7
- package/dist/esm/elements/apps/SwcAppTableSection.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppTemplate.js +14 -7
- package/dist/esm/elements/apps/SwcAppTemplate.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppTextArea.js +14 -7
- package/dist/esm/elements/apps/SwcAppTextArea.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppTime.js +14 -7
- package/dist/esm/elements/apps/SwcAppTime.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppTitle.js +14 -7
- package/dist/esm/elements/apps/SwcAppTitle.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppTrack.js +14 -7
- package/dist/esm/elements/apps/SwcAppTrack.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppUl.js +14 -7
- package/dist/esm/elements/apps/SwcAppUl.js.map +2 -2
- package/dist/esm/elements/apps/SwcAppVideo.js +14 -7
- package/dist/esm/elements/apps/SwcAppVideo.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLAnchorElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLAnchorElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLAreaElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLAreaElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLAudioElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLAudioElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLBaseElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLBaseElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLBodyElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLBodyElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLButtonElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLButtonElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLCanvasElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLCanvasElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLDListElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLDListElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLDataElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLDataElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLDataListElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLDataListElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLDetailsElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLDetailsElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLDialogElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLDialogElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLDivElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLDivElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLEmbedElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLEmbedElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLFieldSetElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLFieldSetElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLFormElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLFormElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLHRElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLHRElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLHeadingElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLHeadingElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLIFrameElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLIFrameElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLImageElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLImageElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLInputElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLInputElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLLIElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLLIElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLLabelElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLLabelElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLLegendElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLLegendElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLLinkElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLLinkElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLMapElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLMapElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLMetaElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLMetaElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLMeterElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLMeterElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLModElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLModElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLOListElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLOListElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLObjectElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLObjectElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLOptGroupElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLOptGroupElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLOptionElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLOptionElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLOutputElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLOutputElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLParagraphElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLParagraphElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLParamElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLParamElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLPictureElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLPictureElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLPreElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLPreElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLProgressElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLProgressElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLQuoteElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLQuoteElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLScriptElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLScriptElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLSelectElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLSelectElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLSlotElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLSlotElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLSourceElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLSourceElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLSpanElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLSpanElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLStyleElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLStyleElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLTableCellElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLTableCellElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLTableElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLTableElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLTableRowElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLTableRowElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLTableSectionElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLTableSectionElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLTemplateElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLTemplateElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLTextAreaElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLTextAreaElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLTimeElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLTimeElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLTitleElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLTitleElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLTrackElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLTrackElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLUListElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLUListElementBase.js.map +2 -2
- package/dist/esm/elements/base/SwcHTMLVideoElementBase.js +17 -8
- package/dist/esm/elements/base/SwcHTMLVideoElementBase.js.map +2 -2
- package/dist/esm/elements/index.js +1 -0
- package/dist/esm/elements/index.js.map +2 -2
- package/dist/esm/index.js +2 -17
- package/dist/esm/index.js.map +2 -2
- package/dist/esm/router/ElementRouter.js +153 -0
- package/dist/esm/router/ElementRouter.js.map +7 -0
- package/dist/esm/utils/Utils.js +44 -0
- package/dist/esm/utils/Utils.js.map +2 -2
- package/dist/esm-bundle/dooboostore-simple-web-component.esm.js +3334 -2251
- package/dist/esm-bundle/dooboostore-simple-web-component.esm.js.map +4 -4
- package/dist/types/decorators/elementDefine.d.ts.map +1 -1
- package/dist/types/decorators/index.d.ts +10 -0
- package/dist/types/decorators/index.d.ts.map +1 -0
- package/dist/types/elements/SwcInterfaces.d.ts +48 -0
- package/dist/types/elements/SwcInterfaces.d.ts.map +1 -0
- package/dist/types/elements/apps/SwcApp.d.ts +3 -4
- package/dist/types/elements/apps/SwcApp.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppAnchor.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppAnchor.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppArea.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppArea.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppAudio.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppAudio.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppBase.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppBase.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppBody.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppBody.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppButton.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppButton.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppCanvas.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppCanvas.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppData.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppData.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppDataList.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppDataList.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppDetails.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppDetails.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppDialog.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppDialog.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppDiv.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppDiv.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppDl.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppDl.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppEmbed.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppEmbed.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppFieldSet.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppFieldSet.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppForm.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppForm.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppHeading.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppHeading.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppHr.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppHr.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppIFrame.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppIFrame.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppImage.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppImage.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppInput.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppInput.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppLabel.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppLabel.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppLegend.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppLegend.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppLi.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppLi.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppLink.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppLink.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppMap.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppMap.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppMeta.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppMeta.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppMeter.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppMeter.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppMod.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppMod.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppObject.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppObject.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppOl.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppOl.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppOptGroup.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppOptGroup.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppOption.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppOption.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppOutput.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppOutput.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppParagraph.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppParagraph.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppParam.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppParam.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppPicture.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppPicture.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppPre.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppPre.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppProgress.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppProgress.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppQuote.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppQuote.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppScript.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppScript.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppSelect.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppSelect.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppSlot.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppSlot.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppSource.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppSource.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppSpan.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppSpan.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppStyle.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppStyle.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppTable.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppTable.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppTableCell.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppTableCell.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppTableRow.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppTableRow.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppTableSection.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppTableSection.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppTemplate.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppTemplate.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppTextArea.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppTextArea.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppTime.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppTime.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppTitle.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppTitle.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppTrack.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppTrack.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppUl.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppUl.d.ts.map +1 -1
- package/dist/types/elements/apps/SwcAppVideo.d.ts +3 -4
- package/dist/types/elements/apps/SwcAppVideo.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLAnchorElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLAnchorElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLAreaElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLAreaElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLAudioElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLAudioElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLBaseElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLBaseElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLBodyElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLBodyElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLButtonElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLButtonElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLCanvasElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLCanvasElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLDListElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLDListElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLDataElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLDataElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLDataListElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLDataListElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLDetailsElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLDetailsElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLDialogElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLDialogElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLDivElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLDivElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLEmbedElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLEmbedElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLFieldSetElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLFieldSetElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLFormElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLFormElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLHRElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLHRElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLHeadingElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLHeadingElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLIFrameElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLIFrameElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLImageElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLImageElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLInputElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLInputElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLLIElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLLIElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLLabelElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLLabelElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLLegendElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLLegendElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLLinkElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLLinkElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLMapElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLMapElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLMetaElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLMetaElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLMeterElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLMeterElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLModElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLModElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLOListElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLOListElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLObjectElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLObjectElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLOptGroupElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLOptGroupElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLOptionElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLOptionElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLOutputElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLOutputElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLParagraphElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLParagraphElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLParamElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLParamElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLPictureElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLPictureElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLPreElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLPreElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLProgressElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLProgressElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLQuoteElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLQuoteElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLScriptElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLScriptElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLSelectElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLSelectElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLSlotElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLSlotElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLSourceElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLSourceElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLSpanElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLSpanElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLStyleElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLStyleElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLTableCellElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLTableCellElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLTableElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLTableElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLTableRowElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLTableRowElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLTableSectionElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLTableSectionElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLTemplateElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLTemplateElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLTextAreaElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLTextAreaElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLTimeElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLTimeElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLTitleElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLTitleElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLTrackElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLTrackElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLUListElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLUListElementBase.d.ts.map +1 -1
- package/dist/types/elements/base/SwcHTMLVideoElementBase.d.ts +6 -3
- package/dist/types/elements/base/SwcHTMLVideoElementBase.d.ts.map +1 -1
- package/dist/types/elements/index.d.ts +1 -0
- package/dist/types/elements/index.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -17
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/router/ElementRouter.d.ts +41 -0
- package/dist/types/router/ElementRouter.d.ts.map +1 -0
- package/dist/types/utils/Utils.d.ts +9 -0
- package/dist/types/utils/Utils.d.ts.map +1 -1
- package/dist/umd-bundle/dooboostore-simple-web-component.umd.js +3334 -2251
- package/dist/umd-bundle/dooboostore-simple-web-component.umd.js.map +4 -4
- package/package.json +3 -3
- package/src/decorators/elementDefine.ts +98 -141
- package/src/decorators/index.ts +9 -0
- package/src/elements/SwcInterfaces.ts +53 -0
- package/src/elements/apps/SwcApp.ts +20 -11
- package/src/elements/apps/SwcAppAnchor.ts +20 -11
- package/src/elements/apps/SwcAppArea.ts +20 -11
- package/src/elements/apps/SwcAppAudio.ts +20 -11
- package/src/elements/apps/SwcAppBase.ts +20 -11
- package/src/elements/apps/SwcAppBody.ts +20 -11
- package/src/elements/apps/SwcAppButton.ts +20 -11
- package/src/elements/apps/SwcAppCanvas.ts +20 -11
- package/src/elements/apps/SwcAppData.ts +20 -11
- package/src/elements/apps/SwcAppDataList.ts +20 -11
- package/src/elements/apps/SwcAppDetails.ts +20 -11
- package/src/elements/apps/SwcAppDialog.ts +20 -11
- package/src/elements/apps/SwcAppDiv.ts +20 -11
- package/src/elements/apps/SwcAppDl.ts +20 -11
- package/src/elements/apps/SwcAppEmbed.ts +20 -11
- package/src/elements/apps/SwcAppFieldSet.ts +20 -11
- package/src/elements/apps/SwcAppForm.ts +20 -11
- package/src/elements/apps/SwcAppHeading.ts +20 -11
- package/src/elements/apps/SwcAppHr.ts +20 -11
- package/src/elements/apps/SwcAppIFrame.ts +20 -11
- package/src/elements/apps/SwcAppImage.ts +20 -11
- package/src/elements/apps/SwcAppInput.ts +20 -11
- package/src/elements/apps/SwcAppLabel.ts +20 -11
- package/src/elements/apps/SwcAppLegend.ts +20 -11
- package/src/elements/apps/SwcAppLi.ts +20 -11
- package/src/elements/apps/SwcAppLink.ts +20 -11
- package/src/elements/apps/SwcAppMap.ts +20 -11
- package/src/elements/apps/SwcAppMeta.ts +20 -11
- package/src/elements/apps/SwcAppMeter.ts +20 -11
- package/src/elements/apps/SwcAppMod.ts +20 -11
- package/src/elements/apps/SwcAppObject.ts +20 -11
- package/src/elements/apps/SwcAppOl.ts +20 -11
- package/src/elements/apps/SwcAppOptGroup.ts +20 -11
- package/src/elements/apps/SwcAppOption.ts +20 -11
- package/src/elements/apps/SwcAppOutput.ts +20 -11
- package/src/elements/apps/SwcAppParagraph.ts +20 -11
- package/src/elements/apps/SwcAppParam.ts +20 -11
- package/src/elements/apps/SwcAppPicture.ts +20 -11
- package/src/elements/apps/SwcAppPre.ts +20 -11
- package/src/elements/apps/SwcAppProgress.ts +20 -11
- package/src/elements/apps/SwcAppQuote.ts +20 -11
- package/src/elements/apps/SwcAppScript.ts +20 -11
- package/src/elements/apps/SwcAppSelect.ts +20 -11
- package/src/elements/apps/SwcAppSlot.ts +20 -11
- package/src/elements/apps/SwcAppSource.ts +20 -11
- package/src/elements/apps/SwcAppSpan.ts +20 -11
- package/src/elements/apps/SwcAppStyle.ts +20 -11
- package/src/elements/apps/SwcAppTable.ts +20 -11
- package/src/elements/apps/SwcAppTableCell.ts +20 -11
- package/src/elements/apps/SwcAppTableRow.ts +20 -11
- package/src/elements/apps/SwcAppTableSection.ts +20 -11
- package/src/elements/apps/SwcAppTemplate.ts +20 -11
- package/src/elements/apps/SwcAppTextArea.ts +20 -11
- package/src/elements/apps/SwcAppTime.ts +20 -11
- package/src/elements/apps/SwcAppTitle.ts +20 -11
- package/src/elements/apps/SwcAppTrack.ts +20 -11
- package/src/elements/apps/SwcAppUl.ts +20 -11
- package/src/elements/apps/SwcAppVideo.ts +20 -11
- package/src/elements/base/SwcHTMLAnchorElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLAreaElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLAudioElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLBaseElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLBodyElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLButtonElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLCanvasElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLDListElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLDataElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLDataListElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLDetailsElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLDialogElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLDivElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLEmbedElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLFieldSetElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLFormElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLHRElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLHeadingElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLIFrameElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLImageElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLInputElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLLIElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLLabelElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLLegendElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLLinkElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLMapElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLMetaElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLMeterElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLModElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLOListElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLObjectElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLOptGroupElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLOptionElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLOutputElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLParagraphElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLParamElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLPictureElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLPreElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLProgressElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLQuoteElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLScriptElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLSelectElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLSlotElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLSourceElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLSpanElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLStyleElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLTableCellElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLTableElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLTableRowElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLTableSectionElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLTemplateElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLTextAreaElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLTimeElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLTitleElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLTrackElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLUListElementBase.ts +22 -11
- package/src/elements/base/SwcHTMLVideoElementBase.ts +22 -11
- package/src/elements/index.ts +1 -0
- package/src/index.ts +2 -17
- package/src/router/ElementRouter.ts +187 -0
- package/src/utils/Utils.ts +57 -0
- package/dist/cjs/elements/SwcAppInterface.js +0 -16
- package/dist/cjs/elements/SwcAppInterface.js.map +0 -7
- package/dist/cjs/elements/SwcHTMLElementInterface.js +0 -16
- package/dist/cjs/elements/SwcHTMLElementInterface.js.map +0 -7
- package/dist/esm/elements/SwcAppInterface.js +0 -1
- package/dist/esm/elements/SwcAppInterface.js.map +0 -7
- package/dist/esm/elements/SwcHTMLElementInterface.js +0 -1
- package/dist/esm/elements/SwcHTMLElementInterface.js.map +0 -7
- package/dist/types/elements/SwcAppInterface.d.ts +0 -15
- package/dist/types/elements/SwcAppInterface.d.ts.map +0 -1
- package/dist/types/elements/SwcHTMLElementInterface.d.ts +0 -9
- package/dist/types/elements/SwcHTMLElementInterface.d.ts.map +0 -1
- package/src/elements/SwcAppInterface.ts +0 -19
- package/src/elements/SwcHTMLElementInterface.ts +0 -9
|
@@ -9,6 +9,8 @@ import { getStateMetadataList } from "./state.js";
|
|
|
9
9
|
import { getEmitCustomEventMetadataList } from "./emitCustomEvent.js";
|
|
10
10
|
import { SwcUtils, SWC_NOT_FOUND } from "../utils/Utils.js";
|
|
11
11
|
import { HTML_TAG_ENTRIES } from "../config/config.js";
|
|
12
|
+
import { SituationTypeContainer, SituationTypeContainers } from "@dooboostore/simple-boot/decorators/inject/Inject";
|
|
13
|
+
import { InjectSituationType } from "../elements/SwcInterfaces.js";
|
|
12
14
|
const ELEMENT_CONFIG_KEY = Symbol("simple-web-component:element-config");
|
|
13
15
|
const STATE_CHANGE_EVENT = "swc:state-change";
|
|
14
16
|
function buildEnv(configWindow) {
|
|
@@ -64,7 +66,8 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
64
66
|
this._externalSources = /* @__PURE__ */ new Map();
|
|
65
67
|
this._isSyncing = false;
|
|
66
68
|
this._isUpdatingState = false;
|
|
67
|
-
|
|
69
|
+
const hostSet = SwcUtils.getHostSet(this);
|
|
70
|
+
this._executeSwcScript("swc-on-constructor", hostSet);
|
|
68
71
|
if (stateList) {
|
|
69
72
|
stateList.forEach((meta) => {
|
|
70
73
|
const key = meta.propertyKey;
|
|
@@ -128,7 +131,6 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
128
131
|
this.attachShadow({ mode: "open" });
|
|
129
132
|
}
|
|
130
133
|
}
|
|
131
|
-
// name→value 컨텍스트 반환 (applyData의 hostContext용)
|
|
132
134
|
_getHostContext() {
|
|
133
135
|
const ctx = {};
|
|
134
136
|
if (stateList) {
|
|
@@ -145,26 +147,20 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
145
147
|
ctx[name] = val;
|
|
146
148
|
});
|
|
147
149
|
}
|
|
148
|
-
const alias = this.getAttribute("as");
|
|
149
150
|
const hostVal = this.value !== void 0 ? this.value : this;
|
|
150
151
|
ctx["value"] = hostVal;
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
}
|
|
152
|
+
const alias = this.getAttribute("as");
|
|
153
|
+
if (alias && alias !== "value") ctx[alias] = hostVal;
|
|
154
154
|
return ctx;
|
|
155
155
|
}
|
|
156
156
|
static get observedAttributes() {
|
|
157
157
|
return mergedObservedAttributes;
|
|
158
158
|
}
|
|
159
|
-
_executeSwcScript(attrName, extraArgs = {}) {
|
|
159
|
+
_executeSwcScript(attrName, hostSet, extraArgs = {}) {
|
|
160
160
|
const script = this.getAttribute(attrName);
|
|
161
161
|
if (script) {
|
|
162
162
|
try {
|
|
163
|
-
const
|
|
164
|
-
const $firstHost = $hosts[0] || null;
|
|
165
|
-
const $lastHost = $hosts[$hosts.length - 1] || null;
|
|
166
|
-
const $host = $lastHost;
|
|
167
|
-
const args = { $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPERS, ...extraArgs };
|
|
163
|
+
const args = { ...hostSet, ...SWC_DOM_HELPERS, ...extraArgs };
|
|
168
164
|
const argNames = Object.keys(args);
|
|
169
165
|
const argValues = Object.values(args);
|
|
170
166
|
new Function(...argNames, script).apply(this, argValues);
|
|
@@ -173,6 +169,25 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
173
169
|
}
|
|
174
170
|
}
|
|
175
171
|
}
|
|
172
|
+
async _invokeLifecycleMethod(methodName, hostSet, extraArgs = []) {
|
|
173
|
+
if (typeof this[methodName] !== "function") return;
|
|
174
|
+
const app = hostSet.$appHost?.simpleApplication;
|
|
175
|
+
if (app) {
|
|
176
|
+
const otherStorage = /* @__PURE__ */ new Map();
|
|
177
|
+
const situations = new SituationTypeContainers([new SituationTypeContainer({ situationType: InjectSituationType.HOST_SET, data: hostSet }), new SituationTypeContainer({ situationType: InjectSituationType.APP_HOST, data: hostSet.$appHost }), new SituationTypeContainer({ situationType: InjectSituationType.APP_HOSTS, data: hostSet.$appHosts }), new SituationTypeContainer({ situationType: InjectSituationType.HOST, data: hostSet.$host }), new SituationTypeContainer({ situationType: InjectSituationType.HOSTS, data: hostSet.$hosts }), new SituationTypeContainer({ situationType: InjectSituationType.FIRST_HOST, data: hostSet.$firstHost }), new SituationTypeContainer({ situationType: InjectSituationType.LAST_HOST, data: hostSet.$lastHost }), new SituationTypeContainer({ situationType: InjectSituationType.FIRST_APP_HOST, data: hostSet.$firstAppHost }), new SituationTypeContainer({ situationType: InjectSituationType.LAST_APP_HOST, data: hostSet.$lastAppHost })]);
|
|
178
|
+
otherStorage.set(SituationTypeContainers, situations);
|
|
179
|
+
return app.simstanceManager.executeBindParameterSimPromise(
|
|
180
|
+
{
|
|
181
|
+
target: this,
|
|
182
|
+
targetKey: methodName,
|
|
183
|
+
inputParameters: extraArgs
|
|
184
|
+
},
|
|
185
|
+
otherStorage
|
|
186
|
+
);
|
|
187
|
+
} else {
|
|
188
|
+
return this[methodName](hostSet, ...extraArgs);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
176
191
|
_syncDecorators() {
|
|
177
192
|
if (this._isSyncing) return;
|
|
178
193
|
this._isSyncing = true;
|
|
@@ -301,9 +316,7 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
301
316
|
this._boundElements.set(host, hBound);
|
|
302
317
|
}
|
|
303
318
|
if (!hBound.has(hostBindKey)) {
|
|
304
|
-
host.addEventListener(STATE_CHANGE_EVENT, () =>
|
|
305
|
-
this._updateState(hAlias);
|
|
306
|
-
});
|
|
319
|
+
host.addEventListener(STATE_CHANGE_EVENT, () => this._updateState(hAlias));
|
|
307
320
|
hBound.add(hostBindKey);
|
|
308
321
|
}
|
|
309
322
|
}
|
|
@@ -311,6 +324,8 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
311
324
|
Array.from(el.attributes).forEach((attr) => {
|
|
312
325
|
if (attr.name.startsWith("swc-on-") && !swcLifecycleAttributes.includes(attr.name)) {
|
|
313
326
|
const eventName = attr.name.substring(7);
|
|
327
|
+
const script = attr.value;
|
|
328
|
+
const hostSet = SwcUtils.getHostSet(el);
|
|
314
329
|
if (eventName === "connected") {
|
|
315
330
|
const eventKey2 = `attr-once:${attr.name}`;
|
|
316
331
|
let bound2 = this._boundElements.get(el);
|
|
@@ -319,14 +334,11 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
319
334
|
this._boundElements.set(el, bound2);
|
|
320
335
|
}
|
|
321
336
|
if (!bound2.has(eventKey2)) {
|
|
322
|
-
const script = el.getAttribute(attr.name);
|
|
323
337
|
if (script) {
|
|
324
338
|
try {
|
|
325
|
-
const
|
|
326
|
-
const
|
|
327
|
-
|
|
328
|
-
const $host = $lastHost;
|
|
329
|
-
new Function("event", "$data", "$host", "$hosts", "$firstHost", "$lastHost", ...SWC_DOM_HELPER_KEYS, script).call(el, null, null, $host, $hosts2, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());
|
|
339
|
+
const argNames = Object.keys(hostSet);
|
|
340
|
+
const argValues = Object.values(hostSet);
|
|
341
|
+
new Function("event", "$data", ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(el, null, null, ...argValues, ...SWC_DOM_HELPER_VALS());
|
|
330
342
|
} catch (e) {
|
|
331
343
|
console.error(`[SWC] Failed to execute ${attr.name} script:`, e);
|
|
332
344
|
}
|
|
@@ -343,14 +355,11 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
343
355
|
}
|
|
344
356
|
if (!bound.has(eventKey)) {
|
|
345
357
|
const handler = (event) => {
|
|
346
|
-
|
|
347
|
-
if (rawScript) {
|
|
358
|
+
if (script) {
|
|
348
359
|
try {
|
|
349
|
-
const
|
|
350
|
-
const
|
|
351
|
-
|
|
352
|
-
const $host = $lastHost;
|
|
353
|
-
new Function("event", "$data", "$host", "$hosts", "$firstHost", "$lastHost", ...SWC_DOM_HELPER_KEYS, rawScript).call(el, event, event.detail, $host, $hosts2, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());
|
|
360
|
+
const argNames = Object.keys(hostSet);
|
|
361
|
+
const argValues = Object.values(hostSet);
|
|
362
|
+
new Function("event", "$data", ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(el, event, event.detail, ...argValues, ...SWC_DOM_HELPER_VALS());
|
|
354
363
|
} catch (e) {
|
|
355
364
|
console.error(`[SWC] Failed to execute ${attr.name} script:`, e);
|
|
356
365
|
}
|
|
@@ -387,7 +396,7 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
387
396
|
const rootName = fullPath.split(".")[0];
|
|
388
397
|
const isState = stateList?.some((s) => s.options.name === rootName);
|
|
389
398
|
const isAttr = attributePropsList?.some((a) => a.options.name === rootName);
|
|
390
|
-
const isLogicKey = this._asKey === rootName || this._asIndexKey === rootName;
|
|
399
|
+
const isLogicKey = this._asKey === rootName || this._asItemKey === rootName || this._asIndexKey === rootName;
|
|
391
400
|
const isExternal = this._externalSources.has(rootName);
|
|
392
401
|
const isSelfAlias = this.getAttribute("as") === rootName;
|
|
393
402
|
const isInstanceProp = rootName in this;
|
|
@@ -417,13 +426,7 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
417
426
|
this._executeBindingUpdate(stateName);
|
|
418
427
|
const selfAlias = this.getAttribute("as");
|
|
419
428
|
if (selfAlias && selfAlias !== stateName) this._executeBindingUpdate(selfAlias);
|
|
420
|
-
this.dispatchEvent(
|
|
421
|
-
new CustomEvent(STATE_CHANGE_EVENT, {
|
|
422
|
-
bubbles: true,
|
|
423
|
-
composed: true,
|
|
424
|
-
detail: { source: stateName, host: this }
|
|
425
|
-
})
|
|
426
|
-
);
|
|
429
|
+
this.dispatchEvent(new CustomEvent(STATE_CHANGE_EVENT, { bubbles: true, composed: true, detail: { source: stateName, host: this } }));
|
|
427
430
|
} finally {
|
|
428
431
|
this._isUpdatingState = false;
|
|
429
432
|
}
|
|
@@ -511,11 +514,10 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
511
514
|
});
|
|
512
515
|
}
|
|
513
516
|
disconnectedCallback() {
|
|
514
|
-
|
|
517
|
+
const hostSet = SwcUtils.getHostSet(this);
|
|
518
|
+
this._executeSwcScript("swc-on-before-disconnected", hostSet);
|
|
515
519
|
const bMethods = getLifecycleMetadata(this, ON_BEFORE_DISCONNECTED_METADATA_KEY);
|
|
516
|
-
bMethods?.forEach((m) =>
|
|
517
|
-
if (typeof this[m] === "function") this[m]();
|
|
518
|
-
});
|
|
520
|
+
bMethods?.forEach((m) => this._invokeLifecycleMethod(m, hostSet));
|
|
519
521
|
if (this._observer) this._observer.disconnect();
|
|
520
522
|
if (this._shadowObserver) this._shadowObserver.disconnect();
|
|
521
523
|
if (config.autoRemoveEventListeners) {
|
|
@@ -524,30 +526,28 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
524
526
|
}
|
|
525
527
|
if (super.disconnectedCallback) super.disconnectedCallback();
|
|
526
528
|
const aMethods = getLifecycleMetadata(this, ON_AFTER_DISCONNECTED_METADATA_KEY);
|
|
527
|
-
aMethods?.forEach((m) =>
|
|
528
|
-
|
|
529
|
-
});
|
|
530
|
-
this._executeSwcScript("swc-on-after-disconnected");
|
|
529
|
+
aMethods?.forEach((m) => this._invokeLifecycleMethod(m, hostSet));
|
|
530
|
+
this._executeSwcScript("swc-on-after-disconnected", hostSet);
|
|
531
531
|
}
|
|
532
532
|
adoptedCallback() {
|
|
533
|
-
|
|
533
|
+
const hostSet = SwcUtils.getHostSet(this);
|
|
534
|
+
this._executeSwcScript("swc-on-before-adopted", hostSet);
|
|
534
535
|
const bMethods = getLifecycleMetadata(this, ON_BEFORE_ADOPTED_METADATA_KEY);
|
|
535
|
-
bMethods?.forEach((m) =>
|
|
536
|
-
if (typeof this[m] === "function") this[m]();
|
|
537
|
-
});
|
|
536
|
+
bMethods?.forEach((m) => this._invokeLifecycleMethod(m, hostSet));
|
|
538
537
|
if (super.adoptedCallback) super.adoptedCallback();
|
|
539
538
|
const aMethods = getLifecycleMetadata(this, ON_AFTER_ADOPTED_METADATA_KEY);
|
|
540
|
-
aMethods?.forEach((m) =>
|
|
541
|
-
|
|
542
|
-
});
|
|
543
|
-
this._executeSwcScript("swc-on-after-adopted");
|
|
539
|
+
aMethods?.forEach((m) => this._invokeLifecycleMethod(m, hostSet));
|
|
540
|
+
this._executeSwcScript("swc-on-after-adopted", hostSet);
|
|
544
541
|
}
|
|
545
542
|
async connectedCallback() {
|
|
546
|
-
|
|
543
|
+
const hostSet = SwcUtils.getHostSet(this);
|
|
544
|
+
this._executeSwcScript("swc-on-before-connected", hostSet);
|
|
547
545
|
const bMethods = getLifecycleMetadata(this, ON_BEFORE_CONNECTED_METADATA_KEY);
|
|
548
|
-
bMethods
|
|
549
|
-
|
|
550
|
-
|
|
546
|
+
if (bMethods) {
|
|
547
|
+
for (const m of bMethods) {
|
|
548
|
+
await this._invokeLifecycleMethod(m, hostSet);
|
|
549
|
+
}
|
|
550
|
+
}
|
|
551
551
|
if (typeof this.initCore === "function") this.initCore();
|
|
552
552
|
const iHtmlList = getInnerHtmlMetadataList(this);
|
|
553
553
|
let sContent = "";
|
|
@@ -567,8 +567,9 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
567
567
|
const isManagedByParent = !!SwcUtils.findNearestSwcHost(this);
|
|
568
568
|
if (!isManagedByParent) {
|
|
569
569
|
Array.from(this.attributes).forEach((attr) => {
|
|
570
|
-
if (attr.name.startsWith("swc-on-") && swcLifecycleAttributes.
|
|
570
|
+
if (attr.name.startsWith("swc-on-") && !swcLifecycleAttributes.includes(attr.name)) {
|
|
571
571
|
const eventName = attr.name.substring(7);
|
|
572
|
+
const script = attr.value;
|
|
572
573
|
if (eventName === "connected") {
|
|
573
574
|
const eventKey2 = `host-attr-once:${attr.name}`;
|
|
574
575
|
let bound2 = this._boundElements.get(this);
|
|
@@ -577,14 +578,11 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
577
578
|
this._boundElements.set(this, bound2);
|
|
578
579
|
}
|
|
579
580
|
if (!bound2.has(eventKey2)) {
|
|
580
|
-
const script = this.getAttribute(attr.name);
|
|
581
581
|
if (script) {
|
|
582
582
|
try {
|
|
583
|
-
const
|
|
584
|
-
const
|
|
585
|
-
|
|
586
|
-
const $host = $lastHost;
|
|
587
|
-
new Function("event", "$data", "$host", "$hosts", "$firstHost", "$lastHost", ...SWC_DOM_HELPER_KEYS, script).call(this, null, null, $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());
|
|
583
|
+
const argNames = Object.keys(hostSet);
|
|
584
|
+
const argValues = Object.values(hostSet);
|
|
585
|
+
new Function("event", "$data", ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(this, null, null, ...argValues, ...SWC_DOM_HELPER_VALS());
|
|
588
586
|
} catch (e) {
|
|
589
587
|
console.error(`[SWC] Failed to execute ${attr.name} script:`, e);
|
|
590
588
|
}
|
|
@@ -601,14 +599,11 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
601
599
|
}
|
|
602
600
|
if (!bound.has(eventKey)) {
|
|
603
601
|
const handler = (event) => {
|
|
604
|
-
const script = this.getAttribute(attr.name);
|
|
605
602
|
if (script) {
|
|
606
603
|
try {
|
|
607
|
-
const
|
|
608
|
-
const
|
|
609
|
-
|
|
610
|
-
const $host = $lastHost;
|
|
611
|
-
new Function("event", "$data", "$host", "$hosts", "$firstHost", "$lastHost", ...SWC_DOM_HELPER_KEYS, script).call(this, event, event.detail, $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());
|
|
604
|
+
const argNames = Object.keys(hostSet);
|
|
605
|
+
const argValues = Object.values(hostSet);
|
|
606
|
+
new Function("event", "$data", ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(this, event, event.detail, ...argValues, ...SWC_DOM_HELPER_VALS());
|
|
612
607
|
} catch (e) {
|
|
613
608
|
console.error(`[SWC] Failed to execute ${attr.name} script:`, e);
|
|
614
609
|
}
|
|
@@ -645,10 +640,12 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
645
640
|
}
|
|
646
641
|
if (super.connectedCallback) await super.connectedCallback();
|
|
647
642
|
const aMethods = getLifecycleMetadata(this, ON_AFTER_CONNECTED_METADATA_KEY);
|
|
648
|
-
aMethods
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
643
|
+
if (aMethods) {
|
|
644
|
+
for (const m of aMethods) {
|
|
645
|
+
await this._invokeLifecycleMethod(m, hostSet);
|
|
646
|
+
}
|
|
647
|
+
}
|
|
648
|
+
this._executeSwcScript("swc-on-after-connected", hostSet);
|
|
652
649
|
}
|
|
653
650
|
attributeChangedCallback(name, oldValue, newValue) {
|
|
654
651
|
if (super.attributeChangedCallback) super.attributeChangedCallback(name, oldValue, newValue);
|
|
@@ -664,10 +661,10 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
664
661
|
if (typeof this._updateState === "function") this._updateState(name);
|
|
665
662
|
const aMethodsMap = getLifecycleMetadata(constructor, ON_ATTRIBUTE_CHANGED_METADATA_KEY);
|
|
666
663
|
const mKeys = aMethodsMap?.get(name);
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
664
|
+
const hostSet = SwcUtils.getHostSet(this);
|
|
665
|
+
if (mKeys && Array.isArray(mKeys)) {
|
|
666
|
+
mKeys.forEach((key) => this._invokeLifecycleMethod(key, hostSet, [newValue, oldValue, name]));
|
|
667
|
+
}
|
|
671
668
|
if (emitCustomEventList) {
|
|
672
669
|
const eMeta = emitCustomEventList.find((it) => it.options.attributeName === name);
|
|
673
670
|
if (eMeta) {
|
|
@@ -684,13 +681,22 @@ const elementDefine = (inConfig) => (constructor) => {
|
|
|
684
681
|
}
|
|
685
682
|
}
|
|
686
683
|
const wMethodsKeys = aMethodsMap?.get(ATTRIBUTE_CHANGED_WILDCARD);
|
|
687
|
-
if (wMethodsKeys && Array.isArray(wMethodsKeys))
|
|
688
|
-
wMethodsKeys.forEach((key) =>
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
this._executeSwcScript("swc-on-attribute-changed", { $new: newValue, $old: oldValue, $name: name });
|
|
684
|
+
if (wMethodsKeys && Array.isArray(wMethodsKeys)) {
|
|
685
|
+
wMethodsKeys.forEach((key) => this._invokeLifecycleMethod(key, hostSet, [newValue, oldValue, name]));
|
|
686
|
+
}
|
|
687
|
+
this._executeSwcScript("swc-on-attribute-changed", hostSet, { $new: newValue, $old: oldValue, $name: name });
|
|
692
688
|
}
|
|
693
689
|
};
|
|
690
|
+
const originalProto = constructor.prototype;
|
|
691
|
+
const newProto = NewClass.prototype;
|
|
692
|
+
Object.getOwnPropertyNames(originalProto).forEach((name) => {
|
|
693
|
+
if (name === "constructor") return;
|
|
694
|
+
const keys = Reflect.getMetadataKeys(originalProto, name);
|
|
695
|
+
keys.forEach((key) => {
|
|
696
|
+
const metadata = Reflect.getMetadata(key, originalProto, name);
|
|
697
|
+
Reflect.defineMetadata(key, metadata, newProto, name);
|
|
698
|
+
});
|
|
699
|
+
});
|
|
694
700
|
ReflectUtils.defineMetadata(ELEMENT_CONFIG_KEY, config, NewClass);
|
|
695
701
|
ReflectUtils.defineMetadata(ELEMENT_CONFIG_KEY, config, constructor);
|
|
696
702
|
const registry = config.customElementRegistry || (typeof win !== "undefined" ? win.customElements : void 0);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/decorators/elementDefine.ts"],
|
|
4
|
-
"sourcesContent": ["import { ReflectUtils } from '@dooboostore/core/reflect/ReflectUtils';\nimport { getInnerHtmlMetadataList } from './innerHtml';\nimport { getQueryMetadata } from './query';\nimport { getQueryAllMetadata } from './queryAll';\nimport { getAddEventListenerMetadata } from './addEventListener';\nimport { getLifecycleMetadata, ON_BEFORE_CONNECTED_METADATA_KEY, ON_AFTER_CONNECTED_METADATA_KEY, ON_BEFORE_DISCONNECTED_METADATA_KEY, ON_AFTER_DISCONNECTED_METADATA_KEY, ON_BEFORE_ADOPTED_METADATA_KEY, ON_AFTER_ADOPTED_METADATA_KEY, ON_ADD_EVENT_LISTENER_METADATA_KEY, ON_ATTRIBUTE_CHANGED_METADATA_KEY, ATTRIBUTE_CHANGED_WILDCARD, getMutationSubscribeMetadataList } from './lifecycles';\nimport { getAttributeMetadataList } from './attribute';\nimport { getStateMetadataList } from './state';\nimport { getEmitCustomEventMetadataList } from './emitCustomEvent';\nimport { SwcUtils, SWC_NOT_FOUND } from '../utils/Utils';\nimport { HTML_TAG_ENTRIES } from '../config/config';\n\nexport interface ElementConfig {\n name: string;\n extends?: string;\n observedAttributes?: string[];\n customElementRegistry?: CustomElementRegistry;\n autoRemoveEventListeners?: boolean;\n window?: Window;\n}\n\nexport const ELEMENT_CONFIG_KEY = Symbol('simple-web-component:element-config');\nexport const STATE_CHANGE_EVENT = 'swc:state-change';\n\n// --- \uD658\uACBD \uCD08\uAE30\uD654 \uD5EC\uD37C ---\n\nfunction buildEnv(configWindow?: Window) {\n const win: any = configWindow || (typeof window !== 'undefined' ? window : undefined);\n const doc: Document = win?.document;\n\n const builtInTagMap = new Map<any, string>();\n for (const [cls, tag] of HTML_TAG_ENTRIES) {\n if (win?.[cls]) builtInTagMap.set(win[cls], tag);\n }\n\n const domHelpers = {\n $d: doc,\n $w: win,\n $q: (sel: string, root?: Element | Document | ShadowRoot) => (root ?? doc).querySelector(sel),\n $qa: (sel: string, root?: Element | Document | ShadowRoot) => Array.from((root ?? doc).querySelectorAll(sel)),\n $qi: (id: string, root?: Document | ShadowRoot) => (root ?? doc).getElementById(id)\n } as const;\n\n return { win, doc, builtInTagMap, domHelpers };\n}\n\nexport const elementDefine =\n (inConfig: ElementConfig | string): ClassDecorator =>\n (constructor: any) => {\n const config: ElementConfig = typeof inConfig === 'string' ? { name: inConfig } : inConfig;\n const { win, doc, builtInTagMap: BUILT_IN_TAG_MAP, domHelpers: SWC_DOM_HELPERS } = buildEnv(config.window);\n config.window = win;\n const SWC_DOM_HELPER_KEYS = Object.keys(SWC_DOM_HELPERS) as (keyof typeof SWC_DOM_HELPERS)[];\n const SWC_DOM_HELPER_VALS = () => SWC_DOM_HELPER_KEYS.map(k => (SWC_DOM_HELPERS as any)[k]);\n\n let extendsTagName = config.extends;\n if (!extendsTagName) {\n let proto = constructor;\n while (proto && proto !== HTMLElement && proto !== Function.prototype) {\n extendsTagName = BUILT_IN_TAG_MAP.get(proto);\n if (extendsTagName) break;\n proto = Object.getPrototypeOf(proto);\n }\n config.extends = extendsTagName;\n }\n\n const attributePropsList = getAttributeMetadataList(constructor);\n const emitCustomEventList = getEmitCustomEventMetadataList(constructor);\n const stateList = getStateMetadataList(constructor);\n const observedFromProps = attributePropsList ? attributePropsList.map(it => it.options.name!) : [];\n const observedFromEmits = emitCustomEventList ? emitCustomEventList.map(it => it.options.attributeName!) : [];\n const swcLifecycleAttributes = ['swc-on-constructor', 'swc-on-before-connected', 'swc-on-after-connected', 'swc-on-before-disconnected', 'swc-on-after-disconnected', 'swc-on-before-adopted', 'swc-on-after-adopted', 'swc-on-attribute-changed'];\n const mergedObservedAttributes = [...new Set([...(config.observedAttributes ?? []), ...observedFromProps, ...observedFromEmits, ...swcLifecycleAttributes])];\n\n const NewClass = class extends (constructor as any) {\n private _swcId = Math.random().toString(36).substring(2, 11);\n private _observer: MutationObserver | null = null;\n private _shadowObserver: MutationObserver | null = null;\n private _boundElements = new WeakMap<Element, Set<string | symbol>>();\n private _activeListeners: Array<{ el: Element | HTMLElement; type: string; handler: EventListener; options?: any }> = [];\n private _emitHandlers = new Map<string, EventListener>();\n private _stateBindings = new Map<string, any[]>();\n private _internalStates = new Map<string | symbol, any>();\n private _externalSources = new Map<string, HTMLElement>();\n\n // name\u2192value \uCEE8\uD14D\uC2A4\uD2B8 \uBC18\uD658 (applyData\uC758 hostContext\uC6A9)\n _getHostContext(): Record<string, any> {\n const ctx: Record<string, any> = {};\n\n // 1. @state \uBC0F @attribute \uC18D\uC131\uB4E4 \uC218\uC9D1\n if (stateList) {\n stateList.forEach(meta => {\n const name = meta.options.name!;\n const val = this._internalStates.get(meta.propertyKey);\n ctx[name] = val;\n });\n }\n if (attributePropsList) {\n attributePropsList.forEach(meta => {\n const name = meta.options.name!;\n const val = this._internalStates.get(meta.propertyKey);\n ctx[name] = val;\n });\n }\n\n // 2. 'as' \uBCC4\uCE6D \uBC0F \uAE30\uBCF8 'value' \uCC98\uB9AC\n const alias = this.getAttribute('as');\n const hostVal = (this as any).value !== undefined ? (this as any).value : this;\n\n // \uD56D\uC0C1 'value'\uB85C \uC811\uADFC \uAC00\uB2A5\uD558\uB3C4\uB85D \uC720\uC9C0\n ctx['value'] = hostVal;\n\n if (alias && alias !== 'value') {\n // \uC0AC\uC6A9\uC790\uAC00 \uC9C0\uC815\uD55C \uBCC4\uCE6D\uC73C\uB85C\uB3C4 \uC811\uADFC \uAC00\uB2A5 (\uC608: as=\"list\" -> {{list}})\n ctx[alias] = hostVal;\n }\n\n return ctx;\n }\n\n static get observedAttributes() {\n return mergedObservedAttributes;\n }\n\n private _executeSwcScript(attrName: string, extraArgs: Record<string, any> = {}) {\n const script = this.getAttribute(attrName);\n if (script) {\n try {\n const $hosts = SwcUtils.findAllSwcHosts(this as any);\n const $firstHost = $hosts[0] || null;\n const $lastHost = $hosts[$hosts.length - 1] || null;\n const $host = $lastHost;\n const args = { $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPERS, ...extraArgs };\n const argNames = Object.keys(args);\n const argValues = Object.values(args);\n new Function(...argNames, script).apply(this, argValues);\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attrName} script:`, e);\n }\n }\n }\n\n constructor(...args: any[]) {\n super(...args);\n this._executeSwcScript('swc-on-constructor');\n\n if (stateList) {\n stateList.forEach(meta => {\n const key = meta.propertyKey;\n const stateName = meta.options.name!;\n const initialVal = (this as any)[key];\n this._internalStates.set(\n key,\n SwcUtils.createReactiveProxy(initialVal, () => this._updateState(stateName))\n );\n Object.defineProperty(this, key, {\n get: () => this._internalStates.get(key),\n set: newVal => {\n if (this._internalStates.get(key) === newVal) return;\n this._internalStates.set(\n key,\n SwcUtils.createReactiveProxy(newVal, () => this._updateState(stateName))\n );\n this._updateState(stateName);\n },\n enumerable: true,\n configurable: true\n });\n });\n }\n\n if (attributePropsList) {\n attributePropsList.forEach(meta => {\n const key = meta.propertyKey;\n const attrName = meta.options.name!;\n const attrValue = this.getAttribute(attrName);\n let initialVal = attrValue !== null ? attrValue : (this as any)[key];\n if (initialVal === undefined) initialVal = null;\n\n if (attrValue !== null) {\n if (meta.options.type === Number) initialVal = Number(attrValue);\n else if (meta.options.type === Boolean) initialVal = true;\n else if (meta.options.type === Object) {\n try {\n initialVal = JSON.parse(attrValue);\n } catch (e) {}\n }\n }\n\n this._internalStates.set(key, initialVal);\n Object.defineProperty(this, key, {\n get: () => this._internalStates.get(key),\n set: newVal => {\n if (this._internalStates.get(key) === newVal) return;\n this._internalStates.set(key, newVal);\n if (typeof (this as any)._updateState === 'function') (this as any)._updateState(attrName);\n // \uAC1D\uCCB4/\uBC30\uC5F4\uC740 setAttribute\uB85C \uBC18\uC601\uD558\uC9C0 \uC54A\uC74C - attributeChangedCallback \uBB34\uD55C\uB8E8\uD504 \uBC29\uC9C0\n if (!meta.options.disableReflect && this.setAttribute && typeof newVal !== 'object') {\n if (newVal === null || newVal === undefined || newVal === false) this.removeAttribute(attrName);\n else this.setAttribute(attrName, String(newVal));\n }\n },\n enumerable: true,\n configurable: true\n });\n });\n }\n\n const innerHtmlList = getInnerHtmlMetadataList(this);\n if (innerHtmlList?.some(it => it.options.useShadow === true) && !this.shadowRoot) {\n this.attachShadow({ mode: 'open' });\n }\n }\n\n private _isSyncing = false;\n\n private _syncDecorators() {\n if (this._isSyncing) return;\n this._isSyncing = true;\n try {\n this._buildStateMap();\n this._syncEventListenersAndQueries();\n } finally {\n this._isSyncing = false;\n }\n }\n\n private _syncEventListenersAndQueries() {\n const getSearchRoots = (rootOption?: string): Node[] => {\n const roots: Node[] = [];\n if (rootOption === 'shadow') {\n if (this.shadowRoot) roots.push(this.shadowRoot);\n } else if (rootOption === 'light') {\n roots.push(this as any as Node);\n } else if (rootOption === 'all') {\n if (this.shadowRoot) roots.push(this.shadowRoot);\n roots.push(this as any as Node);\n } else {\n roots.push(this.shadowRoot || (this as any as Node));\n }\n return roots;\n };\n\n const queryMetadata = getQueryMetadata(this);\n if (queryMetadata) {\n queryMetadata\n .filter(it => it.isMethod)\n .forEach(it => {\n const searchRoots = getSearchRoots(it.options.root);\n let foundEl: Element | null = null;\n for (const root of searchRoots) {\n foundEl = it.selector ? (root as HTMLElement).querySelector(it.selector) : (this as any as Element);\n if (foundEl) break;\n }\n if (foundEl) {\n let bound = this._boundElements.get(foundEl);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(foundEl, bound);\n }\n if (!bound.has(it.propertyKey)) {\n (this as any)[it.propertyKey](foundEl);\n bound.add(it.propertyKey);\n }\n }\n });\n }\n\n const queryAllMetadata = getQueryAllMetadata(this);\n if (queryAllMetadata) {\n queryAllMetadata\n .filter(it => it.isMethod)\n .forEach(it => {\n const searchRoots = getSearchRoots(it.options.root);\n const allElements: Element[] = [];\n searchRoots.forEach(root => {\n const found = it.selector ? (root as HTMLElement).querySelectorAll(it.selector) : [this as any as Element];\n allElements.push(...Array.from(found));\n });\n (this as any)[it.propertyKey](allElements);\n });\n }\n\n const eventListeners = getAddEventListenerMetadata(this);\n if (eventListeners) {\n eventListeners.forEach(it => {\n const { query, type, root: rootOption, ...options } = it.options;\n const searchRoots = getSearchRoots(rootOption);\n searchRoots.forEach(root => {\n const targetElements = query ? (root as HTMLElement).querySelectorAll(query) : [this as any as Element];\n targetElements.forEach(targetElement => {\n if (targetElement) {\n let bound = this._boundElements.get(targetElement);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(targetElement, bound);\n }\n const eventKey = `event:${String(it.propertyKey)}:${type}`;\n if (!bound.has(eventKey)) {\n const handler = (event: any) => {\n if (it.options.stopImmediatePropagation) event.stopImmediatePropagation();\n if (it.options.stopPropagation) event.stopPropagation();\n if (it.options.preventDefault) event.preventDefault();\n (this as any)[it.propertyKey](event, targetElement);\n };\n targetElement.addEventListener(type, handler, options);\n bound.add(eventKey);\n if (config.autoRemoveEventListeners) this._activeListeners.push({ el: targetElement, type, handler, options });\n const addEventMethods = getLifecycleMetadata(this, ON_ADD_EVENT_LISTENER_METADATA_KEY);\n addEventMethods?.forEach((m: string | symbol) => {\n if (typeof (this as any)[m] === 'function') (this as any)[m](targetElement, type, handler);\n });\n }\n }\n });\n });\n });\n }\n }\n\n private _buildStateMap() {\n const scan = (root: Node) => {\n const walker = doc.createTreeWalker(root, (win as any).NodeFilter.SHOW_ELEMENT | (win as any).NodeFilter.SHOW_TEXT);\n let node: Node | null = null;\n while ((node = walker.nextNode())) {\n if (node.nodeType === Node.TEXT_NODE) this._parseAndBind(node, 'text');\n else if (node.nodeType === Node.ELEMENT_NODE) {\n const el = node as HTMLElement;\n\n const alias = el.getAttribute('as');\n if (alias && !this._externalSources.has(alias)) {\n this._externalSources.set(alias, el);\n const aliasKey = `alias-event:${alias}`;\n let bound = this._boundElements.get(el);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(el, bound);\n }\n if (!bound.has(aliasKey)) {\n // \uBD80\uBAA8\uAC00 \uC790\uC2DD\uC758 STATE_CHANGE_EVENT\uB97C \uB4E3\uACE0 \uC5C5\uB370\uC774\uD2B8 (\uAE30\uC874 \uBC84\uBE14\uB9C1\uC6A9)\n el.addEventListener(STATE_CHANGE_EVENT, () => this._updateState(alias));\n bound.add(aliasKey);\n }\n }\n\n // --- [FIX] \uBD80\uBAA8 \uD638\uC2A4\uD2B8\uC758 \uC0C1\uD0DC \uBCC0\uACBD \uAD6C\uB3C5 ---\n // \uD604\uC7AC \uC5D8\uB9AC\uBA3C\uD2B8\uAC00 \uC0C1\uC704 \uD638\uC2A4\uD2B8\uC758 \uBCC4\uCE6D(\uC608: t1)\uC744 \uCC38\uC870\uD558\uACE0 \uC788\uB2E4\uBA74,\n // \uC0C1\uC704 \uD638\uC2A4\uD2B8\uC5D0\uC11C \uBC1C\uC0DD\uD558\uB294 \uC774\uBCA4\uD2B8\uB97C \uAC10\uC9C0\uD574\uC57C \uD568.\n const $hosts = SwcUtils.findAllSwcHosts(el);\n $hosts.forEach(host => {\n const hAlias = host.getAttribute('as');\n if (hAlias) {\n const hostBindKey = `parent-host-event:${hAlias}`;\n let hBound = this._boundElements.get(host);\n if (!hBound) {\n hBound = new Set();\n this._boundElements.set(host, hBound);\n }\n if (!hBound.has(hostBindKey)) {\n host.addEventListener(STATE_CHANGE_EVENT, () => {\n // \uBD80\uBAA8 \uBCC4\uCE6D\uC774 \uBC14\uB00C\uC5C8\uC73C\uBBC0\uB85C, \uD574\uB2F9 \uBCC4\uCE6D\uC744 \uC0AC\uC6A9\uD558\uB294 \uC790\uC2E0\uC758 \uBC14\uC778\uB529\uB4E4 \uAC31\uC2E0\n this._updateState(hAlias);\n });\n hBound.add(hostBindKey);\n }\n }\n });\n\n Array.from(el.attributes).forEach(attr => {\n if (attr.name.startsWith('swc-on-') && !swcLifecycleAttributes.includes(attr.name)) {\n const eventName = attr.name.substring(7);\n if (eventName === 'connected') {\n const eventKey = `attr-once:${attr.name}`;\n let bound = this._boundElements.get(el);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(el, bound);\n }\n if (!bound.has(eventKey)) {\n const script = el.getAttribute(attr.name);\n if (script) {\n try {\n const $hosts = SwcUtils.findAllSwcHosts(el);\n const $firstHost = $hosts[0] || null;\n const $lastHost = $hosts[$hosts.length - 1] || null;\n const $host = $lastHost;\n new Function('event', '$data', '$host', '$hosts', '$firstHost', '$lastHost', ...SWC_DOM_HELPER_KEYS, script).call(el, null, null, $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n bound.add(eventKey);\n }\n return;\n }\n\n const eventKey = `attr-event:${attr.name}`;\n let bound = this._boundElements.get(el);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(el, bound);\n }\n if (!bound.has(eventKey)) {\n const handler = (event: any) => {\n const rawScript = el.getAttribute(attr.name);\n if (rawScript) {\n try {\n const $hosts = SwcUtils.findAllSwcHosts(el);\n const $firstHost = $hosts[0] || null;\n const $lastHost = $hosts[$hosts.length - 1] || null;\n const $host = $lastHost;\n new Function('event', '$data', '$host', '$hosts', '$firstHost', '$lastHost', ...SWC_DOM_HELPER_KEYS, rawScript).call(el, event, (event as CustomEvent).detail, $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n };\n el.addEventListener(eventName, handler);\n\n bound.add(eventKey);\n if (config.autoRemoveEventListeners) this._activeListeners.push({ el, type: eventName, handler });\n }\n }\n this._parseAndBind(attr, 'attribute', el);\n });\n\n // --- Scope Protection: Don't scan inside child SWC components ---\n // is \uC5B4\uD2B8\uB9AC\uBDF0\uD2B8 \uBC29\uC2DD \uCEE4\uC2A4\uD140 \uC5D8\uB9AC\uBA3C\uD2B8\uB3C4 \uD3EC\uD568 (swc-for-of-*, swc-if-* \uB4F1)\n const isSwcChild = (el as any)._swcId || getElementConfig(el.constructor) || (el.getAttribute('is')?.startsWith('swc-') ?? false);\n if (isSwcChild) {\n const next = walker.nextSibling();\n if (!next) break;\n node = next;\n if (node.nodeType === Node.TEXT_NODE) this._parseAndBind(node, 'text');\n }\n }\n }\n };\n if (this.shadowRoot) scan(this.shadowRoot);\n scan(this as any as Node);\n }\n\n private _parseAndBind(node: Node | Attr, type: 'text' | 'attribute', owner?: HTMLElement) {\n const tplKey = `__swc_original_${this._swcId}`;\n const isAlreadyBound = (node as any).__swc_bound_ids?.has(this._swcId);\n const content = (node as any)[tplKey] || node.textContent || '';\n const matches = Array.from(content.matchAll(/{{(.*?)}}/g)) as any[];\n if (matches.length === 0 || isAlreadyBound) return;\n\n matches.forEach(match => {\n const fullPath = (match[1] as string).trim();\n const rootName = fullPath.split('.')[0];\n const isState = stateList?.some(s => s.options.name === rootName);\n const isAttr = attributePropsList?.some(a => a.options.name === rootName);\n const isLogicKey = (this as any)._asKey === rootName || (this as any)._asIndexKey === rootName;\n const isExternal = this._externalSources.has(rootName);\n const isSelfAlias = this.getAttribute('as') === rootName;\n const isInstanceProp = rootName in this;\n\n // --- [FIX] \uBD80\uBAA8 \uD638\uC2A4\uD2B8 \uCCB4\uC778\uC5D0\uC11C \uBCC4\uCE6D \uD655\uC778 \uCD94\uAC00 ---\n let isParentAlias = false;\n let curr: any = (this as any).parentElement || ((this as any).getRootNode?.() as any)?.host;\n while (curr) {\n if (curr.getAttribute?.('as') === rootName) {\n isParentAlias = true;\n break;\n }\n curr = curr.parentElement || (curr.getRootNode?.() as any)?.host;\n }\n\n if (!isState && !isAttr && !isLogicKey && !isExternal && !isSelfAlias && !isInstanceProp && !isParentAlias) return;\n\n if (!this._stateBindings.has(rootName)) this._stateBindings.set(rootName, []);\n if (!(node as any)[tplKey]) (node as any)[tplKey] = content;\n if (!(node as any).__swc_bound_ids) (node as any).__swc_bound_ids = new Set();\n (node as any).__swc_bound_ids.add(this._swcId);\n this._stateBindings.get(rootName)!.push({ node, type, owner, path: fullPath });\n this._updateState(rootName);\n });\n }\n\n private _isUpdatingState = false;\n\n private _updateState(stateName: string) {\n if (!this._stateBindings) return;\n if (this._isUpdatingState) return;\n this._isUpdatingState = true;\n try {\n this._executeBindingUpdate(stateName);\n const selfAlias = this.getAttribute('as');\n if (selfAlias && selfAlias !== stateName) this._executeBindingUpdate(selfAlias);\n\n // --- [FIX] \uC790\uC2DD\uB4E4\uC5D0\uAC8C \uC0C1\uD0DC \uBCC0\uACBD \uC54C\uB9BC ---\n this.dispatchEvent(\n new CustomEvent(STATE_CHANGE_EVENT, {\n bubbles: true,\n composed: true,\n detail: { source: stateName, host: this }\n })\n );\n } finally {\n this._isUpdatingState = false;\n }\n }\n\n private _executeBindingUpdate(stateName: string) {\n const bindings = this._stateBindings.get(stateName);\n if (!bindings) return;\n const tplKey = `__swc_original_${this._swcId}`;\n bindings.forEach(bin => {\n let text = (bin.node as any)[tplKey];\n if (!text) return;\n const matches = Array.from(text.matchAll(/{{(.*?)}}/g)) as RegExpMatchArray[];\n let updatedText = text;\n for (const match of matches) {\n const path = match[1].trim();\n const root = path.split('.')[0];\n let val: any = undefined;\n let current: HTMLElement | null = this as any as HTMLElement;\n while (current) {\n const currentNewClass = current as any;\n if (current.getAttribute('as') === root) {\n val = SwcUtils.getValueByPath(current, path.split('.').slice(1).join('.') || 'value', 'value');\n if (val !== SWC_NOT_FOUND) break;\n }\n const externalSource = currentNewClass._externalSources?.get(root);\n if (externalSource) {\n val = SwcUtils.getValueByPath(externalSource, path.split('.').slice(1).join('.') || 'value', 'value');\n if (val !== SWC_NOT_FOUND) break;\n }\n const cStates = getStateMetadataList(current.constructor);\n const cAttrs = getAttributeMetadataList(current.constructor);\n const sMeta = cStates?.find(s => s.options.name === root);\n const aMeta = cAttrs?.find(a => a.options.name === root);\n if (sMeta || aMeta) {\n // \uD504\uB85C\uD37C\uD2F0 \uD0A4\uB85C \uC778\uC2A4\uD134\uC2A4\uC5D0\uC11C \uB8E8\uD2B8 \uAC12\uC744 \uBA3C\uC800 \uAC00\uC838\uC628 \uB4A4 \uB098\uBA38\uC9C0 \uACBD\uB85C\uB97C \uD0D0\uC0C9\n const propKey = sMeta ? String(sMeta.propertyKey) : String(aMeta!.propertyKey);\n const rootVal = (current as any)[propKey];\n const subPath = path.split('.').slice(1).join('.');\n if (subPath) {\n // superUser.name \u2192 rootVal = superUser \uAC1D\uCCB4, subPath = \"name\"\n val = SwcUtils.getValueByPath(rootVal, subPath, subPath.split('.')[0]);\n if (val === SWC_NOT_FOUND) {\n // \uB2E8\uC21C \uC810 \uACBD\uB85C \uC9C1\uC811 \uC811\uADFC\n const parts = subPath.split('.');\n let cur = rootVal;\n for (const p of parts) {\n if (cur === null || cur === undefined) {\n cur = SWC_NOT_FOUND;\n break;\n }\n cur = cur[p];\n }\n if (cur !== undefined && cur !== SWC_NOT_FOUND) val = cur;\n }\n } else {\n // \uB8E8\uD2B8 \uC790\uCCB4\uAC00 \uAC12 (e.g. {{superUser}} \uC804\uCCB4)\n val = rootVal;\n }\n if (val !== SWC_NOT_FOUND && val !== undefined) break;\n }\n\n // Fallback: check raw property on instance even if not @state\n if (root in current) {\n val = SwcUtils.getValueByPath(current, path, root);\n if (val !== SWC_NOT_FOUND) break;\n }\n\n current = current.parentElement || (current.getRootNode() as any).host;\n }\n if (val !== SWC_NOT_FOUND && val !== undefined) {\n const strVal = val === null ? '' : typeof val === 'object' ? JSON.stringify(val) : String(val);\n updatedText = updatedText.replace(match[0], strVal);\n if (bin.type === 'attribute' && bin.owner) {\n const attrName = (bin.node as Attr).name;\n const ownerAttrs = getAttributeMetadataList(bin.owner.constructor);\n const attrMeta = ownerAttrs?.find(a => a.options.name === attrName);\n const propName = attrMeta ? String(attrMeta.propertyKey) : attrName.replace(/-([a-z])/g, g => g[1].toUpperCase());\n\n if (val === null || val === undefined) {\n bin.owner.removeAttribute(attrName);\n if (propName in bin.owner) (bin.owner as any)[propName] = val;\n } else {\n if (propName in bin.owner) (bin.owner as any)[propName] = val;\n bin.owner.setAttribute(attrName, updatedText);\n if ((attrName === 'value' || attrName === 'checked') && bin.owner.tagName.match(/INPUT|TEXTAREA|SELECT/)) {\n (bin.owner as any)[attrName] = updatedText;\n }\n }\n }\n }\n }\n if (bin.type === 'text') bin.node.textContent = updatedText;\n });\n }\n\n disconnectedCallback() {\n this._executeSwcScript('swc-on-before-disconnected');\n const bMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_BEFORE_DISCONNECTED_METADATA_KEY);\n bMethods?.forEach(m => {\n if (typeof (this as any)[m] === 'function') (this as any)[m]();\n });\n if (this._observer) this._observer.disconnect();\n if (this._shadowObserver) this._shadowObserver.disconnect();\n if (config.autoRemoveEventListeners) {\n this._activeListeners.forEach(({ el, type, handler, options }) => el.removeEventListener(type, handler, options));\n this._activeListeners = [];\n }\n if (super.disconnectedCallback) super.disconnectedCallback();\n const aMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_AFTER_DISCONNECTED_METADATA_KEY);\n aMethods?.forEach(m => {\n if (typeof (this as any)[m] === 'function') (this as any)[m]();\n });\n this._executeSwcScript('swc-on-after-disconnected');\n }\n\n adoptedCallback() {\n this._executeSwcScript('swc-on-before-adopted');\n const bMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_BEFORE_ADOPTED_METADATA_KEY);\n bMethods?.forEach(m => {\n if (typeof (this as any)[m] === 'function') (this as any)[m]();\n });\n if (super.adoptedCallback) super.adoptedCallback();\n const aMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_AFTER_ADOPTED_METADATA_KEY);\n aMethods?.forEach(m => {\n if (typeof (this as any)[m] === 'function') (this as any)[m]();\n });\n this._executeSwcScript('swc-on-after-adopted');\n }\n\n async connectedCallback() {\n this._executeSwcScript('swc-on-before-connected');\n const bMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_BEFORE_CONNECTED_METADATA_KEY);\n bMethods?.forEach(m => {\n if (typeof (this as any)[m] === 'function') (this as any)[m]();\n });\n if (typeof (this as any).initCore === 'function') (this as any).initCore();\n const iHtmlList = getInnerHtmlMetadataList(this);\n let sContent = '';\n let lContent = '';\n if (iHtmlList) {\n for (const meta of iHtmlList) {\n const result = await (this as any)[meta.propertyKey]();\n if (result !== undefined) {\n if (meta.options.useShadow === true) sContent += result;\n else lContent += result;\n }\n }\n }\n if (this.shadowRoot) this.shadowRoot.innerHTML = sContent;\n if (lContent) this.innerHTML = lContent;\n (this as any)._syncDecorators();\n\n const isManagedByParent = !!SwcUtils.findNearestSwcHost(this as any);\n\n if (!isManagedByParent) {\n Array.from(this.attributes as any).forEach((attr: any) => {\n if (attr.name.startsWith('swc-on-') && swcLifecycleAttributes.indexOf(attr.name) === -1) {\n const eventName = attr.name.substring(7);\n if (eventName === 'connected') {\n const eventKey = `host-attr-once:${attr.name}`;\n let bound = this._boundElements.get(this as any);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(this as any, bound);\n }\n if (!bound.has(eventKey)) {\n const script = (this as any).getAttribute(attr.name);\n if (script) {\n try {\n const $hosts = SwcUtils.findAllSwcHosts(this as any);\n const $firstHost = $hosts[0] || null;\n const $lastHost = $hosts[$hosts.length - 1] || null;\n const $host = $lastHost;\n new Function('event', '$data', '$host', '$hosts', '$firstHost', '$lastHost', ...SWC_DOM_HELPER_KEYS, script).call(this, null, null, $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n bound.add(eventKey);\n }\n return;\n }\n\n const eventKey = `host-attr-event:${attr.name}`;\n let bound = this._boundElements.get(this as any);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(this as any, bound);\n }\n\n if (!bound.has(eventKey)) {\n const handler = (event: any) => {\n const script = (this as any).getAttribute(attr.name);\n if (script) {\n try {\n const $hosts = SwcUtils.findAllSwcHosts(this as any);\n const $firstHost = $hosts[0] || null;\n const $lastHost = $hosts[$hosts.length - 1] || null;\n const $host = $lastHost;\n new Function('event', '$data', '$host', '$hosts', '$firstHost', '$lastHost', ...SWC_DOM_HELPER_KEYS, script).call(this, event, (event as CustomEvent).detail, $host, $hosts, $firstHost, $lastHost, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n };\n this.addEventListener(eventName, handler);\n\n bound.add(eventKey);\n if (config.autoRemoveEventListeners) this._activeListeners.push({ el: this as any, type: eventName, handler });\n }\n }\n });\n }\n\n const mutationMetaList = getMutationSubscribeMetadataList(this);\n\n const fireMutationCallbacks = (mutationList: MutationRecord[], observer: MutationObserver, root: 'light' | 'shadow') => {\n mutationMetaList?.forEach(meta => {\n const r = meta.options.root ?? 'auto';\n const matches = r === 'all' || r === root || (r === 'auto' && (this.shadowRoot ? root === 'shadow' : root === 'light'));\n if (matches && typeof (this as any)[meta.propertyKey] === 'function') {\n (this as any)[meta.propertyKey](mutationList, observer, root);\n }\n });\n };\n\n this._observer = new (win as any).MutationObserver((mutationList: MutationRecord[], observer: MutationObserver) => {\n (this as any)._syncDecorators();\n fireMutationCallbacks(mutationList, observer, 'light');\n });\n // @ts-ignore\n this._observer.observe(this as any, { childList: true, subtree: true });\n\n if (this.shadowRoot) {\n this._shadowObserver = new (win as any).MutationObserver((mutationList: MutationRecord[], observer: MutationObserver) => {\n (this as any)._syncDecorators();\n fireMutationCallbacks(mutationList, observer, 'shadow');\n });\n // @ts-ignore\n this._shadowObserver.observe(this.shadowRoot, { childList: true, subtree: true });\n }\n if (super.connectedCallback) await super.connectedCallback();\n const aMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_AFTER_CONNECTED_METADATA_KEY);\n aMethods?.forEach(m => {\n if (typeof (this as any)[m] === 'function') (this as any)[m]();\n });\n this._executeSwcScript('swc-on-after-connected');\n }\n\n attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null) {\n if (super.attributeChangedCallback) super.attributeChangedCallback(name, oldValue, newValue);\n if (attributePropsList) {\n attributePropsList.forEach(meta => {\n if (meta.options.name === name) {\n const current = (this as any)[meta.propertyKey];\n // \uAC1D\uCCB4/\uBC30\uC5F4 \uD0C0\uC785\uC740 attributeChangedCallback\uC5D0\uC11C setter\uB97C \uC7AC\uD638\uCD9C\uD558\uC9C0 \uC54A\uC74C\n // (setter\uC5D0\uC11C setAttribute\uB97C \uD558\uC9C0 \uC54A\uC73C\uBBC0\uB85C \uC774 \uACBD\uB85C\uB85C \uB4E4\uC5B4\uC62C \uC77C\uC774 \uC5C6\uACE0,\n // \uC678\uBD80\uC5D0\uC11C attribute\uB97C \uC9C1\uC811 \uBC14\uAFB8\uB294 \uACBD\uC6B0\uB9CC \uCC98\uB9AC)\n if (typeof current === 'object' && current !== null) return;\n if (String(current) !== String(newValue)) (this as any)[meta.propertyKey] = newValue;\n }\n });\n }\n if (typeof (this as any)._updateState === 'function') (this as any)._updateState(name);\n const aMethodsMap = getLifecycleMetadata(constructor, ON_ATTRIBUTE_CHANGED_METADATA_KEY) as Map<string, (string | symbol)[]>;\n const mKeys = aMethodsMap?.get(name);\n if (mKeys && Array.isArray(mKeys))\n mKeys.forEach(key => {\n if (typeof (this as any)[key] === 'function') (this as any)[key](newValue, oldValue, name);\n });\n if (emitCustomEventList) {\n const eMeta = emitCustomEventList.find(it => it.options.attributeName === name);\n if (eMeta) {\n const eType = eMeta.options.type;\n const oHandler = this._emitHandlers.get(eType);\n if (oHandler) this.removeEventListener(eType, oHandler);\n if (newValue) {\n const nHandler = (e: Event) => {\n new Function('event', '$data', newValue).call(this, e, (e as CustomEvent).detail);\n };\n this.addEventListener(eType, nHandler);\n this._emitHandlers.set(eType, nHandler);\n }\n }\n }\n const wMethodsKeys = aMethodsMap?.get(ATTRIBUTE_CHANGED_WILDCARD);\n if (wMethodsKeys && Array.isArray(wMethodsKeys))\n wMethodsKeys.forEach(key => {\n if (typeof (this as any)[key] === 'function') (this as any)[key](newValue, oldValue, name);\n });\n this._executeSwcScript('swc-on-attribute-changed', { $new: newValue, $old: oldValue, $name: name });\n }\n };\n\n ReflectUtils.defineMetadata(ELEMENT_CONFIG_KEY, config, NewClass);\n ReflectUtils.defineMetadata(ELEMENT_CONFIG_KEY, config, constructor);\n\n const registry = config.customElementRegistry || (typeof win !== 'undefined' ? win.customElements : undefined);\n if (registry && !registry.get(config.name)) {\n const options = config.extends ? { extends: config.extends } : undefined;\n registry.define(config.name, NewClass as any, options);\n }\n\n return NewClass as any;\n };\n\nexport const getElementConfig = (target: any): ElementConfig | undefined => {\n const constructor = target instanceof Function ? target : target.constructor;\n return ReflectUtils.getMetadata(ELEMENT_CONFIG_KEY, constructor);\n};\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["eventKey", "bound"
|
|
4
|
+
"sourcesContent": ["import { ReflectUtils } from '@dooboostore/core/reflect/ReflectUtils';\nimport { getInnerHtmlMetadataList } from './innerHtml';\nimport { getQueryMetadata } from './query';\nimport { getQueryAllMetadata } from './queryAll';\nimport { getAddEventListenerMetadata } from './addEventListener';\nimport { getLifecycleMetadata, ON_BEFORE_CONNECTED_METADATA_KEY, ON_AFTER_CONNECTED_METADATA_KEY, ON_BEFORE_DISCONNECTED_METADATA_KEY, ON_AFTER_DISCONNECTED_METADATA_KEY, ON_BEFORE_ADOPTED_METADATA_KEY, ON_AFTER_ADOPTED_METADATA_KEY, ON_ADD_EVENT_LISTENER_METADATA_KEY, ON_ATTRIBUTE_CHANGED_METADATA_KEY, ATTRIBUTE_CHANGED_WILDCARD, getMutationSubscribeMetadataList } from './lifecycles';\nimport { getAttributeMetadataList } from './attribute';\nimport { getStateMetadataList } from './state';\nimport { getEmitCustomEventMetadataList } from './emitCustomEvent';\nimport { SwcUtils, SWC_NOT_FOUND } from '../utils/Utils';\nimport { HTML_TAG_ENTRIES } from '../config/config';\nimport {getInject, SituationTypeContainer, SituationTypeContainers} from '@dooboostore/simple-boot/decorators/inject/Inject';\nimport { InjectSituationType, HostSet } from '../elements/SwcInterfaces';\nimport { ConstructorType } from '@dooboostore/core/types';\n\nexport interface ElementConfig {\n name: string;\n extends?: string;\n observedAttributes?: string[];\n customElementRegistry?: CustomElementRegistry;\n autoRemoveEventListeners?: boolean;\n window?: Window;\n}\n\nexport const ELEMENT_CONFIG_KEY = Symbol('simple-web-component:element-config');\nexport const STATE_CHANGE_EVENT = 'swc:state-change';\n\n// --- \uD658\uACBD \uCD08\uAE30\uD654 \uD5EC\uD37C ---\n\nfunction buildEnv(configWindow?: Window) {\n const win: any = configWindow || (typeof window !== 'undefined' ? window : undefined);\n const doc: Document = win?.document;\n\n const builtInTagMap = new Map<any, string>();\n for (const [cls, tag] of HTML_TAG_ENTRIES) {\n if (win?.[cls]) builtInTagMap.set(win[cls], tag);\n }\n\n const domHelpers = {\n $d: doc,\n $w: win,\n $q: (sel: string, root?: Element | Document | ShadowRoot) => (root ?? doc).querySelector(sel),\n $qa: (sel: string, root?: Element | Document | ShadowRoot) => Array.from((root ?? doc).querySelectorAll(sel)),\n $qi: (id: string, root?: Document | ShadowRoot) => (root ?? doc).getElementById(id)\n } as const;\n\n return { win, doc, builtInTagMap, domHelpers };\n}\n\nexport const elementDefine =\n (inConfig: ElementConfig | string): ClassDecorator =>\n (constructor: any) => {\n const config: ElementConfig = typeof inConfig === 'string' ? { name: inConfig } : inConfig;\n const { win, doc, builtInTagMap: BUILT_IN_TAG_MAP, domHelpers: SWC_DOM_HELPERS } = buildEnv(config.window);\n config.window = win;\n const SWC_DOM_HELPER_KEYS = Object.keys(SWC_DOM_HELPERS) as (keyof typeof SWC_DOM_HELPERS)[];\n const SWC_DOM_HELPER_VALS = () => SWC_DOM_HELPER_KEYS.map(k => (SWC_DOM_HELPERS as any)[k]);\n\n let extendsTagName = config.extends;\n if (!extendsTagName) {\n let proto = constructor;\n while (proto && proto !== HTMLElement && proto !== Function.prototype) {\n extendsTagName = BUILT_IN_TAG_MAP.get(proto);\n if (extendsTagName) break;\n proto = Object.getPrototypeOf(proto);\n }\n config.extends = extendsTagName;\n }\n\n const attributePropsList = getAttributeMetadataList(constructor);\n const emitCustomEventList = getEmitCustomEventMetadataList(constructor);\n const stateList = getStateMetadataList(constructor);\n const observedFromProps = attributePropsList ? attributePropsList.map(it => it.options.name!) : [];\n const observedFromEmits = emitCustomEventList ? emitCustomEventList.map(it => it.options.attributeName!) : [];\n const swcLifecycleAttributes = ['swc-on-constructor', 'swc-on-before-connected', 'swc-on-after-connected', 'swc-on-before-disconnected', 'swc-on-after-disconnected', 'swc-on-before-adopted', 'swc-on-after-adopted', 'swc-on-attribute-changed'];\n const mergedObservedAttributes = [...new Set([...(config.observedAttributes ?? []), ...observedFromProps, ...observedFromEmits, ...swcLifecycleAttributes])];\n\n const NewClass = class extends (constructor as any) {\n private _swcId = Math.random().toString(36).substring(2, 11);\n private _observer: MutationObserver | null = null;\n private _shadowObserver: MutationObserver | null = null;\n private _boundElements = new WeakMap<Element, Set<string | symbol>>();\n private _activeListeners: Array<{ el: Element | HTMLElement; type: string; handler: EventListener; options?: any }> = [];\n private _emitHandlers = new Map<string, EventListener>();\n private _stateBindings = new Map<string, any[]>();\n private _internalStates = new Map<string | symbol, any>();\n private _externalSources = new Map<string, HTMLElement>();\n\n _getHostContext(): Record<string, any> {\n const ctx: Record<string, any> = {};\n if (stateList) {\n stateList.forEach(meta => {\n const name = meta.options.name!;\n const val = this._internalStates.get(meta.propertyKey);\n ctx[name] = val;\n });\n }\n if (attributePropsList) {\n attributePropsList.forEach(meta => {\n const name = meta.options.name!;\n const val = this._internalStates.get(meta.propertyKey);\n ctx[name] = val;\n });\n }\n const hostVal = (this as any).value !== undefined ? (this as any).value : this;\n ctx['value'] = hostVal;\n const alias = this.getAttribute('as');\n if (alias && alias !== 'value') ctx[alias] = hostVal;\n return ctx;\n }\n\n static get observedAttributes() {\n return mergedObservedAttributes;\n }\n\n private _executeSwcScript(attrName: string, hostSet: HostSet, extraArgs: Record<string, any> = {}) {\n const script = this.getAttribute(attrName);\n if (script) {\n try {\n const args = { ...hostSet, ...SWC_DOM_HELPERS, ...extraArgs };\n const argNames = Object.keys(args);\n const argValues = Object.values(args);\n new Function(...argNames, script).apply(this, argValues);\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attrName} script:`, e);\n }\n }\n }\n\n private async _invokeLifecycleMethod(methodName: string | symbol, hostSet: HostSet, extraArgs: any[] = []) {\n if (typeof (this as any)[methodName] !== 'function') return;\n const app = hostSet.$appHost?.simpleApplication;\n\n if (app) {\n const otherStorage = new Map<any, any>();\n const situations = new SituationTypeContainers([new SituationTypeContainer({ situationType: InjectSituationType.HOST_SET, data: hostSet }), new SituationTypeContainer({ situationType: InjectSituationType.APP_HOST, data: hostSet.$appHost }), new SituationTypeContainer({ situationType: InjectSituationType.APP_HOSTS, data: hostSet.$appHosts }), new SituationTypeContainer({ situationType: InjectSituationType.HOST, data: hostSet.$host }), new SituationTypeContainer({ situationType: InjectSituationType.HOSTS, data: hostSet.$hosts }), new SituationTypeContainer({ situationType: InjectSituationType.FIRST_HOST, data: hostSet.$firstHost }), new SituationTypeContainer({ situationType: InjectSituationType.LAST_HOST, data: hostSet.$lastHost }), new SituationTypeContainer({ situationType: InjectSituationType.FIRST_APP_HOST, data: hostSet.$firstAppHost }), new SituationTypeContainer({ situationType: InjectSituationType.LAST_APP_HOST, data: hostSet.$lastAppHost })]);\n otherStorage.set(SituationTypeContainers, situations);\n\n return app.simstanceManager.executeBindParameterSimPromise(\n {\n target: this,\n targetKey: methodName,\n inputParameters: extraArgs\n },\n otherStorage\n );\n } else {\n return (this as any)[methodName](hostSet,...extraArgs);\n }\n }\n\n constructor(...args: any[]) {\n super(...args);\n const hostSet = SwcUtils.getHostSet(this as any);\n this._executeSwcScript('swc-on-constructor', hostSet);\n\n if (stateList) {\n stateList.forEach(meta => {\n const key = meta.propertyKey;\n const stateName = meta.options.name!;\n const initialVal = (this as any)[key];\n this._internalStates.set(\n key,\n SwcUtils.createReactiveProxy(initialVal, () => this._updateState(stateName))\n );\n Object.defineProperty(this, key, {\n get: () => this._internalStates.get(key),\n set: newVal => {\n if (this._internalStates.get(key) === newVal) return;\n this._internalStates.set(\n key,\n SwcUtils.createReactiveProxy(newVal, () => this._updateState(stateName))\n );\n this._updateState(stateName);\n },\n enumerable: true,\n configurable: true\n });\n });\n }\n if (attributePropsList) {\n attributePropsList.forEach(meta => {\n const key = meta.propertyKey;\n const attrName = meta.options.name!;\n const attrValue = this.getAttribute(attrName);\n let initialVal = attrValue !== null ? attrValue : (this as any)[key];\n if (initialVal === undefined) initialVal = null;\n if (attrValue !== null) {\n if (meta.options.type === Number) initialVal = Number(attrValue);\n else if (meta.options.type === Boolean) initialVal = true;\n else if (meta.options.type === Object) {\n try {\n initialVal = JSON.parse(attrValue);\n } catch (e) {}\n }\n }\n this._internalStates.set(key, initialVal);\n Object.defineProperty(this, key, {\n get: () => this._internalStates.get(key),\n set: newVal => {\n if (this._internalStates.get(key) === newVal) return;\n this._internalStates.set(key, newVal);\n if (typeof (this as any)._updateState === 'function') (this as any)._updateState(attrName);\n if (!meta.options.disableReflect && this.setAttribute && typeof newVal !== 'object') {\n if (newVal === null || newVal === undefined || newVal === false) this.removeAttribute(attrName);\n else this.setAttribute(attrName, String(newVal));\n }\n },\n enumerable: true,\n configurable: true\n });\n });\n }\n const innerHtmlList = getInnerHtmlMetadataList(this);\n if (innerHtmlList?.some(it => it.options.useShadow === true) && !this.shadowRoot) {\n this.attachShadow({ mode: 'open' });\n }\n }\n\n private _isSyncing = false;\n private _syncDecorators() {\n if (this._isSyncing) return;\n this._isSyncing = true;\n try {\n this._buildStateMap();\n this._syncEventListenersAndQueries();\n } finally {\n this._isSyncing = false;\n }\n }\n\n private _syncEventListenersAndQueries() {\n const getSearchRoots = (rootOption?: string): Node[] => {\n const roots: Node[] = [];\n if (rootOption === 'shadow') {\n if (this.shadowRoot) roots.push(this.shadowRoot);\n } else if (rootOption === 'light') {\n roots.push(this as any as Node);\n } else if (rootOption === 'all') {\n if (this.shadowRoot) roots.push(this.shadowRoot);\n roots.push(this as any as Node);\n } else {\n roots.push(this.shadowRoot || (this as any as Node));\n }\n return roots;\n };\n const queryMetadata = getQueryMetadata(this);\n if (queryMetadata) {\n queryMetadata\n .filter(it => it.isMethod)\n .forEach(it => {\n const searchRoots = getSearchRoots(it.options.root);\n let foundEl: Element | null = null;\n for (const root of searchRoots) {\n foundEl = it.selector ? (root as HTMLElement).querySelector(it.selector) : (this as any as Element);\n if (foundEl) break;\n }\n if (foundEl) {\n let bound = this._boundElements.get(foundEl);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(foundEl, bound);\n }\n if (!bound.has(it.propertyKey)) {\n (this as any)[it.propertyKey](foundEl);\n bound.add(it.propertyKey);\n }\n }\n });\n }\n const queryAllMetadata = getQueryAllMetadata(this);\n if (queryAllMetadata) {\n queryAllMetadata\n .filter(it => it.isMethod)\n .forEach(it => {\n const searchRoots = getSearchRoots(it.options.root);\n const allElements: Element[] = [];\n searchRoots.forEach(root => {\n const found = it.selector ? (root as HTMLElement).querySelectorAll(it.selector) : [this as any as Element];\n allElements.push(...Array.from(found));\n });\n (this as any)[it.propertyKey](allElements);\n });\n }\n const eventListeners = getAddEventListenerMetadata(this);\n if (eventListeners) {\n eventListeners.forEach(it => {\n const { query, type, root: rootOption, ...options } = it.options;\n const searchRoots = getSearchRoots(rootOption);\n searchRoots.forEach(root => {\n const targetElements = query ? (root as HTMLElement).querySelectorAll(query) : [this as any as Element];\n targetElements.forEach(targetElement => {\n if (targetElement) {\n let bound = this._boundElements.get(targetElement);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(targetElement, bound);\n }\n const eventKey = `event:${String(it.propertyKey)}:${type}`;\n if (!bound.has(eventKey)) {\n const handler = (event: any) => {\n if (it.options.stopImmediatePropagation) event.stopImmediatePropagation();\n if (it.options.stopPropagation) event.stopPropagation();\n if (it.options.preventDefault) event.preventDefault();\n (this as any)[it.propertyKey](event, targetElement);\n };\n targetElement.addEventListener(type, handler, options);\n bound.add(eventKey);\n if (config.autoRemoveEventListeners) this._activeListeners.push({ el: targetElement, type, handler, options });\n const addEventMethods = getLifecycleMetadata(this, ON_ADD_EVENT_LISTENER_METADATA_KEY);\n addEventMethods?.forEach((m: string | symbol) => {\n if (typeof (this as any)[m] === 'function') (this as any)[m](targetElement, type, handler);\n });\n }\n }\n });\n });\n });\n }\n }\n\n private _buildStateMap() {\n const scan = (root: Node) => {\n const walker = doc.createTreeWalker(root, (win as any).NodeFilter.SHOW_ELEMENT | (win as any).NodeFilter.SHOW_TEXT);\n let node: Node | null = null;\n while ((node = walker.nextNode())) {\n if (node.nodeType === Node.TEXT_NODE) this._parseAndBind(node, 'text');\n else if (node.nodeType === Node.ELEMENT_NODE) {\n const el = node as HTMLElement;\n const alias = el.getAttribute('as');\n if (alias && !this._externalSources.has(alias)) {\n this._externalSources.set(alias, el);\n const aliasKey = `alias-event:${alias}`;\n let bound = this._boundElements.get(el);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(el, bound);\n }\n if (!bound.has(aliasKey)) {\n el.addEventListener(STATE_CHANGE_EVENT, () => this._updateState(alias));\n bound.add(aliasKey);\n }\n }\n const $hosts = SwcUtils.findAllSwcHosts(el);\n $hosts.forEach(host => {\n const hAlias = host.getAttribute('as');\n if (hAlias) {\n const hostBindKey = `parent-host-event:${hAlias}`;\n let hBound = this._boundElements.get(host);\n if (!hBound) {\n hBound = new Set();\n this._boundElements.set(host, hBound);\n }\n if (!hBound.has(hostBindKey)) {\n host.addEventListener(STATE_CHANGE_EVENT, () => this._updateState(hAlias));\n hBound.add(hostBindKey);\n }\n }\n });\n Array.from(el.attributes).forEach(attr => {\n if (attr.name.startsWith('swc-on-') && !swcLifecycleAttributes.includes(attr.name)) {\n const eventName = attr.name.substring(7);\n const script = attr.value;\n const hostSet = SwcUtils.getHostSet(el);\n if (eventName === 'connected') {\n const eventKey = `attr-once:${attr.name}`;\n let bound = this._boundElements.get(el);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(el, bound);\n }\n if (!bound.has(eventKey)) {\n if (script) {\n try {\n const argNames = Object.keys(hostSet);\n const argValues = Object.values(hostSet);\n new Function('event', '$data', ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(el, null, null, ...argValues, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n bound.add(eventKey);\n }\n return;\n }\n const eventKey = `attr-event:${attr.name}`;\n let bound = this._boundElements.get(el);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(el, bound);\n }\n if (!bound.has(eventKey)) {\n const handler = (event: any) => {\n if (script) {\n try {\n const argNames = Object.keys(hostSet);\n const argValues = Object.values(hostSet);\n new Function('event', '$data', ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(el, event, (event as CustomEvent).detail, ...argValues, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n };\n el.addEventListener(eventName, handler);\n bound.add(eventKey);\n if (config.autoRemoveEventListeners) this._activeListeners.push({ el, type: eventName, handler });\n }\n }\n this._parseAndBind(attr, 'attribute', el);\n });\n const isSwcChild = (el as any)._swcId || getElementConfig(el.constructor) || (el.getAttribute('is')?.startsWith('swc-') ?? false);\n if (isSwcChild) {\n const next = walker.nextSibling();\n if (!next) break;\n node = next;\n if (node.nodeType === Node.TEXT_NODE) this._parseAndBind(node, 'text');\n }\n }\n }\n };\n if (this.shadowRoot) scan(this.shadowRoot);\n scan(this as any as Node);\n }\n\n private _parseAndBind(node: Node | Attr, type: 'text' | 'attribute', owner?: HTMLElement) {\n const tplKey = `__swc_original_${this._swcId}`;\n const isAlreadyBound = (node as any).__swc_bound_ids?.has(this._swcId);\n const content = (node as any)[tplKey] || node.textContent || '';\n const matches = Array.from(content.matchAll(/{{(.*?)}}/g)) as any[];\n if (matches.length === 0 || isAlreadyBound) return;\n matches.forEach(match => {\n const fullPath = (match[1] as string).trim();\n const rootName = fullPath.split('.')[0];\n const isState = stateList?.some(s => s.options.name === rootName);\n const isAttr = attributePropsList?.some(a => a.options.name === rootName);\n const isLogicKey = (this as any)._asKey === rootName || (this as any)._asItemKey === rootName || (this as any)._asIndexKey === rootName;\n const isExternal = this._externalSources.has(rootName);\n const isSelfAlias = this.getAttribute('as') === rootName;\n const isInstanceProp = rootName in this;\n let isParentAlias = false;\n let curr: any = (this as any).parentElement || ((this as any).getRootNode?.() as any)?.host;\n while (curr) {\n if (curr.getAttribute?.('as') === rootName) {\n isParentAlias = true;\n break;\n }\n curr = curr.parentElement || (curr.getRootNode?.() as any)?.host;\n }\n if (!isState && !isAttr && !isLogicKey && !isExternal && !isSelfAlias && !isInstanceProp && !isParentAlias) return;\n if (!this._stateBindings.has(rootName)) this._stateBindings.set(rootName, []);\n if (!(node as any)[tplKey]) (node as any)[tplKey] = content;\n if (!(node as any).__swc_bound_ids) (node as any).__swc_bound_ids = new Set();\n (node as any).__swc_bound_ids.add(this._swcId);\n this._stateBindings.get(rootName)!.push({ node, type, owner, path: fullPath });\n this._updateState(rootName);\n });\n }\n\n private _isUpdatingState = false;\n private _updateState(stateName: string) {\n if (!this._stateBindings) return;\n if (this._isUpdatingState) return;\n this._isUpdatingState = true;\n try {\n this._executeBindingUpdate(stateName);\n const selfAlias = this.getAttribute('as');\n if (selfAlias && selfAlias !== stateName) this._executeBindingUpdate(selfAlias);\n this.dispatchEvent(new CustomEvent(STATE_CHANGE_EVENT, { bubbles: true, composed: true, detail: { source: stateName, host: this } }));\n } finally {\n this._isUpdatingState = false;\n }\n }\n\n private _executeBindingUpdate(stateName: string) {\n const bindings = this._stateBindings.get(stateName);\n if (!bindings) return;\n const tplKey = `__swc_original_${this._swcId}`;\n bindings.forEach(bin => {\n let text = (bin.node as any)[tplKey];\n if (!text) return;\n const matches = Array.from(text.matchAll(/{{(.*?)}}/g)) as RegExpMatchArray[];\n let updatedText = text;\n for (const match of matches) {\n const path = match[1].trim();\n const root = path.split('.')[0];\n let val: any = undefined;\n let current: HTMLElement | null = this as any as HTMLElement;\n while (current) {\n const currentNewClass = current as any;\n if (current.getAttribute('as') === root) {\n val = SwcUtils.getValueByPath(current, path.split('.').slice(1).join('.') || 'value', 'value');\n if (val !== SWC_NOT_FOUND) break;\n }\n const externalSource = currentNewClass._externalSources?.get(root);\n if (externalSource) {\n val = SwcUtils.getValueByPath(externalSource, path.split('.').slice(1).join('.') || 'value', 'value');\n if (val !== SWC_NOT_FOUND) break;\n }\n const cStates = getStateMetadataList(current.constructor);\n const cAttrs = getAttributeMetadataList(current.constructor);\n const sMeta = cStates?.find(s => s.options.name === root);\n const aMeta = cAttrs?.find(a => a.options.name === root);\n if (sMeta || aMeta) {\n const propKey = sMeta ? String(sMeta.propertyKey) : String(aMeta!.propertyKey);\n const rootVal = (current as any)[propKey];\n const subPath = path.split('.').slice(1).join('.');\n if (subPath) {\n val = SwcUtils.getValueByPath(rootVal, subPath, subPath.split('.')[0]);\n if (val === SWC_NOT_FOUND) {\n const parts = subPath.split('.');\n let cur = rootVal;\n for (const p of parts) {\n if (cur === null || cur === undefined) {\n cur = SWC_NOT_FOUND;\n break;\n }\n cur = cur[p];\n }\n if (cur !== undefined && cur !== SWC_NOT_FOUND) val = cur;\n }\n } else {\n val = rootVal;\n }\n if (val !== SWC_NOT_FOUND && val !== undefined) break;\n }\n if (root in current) {\n val = SwcUtils.getValueByPath(current, path, root);\n if (val !== SWC_NOT_FOUND) break;\n }\n current = current.parentElement || (current.getRootNode() as any).host;\n }\n if (val !== SWC_NOT_FOUND && val !== undefined) {\n const strVal = val === null ? '' : typeof val === 'object' ? JSON.stringify(val) : String(val);\n updatedText = updatedText.replace(match[0], strVal);\n if (bin.type === 'attribute' && bin.owner) {\n const attrName = (bin.node as Attr).name;\n const ownerAttrs = getAttributeMetadataList(bin.owner.constructor);\n const attrMeta = ownerAttrs?.find(a => a.options.name === attrName);\n const propName = attrMeta ? String(attrMeta.propertyKey) : attrName.replace(/-([a-z])/g, g => g[1].toUpperCase());\n if (val === null || val === undefined) {\n bin.owner.removeAttribute(attrName);\n if (propName in bin.owner) (bin.owner as any)[propName] = val;\n } else {\n if (propName in bin.owner) (bin.owner as any)[propName] = val;\n bin.owner.setAttribute(attrName, updatedText);\n if ((attrName === 'value' || attrName === 'checked') && bin.owner.tagName.match(/INPUT|TEXTAREA|SELECT/)) {\n (bin.owner as any)[attrName] = updatedText;\n }\n }\n }\n }\n }\n if (bin.type === 'text') bin.node.textContent = updatedText;\n });\n }\n\n disconnectedCallback() {\n const hostSet = SwcUtils.getHostSet(this as any);\n this._executeSwcScript('swc-on-before-disconnected', hostSet);\n const bMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_BEFORE_DISCONNECTED_METADATA_KEY);\n bMethods?.forEach(m => this._invokeLifecycleMethod(m, hostSet));\n if (this._observer) this._observer.disconnect();\n if (this._shadowObserver) this._shadowObserver.disconnect();\n if (config.autoRemoveEventListeners) {\n this._activeListeners.forEach(({ el, type, handler, options }) => el.removeEventListener(type, handler, options));\n this._activeListeners = [];\n }\n if (super.disconnectedCallback) super.disconnectedCallback();\n const aMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_AFTER_DISCONNECTED_METADATA_KEY);\n aMethods?.forEach(m => this._invokeLifecycleMethod(m, hostSet));\n this._executeSwcScript('swc-on-after-disconnected', hostSet);\n }\n\n adoptedCallback() {\n const hostSet = SwcUtils.getHostSet(this as any);\n this._executeSwcScript('swc-on-before-adopted', hostSet);\n const bMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_BEFORE_ADOPTED_METADATA_KEY);\n bMethods?.forEach(m => this._invokeLifecycleMethod(m, hostSet));\n if (super.adoptedCallback) super.adoptedCallback();\n const aMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_AFTER_ADOPTED_METADATA_KEY);\n aMethods?.forEach(m => this._invokeLifecycleMethod(m, hostSet));\n this._executeSwcScript('swc-on-after-adopted', hostSet);\n }\n\n async connectedCallback() {\n // await new Promise(resolve => setTimeout(resolve, 0));\n const hostSet = SwcUtils.getHostSet(this as any);\n this._executeSwcScript('swc-on-before-connected', hostSet);\n const bMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_BEFORE_CONNECTED_METADATA_KEY);\n if (bMethods) {\n for (const m of bMethods) {\n await this._invokeLifecycleMethod(m, hostSet);\n }\n }\n if (typeof (this as any).initCore === 'function') (this as any).initCore();\n const iHtmlList = getInnerHtmlMetadataList(this);\n let sContent = '';\n let lContent = '';\n if (iHtmlList) {\n for (const meta of iHtmlList) {\n const result = await (this as any)[meta.propertyKey]();\n if (result !== undefined) {\n if (meta.options.useShadow === true) sContent += result;\n else lContent += result;\n }\n }\n }\n if (this.shadowRoot) this.shadowRoot.innerHTML = sContent;\n if (lContent) this.innerHTML = lContent;\n (this as any)._syncDecorators();\n\n // --- Root Host self-binding logic ---\n const isManagedByParent = !!SwcUtils.findNearestSwcHost(this as any);\n if (!isManagedByParent) {\n Array.from(this.attributes as any).forEach((attr: any) => {\n if (attr.name.startsWith('swc-on-') && !swcLifecycleAttributes.includes(attr.name)) {\n const eventName = attr.name.substring(7);\n const script = attr.value;\n if (eventName === 'connected') {\n const eventKey = `host-attr-once:${attr.name}`;\n let bound = this._boundElements.get(this as any);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(this as any, bound);\n }\n if (!bound.has(eventKey)) {\n if (script) {\n try {\n const argNames = Object.keys(hostSet);\n const argValues = Object.values(hostSet);\n new Function('event', '$data', ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(this, null, null, ...argValues, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n bound.add(eventKey);\n }\n return;\n }\n const eventKey = `host-attr-event:${attr.name}`;\n let bound = this._boundElements.get(this as any);\n if (!bound) {\n bound = new Set();\n this._boundElements.set(this as any, bound);\n }\n if (!bound.has(eventKey)) {\n const handler = (event: any) => {\n if (script) {\n try {\n const argNames = Object.keys(hostSet);\n const argValues = Object.values(hostSet);\n new Function('event', '$data', ...argNames, ...SWC_DOM_HELPER_KEYS, script).call(this, event, (event as CustomEvent).detail, ...argValues, ...SWC_DOM_HELPER_VALS());\n } catch (e) {\n console.error(`[SWC] Failed to execute ${attr.name} script:`, e);\n }\n }\n };\n this.addEventListener(eventName, handler);\n bound.add(eventKey);\n if (config.autoRemoveEventListeners) this._activeListeners.push({ el: this as any, type: eventName, handler });\n }\n }\n });\n }\n\n const mutationMetaList = getMutationSubscribeMetadataList(this);\n const fireMutationCallbacks = (mutationList: MutationRecord[], observer: MutationObserver, root: 'light' | 'shadow') => {\n mutationMetaList?.forEach(meta => {\n const r = meta.options.root ?? 'auto';\n const matches = r === 'all' || r === root || (r === 'auto' && (this.shadowRoot ? root === 'shadow' : root === 'light'));\n if (matches && typeof (this as any)[meta.propertyKey] === 'function') {\n (this as any)[meta.propertyKey](mutationList, observer, root);\n }\n });\n };\n this._observer = new (win as any).MutationObserver((mutationList: MutationRecord[], observer: MutationObserver) => {\n (this as any)._syncDecorators();\n fireMutationCallbacks(mutationList, observer, 'light');\n });\n // @ts-ignore\n this._observer.observe(this as any, { childList: true, subtree: true });\n if (this.shadowRoot) {\n this._shadowObserver = new (win as any).MutationObserver((mutationList: MutationRecord[], observer: MutationObserver) => {\n (this as any)._syncDecorators();\n fireMutationCallbacks(mutationList, observer, 'shadow');\n });\n // @ts-ignore\n this._shadowObserver.observe(this.shadowRoot, { childList: true, subtree: true });\n }\n if (super.connectedCallback) await super.connectedCallback();\n const aMethods = getLifecycleMetadata<(string | symbol)[]>(this, ON_AFTER_CONNECTED_METADATA_KEY);\n if (aMethods) {\n for (const m of aMethods) {\n await this._invokeLifecycleMethod(m, hostSet);\n }\n }\n this._executeSwcScript('swc-on-after-connected', hostSet);\n }\n\n attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null) {\n if (super.attributeChangedCallback) super.attributeChangedCallback(name, oldValue, newValue);\n if (attributePropsList) {\n attributePropsList.forEach(meta => {\n if (meta.options.name === name) {\n const current = (this as any)[meta.propertyKey];\n if (typeof current === 'object' && current !== null) return;\n if (String(current) !== String(newValue)) (this as any)[meta.propertyKey] = newValue;\n }\n });\n }\n if (typeof (this as any)._updateState === 'function') (this as any)._updateState(name);\n const aMethodsMap = getLifecycleMetadata(constructor, ON_ATTRIBUTE_CHANGED_METADATA_KEY) as Map<string, (string | symbol)[]>;\n const mKeys = aMethodsMap?.get(name);\n const hostSet = SwcUtils.getHostSet(this as any);\n if (mKeys && Array.isArray(mKeys)) {\n mKeys.forEach(key => this._invokeLifecycleMethod(key, hostSet, [newValue, oldValue, name]));\n }\n if (emitCustomEventList) {\n const eMeta = emitCustomEventList.find(it => it.options.attributeName === name);\n if (eMeta) {\n const eType = eMeta.options.type;\n const oHandler = this._emitHandlers.get(eType);\n if (oHandler) this.removeEventListener(eType, oHandler);\n if (newValue) {\n const nHandler = (e: Event) => {\n new Function('event', '$data', newValue).call(this, e, (e as CustomEvent).detail);\n };\n this.addEventListener(eType, nHandler);\n this._emitHandlers.set(eType, nHandler);\n }\n }\n }\n const wMethodsKeys = aMethodsMap?.get(ATTRIBUTE_CHANGED_WILDCARD);\n if (wMethodsKeys && Array.isArray(wMethodsKeys)) {\n wMethodsKeys.forEach(key => this._invokeLifecycleMethod(key, hostSet, [newValue, oldValue, name]));\n }\n this._executeSwcScript('swc-on-attribute-changed', hostSet, { $new: newValue, $old: oldValue, $name: name });\n }\n };\n\n // [METADATA INHERITANCE FIX]\n // Copy method metadata from original constructor to NewClass\n // This ensures @Inject and other decorators on methods work correctly in the wrapped class.\n const originalProto = constructor.prototype;\n const newProto = NewClass.prototype;\n Object.getOwnPropertyNames(originalProto).forEach(name => {\n if (name === 'constructor') return;\n const keys = Reflect.getMetadataKeys(originalProto, name);\n keys.forEach(key => {\n const metadata = Reflect.getMetadata(key, originalProto, name);\n Reflect.defineMetadata(key, metadata, newProto, name);\n });\n });\n\n ReflectUtils.defineMetadata(ELEMENT_CONFIG_KEY, config, NewClass);\n ReflectUtils.defineMetadata(ELEMENT_CONFIG_KEY, config, constructor);\n const registry = config.customElementRegistry || (typeof win !== 'undefined' ? win.customElements : undefined);\n if (registry && !registry.get(config.name)) {\n const options = config.extends ? { extends: config.extends } : undefined;\n registry.define(config.name, NewClass as any, options);\n }\n return NewClass as any;\n };\n\nexport const getElementConfig = (target: any): ElementConfig | undefined => {\n const constructor = target instanceof Function ? target : target.constructor;\n return ReflectUtils.getMetadata(ELEMENT_CONFIG_KEY, constructor);\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["eventKey", "bound"]
|
|
7
7
|
}
|