@dooboostore/dom-render 1.0.106 → 1.0.107
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/dist/cjs/DomRender.d.js +16 -0
- package/dist/cjs/DomRender.d.js.map +7 -0
- package/dist/cjs/DomRender.js +5 -0
- package/dist/cjs/DomRender.js.map +1 -1
- package/dist/cjs/DomRenderProxy.d.js +17 -0
- package/dist/cjs/DomRenderProxy.d.js.map +7 -0
- package/dist/cjs/DomRenderProxy.d.ts +0 -1
- package/dist/cjs/DomRenderProxy.d.ts.map +1 -1
- package/dist/cjs/DomRenderProxy.js +6 -4
- package/dist/cjs/DomRenderProxy.js.map +2 -2
- package/dist/cjs/components/ComponentBase.d.js +17 -0
- package/dist/cjs/components/ComponentBase.d.js.map +7 -0
- package/dist/cjs/components/ComponentBase.d.ts +0 -1
- package/dist/cjs/components/ComponentBase.d.ts.map +1 -1
- package/dist/cjs/components/ComponentBase.js +71 -54
- package/dist/cjs/components/ComponentBase.js.map +2 -2
- package/dist/cjs/components/ComponentRouterBase.d.js +16 -0
- package/dist/cjs/components/ComponentRouterBase.d.js.map +7 -0
- package/dist/cjs/components/ComponentRouterBase.js +4 -0
- package/dist/cjs/components/ComponentRouterBase.js.map +1 -1
- package/dist/cjs/components/ComponentSet.d.js +16 -0
- package/dist/cjs/components/ComponentSet.d.js.map +7 -0
- package/dist/cjs/components/ComponentSet.js +5 -0
- package/dist/cjs/components/ComponentSet.js.map +1 -1
- package/dist/cjs/components/a/A.d.js +24 -0
- package/dist/cjs/components/a/A.d.js.map +7 -0
- package/dist/cjs/components/a/A.d.ts +1 -1
- package/dist/cjs/components/a/A.js +40 -32
- package/dist/cjs/components/a/A.js.map +1 -1
- package/dist/cjs/components/a/index.d.js +18 -0
- package/dist/cjs/components/a/index.d.js.map +7 -0
- package/dist/cjs/components/appender/Appender.d.js +24 -0
- package/dist/cjs/components/appender/Appender.d.js.map +7 -0
- package/dist/cjs/components/appender/Appender.d.ts +1 -1
- package/dist/cjs/components/appender/Appender.js +6 -0
- package/dist/cjs/components/appender/Appender.js.map +1 -1
- package/dist/cjs/components/appender/index.d.js +18 -0
- package/dist/cjs/components/appender/index.d.js.map +7 -0
- package/dist/cjs/components/checkbox/CheckBox.d.js +24 -0
- package/dist/cjs/components/checkbox/CheckBox.d.js.map +7 -0
- package/dist/cjs/components/checkbox/CheckBox.d.ts +3 -3
- package/dist/cjs/components/checkbox/CheckBox.js +7 -4
- package/dist/cjs/components/checkbox/CheckBox.js.map +1 -1
- package/dist/cjs/components/checkbox/index.d.js +18 -0
- package/dist/cjs/components/checkbox/index.d.js.map +7 -0
- package/dist/cjs/components/choose/Choose.d.js +24 -0
- package/dist/cjs/components/choose/Choose.d.js.map +7 -0
- package/dist/cjs/components/choose/Choose.d.ts +3 -3
- package/dist/cjs/components/choose/Choose.js +11 -1
- package/dist/cjs/components/choose/Choose.js.map +1 -1
- package/dist/cjs/components/choose/index.d.js +18 -0
- package/dist/cjs/components/choose/index.d.js.map +7 -0
- package/dist/cjs/components/details/Details.d.js +24 -0
- package/dist/cjs/components/details/Details.d.js.map +7 -0
- package/dist/cjs/components/details/Details.d.ts +4 -4
- package/dist/cjs/components/details/Details.js +11 -0
- package/dist/cjs/components/details/Details.js.map +1 -1
- package/dist/cjs/components/details/index.d.js +18 -0
- package/dist/cjs/components/details/index.d.js.map +7 -0
- package/dist/cjs/components/forOf/ForOf.d.js +24 -0
- package/dist/cjs/components/forOf/ForOf.d.js.map +7 -0
- package/dist/cjs/components/forOf/ForOf.d.ts +1 -1
- package/dist/cjs/components/forOf/ForOf.js +6 -0
- package/dist/cjs/components/forOf/ForOf.js.map +1 -1
- package/dist/cjs/components/forOf/index.d.js +18 -0
- package/dist/cjs/components/forOf/index.d.js.map +7 -0
- package/dist/cjs/components/if/If.d.js +24 -0
- package/dist/cjs/components/if/If.d.js.map +7 -0
- package/dist/cjs/components/if/If.d.ts +1 -1
- package/dist/cjs/components/if/If.js +3 -1
- package/dist/cjs/components/if/If.js.map +1 -1
- package/dist/cjs/components/if/index.d.js +18 -0
- package/dist/cjs/components/if/index.d.js.map +7 -0
- package/dist/cjs/components/index.d.js +34 -0
- package/dist/cjs/components/index.d.js.map +7 -0
- package/dist/cjs/components/index.d.ts +37 -37
- package/dist/cjs/components/input/Input.d.js +24 -0
- package/dist/cjs/components/input/Input.d.js.map +7 -0
- package/dist/cjs/components/input/Input.d.ts +1 -1
- package/dist/cjs/components/input/Input.js +8 -0
- package/dist/cjs/components/input/Input.js.map +1 -1
- package/dist/cjs/components/input/index.d.js +18 -0
- package/dist/cjs/components/input/index.d.js.map +7 -0
- package/dist/cjs/components/promise/PromiseSwitch.d.js +24 -0
- package/dist/cjs/components/promise/PromiseSwitch.d.js.map +7 -0
- package/dist/cjs/components/promise/PromiseSwitch.d.ts +5 -5
- package/dist/cjs/components/promise/PromiseSwitch.js +20 -1
- package/dist/cjs/components/promise/PromiseSwitch.js.map +1 -1
- package/dist/cjs/components/promise/index.d.js +18 -0
- package/dist/cjs/components/promise/index.d.js.map +7 -0
- package/dist/cjs/components/radio/Radio.d.js +24 -0
- package/dist/cjs/components/radio/Radio.d.js.map +7 -0
- package/dist/cjs/components/radio/Radio.d.ts +3 -3
- package/dist/cjs/components/radio/Radio.js +7 -4
- package/dist/cjs/components/radio/Radio.js.map +1 -1
- package/dist/cjs/components/radio/index.d.js +18 -0
- package/dist/cjs/components/radio/index.d.js.map +7 -0
- package/dist/cjs/components/router/Route.d.js +24 -0
- package/dist/cjs/components/router/Route.d.js.map +7 -0
- package/dist/cjs/components/router/Route.d.ts +2 -2
- package/dist/cjs/components/router/Route.js +18 -15
- package/dist/cjs/components/router/Route.js.map +1 -1
- package/dist/cjs/components/router/RouterOutlet.d.js +24 -0
- package/dist/cjs/components/router/RouterOutlet.d.js.map +7 -0
- package/dist/cjs/components/router/RouterOutlet.d.ts +1 -1
- package/dist/cjs/components/router/RouterOutlet.js +5 -1
- package/dist/cjs/components/router/RouterOutlet.js.map +1 -1
- package/dist/cjs/components/router/index.d.js +19 -0
- package/dist/cjs/components/router/index.d.js.map +7 -0
- package/dist/cjs/components/select/Select.d.js +24 -0
- package/dist/cjs/components/select/Select.d.js.map +7 -0
- package/dist/cjs/components/select/Select.d.ts +10 -10
- package/dist/cjs/components/select/Select.js +86 -69
- package/dist/cjs/components/select/Select.js.map +2 -2
- package/dist/cjs/components/select/index.d.js +18 -0
- package/dist/cjs/components/select/index.d.js.map +7 -0
- package/dist/cjs/components/this/This.d.js +24 -0
- package/dist/cjs/components/this/This.d.js.map +7 -0
- package/dist/cjs/components/this/This.d.ts +1 -1
- package/dist/cjs/components/this/This.js +5 -1
- package/dist/cjs/components/this/This.js.map +1 -1
- package/dist/cjs/components/this/index.d.js +18 -0
- package/dist/cjs/components/this/index.d.js.map +7 -0
- package/dist/cjs/components/timer/Timer.d.js +24 -0
- package/dist/cjs/components/timer/Timer.d.js.map +7 -0
- package/dist/cjs/components/timer/Timer.d.ts +1 -1
- package/dist/cjs/components/timer/Timer.js +7 -0
- package/dist/cjs/components/timer/Timer.js.map +1 -1
- package/dist/cjs/components/timer/index.d.js +18 -0
- package/dist/cjs/components/timer/index.d.js.map +7 -0
- package/dist/cjs/configs/DomRenderConfig.d.js +16 -0
- package/dist/cjs/configs/DomRenderConfig.d.js.map +7 -0
- package/dist/cjs/configs/TargetAttr.d.js +16 -0
- package/dist/cjs/configs/TargetAttr.d.js.map +7 -0
- package/dist/cjs/configs/TargetElement.d.js +16 -0
- package/dist/cjs/configs/TargetElement.d.js.map +7 -0
- package/dist/cjs/decorators/DomRenderNoProxy.d.js +17 -0
- package/dist/cjs/decorators/DomRenderNoProxy.d.js.map +7 -0
- package/dist/cjs/decorators/DomRenderNoProxy.d.ts +0 -1
- package/dist/cjs/decorators/DomRenderNoProxy.d.ts.map +1 -1
- package/dist/cjs/decorators/DomRenderNoProxy.js +0 -1
- package/dist/cjs/decorators/DomRenderNoProxy.js.map +2 -2
- package/dist/cjs/events/EventManager.d.js +16 -0
- package/dist/cjs/events/EventManager.d.js.map +7 -0
- package/dist/cjs/events/EventManager.js +58 -56
- package/dist/cjs/events/EventManager.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -15
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +2 -41
- package/dist/cjs/index.js.map +2 -2
- package/dist/cjs/iterators/Range.d.js +16 -0
- package/dist/cjs/iterators/Range.d.js.map +7 -0
- package/dist/cjs/iterators/Range.js +9 -1
- package/dist/cjs/iterators/Range.js.map +1 -1
- package/dist/cjs/lifecycle/OnBeforeReturnSet.d.js +16 -0
- package/dist/cjs/lifecycle/OnBeforeReturnSet.d.js.map +7 -0
- package/dist/cjs/lifecycle/OnChangeAttrRender.d.js +16 -0
- package/dist/cjs/lifecycle/OnChangeAttrRender.d.js.map +7 -0
- package/dist/cjs/lifecycle/OnChildRenderedByProperty.d.js +16 -0
- package/dist/cjs/lifecycle/OnChildRenderedByProperty.d.js.map +7 -0
- package/dist/cjs/lifecycle/OnCreateRender.d.js +16 -0
- package/dist/cjs/lifecycle/OnCreateRender.d.js.map +7 -0
- package/dist/cjs/lifecycle/OnCreateRenderData.d.js +16 -0
- package/dist/cjs/lifecycle/OnCreateRenderData.d.js.map +7 -0
- package/dist/cjs/lifecycle/OnCreatedThisChild.d.js +16 -0
- package/dist/cjs/lifecycle/OnCreatedThisChild.d.js.map +7 -0
- package/dist/cjs/lifecycle/OnDestroyRender.d.js +16 -0
- package/dist/cjs/lifecycle/OnDestroyRender.d.js.map +7 -0
- package/dist/cjs/lifecycle/OnInitRender.d.js +16 -0
- package/dist/cjs/lifecycle/OnInitRender.d.js.map +7 -0
- package/dist/cjs/lifecycle/OnProxyDomRender.d.js +16 -0
- package/dist/cjs/lifecycle/OnProxyDomRender.d.js.map +7 -0
- package/dist/cjs/lifecycle/dr-this/OnDrThisBind.d.js +16 -0
- package/dist/cjs/lifecycle/dr-this/OnDrThisBind.d.js.map +7 -0
- package/dist/cjs/lifecycle/dr-this/OnDrThisUnBind.d.js +16 -0
- package/dist/cjs/lifecycle/dr-this/OnDrThisUnBind.d.js.map +7 -0
- package/dist/cjs/messenger/DefaultMessenger.d.js +16 -0
- package/dist/cjs/messenger/DefaultMessenger.d.js.map +7 -0
- package/dist/cjs/messenger/Messenger.d.js +16 -0
- package/dist/cjs/messenger/Messenger.d.js.map +7 -0
- package/dist/cjs/messenger/Messenger.js +8 -5
- package/dist/cjs/messenger/Messenger.js.map +1 -1
- package/dist/cjs/operators/Appender.d.js +16 -0
- package/dist/cjs/operators/Appender.d.js.map +7 -0
- package/dist/cjs/operators/Appender.js +5 -3
- package/dist/cjs/operators/Appender.js.map +1 -1
- package/dist/cjs/operators/Dr.d.js +16 -0
- package/dist/cjs/operators/Dr.d.js.map +7 -0
- package/dist/cjs/operators/DrAppender.d.js +16 -0
- package/dist/cjs/operators/DrAppender.d.js.map +7 -0
- package/dist/cjs/operators/DrFor.d.js +16 -0
- package/dist/cjs/operators/DrFor.d.js.map +7 -0
- package/dist/cjs/operators/DrForOf.d.js +16 -0
- package/dist/cjs/operators/DrForOf.d.js.map +7 -0
- package/dist/cjs/operators/DrForOf.js +2 -2
- package/dist/cjs/operators/DrForOf.js.map +2 -2
- package/dist/cjs/operators/DrForm.d.js +16 -0
- package/dist/cjs/operators/DrForm.d.js.map +7 -0
- package/dist/cjs/operators/DrIf.d.js +16 -0
- package/dist/cjs/operators/DrIf.d.js.map +7 -0
- package/dist/cjs/operators/DrIf.js +3 -3
- package/dist/cjs/operators/DrIf.js.map +2 -2
- package/dist/cjs/operators/DrInnerHTML.d.js +16 -0
- package/dist/cjs/operators/DrInnerHTML.d.js.map +7 -0
- package/dist/cjs/operators/DrInnerText.d.js +16 -0
- package/dist/cjs/operators/DrInnerText.d.js.map +7 -0
- package/dist/cjs/operators/DrPre.d.js +16 -0
- package/dist/cjs/operators/DrPre.d.js.map +7 -0
- package/dist/cjs/operators/DrRepeat.d.js +16 -0
- package/dist/cjs/operators/DrRepeat.d.js.map +7 -0
- package/dist/cjs/operators/DrStripElement.d.js +16 -0
- package/dist/cjs/operators/DrStripElement.d.js.map +7 -0
- package/dist/cjs/operators/DrTargetAttr.d.js +16 -0
- package/dist/cjs/operators/DrTargetAttr.d.js.map +7 -0
- package/dist/cjs/operators/DrTargetElement.d.js +16 -0
- package/dist/cjs/operators/DrTargetElement.d.js.map +7 -0
- package/dist/cjs/operators/DrTargetElementIsElement.d.js +16 -0
- package/dist/cjs/operators/DrTargetElementIsElement.d.js.map +7 -0
- package/dist/cjs/operators/DrThis.d.js +16 -0
- package/dist/cjs/operators/DrThis.d.js.map +7 -0
- package/dist/cjs/operators/DrThisProperty.d.js +16 -0
- package/dist/cjs/operators/DrThisProperty.d.js.map +7 -0
- package/dist/cjs/operators/OperatorExecuter.d.js +16 -0
- package/dist/cjs/operators/OperatorExecuter.d.js.map +7 -0
- package/dist/cjs/operators/OperatorExecuter.js +2 -2
- package/dist/cjs/operators/OperatorExecuter.js.map +2 -2
- package/dist/cjs/operators/OperatorExecuterAttrRequire.d.js +16 -0
- package/dist/cjs/operators/OperatorExecuterAttrRequire.d.js.map +7 -0
- package/dist/cjs/rawsets/AttrInitCallBack.d.js +16 -0
- package/dist/cjs/rawsets/AttrInitCallBack.d.js.map +7 -0
- package/dist/cjs/rawsets/Attrs.d.js +16 -0
- package/dist/cjs/rawsets/Attrs.d.js.map +7 -0
- package/dist/cjs/rawsets/CreatorMetaData.d.js +16 -0
- package/dist/cjs/rawsets/CreatorMetaData.d.js.map +7 -0
- package/dist/cjs/rawsets/DestroyOptionType.d.js +16 -0
- package/dist/cjs/rawsets/DestroyOptionType.d.js.map +7 -0
- package/dist/cjs/rawsets/ElementInitCallBack.d.js +16 -0
- package/dist/cjs/rawsets/ElementInitCallBack.d.js.map +7 -0
- package/dist/cjs/rawsets/RawSet.d.js +16 -0
- package/dist/cjs/rawsets/RawSet.d.js.map +7 -0
- package/dist/cjs/rawsets/RawSet.js +64 -62
- package/dist/cjs/rawsets/RawSet.js.map +2 -2
- package/dist/cjs/rawsets/RawSetOperatorType.d.js +16 -0
- package/dist/cjs/rawsets/RawSetOperatorType.d.js.map +7 -0
- package/dist/cjs/rawsets/RawSetType.d.js +16 -0
- package/dist/cjs/rawsets/RawSetType.d.js.map +7 -0
- package/dist/cjs/rawsets/Render.d.js +16 -0
- package/dist/cjs/rawsets/Render.d.js.map +7 -0
- package/dist/cjs/routers/HashRouter.d.js +16 -0
- package/dist/cjs/routers/HashRouter.d.js.map +7 -0
- package/dist/cjs/routers/PathRouter.d.js +16 -0
- package/dist/cjs/routers/PathRouter.d.js.map +7 -0
- package/dist/cjs/routers/PathRouter.d.ts.map +1 -1
- package/dist/cjs/routers/PathRouter.js +0 -1
- package/dist/cjs/routers/PathRouter.js.map +2 -2
- package/dist/cjs/routers/Router.d.js +17 -0
- package/dist/cjs/routers/Router.d.js.map +7 -0
- package/dist/cjs/routers/Router.js +13 -9
- package/dist/cjs/routers/Router.js.map +1 -1
- package/dist/cjs/types/Types.d.js +16 -0
- package/dist/cjs/types/Types.d.js.map +7 -0
- package/dist/cjs/validators/MultipleValidator.js +3 -0
- package/dist/cjs/validators/MultipleValidator.js.map +1 -1
- package/dist/cjs/validators/NonPassValidator.d.js +16 -0
- package/dist/cjs/validators/NonPassValidator.d.js.map +7 -0
- package/dist/cjs/validators/NotRegExpTestValidator.js +3 -0
- package/dist/cjs/validators/NotRegExpTestValidator.js.map +1 -1
- package/dist/cjs/validators/RegExpTestValidator.js +3 -0
- package/dist/cjs/validators/RegExpTestValidator.js.map +1 -1
- package/dist/cjs/validators/Validator.d.js +16 -0
- package/dist/cjs/validators/Validator.d.js.map +7 -0
- package/dist/cjs/validators/Validator.js +7 -0
- package/dist/cjs/validators/Validator.js.map +1 -1
- package/dist/cjs/validators/ValidatorArray.d.js +16 -0
- package/dist/cjs/validators/ValidatorArray.d.js.map +7 -0
- package/dist/cjs/validators/ValidatorArray.js +4 -2
- package/dist/cjs/validators/ValidatorArray.js.map +1 -1
- package/dist/esm/DomRender.d.js +1 -0
- package/dist/esm/DomRender.d.js.map +7 -0
- package/dist/esm/DomRender.js +14 -8
- package/dist/esm/DomRender.js.map +1 -1
- package/dist/esm/DomRenderProxy.d.js +2 -0
- package/dist/esm/DomRenderProxy.d.js.map +7 -0
- package/dist/esm/DomRenderProxy.d.ts +0 -1
- package/dist/esm/DomRenderProxy.d.ts.map +1 -1
- package/dist/esm/DomRenderProxy.js +22 -19
- package/dist/esm/DomRenderProxy.js.map +2 -2
- package/dist/esm/components/ComponentBase.d.js +2 -0
- package/dist/esm/components/ComponentBase.d.js.map +7 -0
- package/dist/esm/components/ComponentBase.d.ts +0 -1
- package/dist/esm/components/ComponentBase.d.ts.map +1 -1
- package/dist/esm/components/ComponentBase.js +71 -56
- package/dist/esm/components/ComponentBase.js.map +2 -2
- package/dist/esm/components/ComponentRouterBase.d.js +1 -0
- package/dist/esm/components/ComponentRouterBase.d.js.map +7 -0
- package/dist/esm/components/ComponentRouterBase.js +7 -2
- package/dist/esm/components/ComponentRouterBase.js.map +1 -1
- package/dist/esm/components/ComponentSet.d.js +1 -0
- package/dist/esm/components/ComponentSet.d.js.map +7 -0
- package/dist/esm/components/ComponentSet.js +7 -1
- package/dist/esm/components/ComponentSet.js.map +1 -1
- package/dist/esm/components/a/A.d.js +5 -0
- package/dist/esm/components/a/A.d.js.map +7 -0
- package/dist/esm/components/a/A.d.ts +1 -1
- package/dist/esm/components/a/A.js +42 -36
- package/dist/esm/components/a/A.js.map +1 -1
- package/dist/esm/components/a/index.d.js +2 -0
- package/dist/esm/components/a/index.d.js.map +7 -0
- package/dist/esm/components/a/index.js +1 -1
- package/dist/esm/components/appender/Appender.d.js +5 -0
- package/dist/esm/components/appender/Appender.d.js.map +7 -0
- package/dist/esm/components/appender/Appender.d.ts +1 -1
- package/dist/esm/components/appender/Appender.js +10 -3
- package/dist/esm/components/appender/Appender.js.map +1 -1
- package/dist/esm/components/appender/index.d.js +2 -0
- package/dist/esm/components/appender/index.d.js.map +7 -0
- package/dist/esm/components/appender/index.js +1 -1
- package/dist/esm/components/checkbox/CheckBox.d.js +5 -0
- package/dist/esm/components/checkbox/CheckBox.d.js.map +7 -0
- package/dist/esm/components/checkbox/CheckBox.d.ts +3 -3
- package/dist/esm/components/checkbox/CheckBox.js +11 -7
- package/dist/esm/components/checkbox/CheckBox.js.map +1 -1
- package/dist/esm/components/checkbox/index.d.js +2 -0
- package/dist/esm/components/checkbox/index.d.js.map +7 -0
- package/dist/esm/components/checkbox/index.js +1 -1
- package/dist/esm/components/choose/Choose.d.js +5 -0
- package/dist/esm/components/choose/Choose.d.js.map +7 -0
- package/dist/esm/components/choose/Choose.d.ts +3 -3
- package/dist/esm/components/choose/Choose.js +15 -4
- package/dist/esm/components/choose/Choose.js.map +1 -1
- package/dist/esm/components/choose/index.d.js +2 -0
- package/dist/esm/components/choose/index.d.js.map +7 -0
- package/dist/esm/components/choose/index.js +1 -1
- package/dist/esm/components/details/Details.d.js +5 -0
- package/dist/esm/components/details/Details.d.js.map +7 -0
- package/dist/esm/components/details/Details.d.ts +4 -4
- package/dist/esm/components/details/Details.js +15 -3
- package/dist/esm/components/details/Details.js.map +1 -1
- package/dist/esm/components/details/index.d.js +2 -0
- package/dist/esm/components/details/index.d.js.map +7 -0
- package/dist/esm/components/details/index.js +1 -1
- package/dist/esm/components/forOf/ForOf.d.js +5 -0
- package/dist/esm/components/forOf/ForOf.d.js.map +7 -0
- package/dist/esm/components/forOf/ForOf.d.ts +1 -1
- package/dist/esm/components/forOf/ForOf.js +10 -3
- package/dist/esm/components/forOf/ForOf.js.map +1 -1
- package/dist/esm/components/forOf/index.d.js +2 -0
- package/dist/esm/components/forOf/index.d.js.map +7 -0
- package/dist/esm/components/forOf/index.js +1 -1
- package/dist/esm/components/if/If.d.js +5 -0
- package/dist/esm/components/if/If.d.js.map +7 -0
- package/dist/esm/components/if/If.d.ts +1 -1
- package/dist/esm/components/if/If.js +7 -4
- package/dist/esm/components/if/If.js.map +1 -1
- package/dist/esm/components/if/index.d.js +2 -0
- package/dist/esm/components/if/index.d.js.map +7 -0
- package/dist/esm/components/if/index.js +1 -1
- package/dist/esm/components/index.d.js +18 -0
- package/dist/esm/components/index.d.js.map +7 -0
- package/dist/esm/components/index.d.ts +37 -37
- package/dist/esm/components/index.js +31 -31
- package/dist/esm/components/input/Input.d.js +5 -0
- package/dist/esm/components/input/Input.d.js.map +7 -0
- package/dist/esm/components/input/Input.d.ts +1 -1
- package/dist/esm/components/input/Input.js +12 -3
- package/dist/esm/components/input/Input.js.map +1 -1
- package/dist/esm/components/input/index.d.js +2 -0
- package/dist/esm/components/input/index.d.js.map +7 -0
- package/dist/esm/components/input/index.js +1 -1
- package/dist/esm/components/promise/PromiseSwitch.d.js +5 -0
- package/dist/esm/components/promise/PromiseSwitch.d.js.map +7 -0
- package/dist/esm/components/promise/PromiseSwitch.d.ts +5 -5
- package/dist/esm/components/promise/PromiseSwitch.js +24 -4
- package/dist/esm/components/promise/PromiseSwitch.js.map +1 -1
- package/dist/esm/components/promise/index.d.js +2 -0
- package/dist/esm/components/promise/index.d.js.map +7 -0
- package/dist/esm/components/promise/index.js +1 -1
- package/dist/esm/components/radio/Radio.d.js +5 -0
- package/dist/esm/components/radio/Radio.d.js.map +7 -0
- package/dist/esm/components/radio/Radio.d.ts +3 -3
- package/dist/esm/components/radio/Radio.js +11 -7
- package/dist/esm/components/radio/Radio.js.map +1 -1
- package/dist/esm/components/radio/index.d.js +2 -0
- package/dist/esm/components/radio/index.d.js.map +7 -0
- package/dist/esm/components/radio/index.js +1 -1
- package/dist/esm/components/router/Route.d.js +5 -0
- package/dist/esm/components/router/Route.d.js.map +7 -0
- package/dist/esm/components/router/Route.d.ts +2 -2
- package/dist/esm/components/router/Route.js +21 -20
- package/dist/esm/components/router/Route.js.map +1 -1
- package/dist/esm/components/router/RouterOutlet.d.js +5 -0
- package/dist/esm/components/router/RouterOutlet.d.js.map +7 -0
- package/dist/esm/components/router/RouterOutlet.d.ts +1 -1
- package/dist/esm/components/router/RouterOutlet.js +9 -4
- package/dist/esm/components/router/RouterOutlet.js.map +1 -1
- package/dist/esm/components/router/index.d.js +3 -0
- package/dist/esm/components/router/index.d.js.map +7 -0
- package/dist/esm/components/router/index.js +2 -2
- package/dist/esm/components/select/Select.d.js +5 -0
- package/dist/esm/components/select/Select.d.js.map +7 -0
- package/dist/esm/components/select/Select.d.ts +10 -10
- package/dist/esm/components/select/Select.js +89 -74
- package/dist/esm/components/select/Select.js.map +2 -2
- package/dist/esm/components/select/index.d.js +2 -0
- package/dist/esm/components/select/index.d.js.map +7 -0
- package/dist/esm/components/select/index.js +1 -1
- package/dist/esm/components/this/This.d.js +5 -0
- package/dist/esm/components/this/This.d.js.map +7 -0
- package/dist/esm/components/this/This.d.ts +1 -1
- package/dist/esm/components/this/This.js +9 -4
- package/dist/esm/components/this/This.js.map +1 -1
- package/dist/esm/components/this/index.d.js +2 -0
- package/dist/esm/components/this/index.d.js.map +7 -0
- package/dist/esm/components/this/index.js +1 -1
- package/dist/esm/components/timer/Timer.d.js +5 -0
- package/dist/esm/components/timer/Timer.d.js.map +7 -0
- package/dist/esm/components/timer/Timer.d.ts +1 -1
- package/dist/esm/components/timer/Timer.js +11 -3
- package/dist/esm/components/timer/Timer.js.map +1 -1
- package/dist/esm/components/timer/index.d.js +2 -0
- package/dist/esm/components/timer/index.d.js.map +7 -0
- package/dist/esm/components/timer/index.js +1 -1
- package/dist/esm/configs/DomRenderConfig.d.js +1 -0
- package/dist/esm/configs/DomRenderConfig.d.js.map +7 -0
- package/dist/esm/configs/TargetAttr.d.js +1 -0
- package/dist/esm/configs/TargetAttr.d.js.map +7 -0
- package/dist/esm/configs/TargetElement.d.js +1 -0
- package/dist/esm/configs/TargetElement.d.js.map +7 -0
- package/dist/esm/configs/index.js +3 -3
- package/dist/esm/decorators/DomRenderNoProxy.d.js +2 -0
- package/dist/esm/decorators/DomRenderNoProxy.d.js.map +7 -0
- package/dist/esm/decorators/DomRenderNoProxy.d.ts +0 -1
- package/dist/esm/decorators/DomRenderNoProxy.d.ts.map +1 -1
- package/dist/esm/decorators/DomRenderNoProxy.js +0 -1
- package/dist/esm/decorators/DomRenderNoProxy.js.map +2 -2
- package/dist/esm/decorators/index.js +1 -1
- package/dist/esm/events/EventManager.d.js +1 -0
- package/dist/esm/events/EventManager.d.js.map +7 -0
- package/dist/esm/events/EventManager.js +61 -58
- package/dist/esm/events/EventManager.js.map +1 -1
- package/dist/esm/events/index.js +1 -1
- package/dist/esm/index.d.ts +2 -15
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +2 -40
- package/dist/esm/index.js.map +2 -2
- package/dist/esm/iterators/Range.d.js +1 -0
- package/dist/esm/iterators/Range.d.js.map +7 -0
- package/dist/esm/iterators/Range.js +10 -1
- package/dist/esm/iterators/Range.js.map +1 -1
- package/dist/esm/iterators/index.js +1 -1
- package/dist/esm/lifecycle/OnBeforeReturnSet.d.js +1 -0
- package/dist/esm/lifecycle/OnBeforeReturnSet.d.js.map +7 -0
- package/dist/esm/lifecycle/OnChangeAttrRender.d.js +1 -0
- package/dist/esm/lifecycle/OnChangeAttrRender.d.js.map +7 -0
- package/dist/esm/lifecycle/OnChildRenderedByProperty.d.js +1 -0
- package/dist/esm/lifecycle/OnChildRenderedByProperty.d.js.map +7 -0
- package/dist/esm/lifecycle/OnCreateRender.d.js +1 -0
- package/dist/esm/lifecycle/OnCreateRender.d.js.map +7 -0
- package/dist/esm/lifecycle/OnCreateRenderData.d.js +1 -0
- package/dist/esm/lifecycle/OnCreateRenderData.d.js.map +7 -0
- package/dist/esm/lifecycle/OnCreatedThisChild.d.js +1 -0
- package/dist/esm/lifecycle/OnCreatedThisChild.d.js.map +7 -0
- package/dist/esm/lifecycle/OnDestroyRender.d.js +1 -0
- package/dist/esm/lifecycle/OnDestroyRender.d.js.map +7 -0
- package/dist/esm/lifecycle/OnInitRender.d.js +1 -0
- package/dist/esm/lifecycle/OnInitRender.d.js.map +7 -0
- package/dist/esm/lifecycle/OnProxyDomRender.d.js +1 -0
- package/dist/esm/lifecycle/OnProxyDomRender.d.js.map +7 -0
- package/dist/esm/lifecycle/dr-this/OnDrThisBind.d.js +1 -0
- package/dist/esm/lifecycle/dr-this/OnDrThisBind.d.js.map +7 -0
- package/dist/esm/lifecycle/dr-this/OnDrThisUnBind.d.js +1 -0
- package/dist/esm/lifecycle/dr-this/OnDrThisUnBind.d.js.map +7 -0
- package/dist/esm/lifecycle/dr-this/index.js +2 -2
- package/dist/esm/lifecycle/index.js +12 -12
- package/dist/esm/managers/index.js +1 -1
- package/dist/esm/messenger/DefaultMessenger.d.js +1 -0
- package/dist/esm/messenger/DefaultMessenger.d.js.map +7 -0
- package/dist/esm/messenger/DefaultMessenger.js +1 -1
- package/dist/esm/messenger/Messenger.d.js +1 -0
- package/dist/esm/messenger/Messenger.d.js.map +7 -0
- package/dist/esm/messenger/Messenger.js +10 -6
- package/dist/esm/messenger/Messenger.js.map +1 -1
- package/dist/esm/messenger/index.js +2 -2
- package/dist/esm/operators/Appender.d.js +1 -0
- package/dist/esm/operators/Appender.d.js.map +7 -0
- package/dist/esm/operators/Appender.js +6 -3
- package/dist/esm/operators/Appender.js.map +1 -1
- package/dist/esm/operators/Dr.d.js +1 -0
- package/dist/esm/operators/Dr.d.js.map +7 -0
- package/dist/esm/operators/Dr.js +3 -3
- package/dist/esm/operators/DrAppender.d.js +1 -0
- package/dist/esm/operators/DrAppender.d.js.map +7 -0
- package/dist/esm/operators/DrAppender.js +3 -3
- package/dist/esm/operators/DrFor.d.js +1 -0
- package/dist/esm/operators/DrFor.d.js.map +7 -0
- package/dist/esm/operators/DrFor.js +3 -3
- package/dist/esm/operators/DrForOf.d.js +1 -0
- package/dist/esm/operators/DrForOf.d.js.map +7 -0
- package/dist/esm/operators/DrForOf.js +4 -4
- package/dist/esm/operators/DrForOf.js.map +1 -1
- package/dist/esm/operators/DrForm.d.js +1 -0
- package/dist/esm/operators/DrForm.d.js.map +7 -0
- package/dist/esm/operators/DrForm.js +6 -6
- package/dist/esm/operators/DrIf.d.js +1 -0
- package/dist/esm/operators/DrIf.d.js.map +7 -0
- package/dist/esm/operators/DrIf.js +4 -4
- package/dist/esm/operators/DrIf.js.map +1 -1
- package/dist/esm/operators/DrInnerHTML.d.js +1 -0
- package/dist/esm/operators/DrInnerHTML.d.js.map +7 -0
- package/dist/esm/operators/DrInnerHTML.js +3 -3
- package/dist/esm/operators/DrInnerText.d.js +1 -0
- package/dist/esm/operators/DrInnerText.d.js.map +7 -0
- package/dist/esm/operators/DrInnerText.js +3 -3
- package/dist/esm/operators/DrPre.d.js +1 -0
- package/dist/esm/operators/DrPre.d.js.map +7 -0
- package/dist/esm/operators/DrPre.js +1 -1
- package/dist/esm/operators/DrRepeat.d.js +1 -0
- package/dist/esm/operators/DrRepeat.d.js.map +7 -0
- package/dist/esm/operators/DrRepeat.js +4 -4
- package/dist/esm/operators/DrStripElement.d.js +1 -0
- package/dist/esm/operators/DrStripElement.d.js.map +7 -0
- package/dist/esm/operators/DrStripElement.js +3 -3
- package/dist/esm/operators/DrTargetAttr.d.js +1 -0
- package/dist/esm/operators/DrTargetAttr.d.js.map +7 -0
- package/dist/esm/operators/DrTargetAttr.js +2 -2
- package/dist/esm/operators/DrTargetElement.d.js +1 -0
- package/dist/esm/operators/DrTargetElement.d.js.map +7 -0
- package/dist/esm/operators/DrTargetElement.js +2 -2
- package/dist/esm/operators/DrTargetElementIsElement.d.js +1 -0
- package/dist/esm/operators/DrTargetElementIsElement.d.js.map +7 -0
- package/dist/esm/operators/DrTargetElementIsElement.js +2 -2
- package/dist/esm/operators/DrThis.d.js +1 -0
- package/dist/esm/operators/DrThis.d.js.map +7 -0
- package/dist/esm/operators/DrThis.js +6 -6
- package/dist/esm/operators/DrThisProperty.d.js +1 -0
- package/dist/esm/operators/DrThisProperty.d.js.map +7 -0
- package/dist/esm/operators/DrThisProperty.js +3 -3
- package/dist/esm/operators/OperatorExecuter.d.js +1 -0
- package/dist/esm/operators/OperatorExecuter.d.js.map +7 -0
- package/dist/esm/operators/OperatorExecuter.js +1 -1
- package/dist/esm/operators/OperatorExecuter.js.map +1 -1
- package/dist/esm/operators/OperatorExecuterAttrRequire.d.js +1 -0
- package/dist/esm/operators/OperatorExecuterAttrRequire.d.js.map +7 -0
- package/dist/esm/operators/OperatorExecuterAttrRequire.js +1 -1
- package/dist/esm/operators/index.js +19 -19
- package/dist/esm/rawsets/AttrInitCallBack.d.js +1 -0
- package/dist/esm/rawsets/AttrInitCallBack.d.js.map +7 -0
- package/dist/esm/rawsets/Attrs.d.js +1 -0
- package/dist/esm/rawsets/Attrs.d.js.map +7 -0
- package/dist/esm/rawsets/CreatorMetaData.d.js +1 -0
- package/dist/esm/rawsets/CreatorMetaData.d.js.map +7 -0
- package/dist/esm/rawsets/DestroyOptionType.d.js +1 -0
- package/dist/esm/rawsets/DestroyOptionType.d.js.map +7 -0
- package/dist/esm/rawsets/ElementInitCallBack.d.js +1 -0
- package/dist/esm/rawsets/ElementInitCallBack.d.js.map +7 -0
- package/dist/esm/rawsets/RawSet.d.js +1 -0
- package/dist/esm/rawsets/RawSet.d.js.map +7 -0
- package/dist/esm/rawsets/RawSet.js +85 -82
- package/dist/esm/rawsets/RawSet.js.map +2 -2
- package/dist/esm/rawsets/RawSetOperatorType.d.js +1 -0
- package/dist/esm/rawsets/RawSetOperatorType.d.js.map +7 -0
- package/dist/esm/rawsets/RawSetType.d.js +1 -0
- package/dist/esm/rawsets/RawSetType.d.js.map +7 -0
- package/dist/esm/rawsets/Render.d.js +1 -0
- package/dist/esm/rawsets/Render.d.js.map +7 -0
- package/dist/esm/rawsets/index.js +9 -9
- package/dist/esm/routers/HashRouter.d.js +1 -0
- package/dist/esm/routers/HashRouter.d.js.map +7 -0
- package/dist/esm/routers/HashRouter.js +1 -1
- package/dist/esm/routers/PathRouter.d.js +1 -0
- package/dist/esm/routers/PathRouter.d.js.map +7 -0
- package/dist/esm/routers/PathRouter.d.ts.map +1 -1
- package/dist/esm/routers/PathRouter.js +1 -2
- package/dist/esm/routers/PathRouter.js.map +2 -2
- package/dist/esm/routers/Router.d.js +2 -0
- package/dist/esm/routers/Router.d.js.map +7 -0
- package/dist/esm/routers/Router.js +14 -9
- package/dist/esm/routers/Router.js.map +1 -1
- package/dist/esm/routers/index.js +3 -3
- package/dist/esm/types/Types.d.js +1 -0
- package/dist/esm/types/Types.d.js.map +7 -0
- package/dist/esm/types/index.js +1 -1
- package/dist/esm/validators/AllCheckedValidatorArray.js +1 -1
- package/dist/esm/validators/AllUnCheckedValidatorArray.js +1 -1
- package/dist/esm/validators/CheckedValidator.js +1 -1
- package/dist/esm/validators/CountEqualsCheckedValidatorArray.js +1 -1
- package/dist/esm/validators/CountEqualsUnCheckedValidatorArray.js +1 -1
- package/dist/esm/validators/CountGreaterThanCheckedValidatorArray.js +1 -1
- package/dist/esm/validators/CountGreaterThanEqualsCheckedValidatorArray.js +1 -1
- package/dist/esm/validators/CountGreaterThanEqualsUnCheckedValidatorArray.js +1 -1
- package/dist/esm/validators/CountGreaterThanUnCheckedValidatorArray.js +1 -1
- package/dist/esm/validators/CountLessThanCheckedValidatorArray.js +1 -1
- package/dist/esm/validators/CountLessThanEqualsCheckedValidatorArray.js +1 -1
- package/dist/esm/validators/CountLessThanEqualsUnCheckedValidatorArray.js +1 -1
- package/dist/esm/validators/CountLessThanUnCheckedValidatorArray.js +1 -1
- package/dist/esm/validators/CountUnCheckedValidatorArray.js +1 -1
- package/dist/esm/validators/EmptyValidator.js +1 -1
- package/dist/esm/validators/ExcludeCheckedValidatorArray.js +1 -1
- package/dist/esm/validators/FormValidator.js +1 -1
- package/dist/esm/validators/IncludeCheckedValidatorArray.js +1 -1
- package/dist/esm/validators/MultipleValidator.js +5 -1
- package/dist/esm/validators/MultipleValidator.js.map +1 -1
- package/dist/esm/validators/NonPassValidator.d.js +1 -0
- package/dist/esm/validators/NonPassValidator.d.js.map +7 -0
- package/dist/esm/validators/NonPassValidator.js +1 -1
- package/dist/esm/validators/NotEmptyValidator.js +1 -1
- package/dist/esm/validators/NotRegExpTestValidator.js +6 -2
- package/dist/esm/validators/NotRegExpTestValidator.js.map +1 -1
- package/dist/esm/validators/PassValidator.js +1 -1
- package/dist/esm/validators/RegExpTestValidator.js +6 -2
- package/dist/esm/validators/RegExpTestValidator.js.map +1 -1
- package/dist/esm/validators/RequiredValidator.js +1 -1
- package/dist/esm/validators/UnCheckedValidator.js +1 -1
- package/dist/esm/validators/ValidMultipleValidator.js +1 -1
- package/dist/esm/validators/ValidValidator.js +1 -1
- package/dist/esm/validators/ValidValidatorArray.js +1 -1
- package/dist/esm/validators/Validator.d.js +1 -0
- package/dist/esm/validators/Validator.d.js.map +7 -0
- package/dist/esm/validators/Validator.js +8 -0
- package/dist/esm/validators/Validator.js.map +1 -1
- package/dist/esm/validators/ValidatorArray.d.js +1 -0
- package/dist/esm/validators/ValidatorArray.d.js.map +7 -0
- package/dist/esm/validators/ValidatorArray.js +7 -4
- package/dist/esm/validators/ValidatorArray.js.map +1 -1
- package/dist/esm/validators/ValueEqualsValidator.js +1 -1
- package/dist/esm/validators/ValueNotEqualsValidator.js +1 -1
- package/dist/esm/validators/index.js +31 -31
- package/dist/esm-bundle/dooboostore-dom-render.esm.js +3 -6757
- package/dist/esm-bundle/dooboostore-dom-render.esm.js.map +4 -4
- package/dist/umd-bundle/dooboostore-dom-render.umd.js +2 -6761
- package/dist/umd-bundle/dooboostore-dom-render.umd.js.map +4 -4
- package/package.json +10 -9
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/DomRenderProxy.ts"],
|
|
4
|
-
"sourcesContent": ["import 'reflect-metadata';\nimport { RawSet } from './rawsets/RawSet';\nimport { EventManager } from './events/EventManager';\nimport { DomRenderConfig } from './configs/DomRenderConfig';\nimport { ScriptUtils } from '@dooboostore/core-web/script/ScriptUtils';\nimport { DomRenderFinalProxy, Shield } from './types/Types';\nimport { RawSetType } from './rawsets/RawSetType';\nimport { DrThisProperty } from './operators/DrThisProperty';\nimport { RawSetOperatorType } from './rawsets/RawSetOperatorType';\nimport { ComponentSet } from './components/ComponentSet';\nimport { DomRenderNoProxyKey, isDomRenderNoProxy } from './decorators/DomRenderNoProxy';\nimport { isOnCreateRender } from './lifecycle/OnCreateRender';\nimport { isOnInitRender } from './lifecycle/OnInitRender';\nimport { isOnCreateRenderData } from './lifecycle/OnCreateRenderData';\nimport { isOnChangeAttrRender } from './lifecycle/OnChangeAttrRender';\nimport { DocumentUtils } from '@dooboostore/core-web/document/DocumentUtils';\nimport { isDefined } from '@dooboostore/core/types';\nimport { isOnBeforeReturnSet } from './lifecycle/OnBeforeReturnSet';\nimport { isOnChildRenderedByProperty } from './lifecycle/OnChildRenderedByProperty';\nimport { ObjectUtils } from '@dooboostore/core/object/ObjectUtils';\nimport {ValidUtils} from '@dooboostore/core/valid/ValidUtils'\nimport { isOnProxyDomRender } from './lifecycle/OnProxyDomRender';\n\nconst excludeGetSetPropertys = ['onBeforeReturnGet', 'onBeforeReturnSet', '__domrender_components', '__render', '_DomRender_isFinal', '_domRender_ref', '_rawSets', '_domRender_proxy', '_targets', '_DomRender_origin', '_DomRender_ref', '_DomRender_proxy'];\nexport const isWrapProxyDomRenderProxy = <T>(obj: T): boolean => {\n return obj && typeof obj === 'object' && ('_DomRender_isProxy' in obj);\n};\nexport const getDomRenderOriginObject = <T>(obj: T):T => {\n if (isWrapProxyDomRenderProxy(obj)) {\n return (obj as any)._domRender_origin;\n }\n return obj;\n}\nexport const getDomRenderConfig = (obj: any): DomRenderConfig | undefined => {\n if (isWrapProxyDomRenderProxy(obj)) {\n return obj._domRender_config;\n }\n return undefined;\n}\n//@ts-ignore\nexport const getDomRenderProxy = <T>(obj: T): DomRenderProxy<T> | undefined => {\n if (isWrapProxyDomRenderProxy(obj)) {\n //@ts-ignore\n return (obj as any)._domRender_proxy as DomRenderProxy<T>;\n }\n return undefined;\n}\nexport class DomRenderProxy<T extends object> implements ProxyHandler<T> {\n public _domRender_ref = new Map<object, Set<string>>();\n public _rawSets = new Map<string, Set<RawSet>>();\n public _domRender_proxy?: T;\n // public _firstTarget: Node;\n public _targets = new Set<Node>();\n\n constructor(public _domRender_origin: T, target: Node | null | undefined, public _domRender_config: DomRenderConfig) {\n if (target) {\n this._targets.add(target);\n // this._firstTarget = target;\n }\n\n // setInterval(() => {\n // this._rawSets.forEach(it => {\n // Array.from(it).forEach(it => {\n // console.log(it, it.isConnected)\n // })\n // });\n // }, 1000)\n }\n\n public static unFinal<T = any>(obj: T): T {\n return DomRenderFinalProxy.unFinal(obj);\n }\n\n public static final<T = any>(obj: T): T {\n return DomRenderFinalProxy.final(obj);\n }\n\n public static isFinal<T = any>(obj: T) {\n return DomRenderFinalProxy.isFinal(obj);\n }\n\n public run(objProxy: T) {\n this._domRender_proxy = objProxy;\n if (isOnProxyDomRender(objProxy)) {\n objProxy.onProxyDomRender(this._domRender_config);\n }\n const obj = getDomRenderOriginObject<any>(objProxy);\n if (obj) {\n Object.keys(obj).forEach(it => {\n // Reflect \uBA54\uD0C0\uB370\uC774\uD130\uC5D0\uC11C domRender:NoProxy \uC5EC\uBD80 \uD655\uC778\n try {\n const isNoProxy = Reflect.getMetadata(DomRenderNoProxyKey, obj, it) || Reflect.getMetadata(DomRenderNoProxyKey, Object.getPrototypeOf(obj).constructor);\n if (isNoProxy) {\n return obj;\n }\n } catch (e) {\n }\n const target = obj[it];\n if (target !== undefined && target !== null && typeof target === 'object' && !DomRenderProxy.isFinal(target) && !Object.isFrozen(target) && !(obj instanceof Shield)) {\n const isExcluded = this._domRender_config.proxyExcludeTyps?.some(it => target instanceof it) ?? false;\n // const filter = this._domRender_config.proxyExcludeTyps?.filter(it => target instanceof it) ?? [];\n if (!isExcluded) {\n const proxyAfter = this.proxy(objProxy, target, it);\n obj[it] = proxyAfter;\n }\n }\n });\n }\n // console.log('target', this._targets);\n this._targets.forEach(target => {\n this.initRender(target);\n });\n }\n\n public initRender(target: Node, rawSet?: RawSet) {\n\n // if (target instanceof Element) {\n // target.setAttribute('dr-this', 'this');\n // const rawSets = RawSet.checkPointCreates(target, this._domRender_proxy, this.config);\n // this.render(rawSets)\n // return;\n // }\n //\n if (target instanceof Element) {\n // \uC911\uC694: \uB098\uB97C\uD1B5\uD574 \uC774\uC5B4\uC9C4\uACF3\uC758 \uC704\uCE58\uB97C \uB0A8\uACA8\uC57C\uB41C\uB2E4 \uC548\uADF8\uB7EC\uBA74 TargetElement\uB294 \uC54C\uC218 \uC788\uB294 \uBC29\uBC95\uC774 \uC5C6\uB2E4. \uC5EC\uAE30\uC11C \uD754\uC801\uC744 \uB0A8\uACA8\uC918\uC57C \uD55C\uB2E4.\n // const targetElementNames = (this.config.targetElements?.map(it => it.name.toLowerCase().replaceAll('.', '\\\\.')) ?? []).join(',');\n // Array.from(target.querySelectorAll(targetElementNames)).forEach(it => it.setAttribute(EventManager.parentVariablePathAttrName, '@this@'));\n target.innerHTML = target.innerHTML.replace(/@this@/g, 'this');\n }\n // TODO: \uD55C\uACF3\uC5D0\uC11C \uCC98\uB9AC \uD544\uC694\uD560\uB4EF.. \uB108\uBB34 \uC0B0\uBC1C\uC801\uC73C\uB85C \uC788\uC74C.\n const onCreate = (target as any).getAttribute?.(RawSet.DR_ON_CREATE_ARGUMENTS_OPTIONNAME);\n let createParam: any[] = [];\n if (onCreate) {\n createParam = ScriptUtils.evaluateReturn(onCreate, this._domRender_proxy);\n if (!Array.isArray(createParam)) {\n createParam = [createParam];\n }\n }\n\n if (isOnCreateRenderData(this._domRender_proxy)) {\n this._domRender_proxy?.onCreateRenderData({ rootParent: this._domRender_proxy });\n }\n\n if (isOnCreateRender(this._domRender_proxy)) {\n this._domRender_proxy.onCreateRender(...createParam);\n }\n\n // const innerHTML = (target as any).innerHTML ?? '';\n this._targets.add(target);\n const rawSets = RawSet.checkPointCreates(target, this._domRender_proxy, this._domRender_config);\n // console.log('initRender -------rawSet', rawSets)\n // \uC911\uC694 \uCD08\uAE30\uC5D0 \uD55C\uBC88 \uD295\uACA8\uC918\uC57C\uD568.\n this._domRender_config.eventManager.applyEvent(this._domRender_proxy, this._domRender_config.eventManager.findAttrElements(target as Element, this._domRender_config), this._domRender_config);\n rawSets.forEach(it => {\n const variables = it.getUsingTriggerVariables(this._domRender_config);\n if (variables.size <= 0) {\n this.addRawSet('', it);\n } else {\n variables.forEach(sit => {\n this.addRawSet(sit, it);\n });\n }\n });\n this.render(this.getRawSets()).then(it => {\n // const render = {target} as Render;\n // const creatorMetaData = {\n // creator: this._domRender_proxy,\n // rootCreator: this._domRender_proxy,\n // innerHTML\n // } as CreatorMetaData;\n const onInit = (target as any).getAttribute?.(RawSet.DR_ON_INIT_ARGUMENTS_OPTIONNAME);\n let initParam: any;\n if (onCreate) {\n initParam = ScriptUtils.evaluateReturn(onCreate, this._domRender_proxy);\n // if (!Array.isArray(initParam)) {\n // initParam = [initParam];\n // }\n }\n if (isOnInitRender(this._domRender_proxy)) {\n this._domRender_proxy.onInitRender(initParam, rawSet ?? {dataSet: {config: this._domRender_config}} as any);\n }\n });\n\n }\n\n public getRawSets() {\n const set = new Set<RawSet>();\n this._rawSets.forEach((v, k) => {\n v.forEach(it => set.add(it));\n });\n return Array.from(set);\n }\n\n // \uC911\uC694 important\n public async render(raws?: RawSet[] | string, fullPathStr?: string) {\n if (typeof raws === 'string') {\n const iter = this._rawSets.get(raws);\n if (iter) {\n raws = Array.from(iter);\n } else {\n raws = undefined;\n }\n }\n const removeRawSets: RawSet[] = [];\n const rawSets = raws ?? this.getRawSets();\n\n // console.log('----', rawSets);\n for (const it of rawSets as RawSet[]) {\n it.getUsingTriggerVariables(this._domRender_config).forEach(path => {\n // console.log('getUsingTriggerVariables->', path);\n this.addRawSet(path, it);\n });\n if (it.isConnected) {\n // \uC911\uC694 render\uB420\uB54C targetAttribute \uCCB4\uD06C \uD574\uC57C\uD568.\n const targetAttrMap = (it.point.node as Element)?.getAttribute?.(EventManager.normalAttrMapAttrName);\n // console.log('sssssssssSSS?',it, targetAttrMap)\n // console.log('----2', it, fullPathStr, targetAttrMap, (it.fragment as any).render, it.isConnected, this.getRawSets());\n if (it.detect?.action) {\n it.detect.action();\n // } else if (it.type === RawSetType.TARGET_ELEMENT && it.data && fullPathStr && targetAttrMap && (it.fragment as any).render) {\n } else if (it.type === RawSetType.TARGET_ELEMENT && it.dataSet?.render?.currentThis && fullPathStr && targetAttrMap) {\n new Map<string, string>(JSON.parse(targetAttrMap)).forEach((v, k) => {\n // it?.data.onChangeAttrRender(k, null, v);\n const isUsing = EventManager.isUsingThisVar(v, `this.${fullPathStr}`);\n if (isUsing) {\n const targetAttrObject = RawSet.getAttributeObject((it.point.node as Element), { script: it.dataSet?.render?.renderScript ?? '', obj: Object.assign(this._domRender_proxy ?? {}, { __render: it.dataSet?.render }) });\n it.dataSet.render??={};\n it.dataSet.render.attribute = targetAttrObject;\n // const render = it.dataSet?.render;\n // console.log('render-->!!!!!', it.dataSet.render);\n // const script = `${render.renderScript} return ${v} `;\n // const cval = ScriptUtils.eval(script, Object.assign(this._domRender_proxy ?? {}, { __render: render }));\n if (isOnChangeAttrRender(it.dataSet?.render?.currentThis)) {\n it.dataSet?.render?.currentThis?.onChangeAttrRender?.(k, targetAttrObject[k], { rawSet: it });\n }\n }\n // console.log('---?', v, fullPathStr, isUsing);\n });\n // ------------------->\n } else {\n const rawSets = await it.render(this._domRender_proxy, this._domRender_config);\n // \uADF8\uC678 \uC790\uC2DD\uB4E4 render\n if (rawSets && rawSets.length > 0) {\n await this.render(rawSets);\n }\n }\n } else {\n removeRawSets.push(it);\n }\n }\n\n if (removeRawSets.length > 0) {\n this.removeRawSet(...removeRawSets);\n }\n return this.getRawSets();\n }\n\n // domrender_ref\uB85C \uCC3E\uB294\uAC78\uB85C \uBC14\uAFC8\n // public findRootDomRenderProxy(): DomRenderProxy<any> {\n // let current:DomRenderProxy<any> = this;\n // while (current.parentProxy) {\n // current = current.parentProxy;\n // }\n // return current;\n // }\n\n public root(pathInfos: {path: string, obj: any}[][], value?: any, lastDoneExecute = true): {path: string, obj:any}[][] {\n // console.log('root--->', paths, value, this._domRender_ref, this._domRender_origin);\n const fullPaths: {path: string, obj:any}[][] = [];\n if (this._domRender_ref.size > 0) {\n this._domRender_ref.forEach((it, key) => {\n if ('_DomRender_isProxy' in key) {\n it.forEach(sit => {\n try {\n\n const concat = pathInfos.concat([[{path: sit, obj: key}]]);\n const items:{path: string, obj:any}[][] = (key as any)._DomRender_proxy?.root(concat, value, lastDoneExecute);\n\n fullPaths.push(items.flat());\n // fullPaths.push({path: items.map(it=>it.path).join(','), obj: this._domRender_proxy});\n // fullPaths.push({path: items.map(it=>it.path).join(','), obj: this._domRender_proxy});\n } catch (e) {\n // \uC624\uBE0C\uC81D\uD2B8\uB4E4 \uC5C6\uC5B4\uC84C\uC744\uC218\uB3C4\uC788\uB2E4 Destroy\uC2DC\uC810\uC5D0\uC11C \uC624\uB958\uB098\uB294\uACBD\uC6B0\uAC00 \uC788\uB2E4. \uB530\uB77C\uC11C \uCC38\uC870 \uD558\uB294\uBD80\uBD84 \uC5C6\uC5B4\uC838\uC57C\uD55C\uB2E4.\n // console.error(e)\n // it.delete(sit);\n }\n });\n }\n });\n } else {\n // const firstPathStr = paths.slice(1).reverse().join('.');\n const strings = pathInfos.reverse().map(it=>it.map(it=>it.path).join(','));\n // array\uAC19\uC740\uACBD\uC6B0\uB3C4 \uD0A4\uAC12\uC73C\uB85C \uC811\uADFC\uD558\uAE30\uB54C\uBB38\uC5D0 \uD2B9\uC815 \uC778\uB371\uC2A4\uB97C \uCC3E\uC544\uC11C \uADF8\uBD80\uBD84\uB9CC \uBC14\uAFD4\uC904\uC218 \uC788\uB2E4.\n const fullPathStr = strings.map(it => isNaN(Number(it)) ? '.' + it : `[${it}]`).join('').slice(1);\n // console.log('-------fullPathStr', fullPathStr, lastDoneExecute);\n if (lastDoneExecute) {\n // const firstData = ScriptUtils.evalReturn('this.' + firstPathStr, this._domRender_proxy);\n // console.log('-------', firstPathStr, firstData);\n // if (firstData instanceof Dictionary) {\n // }\n const iterable = this._rawSets.get(fullPathStr);\n // array check\n const front = strings.slice(0, strings.length - 1).map(it => isNaN(Number(it)) ? '.' + it : `[${it}]`).join('');\n const lastPropertyName = strings[strings.length - 1];\n const path = 'this' + front;\n const data = ScriptUtils.evaluateReturn(ObjectUtils.Path.toOptionalChainPath(path), this._domRender_proxy);\n // console.log('root-->', this._rawSets, path, data );\n // console.log('--!!!!', fullPathStr, iterable, data, front, last);\n // \uC65C\uC5EC\uAE30\uC11C promise\uB97C \uD588\uC744\uAE4C\uB97C \uC0DD\uAC01\uD574\uBCF4\uBA74......\uD6D4.. \uBCC0\uC218\uBCC0\uACBD\uACFC \uD654\uBA74 \uBFCC\uB824\uC8FC\uB294\uAC78 \uB3D9\uAE30\uB85C\uD558\uBA74 \uC131\uB2A5\uC774 \uC548\uB098\uC624\uACE0 \uBE44\uD604\uC2E4\uC801\uC774\uB2E4. \uADF8\uB798\uC11C promise\n new Promise<RawSet[]>(async resolve => {\n let rData: RawSet[] = [];\n const firstPathStr = front.slice(1);\n\n // check dictionary\n // console.log('-promise-------', firstPathStr, this)\n const firstTargets = this._rawSets.get(firstPathStr);\n const firstTargetDictionary: RawSet[] = [];\n firstTargets?.forEach(it => {\n // console.log('----forEach---', it);\n const type = (it.point.start as Element).getAttribute?.('type');\n if (type === RawSetOperatorType.DR_THIS_PROPERTY) {\n firstTargetDictionary.push(it);\n }\n });\n if (firstTargetDictionary.length > 0) {\n // console.log('ddddddddddd', firstTargetDictionary);\n const rawSets: RawSet[] = [];\n let skip = false;\n firstTargetDictionary.forEach(it => {\n const startElement = it.point.start as Element;\n const keys = startElement.getAttribute(RawSet.DR_HAS_KEYS_OPTIONNAME)?.split(',') ?? [];\n if (value === undefined) {\n const rawSet = it.getHasRawSet(lastPropertyName);\n rawSet?.remove();\n startElement.setAttribute(RawSet.DR_HAS_KEYS_OPTIONNAME, keys.filter(it => it !== lastPropertyName).join(','));\n }\n if (!keys.includes(lastPropertyName)) {\n const raws = DrThisProperty.append(this._domRender_proxy, fullPathStr, lastPropertyName, it, this._domRender_config);\n if (raws) {\n rawSets.push(...raws);\n }\n } else {\n skip = true;\n }\n });\n if (skip === false || rawSets.length > 0) {\n rData = await this.render(rawSets);\n }\n }\n\n if (lastPropertyName === 'length' && Array.isArray(data)) {\n const aIterable = this._rawSets.get(firstPathStr);\n if (aIterable) {\n rData = await this.render(Array.from(aIterable));\n }\n } else if (iterable) {\n // console.log('------------',iterable, fullPaths)\n rData = await this.render(Array.from(iterable), fullPathStr);\n }\n\n\n\n // console.log('-----------', this, lastPropertyName );\n // this._targets.forEach(it => {\n // // return;\n // if (it.nodeType === Node.DOCUMENT_FRAGMENT_NODE || it.nodeType === Node.ELEMENT_NODE) {\n // const targets = eventManager.findAttrElements((it as DocumentFragment | Element), this.config);\n // eventManager.changeVar(this._domRender_proxy, targets, `this.${fullPathStr}`, this.config);\n // }\n // });\n\n\n this._targets.forEach(it => {\n // return;\n if (it.nodeType === Node.DOCUMENT_FRAGMENT_NODE || it.nodeType === Node.ELEMENT_NODE) {\n const targets = this._domRender_config.eventManager.findAttrElements((it as DocumentFragment | Element), this._domRender_config);\n this._domRender_config.eventManager.changeVar(this._domRender_proxy, targets, `this.${fullPathStr}`, this._domRender_config);\n }\n });\n\n //\uB79C\uB354\uB300\uC0C1\uB41C\uAC8C\uC788\uC73C\uBA74\n if(rData?.length > 0 && isOnChildRenderedByProperty(data)) {\n const propertyValue = ScriptUtils.evaluateReturn(`this.${lastPropertyName}`, data)\n data.onChildRenderedByProperty(lastPropertyName, propertyValue);\n // data\n }\n resolve(rData);\n }).then(it => {\n // console.log('DonrenderProxy root RenderDone')\n });\n }\n fullPaths.push([{path:fullPathStr, obj: this._domRender_proxy}]);\n }\n\n // console.log('dddddd', fullPaths.flatMap(it=>it).map(it=>it.path))\n return fullPaths;\n }\n\n public set(target: T, p: string | symbol, value: any, receiver: T): boolean {\n // console.log('set------->', target, p, value, receiver, Date.now())\n // console.log('set------->', target, p, value, receiver, Date.now())\n // try {\n // const isNoProxy = Reflect.getMetadata(DomRenderNoProxyKey, target, p) || Reflect.getMetadata(DomRenderNoProxyKey, Object.getPrototypeOf(obj).constructor);\n // if (isNoProxy) {\n // return obj;\n // }\n // }catch (e) {}\n\n // console.log('set-->', p, value, target, receiver, Reflect.getMetadata(DomRenderNoProxyKey, target, p) );\n\n if (\n (typeof p === 'string' && p !== '__domrender_components' && excludeGetSetPropertys.includes(p)) ||\n Reflect.getMetadata(DomRenderNoProxyKey, target, p)\n ) {\n (target as any)[p] = value;\n return true;\n }\n // const old = (target as any)[p];\n // console.log('set proxy-->', target, p, value, this._rawSets, this._domRender_ref);\n // if (typeof p === 'string' && '__render' === p) {\n // (target as any)[p] = value;\n // return true;\n // }\n // console.log('set--?', p, target, value);\n\n if (typeof p === 'string') {\n value = this.proxy(receiver, value, p);\n }\n\n // console.log('set typeChecked', (target as any)[p] instanceof ComponentSet, value instanceof ComponentSet);\n // if ((target as any)[p] instanceof ComponentSet) {\n // (target as any)[p]?.obj?.onDrThisUnBind?.();\n // }\n // is ComponentSet\n if ((value instanceof ComponentSet) && ((target as any)[p] instanceof ComponentSet)) {\n value.config.beforeComponentSet = (target as any)[p];\n }\n (target as any)[p] = value;\n let fullPathInfo: {path: string, obj:any}[][] = [];\n if (typeof p === 'string') {\n fullPathInfo = this.root([[{path:p, obj: this._domRender_proxy}]], value)\n }\n\n // console.log('setRooot', fullPathInfo);\n\n\n //normal attribute \uB610\uD55C \uB9C1\uD06C\uB791 \uAC19\uC740 \uC99D\uC138\uB77C\uC11C \uC774\uB807\uAC8C \uD574\uC918\uC57C\uD55C\uB2E4!!\n // const rootDomRenderProxy = this.findRootDomRenderProxy();\n // console.log('set!!!!!!!', fullPathInfo, rootDomRenderProxy)\n // console.log('--------rootDom',fullPathInfo, rootDomRenderProxy, rootDomRenderProxy._domRender_proxy)\n const rootElement = this._domRender_config.rootElement ?? this._domRender_config.window.document;\n DocumentUtils.querySelectorAllByAttributeName(rootElement, EventManager.normalAttrMapAttrName)?.forEach(elementInfo => {\n // @ts-ignore\n // const optionalPath = ObjectUtils.Path.toOptionalChainPath(elementInfo.value);\n const targets = new Map<string,string>(ScriptUtils.evaluateReturn<[string, string][]>(elementInfo.value));\n Array.from(targets.entries()).filter(([key, value])=>value.trim()).filter(isDefined).flatMap(([key,valueScript])=> {\n return fullPathInfo.flat().filter(it => valueScript.includes(`this.${it.path}`)).flatMap(it=> ({key, valueScript: valueScript, pathInfo: it}));\n }).forEach(it=> {\n const optionalPath = ObjectUtils.Path.toOptionalChainPath(it.valueScript);\n const value1 = ScriptUtils.evaluateReturn(optionalPath, it.pathInfo.obj);\n // console.log('proxy set!Attribut======', it.key, value1)\n if (value1 === null) {\n elementInfo.element.removeAttribute(it.key);\n elementInfo.element[it.key] = null;\n } else {\n elementInfo.element.setAttribute(it.key, value1);\n elementInfo.element[it.key] = value1\n }\n })\n })\n\n //\uC5EC\uAE30\uC11C \uB9C1\uD06C \uAC19\uC740\uAC70 \uD574\uC918\uC57C\uD568 *-link\uB85C \uBCC0\uC218\uAC12\uC774 \uBCC0\uACBD\uB418\uBA74 \uADF8\uAC78 \uCC38\uACE0\uD558\uACE0\uC788\uB294 \uB2E4\uB978\uAC83\uB4E4\uC5D0\uB3C4 \uD574\uC918\uC57C\uD55C\uB2E4.\n DocumentUtils.querySelectorAllByAttributeName(rootElement, EventManager.linkTargetMapAttrName)?.forEach(elementInfo => {\n // @ts-ignore\n const targets = new Map<string,string>(ScriptUtils.evaluateReturn<[string, string][]>(elementInfo.value));\n\n Array.from(targets.entries()).filter(([key, value])=>value.trim()).filter(isDefined).flatMap(([key,valueScript])=> {\n return fullPathInfo.flat().filter(it => valueScript.includes(`this.${it.path}`)).flatMap(it=> ({key, valueScript: valueScript, pathInfo: it}));\n }).forEach(info=> {\n const value1 = ScriptUtils.evaluateReturn(info.valueScript, info.pathInfo.obj);\n const applyAttributeName = EventManager.linkAttrs.find(it => it.name === info.key);\n if (applyAttributeName) {\n if (value1 === null) {\n elementInfo.element.removeAttribute(applyAttributeName.property);\n } else {\n // console.log('ppppppppppppppppppppppp', applyAttributeName, elementInfo)\n elementInfo.element.setAttribute(applyAttributeName.property, value1);\n }\n }\n })\n\n Array.from(targets.entries()).filter(([key, value])=>value.trim()).filter(isDefined).flatMap(([key,valueScript])=> {\n return fullPathInfo.flat().filter(it => valueScript.includes(`this.${it.path}`)).flatMap(it=> ({key, valueScript: valueScript, pathInfo: it}));\n }).forEach(info=> {\n const linkInfo = EventManager.linkAttrs.find(it=>it.name === info.key)\n if (linkInfo) {\n elementInfo.element[linkInfo.property] = value\n }\n })\n })\n if (('onBeforeReturnSet' in receiver) && typeof p === 'string' && !(this._domRender_config.proxyExcludeOnBeforeReturnSets ?? []).concat(excludeGetSetPropertys).includes(p)) {\n if(isOnBeforeReturnSet(receiver)){\n receiver.onBeforeReturnSet?.(p, value, fullPathInfo.map(it => it.map(it=>it.path).join()));\n }\n }\n return true;\n }\n\n get(target: T, p: string | symbol, receiver: any): any {\n // console.log('get-->', target, p, receiver);\n if (p === '_DomRender_origin' || p === '_domRender_origin') {\n return this._domRender_origin;\n } else if (p === '_DomRender_ref' || p === '_domRender_ref') {\n return this._domRender_ref;\n } else if (p === '_DomRender_config' || p ==='_domRender_config') {\n return this._domRender_config;\n } else if (p === '_DomRender_proxy' || p ==='_domRender_proxy') {\n return this;\n } else {\n // Date\uB77C\uB358\uC9C0 \uC774\uB7F0\uB188\uB4E4\uC740-_-\uD504\uB85D\uC2DC\uAC00 \uC774\uC0C1\uD558\uAC8C \uB3D9\uC791\uD574\uC11C\n // console.log('--->', p, target, target.bind, 'bind' in target)\n // if ((p in target) && ('bind' in target)) {\n // try{\n // return (target as any)[p].bind(target);\n // }catch (e) {\n // console.error(e)\n // }\n // } else {\n // return (target as any)[p]\n // }\n // return (p in target) ? (target as any)[p].bind(target) : (target as any)[p]\n // console.log('-->', p, Object.prototype.toString.call((target as any)[p]), (target as any)[p])\n // return (target as any)[p]\n let it = (target as any)[p];\n if (it && typeof it === 'object' && ('_DomRender_isProxy' in it) && Object.prototype.toString.call(it._DomRender_origin) === '[object Date]') {\n it = it._DomRender_origin;\n }\n\n if (('onBeforeReturnGet' in receiver) && typeof p === 'string' && !(this._domRender_config.proxyExcludeOnBeforeReturnGets ?? []).concat(excludeGetSetPropertys).includes(p)) {\n (receiver as any)?.onBeforeReturnGet?.(p, it, this.root([[{path:p, obj: this._domRender_proxy}]], it, false));\n }\n return it;\n }\n }\n\n deleteProperty(target: T, p: string | symbol): boolean {\n delete (target as any)[p];\n if (typeof p === 'string') {\n this.root([[{path:p, obj: this._domRender_proxy}]]);\n }\n return true;\n }\n\n has(target: T, p: string | symbol): boolean {\n return p === '_DomRender_isProxy' || p in target;\n }\n\n proxy(parentProxy: T, obj: T | any, p: string) {\n\n\n try {\n // const isNoProxy = Reflect.getMetadata(DomRenderNoProxyKey, obj, p) || Reflect.getMetadata(DomRenderNoProxyKey, Object.getPrototypeOf(obj).constructor);\n const isObject = typeof obj === 'object';\n const isNoProxy = isObject && isDomRenderNoProxy(obj,p)\n const isExclude = (this._domRender_config.proxyExcludeTyps?.some(it => obj instanceof it)) ?? false;\n const isFinal = isObject && DomRenderProxy.isFinal(obj);\n const isFrozen = Object.isFrozen(obj);\n const isShield = obj instanceof Shield;\n if (isNoProxy || isExclude || ValidUtils.isNullOrUndefined(obj) || !isObject || isFinal || isFrozen || isShield) {\n return obj;\n }\n } catch (e) {\n }\n\n\n/*\n const proxyTarget = (this._domRender_config.proxyExcludeTyps?.filter(it => obj instanceof it) ?? []).length <= 0;\n if (proxyTarget && obj !== undefined && obj !== null && typeof obj === 'object' && !('_DomRender_isProxy' in obj) && !DomRenderProxy.isFinal(obj) && !Object.isFrozen(obj) && !(obj instanceof Shield)) {\n const domRender = new DomRenderProxy(obj, undefined, this._domRender_config);\n domRender.addRef(parentProxy, p);\n const proxy = new Proxy(obj, domRender);\n domRender.run(proxy);\n return proxy;\n }\n if (proxyTarget && obj !== undefined && obj !== null && typeof obj === 'object' && ('_DomRender_isProxy' in obj) && !DomRenderProxy.isFinal(obj) && !Object.isFrozen(obj) && !(obj instanceof Shield)) {\n const d = (obj as any)._DomRender_proxy as DomRenderProxy<T>;\n d.addRef(this._domRender_proxy!, p);\n return obj;\n } else {\n return obj;\n }\n */\n if ( !isWrapProxyDomRenderProxy(obj)) {\n const domRender = new DomRenderProxy(obj, undefined, this._domRender_config);\n domRender.addRef(parentProxy, p);\n const proxy = new Proxy(obj, domRender);\n domRender.run(proxy);\n return proxy;\n }\n if (isWrapProxyDomRenderProxy(obj)) {\n const d = (obj as any)._DomRender_proxy as DomRenderProxy<T>;\n d.addRef(this._domRender_proxy!, p);\n return obj;\n } else {\n return obj;\n }\n }\n\n public addRef(parent: object, path: string) {\n if (!this._domRender_ref.get(parent)) {\n this._domRender_ref.set(parent, new Set<string>());\n }\n this._domRender_ref.get(parent)?.add(path);\n }\n\n public addRawSetAndRender(path: string, rawSet: RawSet) {\n this.addRawSet(path, rawSet);\n this.render([rawSet]);\n }\n\n public addRawSet(path: string, rawSet: RawSet) {\n // console.log('addRawSet--> path:', path, 'rawSet:', rawSet)\n if (!this._rawSets.get(path)) {\n this._rawSets.set(path, new Set<RawSet>());\n }\n this._rawSets.get(path)?.add(rawSet);\n }\n\n // public removeRawSet(...raws: RawSet[]) {\n // this._rawSets.forEach(it => {\n // raws.forEach(sit => it.delete(sit));\n // })\n // this.garbageRawSet();\n // }\n\n public removeRawSet(...raws: RawSet[]) {\n this._rawSets.forEach(it => {\n it.forEach(sit => {\n if (!sit.isConnected) {\n it.delete(sit);\n } else if (raws.includes(sit)) {\n it.delete(sit);\n }\n });\n });\n this.targetGarbageRawSet();\n }\n\n private targetGarbageRawSet() {\n this._targets.forEach(it => {\n if (!it.isConnected) {\n this._targets.delete(it);\n }\n });\n }\n\n private garbageRawSet() {\n this._targets.forEach(it => {\n if (!it.isConnected) {\n this._targets.delete(it);\n }\n });\n\n this._rawSets.forEach(it => {\n it.forEach(sit => {\n if (!sit.isConnected) {\n it.delete(sit);\n }\n });\n });\n }\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["import { RawSet } from './rawsets/RawSet';\nimport { EventManager } from './events/EventManager';\nimport { DomRenderConfig } from './configs/DomRenderConfig';\nimport { ScriptUtils } from '@dooboostore/core-web/script/ScriptUtils';\nimport { DomRenderFinalProxy, Shield } from './types/Types';\nimport { RawSetType } from './rawsets/RawSetType';\nimport { DrThisProperty } from './operators/DrThisProperty';\nimport { RawSetOperatorType } from './rawsets/RawSetOperatorType';\nimport { ComponentSet } from './components/ComponentSet';\nimport { DomRenderNoProxyKey, isDomRenderNoProxy } from './decorators/DomRenderNoProxy';\nimport { isOnCreateRender } from './lifecycle/OnCreateRender';\nimport { isOnInitRender } from './lifecycle/OnInitRender';\nimport { isOnCreateRenderData } from './lifecycle/OnCreateRenderData';\nimport { isOnChangeAttrRender } from './lifecycle/OnChangeAttrRender';\nimport { DocumentUtils } from '@dooboostore/core-web/document/DocumentUtils';\nimport { isDefined } from '@dooboostore/core/types';\nimport { isOnBeforeReturnSet } from './lifecycle/OnBeforeReturnSet';\nimport { isOnChildRenderedByProperty } from './lifecycle/OnChildRenderedByProperty';\nimport { ObjectUtils } from '@dooboostore/core/object/ObjectUtils';\nimport {ValidUtils} from '@dooboostore/core/valid/ValidUtils'\nimport { isOnProxyDomRender } from './lifecycle/OnProxyDomRender';\n\nconst excludeGetSetPropertys = ['onBeforeReturnGet', 'onBeforeReturnSet', '__domrender_components', '__render', '_DomRender_isFinal', '_domRender_ref', '_rawSets', '_domRender_proxy', '_targets', '_DomRender_origin', '_DomRender_ref', '_DomRender_proxy'];\nexport const isWrapProxyDomRenderProxy = <T>(obj: T): boolean => {\n return obj && typeof obj === 'object' && ('_DomRender_isProxy' in obj);\n};\nexport const getDomRenderOriginObject = <T>(obj: T):T => {\n if (isWrapProxyDomRenderProxy(obj)) {\n return (obj as any)._domRender_origin;\n }\n return obj;\n}\nexport const getDomRenderConfig = (obj: any): DomRenderConfig | undefined => {\n if (isWrapProxyDomRenderProxy(obj)) {\n return obj._domRender_config;\n }\n return undefined;\n}\n//@ts-ignore\nexport const getDomRenderProxy = <T>(obj: T): DomRenderProxy<T> | undefined => {\n if (isWrapProxyDomRenderProxy(obj)) {\n //@ts-ignore\n return (obj as any)._domRender_proxy as DomRenderProxy<T>;\n }\n return undefined;\n}\nexport class DomRenderProxy<T extends object> implements ProxyHandler<T> {\n public _domRender_ref = new Map<object, Set<string>>();\n public _rawSets = new Map<string, Set<RawSet>>();\n public _domRender_proxy?: T;\n // public _firstTarget: Node;\n public _targets = new Set<Node>();\n\n constructor(public _domRender_origin: T, target: Node | null | undefined, public _domRender_config: DomRenderConfig) {\n if (target) {\n this._targets.add(target);\n // this._firstTarget = target;\n }\n\n // setInterval(() => {\n // this._rawSets.forEach(it => {\n // Array.from(it).forEach(it => {\n // console.log(it, it.isConnected)\n // })\n // });\n // }, 1000)\n }\n\n public static unFinal<T = any>(obj: T): T {\n return DomRenderFinalProxy.unFinal(obj);\n }\n\n public static final<T = any>(obj: T): T {\n return DomRenderFinalProxy.final(obj);\n }\n\n public static isFinal<T = any>(obj: T) {\n return DomRenderFinalProxy.isFinal(obj);\n }\n\n public run(objProxy: T) {\n this._domRender_proxy = objProxy;\n if (isOnProxyDomRender(objProxy)) {\n objProxy.onProxyDomRender(this._domRender_config);\n }\n const obj = getDomRenderOriginObject<any>(objProxy);\n if (obj) {\n Object.keys(obj).forEach(it => {\n // Reflect \uBA54\uD0C0\uB370\uC774\uD130\uC5D0\uC11C domRender:NoProxy \uC5EC\uBD80 \uD655\uC778\n try {\n const isNoProxy = Reflect.getMetadata(DomRenderNoProxyKey, obj, it) || Reflect.getMetadata(DomRenderNoProxyKey, Object.getPrototypeOf(obj).constructor);\n if (isNoProxy) {\n return obj;\n }\n } catch (e) {\n }\n const target = obj[it];\n if (target !== undefined && target !== null && typeof target === 'object' && !DomRenderProxy.isFinal(target) && !Object.isFrozen(target) && !(obj instanceof Shield)) {\n const isExcluded = this._domRender_config.proxyExcludeTyps?.some(it => target instanceof it) ?? false;\n // const filter = this._domRender_config.proxyExcludeTyps?.filter(it => target instanceof it) ?? [];\n if (!isExcluded) {\n const proxyAfter = this.proxy(objProxy, target, it);\n obj[it] = proxyAfter;\n }\n }\n });\n }\n // console.log('target', this._targets);\n this._targets.forEach(target => {\n this.initRender(target);\n });\n }\n\n public initRender(target: Node, rawSet?: RawSet) {\n\n // if (target instanceof Element) {\n // target.setAttribute('dr-this', 'this');\n // const rawSets = RawSet.checkPointCreates(target, this._domRender_proxy, this.config);\n // this.render(rawSets)\n // return;\n // }\n //\n if (target instanceof Element) {\n // \uC911\uC694: \uB098\uB97C\uD1B5\uD574 \uC774\uC5B4\uC9C4\uACF3\uC758 \uC704\uCE58\uB97C \uB0A8\uACA8\uC57C\uB41C\uB2E4 \uC548\uADF8\uB7EC\uBA74 TargetElement\uB294 \uC54C\uC218 \uC788\uB294 \uBC29\uBC95\uC774 \uC5C6\uB2E4. \uC5EC\uAE30\uC11C \uD754\uC801\uC744 \uB0A8\uACA8\uC918\uC57C \uD55C\uB2E4.\n // const targetElementNames = (this.config.targetElements?.map(it => it.name.toLowerCase().replaceAll('.', '\\\\.')) ?? []).join(',');\n // Array.from(target.querySelectorAll(targetElementNames)).forEach(it => it.setAttribute(EventManager.parentVariablePathAttrName, '@this@'));\n target.innerHTML = target.innerHTML.replace(/@this@/g, 'this');\n }\n // TODO: \uD55C\uACF3\uC5D0\uC11C \uCC98\uB9AC \uD544\uC694\uD560\uB4EF.. \uB108\uBB34 \uC0B0\uBC1C\uC801\uC73C\uB85C \uC788\uC74C.\n const onCreate = (target as any).getAttribute?.(RawSet.DR_ON_CREATE_ARGUMENTS_OPTIONNAME);\n let createParam: any[] = [];\n if (onCreate) {\n createParam = ScriptUtils.evaluateReturn(onCreate, this._domRender_proxy);\n if (!Array.isArray(createParam)) {\n createParam = [createParam];\n }\n }\n\n if (isOnCreateRenderData(this._domRender_proxy)) {\n this._domRender_proxy?.onCreateRenderData({ rootParent: this._domRender_proxy });\n }\n\n if (isOnCreateRender(this._domRender_proxy)) {\n this._domRender_proxy.onCreateRender(...createParam);\n }\n\n // const innerHTML = (target as any).innerHTML ?? '';\n this._targets.add(target);\n const rawSets = RawSet.checkPointCreates(target, this._domRender_proxy, this._domRender_config);\n // console.log('initRender -------rawSet', rawSets)\n // \uC911\uC694 \uCD08\uAE30\uC5D0 \uD55C\uBC88 \uD295\uACA8\uC918\uC57C\uD568.\n this._domRender_config.eventManager.applyEvent(this._domRender_proxy, this._domRender_config.eventManager.findAttrElements(target as Element, this._domRender_config), this._domRender_config);\n rawSets.forEach(it => {\n const variables = it.getUsingTriggerVariables(this._domRender_config);\n if (variables.size <= 0) {\n this.addRawSet('', it);\n } else {\n variables.forEach(sit => {\n this.addRawSet(sit, it);\n });\n }\n });\n this.render(this.getRawSets()).then(it => {\n // const render = {target} as Render;\n // const creatorMetaData = {\n // creator: this._domRender_proxy,\n // rootCreator: this._domRender_proxy,\n // innerHTML\n // } as CreatorMetaData;\n const onInit = (target as any).getAttribute?.(RawSet.DR_ON_INIT_ARGUMENTS_OPTIONNAME);\n let initParam: any;\n if (onCreate) {\n initParam = ScriptUtils.evaluateReturn(onCreate, this._domRender_proxy);\n // if (!Array.isArray(initParam)) {\n // initParam = [initParam];\n // }\n }\n if (isOnInitRender(this._domRender_proxy)) {\n this._domRender_proxy.onInitRender(initParam, rawSet ?? {dataSet: {config: this._domRender_config}} as any);\n }\n });\n\n }\n\n public getRawSets() {\n const set = new Set<RawSet>();\n this._rawSets.forEach((v, k) => {\n v.forEach(it => set.add(it));\n });\n return Array.from(set);\n }\n\n // \uC911\uC694 important\n public async render(raws?: RawSet[] | string, fullPathStr?: string) {\n if (typeof raws === 'string') {\n const iter = this._rawSets.get(raws);\n if (iter) {\n raws = Array.from(iter);\n } else {\n raws = undefined;\n }\n }\n const removeRawSets: RawSet[] = [];\n const rawSets = raws ?? this.getRawSets();\n\n // console.log('----', rawSets);\n for (const it of rawSets as RawSet[]) {\n it.getUsingTriggerVariables(this._domRender_config).forEach(path => {\n // console.log('getUsingTriggerVariables->', path);\n this.addRawSet(path, it);\n });\n if (it.isConnected) {\n // \uC911\uC694 render\uB420\uB54C targetAttribute \uCCB4\uD06C \uD574\uC57C\uD568.\n const targetAttrMap = (it.point.node as Element)?.getAttribute?.(EventManager.normalAttrMapAttrName);\n // console.log('sssssssssSSS?',it, targetAttrMap)\n // console.log('----2', it, fullPathStr, targetAttrMap, (it.fragment as any).render, it.isConnected, this.getRawSets());\n if (it.detect?.action) {\n it.detect.action();\n // } else if (it.type === RawSetType.TARGET_ELEMENT && it.data && fullPathStr && targetAttrMap && (it.fragment as any).render) {\n } else if (it.type === RawSetType.TARGET_ELEMENT && it.dataSet?.render?.currentThis && fullPathStr && targetAttrMap) {\n new Map<string, string>(JSON.parse(targetAttrMap)).forEach((v, k) => {\n // it?.data.onChangeAttrRender(k, null, v);\n const isUsing = EventManager.isUsingThisVar(v, `this.${fullPathStr}`);\n if (isUsing) {\n const targetAttrObject = RawSet.getAttributeObject((it.point.node as Element), { script: it.dataSet?.render?.renderScript ?? '', obj: Object.assign(this._domRender_proxy ?? {}, { __render: it.dataSet?.render }) });\n it.dataSet.render??={};\n it.dataSet.render.attribute = targetAttrObject;\n // const render = it.dataSet?.render;\n // console.log('render-->!!!!!', it.dataSet.render);\n // const script = `${render.renderScript} return ${v} `;\n // const cval = ScriptUtils.eval(script, Object.assign(this._domRender_proxy ?? {}, { __render: render }));\n if (isOnChangeAttrRender(it.dataSet?.render?.currentThis)) {\n it.dataSet?.render?.currentThis?.onChangeAttrRender?.(k, targetAttrObject[k], { rawSet: it });\n }\n }\n // console.log('---?', v, fullPathStr, isUsing);\n });\n // ------------------->\n } else {\n const rawSets = await it.render(this._domRender_proxy, this._domRender_config);\n // \uADF8\uC678 \uC790\uC2DD\uB4E4 render\n if (rawSets && rawSets.length > 0) {\n await this.render(rawSets);\n }\n }\n } else {\n removeRawSets.push(it);\n }\n }\n\n if (removeRawSets.length > 0) {\n this.removeRawSet(...removeRawSets);\n }\n return this.getRawSets();\n }\n\n // domrender_ref\uB85C \uCC3E\uB294\uAC78\uB85C \uBC14\uAFC8\n // public findRootDomRenderProxy(): DomRenderProxy<any> {\n // let current:DomRenderProxy<any> = this;\n // while (current.parentProxy) {\n // current = current.parentProxy;\n // }\n // return current;\n // }\n\n public root(pathInfos: {path: string, obj: any}[][], value?: any, lastDoneExecute = true): {path: string, obj:any}[][] {\n // console.log('root--->', paths, value, this._domRender_ref, this._domRender_origin);\n const fullPaths: {path: string, obj:any}[][] = [];\n if (this._domRender_ref.size > 0) {\n this._domRender_ref.forEach((it, key) => {\n if ('_DomRender_isProxy' in key) {\n it.forEach(sit => {\n try {\n\n const concat = pathInfos.concat([[{path: sit, obj: key}]]);\n const items:{path: string, obj:any}[][] = (key as any)._DomRender_proxy?.root(concat, value, lastDoneExecute);\n\n fullPaths.push(items.flat());\n // fullPaths.push({path: items.map(it=>it.path).join(','), obj: this._domRender_proxy});\n // fullPaths.push({path: items.map(it=>it.path).join(','), obj: this._domRender_proxy});\n } catch (e) {\n // \uC624\uBE0C\uC81D\uD2B8\uB4E4 \uC5C6\uC5B4\uC84C\uC744\uC218\uB3C4\uC788\uB2E4 Destroy\uC2DC\uC810\uC5D0\uC11C \uC624\uB958\uB098\uB294\uACBD\uC6B0\uAC00 \uC788\uB2E4. \uB530\uB77C\uC11C \uCC38\uC870 \uD558\uB294\uBD80\uBD84 \uC5C6\uC5B4\uC838\uC57C\uD55C\uB2E4.\n // console.error(e)\n // it.delete(sit);\n }\n });\n }\n });\n } else {\n // const firstPathStr = paths.slice(1).reverse().join('.');\n const strings = pathInfos.reverse().map(it=>it.map(it=>it.path).join(','));\n // array\uAC19\uC740\uACBD\uC6B0\uB3C4 \uD0A4\uAC12\uC73C\uB85C \uC811\uADFC\uD558\uAE30\uB54C\uBB38\uC5D0 \uD2B9\uC815 \uC778\uB371\uC2A4\uB97C \uCC3E\uC544\uC11C \uADF8\uBD80\uBD84\uB9CC \uBC14\uAFD4\uC904\uC218 \uC788\uB2E4.\n const fullPathStr = strings.map(it => isNaN(Number(it)) ? '.' + it : `[${it}]`).join('').slice(1);\n // console.log('-------fullPathStr', fullPathStr, lastDoneExecute);\n if (lastDoneExecute) {\n // const firstData = ScriptUtils.evalReturn('this.' + firstPathStr, this._domRender_proxy);\n // console.log('-------', firstPathStr, firstData);\n // if (firstData instanceof Dictionary) {\n // }\n const iterable = this._rawSets.get(fullPathStr);\n // array check\n const front = strings.slice(0, strings.length - 1).map(it => isNaN(Number(it)) ? '.' + it : `[${it}]`).join('');\n const lastPropertyName = strings[strings.length - 1];\n const path = 'this' + front;\n const data = ScriptUtils.evaluateReturn(ObjectUtils.Path.toOptionalChainPath(path), this._domRender_proxy);\n // console.log('root-->', this._rawSets, path, data );\n // console.log('--!!!!', fullPathStr, iterable, data, front, last);\n // \uC65C\uC5EC\uAE30\uC11C promise\uB97C \uD588\uC744\uAE4C\uB97C \uC0DD\uAC01\uD574\uBCF4\uBA74......\uD6D4.. \uBCC0\uC218\uBCC0\uACBD\uACFC \uD654\uBA74 \uBFCC\uB824\uC8FC\uB294\uAC78 \uB3D9\uAE30\uB85C\uD558\uBA74 \uC131\uB2A5\uC774 \uC548\uB098\uC624\uACE0 \uBE44\uD604\uC2E4\uC801\uC774\uB2E4. \uADF8\uB798\uC11C promise\n new Promise<RawSet[]>(async resolve => {\n let rData: RawSet[] = [];\n const firstPathStr = front.slice(1);\n\n // check dictionary\n // console.log('-promise-------', firstPathStr, this)\n const firstTargets = this._rawSets.get(firstPathStr);\n const firstTargetDictionary: RawSet[] = [];\n firstTargets?.forEach(it => {\n // console.log('----forEach---', it);\n const type = (it.point.start as Element).getAttribute?.('type');\n if (type === RawSetOperatorType.DR_THIS_PROPERTY) {\n firstTargetDictionary.push(it);\n }\n });\n if (firstTargetDictionary.length > 0) {\n // console.log('ddddddddddd', firstTargetDictionary);\n const rawSets: RawSet[] = [];\n let skip = false;\n firstTargetDictionary.forEach(it => {\n const startElement = it.point.start as Element;\n const keys = startElement.getAttribute(RawSet.DR_HAS_KEYS_OPTIONNAME)?.split(',') ?? [];\n if (value === undefined) {\n const rawSet = it.getHasRawSet(lastPropertyName);\n rawSet?.remove();\n startElement.setAttribute(RawSet.DR_HAS_KEYS_OPTIONNAME, keys.filter(it => it !== lastPropertyName).join(','));\n }\n if (!keys.includes(lastPropertyName)) {\n const raws = DrThisProperty.append(this._domRender_proxy, fullPathStr, lastPropertyName, it, this._domRender_config);\n if (raws) {\n rawSets.push(...raws);\n }\n } else {\n skip = true;\n }\n });\n if (skip === false || rawSets.length > 0) {\n rData = await this.render(rawSets);\n }\n }\n\n if (lastPropertyName === 'length' && Array.isArray(data)) {\n const aIterable = this._rawSets.get(firstPathStr);\n if (aIterable) {\n rData = await this.render(Array.from(aIterable));\n }\n } else if (iterable) {\n // console.log('------------',iterable, fullPaths)\n rData = await this.render(Array.from(iterable), fullPathStr);\n }\n\n\n\n // console.log('-----------', this, lastPropertyName );\n // this._targets.forEach(it => {\n // // return;\n // if (it.nodeType === Node.DOCUMENT_FRAGMENT_NODE || it.nodeType === Node.ELEMENT_NODE) {\n // const targets = eventManager.findAttrElements((it as DocumentFragment | Element), this.config);\n // eventManager.changeVar(this._domRender_proxy, targets, `this.${fullPathStr}`, this.config);\n // }\n // });\n\n\n this._targets.forEach(it => {\n // return;\n if (it.nodeType === Node.DOCUMENT_FRAGMENT_NODE || it.nodeType === Node.ELEMENT_NODE) {\n const targets = this._domRender_config.eventManager.findAttrElements((it as DocumentFragment | Element), this._domRender_config);\n this._domRender_config.eventManager.changeVar(this._domRender_proxy, targets, `this.${fullPathStr}`, this._domRender_config);\n }\n });\n\n //\uB79C\uB354\uB300\uC0C1\uB41C\uAC8C\uC788\uC73C\uBA74\n if(rData?.length > 0 && isOnChildRenderedByProperty(data)) {\n const propertyValue = ScriptUtils.evaluateReturn(`this.${lastPropertyName}`, data)\n data.onChildRenderedByProperty(lastPropertyName, propertyValue);\n // data\n }\n resolve(rData);\n }).then(it => {\n // console.log('DonrenderProxy root RenderDone')\n });\n }\n fullPaths.push([{path:fullPathStr, obj: this._domRender_proxy}]);\n }\n\n // console.log('dddddd', fullPaths.flatMap(it=>it).map(it=>it.path))\n return fullPaths;\n }\n\n public set(target: T, p: string | symbol, value: any, receiver: T): boolean {\n // console.log('set------->', target, p, value, receiver, Date.now())\n // console.log('set------->', target, p, value, receiver, Date.now())\n // try {\n // const isNoProxy = Reflect.getMetadata(DomRenderNoProxyKey, target, p) || Reflect.getMetadata(DomRenderNoProxyKey, Object.getPrototypeOf(obj).constructor);\n // if (isNoProxy) {\n // return obj;\n // }\n // }catch (e) {}\n\n // console.log('set-->', p, value, target, receiver, Reflect.getMetadata(DomRenderNoProxyKey, target, p) );\n\n if (\n (typeof p === 'string' && p !== '__domrender_components' && excludeGetSetPropertys.includes(p)) ||\n Reflect.getMetadata(DomRenderNoProxyKey, target, p)\n ) {\n (target as any)[p] = value;\n return true;\n }\n // const old = (target as any)[p];\n // console.log('set proxy-->', target, p, value, this._rawSets, this._domRender_ref);\n // if (typeof p === 'string' && '__render' === p) {\n // (target as any)[p] = value;\n // return true;\n // }\n // console.log('set--?', p, target, value);\n\n if (typeof p === 'string') {\n value = this.proxy(receiver, value, p);\n }\n\n // console.log('set typeChecked', (target as any)[p] instanceof ComponentSet, value instanceof ComponentSet);\n // if ((target as any)[p] instanceof ComponentSet) {\n // (target as any)[p]?.obj?.onDrThisUnBind?.();\n // }\n // is ComponentSet\n if ((value instanceof ComponentSet) && ((target as any)[p] instanceof ComponentSet)) {\n value.config.beforeComponentSet = (target as any)[p];\n }\n (target as any)[p] = value;\n let fullPathInfo: {path: string, obj:any}[][] = [];\n if (typeof p === 'string') {\n fullPathInfo = this.root([[{path:p, obj: this._domRender_proxy}]], value)\n }\n\n // console.log('setRooot', fullPathInfo);\n\n\n //normal attribute \uB610\uD55C \uB9C1\uD06C\uB791 \uAC19\uC740 \uC99D\uC138\uB77C\uC11C \uC774\uB807\uAC8C \uD574\uC918\uC57C\uD55C\uB2E4!!\n // const rootDomRenderProxy = this.findRootDomRenderProxy();\n // console.log('set!!!!!!!', fullPathInfo, rootDomRenderProxy)\n // console.log('--------rootDom',fullPathInfo, rootDomRenderProxy, rootDomRenderProxy._domRender_proxy)\n const rootElement = this._domRender_config.rootElement ?? this._domRender_config.window.document;\n DocumentUtils.querySelectorAllByAttributeName(rootElement, EventManager.normalAttrMapAttrName)?.forEach(elementInfo => {\n // @ts-ignore\n // const optionalPath = ObjectUtils.Path.toOptionalChainPath(elementInfo.value);\n const targets = new Map<string,string>(ScriptUtils.evaluateReturn<[string, string][]>(elementInfo.value));\n Array.from(targets.entries()).filter(([key, value])=>value.trim()).filter(isDefined).flatMap(([key,valueScript])=> {\n return fullPathInfo.flat().filter(it => valueScript.includes(`this.${it.path}`)).flatMap(it=> ({key, valueScript: valueScript, pathInfo: it}));\n }).forEach(it=> {\n const optionalPath = ObjectUtils.Path.toOptionalChainPath(it.valueScript);\n const value1 = ScriptUtils.evaluateReturn(optionalPath, it.pathInfo.obj);\n // console.log('proxy set!Attribut======', it.key, value1)\n if (value1 === null) {\n elementInfo.element.removeAttribute(it.key);\n elementInfo.element[it.key] = null;\n } else {\n elementInfo.element.setAttribute(it.key, value1);\n elementInfo.element[it.key] = value1\n }\n })\n })\n\n //\uC5EC\uAE30\uC11C \uB9C1\uD06C \uAC19\uC740\uAC70 \uD574\uC918\uC57C\uD568 *-link\uB85C \uBCC0\uC218\uAC12\uC774 \uBCC0\uACBD\uB418\uBA74 \uADF8\uAC78 \uCC38\uACE0\uD558\uACE0\uC788\uB294 \uB2E4\uB978\uAC83\uB4E4\uC5D0\uB3C4 \uD574\uC918\uC57C\uD55C\uB2E4.\n DocumentUtils.querySelectorAllByAttributeName(rootElement, EventManager.linkTargetMapAttrName)?.forEach(elementInfo => {\n // @ts-ignore\n const targets = new Map<string,string>(ScriptUtils.evaluateReturn<[string, string][]>(elementInfo.value));\n\n Array.from(targets.entries()).filter(([key, value])=>value.trim()).filter(isDefined).flatMap(([key,valueScript])=> {\n return fullPathInfo.flat().filter(it => valueScript.includes(`this.${it.path}`)).flatMap(it=> ({key, valueScript: valueScript, pathInfo: it}));\n }).forEach(info=> {\n const value1 = ScriptUtils.evaluateReturn(info.valueScript, info.pathInfo.obj);\n const applyAttributeName = EventManager.linkAttrs.find(it => it.name === info.key);\n if (applyAttributeName) {\n if (value1 === null) {\n elementInfo.element.removeAttribute(applyAttributeName.property);\n } else {\n // console.log('ppppppppppppppppppppppp', applyAttributeName, elementInfo)\n elementInfo.element.setAttribute(applyAttributeName.property, value1);\n }\n }\n })\n\n Array.from(targets.entries()).filter(([key, value])=>value.trim()).filter(isDefined).flatMap(([key,valueScript])=> {\n return fullPathInfo.flat().filter(it => valueScript.includes(`this.${it.path}`)).flatMap(it=> ({key, valueScript: valueScript, pathInfo: it}));\n }).forEach(info=> {\n const linkInfo = EventManager.linkAttrs.find(it=>it.name === info.key)\n if (linkInfo) {\n elementInfo.element[linkInfo.property] = value\n }\n })\n })\n if (('onBeforeReturnSet' in receiver) && typeof p === 'string' && !(this._domRender_config.proxyExcludeOnBeforeReturnSets ?? []).concat(excludeGetSetPropertys).includes(p)) {\n if(isOnBeforeReturnSet(receiver)){\n receiver.onBeforeReturnSet?.(p, value, fullPathInfo.map(it => it.map(it=>it.path).join()));\n }\n }\n return true;\n }\n\n get(target: T, p: string | symbol, receiver: any): any {\n // console.log('get-->', target, p, receiver);\n if (p === '_DomRender_origin' || p === '_domRender_origin') {\n return this._domRender_origin;\n } else if (p === '_DomRender_ref' || p === '_domRender_ref') {\n return this._domRender_ref;\n } else if (p === '_DomRender_config' || p ==='_domRender_config') {\n return this._domRender_config;\n } else if (p === '_DomRender_proxy' || p ==='_domRender_proxy') {\n return this;\n } else {\n // Date\uB77C\uB358\uC9C0 \uC774\uB7F0\uB188\uB4E4\uC740-_-\uD504\uB85D\uC2DC\uAC00 \uC774\uC0C1\uD558\uAC8C \uB3D9\uC791\uD574\uC11C\n // console.log('--->', p, target, target.bind, 'bind' in target)\n // if ((p in target) && ('bind' in target)) {\n // try{\n // return (target as any)[p].bind(target);\n // }catch (e) {\n // console.error(e)\n // }\n // } else {\n // return (target as any)[p]\n // }\n // return (p in target) ? (target as any)[p].bind(target) : (target as any)[p]\n // console.log('-->', p, Object.prototype.toString.call((target as any)[p]), (target as any)[p])\n // return (target as any)[p]\n let it = (target as any)[p];\n if (it && typeof it === 'object' && ('_DomRender_isProxy' in it) && Object.prototype.toString.call(it._DomRender_origin) === '[object Date]') {\n it = it._DomRender_origin;\n }\n\n if (('onBeforeReturnGet' in receiver) && typeof p === 'string' && !(this._domRender_config.proxyExcludeOnBeforeReturnGets ?? []).concat(excludeGetSetPropertys).includes(p)) {\n (receiver as any)?.onBeforeReturnGet?.(p, it, this.root([[{path:p, obj: this._domRender_proxy}]], it, false));\n }\n return it;\n }\n }\n\n deleteProperty(target: T, p: string | symbol): boolean {\n delete (target as any)[p];\n if (typeof p === 'string') {\n this.root([[{path:p, obj: this._domRender_proxy}]]);\n }\n return true;\n }\n\n has(target: T, p: string | symbol): boolean {\n return p === '_DomRender_isProxy' || p in target;\n }\n\n proxy(parentProxy: T, obj: T | any, p: string) {\n\n\n try {\n // const isNoProxy = Reflect.getMetadata(DomRenderNoProxyKey, obj, p) || Reflect.getMetadata(DomRenderNoProxyKey, Object.getPrototypeOf(obj).constructor);\n const isObject = typeof obj === 'object';\n const isNoProxy = isObject && isDomRenderNoProxy(obj,p)\n const isExclude = (this._domRender_config.proxyExcludeTyps?.some(it => obj instanceof it)) ?? false;\n const isFinal = isObject && DomRenderProxy.isFinal(obj);\n const isFrozen = Object.isFrozen(obj);\n const isShield = obj instanceof Shield;\n if (isNoProxy || isExclude || ValidUtils.isNullOrUndefined(obj) || !isObject || isFinal || isFrozen || isShield) {\n return obj;\n }\n } catch (e) {\n }\n\n\n/*\n const proxyTarget = (this._domRender_config.proxyExcludeTyps?.filter(it => obj instanceof it) ?? []).length <= 0;\n if (proxyTarget && obj !== undefined && obj !== null && typeof obj === 'object' && !('_DomRender_isProxy' in obj) && !DomRenderProxy.isFinal(obj) && !Object.isFrozen(obj) && !(obj instanceof Shield)) {\n const domRender = new DomRenderProxy(obj, undefined, this._domRender_config);\n domRender.addRef(parentProxy, p);\n const proxy = new Proxy(obj, domRender);\n domRender.run(proxy);\n return proxy;\n }\n if (proxyTarget && obj !== undefined && obj !== null && typeof obj === 'object' && ('_DomRender_isProxy' in obj) && !DomRenderProxy.isFinal(obj) && !Object.isFrozen(obj) && !(obj instanceof Shield)) {\n const d = (obj as any)._DomRender_proxy as DomRenderProxy<T>;\n d.addRef(this._domRender_proxy!, p);\n return obj;\n } else {\n return obj;\n }\n */\n if ( !isWrapProxyDomRenderProxy(obj)) {\n const domRender = new DomRenderProxy(obj, undefined, this._domRender_config);\n domRender.addRef(parentProxy, p);\n const proxy = new Proxy(obj, domRender);\n domRender.run(proxy);\n return proxy;\n }\n if (isWrapProxyDomRenderProxy(obj)) {\n const d = (obj as any)._DomRender_proxy as DomRenderProxy<T>;\n d.addRef(this._domRender_proxy!, p);\n return obj;\n } else {\n return obj;\n }\n }\n\n public addRef(parent: object, path: string) {\n if (!this._domRender_ref.get(parent)) {\n this._domRender_ref.set(parent, new Set<string>());\n }\n this._domRender_ref.get(parent)?.add(path);\n }\n\n public addRawSetAndRender(path: string, rawSet: RawSet) {\n this.addRawSet(path, rawSet);\n this.render([rawSet]);\n }\n\n public addRawSet(path: string, rawSet: RawSet) {\n // console.log('addRawSet--> path:', path, 'rawSet:', rawSet)\n if (!this._rawSets.get(path)) {\n this._rawSets.set(path, new Set<RawSet>());\n }\n this._rawSets.get(path)?.add(rawSet);\n }\n\n // public removeRawSet(...raws: RawSet[]) {\n // this._rawSets.forEach(it => {\n // raws.forEach(sit => it.delete(sit));\n // })\n // this.garbageRawSet();\n // }\n\n public removeRawSet(...raws: RawSet[]) {\n this._rawSets.forEach(it => {\n it.forEach(sit => {\n if (!sit.isConnected) {\n it.delete(sit);\n } else if (raws.includes(sit)) {\n it.delete(sit);\n }\n });\n });\n this.targetGarbageRawSet();\n }\n\n private targetGarbageRawSet() {\n this._targets.forEach(it => {\n if (!it.isConnected) {\n this._targets.delete(it);\n }\n });\n }\n\n private garbageRawSet() {\n this._targets.forEach(it => {\n if (!it.isConnected) {\n this._targets.delete(it);\n }\n });\n\n this._rawSets.forEach(it => {\n it.forEach(sit => {\n if (!sit.isConnected) {\n it.delete(sit);\n }\n });\n });\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["it", "rawSets", "value"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/components/ComponentBase.ts"],
|
|
4
|
+
"sourcesContent": ["import { ElementUtils } from '@dooboostore/core-web/element/ElementUtils';\nimport { OnChangeAttrRender, OtherData } from '../lifecycle/OnChangeAttrRender';\nimport { OnCreateRenderData, OnCreateRenderDataParams } from '../lifecycle/OnCreateRenderData';\nimport { RawSet } from '../rawsets/RawSet';\nimport { ConstructorType } from '@dooboostore/core/types';\nimport { OnCreatedThisChild } from '../lifecycle/OnCreatedThisChild';\nimport { DomRenderNoProxy } from '../decorators/DomRenderNoProxy';\nimport { OnInitRender } from '../lifecycle/OnInitRender';\nimport { ConvertUtils } from '@dooboostore/core/convert/ConvertUtils';\nimport { OnDestroyRender, OnDestroyRenderParams } from '../lifecycle/OnDestroyRender';\nimport { OnDrThisUnBind } from '../lifecycle/dr-this/OnDrThisUnBind';\nimport { OnDrThisBind } from '../lifecycle/dr-this/OnDrThisBind';\nimport type { Render } from '../rawsets/Render';\nimport { ReflectUtils } from '@dooboostore/core/reflect/ReflectUtils';\nimport { DomRenderConfig } from '../configs/DomRenderConfig';\nimport { Subject } from '@dooboostore/core/message/Subject';\nimport { debounceTime } from '@dooboostore/core/message/operators/debounceTime';\nimport type { Subscription } from '@dooboostore/core/message/Subscription';\n\n\nexport const ATTRIBUTE_METADATA_KEY = Symbol('attribute');\nexport const QUERY_METADATA_KEY = Symbol('query');\nexport const EVENT_METADATA_KEY = Symbol('event');\n\nexport interface AttributeMetadata {\n propertyKey: string | symbol;\n name: string;\n converter?: (value: any | string | null) => any;\n isMethod: boolean;\n}\n\nexport interface QueryMetadata {\n selector: string;\n propertyKey: string | symbol;\n isMethod: boolean;\n convert?: (e: Element) => any;\n onDestroy?: (componentInstance: any, element: Element) => void;\n refreshTime?: number; // milliseconds\n}\n\nexport interface EventMetadata {\n query: string;\n eventName: string;\n methodName: string | symbol;\n onDestroy?: (componentInstance: any, element: Element) => void;\n refreshTime?: number; // milliseconds\n}\n\nexport function attribute(nameOrOptions?: string | { name?: string, converter?: (value: any | string | null) => any }): (target: object, propertyKey: string | symbol, descriptor?: PropertyDescriptor) => void {\n return (target: object, propertyKey: string | symbol, descriptor?: PropertyDescriptor) => {\n const attributes = ReflectUtils.getMetadata<AttributeMetadata[]>(ATTRIBUTE_METADATA_KEY, target.constructor) || [];\n \n let name: string;\n let converter: ((value: any | string | null) => any) | undefined;\n \n if (typeof nameOrOptions === 'string') {\n name = nameOrOptions;\n } else if (nameOrOptions) {\n name = nameOrOptions.name || String(propertyKey);\n converter = nameOrOptions.converter;\n } else {\n name = String(propertyKey);\n }\n \n const attributeMetadata: AttributeMetadata = {\n propertyKey: propertyKey,\n name: name,\n converter: converter,\n isMethod: !!descriptor\n };\n \n attributes.push(attributeMetadata);\n ReflectUtils.defineMetadata(ATTRIBUTE_METADATA_KEY, attributes, target.constructor);\n };\n}\n\nexport function query(selectorOrOptions: string | { selector: string, convert?: (e: Element) => any, onDestroy?: (componentInstance: any, element: Element) => void, refreshIntervalTime?: number }): (target: object, propertyKey: string | symbol, descriptor?: PropertyDescriptor) => void {\n return (target: object, propertyKey: string | symbol, descriptor?: PropertyDescriptor) => {\n const queries = ReflectUtils.getMetadata<QueryMetadata[]>(QUERY_METADATA_KEY, target.constructor) || [];\n \n let selector: string;\n let convert: ((e: Element) => any) | undefined;\n let onDestroy: ((componentInstance: any, element: Element) => void) | undefined;\n let refreshTime: number | undefined;\n \n if (typeof selectorOrOptions === 'string') {\n selector = selectorOrOptions;\n } else {\n selector = selectorOrOptions.selector;\n convert = selectorOrOptions.convert;\n onDestroy = selectorOrOptions.onDestroy;\n refreshTime = selectorOrOptions.refreshIntervalTime;\n }\n \n const queryMetadata: QueryMetadata = {\n selector: selector,\n propertyKey: propertyKey,\n isMethod: !!descriptor,\n convert: convert,\n onDestroy: onDestroy,\n refreshTime: refreshTime\n };\n \n queries.push(queryMetadata);\n ReflectUtils.defineMetadata(QUERY_METADATA_KEY, queries, target.constructor);\n };\n}\n\nexport function event(options: { query: string, name: string, onDestroy?: (componentInstance: any, element: Element) => void, refreshTime?: number }): MethodDecorator {\n return (target: object, propertyKey: string | symbol, descriptor: PropertyDescriptor) => {\n const events = ReflectUtils.getMetadata<EventMetadata[]>(EVENT_METADATA_KEY, target.constructor) || [];\n \n const eventMetadata: EventMetadata = {\n query: options.query,\n eventName: options.name,\n methodName: propertyKey,\n onDestroy: options.onDestroy,\n refreshTime: options.refreshTime\n };\n \n events.push(eventMetadata);\n ReflectUtils.defineMetadata(EVENT_METADATA_KEY, events, target.constructor);\n };\n}\n\n\nexport type ComponentBaseConfig = { onlyParentType?: ConstructorType<any>[] | ConstructorType<any>, createChildrenDebounce?: number };\n\nexport type ChildrenSet = { instance: any, data: OnCreateRenderDataParams };\n\nexport class ComponentBase<T = any, C extends ComponentBaseConfig = ComponentBaseConfig> implements OnChangeAttrRender, OnCreateRenderData, OnCreatedThisChild, OnDrThisBind, OnDrThisUnBind, OnInitRender, OnDestroyRender {\n @DomRenderNoProxy\n private _rawSet?: RawSet;\n @DomRenderNoProxy\n private _children: ChildrenSet[] = [];\n @DomRenderNoProxy\n private _render: Render | undefined;\n @DomRenderNoProxy\n private _attribute?: T;\n @DomRenderNoProxy\n private _boundEventListeners: { element: Element, eventName: string, listener: (e: Event) => void }[] = [];\n @DomRenderNoProxy\n private _queryBindings: { element: Element, metadata: QueryMetadata }[] = [];\n @DomRenderNoProxy\n private _eventBindings: { element: Element, metadata: EventMetadata, listener: (e: Event) => void }[] = [];\n @DomRenderNoProxy\n private _refreshTimers: Map<QueryMetadata | EventMetadata, NodeJS.Timeout> = new Map();\n\n @DomRenderNoProxy\n private childrenSetSubject = new Subject<ChildrenSet[]>();\n @DomRenderNoProxy\n private createChildrenDebounceSubscription?: Subscription | undefined;\n\n constructor(private _config?: C) {\n }\n get componentConfig(): C | undefined {\n return this._config;\n }\n get render(): Render | undefined {\n return this._render;\n }\n\n get rawSet(): RawSet | undefined {\n return this._rawSet;\n }\n\n get domRenderConfig(): DomRenderConfig | undefined {\n return this.rawSet?.dataSet.config;\n }\n\n private _queryElements(selector: string, rawSet:RawSet): Element[] {\n const e = this.getElement();\n // console.log('queryElement-->', e);\n if (e) {\n return ElementUtils.querySelectorAll(e, selector);\n } else {\n let startNode = rawSet.point?.start;\n let endNode = rawSet.point?.end;\n // console.log('-----', startNode, endNode)\n // console.log('-----', startNode?.isConnected, endNode?.isConnected)\n if (rawSet.point?.start && startNode && !startNode.isConnected && startNode instanceof HTMLElement && startNode.hasAttribute('id')) {\n rawSet.point.start = startNode = rawSet.dataSet.config.window.document.querySelector('#' + startNode.id) as HTMLMetaElement\n }\n if (rawSet.point?.end && endNode && !endNode.isConnected && endNode instanceof HTMLElement && endNode.hasAttribute('id')) {\n rawSet.point.end = endNode = rawSet.dataSet.config.window.document.querySelector('#' + endNode.id) as HTMLMetaElement\n }\n if (startNode && endNode) {\n // console.log('query!!', startNode, endNode);\n return ElementUtils.querySelectorAll({ start: startNode as Element, end: endNode as Element }, selector);\n }\n }\n return [];\n }\n\n private _cleanupEventListeners() {\n for (const { element, eventName, listener } of this._boundEventListeners) {\n element.removeEventListener(eventName, listener);\n }\n this._boundEventListeners = [];\n }\n\n private _cleanupQueryBindings() {\n for (const { element, metadata } of this._queryBindings) {\n if (metadata.onDestroy) {\n metadata.onDestroy(this, element);\n }\n this._clearRefreshTimer(metadata);\n }\n this._queryBindings = [];\n }\n\n private _cleanupEventBindings() {\n for (const { element, metadata, listener } of this._eventBindings) {\n element.removeEventListener(metadata.eventName, listener);\n if (metadata.onDestroy) {\n metadata.onDestroy(this, element);\n }\n this._clearRefreshTimer(metadata);\n }\n this._eventBindings = [];\n }\n\n private _applyQueryBinding(queryInfo: QueryMetadata, elements: Element[], newElementsOnly: Element[] = elements) {\n const { propertyKey, isMethod, convert } = queryInfo;\n \n // Track bindings for cleanup\n elements.forEach(element => {\n this._queryBindings.push({ element, metadata: queryInfo });\n });\n \n // Apply convert function if provided\n const processedElements = convert ? elements.map(convert) : elements;\n const processedNewElements = convert ? newElementsOnly.map(convert) : newElementsOnly;\n \n if (isMethod) {\n const method = (this as any)[propertyKey];\n if (typeof method === 'function') {\n const paramTypes = ReflectUtils.getParameterTypes(this, propertyKey);\n if (paramTypes && paramTypes.length > 0 && paramTypes[0] === Array) {\n // For array methods, pass only new elements\n method.call(this, processedNewElements, processedElements);\n } else {\n // For single element methods, pass first new element\n if (processedNewElements.length > 0) {\n method.call(this, processedNewElements[0]);\n }\n }\n }\n } else {\n // For properties, always set all elements (not just new ones)\n const propertyType = ReflectUtils.getType(this, propertyKey);\n if (propertyType === Array) {\n (this as any)[propertyKey] = processedElements;\n } else {\n (this as any)[propertyKey] = processedElements[0] || null;\n }\n }\n }\n\n private _setupQueryDecorators(rawSet: RawSet) {\n if (!rawSet) return;\n\n const queries = ReflectUtils.getMetadata<QueryMetadata[]>(QUERY_METADATA_KEY, this.constructor);\n // console.group('_setupQueryDecorators')\n // console.log('queries', queries);\n if (queries && Array.isArray(queries)) {\n for (const queryInfo of queries) {\n const elements = this._queryElements(queryInfo.selector, rawSet);\n // console.log('------elements', elements);\n this._applyQueryBinding(queryInfo, elements);\n \n // Setup refresh timer if specified\n this._setupRefreshTimer(queryInfo);\n }\n }\n // console.groupEnd();\n }\n\n private _updateQueryBinding(queryInfo: QueryMetadata, rawSet: RawSet, forceUpdate = false) {\n const newElements = this._queryElements(queryInfo.selector, rawSet);\n \n // Get current bindings for this query\n const currentBindings = this._queryBindings.filter(binding => binding.metadata === queryInfo);\n const currentElements = currentBindings.map(binding => binding.element);\n \n // Check if elements have changed\n const elementsChanged = forceUpdate || !this._arraysEqual(currentElements, newElements);\n \n if (elementsChanged) {\n let addedElements: Element[] = [];\n \n if (forceUpdate) {\n // Force update: cleanup all old bindings, treat all as new\n currentBindings.forEach(({ element, metadata }) => {\n if (metadata.onDestroy) {\n metadata.onDestroy(this, element);\n }\n });\n addedElements = newElements;\n } else {\n // Smart update: only cleanup removed elements, find added elements\n const removedElements = currentElements.filter(element => !newElements.includes(element));\n addedElements = newElements.filter(element => !currentElements.includes(element));\n \n removedElements.forEach(element => {\n if (queryInfo.onDestroy) {\n queryInfo.onDestroy(this, element);\n }\n });\n }\n \n // Remove old bindings\n this._queryBindings = this._queryBindings.filter(binding => binding.metadata !== queryInfo);\n \n // Apply new bindings, but pass only added elements to methods\n this._applyQueryBinding(queryInfo, newElements, addedElements);\n }\n }\n\n private _updateQueryDecorators(rawSet: RawSet) {\n if (!rawSet) return;\n\n const queries = ReflectUtils.getMetadata<QueryMetadata[]>(QUERY_METADATA_KEY, this.constructor);\n if (queries && Array.isArray(queries)) {\n for (const queryInfo of queries) {\n this._updateQueryBinding(queryInfo, rawSet);\n }\n }\n }\n\n private _arraysEqual(arr1: Element[], arr2: Element[]): boolean {\n if (arr1.length !== arr2.length) return false;\n return arr1.every((element, index) => element === arr2[index]);\n }\n\n private _setupRefreshTimer(metadata: QueryMetadata | EventMetadata) {\n if (!metadata.refreshTime || !this._rawSet) return;\n\n const timer = setInterval(() => {\n if (!this._rawSet) return;\n\n if ('selector' in metadata) {\n // QueryMetadata\n this._updateQueryBinding(metadata as QueryMetadata, this._rawSet);\n } else {\n // EventMetadata\n this._updateEventBinding(metadata as EventMetadata, this._rawSet);\n }\n }, metadata.refreshTime);\n\n this._refreshTimers.set(metadata, timer);\n }\n\n private _clearRefreshTimer(metadata: QueryMetadata | EventMetadata) {\n const timer = this._refreshTimers.get(metadata);\n if (timer) {\n clearInterval(timer);\n this._refreshTimers.delete(metadata);\n }\n }\n\n private _clearAllRefreshTimers() {\n for (const timer of Array.from(this._refreshTimers.values())) {\n clearInterval(timer);\n }\n this._refreshTimers.clear();\n }\n\n /**\n * Manually refresh all query and event decorators\n * Useful when DOM elements are dynamically added/removed and you want to update bindings\n */\n refreshDecorators(): void {\n if (this._rawSet) {\n this._updateQueryDecorators(this._rawSet);\n this._updateEventDecorators(this._rawSet);\n }\n }\n\n /**\n * Manually refresh specific query decorators by property key\n * @param propertyKeys - Array of property keys to refresh, or single property key\n */\n refreshQueryDecorators(propertyKeys: (string | symbol) | (string | symbol)[]): void {\n if (!this._rawSet) return;\n\n const keys = Array.isArray(propertyKeys) ? propertyKeys : [propertyKeys];\n const queries = ReflectUtils.getMetadata<QueryMetadata[]>(QUERY_METADATA_KEY, this.constructor);\n \n if (queries && Array.isArray(queries)) {\n for (const queryInfo of queries) {\n if (keys.includes(queryInfo.propertyKey)) {\n this._updateQueryBinding(queryInfo, this._rawSet, true); // Force update\n }\n }\n }\n }\n\n /**\n * Manually refresh specific event decorators by method name\n * @param methodNames - Array of method names to refresh, or single method name\n */\n refreshEventDecorators(methodNames: (string | symbol) | (string | symbol)[]): void {\n if (!this._rawSet) return;\n\n const names = Array.isArray(methodNames) ? methodNames : [methodNames];\n const events = ReflectUtils.getMetadata<EventMetadata[]>(EVENT_METADATA_KEY, this.constructor);\n \n if (events && Array.isArray(events)) {\n for (const eventInfo of events) {\n if (names.includes(eventInfo.methodName)) {\n this._updateEventBinding(eventInfo, this._rawSet, true); // Force update\n }\n }\n }\n }\n\n private _applyEventBinding(eventInfo: EventMetadata, elements: Element[]) {\n elements.forEach(element => {\n const listener = (this as any)[eventInfo.methodName].bind(this);\n // console.log('bind?????', element);\n element.addEventListener(eventInfo.eventName, listener);\n \n // Track bindings for cleanup\n this._eventBindings.push({ element, metadata: eventInfo, listener });\n this._boundEventListeners.push({ element, eventName: eventInfo.eventName, listener });\n });\n }\n\n private _setupEventDecorators(rawSet: RawSet) {\n if (!rawSet) return;\n\n const events = ReflectUtils.getMetadata<EventMetadata[]>(EVENT_METADATA_KEY, this.constructor);\n if (events && Array.isArray(events)) {\n for (const eventInfo of events) {\n const elements = this._queryElements(eventInfo.query, rawSet);\n this._applyEventBinding(eventInfo, elements);\n \n // Setup refresh timer if specified\n this._setupRefreshTimer(eventInfo);\n }\n }\n }\n\n private _updateEventBinding(eventInfo: EventMetadata, rawSet: RawSet, forceUpdate = false) {\n const newElements = this._queryElements(eventInfo.query, rawSet);\n \n // Get current bindings for this event\n const currentBindings = this._eventBindings.filter(binding => binding.metadata === eventInfo);\n const currentElements = currentBindings.map(binding => binding.element);\n \n // Check if elements have changed\n const elementsChanged = forceUpdate || !this._arraysEqual(currentElements, newElements);\n \n if (elementsChanged) {\n if (forceUpdate) {\n // Force update: cleanup all old bindings\n currentBindings.forEach(({ element, metadata, listener }) => {\n element.removeEventListener(metadata.eventName, listener);\n if (metadata.onDestroy) {\n metadata.onDestroy(this, element);\n }\n });\n } else {\n // Smart update: only cleanup removed elements\n const removedElements = currentElements.filter(element => !newElements.includes(element));\n const removedBindings = currentBindings.filter(binding => removedElements.includes(binding.element));\n \n removedBindings.forEach(({ element, metadata, listener }) => {\n element.removeEventListener(metadata.eventName, listener);\n if (metadata.onDestroy) {\n metadata.onDestroy(this, element);\n }\n });\n }\n \n // Remove old bindings from tracking arrays\n this._eventBindings = this._eventBindings.filter(binding => binding.metadata !== eventInfo);\n this._boundEventListeners = this._boundEventListeners.filter(binding => \n !currentBindings.some(cb => cb.element === binding.element && cb.metadata.eventName === binding.eventName)\n );\n \n // Apply new bindings\n this._applyEventBinding(eventInfo, newElements);\n }\n }\n\n private _updateEventDecorators(rawSet: RawSet) {\n if (!rawSet) return;\n\n const events = ReflectUtils.getMetadata<EventMetadata[]>(EVENT_METADATA_KEY, this.constructor);\n if (events && Array.isArray(events)) {\n for (const eventInfo of events) {\n this._updateEventBinding(eventInfo, rawSet);\n }\n }\n }\n\n getAttribute<K extends keyof T>(name: K, attribute = this._attribute): T[K] | null {\n const target = attribute as any;\n if (!target) {\n return null;\n }\n\n const nameString = String(name);\n let p = nameString;\n if (p in target) {\n return target[p];\n }\n p = ConvertUtils.snakeToCamelCase(nameString);\n if (p in target) {\n return target[p];\n }\n p = ConvertUtils.camelToSnakeCase(nameString);\n if (p in target) {\n return target[p];\n }\n p = nameString.toUpperCase()\n if (p in target) {\n return target[p];\n }\n p = nameString.toLowerCase()\n if (p in target) {\n return target[p];\n }\n return null;\n }\n\n hasAttribute(name: keyof T) {\n return this.getAttribute(name) !==null;\n }\n\n equalsAttributeName(n: string, name: keyof T) {\n return n === name ||\n ConvertUtils.snakeToCamelCase(n) === name ||\n ConvertUtils.camelToSnakeCase(n) === name ||\n n.toUpperCase() === (name as string).toUpperCase() ||\n n.toLowerCase() === (name as string).toLowerCase()\n ;\n }\n\n get uuid(): string | undefined {\n return this._rawSet?.uuid;\n }\n\n get childrenSet() {\n return this._children;\n }\n\n get children(): any[] {\n return this._children.map(it=>it.instance);\n }\n\n getElement<T extends Element>(): T | undefined {\n return (this.render ?? this.rawSet?.dataSet?.render)?.getElement?.();\n }\n\n getFirstChild<T>(type: ConstructorType<T>): T | undefined {\n return this._children.find(it => it instanceof type)?.instance;\n }\n\n getParentThis<P>():P {\n return this.render?.parentThis as P;\n }\n\n getChildren<C extends ConstructorType<any>>(type: C): InstanceType<C>[];\n getChildren<C extends ConstructorType<any>[]>(types: C): InstanceType<C[number]>[];\n getChildren(typeOrTypes: ConstructorType<any> | ConstructorType<any>[]): any[] {\n const targets = Array.isArray(typeOrTypes) ? typeOrTypes : [typeOrTypes];\n return this._children.filter(childSet =>\n targets.some(targetConstructor => childSet.instance instanceof targetConstructor)\n )?.map(it=>it.instance);\n }\n\n\n\n private setRawSet(rawSet: RawSet) {\n this._rawSet = rawSet;\n if (this._rawSet) {\n this.setAttribute(this._rawSet.dataSet?.render?.attribute as T);\n }\n }\n\n setAttribute(attribute: T) {\n this._attribute = attribute;\n }\n\n // TODO: rawSet isConnected\uB85C \uCCB4\uD06C\uD574\uC11C \uB4E4\uC5B4\uAC00\uC788\uB294\uAC83\uB9CC \uCC98\uB9AC\uB418\uB3C4\uB85D \uB610\uB294 \uC774\uBBF8\uB4E4\uC5B4\uAC00\uC788\uB294\uAC83\uB3C4 \uBEB4\uC57C\uB420\uAC83\uAC19\uC740\uB370.. \uC801\uC6A9\uD558\uAE34\uD588\uC74C..\uC9C0\uCF1C\uBD10\uC57C\uB420\uB4EF.\n onCreatedThisChild(child: any, data: OnCreateRenderDataParams) {\n // console.log('------------------------',child, data, data.render?.rawSet?.isConnected)\n const n = [...this._children];\n n.push({instance:child, data});\n this._children = n.filter(it=>it.data.render?.rawSet?.isConnected)\n this.childrenSetSubject.next(this._children);\n \n // Update decorators when children change (DOM might have changed)\n // Only update if elements actually changed\n if (this._rawSet) {\n this._updateQueryDecorators(this._rawSet);\n this._updateEventDecorators(this._rawSet);\n }\n }\n\n onCreatedThisChildDebounce(childrenSet: ChildrenSet[]) {\n\n }\n\n onCreateRenderData(data: OnCreateRenderDataParams): void {\n this._render = data.render;\n if (data.render?.rawSet) {\n this.setRawSet(data.render.rawSet);\n }\n if (this._config?.onlyParentType) {\n const isOk = Array.isArray(this._config?.onlyParentType) ? this._config?.onlyParentType : [this._config?.onlyParentType].some(it => data.render?.parentThis instanceof it);\n if (!isOk) {\n throw new Error('only my parentThis ' + this._config?.onlyParentType);\n }\n }\n }\n\n onChangeAttrRender(name: string, value: any, other: OtherData): void {\n if (other.rawSet) {\n this.setRawSet(other.rawSet);\n }\n\n const attributes = ReflectUtils.getMetadata<AttributeMetadata[]>(ATTRIBUTE_METADATA_KEY, this.constructor);\n if (attributes && Array.isArray(attributes)) {\n for (const attrInfo of attributes) {\n if (this.equalsAttributeName(name, attrInfo.name as any)) {\n const finalValue = attrInfo.converter ? attrInfo.converter(value) : value;\n if (attrInfo.isMethod) {\n const method = (this as any)[attrInfo.propertyKey];\n if (typeof method === 'function') {\n method.call(this, finalValue);\n }\n } else {\n (this as any)[attrInfo.propertyKey] = finalValue;\n }\n }\n }\n }\n }\n\n onInitRender(param: any, rawSet: RawSet) {\n this.createChildrenDebounceSubscription = this.childrenSetSubject.pipe(debounceTime(this.componentConfig?.createChildrenDebounce??0)).subscribe(it => {\n this.onCreatedThisChildDebounce(it);\n });\n if (rawSet) {\n this.setRawSet(rawSet);\n\n const e = this.getElement();\n if (e) {\n (e as any).component = this;\n }\n\n // Setup decorators\n this._setupQueryDecorators(rawSet);\n this._setupEventDecorators(rawSet);\n }\n }\n\n onDrThisBind() {\n // Logic moved to onInitRender for robustness\n }\n\n onDrThisUnBind() {\n this.onDestroy();\n }\n\n onDestroyRender(data?: OnDestroyRenderParams): void {\n this.onDestroy();\n }\n\n onDestroy() {\n this._cleanupEventListeners();\n this._cleanupQueryBindings();\n this._cleanupEventBindings();\n this._clearAllRefreshTimers();\n this.createChildrenDebounceSubscription?.unsubscribe();\n }\n\n}\n"],
|
|
5
|
+
"mappings": "AAAA,OAAO;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComponentBase.d.ts","sourceRoot":"","sources":["../../../src/components/ComponentBase.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ComponentBase.d.ts","sourceRoot":"","sources":["../../../src/components/ComponentBase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
if (decorator = decorators[i])
|
|
7
|
-
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
8
|
-
if (kind && result) __defProp(target, key, result);
|
|
9
|
-
return result;
|
|
1
|
+
var __decorate = function(decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
10
6
|
};
|
|
11
|
-
|
|
7
|
+
var __metadata = function(k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
var _a, _b;
|
|
12
11
|
import { ElementUtils } from "@dooboostore/core-web/element/ElementUtils";
|
|
13
|
-
import {
|
|
12
|
+
import { RawSet } from "../rawsets/RawSet.js";
|
|
13
|
+
import { DomRenderNoProxy } from "../decorators/DomRenderNoProxy.js";
|
|
14
14
|
import { ConvertUtils } from "@dooboostore/core/convert/ConvertUtils";
|
|
15
15
|
import { ReflectUtils } from "@dooboostore/core/reflect/ReflectUtils";
|
|
16
16
|
import { Subject } from "@dooboostore/core/message/Subject";
|
|
@@ -177,7 +177,8 @@ class ComponentBase {
|
|
|
177
177
|
}
|
|
178
178
|
}
|
|
179
179
|
_setupQueryDecorators(rawSet) {
|
|
180
|
-
if (!rawSet)
|
|
180
|
+
if (!rawSet)
|
|
181
|
+
return;
|
|
181
182
|
const queries = ReflectUtils.getMetadata(QUERY_METADATA_KEY, this.constructor);
|
|
182
183
|
if (queries && Array.isArray(queries)) {
|
|
183
184
|
for (const queryInfo of queries) {
|
|
@@ -215,7 +216,8 @@ class ComponentBase {
|
|
|
215
216
|
}
|
|
216
217
|
}
|
|
217
218
|
_updateQueryDecorators(rawSet) {
|
|
218
|
-
if (!rawSet)
|
|
219
|
+
if (!rawSet)
|
|
220
|
+
return;
|
|
219
221
|
const queries = ReflectUtils.getMetadata(QUERY_METADATA_KEY, this.constructor);
|
|
220
222
|
if (queries && Array.isArray(queries)) {
|
|
221
223
|
for (const queryInfo of queries) {
|
|
@@ -224,13 +226,16 @@ class ComponentBase {
|
|
|
224
226
|
}
|
|
225
227
|
}
|
|
226
228
|
_arraysEqual(arr1, arr2) {
|
|
227
|
-
if (arr1.length !== arr2.length)
|
|
229
|
+
if (arr1.length !== arr2.length)
|
|
230
|
+
return false;
|
|
228
231
|
return arr1.every((element, index) => element === arr2[index]);
|
|
229
232
|
}
|
|
230
233
|
_setupRefreshTimer(metadata) {
|
|
231
|
-
if (!metadata.refreshTime || !this._rawSet)
|
|
234
|
+
if (!metadata.refreshTime || !this._rawSet)
|
|
235
|
+
return;
|
|
232
236
|
const timer = setInterval(() => {
|
|
233
|
-
if (!this._rawSet)
|
|
237
|
+
if (!this._rawSet)
|
|
238
|
+
return;
|
|
234
239
|
if ("selector" in metadata) {
|
|
235
240
|
this._updateQueryBinding(metadata, this._rawSet);
|
|
236
241
|
} else {
|
|
@@ -267,7 +272,8 @@ class ComponentBase {
|
|
|
267
272
|
* @param propertyKeys - Array of property keys to refresh, or single property key
|
|
268
273
|
*/
|
|
269
274
|
refreshQueryDecorators(propertyKeys) {
|
|
270
|
-
if (!this._rawSet)
|
|
275
|
+
if (!this._rawSet)
|
|
276
|
+
return;
|
|
271
277
|
const keys = Array.isArray(propertyKeys) ? propertyKeys : [propertyKeys];
|
|
272
278
|
const queries = ReflectUtils.getMetadata(QUERY_METADATA_KEY, this.constructor);
|
|
273
279
|
if (queries && Array.isArray(queries)) {
|
|
@@ -283,7 +289,8 @@ class ComponentBase {
|
|
|
283
289
|
* @param methodNames - Array of method names to refresh, or single method name
|
|
284
290
|
*/
|
|
285
291
|
refreshEventDecorators(methodNames) {
|
|
286
|
-
if (!this._rawSet)
|
|
292
|
+
if (!this._rawSet)
|
|
293
|
+
return;
|
|
287
294
|
const names = Array.isArray(methodNames) ? methodNames : [methodNames];
|
|
288
295
|
const events = ReflectUtils.getMetadata(EVENT_METADATA_KEY, this.constructor);
|
|
289
296
|
if (events && Array.isArray(events)) {
|
|
@@ -303,7 +310,8 @@ class ComponentBase {
|
|
|
303
310
|
});
|
|
304
311
|
}
|
|
305
312
|
_setupEventDecorators(rawSet) {
|
|
306
|
-
if (!rawSet)
|
|
313
|
+
if (!rawSet)
|
|
314
|
+
return;
|
|
307
315
|
const events = ReflectUtils.getMetadata(EVENT_METADATA_KEY, this.constructor);
|
|
308
316
|
if (events && Array.isArray(events)) {
|
|
309
317
|
for (const eventInfo of events) {
|
|
@@ -337,14 +345,13 @@ class ComponentBase {
|
|
|
337
345
|
});
|
|
338
346
|
}
|
|
339
347
|
this._eventBindings = this._eventBindings.filter((binding) => binding.metadata !== eventInfo);
|
|
340
|
-
this._boundEventListeners = this._boundEventListeners.filter(
|
|
341
|
-
(binding) => !currentBindings.some((cb) => cb.element === binding.element && cb.metadata.eventName === binding.eventName)
|
|
342
|
-
);
|
|
348
|
+
this._boundEventListeners = this._boundEventListeners.filter((binding) => !currentBindings.some((cb) => cb.element === binding.element && cb.metadata.eventName === binding.eventName));
|
|
343
349
|
this._applyEventBinding(eventInfo, newElements);
|
|
344
350
|
}
|
|
345
351
|
}
|
|
346
352
|
_updateEventDecorators(rawSet) {
|
|
347
|
-
if (!rawSet)
|
|
353
|
+
if (!rawSet)
|
|
354
|
+
return;
|
|
348
355
|
const events = ReflectUtils.getMetadata(EVENT_METADATA_KEY, this.constructor);
|
|
349
356
|
if (events && Array.isArray(events)) {
|
|
350
357
|
for (const eventInfo of events) {
|
|
@@ -406,9 +413,7 @@ class ComponentBase {
|
|
|
406
413
|
}
|
|
407
414
|
getChildren(typeOrTypes) {
|
|
408
415
|
const targets = Array.isArray(typeOrTypes) ? typeOrTypes : [typeOrTypes];
|
|
409
|
-
return this._children.filter(
|
|
410
|
-
(childSet) => targets.some((targetConstructor) => childSet.instance instanceof targetConstructor)
|
|
411
|
-
)?.map((it) => it.instance);
|
|
416
|
+
return this._children.filter((childSet) => targets.some((targetConstructor) => childSet.instance instanceof targetConstructor))?.map((it) => it.instance);
|
|
412
417
|
}
|
|
413
418
|
setRawSet(rawSet) {
|
|
414
419
|
this._rawSet = rawSet;
|
|
@@ -495,36 +500,46 @@ class ComponentBase {
|
|
|
495
500
|
this.createChildrenDebounceSubscription?.unsubscribe();
|
|
496
501
|
}
|
|
497
502
|
}
|
|
498
|
-
|
|
499
|
-
DomRenderNoProxy
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
], ComponentBase.prototype, "
|
|
510
|
-
|
|
511
|
-
DomRenderNoProxy
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
], ComponentBase.prototype, "
|
|
522
|
-
|
|
523
|
-
DomRenderNoProxy
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
503
|
+
__decorate([
|
|
504
|
+
DomRenderNoProxy,
|
|
505
|
+
__metadata("design:type", typeof (_a = typeof RawSet !== "undefined" && RawSet) === "function" ? _a : Object)
|
|
506
|
+
], ComponentBase.prototype, "_rawSet", void 0);
|
|
507
|
+
__decorate([
|
|
508
|
+
DomRenderNoProxy,
|
|
509
|
+
__metadata("design:type", Array)
|
|
510
|
+
], ComponentBase.prototype, "_children", void 0);
|
|
511
|
+
__decorate([
|
|
512
|
+
DomRenderNoProxy,
|
|
513
|
+
__metadata("design:type", Object)
|
|
514
|
+
], ComponentBase.prototype, "_render", void 0);
|
|
515
|
+
__decorate([
|
|
516
|
+
DomRenderNoProxy,
|
|
517
|
+
__metadata("design:type", Object)
|
|
518
|
+
], ComponentBase.prototype, "_attribute", void 0);
|
|
519
|
+
__decorate([
|
|
520
|
+
DomRenderNoProxy,
|
|
521
|
+
__metadata("design:type", Array)
|
|
522
|
+
], ComponentBase.prototype, "_boundEventListeners", void 0);
|
|
523
|
+
__decorate([
|
|
524
|
+
DomRenderNoProxy,
|
|
525
|
+
__metadata("design:type", Array)
|
|
526
|
+
], ComponentBase.prototype, "_queryBindings", void 0);
|
|
527
|
+
__decorate([
|
|
528
|
+
DomRenderNoProxy,
|
|
529
|
+
__metadata("design:type", Array)
|
|
530
|
+
], ComponentBase.prototype, "_eventBindings", void 0);
|
|
531
|
+
__decorate([
|
|
532
|
+
DomRenderNoProxy,
|
|
533
|
+
__metadata("design:type", typeof (_b = typeof Map !== "undefined" && Map) === "function" ? _b : Object)
|
|
534
|
+
], ComponentBase.prototype, "_refreshTimers", void 0);
|
|
535
|
+
__decorate([
|
|
536
|
+
DomRenderNoProxy,
|
|
537
|
+
__metadata("design:type", Object)
|
|
538
|
+
], ComponentBase.prototype, "childrenSetSubject", void 0);
|
|
539
|
+
__decorate([
|
|
540
|
+
DomRenderNoProxy,
|
|
541
|
+
__metadata("design:type", Object)
|
|
542
|
+
], ComponentBase.prototype, "createChildrenDebounceSubscription", void 0);
|
|
528
543
|
export {
|
|
529
544
|
ATTRIBUTE_METADATA_KEY,
|
|
530
545
|
ComponentBase,
|