@dooboostore/dom-render 1.0.109 → 1.0.111

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1072) hide show
  1. package/README.MD +1 -2
  2. package/dist/cjs/DomRenderProxy.js +132 -57
  3. package/dist/cjs/DomRenderProxy.js.map +2 -2
  4. package/dist/cjs/components/ComponentBase.js +4 -4
  5. package/dist/cjs/components/ComponentBase.js.map +2 -2
  6. package/dist/cjs/components/appender/Appender.js +0 -3
  7. package/dist/cjs/components/appender/Appender.js.map +2 -2
  8. package/dist/cjs/components/checkbox/CheckBox.js.map +2 -2
  9. package/dist/cjs/components/choose/Choose.js +3 -1
  10. package/dist/cjs/components/choose/Choose.js.map +2 -2
  11. package/dist/cjs/components/details/Details.js +2 -2
  12. package/dist/cjs/components/details/Details.js.map +2 -2
  13. package/dist/cjs/components/forOf/ForOf.js +2 -2
  14. package/dist/cjs/components/forOf/ForOf.js.map +2 -2
  15. package/dist/cjs/components/if/If.js +2 -2
  16. package/dist/cjs/components/if/If.js.map +2 -2
  17. package/dist/cjs/components/index.js +3 -1
  18. package/dist/cjs/components/index.js.map +3 -3
  19. package/dist/cjs/components/input/Input.js +2 -2
  20. package/dist/cjs/components/input/Input.js.map +2 -2
  21. package/dist/cjs/components/promise/PromiseSwitch.js +6 -6
  22. package/dist/cjs/components/promise/PromiseSwitch.js.map +2 -2
  23. package/dist/cjs/components/radio/Radio.js.map +2 -2
  24. package/dist/cjs/components/router/Route.js +2 -2
  25. package/dist/cjs/components/router/Route.js.map +2 -2
  26. package/dist/cjs/components/router/RouterOutlet.js +2 -2
  27. package/dist/cjs/components/router/RouterOutlet.js.map +2 -2
  28. package/dist/cjs/components/select/Select.js +6 -6
  29. package/dist/cjs/components/select/Select.js.map +2 -2
  30. package/dist/cjs/components/this/This.js +2 -2
  31. package/dist/cjs/components/this/This.js.map +2 -2
  32. package/dist/cjs/components/timer/Timer.js +2 -3
  33. package/dist/cjs/components/timer/Timer.js.map +2 -2
  34. package/dist/cjs/decorators/DomRenderNoProxy.js +3 -9
  35. package/dist/cjs/decorators/DomRenderNoProxy.js.map +2 -2
  36. package/dist/cjs/dist/DomRender.d.js +16 -0
  37. package/dist/cjs/dist/DomRender.d.js.map +7 -0
  38. package/dist/cjs/dist/DomRenderProxy.d.js +17 -0
  39. package/dist/cjs/dist/DomRenderProxy.d.js.map +7 -0
  40. package/dist/cjs/dist/components/ComponentBase.d.js +17 -0
  41. package/dist/cjs/dist/components/ComponentBase.d.js.map +7 -0
  42. package/dist/cjs/dist/components/ComponentSet.d.js +16 -0
  43. package/dist/cjs/dist/components/ComponentSet.d.js.map +7 -0
  44. package/dist/cjs/dist/components/appender/Appender.d.js +24 -0
  45. package/dist/cjs/dist/components/appender/Appender.d.js.map +7 -0
  46. package/dist/cjs/dist/components/checkbox/CheckBox.d.js +24 -0
  47. package/dist/cjs/dist/components/checkbox/CheckBox.d.js.map +7 -0
  48. package/dist/cjs/dist/components/choose/Choose.d.js +24 -0
  49. package/dist/cjs/dist/components/choose/Choose.d.js.map +7 -0
  50. package/dist/cjs/dist/components/details/Details.d.js +24 -0
  51. package/dist/cjs/dist/components/details/Details.d.js.map +7 -0
  52. package/dist/cjs/dist/components/dialog/Dialog.d.js +1 -0
  53. package/dist/cjs/dist/components/dialog/Dialog.d.js.map +7 -0
  54. package/dist/cjs/dist/components/dialog/example/ImageEditorDialog.d.js +1 -0
  55. package/dist/cjs/dist/components/dialog/example/ImageEditorDialog.d.js.map +7 -0
  56. package/dist/cjs/dist/components/forOf/ForOf.d.js +24 -0
  57. package/dist/cjs/dist/components/forOf/ForOf.d.js.map +7 -0
  58. package/dist/cjs/dist/components/if/If.d.js +24 -0
  59. package/dist/cjs/dist/components/if/If.d.js.map +7 -0
  60. package/dist/cjs/dist/components/index.d.js +16 -0
  61. package/dist/cjs/dist/components/index.d.js.map +7 -0
  62. package/dist/cjs/dist/components/input/Input.d.js +24 -0
  63. package/dist/cjs/dist/components/input/Input.d.js.map +7 -0
  64. package/dist/cjs/dist/components/promise/PromiseSwitch.d.js +24 -0
  65. package/dist/cjs/dist/components/promise/PromiseSwitch.d.js.map +7 -0
  66. package/dist/cjs/dist/components/radio/Radio.d.js +24 -0
  67. package/dist/cjs/dist/components/radio/Radio.d.js.map +7 -0
  68. package/dist/cjs/dist/components/router/Route.d.js +24 -0
  69. package/dist/cjs/dist/components/router/Route.d.js.map +7 -0
  70. package/dist/cjs/dist/components/select/Select.d.js +24 -0
  71. package/dist/cjs/dist/components/select/Select.d.js.map +7 -0
  72. package/dist/cjs/dist/components/this/This.d.js +24 -0
  73. package/dist/cjs/dist/components/this/This.d.js.map +7 -0
  74. package/dist/cjs/dist/components/timer/Timer.d.js +24 -0
  75. package/dist/cjs/dist/components/timer/Timer.d.js.map +7 -0
  76. package/dist/cjs/dist/configs/Config.d.js +16 -0
  77. package/dist/cjs/dist/configs/Config.d.js.map +7 -0
  78. package/dist/cjs/dist/configs/TargetAttr.d.js +16 -0
  79. package/dist/cjs/dist/configs/TargetAttr.d.js.map +7 -0
  80. package/dist/cjs/dist/configs/TargetElement.d.js +16 -0
  81. package/dist/cjs/dist/configs/TargetElement.d.js.map +7 -0
  82. package/dist/cjs/dist/decorators/DomRenderNoProxy.d.js +17 -0
  83. package/dist/cjs/dist/decorators/DomRenderNoProxy.d.js.map +7 -0
  84. package/dist/cjs/dist/events/EventManager.d.js +16 -0
  85. package/dist/cjs/dist/events/EventManager.d.js.map +7 -0
  86. package/dist/cjs/dist/index.d.js +95 -0
  87. package/dist/cjs/dist/index.d.js.map +7 -0
  88. package/dist/cjs/dist/iterators/Range.d.js +16 -0
  89. package/dist/cjs/dist/iterators/Range.d.js.map +7 -0
  90. package/dist/cjs/dist/lifecycle/OnBeforeReturnGet.d.js +16 -0
  91. package/dist/cjs/dist/lifecycle/OnBeforeReturnGet.d.js.map +7 -0
  92. package/dist/cjs/dist/lifecycle/OnBeforeReturnSet.d.js +16 -0
  93. package/dist/cjs/dist/lifecycle/OnBeforeReturnSet.d.js.map +7 -0
  94. package/dist/cjs/dist/lifecycle/OnChangeAttrRender.d.js +16 -0
  95. package/dist/cjs/dist/lifecycle/OnChangeAttrRender.d.js.map +7 -0
  96. package/dist/cjs/dist/lifecycle/OnChildRenderedByProperty.d.js +16 -0
  97. package/dist/cjs/dist/lifecycle/OnChildRenderedByProperty.d.js.map +7 -0
  98. package/dist/cjs/dist/lifecycle/OnCreateRender.d.js +16 -0
  99. package/dist/cjs/dist/lifecycle/OnCreateRender.d.js.map +7 -0
  100. package/dist/cjs/dist/lifecycle/OnCreateRenderData.d.js +16 -0
  101. package/dist/cjs/dist/lifecycle/OnCreateRenderData.d.js.map +7 -0
  102. package/dist/cjs/dist/lifecycle/OnCreateRendered.d.js +16 -0
  103. package/dist/cjs/dist/lifecycle/OnCreateRendered.d.js.map +7 -0
  104. package/dist/cjs/dist/lifecycle/OnCreatedThisChild.d.js +16 -0
  105. package/dist/cjs/dist/lifecycle/OnCreatedThisChild.d.js.map +7 -0
  106. package/dist/cjs/dist/lifecycle/OnDestroyRender.d.js +16 -0
  107. package/dist/cjs/dist/lifecycle/OnDestroyRender.d.js.map +7 -0
  108. package/dist/cjs/dist/lifecycle/OnInitRender.d.js +16 -0
  109. package/dist/cjs/dist/lifecycle/OnInitRender.d.js.map +7 -0
  110. package/dist/cjs/dist/lifecycle/OnProxyDomRender.d.js +16 -0
  111. package/dist/cjs/dist/lifecycle/OnProxyDomRender.d.js.map +7 -0
  112. package/dist/cjs/dist/lifecycle/dr-this/OnDrThisBind.d.js +16 -0
  113. package/dist/cjs/dist/lifecycle/dr-this/OnDrThisBind.d.js.map +7 -0
  114. package/dist/cjs/dist/lifecycle/dr-this/OnDrThisUnBind.d.js +16 -0
  115. package/dist/cjs/dist/lifecycle/dr-this/OnDrThisUnBind.d.js.map +7 -0
  116. package/dist/cjs/dist/managers/RenderManager.d.js +16 -0
  117. package/dist/cjs/dist/managers/RenderManager.d.js.map +7 -0
  118. package/dist/cjs/dist/messenger/DefaultMessenger.d.js +16 -0
  119. package/dist/cjs/dist/messenger/DefaultMessenger.d.js.map +7 -0
  120. package/dist/cjs/dist/messenger/Messenger.d.js +16 -0
  121. package/dist/cjs/dist/messenger/Messenger.d.js.map +7 -0
  122. package/dist/cjs/dist/operators/Appender.d.js +16 -0
  123. package/dist/cjs/dist/operators/Appender.d.js.map +7 -0
  124. package/dist/cjs/dist/operators/Dr.d.js +16 -0
  125. package/dist/cjs/dist/operators/Dr.d.js.map +7 -0
  126. package/dist/cjs/dist/operators/DrAppender.d.js +16 -0
  127. package/dist/cjs/dist/operators/DrAppender.d.js.map +7 -0
  128. package/dist/cjs/dist/operators/DrFor.d.js +16 -0
  129. package/dist/cjs/dist/operators/DrFor.d.js.map +7 -0
  130. package/dist/cjs/dist/operators/DrForOf.d.js +16 -0
  131. package/dist/cjs/dist/operators/DrForOf.d.js.map +7 -0
  132. package/dist/cjs/dist/operators/DrForm.d.js +16 -0
  133. package/dist/cjs/dist/operators/DrForm.d.js.map +7 -0
  134. package/dist/cjs/dist/operators/DrIf.d.js +16 -0
  135. package/dist/cjs/dist/operators/DrIf.d.js.map +7 -0
  136. package/dist/cjs/dist/operators/DrInnerHTML.d.js +16 -0
  137. package/dist/cjs/dist/operators/DrInnerHTML.d.js.map +7 -0
  138. package/dist/cjs/dist/operators/DrInnerText.d.js +16 -0
  139. package/dist/cjs/dist/operators/DrInnerText.d.js.map +7 -0
  140. package/dist/cjs/dist/operators/DrPre.d.js +16 -0
  141. package/dist/cjs/dist/operators/DrPre.d.js.map +7 -0
  142. package/dist/cjs/dist/operators/DrRepeat.d.js +16 -0
  143. package/dist/cjs/dist/operators/DrRepeat.d.js.map +7 -0
  144. package/dist/cjs/dist/operators/DrStripElement.d.js +16 -0
  145. package/dist/cjs/dist/operators/DrStripElement.d.js.map +7 -0
  146. package/dist/cjs/dist/operators/DrTargetAttr.d.js +16 -0
  147. package/dist/cjs/dist/operators/DrTargetAttr.d.js.map +7 -0
  148. package/dist/cjs/dist/operators/DrTargetElement.d.js +16 -0
  149. package/dist/cjs/dist/operators/DrTargetElement.d.js.map +7 -0
  150. package/dist/cjs/dist/operators/DrTargetElementIsElement.d.js +16 -0
  151. package/dist/cjs/dist/operators/DrTargetElementIsElement.d.js.map +7 -0
  152. package/dist/cjs/dist/operators/DrThis.d.js +16 -0
  153. package/dist/cjs/dist/operators/DrThis.d.js.map +7 -0
  154. package/dist/cjs/dist/operators/DrThisProperty.d.js +16 -0
  155. package/dist/cjs/dist/operators/DrThisProperty.d.js.map +7 -0
  156. package/dist/cjs/dist/operators/OperatorExecuter.d.js +16 -0
  157. package/dist/cjs/dist/operators/OperatorExecuter.d.js.map +7 -0
  158. package/dist/cjs/dist/operators/OperatorExecuterAttrRequire.d.js +16 -0
  159. package/dist/cjs/dist/operators/OperatorExecuterAttrRequire.d.js.map +7 -0
  160. package/dist/cjs/dist/rawsets/AttrInitCallBack.d.js +16 -0
  161. package/dist/cjs/dist/rawsets/AttrInitCallBack.d.js.map +7 -0
  162. package/dist/cjs/dist/rawsets/Attrs.d.js +16 -0
  163. package/dist/cjs/dist/rawsets/Attrs.d.js.map +7 -0
  164. package/dist/cjs/dist/rawsets/CreatorMetaData.d.js +16 -0
  165. package/dist/cjs/dist/rawsets/CreatorMetaData.d.js.map +7 -0
  166. package/dist/cjs/dist/rawsets/DestroyOptionType.d.js +16 -0
  167. package/dist/cjs/dist/rawsets/DestroyOptionType.d.js.map +7 -0
  168. package/dist/cjs/dist/rawsets/ElementInitCallBack.d.js +16 -0
  169. package/dist/cjs/dist/rawsets/ElementInitCallBack.d.js.map +7 -0
  170. package/dist/cjs/dist/rawsets/RawSet.d.js +16 -0
  171. package/dist/cjs/dist/rawsets/RawSet.d.js.map +7 -0
  172. package/dist/cjs/dist/rawsets/RawSetOperatorType.d.js +16 -0
  173. package/dist/cjs/dist/rawsets/RawSetOperatorType.d.js.map +7 -0
  174. package/dist/cjs/dist/rawsets/RawSetType.d.js +16 -0
  175. package/dist/cjs/dist/rawsets/RawSetType.d.js.map +7 -0
  176. package/dist/cjs/dist/rawsets/Render.d.js +16 -0
  177. package/dist/cjs/dist/rawsets/Render.d.js.map +7 -0
  178. package/dist/cjs/dist/routers/HashRouter.d.js +16 -0
  179. package/dist/cjs/dist/routers/HashRouter.d.js.map +7 -0
  180. package/dist/cjs/dist/routers/PathRouter.d.js +16 -0
  181. package/dist/cjs/dist/routers/PathRouter.d.js.map +7 -0
  182. package/dist/cjs/dist/routers/Router.d.js +17 -0
  183. package/dist/cjs/dist/routers/Router.d.js.map +7 -0
  184. package/dist/cjs/dist/types/Types.d.js +16 -0
  185. package/dist/cjs/dist/types/Types.d.js.map +7 -0
  186. package/dist/cjs/dist/validators/AllCheckedValidatorArray.d.js +16 -0
  187. package/dist/cjs/dist/validators/AllCheckedValidatorArray.d.js.map +7 -0
  188. package/dist/cjs/dist/validators/AllUnCheckedValidatorArray.d.js +16 -0
  189. package/dist/cjs/dist/validators/AllUnCheckedValidatorArray.d.js.map +7 -0
  190. package/dist/cjs/dist/validators/CheckedValidator.d.js +16 -0
  191. package/dist/cjs/dist/validators/CheckedValidator.d.js.map +7 -0
  192. package/dist/cjs/dist/validators/CountEqualsCheckedValidatorArray.d.js +16 -0
  193. package/dist/cjs/dist/validators/CountEqualsCheckedValidatorArray.d.js.map +7 -0
  194. package/dist/cjs/dist/validators/CountEqualsUnCheckedValidatorArray.d.js +16 -0
  195. package/dist/cjs/dist/validators/CountEqualsUnCheckedValidatorArray.d.js.map +7 -0
  196. package/dist/cjs/dist/validators/CountGreaterThanCheckedValidatorArray.d.js +16 -0
  197. package/dist/cjs/dist/validators/CountGreaterThanCheckedValidatorArray.d.js.map +7 -0
  198. package/dist/cjs/dist/validators/CountGreaterThanEqualsCheckedValidatorArray.d.js +16 -0
  199. package/dist/cjs/dist/validators/CountGreaterThanEqualsCheckedValidatorArray.d.js.map +7 -0
  200. package/dist/cjs/dist/validators/CountGreaterThanEqualsUnCheckedValidatorArray.d.js +16 -0
  201. package/dist/cjs/dist/validators/CountGreaterThanEqualsUnCheckedValidatorArray.d.js.map +7 -0
  202. package/dist/cjs/dist/validators/CountGreaterThanUnCheckedValidatorArray.d.js +16 -0
  203. package/dist/cjs/dist/validators/CountGreaterThanUnCheckedValidatorArray.d.js.map +7 -0
  204. package/dist/cjs/dist/validators/CountLessThanCheckedValidatorArray.d.js +16 -0
  205. package/dist/cjs/dist/validators/CountLessThanCheckedValidatorArray.d.js.map +7 -0
  206. package/dist/cjs/dist/validators/CountLessThanEqualsCheckedValidatorArray.d.js +16 -0
  207. package/dist/cjs/dist/validators/CountLessThanEqualsCheckedValidatorArray.d.js.map +7 -0
  208. package/dist/cjs/dist/validators/CountLessThanEqualsUnCheckedValidatorArray.d.js +16 -0
  209. package/dist/cjs/dist/validators/CountLessThanEqualsUnCheckedValidatorArray.d.js.map +7 -0
  210. package/dist/cjs/dist/validators/CountLessThanUnCheckedValidatorArray.d.js +16 -0
  211. package/dist/cjs/dist/validators/CountLessThanUnCheckedValidatorArray.d.js.map +7 -0
  212. package/dist/cjs/dist/validators/CountUnCheckedValidatorArray.d.js +16 -0
  213. package/dist/cjs/dist/validators/CountUnCheckedValidatorArray.d.js.map +7 -0
  214. package/dist/cjs/dist/validators/EmptyValidator.d.js +16 -0
  215. package/dist/cjs/dist/validators/EmptyValidator.d.js.map +7 -0
  216. package/dist/cjs/dist/validators/ExcludeCheckedValidatorArray.d.js +16 -0
  217. package/dist/cjs/dist/validators/ExcludeCheckedValidatorArray.d.js.map +7 -0
  218. package/dist/cjs/dist/validators/FormValidator.d.js +16 -0
  219. package/dist/cjs/dist/validators/FormValidator.d.js.map +7 -0
  220. package/dist/cjs/dist/validators/IncludeCheckedValidatorArray.d.js +16 -0
  221. package/dist/cjs/dist/validators/IncludeCheckedValidatorArray.d.js.map +7 -0
  222. package/dist/cjs/dist/validators/MultipleValidator.d.js +16 -0
  223. package/dist/cjs/dist/validators/MultipleValidator.d.js.map +7 -0
  224. package/dist/cjs/dist/validators/NonPassValidator.d.js +16 -0
  225. package/dist/cjs/dist/validators/NonPassValidator.d.js.map +7 -0
  226. package/dist/cjs/dist/validators/NotEmptyValidator.d.js +16 -0
  227. package/dist/cjs/dist/validators/NotEmptyValidator.d.js.map +7 -0
  228. package/dist/cjs/dist/validators/NotRegExpTestValidator.d.js +16 -0
  229. package/dist/cjs/dist/validators/NotRegExpTestValidator.d.js.map +7 -0
  230. package/dist/cjs/dist/validators/PassValidator.d.js +16 -0
  231. package/dist/cjs/dist/validators/PassValidator.d.js.map +7 -0
  232. package/dist/cjs/dist/validators/RegExpTestValidator.d.js +16 -0
  233. package/dist/cjs/dist/validators/RegExpTestValidator.d.js.map +7 -0
  234. package/dist/cjs/dist/validators/RequiredValidator.d.js +16 -0
  235. package/dist/cjs/dist/validators/RequiredValidator.d.js.map +7 -0
  236. package/dist/cjs/dist/validators/UnCheckedValidator.d.js +16 -0
  237. package/dist/cjs/dist/validators/UnCheckedValidator.d.js.map +7 -0
  238. package/dist/cjs/dist/validators/ValidMultipleValidator.d.js +16 -0
  239. package/dist/cjs/dist/validators/ValidMultipleValidator.d.js.map +7 -0
  240. package/dist/cjs/dist/validators/ValidValidator.d.js +16 -0
  241. package/dist/cjs/dist/validators/ValidValidator.d.js.map +7 -0
  242. package/dist/cjs/dist/validators/ValidValidatorArray.d.js +16 -0
  243. package/dist/cjs/dist/validators/ValidValidatorArray.d.js.map +7 -0
  244. package/dist/cjs/dist/validators/Validator.d.js +16 -0
  245. package/dist/cjs/dist/validators/Validator.d.js.map +7 -0
  246. package/dist/cjs/dist/validators/ValidatorArray.d.js +16 -0
  247. package/dist/cjs/dist/validators/ValidatorArray.d.js.map +7 -0
  248. package/dist/cjs/dist/validators/ValueEqualsValidator.d.js +16 -0
  249. package/dist/cjs/dist/validators/ValueEqualsValidator.d.js.map +7 -0
  250. package/dist/cjs/dist/validators/ValueNotEqualsValidator.d.js +16 -0
  251. package/dist/cjs/dist/validators/ValueNotEqualsValidator.d.js.map +7 -0
  252. package/dist/cjs/events/EventManager.js +36 -11
  253. package/dist/cjs/events/EventManager.js.map +2 -2
  254. package/dist/cjs/lifecycle/OnInitRender.js.map +1 -1
  255. package/dist/cjs/operators/DrForOf.js +24 -11
  256. package/dist/cjs/operators/DrForOf.js.map +2 -2
  257. package/dist/cjs/operators/DrIf.js +1 -2
  258. package/dist/cjs/operators/DrIf.js.map +2 -2
  259. package/dist/cjs/operators/DrInnerText.js +2 -2
  260. package/dist/cjs/operators/DrInnerText.js.map +2 -2
  261. package/dist/cjs/rawsets/RawSet.js +244 -49
  262. package/dist/cjs/rawsets/RawSet.js.map +3 -3
  263. package/dist/cjs/routers/PathRouter.js +13 -7
  264. package/dist/cjs/routers/PathRouter.js.map +2 -2
  265. package/dist/cjs/routers/Router.js +51 -27
  266. package/dist/cjs/routers/Router.js.map +2 -2
  267. package/dist/esm/DomRenderProxy.js +132 -57
  268. package/dist/esm/DomRenderProxy.js.map +2 -2
  269. package/dist/esm/components/ComponentBase.js +4 -4
  270. package/dist/esm/components/ComponentBase.js.map +2 -2
  271. package/dist/esm/components/appender/Appender.js +0 -3
  272. package/dist/esm/components/appender/Appender.js.map +2 -2
  273. package/dist/esm/components/checkbox/CheckBox.js.map +2 -2
  274. package/dist/esm/components/choose/Choose.js +3 -1
  275. package/dist/esm/components/choose/Choose.js.map +2 -2
  276. package/dist/esm/components/details/Details.js +2 -2
  277. package/dist/esm/components/details/Details.js.map +2 -2
  278. package/dist/esm/components/forOf/ForOf.js +2 -2
  279. package/dist/esm/components/forOf/ForOf.js.map +2 -2
  280. package/dist/esm/components/if/If.js +2 -2
  281. package/dist/esm/components/if/If.js.map +2 -2
  282. package/dist/esm/components/index.js +3 -1
  283. package/dist/esm/components/index.js.map +2 -2
  284. package/dist/esm/components/input/Input.js +2 -2
  285. package/dist/esm/components/input/Input.js.map +2 -2
  286. package/dist/esm/components/promise/PromiseSwitch.js +6 -6
  287. package/dist/esm/components/promise/PromiseSwitch.js.map +2 -2
  288. package/dist/esm/components/radio/Radio.js.map +2 -2
  289. package/dist/esm/components/router/Route.js +2 -2
  290. package/dist/esm/components/router/Route.js.map +2 -2
  291. package/dist/esm/components/router/RouterOutlet.js +2 -2
  292. package/dist/esm/components/router/RouterOutlet.js.map +2 -2
  293. package/dist/esm/components/select/Select.js +6 -6
  294. package/dist/esm/components/select/Select.js.map +2 -2
  295. package/dist/esm/components/this/This.js +2 -2
  296. package/dist/esm/components/this/This.js.map +2 -2
  297. package/dist/esm/components/timer/Timer.js +2 -3
  298. package/dist/esm/components/timer/Timer.js.map +2 -2
  299. package/dist/esm/decorators/DomRenderNoProxy.js +3 -9
  300. package/dist/esm/decorators/DomRenderNoProxy.js.map +2 -2
  301. package/dist/esm/dist/DomRender.d.js +1 -0
  302. package/dist/esm/dist/DomRender.d.js.map +7 -0
  303. package/dist/esm/dist/DomRenderProxy.d.js +2 -0
  304. package/dist/esm/dist/DomRenderProxy.d.js.map +7 -0
  305. package/dist/esm/dist/components/ComponentBase.d.js +2 -0
  306. package/dist/esm/dist/components/ComponentBase.d.js.map +7 -0
  307. package/dist/esm/dist/components/ComponentSet.d.js +1 -0
  308. package/dist/esm/dist/components/ComponentSet.d.js.map +7 -0
  309. package/dist/esm/dist/components/appender/Appender.d.js +5 -0
  310. package/dist/esm/dist/components/appender/Appender.d.js.map +7 -0
  311. package/dist/esm/dist/components/checkbox/CheckBox.d.js +5 -0
  312. package/dist/esm/dist/components/checkbox/CheckBox.d.js.map +7 -0
  313. package/dist/esm/dist/components/choose/Choose.d.js +5 -0
  314. package/dist/esm/dist/components/choose/Choose.d.js.map +7 -0
  315. package/dist/esm/dist/components/details/Details.d.js +5 -0
  316. package/dist/esm/dist/components/details/Details.d.js.map +7 -0
  317. package/dist/esm/dist/components/dialog/Dialog.d.js +1 -0
  318. package/dist/esm/dist/components/dialog/Dialog.d.js.map +7 -0
  319. package/dist/esm/dist/components/dialog/example/ImageEditorDialog.d.js +1 -0
  320. package/dist/esm/dist/components/dialog/example/ImageEditorDialog.d.js.map +7 -0
  321. package/dist/esm/dist/components/forOf/ForOf.d.js +5 -0
  322. package/dist/esm/dist/components/forOf/ForOf.d.js.map +7 -0
  323. package/dist/esm/dist/components/if/If.d.js +5 -0
  324. package/dist/esm/dist/components/if/If.d.js.map +7 -0
  325. package/dist/esm/dist/components/index.d.js +1 -0
  326. package/dist/esm/dist/components/index.d.js.map +7 -0
  327. package/dist/esm/dist/components/input/Input.d.js +5 -0
  328. package/dist/esm/dist/components/input/Input.d.js.map +7 -0
  329. package/dist/esm/dist/components/promise/PromiseSwitch.d.js +5 -0
  330. package/dist/esm/dist/components/promise/PromiseSwitch.d.js.map +7 -0
  331. package/dist/esm/dist/components/radio/Radio.d.js +5 -0
  332. package/dist/esm/dist/components/radio/Radio.d.js.map +7 -0
  333. package/dist/esm/dist/components/router/Route.d.js +5 -0
  334. package/dist/esm/dist/components/router/Route.d.js.map +7 -0
  335. package/dist/esm/dist/components/select/Select.d.js +5 -0
  336. package/dist/esm/dist/components/select/Select.d.js.map +7 -0
  337. package/dist/esm/dist/components/this/This.d.js +5 -0
  338. package/dist/esm/dist/components/this/This.d.js.map +7 -0
  339. package/dist/esm/dist/components/timer/Timer.d.js +5 -0
  340. package/dist/esm/dist/components/timer/Timer.d.js.map +7 -0
  341. package/dist/esm/dist/configs/Config.d.js +1 -0
  342. package/dist/esm/dist/configs/Config.d.js.map +7 -0
  343. package/dist/esm/dist/configs/TargetAttr.d.js +1 -0
  344. package/dist/esm/dist/configs/TargetAttr.d.js.map +7 -0
  345. package/dist/esm/dist/configs/TargetElement.d.js +1 -0
  346. package/dist/esm/dist/configs/TargetElement.d.js.map +7 -0
  347. package/dist/esm/dist/decorators/DomRenderNoProxy.d.js +2 -0
  348. package/dist/esm/dist/decorators/DomRenderNoProxy.d.js.map +7 -0
  349. package/dist/esm/dist/events/EventManager.d.js +1 -0
  350. package/dist/esm/dist/events/EventManager.d.js.map +7 -0
  351. package/dist/esm/dist/index.d.js +76 -0
  352. package/dist/esm/dist/index.d.js.map +7 -0
  353. package/dist/esm/dist/iterators/Range.d.js +1 -0
  354. package/dist/esm/dist/iterators/Range.d.js.map +7 -0
  355. package/dist/esm/dist/lifecycle/OnBeforeReturnGet.d.js +1 -0
  356. package/dist/esm/dist/lifecycle/OnBeforeReturnGet.d.js.map +7 -0
  357. package/dist/esm/dist/lifecycle/OnBeforeReturnSet.d.js +1 -0
  358. package/dist/esm/dist/lifecycle/OnBeforeReturnSet.d.js.map +7 -0
  359. package/dist/esm/dist/lifecycle/OnChangeAttrRender.d.js +1 -0
  360. package/dist/esm/dist/lifecycle/OnChangeAttrRender.d.js.map +7 -0
  361. package/dist/esm/dist/lifecycle/OnChildRenderedByProperty.d.js +1 -0
  362. package/dist/esm/dist/lifecycle/OnChildRenderedByProperty.d.js.map +7 -0
  363. package/dist/esm/dist/lifecycle/OnCreateRender.d.js +1 -0
  364. package/dist/esm/dist/lifecycle/OnCreateRender.d.js.map +7 -0
  365. package/dist/esm/dist/lifecycle/OnCreateRenderData.d.js +1 -0
  366. package/dist/esm/dist/lifecycle/OnCreateRenderData.d.js.map +7 -0
  367. package/dist/esm/dist/lifecycle/OnCreateRendered.d.js +1 -0
  368. package/dist/esm/dist/lifecycle/OnCreateRendered.d.js.map +7 -0
  369. package/dist/esm/dist/lifecycle/OnCreatedThisChild.d.js +1 -0
  370. package/dist/esm/dist/lifecycle/OnCreatedThisChild.d.js.map +7 -0
  371. package/dist/esm/dist/lifecycle/OnDestroyRender.d.js +1 -0
  372. package/dist/esm/dist/lifecycle/OnDestroyRender.d.js.map +7 -0
  373. package/dist/esm/dist/lifecycle/OnInitRender.d.js +1 -0
  374. package/dist/esm/dist/lifecycle/OnInitRender.d.js.map +7 -0
  375. package/dist/esm/dist/lifecycle/OnProxyDomRender.d.js +1 -0
  376. package/dist/esm/dist/lifecycle/OnProxyDomRender.d.js.map +7 -0
  377. package/dist/esm/dist/lifecycle/dr-this/OnDrThisBind.d.js +1 -0
  378. package/dist/esm/dist/lifecycle/dr-this/OnDrThisBind.d.js.map +7 -0
  379. package/dist/esm/dist/lifecycle/dr-this/OnDrThisUnBind.d.js +1 -0
  380. package/dist/esm/dist/lifecycle/dr-this/OnDrThisUnBind.d.js.map +7 -0
  381. package/dist/esm/dist/managers/RenderManager.d.js +1 -0
  382. package/dist/esm/dist/managers/RenderManager.d.js.map +7 -0
  383. package/dist/esm/dist/messenger/DefaultMessenger.d.js +1 -0
  384. package/dist/esm/dist/messenger/DefaultMessenger.d.js.map +7 -0
  385. package/dist/esm/dist/messenger/Messenger.d.js +1 -0
  386. package/dist/esm/dist/messenger/Messenger.d.js.map +7 -0
  387. package/dist/esm/dist/operators/Appender.d.js +1 -0
  388. package/dist/esm/dist/operators/Appender.d.js.map +7 -0
  389. package/dist/esm/dist/operators/Dr.d.js +1 -0
  390. package/dist/esm/dist/operators/Dr.d.js.map +7 -0
  391. package/dist/esm/dist/operators/DrAppender.d.js +1 -0
  392. package/dist/esm/dist/operators/DrAppender.d.js.map +7 -0
  393. package/dist/esm/dist/operators/DrFor.d.js +1 -0
  394. package/dist/esm/dist/operators/DrFor.d.js.map +7 -0
  395. package/dist/esm/dist/operators/DrForOf.d.js +1 -0
  396. package/dist/esm/dist/operators/DrForOf.d.js.map +7 -0
  397. package/dist/esm/dist/operators/DrForm.d.js +1 -0
  398. package/dist/esm/dist/operators/DrForm.d.js.map +7 -0
  399. package/dist/esm/dist/operators/DrIf.d.js +1 -0
  400. package/dist/esm/dist/operators/DrIf.d.js.map +7 -0
  401. package/dist/esm/dist/operators/DrInnerHTML.d.js +1 -0
  402. package/dist/esm/dist/operators/DrInnerHTML.d.js.map +7 -0
  403. package/dist/esm/dist/operators/DrInnerText.d.js +1 -0
  404. package/dist/esm/dist/operators/DrInnerText.d.js.map +7 -0
  405. package/dist/esm/dist/operators/DrPre.d.js +1 -0
  406. package/dist/esm/dist/operators/DrPre.d.js.map +7 -0
  407. package/dist/esm/dist/operators/DrRepeat.d.js +1 -0
  408. package/dist/esm/dist/operators/DrRepeat.d.js.map +7 -0
  409. package/dist/esm/dist/operators/DrStripElement.d.js +1 -0
  410. package/dist/esm/dist/operators/DrStripElement.d.js.map +7 -0
  411. package/dist/esm/dist/operators/DrTargetAttr.d.js +1 -0
  412. package/dist/esm/dist/operators/DrTargetAttr.d.js.map +7 -0
  413. package/dist/esm/dist/operators/DrTargetElement.d.js +1 -0
  414. package/dist/esm/dist/operators/DrTargetElement.d.js.map +7 -0
  415. package/dist/esm/dist/operators/DrTargetElementIsElement.d.js +1 -0
  416. package/dist/esm/dist/operators/DrTargetElementIsElement.d.js.map +7 -0
  417. package/dist/esm/dist/operators/DrThis.d.js +1 -0
  418. package/dist/esm/dist/operators/DrThis.d.js.map +7 -0
  419. package/dist/esm/dist/operators/DrThisProperty.d.js +1 -0
  420. package/dist/esm/dist/operators/DrThisProperty.d.js.map +7 -0
  421. package/dist/esm/dist/operators/OperatorExecuter.d.js +1 -0
  422. package/dist/esm/dist/operators/OperatorExecuter.d.js.map +7 -0
  423. package/dist/esm/dist/operators/OperatorExecuterAttrRequire.d.js +1 -0
  424. package/dist/esm/dist/operators/OperatorExecuterAttrRequire.d.js.map +7 -0
  425. package/dist/esm/dist/rawsets/AttrInitCallBack.d.js +1 -0
  426. package/dist/esm/dist/rawsets/AttrInitCallBack.d.js.map +7 -0
  427. package/dist/esm/dist/rawsets/Attrs.d.js +1 -0
  428. package/dist/esm/dist/rawsets/Attrs.d.js.map +7 -0
  429. package/dist/esm/dist/rawsets/CreatorMetaData.d.js +1 -0
  430. package/dist/esm/dist/rawsets/CreatorMetaData.d.js.map +7 -0
  431. package/dist/esm/dist/rawsets/DestroyOptionType.d.js +1 -0
  432. package/dist/esm/dist/rawsets/DestroyOptionType.d.js.map +7 -0
  433. package/dist/esm/dist/rawsets/ElementInitCallBack.d.js +1 -0
  434. package/dist/esm/dist/rawsets/ElementInitCallBack.d.js.map +7 -0
  435. package/dist/esm/dist/rawsets/RawSet.d.js +1 -0
  436. package/dist/esm/dist/rawsets/RawSet.d.js.map +7 -0
  437. package/dist/esm/dist/rawsets/RawSetOperatorType.d.js +1 -0
  438. package/dist/esm/dist/rawsets/RawSetOperatorType.d.js.map +7 -0
  439. package/dist/esm/dist/rawsets/RawSetType.d.js +1 -0
  440. package/dist/esm/dist/rawsets/RawSetType.d.js.map +7 -0
  441. package/dist/esm/dist/rawsets/Render.d.js +1 -0
  442. package/dist/esm/dist/rawsets/Render.d.js.map +7 -0
  443. package/dist/esm/dist/routers/HashRouter.d.js +1 -0
  444. package/dist/esm/dist/routers/HashRouter.d.js.map +7 -0
  445. package/dist/esm/dist/routers/PathRouter.d.js +1 -0
  446. package/dist/esm/dist/routers/PathRouter.d.js.map +7 -0
  447. package/dist/esm/dist/routers/Router.d.js +2 -0
  448. package/dist/esm/dist/routers/Router.d.js.map +7 -0
  449. package/dist/esm/dist/types/Types.d.js +1 -0
  450. package/dist/esm/dist/types/Types.d.js.map +7 -0
  451. package/dist/esm/dist/validators/AllCheckedValidatorArray.d.js +1 -0
  452. package/dist/esm/dist/validators/AllCheckedValidatorArray.d.js.map +7 -0
  453. package/dist/esm/dist/validators/AllUnCheckedValidatorArray.d.js +1 -0
  454. package/dist/esm/dist/validators/AllUnCheckedValidatorArray.d.js.map +7 -0
  455. package/dist/esm/dist/validators/CheckedValidator.d.js +1 -0
  456. package/dist/esm/dist/validators/CheckedValidator.d.js.map +7 -0
  457. package/dist/esm/dist/validators/CountEqualsCheckedValidatorArray.d.js +1 -0
  458. package/dist/esm/dist/validators/CountEqualsCheckedValidatorArray.d.js.map +7 -0
  459. package/dist/esm/dist/validators/CountEqualsUnCheckedValidatorArray.d.js +1 -0
  460. package/dist/esm/dist/validators/CountEqualsUnCheckedValidatorArray.d.js.map +7 -0
  461. package/dist/esm/dist/validators/CountGreaterThanCheckedValidatorArray.d.js +1 -0
  462. package/dist/esm/dist/validators/CountGreaterThanCheckedValidatorArray.d.js.map +7 -0
  463. package/dist/esm/dist/validators/CountGreaterThanEqualsCheckedValidatorArray.d.js +1 -0
  464. package/dist/esm/dist/validators/CountGreaterThanEqualsCheckedValidatorArray.d.js.map +7 -0
  465. package/dist/esm/dist/validators/CountGreaterThanEqualsUnCheckedValidatorArray.d.js +1 -0
  466. package/dist/esm/dist/validators/CountGreaterThanEqualsUnCheckedValidatorArray.d.js.map +7 -0
  467. package/dist/esm/dist/validators/CountGreaterThanUnCheckedValidatorArray.d.js +1 -0
  468. package/dist/esm/dist/validators/CountGreaterThanUnCheckedValidatorArray.d.js.map +7 -0
  469. package/dist/esm/dist/validators/CountLessThanCheckedValidatorArray.d.js +1 -0
  470. package/dist/esm/dist/validators/CountLessThanCheckedValidatorArray.d.js.map +7 -0
  471. package/dist/esm/dist/validators/CountLessThanEqualsCheckedValidatorArray.d.js +1 -0
  472. package/dist/esm/dist/validators/CountLessThanEqualsCheckedValidatorArray.d.js.map +7 -0
  473. package/dist/esm/dist/validators/CountLessThanEqualsUnCheckedValidatorArray.d.js +1 -0
  474. package/dist/esm/dist/validators/CountLessThanEqualsUnCheckedValidatorArray.d.js.map +7 -0
  475. package/dist/esm/dist/validators/CountLessThanUnCheckedValidatorArray.d.js +1 -0
  476. package/dist/esm/dist/validators/CountLessThanUnCheckedValidatorArray.d.js.map +7 -0
  477. package/dist/esm/dist/validators/CountUnCheckedValidatorArray.d.js +1 -0
  478. package/dist/esm/dist/validators/CountUnCheckedValidatorArray.d.js.map +7 -0
  479. package/dist/esm/dist/validators/EmptyValidator.d.js +1 -0
  480. package/dist/esm/dist/validators/EmptyValidator.d.js.map +7 -0
  481. package/dist/esm/dist/validators/ExcludeCheckedValidatorArray.d.js +1 -0
  482. package/dist/esm/dist/validators/ExcludeCheckedValidatorArray.d.js.map +7 -0
  483. package/dist/esm/dist/validators/FormValidator.d.js +1 -0
  484. package/dist/esm/dist/validators/FormValidator.d.js.map +7 -0
  485. package/dist/esm/dist/validators/IncludeCheckedValidatorArray.d.js +1 -0
  486. package/dist/esm/dist/validators/IncludeCheckedValidatorArray.d.js.map +7 -0
  487. package/dist/esm/dist/validators/MultipleValidator.d.js +1 -0
  488. package/dist/esm/dist/validators/MultipleValidator.d.js.map +7 -0
  489. package/dist/esm/dist/validators/NonPassValidator.d.js +1 -0
  490. package/dist/esm/dist/validators/NonPassValidator.d.js.map +7 -0
  491. package/dist/esm/dist/validators/NotEmptyValidator.d.js +1 -0
  492. package/dist/esm/dist/validators/NotEmptyValidator.d.js.map +7 -0
  493. package/dist/esm/dist/validators/NotRegExpTestValidator.d.js +1 -0
  494. package/dist/esm/dist/validators/NotRegExpTestValidator.d.js.map +7 -0
  495. package/dist/esm/dist/validators/PassValidator.d.js +1 -0
  496. package/dist/esm/dist/validators/PassValidator.d.js.map +7 -0
  497. package/dist/esm/dist/validators/RegExpTestValidator.d.js +1 -0
  498. package/dist/esm/dist/validators/RegExpTestValidator.d.js.map +7 -0
  499. package/dist/esm/dist/validators/RequiredValidator.d.js +1 -0
  500. package/dist/esm/dist/validators/RequiredValidator.d.js.map +7 -0
  501. package/dist/esm/dist/validators/UnCheckedValidator.d.js +1 -0
  502. package/dist/esm/dist/validators/UnCheckedValidator.d.js.map +7 -0
  503. package/dist/esm/dist/validators/ValidMultipleValidator.d.js +1 -0
  504. package/dist/esm/dist/validators/ValidMultipleValidator.d.js.map +7 -0
  505. package/dist/esm/dist/validators/ValidValidator.d.js +1 -0
  506. package/dist/esm/dist/validators/ValidValidator.d.js.map +7 -0
  507. package/dist/esm/dist/validators/ValidValidatorArray.d.js +1 -0
  508. package/dist/esm/dist/validators/ValidValidatorArray.d.js.map +7 -0
  509. package/dist/esm/dist/validators/Validator.d.js +1 -0
  510. package/dist/esm/dist/validators/Validator.d.js.map +7 -0
  511. package/dist/esm/dist/validators/ValidatorArray.d.js +1 -0
  512. package/dist/esm/dist/validators/ValidatorArray.d.js.map +7 -0
  513. package/dist/esm/dist/validators/ValueEqualsValidator.d.js +1 -0
  514. package/dist/esm/dist/validators/ValueEqualsValidator.d.js.map +7 -0
  515. package/dist/esm/dist/validators/ValueNotEqualsValidator.d.js +1 -0
  516. package/dist/esm/dist/validators/ValueNotEqualsValidator.d.js.map +7 -0
  517. package/dist/esm/events/EventManager.js +36 -11
  518. package/dist/esm/events/EventManager.js.map +2 -2
  519. package/dist/esm/lifecycle/OnInitRender.js.map +1 -1
  520. package/dist/esm/operators/DrForOf.js +24 -11
  521. package/dist/esm/operators/DrForOf.js.map +2 -2
  522. package/dist/esm/operators/DrIf.js +1 -2
  523. package/dist/esm/operators/DrIf.js.map +2 -2
  524. package/dist/esm/operators/DrInnerText.js +2 -2
  525. package/dist/esm/operators/DrInnerText.js.map +2 -2
  526. package/dist/esm/rawsets/RawSet.js +244 -49
  527. package/dist/esm/rawsets/RawSet.js.map +3 -3
  528. package/dist/esm/routers/PathRouter.js +13 -7
  529. package/dist/esm/routers/PathRouter.js.map +2 -2
  530. package/dist/esm/routers/Router.js +51 -27
  531. package/dist/esm/routers/Router.js.map +2 -2
  532. package/dist/esm-bundle/dooboostore-dom-render.esm.js +1315 -1588
  533. package/dist/esm-bundle/dooboostore-dom-render.esm.js.map +4 -4
  534. package/dist/types/DomRenderProxy.d.ts +2 -2
  535. package/dist/types/DomRenderProxy.d.ts.map +1 -1
  536. package/dist/types/components/ComponentBase.d.ts +1 -1
  537. package/dist/types/components/ComponentBase.d.ts.map +1 -1
  538. package/dist/types/components/appender/Appender.d.ts +0 -2
  539. package/dist/types/components/appender/Appender.d.ts.map +1 -1
  540. package/dist/types/components/checkbox/CheckBox.d.ts.map +1 -1
  541. package/dist/types/components/choose/Choose.d.ts.map +1 -1
  542. package/dist/types/components/details/Details.d.ts +1 -1
  543. package/dist/types/components/details/Details.d.ts.map +1 -1
  544. package/dist/types/components/forOf/ForOf.d.ts +1 -1
  545. package/dist/types/components/forOf/ForOf.d.ts.map +1 -1
  546. package/dist/types/components/if/If.d.ts +1 -1
  547. package/dist/types/components/if/If.d.ts.map +1 -1
  548. package/dist/types/components/index.d.ts +1 -0
  549. package/dist/types/components/index.d.ts.map +1 -1
  550. package/dist/types/components/input/Input.d.ts +1 -1
  551. package/dist/types/components/input/Input.d.ts.map +1 -1
  552. package/dist/types/components/promise/PromiseSwitch.d.ts +2 -2
  553. package/dist/types/components/promise/PromiseSwitch.d.ts.map +1 -1
  554. package/dist/types/components/radio/Radio.d.ts.map +1 -1
  555. package/dist/types/components/router/Route.d.ts +1 -1
  556. package/dist/types/components/router/Route.d.ts.map +1 -1
  557. package/dist/types/components/router/RouterOutlet.d.ts +2 -2
  558. package/dist/types/components/router/RouterOutlet.d.ts.map +1 -1
  559. package/dist/types/components/select/Select.d.ts +4 -4
  560. package/dist/types/components/select/Select.d.ts.map +1 -1
  561. package/dist/types/components/this/This.d.ts +1 -1
  562. package/dist/types/components/this/This.d.ts.map +1 -1
  563. package/dist/types/components/timer/Timer.d.ts +1 -1
  564. package/dist/types/components/timer/Timer.d.ts.map +1 -1
  565. package/dist/types/decorators/DomRenderNoProxy.d.ts.map +1 -1
  566. package/dist/types/events/EventManager.d.ts +9 -0
  567. package/dist/types/events/EventManager.d.ts.map +1 -1
  568. package/dist/types/index.d.ts +0 -101
  569. package/dist/types/lifecycle/OnInitRender.d.ts +1 -1
  570. package/dist/types/lifecycle/OnInitRender.d.ts.map +1 -1
  571. package/dist/types/operators/DrForOf.d.ts.map +1 -1
  572. package/dist/types/operators/DrInnerText.d.ts.map +1 -1
  573. package/dist/types/rawsets/RawSet.d.ts +6 -5
  574. package/dist/types/rawsets/RawSet.d.ts.map +1 -1
  575. package/dist/types/routers/PathRouter.d.ts.map +1 -1
  576. package/dist/types/routers/Router.d.ts +9 -11
  577. package/dist/types/routers/Router.d.ts.map +1 -1
  578. package/dist/umd-bundle/dooboostore-dom-render.umd.js +1315 -1588
  579. package/dist/umd-bundle/dooboostore-dom-render.umd.js.map +4 -4
  580. package/package.json +7 -7
  581. package/src/DomRenderProxy.ts +272 -137
  582. package/src/components/ComponentBase.ts +4 -4
  583. package/src/components/appender/Appender.ts +0 -5
  584. package/src/components/checkbox/CheckBox.ts +22 -25
  585. package/src/components/choose/Choose.ts +16 -19
  586. package/src/components/details/Details.ts +40 -43
  587. package/src/components/forOf/ForOf.ts +8 -11
  588. package/src/components/if/If.ts +9 -11
  589. package/src/components/index.ts +3 -0
  590. package/src/components/input/Input.ts +16 -22
  591. package/src/components/promise/PromiseSwitch.ts +67 -66
  592. package/src/components/radio/Radio.ts +23 -28
  593. package/src/components/router/Route.ts +10 -13
  594. package/src/components/router/RouterOutlet.ts +6 -5
  595. package/src/components/select/Select.ts +8 -8
  596. package/src/components/this/This.ts +13 -12
  597. package/src/components/timer/Timer.ts +12 -16
  598. package/src/decorators/DomRenderNoProxy.ts +17 -14
  599. package/src/dist/DomRender.d.ts +39 -0
  600. package/src/dist/DomRender.d.ts.map +1 -0
  601. package/src/dist/DomRender.js +146 -0
  602. package/src/dist/DomRender.js.map +1 -0
  603. package/src/dist/DomRenderProxy.d.ts +42 -0
  604. package/src/dist/DomRenderProxy.d.ts.map +1 -0
  605. package/src/dist/DomRenderProxy.js +657 -0
  606. package/src/dist/DomRenderProxy.js.map +1 -0
  607. package/src/dist/README.MD +1467 -0
  608. package/src/dist/components/ComponentBase.d.ts +60 -0
  609. package/src/dist/components/ComponentBase.d.ts.map +1 -0
  610. package/src/dist/components/ComponentBase.js +295 -0
  611. package/src/dist/components/ComponentBase.js.map +1 -0
  612. package/src/dist/components/ComponentSet.d.ts +22 -0
  613. package/src/dist/components/ComponentSet.d.ts.map +1 -0
  614. package/src/dist/components/ComponentSet.js +23 -0
  615. package/src/dist/components/ComponentSet.js.map +1 -0
  616. package/src/dist/components/appender/Appender.d.ts +23 -0
  617. package/src/dist/components/appender/Appender.d.ts.map +1 -0
  618. package/src/dist/components/appender/Appender.js +59 -0
  619. package/src/dist/components/appender/Appender.js.map +1 -0
  620. package/src/dist/components/checkbox/CheckBox.d.ts +47 -0
  621. package/src/dist/components/checkbox/CheckBox.d.ts.map +1 -0
  622. package/src/dist/components/checkbox/CheckBox.js +118 -0
  623. package/src/dist/components/checkbox/CheckBox.js.map +1 -0
  624. package/src/dist/components/choose/Choose.d.ts +39 -0
  625. package/src/dist/components/choose/Choose.d.ts.map +1 -0
  626. package/src/dist/components/choose/Choose.js +94 -0
  627. package/src/dist/components/choose/Choose.js.map +1 -0
  628. package/src/dist/components/details/Details.d.ts +57 -0
  629. package/src/dist/components/details/Details.d.ts.map +1 -0
  630. package/src/dist/components/details/Details.js +199 -0
  631. package/src/dist/components/details/Details.js.map +1 -0
  632. package/src/dist/components/dialog/Dialog.d.ts +1 -0
  633. package/src/dist/components/dialog/Dialog.d.ts.map +1 -0
  634. package/src/dist/components/dialog/Dialog.js +85 -0
  635. package/src/dist/components/dialog/Dialog.js.map +1 -0
  636. package/src/dist/components/dialog/example/ImageEditorDialog.d.ts +1 -0
  637. package/src/dist/components/dialog/example/ImageEditorDialog.d.ts.map +1 -0
  638. package/src/dist/components/dialog/example/ImageEditorDialog.js +116 -0
  639. package/src/dist/components/dialog/example/ImageEditorDialog.js.map +1 -0
  640. package/src/dist/components/forOf/ForOf.d.ts +18 -0
  641. package/src/dist/components/forOf/ForOf.d.ts.map +1 -0
  642. package/src/dist/components/forOf/ForOf.js +32 -0
  643. package/src/dist/components/forOf/ForOf.js.map +1 -0
  644. package/src/dist/components/if/If.d.ts +21 -0
  645. package/src/dist/components/if/If.d.ts.map +1 -0
  646. package/src/dist/components/if/If.js +40 -0
  647. package/src/dist/components/if/If.js.map +1 -0
  648. package/src/dist/components/index.d.ts +29 -0
  649. package/src/dist/components/index.d.ts.map +1 -0
  650. package/src/dist/components/index.js +14 -0
  651. package/src/dist/components/index.js.map +1 -0
  652. package/src/dist/components/input/Input.d.ts +34 -0
  653. package/src/dist/components/input/Input.d.ts.map +1 -0
  654. package/src/dist/components/input/Input.js +89 -0
  655. package/src/dist/components/input/Input.js.map +1 -0
  656. package/src/dist/components/promise/PromiseSwitch.d.ts +55 -0
  657. package/src/dist/components/promise/PromiseSwitch.d.ts.map +1 -0
  658. package/src/dist/components/promise/PromiseSwitch.js +196 -0
  659. package/src/dist/components/promise/PromiseSwitch.js.map +1 -0
  660. package/src/dist/components/radio/Radio.d.ts +45 -0
  661. package/src/dist/components/radio/Radio.d.ts.map +1 -0
  662. package/src/dist/components/radio/Radio.js +123 -0
  663. package/src/dist/components/radio/Radio.js.map +1 -0
  664. package/src/dist/components/router/Route.d.ts +32 -0
  665. package/src/dist/components/router/Route.d.ts.map +1 -0
  666. package/src/dist/components/router/Route.js +116 -0
  667. package/src/dist/components/router/Route.js.map +1 -0
  668. package/src/dist/components/select/Select.d.ts +23 -0
  669. package/src/dist/components/select/Select.d.ts.map +1 -0
  670. package/src/dist/components/select/Select.js +52 -0
  671. package/src/dist/components/select/Select.js.map +1 -0
  672. package/src/dist/components/this/This.d.ts +31 -0
  673. package/src/dist/components/this/This.d.ts.map +1 -0
  674. package/src/dist/components/this/This.js +84 -0
  675. package/src/dist/components/this/This.js.map +1 -0
  676. package/src/dist/components/timer/Timer.d.ts +26 -0
  677. package/src/dist/components/timer/Timer.d.ts.map +1 -0
  678. package/src/dist/components/timer/Timer.js +102 -0
  679. package/src/dist/components/timer/Timer.js.map +1 -0
  680. package/src/dist/configs/Config.d.ts +39 -0
  681. package/src/dist/configs/Config.d.ts.map +1 -0
  682. package/src/dist/configs/Config.js +2 -0
  683. package/src/dist/configs/Config.js.map +1 -0
  684. package/src/dist/configs/TargetAttr.d.ts +7 -0
  685. package/src/dist/configs/TargetAttr.d.ts.map +1 -0
  686. package/src/dist/configs/TargetAttr.js +2 -0
  687. package/src/dist/configs/TargetAttr.js.map +1 -0
  688. package/src/dist/configs/TargetElement.d.ts +16 -0
  689. package/src/dist/configs/TargetElement.d.ts.map +1 -0
  690. package/src/dist/configs/TargetElement.js +2 -0
  691. package/src/dist/configs/TargetElement.js.map +1 -0
  692. package/src/dist/decorators/DomRenderNoProxy.d.ts +6 -0
  693. package/src/dist/decorators/DomRenderNoProxy.d.ts.map +1 -0
  694. package/src/dist/decorators/DomRenderNoProxy.js +30 -0
  695. package/src/dist/decorators/DomRenderNoProxy.js.map +1 -0
  696. package/src/dist/events/EventManager.d.ts +80 -0
  697. package/src/dist/events/EventManager.d.ts.map +1 -0
  698. package/src/dist/events/EventManager.js +657 -0
  699. package/src/dist/events/EventManager.js.map +1 -0
  700. package/src/dist/index.d.ts +49 -0
  701. package/src/dist/index.d.ts.map +1 -0
  702. package/src/dist/index.js +42 -0
  703. package/src/dist/index.js.map +1 -0
  704. package/src/dist/iterators/Range.d.ts +24 -0
  705. package/src/dist/iterators/Range.d.ts.map +1 -0
  706. package/src/dist/iterators/Range.js +70 -0
  707. package/src/dist/iterators/Range.js.map +1 -0
  708. package/src/dist/lifecycle/OnBeforeReturnGet.d.ts +4 -0
  709. package/src/dist/lifecycle/OnBeforeReturnGet.d.ts.map +1 -0
  710. package/src/dist/lifecycle/OnBeforeReturnGet.js +2 -0
  711. package/src/dist/lifecycle/OnBeforeReturnGet.js.map +1 -0
  712. package/src/dist/lifecycle/OnBeforeReturnSet.d.ts +5 -0
  713. package/src/dist/lifecycle/OnBeforeReturnSet.d.ts.map +1 -0
  714. package/src/dist/lifecycle/OnBeforeReturnSet.js +4 -0
  715. package/src/dist/lifecycle/OnBeforeReturnSet.js.map +1 -0
  716. package/src/dist/lifecycle/OnChangeAttrRender.d.ts +9 -0
  717. package/src/dist/lifecycle/OnChangeAttrRender.d.ts.map +1 -0
  718. package/src/dist/lifecycle/OnChangeAttrRender.js +4 -0
  719. package/src/dist/lifecycle/OnChangeAttrRender.js.map +1 -0
  720. package/src/dist/lifecycle/OnChildRenderedByProperty.d.ts +5 -0
  721. package/src/dist/lifecycle/OnChildRenderedByProperty.d.ts.map +1 -0
  722. package/src/dist/lifecycle/OnChildRenderedByProperty.js +4 -0
  723. package/src/dist/lifecycle/OnChildRenderedByProperty.js.map +1 -0
  724. package/src/dist/lifecycle/OnCreateRender.d.ts +5 -0
  725. package/src/dist/lifecycle/OnCreateRender.d.ts.map +1 -0
  726. package/src/dist/lifecycle/OnCreateRender.js +4 -0
  727. package/src/dist/lifecycle/OnCreateRender.js.map +1 -0
  728. package/src/dist/lifecycle/OnCreateRenderData.d.ts +10 -0
  729. package/src/dist/lifecycle/OnCreateRenderData.d.ts.map +1 -0
  730. package/src/dist/lifecycle/OnCreateRenderData.js +4 -0
  731. package/src/dist/lifecycle/OnCreateRenderData.js.map +1 -0
  732. package/src/dist/lifecycle/OnCreateRendered.d.ts +8 -0
  733. package/src/dist/lifecycle/OnCreateRendered.d.ts.map +1 -0
  734. package/src/dist/lifecycle/OnCreateRendered.js +4 -0
  735. package/src/dist/lifecycle/OnCreateRendered.js.map +1 -0
  736. package/src/dist/lifecycle/OnCreatedThisChild.d.ts +6 -0
  737. package/src/dist/lifecycle/OnCreatedThisChild.d.ts.map +1 -0
  738. package/src/dist/lifecycle/OnCreatedThisChild.js +4 -0
  739. package/src/dist/lifecycle/OnCreatedThisChild.js.map +1 -0
  740. package/src/dist/lifecycle/OnDestroyRender.d.ts +9 -0
  741. package/src/dist/lifecycle/OnDestroyRender.d.ts.map +1 -0
  742. package/src/dist/lifecycle/OnDestroyRender.js +4 -0
  743. package/src/dist/lifecycle/OnDestroyRender.js.map +1 -0
  744. package/src/dist/lifecycle/OnInitRender.d.ts +6 -0
  745. package/src/dist/lifecycle/OnInitRender.d.ts.map +1 -0
  746. package/src/dist/lifecycle/OnInitRender.js +4 -0
  747. package/src/dist/lifecycle/OnInitRender.js.map +1 -0
  748. package/src/dist/lifecycle/OnProxyDomRender.d.ts +6 -0
  749. package/src/dist/lifecycle/OnProxyDomRender.d.ts.map +1 -0
  750. package/src/dist/lifecycle/OnProxyDomRender.js +2 -0
  751. package/src/dist/lifecycle/OnProxyDomRender.js.map +1 -0
  752. package/src/dist/lifecycle/dr-this/OnDrThisBind.d.ts +5 -0
  753. package/src/dist/lifecycle/dr-this/OnDrThisBind.d.ts.map +1 -0
  754. package/src/dist/lifecycle/dr-this/OnDrThisBind.js +4 -0
  755. package/src/dist/lifecycle/dr-this/OnDrThisBind.js.map +1 -0
  756. package/src/dist/lifecycle/dr-this/OnDrThisUnBind.d.ts +5 -0
  757. package/src/dist/lifecycle/dr-this/OnDrThisUnBind.d.ts.map +1 -0
  758. package/src/dist/lifecycle/dr-this/OnDrThisUnBind.js +4 -0
  759. package/src/dist/lifecycle/dr-this/OnDrThisUnBind.js.map +1 -0
  760. package/src/dist/managers/RenderManager.d.ts +2 -0
  761. package/src/dist/managers/RenderManager.d.ts.map +1 -0
  762. package/src/dist/managers/RenderManager.js +12 -0
  763. package/src/dist/managers/RenderManager.js.map +1 -0
  764. package/src/dist/messenger/DefaultMessenger.d.ts +4 -0
  765. package/src/dist/messenger/DefaultMessenger.d.ts.map +1 -0
  766. package/src/dist/messenger/DefaultMessenger.js +4 -0
  767. package/src/dist/messenger/DefaultMessenger.js.map +1 -0
  768. package/src/dist/messenger/Messenger.d.ts +79 -0
  769. package/src/dist/messenger/Messenger.d.ts.map +1 -0
  770. package/src/dist/messenger/Messenger.js +185 -0
  771. package/src/dist/messenger/Messenger.js.map +1 -0
  772. package/src/dist/node_modules/.bin/eslint +21 -0
  773. package/src/dist/node_modules/.bin/sbf +21 -0
  774. package/src/dist/node_modules/.bin/ts-node +21 -0
  775. package/src/dist/node_modules/.bin/ts-node-cwd +21 -0
  776. package/src/dist/node_modules/.bin/ts-node-dev +21 -0
  777. package/src/dist/node_modules/.bin/ts-node-esm +21 -0
  778. package/src/dist/node_modules/.bin/ts-node-script +21 -0
  779. package/src/dist/node_modules/.bin/ts-node-transpile-only +21 -0
  780. package/src/dist/node_modules/.bin/ts-script +21 -0
  781. package/src/dist/node_modules/.bin/tsc +21 -0
  782. package/src/dist/node_modules/.bin/tsnd +21 -0
  783. package/src/dist/node_modules/.bin/tsserver +21 -0
  784. package/src/dist/node_modules/.bin/webpack +21 -0
  785. package/src/dist/node_modules/.bin/webpack-cli +21 -0
  786. package/src/dist/node_modules/.bin/webpack-dev-server +21 -0
  787. package/src/dist/operators/Appender.d.ts +15 -0
  788. package/src/dist/operators/Appender.d.ts.map +1 -0
  789. package/src/dist/operators/Appender.js +90 -0
  790. package/src/dist/operators/Appender.js.map +1 -0
  791. package/src/dist/operators/Dr.d.ts +9 -0
  792. package/src/dist/operators/Dr.d.ts.map +1 -0
  793. package/src/dist/operators/Dr.js +53 -0
  794. package/src/dist/operators/Dr.js.map +1 -0
  795. package/src/dist/operators/DrAppender.d.ts +9 -0
  796. package/src/dist/operators/DrAppender.d.ts.map +1 -0
  797. package/src/dist/operators/DrAppender.js +69 -0
  798. package/src/dist/operators/DrAppender.js.map +1 -0
  799. package/src/dist/operators/DrFor.d.ts +9 -0
  800. package/src/dist/operators/DrFor.d.ts.map +1 -0
  801. package/src/dist/operators/DrFor.js +58 -0
  802. package/src/dist/operators/DrFor.js.map +1 -0
  803. package/src/dist/operators/DrForOf.d.ts +9 -0
  804. package/src/dist/operators/DrForOf.d.ts.map +1 -0
  805. package/src/dist/operators/DrForOf.js +121 -0
  806. package/src/dist/operators/DrForOf.js.map +1 -0
  807. package/src/dist/operators/DrForm.d.ts +9 -0
  808. package/src/dist/operators/DrForm.d.ts.map +1 -0
  809. package/src/dist/operators/DrForm.js +79 -0
  810. package/src/dist/operators/DrForm.js.map +1 -0
  811. package/src/dist/operators/DrIf.d.ts +9 -0
  812. package/src/dist/operators/DrIf.d.ts.map +1 -0
  813. package/src/dist/operators/DrIf.js +71 -0
  814. package/src/dist/operators/DrIf.js.map +1 -0
  815. package/src/dist/operators/DrInnerHTML.d.ts +9 -0
  816. package/src/dist/operators/DrInnerHTML.d.ts.map +1 -0
  817. package/src/dist/operators/DrInnerHTML.js +48 -0
  818. package/src/dist/operators/DrInnerHTML.js.map +1 -0
  819. package/src/dist/operators/DrInnerText.d.ts +9 -0
  820. package/src/dist/operators/DrInnerText.d.ts.map +1 -0
  821. package/src/dist/operators/DrInnerText.js +46 -0
  822. package/src/dist/operators/DrInnerText.js.map +1 -0
  823. package/src/dist/operators/DrPre.d.ts +8 -0
  824. package/src/dist/operators/DrPre.d.ts.map +1 -0
  825. package/src/dist/operators/DrPre.js +22 -0
  826. package/src/dist/operators/DrPre.js.map +1 -0
  827. package/src/dist/operators/DrRepeat.d.ts +9 -0
  828. package/src/dist/operators/DrRepeat.d.ts.map +1 -0
  829. package/src/dist/operators/DrRepeat.js +70 -0
  830. package/src/dist/operators/DrRepeat.js.map +1 -0
  831. package/src/dist/operators/DrStripElement.d.ts +9 -0
  832. package/src/dist/operators/DrStripElement.d.ts.map +1 -0
  833. package/src/dist/operators/DrStripElement.js +50 -0
  834. package/src/dist/operators/DrStripElement.js.map +1 -0
  835. package/src/dist/operators/DrTargetAttr.d.ts +8 -0
  836. package/src/dist/operators/DrTargetAttr.d.ts.map +1 -0
  837. package/src/dist/operators/DrTargetAttr.js +45 -0
  838. package/src/dist/operators/DrTargetAttr.js.map +1 -0
  839. package/src/dist/operators/DrTargetElement.d.ts +13 -0
  840. package/src/dist/operators/DrTargetElement.d.ts.map +1 -0
  841. package/src/dist/operators/DrTargetElement.js +92 -0
  842. package/src/dist/operators/DrTargetElement.js.map +1 -0
  843. package/src/dist/operators/DrTargetElementIsElement.d.ts +8 -0
  844. package/src/dist/operators/DrTargetElementIsElement.d.ts.map +1 -0
  845. package/src/dist/operators/DrTargetElementIsElement.js +80 -0
  846. package/src/dist/operators/DrTargetElementIsElement.js.map +1 -0
  847. package/src/dist/operators/DrThis.d.ts +7 -0
  848. package/src/dist/operators/DrThis.d.ts.map +1 -0
  849. package/src/dist/operators/DrThis.js +101 -0
  850. package/src/dist/operators/DrThis.js.map +1 -0
  851. package/src/dist/operators/DrThisProperty.d.ts +11 -0
  852. package/src/dist/operators/DrThisProperty.d.ts.map +1 -0
  853. package/src/dist/operators/DrThisProperty.js +93 -0
  854. package/src/dist/operators/DrThisProperty.js.map +1 -0
  855. package/src/dist/operators/OperatorExecuter.d.ts +50 -0
  856. package/src/dist/operators/OperatorExecuter.d.ts.map +1 -0
  857. package/src/dist/operators/OperatorExecuter.js +52 -0
  858. package/src/dist/operators/OperatorExecuter.js.map +1 -0
  859. package/src/dist/operators/OperatorExecuterAttrRequire.d.ts +9 -0
  860. package/src/dist/operators/OperatorExecuterAttrRequire.d.ts.map +1 -0
  861. package/src/dist/operators/OperatorExecuterAttrRequire.js +25 -0
  862. package/src/dist/operators/OperatorExecuterAttrRequire.js.map +1 -0
  863. package/src/dist/package.json +88 -0
  864. package/src/dist/rawsets/AttrInitCallBack.d.ts +6 -0
  865. package/src/dist/rawsets/AttrInitCallBack.d.ts.map +1 -0
  866. package/src/dist/rawsets/AttrInitCallBack.js +2 -0
  867. package/src/dist/rawsets/AttrInitCallBack.js.map +1 -0
  868. package/src/dist/rawsets/Attrs.d.ts +29 -0
  869. package/src/dist/rawsets/Attrs.d.ts.map +1 -0
  870. package/src/dist/rawsets/Attrs.js +2 -0
  871. package/src/dist/rawsets/Attrs.js.map +1 -0
  872. package/src/dist/rawsets/CreatorMetaData.d.ts +20 -0
  873. package/src/dist/rawsets/CreatorMetaData.d.ts.map +1 -0
  874. package/src/dist/rawsets/CreatorMetaData.js +2 -0
  875. package/src/dist/rawsets/CreatorMetaData.js.map +1 -0
  876. package/src/dist/rawsets/DestroyOptionType.d.ts +5 -0
  877. package/src/dist/rawsets/DestroyOptionType.d.ts.map +1 -0
  878. package/src/dist/rawsets/DestroyOptionType.js +6 -0
  879. package/src/dist/rawsets/DestroyOptionType.js.map +1 -0
  880. package/src/dist/rawsets/ElementInitCallBack.d.ts +9 -0
  881. package/src/dist/rawsets/ElementInitCallBack.d.ts.map +1 -0
  882. package/src/dist/rawsets/ElementInitCallBack.js +2 -0
  883. package/src/dist/rawsets/ElementInitCallBack.js.map +1 -0
  884. package/src/dist/rawsets/RawSet.d.ts +180 -0
  885. package/src/dist/rawsets/RawSet.d.ts.map +1 -0
  886. package/src/dist/rawsets/RawSet.js +1469 -0
  887. package/src/dist/rawsets/RawSet.js.map +1 -0
  888. package/src/dist/rawsets/RawSetOperatorType.d.ts +4 -0
  889. package/src/dist/rawsets/RawSetOperatorType.d.ts.map +1 -0
  890. package/src/dist/rawsets/RawSetOperatorType.js +5 -0
  891. package/src/dist/rawsets/RawSetOperatorType.js.map +1 -0
  892. package/src/dist/rawsets/RawSetType.d.ts +8 -0
  893. package/src/dist/rawsets/RawSetType.d.ts.map +1 -0
  894. package/src/dist/rawsets/RawSetType.js +9 -0
  895. package/src/dist/rawsets/RawSetType.js.map +1 -0
  896. package/src/dist/rawsets/Render.d.ts +27 -0
  897. package/src/dist/rawsets/Render.d.ts.map +1 -0
  898. package/src/dist/rawsets/Render.js +2 -0
  899. package/src/dist/rawsets/Render.js.map +1 -0
  900. package/src/dist/routers/HashRouter.d.ts +25 -0
  901. package/src/dist/routers/HashRouter.d.ts.map +1 -0
  902. package/src/dist/routers/HashRouter.js +89 -0
  903. package/src/dist/routers/HashRouter.js.map +1 -0
  904. package/src/dist/routers/PathRouter.d.ts +24 -0
  905. package/src/dist/routers/PathRouter.d.ts.map +1 -0
  906. package/src/dist/routers/PathRouter.js +75 -0
  907. package/src/dist/routers/PathRouter.js.map +1 -0
  908. package/src/dist/routers/Router.d.ts +82 -0
  909. package/src/dist/routers/Router.d.ts.map +1 -0
  910. package/src/dist/routers/Router.js +152 -0
  911. package/src/dist/routers/Router.js.map +1 -0
  912. package/src/dist/tsconfig.build.tsbuildinfo +1 -0
  913. package/src/dist/types/Types.d.ts +12 -0
  914. package/src/dist/types/Types.d.ts.map +1 -0
  915. package/src/dist/types/Types.js +26 -0
  916. package/src/dist/types/Types.js.map +1 -0
  917. package/src/dist/validators/AllCheckedValidatorArray.d.ts +7 -0
  918. package/src/dist/validators/AllCheckedValidatorArray.d.ts.map +1 -0
  919. package/src/dist/validators/AllCheckedValidatorArray.js +11 -0
  920. package/src/dist/validators/AllCheckedValidatorArray.js.map +1 -0
  921. package/src/dist/validators/AllUnCheckedValidatorArray.d.ts +7 -0
  922. package/src/dist/validators/AllUnCheckedValidatorArray.d.ts.map +1 -0
  923. package/src/dist/validators/AllUnCheckedValidatorArray.js +11 -0
  924. package/src/dist/validators/AllUnCheckedValidatorArray.js.map +1 -0
  925. package/src/dist/validators/CheckedValidator.d.ts +6 -0
  926. package/src/dist/validators/CheckedValidator.d.ts.map +1 -0
  927. package/src/dist/validators/CheckedValidator.js +11 -0
  928. package/src/dist/validators/CheckedValidator.js.map +1 -0
  929. package/src/dist/validators/CountEqualsCheckedValidatorArray.d.ts +8 -0
  930. package/src/dist/validators/CountEqualsCheckedValidatorArray.d.ts.map +1 -0
  931. package/src/dist/validators/CountEqualsCheckedValidatorArray.js +12 -0
  932. package/src/dist/validators/CountEqualsCheckedValidatorArray.js.map +1 -0
  933. package/src/dist/validators/CountEqualsUnCheckedValidatorArray.d.ts +8 -0
  934. package/src/dist/validators/CountEqualsUnCheckedValidatorArray.d.ts.map +1 -0
  935. package/src/dist/validators/CountEqualsUnCheckedValidatorArray.js +12 -0
  936. package/src/dist/validators/CountEqualsUnCheckedValidatorArray.js.map +1 -0
  937. package/src/dist/validators/CountGreaterThanCheckedValidatorArray.d.ts +8 -0
  938. package/src/dist/validators/CountGreaterThanCheckedValidatorArray.d.ts.map +1 -0
  939. package/src/dist/validators/CountGreaterThanCheckedValidatorArray.js +12 -0
  940. package/src/dist/validators/CountGreaterThanCheckedValidatorArray.js.map +1 -0
  941. package/src/dist/validators/CountGreaterThanEqualsCheckedValidatorArray.d.ts +8 -0
  942. package/src/dist/validators/CountGreaterThanEqualsCheckedValidatorArray.d.ts.map +1 -0
  943. package/src/dist/validators/CountGreaterThanEqualsCheckedValidatorArray.js +12 -0
  944. package/src/dist/validators/CountGreaterThanEqualsCheckedValidatorArray.js.map +1 -0
  945. package/src/dist/validators/CountGreaterThanEqualsUnCheckedValidatorArray.d.ts +8 -0
  946. package/src/dist/validators/CountGreaterThanEqualsUnCheckedValidatorArray.d.ts.map +1 -0
  947. package/src/dist/validators/CountGreaterThanEqualsUnCheckedValidatorArray.js +12 -0
  948. package/src/dist/validators/CountGreaterThanEqualsUnCheckedValidatorArray.js.map +1 -0
  949. package/src/dist/validators/CountGreaterThanUnCheckedValidatorArray.d.ts +8 -0
  950. package/src/dist/validators/CountGreaterThanUnCheckedValidatorArray.d.ts.map +1 -0
  951. package/src/dist/validators/CountGreaterThanUnCheckedValidatorArray.js +12 -0
  952. package/src/dist/validators/CountGreaterThanUnCheckedValidatorArray.js.map +1 -0
  953. package/src/dist/validators/CountLessThanCheckedValidatorArray.d.ts +8 -0
  954. package/src/dist/validators/CountLessThanCheckedValidatorArray.d.ts.map +1 -0
  955. package/src/dist/validators/CountLessThanCheckedValidatorArray.js +12 -0
  956. package/src/dist/validators/CountLessThanCheckedValidatorArray.js.map +1 -0
  957. package/src/dist/validators/CountLessThanEqualsCheckedValidatorArray.d.ts +8 -0
  958. package/src/dist/validators/CountLessThanEqualsCheckedValidatorArray.d.ts.map +1 -0
  959. package/src/dist/validators/CountLessThanEqualsCheckedValidatorArray.js +12 -0
  960. package/src/dist/validators/CountLessThanEqualsCheckedValidatorArray.js.map +1 -0
  961. package/src/dist/validators/CountLessThanEqualsUnCheckedValidatorArray.d.ts +8 -0
  962. package/src/dist/validators/CountLessThanEqualsUnCheckedValidatorArray.d.ts.map +1 -0
  963. package/src/dist/validators/CountLessThanEqualsUnCheckedValidatorArray.js +12 -0
  964. package/src/dist/validators/CountLessThanEqualsUnCheckedValidatorArray.js.map +1 -0
  965. package/src/dist/validators/CountLessThanUnCheckedValidatorArray.d.ts +8 -0
  966. package/src/dist/validators/CountLessThanUnCheckedValidatorArray.d.ts.map +1 -0
  967. package/src/dist/validators/CountLessThanUnCheckedValidatorArray.js +12 -0
  968. package/src/dist/validators/CountLessThanUnCheckedValidatorArray.js.map +1 -0
  969. package/src/dist/validators/CountUnCheckedValidatorArray.d.ts +8 -0
  970. package/src/dist/validators/CountUnCheckedValidatorArray.d.ts.map +1 -0
  971. package/src/dist/validators/CountUnCheckedValidatorArray.js +12 -0
  972. package/src/dist/validators/CountUnCheckedValidatorArray.js.map +1 -0
  973. package/src/dist/validators/EmptyValidator.d.ts +6 -0
  974. package/src/dist/validators/EmptyValidator.d.ts.map +1 -0
  975. package/src/dist/validators/EmptyValidator.js +12 -0
  976. package/src/dist/validators/EmptyValidator.js.map +1 -0
  977. package/src/dist/validators/ExcludeCheckedValidatorArray.d.ts +9 -0
  978. package/src/dist/validators/ExcludeCheckedValidatorArray.d.ts.map +1 -0
  979. package/src/dist/validators/ExcludeCheckedValidatorArray.js +17 -0
  980. package/src/dist/validators/ExcludeCheckedValidatorArray.js.map +1 -0
  981. package/src/dist/validators/FormValidator.d.ts +8 -0
  982. package/src/dist/validators/FormValidator.d.ts.map +1 -0
  983. package/src/dist/validators/FormValidator.js +16 -0
  984. package/src/dist/validators/FormValidator.js.map +1 -0
  985. package/src/dist/validators/IncludeCheckedValidatorArray.d.ts +9 -0
  986. package/src/dist/validators/IncludeCheckedValidatorArray.d.ts.map +1 -0
  987. package/src/dist/validators/IncludeCheckedValidatorArray.js +17 -0
  988. package/src/dist/validators/IncludeCheckedValidatorArray.js.map +1 -0
  989. package/src/dist/validators/MultipleValidator.d.ts +9 -0
  990. package/src/dist/validators/MultipleValidator.d.ts.map +1 -0
  991. package/src/dist/validators/MultipleValidator.js +25 -0
  992. package/src/dist/validators/MultipleValidator.js.map +1 -0
  993. package/src/dist/validators/NonPassValidator.d.ts +6 -0
  994. package/src/dist/validators/NonPassValidator.d.ts.map +1 -0
  995. package/src/dist/validators/NonPassValidator.js +10 -0
  996. package/src/dist/validators/NonPassValidator.js.map +1 -0
  997. package/src/dist/validators/NotEmptyValidator.d.ts +6 -0
  998. package/src/dist/validators/NotEmptyValidator.d.ts.map +1 -0
  999. package/src/dist/validators/NotEmptyValidator.js +13 -0
  1000. package/src/dist/validators/NotEmptyValidator.js.map +1 -0
  1001. package/src/dist/validators/NotRegExpTestValidator.d.ts +7 -0
  1002. package/src/dist/validators/NotRegExpTestValidator.d.ts.map +1 -0
  1003. package/src/dist/validators/NotRegExpTestValidator.js +20 -0
  1004. package/src/dist/validators/NotRegExpTestValidator.js.map +1 -0
  1005. package/src/dist/validators/PassValidator.d.ts +6 -0
  1006. package/src/dist/validators/PassValidator.d.ts.map +1 -0
  1007. package/src/dist/validators/PassValidator.js +10 -0
  1008. package/src/dist/validators/PassValidator.js.map +1 -0
  1009. package/src/dist/validators/RegExpTestValidator.d.ts +7 -0
  1010. package/src/dist/validators/RegExpTestValidator.d.ts.map +1 -0
  1011. package/src/dist/validators/RegExpTestValidator.js +21 -0
  1012. package/src/dist/validators/RegExpTestValidator.js.map +1 -0
  1013. package/src/dist/validators/RequiredValidator.d.ts +6 -0
  1014. package/src/dist/validators/RequiredValidator.d.ts.map +1 -0
  1015. package/src/dist/validators/RequiredValidator.js +12 -0
  1016. package/src/dist/validators/RequiredValidator.js.map +1 -0
  1017. package/src/dist/validators/UnCheckedValidator.d.ts +6 -0
  1018. package/src/dist/validators/UnCheckedValidator.d.ts.map +1 -0
  1019. package/src/dist/validators/UnCheckedValidator.js +11 -0
  1020. package/src/dist/validators/UnCheckedValidator.js.map +1 -0
  1021. package/src/dist/validators/ValidMultipleValidator.d.ts +10 -0
  1022. package/src/dist/validators/ValidMultipleValidator.d.ts.map +1 -0
  1023. package/src/dist/validators/ValidMultipleValidator.js +12 -0
  1024. package/src/dist/validators/ValidMultipleValidator.js.map +1 -0
  1025. package/src/dist/validators/ValidValidator.d.ts +7 -0
  1026. package/src/dist/validators/ValidValidator.d.ts.map +1 -0
  1027. package/src/dist/validators/ValidValidator.js +11 -0
  1028. package/src/dist/validators/ValidValidator.js.map +1 -0
  1029. package/src/dist/validators/ValidValidatorArray.d.ts +8 -0
  1030. package/src/dist/validators/ValidValidatorArray.d.ts.map +1 -0
  1031. package/src/dist/validators/ValidValidatorArray.js +11 -0
  1032. package/src/dist/validators/ValidValidatorArray.js.map +1 -0
  1033. package/src/dist/validators/Validator.d.ts +58 -0
  1034. package/src/dist/validators/Validator.d.ts.map +1 -0
  1035. package/src/dist/validators/Validator.js +203 -0
  1036. package/src/dist/validators/Validator.js.map +1 -0
  1037. package/src/dist/validators/ValidatorArray.d.ts +18 -0
  1038. package/src/dist/validators/ValidatorArray.d.ts.map +1 -0
  1039. package/src/dist/validators/ValidatorArray.js +77 -0
  1040. package/src/dist/validators/ValidatorArray.js.map +1 -0
  1041. package/src/dist/validators/ValueEqualsValidator.d.ts +7 -0
  1042. package/src/dist/validators/ValueEqualsValidator.d.ts.map +1 -0
  1043. package/src/dist/validators/ValueEqualsValidator.js +11 -0
  1044. package/src/dist/validators/ValueEqualsValidator.js.map +1 -0
  1045. package/src/dist/validators/ValueNotEqualsValidator.d.ts +7 -0
  1046. package/src/dist/validators/ValueNotEqualsValidator.d.ts.map +1 -0
  1047. package/src/dist/validators/ValueNotEqualsValidator.js +11 -0
  1048. package/src/dist/validators/ValueNotEqualsValidator.js.map +1 -0
  1049. package/src/events/EventManager.ts +51 -14
  1050. package/src/lifecycle/OnInitRender.ts +1 -1
  1051. package/src/node_modules/.bin/eslint +21 -0
  1052. package/src/node_modules/.bin/sbf +21 -0
  1053. package/src/node_modules/.bin/ts-node +21 -0
  1054. package/src/node_modules/.bin/ts-node-cwd +21 -0
  1055. package/src/node_modules/.bin/ts-node-dev +21 -0
  1056. package/src/node_modules/.bin/ts-node-esm +21 -0
  1057. package/src/node_modules/.bin/ts-node-script +21 -0
  1058. package/src/node_modules/.bin/ts-node-transpile-only +21 -0
  1059. package/src/node_modules/.bin/ts-script +21 -0
  1060. package/src/node_modules/.bin/tsc +21 -0
  1061. package/src/node_modules/.bin/tsnd +21 -0
  1062. package/src/node_modules/.bin/tsserver +21 -0
  1063. package/src/node_modules/.bin/webpack +21 -0
  1064. package/src/node_modules/.bin/webpack-cli +21 -0
  1065. package/src/node_modules/.bin/webpack-dev-server +21 -0
  1066. package/src/operators/DrForOf.ts +25 -10
  1067. package/src/operators/DrIf.ts +1 -1
  1068. package/src/operators/DrInnerText.ts +2 -1
  1069. package/src/rawsets/RawSet.ts +385 -341
  1070. package/src/routers/PathRouter.ts +14 -7
  1071. package/src/routers/Router.ts +77 -48
  1072. package/types.d.ts +1 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/events/EventManager.ts"],
4
- "sourcesContent": ["import { DomRenderConfig } from '../configs/DomRenderConfig';\nimport { ScriptUtils } from '@dooboostore/core-web/script/ScriptUtils';\nimport { ElementUtils } from '@dooboostore/core-web/element/ElementUtils';\nimport { Range } from '../iterators/Range';\nimport { DomRenderFinalProxy } from '../types/Types';\nimport { getDomRenderConfig } from '../DomRenderProxy';\nimport { ObjectUtils } from '@dooboostore/core/object/ObjectUtils';\n\ntype HandlerInfo = {\n element: HTMLElement;\n attr: string;\n type: 'link' | 'event' | 'event-param';\n priority: number;\n property?: string; // for link type\n};\n\nexport class EventManager {\n public static readonly attrPrefix = 'dr-';\n public readonly eventNames = [\n 'click', 'mousedown', 'mouseup', 'dblclick', 'mouseover', 'mouseout', 'mousemove', 'mouseenter', 'mouseleave', 'contextmenu',\n 'keyup', 'keydown', 'keypress', 'toggle',\n 'change', 'input', 'submit', 'resize', 'focus', 'blur',\n 'close', 'cancel'\n ];\n\n private readonly delegatableEventMap: { [key: string]: string } = {\n mouseleave: 'mouseout',\n mouseenter: 'mouseover',\n focus: 'focusin',\n blur: 'focusout',\n };\n private readonly directAttachEvents = new Set(['close']);\n\n public static ownerVariablePathAttrName = EventManager.attrPrefix + 'owner-variable-path';\n\n public static readonly eventParam = EventManager.attrPrefix + 'event';\n public static readonly onInitAttrName = EventManager.attrPrefix + 'on-init';\n public static readonly valueAttrName = EventManager.attrPrefix + 'value';\n public static readonly checkedAttrName = EventManager.attrPrefix + 'checked';\n public static readonly selectedAttrName = EventManager.attrPrefix + 'selected';\n public static readonly readonlyAttrName = EventManager.attrPrefix + 'readonly';\n public static readonly disabledAttrName = EventManager.attrPrefix + 'disabled';\n public static readonly hiddenAttrName = EventManager.attrPrefix + 'hidden';\n public static readonly requiredAttrName = EventManager.attrPrefix + 'required';\n public static readonly openAttrName = EventManager.attrPrefix + 'open';\n\n // link\uB294 \uC4F0\uC9C0 \uC54A\uB294\uAC78 \uCD94\uCC9C\uD55C\uB2E4 \uB77C\uC774\uD504 \uC0AC\uC774\uD074 \uAF2C\uC778\uB2E4 \uB2E4\uB978 \uD504\uB808\uC784\uC6CC\uD06C\uC5D0\uC11C\uB3C4 \uC591\uBC29\uD5A5\uC740 \uC9C0\uC591 \uD55C\uB2E4\n public static linkAttrs = [\n {name: EventManager.attrPrefix + 'value-link', property: 'value', event: 'input'},\n {name: EventManager.attrPrefix + 'hidden-link', property: 'value', event: 'input'},\n {name: EventManager.attrPrefix + 'required-link', property: 'value', event: 'input'},\n {name: EventManager.attrPrefix + 'checked-link', property: 'checked', event: 'change'},\n {name: EventManager.attrPrefix + 'open-link', property: 'open', event: 'toggle'},\n ]\n // @ts-ignore \uD569\uC131\uC774\uBCA4\uD2B8(Synthetic) \uCC98\uB9AC\uD558\uBA74\uC11C \uC758\uBBF8\uAC00 \uC5C6\uC5B4\uC84C\uB2E4\n public static readonly linkTargetMapAttrName = EventManager.attrPrefix + 'link-variables';\n\n public static readonly onRenderedInitAttrName = EventManager.attrPrefix + 'on-rendered-init';\n\n public static readonly attrAttrName = EventManager.attrPrefix + 'attr';\n public static readonly normalAttrMapAttrName = EventManager.attrPrefix + 'normal-attr-map';\n public static readonly styleAttrName = EventManager.attrPrefix + 'style';\n public static readonly classAttrName = EventManager.attrPrefix + 'class';\n\n public static readonly VALUE_VARNAME = '$value';\n public static readonly SCRIPTS_VARNAME = '$scripts';\n public static readonly FAG_VARNAME = '$fag';\n public static readonly RAWSET_VARNAME = '$rawSet';\n public static readonly RENDER_VARNAME = '$render';\n public static readonly NEAR_THIS_VARNAME = '$nearThis';\n public static readonly PARENT_THIS_VARNAME = '$parentThis';\n public static readonly ROOT_OBJECT_VARNAME = '$rootObject';\n public static readonly SCRIPT_UTILS_VARNAME = '$scriptUtils';\n public static readonly RANGE_VARNAME = '$range';\n public static readonly ROUTER_VARNAME = '$router';\n public static readonly INNER_HTML_VARNAME = '$innerHTML';\n public static readonly ELEMENT_VARNAME = '$element';\n public static readonly TARGET_VARNAME = '$target';\n public static readonly EVENT_VARNAME = '$event';\n public static readonly COMPONENT_VARNAME = '$component';\n public static readonly INNERHTML_VARNAME = '$innerHTML';\n public static readonly ATTRIBUTE_VARNAME = '$attribute';\n public static readonly CREATOR_META_DATA_VARNAME = '$creatorMetaData';\n public static readonly PARENT_THIS_PATH_VARNAME = '$parentPath';\n public static readonly CURRENT_THIS_VARNAME = '$currentThis';\n public static readonly CURRENT_THIS_PATH_VARNAME = '$currentThisPath';\n public static readonly NEAR_THIS_PATH_VARNAME = '$nearThisPath';\n public static readonly VARNAMES = [EventManager.SCRIPTS_VARNAME, EventManager.FAG_VARNAME, EventManager.RAWSET_VARNAME, EventManager.RANGE_VARNAME, EventManager.ROUTER_VARNAME, EventManager.ELEMENT_VARNAME, EventManager.TARGET_VARNAME, EventManager.EVENT_VARNAME, EventManager.COMPONENT_VARNAME, EventManager.INNERHTML_VARNAME, EventManager.ATTRIBUTE_VARNAME, EventManager.ATTRIBUTE_VARNAME, EventManager.CREATOR_META_DATA_VARNAME, EventManager.PARENT_THIS_PATH_VARNAME, EventManager.PARENT_THIS_VARNAME];\n\n public static readonly WINDOW_EVENT_POPSTATE = 'popstate';\n public static readonly WINDOW_EVENT_RESIZE = 'resize';\n public static readonly WINDOW_EVENTS = [EventManager.WINDOW_EVENT_POPSTATE, EventManager.WINDOW_EVENT_RESIZE];\n public static readonly attrNames = [\n EventManager.valueAttrName,\n EventManager.checkedAttrName,\n EventManager.selectedAttrName,\n EventManager.readonlyAttrName,\n EventManager.disabledAttrName,\n EventManager.hiddenAttrName,\n EventManager.requiredAttrName,\n EventManager.openAttrName,\n EventManager.attrAttrName,\n EventManager.normalAttrMapAttrName,\n EventManager.styleAttrName,\n EventManager.classAttrName,\n EventManager.attrPrefix + 'window-event-' + EventManager.WINDOW_EVENT_POPSTATE,\n EventManager.attrPrefix + 'window-event-' + EventManager.WINDOW_EVENT_RESIZE,\n EventManager.onInitAttrName,\n ...EventManager.linkAttrs.map(it => it.name),\n this.eventParam\n ];\n readonly bindScript = `\n const ${EventManager.VALUE_VARNAME} = this.__render.value;\n const ${EventManager.SCRIPTS_VARNAME} = this.__render.scripts;\n const ${EventManager.RANGE_VARNAME} = this.__render.range;\n const ${EventManager.ROUTER_VARNAME} = this.__render.router;\n const ${EventManager.ATTRIBUTE_VARNAME} = this.__render.attribute;\n const ${EventManager.ELEMENT_VARNAME} = this.__render.element;\n const ${EventManager.COMPONENT_VARNAME} = this.__render.element.component;\n const ${EventManager.TARGET_VARNAME} = this.__render.target;\n const ${EventManager.EVENT_VARNAME} = this.__render.event;\n `;\n\n constructor(private window: Window) {\n this.eventNames.forEach(it => {\n EventManager.attrNames.push(EventManager.attrPrefix + 'event-' + it);\n });\n EventManager.attrNames.push(EventManager.onRenderedInitAttrName);\n\n if (typeof window !== 'undefined') {\n EventManager.WINDOW_EVENTS.forEach(eventName => {\n window?.addEventListener(eventName, (event) => {\n const targetAttr = `dr-window-event-${eventName}`;\n document.querySelectorAll(`[${targetAttr}]`).forEach(it => {\n const script = it.getAttribute(targetAttr);\n if (script) {\n const obj = this.findComponentInstance(it as HTMLElement);\n const config = getDomRenderConfig(obj);\n ScriptUtils.evaluate(`${this.bindScript} ${script} `, this.createExecutionContext(event, it as HTMLElement, obj, config));\n }\n });\n });\n });\n\n const rootElement = this.window.document;\n const listeningEvents = new Set<string>();\n this.eventNames.forEach(eventName => {\n if (this.directAttachEvents.has(eventName)) {\n return;\n }\n const delegatedEventName = this.delegatableEventMap[eventName] || eventName;\n\n if (listeningEvents.has(delegatedEventName)) {\n return;\n }\n listeningEvents.add(delegatedEventName);\n rootElement.addEventListener(delegatedEventName, this.handleEvent.bind(this), true);\n });\n }\n }\n\n private handleEvent(event: Event) {\n const handlers = this.collectHandlers(event);\n // console.log('handlers', handlers, event);\n for (const handler of handlers) {\n if (event.cancelBubble) {\n break;\n }\n\n const componentInstance = this.findComponentInstance(handler.element);\n if (!componentInstance) {\n continue;\n }\n // console.log('executeHandler', event,handler,componentInstance)\n this.executeHandler(event, handler, componentInstance);\n }\n }\n\n private collectHandlers(event: Event): HandlerInfo[] {\n const handlers: HandlerInfo[] = [];\n const root = this.window.document;\n if (!root) return handlers;\n\n const initialTarget = event.target as Node;\n let currentTarget: HTMLElement | null = (initialTarget.nodeType === 1)\n ? (initialTarget as HTMLElement)\n : initialTarget.parentElement;\n const collectedElements = new Set<HTMLElement>();\n\n const eventMap: { [key: string]: string } = {\n mouseout: 'mouseleave',\n mouseover: 'mouseenter',\n focusout: 'blur',\n focusin: 'focus'\n };\n const mappedEventName = eventMap[event.type] || event.type;\n\n while (currentTarget) {\n if (collectedElements.has(currentTarget)) {\n break;\n }\n\n // Priority 1: Link attributes\n const matchingLinkAttr = EventManager.linkAttrs.find(la => la.event === mappedEventName && currentTarget?.hasAttribute(la.name));\n if (matchingLinkAttr) {\n handlers.push({\n element: currentTarget,\n attr: matchingLinkAttr.name,\n type: 'link',\n priority: 1,\n property: matchingLinkAttr.property\n });\n }\n\n // Priority 2: dr-event-* attributes\n const eventAttr = `${EventManager.attrPrefix}event-${mappedEventName}`;\n if (currentTarget.hasAttribute(eventAttr)) {\n handlers.push({\n element: currentTarget,\n attr: eventAttr,\n type: 'event',\n priority: 2\n });\n }\n\n // Priority 3: dr-event with params\n const eventParamAttr = EventManager.eventParam;\n if (currentTarget.hasAttribute(eventParamAttr)) {\n const bindEvents = currentTarget.getAttribute(`${eventParamAttr}:bind`);\n if (bindEvents && bindEvents.split(',').map(s => s.trim()).includes(mappedEventName)) {\n handlers.push({\n element: currentTarget,\n attr: eventParamAttr,\n type: 'event-param',\n priority: 3\n });\n }\n }\n\n collectedElements.add(currentTarget);\n\n if (currentTarget === root.documentElement) {\n break;\n }\n\n currentTarget = currentTarget.parentElement;\n }\n\n return handlers.sort((a, b) => a.priority - b.priority);\n }\n\n private findComponentInstance(element: HTMLElement | null): any {\n let current = element;\n const root = this.window.document;\n while (current) {\n if ((current as any).obj) {\n return (current as any).obj;\n }\n if (current === root.documentElement) {\n break;\n }\n current = current.parentElement;\n }\n return this.window;\n }\n\n private createExecutionContext(event: Event, element: HTMLElement, componentInstance: any, config: DomRenderConfig | undefined, extraVars = {}) {\n // console.log('---------->', config?.eventVariables)\n return Object.assign(componentInstance, {\n __render: Object.freeze({\n event,\n element,\n target: event.target,\n attribute: ElementUtils.getAttributeToObject(element),\n router: config?.router,\n range: Range.range,\n scripts: EventManager.setBindProperty(config?.scripts, componentInstance),\n ...config?.eventVariables,\n ...extraVars\n })\n });\n }\n\n private executeHandler(event: Event, handler: HandlerInfo, componentInstance: any) {\n const {element, type, attr} = handler;\n const config = getDomRenderConfig(componentInstance);\n\n switch (type) {\n case 'link':\n const varName = element.getAttribute(attr);\n if (!varName || !handler.property) return;\n\n if (attr.includes('leave') || attr.includes('enter') || attr.includes('focus') || attr.includes('blur')) {\n const relatedTarget = (event as MouseEvent).relatedTarget as Node;\n if (relatedTarget && element.contains(relatedTarget)) {\n return;\n }\n }\n\n const ownerVariablePath = element.getAttribute(EventManager.ownerVariablePathAttrName);\n let bindObj = componentInstance;\n if (ownerVariablePath) {\n bindObj = ScriptUtils.evaluateReturn(ownerVariablePath, componentInstance);\n }\n\n const mapScript = element.getAttribute(`${attr}:map`);\n let value = (element as any)[handler.property];\n\n if (mapScript) {\n const context = this.createExecutionContext(event, element, bindObj, config, {value});\n value = ScriptUtils.evaluate(`return ${mapScript}`, context);\n }\n\n if (typeof this.getValue(componentInstance, varName, bindObj) === 'function') {\n this.getValue(componentInstance, varName, bindObj)(value, event);\n } else {\n this.setValue(componentInstance, varName, value);\n }\n break;\n\n case 'event':\n const script = element.getAttribute(attr);\n if (!script) return;\n\n if (attr.endsWith('mouseleave') || attr.endsWith('mouseenter') || attr.endsWith('blur') || attr.endsWith('focus')) {\n const relatedTarget = (event as MouseEvent).relatedTarget as Node;\n if (relatedTarget && element.contains(relatedTarget)) {\n return;\n }\n }\n\n const context = this.createExecutionContext(event, element, componentInstance, config);\n const filterScript = element.getAttribute(`${attr}:filter`);\n let filter = true;\n // \uAC1C\uBC1C\uC790\uAC00 \uC0AC\uC6A9\uC911\uC5D0 \uBB38\uC81C\uAC00 \uBC1C\uC0DD\uB420(\uB514\uBC84\uAE45) \uBC84\uADF8\uB97C \uC720\uBC1C\uD560\uC218\uC788\uB294 \uAE30\uB2A5 \uD750\uB984\uC81C\uC5B4\uAC00 \uC548\uB420\uC218\uC788\uC5B4 \uAE30\uB2A5\uC744 \uC81C\uAC70\uD55C\uB2E4.\n // if (filterScript) {\n // filter = ScriptUtils.eval<boolean>(`${this.getBindScript(config)} return ${filterScript}`, context) ?? false;\n // }\n\n if (filter) {\n ScriptUtils.evaluate(`${this.getBindScript(config)} ${script}`, context);\n }\n\n // \uAC1C\uBC1C\uC790\uAC00 \uC0AC\uC6A9\uC911\uC5D0 \uBB38\uC81C\uAC00 \uBC1C\uC0DD\uB420(\uB514\uBC84\uAE45) \uBC84\uADF8\uB97C \uC720\uBC1C\uD560\uC218\uC788\uB294 \uAE30\uB2A5 \uD750\uB984\uC81C\uC5B4\uAC00 \uC548\uB420\uC218\uC788\uC5B4 \uAE30\uB2A5\uC744 \uC81C\uAC70\uD55C\uB2E4.\n // const hasDispatch = element.hasAttribute(`${attr}:dispatch`);\n // if (hasDispatch) {\n // element.dispatchEvent(new Event(event.type));\n // }\n break;\n\n case 'event-param':\n const paramScript = element.getAttribute(attr);\n if (!paramScript) return;\n\n if (attr.endsWith('mouseleave') || attr.endsWith('mouseenter') || attr.endsWith('blur') || attr.endsWith('focus')) {\n const relatedTarget = (event as MouseEvent).relatedTarget as Node;\n if (relatedTarget && element.contains(relatedTarget)) {\n return;\n }\n }\n\n const attributes = ElementUtils.getAttributeToObject(element);\n const params = {} as any;\n const prefix = attr + ':';\n Object.entries(attributes).filter(([k, v]) => k.startsWith(prefix)).forEach(([k, v]) => {\n params[k.slice(prefix.length)] = v;\n });\n\n const paramContext = this.createExecutionContext(event, element, componentInstance, config, {params});\n ScriptUtils.evaluate(`${this.getBindScript(config)} ${paramScript}`, paramContext);\n break;\n }\n }\n\n public findAttrElements(fragment: DocumentFragment | Element, config?: DomRenderConfig): Set<Element> {\n const elements = new Set<Element>();\n const addAttributes = config?.applyEvents?.map(it => it.attrName) ?? [];\n addAttributes.concat([...EventManager.attrNames]).forEach(attrName => {\n fragment?.querySelectorAll(`[${attrName}]`).forEach(it => {\n elements.add(it);\n });\n });\n return elements;\n }\n\n public applyEvent(obj: any, childNodes: Set<ChildNode> | Set<Element>, config?: DomRenderConfig) {\n childNodes.forEach(node => {\n if (node.nodeType === 1) {\n (node as any).obj = obj;\n }\n });\n\n this.procAttr<HTMLInputElement>(childNodes, EventManager.valueAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.value !== data) {\n it.value = data;\n }\n }\n });\n this.procAttr<HTMLInputElement>(childNodes, EventManager.checkedAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.checked!== data) {\n it.checked = data;\n }\n }\n });\n this.procAttr<HTMLOptionElement>(childNodes, EventManager.selectedAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.selected!== data) {\n it.selected = data;\n }\n }\n });\n this.procAttr<HTMLInputElement>(childNodes, EventManager.readonlyAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.readOnly!== data) {\n it.readOnly = data;\n }\n }\n });\n this.procAttr<HTMLInputElement>(childNodes, EventManager.disabledAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.disabled!== data) {\n it.disabled = data;\n }\n }\n });\n this.procAttr<HTMLElement>(childNodes, EventManager.hiddenAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.hidden!== data) {\n it.hidden = data;\n }\n }\n });\n this.procAttr<HTMLInputElement>(childNodes, EventManager.requiredAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.required!== data) {\n it.required = data;\n }\n }\n });\n this.procAttr<HTMLDialogElement>(childNodes, EventManager.openAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.open!== data) {\n it.open = data;\n }\n }\n });\n\n this.procAttr(childNodes, EventManager.normalAttrMapAttrName, (it, attribute) => {\n const map = new Map<string, string>(JSON.parse(attribute));\n map.forEach((v, k) => {\n const data = ScriptUtils.evaluate(`const $element = this.element; return ${v} `, Object.assign(obj, {\n __render: Object.freeze({\n element: it,\n attribute: ElementUtils.getAttributeToObject(it)\n })\n }));\n if (data === null) {\n it.removeAttribute(k);\n } else {\n it.setAttribute(k, data);\n }\n });\n });\n\n EventManager.WINDOW_EVENTS.forEach(it => {\n this.procAttr<HTMLInputElement>(childNodes, EventManager.attrPrefix + 'window-event-' + it, (it, attribute) => {\n (it as any).obj = obj;\n });\n });\n\n EventManager.linkAttrs.forEach(linkInfo => {\n this.procAttr<HTMLElement>(childNodes, linkInfo.name, (it, varName) => {\n\n // console.log('ink??????????')\n if (varName) {\n const ownerVariablePathName = it.getAttribute(EventManager.ownerVariablePathAttrName);\n const mapScript = it.getAttribute(`${linkInfo.name}:map`);\n let bindObj = obj;\n if (ownerVariablePathName) {\n bindObj = ScriptUtils.evaluateReturn(ownerVariablePathName, obj);\n }\n const getValue = this.getValue(obj, varName, bindObj);\n if (typeof getValue === 'function' && getValue) {\n let setValue = (it as any)[linkInfo.property];\n if (mapScript) {\n setValue = ScriptUtils.evaluate(`${this.getBindScript(config)} return ${mapScript}`, Object.assign(bindObj, {__render: Object.freeze({element: it, target: bindObj, range: Range.range, value: setValue, scripts: EventManager.setBindProperty(config?.scripts, obj), ...config?.eventVariables})}));\n }\n getValue(setValue);\n } else if (getValue) {\n let setValue = getValue;\n if (mapScript) {\n setValue = ScriptUtils.evaluate(`${this.getBindScript(config)} return ${mapScript}`, Object.assign(bindObj, {__render: Object.freeze({element: it, target: bindObj, range: Range.range, value: setValue, scripts: EventManager.setBindProperty(config?.scripts, obj), ...config?.eventVariables})}));\n }\n if (setValue === null) {\n it.removeAttribute(linkInfo.property);\n } else {\n (it as any)[linkInfo.property] = setValue;\n }\n } else if (getValue === undefined) {\n this.setValue(obj, varName, (it as any)[linkInfo.property]);\n }\n }\n });\n });\n\n this.directAttachEvents.forEach(eventName => {\n const attr = `${EventManager.attrPrefix}event-${eventName}`;\n this.procAttr<HTMLElement>(childNodes, attr, (element, script) => {\n const handler = (event: Event) => {\n const componentInstance = this.findComponentInstance(element);\n if (!componentInstance) return;\n\n const context = this.createExecutionContext(event, element, componentInstance, config);\n const filterScript = element.getAttribute(`${attr}:filter`);\n let filter = true;\n if (filterScript) {\n filter = ScriptUtils.evaluate<boolean>(`${this.getBindScript(config)} return ${filterScript}`, context) ?? false;\n }\n if (filter) {\n ScriptUtils.evaluate(`${this.getBindScript(config)} ${script}`, context);\n }\n };\n element.addEventListener(eventName, handler);\n // TODO: Add logic to remove this listener when the element is destroyed.\n });\n });\n\n this.procAttr<HTMLElement>(childNodes, EventManager.onInitAttrName, (it, attribute) => {\n let script = attribute;\n if (script) {\n script = 'return ' + script;\n }\n if (script) {\n ScriptUtils.evaluate(`${this.getBindScript(config)}; ${script} `, Object.assign(obj, {\n __render: Object.freeze({\n element: it,\n attribute: ElementUtils.getAttributeToObject(it),\n ...config?.eventVariables\n })\n }));\n }\n });\n\n this.onRenderedEvent(obj, childNodes, config);\n this.changeVar(obj, childNodes, undefined, config);\n const elements = Array.from(childNodes).filter(it => it.nodeType === 1).map(it => it as Element);\n elements.forEach(it => {\n config?.applyEvents?.filter(ta => it.getAttribute(ta.attrName) !== null).forEach(ta => ta.callBack(it, it.getAttribute(ta.attrName)!, obj));\n });\n }\n\n public onRenderedEvent(obj: any, childNodes: Set<ChildNode> | Set<Element> | Node[], config?: DomRenderConfig) {\n this.procAttr<HTMLInputElement>(childNodes, EventManager.onRenderedInitAttrName, (it, attribute) => {\n if (!it.isConnected) {\n return;\n }\n let script = attribute;\n if (script) {\n script = 'return ' + script;\n }\n if (script) {\n ScriptUtils.evaluate(`${this.getBindScript(config)}; ${script} `, Object.assign(obj, {\n __render: Object.freeze({\n element: it,\n attribute: ElementUtils.getAttributeToObject(it),\n ...config?.eventVariables\n })\n }));\n }\n });\n }\n\n public changeVar(obj: any, elements: Set<Element> | Set<ChildNode>, varName?: string, config?: DomRenderConfig) {\n // console.log('changeVar', obj, elements, varName)\n this.procAttr(elements, EventManager.styleAttrName, (it, attribute) => {\n let script = attribute;\n if (script) {\n script = 'return ' + script;\n }\n if (EventManager.isUsingThisVar(script, varName) || varName === undefined) {\n const data = ScriptUtils.evaluate(`const $element = this.__render.element; ${script} `, Object.assign(obj, {\n __render: Object.freeze({\n element: it,\n attribute: ElementUtils.getAttributeToObject(it)\n })\n }));\n if (typeof data === 'string') {\n it.setAttribute('style', data);\n } else if (Array.isArray(data)) {\n it.setAttribute('style', data.join(';'));\n } else {\n for (const [key, value] of Object.entries(data)) {\n if (it instanceof HTMLElement) {\n (it.style as any)[key] = String(value);\n }\n }\n }\n }\n });\n\n this.procAttr(elements, EventManager.classAttrName, (it, attribute) => {\n let script = attribute;\n if (script) {\n script = 'return ' + script;\n }\n if (EventManager.isUsingThisVar(script, varName) || varName === undefined) {\n const data = ScriptUtils.evaluate(`const $element = this.element; ${script} `, Object.assign(obj, {\n __render: Object.freeze({\n element: it,\n attribute: ElementUtils.getAttributeToObject(it)\n })\n }));\n\n if (typeof data === 'string') {\n it.setAttribute('class', data);\n } else if (Array.isArray(data)) {\n it.setAttribute('class', data.join(' '));\n } else {\n for (const [key, value] of Object.entries(data)) {\n if (it instanceof HTMLElement) {\n if (value) {\n it.classList.add(key);\n } else {\n it.classList.remove(key);\n }\n }\n }\n }\n }\n });\n }\n\n public procAttr<T extends Element = Element>(elements: Set<Element> | Set<ChildNode> | Node[] = new Set(), attrName: string, callBack: (h: T, value: string, attributes: any) => void) {\n const sets = new Set<Element>();\n elements.forEach(it => {\n if (!it) {\n return;\n }\n if (it.nodeType === 1) {\n const e = it as Element;\n sets.add(e);\n e.querySelectorAll<T>(`[${attrName}]`).forEach(it => {\n sets.add(it);\n });\n }\n });\n sets.forEach(it => {\n const attr = it.getAttribute(attrName);\n const attrs = ElementUtils.getAttributeToObject(it);\n if (attr) {\n callBack(it as T, attr, attrs);\n }\n });\n }\n\n public getValue<T = any>(obj: any, name: string, bindObj?: any): T {\n let r = ScriptUtils.evaluateReturn(name, obj);\n if (typeof r === 'function') {\n r = r.bind(bindObj ?? obj);\n }\n return r;\n }\n\n public setValue(obj: any, name: string, value?: any) {\n name = name.replaceAll('this.', 'this.this.');\n ScriptUtils.evaluate(`${name} = this.value;`, {\n this: obj,\n value: value\n });\n }\n\n public static isUsingThisVar(raws: string | null | undefined, varName: string | null | undefined): boolean {\n if (varName && raws) {\n if (varName.startsWith('this.')) {\n varName = varName.replace(/this\\./, '');\n }\n // TODO: \uD6D4.. \uAF2D\uD544\uC694\uD55C\uAC00..? \uD2B8\uB9AC\uAC70\uB420\uB54C \uC2A4\uD06C\uB9BD\uD2B8\uBCC0\uC218 \uAE4C\uC9C0 \uAC10\uC9C0\uD574\uC57C\uB420\uAE4C?\n EventManager.VARNAMES.forEach(it => {\n // raws = raws!.replace(RegExp(it.replace('$', '\\\\$'), 'g'), `this?.___${it}`);\n raws = raws!.replace(RegExp(it.replace('$', '\\\\$'), 'g'), `this.___${it}`);\n });\n const variablePaths = ObjectUtils.Path.detectPathFromScript(raws ?? '', {excludeThis: true});\n return variablePaths.has(varName);\n }\n return false;\n }\n\n public static setBindProperty(scripts: { [p: string]: any } | undefined, obj: any): { [p: string]: any } | undefined {\n if (scripts) {\n const newScripts = Object.assign({}, scripts);\n for (const [key, value] of Object.entries(newScripts)) {\n if (typeof value === 'function') {\n newScripts[key] = value.bind(obj);\n }\n }\n return newScripts;\n }\n }\n\n getBindScript(config?: DomRenderConfig) {\n if (config?.eventVariables) {\n const bindScript = Object.entries(config.eventVariables).filter(([key, value]) => !this.bindScript.includes(`const ${key}`)).map(([key, value]) => {\n return `const ${key} = this.__render.${key};`;\n }).join(';');\n return this.bindScript + '' + bindScript;\n } else {\n return this.bindScript;\n }\n }\n}\n\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { DomRenderConfig } from '../configs/DomRenderConfig';\nimport { ScriptUtils } from '@dooboostore/core-web/script/ScriptUtils';\nimport { ElementUtils } from '@dooboostore/core-web/element/ElementUtils';\nimport { Range } from '../iterators/Range';\nimport { DomRenderFinalProxy } from '../types/Types';\nimport { getDomRenderConfig } from '../DomRenderProxy';\nimport { ObjectUtils } from '@dooboostore/core/object/ObjectUtils';\n\ntype HandlerInfo = {\n element: HTMLElement;\n attr: string;\n type: 'link' | 'event' | 'event-param';\n priority: number;\n property?: string; // for link type\n};\nexport type NormalAttrDataType = {\n originalAttrValue: string;\n isStringTemplate: boolean;\n variablePaths: {origin: string, inner: string}[];\n}\nexport class EventManager {\n public static readonly attrPrefix = 'dr-';\n public readonly eventNames = [\n 'click', 'mousedown', 'mouseup', 'dblclick', 'mouseover', 'mouseout', 'mousemove', 'mouseenter', 'mouseleave', 'contextmenu',\n 'keyup', 'keydown', 'keypress', 'toggle',\n 'change', 'input', 'submit', 'resize', 'focus', 'blur',\n 'close', 'cancel'\n ];\n\n private readonly delegatableEventMap: { [key: string]: string } = {\n mouseleave: 'mouseout',\n mouseenter: 'mouseover',\n focus: 'focusin',\n blur: 'focusout',\n };\n private readonly directAttachEvents = new Set(['close']);\n\n public static ownerVariablePathAttrName = EventManager.attrPrefix + 'owner-variable-path';\n\n public static readonly eventParam = EventManager.attrPrefix + 'event';\n public static readonly onInitAttrName = EventManager.attrPrefix + 'on-init';\n public static readonly valueAttrName = EventManager.attrPrefix + 'value';\n public static readonly checkedAttrName = EventManager.attrPrefix + 'checked';\n public static readonly selectedAttrName = EventManager.attrPrefix + 'selected';\n public static readonly readonlyAttrName = EventManager.attrPrefix + 'readonly';\n public static readonly disabledAttrName = EventManager.attrPrefix + 'disabled';\n public static readonly hiddenAttrName = EventManager.attrPrefix + 'hidden';\n public static readonly requiredAttrName = EventManager.attrPrefix + 'required';\n public static readonly openAttrName = EventManager.attrPrefix + 'open';\n\n // link\uB294 \uC4F0\uC9C0 \uC54A\uB294\uAC78 \uCD94\uCC9C\uD55C\uB2E4 \uB77C\uC774\uD504 \uC0AC\uC774\uD074 \uAF2C\uC778\uB2E4 \uB2E4\uB978 \uD504\uB808\uC784\uC6CC\uD06C\uC5D0\uC11C\uB3C4 \uC591\uBC29\uD5A5\uC740 \uC9C0\uC591 \uD55C\uB2E4\n public static linkAttrs = [\n {name: EventManager.attrPrefix + 'value-link', property: 'value', event: 'input'},\n {name: EventManager.attrPrefix + 'hidden-link', property: 'value', event: 'input'},\n {name: EventManager.attrPrefix + 'required-link', property: 'value', event: 'input'},\n {name: EventManager.attrPrefix + 'checked-link', property: 'checked', event: 'change'},\n {name: EventManager.attrPrefix + 'open-link', property: 'open', event: 'toggle'},\n ]\n // @ts-ignore \uD569\uC131\uC774\uBCA4\uD2B8(Synthetic) \uCC98\uB9AC\uD558\uBA74\uC11C \uC758\uBBF8\uAC00 \uC5C6\uC5B4\uC84C\uB2E4\n public static readonly linkTargetMapAttrName = EventManager.attrPrefix + 'link-variables';\n\n public static readonly onRenderedInitAttrName = EventManager.attrPrefix + 'on-rendered-init';\n\n public static readonly attrAttrName = EventManager.attrPrefix + 'attr';\n public static readonly normalAttrMapAttrName = EventManager.attrPrefix + 'normal-attr-map';\n public static readonly styleAttrName = EventManager.attrPrefix + 'style';\n public static readonly classAttrName = EventManager.attrPrefix + 'class';\n\n public static readonly VALUE_VARNAME = '$value';\n public static readonly SCRIPTS_VARNAME = '$scripts';\n public static readonly FAG_VARNAME = '$fag';\n public static readonly RAWSET_VARNAME = '$rawSet';\n public static readonly RENDER_VARNAME = '$render';\n public static readonly NEAR_THIS_VARNAME = '$nearThis';\n public static readonly PARENT_THIS_VARNAME = '$parentThis';\n public static readonly ROOT_OBJECT_VARNAME = '$rootObject';\n public static readonly SCRIPT_UTILS_VARNAME = '$scriptUtils';\n public static readonly RANGE_VARNAME = '$range';\n public static readonly ROUTER_VARNAME = '$router';\n public static readonly INNER_HTML_VARNAME = '$innerHTML';\n public static readonly ELEMENT_VARNAME = '$element';\n public static readonly TARGET_VARNAME = '$target';\n public static readonly EVENT_VARNAME = '$event';\n public static readonly COMPONENT_VARNAME = '$component';\n public static readonly INNERHTML_VARNAME = '$innerHTML';\n public static readonly ATTRIBUTE_VARNAME = '$attribute';\n public static readonly CREATOR_META_DATA_VARNAME = '$creatorMetaData';\n public static readonly PARENT_THIS_PATH_VARNAME = '$parentPath';\n public static readonly CURRENT_THIS_VARNAME = '$currentThis';\n public static readonly CURRENT_THIS_PATH_VARNAME = '$currentThisPath';\n public static readonly NEAR_THIS_PATH_VARNAME = '$nearThisPath';\n public static readonly VARNAMES = [EventManager.SCRIPTS_VARNAME, EventManager.FAG_VARNAME, EventManager.RAWSET_VARNAME, EventManager.RANGE_VARNAME, EventManager.ROUTER_VARNAME, EventManager.ELEMENT_VARNAME, EventManager.TARGET_VARNAME, EventManager.EVENT_VARNAME, EventManager.COMPONENT_VARNAME, EventManager.INNERHTML_VARNAME, EventManager.ATTRIBUTE_VARNAME, EventManager.ATTRIBUTE_VARNAME, EventManager.CREATOR_META_DATA_VARNAME, EventManager.PARENT_THIS_PATH_VARNAME, EventManager.PARENT_THIS_VARNAME];\n\n public static readonly WINDOW_EVENT_POPSTATE = 'popstate';\n public static readonly WINDOW_EVENT_RESIZE = 'resize';\n public static readonly WINDOW_EVENTS = [EventManager.WINDOW_EVENT_POPSTATE, EventManager.WINDOW_EVENT_RESIZE];\n public static readonly noDetectAttr = [EventManager.normalAttrMapAttrName]\n public static readonly attrNames = [\n EventManager.valueAttrName,\n EventManager.checkedAttrName,\n EventManager.selectedAttrName,\n EventManager.readonlyAttrName,\n EventManager.disabledAttrName,\n EventManager.hiddenAttrName,\n EventManager.requiredAttrName,\n EventManager.openAttrName,\n EventManager.attrAttrName,\n EventManager.normalAttrMapAttrName,\n EventManager.styleAttrName,\n EventManager.classAttrName,\n EventManager.attrPrefix + 'window-event-' + EventManager.WINDOW_EVENT_POPSTATE,\n EventManager.attrPrefix + 'window-event-' + EventManager.WINDOW_EVENT_RESIZE,\n EventManager.onInitAttrName,\n ...EventManager.linkAttrs.map(it => it.name),\n this.eventParam\n ];\n readonly bindScript = `\n const ${EventManager.VALUE_VARNAME} = this.__render.value;\n const ${EventManager.SCRIPTS_VARNAME} = this.__render.scripts;\n const ${EventManager.RANGE_VARNAME} = this.__render.range;\n const ${EventManager.ROUTER_VARNAME} = this.__render.router;\n const ${EventManager.ATTRIBUTE_VARNAME} = this.__render.attribute;\n const ${EventManager.ELEMENT_VARNAME} = this.__render.element;\n const ${EventManager.COMPONENT_VARNAME} = this.__render.element.component;\n const ${EventManager.TARGET_VARNAME} = this.__render.target;\n const ${EventManager.EVENT_VARNAME} = this.__render.event;\n `;\n\n constructor(private window: Window) {\n this.eventNames.forEach(it => {\n EventManager.attrNames.push(EventManager.attrPrefix + 'event-' + it);\n });\n EventManager.attrNames.push(EventManager.onRenderedInitAttrName);\n\n if (typeof window !== 'undefined') {\n EventManager.WINDOW_EVENTS.forEach(eventName => {\n window?.addEventListener(eventName, (event) => {\n const targetAttr = `dr-window-event-${eventName}`;\n document.querySelectorAll(`[${targetAttr}]`).forEach(it => {\n const script = it.getAttribute(targetAttr);\n if (script) {\n const obj = this.findComponentInstance(it as HTMLElement);\n const config = getDomRenderConfig(obj);\n ScriptUtils.evaluate(`${this.bindScript} ${script} `, this.createExecutionContext(event, it as HTMLElement, obj, config));\n }\n });\n });\n });\n\n const rootElement = this.window.document;\n const listeningEvents = new Set<string>();\n this.eventNames.forEach(eventName => {\n if (this.directAttachEvents.has(eventName)) {\n return;\n }\n const delegatedEventName = this.delegatableEventMap[eventName] || eventName;\n\n if (listeningEvents.has(delegatedEventName)) {\n return;\n }\n listeningEvents.add(delegatedEventName);\n rootElement.addEventListener(delegatedEventName, this.handleEvent.bind(this), true);\n });\n }\n }\n\n private handleEvent(event: Event) {\n const handlers = this.collectHandlers(event);\n // console.log('handlers', handlers, event);\n for (const handler of handlers) {\n if (event.cancelBubble) {\n break;\n }\n\n const componentInstance = this.findComponentInstance(handler.element);\n if (!componentInstance) {\n continue;\n }\n // console.log('executeHandler', event,handler,componentInstance)\n this.executeHandler(event, handler, componentInstance);\n }\n }\n\n private collectHandlers(event: Event): HandlerInfo[] {\n const handlers: HandlerInfo[] = [];\n const root = this.window.document;\n if (!root) return handlers;\n\n const initialTarget = event.target as Node;\n let currentTarget: HTMLElement | null = (initialTarget.nodeType === 1)\n ? (initialTarget as HTMLElement)\n : initialTarget.parentElement;\n const collectedElements = new Set<HTMLElement>();\n\n const eventMap: { [key: string]: string } = {\n mouseout: 'mouseleave',\n mouseover: 'mouseenter',\n focusout: 'blur',\n focusin: 'focus'\n };\n const mappedEventName = eventMap[event.type] || event.type;\n\n while (currentTarget) {\n if (collectedElements.has(currentTarget)) {\n break;\n }\n\n // Priority 1: Link attributes\n const matchingLinkAttr = EventManager.linkAttrs.find(la => la.event === mappedEventName && currentTarget?.hasAttribute(la.name));\n if (matchingLinkAttr) {\n handlers.push({\n element: currentTarget,\n attr: matchingLinkAttr.name,\n type: 'link',\n priority: 1,\n property: matchingLinkAttr.property\n });\n }\n\n // Priority 2: dr-event-* attributes\n const eventAttr = `${EventManager.attrPrefix}event-${mappedEventName}`;\n if (currentTarget.hasAttribute(eventAttr)) {\n handlers.push({\n element: currentTarget,\n attr: eventAttr,\n type: 'event',\n priority: 2\n });\n }\n\n // Priority 3: dr-event with params\n const eventParamAttr = EventManager.eventParam;\n if (currentTarget.hasAttribute(eventParamAttr)) {\n const bindEvents = currentTarget.getAttribute(`${eventParamAttr}:bind`);\n if (bindEvents && bindEvents.split(',').map(s => s.trim()).includes(mappedEventName)) {\n handlers.push({\n element: currentTarget,\n attr: eventParamAttr,\n type: 'event-param',\n priority: 3\n });\n }\n }\n\n collectedElements.add(currentTarget);\n\n if (currentTarget === root.documentElement) {\n break;\n }\n\n currentTarget = currentTarget.parentElement;\n }\n\n return handlers.sort((a, b) => a.priority - b.priority);\n }\n\n private findComponentInstance(element: HTMLElement | null): any {\n let current = element;\n const root = this.window.document;\n while (current) {\n if ((current as any).obj) {\n return (current as any).obj;\n }\n if (current === root.documentElement) {\n break;\n }\n current = current.parentElement;\n }\n return this.window;\n }\n\n private createExecutionContext(event: Event, element: HTMLElement, componentInstance: any, config: DomRenderConfig | undefined, extraVars = {}) {\n // console.log('---------->', config?.eventVariables)\n return Object.assign(componentInstance, {\n __render: Object.freeze({\n event,\n element,\n target: event.target,\n attribute: ElementUtils.getAttributeToObject(element),\n router: config?.router,\n range: Range.range,\n scripts: EventManager.setBindProperty(config?.scripts, componentInstance),\n ...config?.eventVariables,\n ...extraVars\n })\n });\n }\n\n private executeHandler(event: Event, handler: HandlerInfo, componentInstance: any) {\n const {element, type, attr} = handler;\n const config = getDomRenderConfig(componentInstance);\n\n switch (type) {\n case 'link':\n const varName = element.getAttribute(attr);\n if (!varName || !handler.property) return;\n\n if (attr.includes('leave') || attr.includes('enter') || attr.includes('focus') || attr.includes('blur')) {\n const relatedTarget = (event as MouseEvent).relatedTarget as Node;\n if (relatedTarget && element.contains(relatedTarget)) {\n return;\n }\n }\n\n const ownerVariablePath = element.getAttribute(EventManager.ownerVariablePathAttrName);\n let bindObj = componentInstance;\n if (ownerVariablePath) {\n bindObj = ScriptUtils.evaluateReturn(ownerVariablePath, componentInstance);\n }\n\n const mapScript = element.getAttribute(`${attr}:map`);\n let value = (element as any)[handler.property];\n\n if (mapScript) {\n const context = this.createExecutionContext(event, element, bindObj, config, {value});\n value = ScriptUtils.evaluate(`return ${mapScript}`, context);\n }\n\n if (typeof this.getValue(componentInstance, varName, bindObj) === 'function') {\n this.getValue(componentInstance, varName, bindObj)(value, event);\n } else {\n this.setValue(componentInstance, varName, value);\n }\n break;\n\n case 'event':\n const script = element.getAttribute(attr);\n if (!script) return;\n\n if (attr.endsWith('mouseleave') || attr.endsWith('mouseenter') || attr.endsWith('blur') || attr.endsWith('focus')) {\n const relatedTarget = (event as MouseEvent).relatedTarget as Node;\n if (relatedTarget && element.contains(relatedTarget)) {\n return;\n }\n }\n\n const context = this.createExecutionContext(event, element, componentInstance, config);\n const filterScript = element.getAttribute(`${attr}:filter`);\n let filter = true;\n // \uAC1C\uBC1C\uC790\uAC00 \uC0AC\uC6A9\uC911\uC5D0 \uBB38\uC81C\uAC00 \uBC1C\uC0DD\uB420(\uB514\uBC84\uAE45) \uBC84\uADF8\uB97C \uC720\uBC1C\uD560\uC218\uC788\uB294 \uAE30\uB2A5 \uD750\uB984\uC81C\uC5B4\uAC00 \uC548\uB420\uC218\uC788\uC5B4 \uAE30\uB2A5\uC744 \uC81C\uAC70\uD55C\uB2E4.\n // if (filterScript) {\n // filter = ScriptUtils.eval<boolean>(`${this.getBindScript(config)} return ${filterScript}`, context) ?? false;\n // }\n\n if (filter) {\n ScriptUtils.evaluate(`${this.getBindScript(config)} ${script}`, context);\n }\n\n // \uAC1C\uBC1C\uC790\uAC00 \uC0AC\uC6A9\uC911\uC5D0 \uBB38\uC81C\uAC00 \uBC1C\uC0DD\uB420(\uB514\uBC84\uAE45) \uBC84\uADF8\uB97C \uC720\uBC1C\uD560\uC218\uC788\uB294 \uAE30\uB2A5 \uD750\uB984\uC81C\uC5B4\uAC00 \uC548\uB420\uC218\uC788\uC5B4 \uAE30\uB2A5\uC744 \uC81C\uAC70\uD55C\uB2E4.\n // const hasDispatch = element.hasAttribute(`${attr}:dispatch`);\n // if (hasDispatch) {\n // element.dispatchEvent(new Event(event.type));\n // }\n break;\n\n case 'event-param':\n const paramScript = element.getAttribute(attr);\n if (!paramScript) return;\n\n if (attr.endsWith('mouseleave') || attr.endsWith('mouseenter') || attr.endsWith('blur') || attr.endsWith('focus')) {\n const relatedTarget = (event as MouseEvent).relatedTarget as Node;\n if (relatedTarget && element.contains(relatedTarget)) {\n return;\n }\n }\n\n const attributes = ElementUtils.getAttributeToObject(element);\n const params = {} as any;\n const prefix = attr + ':';\n Object.entries(attributes).filter(([k, v]) => k.startsWith(prefix)).forEach(([k, v]) => {\n params[k.slice(prefix.length)] = v;\n });\n\n const paramContext = this.createExecutionContext(event, element, componentInstance, config, {params});\n ScriptUtils.evaluate(`${this.getBindScript(config)} ${paramScript}`, paramContext);\n break;\n }\n }\n\n public findAttrElements(fragment: DocumentFragment | Element, config?: DomRenderConfig): Set<Element> {\n const elements = new Set<Element>();\n const addAttributes = config?.applyEvents?.map(it => it.attrName) ?? [];\n addAttributes.concat([...EventManager.attrNames]).forEach(attrName => {\n fragment?.querySelectorAll(`[${attrName}]`).forEach(it => {\n elements.add(it);\n });\n });\n return elements;\n }\n\n public applyEvent(obj: any, childNodes: Set<ChildNode> | Set<Element>, config?: DomRenderConfig) {\n childNodes.forEach(node => {\n if (node.nodeType === 1) {\n (node as any).obj = obj;\n }\n });\n\n this.procAttr<HTMLInputElement>(childNodes, EventManager.valueAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.value !== data) {\n it.value = data;\n }\n }\n });\n this.procAttr<HTMLInputElement>(childNodes, EventManager.checkedAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.checked!== data) {\n it.checked = data;\n }\n }\n });\n this.procAttr<HTMLOptionElement>(childNodes, EventManager.selectedAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.selected!== data) {\n it.selected = data;\n }\n }\n });\n this.procAttr<HTMLInputElement>(childNodes, EventManager.readonlyAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.readOnly!== data) {\n it.readOnly = data;\n }\n }\n });\n this.procAttr<HTMLInputElement>(childNodes, EventManager.disabledAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.disabled!== data) {\n it.disabled = data;\n }\n }\n });\n this.procAttr<HTMLElement>(childNodes, EventManager.hiddenAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.hidden!== data) {\n it.hidden = data;\n }\n }\n });\n this.procAttr<HTMLInputElement>(childNodes, EventManager.requiredAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.required!== data) {\n it.required = data;\n }\n }\n });\n this.procAttr<HTMLDialogElement>(childNodes, EventManager.openAttrName, (it, attribute) => {\n const script = attribute;\n if (script) {\n const data = ScriptUtils.evaluateReturn(script, obj);\n if (it.open!== data) {\n it.open = data;\n }\n }\n });\n\n this.procAttr(childNodes, EventManager.normalAttrMapAttrName, (it, attribute) => {\n const map = new Map<string, NormalAttrDataType>(JSON.parse(attribute));\n map.forEach((v, k) => {\n\n const variablePaths = v.variablePaths;\n let targetScript = v.originalAttrValue;//typeof v.originalAttrValue === 'string' ? JSON.parse(v.originalAttrValue) : v.originalAttrValue;\n let script: string;\n if (v.isStringTemplate) {\n variablePaths.forEach(it => {\n let r = ObjectUtils.Path.toOptionalChainPath(it.inner);\n targetScript = targetScript.replaceAll(it.origin, `\\${${r}}`);\n })\n script = '`' + targetScript + '`';\n } else {\n variablePaths.forEach(it => {\n let r = ObjectUtils.Path.toOptionalChainPath(it.inner);\n targetScript = targetScript.replaceAll(it.origin, `${r}`);\n })\n script = targetScript;\n }\n const data = ObjectUtils.Script.evaluate(`const $element = this.element; return ${script}`, Object.assign(obj, {\n __render: Object.freeze({\n element: it,\n attribute: ElementUtils.getAttributeToObject(it)\n })\n }));\n // console.log('!!!!!!!!!!!', k, data, script, variablePaths, v)\n if (data === null) {\n it.removeAttribute(k);\n } else {\n it.setAttribute(k, data);\n }\n });\n });\n\n EventManager.WINDOW_EVENTS.forEach(it => {\n this.procAttr<HTMLInputElement>(childNodes, EventManager.attrPrefix + 'window-event-' + it, (it, attribute) => {\n (it as any).obj = obj;\n });\n });\n\n EventManager.linkAttrs.forEach(linkInfo => {\n this.procAttr<HTMLElement>(childNodes, linkInfo.name, (it, varName) => {\n\n // console.log('ink??????????')\n if (varName) {\n const ownerVariablePathName = it.getAttribute(EventManager.ownerVariablePathAttrName);\n const mapScript = it.getAttribute(`${linkInfo.name}:map`);\n let bindObj = obj;\n if (ownerVariablePathName) {\n bindObj = ScriptUtils.evaluateReturn(ownerVariablePathName, obj);\n }\n const getValue = this.getValue(obj, varName, bindObj);\n if (typeof getValue === 'function' && getValue) {\n let setValue = (it as any)[linkInfo.property];\n if (mapScript) {\n setValue = ScriptUtils.evaluate(`${this.getBindScript(config)} return ${mapScript}`, Object.assign(bindObj, {__render: Object.freeze({element: it, target: bindObj, range: Range.range, value: setValue, scripts: EventManager.setBindProperty(config?.scripts, obj), ...config?.eventVariables})}));\n }\n getValue(setValue);\n } else if (getValue) {\n let setValue = getValue;\n if (mapScript) {\n setValue = ScriptUtils.evaluate(`${this.getBindScript(config)} return ${mapScript}`, Object.assign(bindObj, {__render: Object.freeze({element: it, target: bindObj, range: Range.range, value: setValue, scripts: EventManager.setBindProperty(config?.scripts, obj), ...config?.eventVariables})}));\n }\n if (setValue === null) {\n it.removeAttribute(linkInfo.property);\n } else {\n (it as any)[linkInfo.property] = setValue;\n }\n } else if (getValue === undefined) {\n this.setValue(obj, varName, (it as any)[linkInfo.property]);\n }\n }\n });\n });\n\n this.directAttachEvents.forEach(eventName => {\n const attr = `${EventManager.attrPrefix}event-${eventName}`;\n this.procAttr<HTMLElement>(childNodes, attr, (element, script) => {\n const handler = (event: Event) => {\n const componentInstance = this.findComponentInstance(element);\n if (!componentInstance) return;\n\n const context = this.createExecutionContext(event, element, componentInstance, config);\n const filterScript = element.getAttribute(`${attr}:filter`);\n let filter = true;\n if (filterScript) {\n filter = ScriptUtils.evaluate<boolean>(`${this.getBindScript(config)} return ${filterScript}`, context) ?? false;\n }\n if (filter) {\n ScriptUtils.evaluate(`${this.getBindScript(config)} ${script}`, context);\n }\n };\n element.addEventListener(eventName, handler);\n // TODO: Add logic to remove this listener when the element is destroyed.\n });\n });\n\n this.procAttr<HTMLElement>(childNodes, EventManager.onInitAttrName, (it, attribute) => {\n let script = attribute;\n if (script) {\n script = 'return ' + script;\n }\n if (script) {\n ScriptUtils.evaluate(`${this.getBindScript(config)}; ${script} `, Object.assign(obj, {\n __render: Object.freeze({\n element: it,\n attribute: ElementUtils.getAttributeToObject(it),\n ...config?.eventVariables\n })\n }));\n }\n });\n\n this.onRenderedEvent(obj, childNodes, config);\n this.changeVar(obj, childNodes, undefined, config);\n const elements = Array.from(childNodes).filter(it => it.nodeType === 1).map(it => it as Element);\n elements.forEach(it => {\n config?.applyEvents?.filter(ta => it.getAttribute(ta.attrName) !== null).forEach(ta => ta.callBack(it, it.getAttribute(ta.attrName)!, obj));\n });\n }\n\n public onRenderedEvent(obj: any, childNodes: Set<ChildNode> | Set<Element> | Node[], config?: DomRenderConfig) {\n this.procAttr<HTMLInputElement>(childNodes, EventManager.onRenderedInitAttrName, (it, attribute) => {\n if (!it.isConnected) {\n return;\n }\n let script = attribute;\n if (script) {\n script = 'return ' + script;\n }\n if (script) {\n ScriptUtils.evaluate(`${this.getBindScript(config)}; ${script} `, Object.assign(obj, {\n __render: Object.freeze({\n element: it,\n attribute: ElementUtils.getAttributeToObject(it),\n ...config?.eventVariables\n })\n }));\n }\n });\n }\n\n public changeVar(obj: any, elements: Set<Element> | Set<ChildNode>, varName?: string, config?: DomRenderConfig) {\n // console.log('changeVar', obj, elements, varName)\n this.procAttr(elements, EventManager.styleAttrName, (it: HTMLElement, attribute) => {\n let script = attribute;\n if (script) {\n script = 'return ' + script;\n }\n if (EventManager.isUsingThisVar(script, varName) || varName === undefined) {\n const data = ScriptUtils.evaluate(`const $element = this.__render.element; ${script} `, Object.assign(obj, {\n __render: Object.freeze({\n element: it,\n attribute: ElementUtils.getAttributeToObject(it)\n })\n }));\n if (typeof data === 'string') {\n data.split(';').forEach(sit => {\n const [key, value] = sit.split(':').map(s => s.trim());\n if (key && value) {\n (it.style as any)[key] = value;\n }\n })\n // it.setAttribute('style', data);\n } else if (Array.isArray(data)) {\n data.forEach(sit => {\n const [key, value] = sit.split(':').map(s => s.trim());\n if (key && value) {\n (it.style as any)[key] = value;\n }\n })\n\n // it.setAttribute('style', data.join(';'));\n } else {\n for (const [key, value] of Object.entries(data)) {\n // if (it instanceof HTMLElement) {\n (it.style as any)[key] = value === null ? null :String(value);\n // }\n }\n }\n }\n });\n\n this.procAttr(elements, EventManager.classAttrName, (it, attribute) => {\n let script = attribute;\n if (script) {\n script = 'return ' + script;\n }\n if (EventManager.isUsingThisVar(script, varName) || varName === undefined) {\n const data = ScriptUtils.evaluate(`const $element = this.element; ${script} `, Object.assign(obj, {\n __render: Object.freeze({\n element: it,\n attribute: ElementUtils.getAttributeToObject(it)\n })\n }));\n\n // alert(1)\n if (typeof data === 'string') {\n data.split(' ').forEach(cit => it.classList.add(cit.trim()));\n } else if (Array.isArray(data)) {\n data.forEach(cit => it.classList.add(cit.trim()));\n } else {\n for (const [key, value] of Object.entries(data)) {\n if (it instanceof HTMLElement) {\n if (value) {\n it.classList.add(key.trim());\n } else {\n it.classList.remove(key.trim());\n }\n }\n }\n }\n }\n });\n }\n\n public procAttr<T extends Element = Element>(elements: Set<Element> | Set<ChildNode> | Node[] = new Set(), attrName: string, callBack: (h: T, value: string, attributes: any) => void) {\n const sets = new Set<Element>();\n elements.forEach(it => {\n if (!it) {\n return;\n }\n if (it.nodeType === 1) {\n const e = it as Element;\n sets.add(e);\n e.querySelectorAll<T>(`[${attrName}]`).forEach(it => {\n sets.add(it);\n });\n }\n });\n sets.forEach(it => {\n const attr = it.getAttribute(attrName);\n const attrs = ElementUtils.getAttributeToObject(it);\n if (attr) {\n callBack(it as T, attr, attrs);\n }\n });\n }\n\n public getValue<T = any>(obj: any, name: string, bindObj?: any): T {\n let r = ObjectUtils.Script.evaluateReturn(name, obj);\n if (typeof r === 'function') {\n r = r.bind(bindObj ?? obj);\n }\n return r;\n }\n\n public setValue(obj: any, name: string, value?: any) {\n name = name.replaceAll('this.', 'this.this.');\n ScriptUtils.evaluate(`${name} = this.value;`, {\n this: obj,\n value: value\n });\n }\n\n public static isUsingThisVar(raws: string | null | undefined, varName: string | null | undefined): boolean {\n if (varName && raws) {\n if (varName.startsWith('this.')) {\n varName = varName.replace(/this\\./, '');\n }\n // TODO: \uD6D4.. \uAF2D\uD544\uC694\uD55C\uAC00..? \uD2B8\uB9AC\uAC70\uB420\uB54C \uC2A4\uD06C\uB9BD\uD2B8\uBCC0\uC218 \uAE4C\uC9C0 \uAC10\uC9C0\uD574\uC57C\uB420\uAE4C?\n EventManager.VARNAMES.forEach(it => {\n // raws = raws!.replace(RegExp(it.replace('$', '\\\\$'), 'g'), `this?.___${it}`);\n raws = raws!.replace(RegExp(it.replace('$', '\\\\$'), 'g'), `this.___${it}`);\n });\n const variablePaths = ObjectUtils.Path.detectPathFromScript(raws ?? '', {excludeThis: true});\n return variablePaths.has(varName);\n }\n return false;\n }\n\n public static setBindProperty(scripts: { [p: string]: any } | undefined, obj: any): { [p: string]: any } | undefined {\n if (scripts) {\n const newScripts = Object.assign({}, scripts);\n for (const [key, value] of Object.entries(newScripts)) {\n if (typeof value === 'function') {\n newScripts[key] = value.bind(obj);\n }\n }\n return newScripts;\n }\n }\n\n getBindScript(config?: DomRenderConfig) {\n if (config?.eventVariables) {\n const bindScript = Object.entries(config.eventVariables).filter(([key, value]) => !this.bindScript.includes(`const ${key}`)).map(([key, value]) => {\n return `const ${key} = this.__render.${key};`;\n }).join(';');\n return this.bindScript + '' + bindScript;\n } else {\n return this.bindScript;\n }\n }\n}\n\n"],
5
+ "mappings": "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",
6
6
  "names": ["context", "it"]
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/lifecycle/OnInitRender.ts"],
4
- "sourcesContent": ["import { RawSet } from '../rawsets/RawSet';\n\nexport interface OnInitRender {\n onInitRender(param: any, rawSet:RawSet): void;\n}\n\nexport function isOnInitRender(obj: any): obj is OnInitRender {\n return typeof obj?.onInitRender === 'function';\n}"],
4
+ "sourcesContent": ["import { RawSet } from '../rawsets/RawSet';\n\nexport interface OnInitRender {\n onInitRender(param: any, rawSet:RawSet): Promise<void>;\n}\n\nexport function isOnInitRender(obj: any): obj is OnInitRender {\n return typeof obj?.onInitRender === 'function';\n}"],
5
5
  "mappings": "AAMO,SAAS,eAAe,KAA+B;AAC1D,SAAO,OAAO,KAAK,iBAAiB;AACxC;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,4 @@
1
1
  import { OperatorExecuterAttrRequire } from "./OperatorExecuterAttrRequire.js";
2
- import { ScriptUtils } from "@dooboostore/core-web/script/ScriptUtils";
3
2
  import { RawSet } from "../rawsets/RawSet.js";
4
3
  import { ExecuteState } from "./OperatorExecuter.js";
5
4
  import { ObjectUtils } from "@dooboostore/core/object/ObjectUtils";
@@ -12,7 +11,10 @@ class DrForOf extends OperatorExecuterAttrRequire {
12
11
  const itRandom = RawSet.drItOtherEncoding(this.elementSource.element, "DrForOf");
13
12
  const vars = RawSet.drVarEncoding(this.elementSource.element, this.elementSource.attrs.drVarOption ?? "");
14
13
  const newTemp = this.source.config.window.document.createElement("temp");
15
- ScriptUtils.evaluate(`
14
+ const variableName = this.elementSource.element.getAttribute(RawSet.DR_VARIABLE_NAME_OPTIONNAME);
15
+ const itemVariableName = this.elementSource.element.getAttribute(RawSet.DR_ITEM_VARIABLE_NAME_OPTIONNAME);
16
+ const itemIndexVariableName = this.elementSource.element.getAttribute(RawSet.DR_ITEM_INDEX_VARIABLE_NAME_OPTIONNAME);
17
+ ObjectUtils.Script.evaluate(`
16
18
  ${this.render.bindScript}
17
19
  ${this.elementSource.attrs.drBeforeOption ?? ""}
18
20
  var i = -1;
@@ -35,11 +37,18 @@ class DrForOf extends OperatorExecuterAttrRequire {
35
37
  destIt = forOfStr + '[' + i +']'
36
38
  }
37
39
  const n = this.__render.element.cloneNode(true);
38
- // console.log('zzzzzzzzzzz', n.getAttribute('${RawSet.DR_DETECT_ATTR_OPTIONNAME}'));
39
40
  Object.entries(this.__render.drAttr).filter(([k,v]) => k !== 'drForOf' && k !== 'drNextOption' && v).forEach(([k, v]) => n.setAttribute(this.__render.drAttrsOriginName[k], v));
40
- // console.log('---------'+destIt,n, Array.from(n.getAttributeNames()).map(it=>({name:it,attr: n.getAttribute(it)})));
41
- // console.log('---------destItdestIt',destIt);
42
41
  n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replace(/\\#it\\#/g, destIt).replace(/\\#nearForOfIt\\#/g, destIt).replace(/\\#it\\#/g, destIt).replace(/\\#nearForOfIndex\\#/g, i)))
42
+ if ('${variableName}') {
43
+ n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replaceAll('#${variableName}#', forOfStr)));
44
+ }
45
+ if ('${itemVariableName}') {
46
+ n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replaceAll('#${itemVariableName}#', destIt)));
47
+ }
48
+ if ('${itemIndexVariableName}') {
49
+ n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replaceAll('#${itemIndexVariableName}#', i)));
50
+ }
51
+
43
52
  const drOptionAttr = n.getAttribute('${RawSet.DR_DETECT_ATTR_OPTIONNAME}');
44
53
  if (drOptionAttr) {
45
54
  const drOptionAttrResult = $scriptUtils.evaluateReturn(drOptionAttr, this);
@@ -62,12 +71,16 @@ class DrForOf extends OperatorExecuterAttrRequire {
62
71
  }
63
72
 
64
73
  n.innerHTML = n.innerHTML.replace(/\\#it\\#/g, destIt).replace(/\\#index\\#/g, i);
65
- // console.log('!@@@@', n.innerHTML);
66
- // DR_THIS_OPTIONNAME \uB294 \uC81C\uAC70\uD55C\uB2E4 \uAF2C\uC778\uB2E4. strip \uD560\uB54C \uB9C9 \uAF2C\uC5EC\uBC84\uB9B0\uB2E4.
67
- // const drOptionThis = n.getAttribute('${RawSet.DR_THIS_OPTIONNAME}');
68
- // if (drOptionThis) {
69
- // n.setAttribute('${RawSet.DR_THIS_NAME}', drOptionThis)
70
- // }
74
+ if ('${variableName}') {
75
+ n.innerHTML = n.innerHTML.replaceAll('#${variableName}#', forOfStr);
76
+ }
77
+ if ('${itemVariableName}') {
78
+ n.innerHTML = n.innerHTML.replaceAll('#${itemVariableName}#', destIt);
79
+ }
80
+ if ('${itemIndexVariableName}') {
81
+ n.innerHTML = n.innerHTML.replaceAll('#${itemIndexVariableName}#', i);
82
+ }
83
+
71
84
  if (this.__render.drStripOption === 'true') {
72
85
  Array.from(n.childNodes).forEach(it => this.__render.fag.append(it));
73
86
  } else {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/operators/DrForOf.ts"],
4
- "sourcesContent": ["import { OperatorExecuterAttrRequire } from './OperatorExecuterAttrRequire';\nimport { ScriptUtils } from '@dooboostore/core-web/script/ScriptUtils';\nimport { RawSet } from '../rawsets/RawSet';\nimport { Render } from '../rawsets/Render';\nimport { AfterCallBack, ElementSource, ExecuteState, ReturnContainer, Source } from './OperatorExecuter';\nimport { ObjectUtils } from '@dooboostore/core/object/ObjectUtils';\n\nexport class DrForOf extends OperatorExecuterAttrRequire<string> {\n constructor(rawSet: RawSet, render: Render, returnContainer: ReturnContainer, elementSource: ElementSource, source: Source, afterCallBack: AfterCallBack) {\n source.operatorAround = undefined;\n super(rawSet, render, returnContainer, elementSource, source, afterCallBack, false);\n }\n\n async executeAttrRequire(attr: string): Promise<ExecuteState> {\n // console.log('\uD0C0\uC9C0\uB3C4\uC54A\uB0D0?')\n const itRandom = RawSet.drItOtherEncoding(this.elementSource.element, 'DrForOf');\n const vars = RawSet.drVarEncoding(this.elementSource.element, this.elementSource.attrs.drVarOption ?? '');\n const newTemp = this.source.config.window.document.createElement('temp');\n // console.log('----!', this.elementSource.attrs)\n // ScriptUtils.evalReturn()\n ScriptUtils.evaluate(`\n ${this.render.bindScript}\n ${this.elementSource.attrs.drBeforeOption ?? ''}\n var i = -1; \n const forOf = ${ObjectUtils.Path.toOptionalChainPath(attr)};\n const forOfStr = \\`${attr}\\`.trim();\n // console.log('forOf---',forOf);\n if (forOf) {\n for(const it of forOf) {\n i++;\n var destIt = it;\n if (/\\\\[(.*,?)\\\\],/g.test(forOfStr)) {\n if (typeof it === 'string') {\n destIt = it;\n } else {\n destIt = forOfStr.substring(1, forOfStr.length-1).split(',')[i];\n }\n } else if (forOf.isRange) {\n destIt = it;\n } else {\n destIt = forOfStr + '[' + i +']'\n }\n const n = this.__render.element.cloneNode(true);\n // console.log('zzzzzzzzzzz', n.getAttribute('${RawSet.DR_DETECT_ATTR_OPTIONNAME}'));\n Object.entries(this.__render.drAttr).filter(([k,v]) => k !== 'drForOf' && k !== 'drNextOption' && v).forEach(([k, v]) => n.setAttribute(this.__render.drAttrsOriginName[k], v));\n // console.log('---------'+destIt,n, Array.from(n.getAttributeNames()).map(it=>({name:it,attr: n.getAttribute(it)})));\n // console.log('---------destItdestIt',destIt);\n n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replace(/\\\\#it\\\\#/g, destIt).replace(/\\\\#nearForOfIt\\\\#/g, destIt).replace(/\\\\#it\\\\#/g, destIt).replace(/\\\\#nearForOfIndex\\\\#/g, i)))\n const drOptionAttr = n.getAttribute('${RawSet.DR_DETECT_ATTR_OPTIONNAME}');\n if (drOptionAttr) {\n const drOptionAttrResult = $scriptUtils.evaluateReturn(drOptionAttr, this);\n Array.from(Object.entries(drOptionAttrResult??{})).forEach(([k,v])=>{\n if (v === null) {\n n.removeAttribute(k);\n } else {\n n.setAttribute(k,v);\n }\n })\n }\n \n const drOptionFilter = n.getAttribute('${RawSet.DR_DETECT_FILTER_OPTIONNAME}');\n if (drOptionFilter) {\n const drOptionFilterResult = $scriptUtils.evaluateReturn(drOptionFilter, this);\n // console.log('---drforof----', drOptionFilter, drOptionFilterResult)\n if (!drOptionFilterResult) {\n continue;\n }\n }\n\n n.innerHTML = n.innerHTML.replace(/\\\\#it\\\\#/g, destIt).replace(/\\\\#index\\\\#/g, i);\n // console.log('!@@@@', n.innerHTML);\n // DR_THIS_OPTIONNAME \uB294 \uC81C\uAC70\uD55C\uB2E4 \uAF2C\uC778\uB2E4. strip \uD560\uB54C \uB9C9 \uAF2C\uC5EC\uBC84\uB9B0\uB2E4.\n // const drOptionThis = n.getAttribute('${RawSet.DR_THIS_OPTIONNAME}');\n // if (drOptionThis) {\n // n.setAttribute('${RawSet.DR_THIS_NAME}', drOptionThis)\n // }\n if (this.__render.drStripOption === 'true') {\n Array.from(n.childNodes).forEach(it => this.__render.fag.append(it));\n } else {\n this.__render.fag.append(n);\n }\n \n }\n \n if('${this.elementSource.attrs.drNextOption}' !== 'null') {\n const n = this.__render.element.cloneNode(true);\n Object.entries(this.__render.drAttr).filter(([k,v]) => k !== 'drForOf' && k !== 'drNextOption' && v).forEach(([k, v]) => n.setAttribute(this.__render.drAttrsOriginName[k], v));\n const [name, idx] = '${this.elementSource.attrs.drNextOption}'.split(',');\n n.setAttribute('${RawSet.DR_FOR_OF_NAME}', name + '[' + idx + ']');\n n.setAttribute('${RawSet.DR_NEXT_OPTIONNAME}', name + ',' + (Number(idx) + 1));\n this.__render.fag.append(n);\n }\n }\n ${this.elementSource.attrs.drAfterOption ?? ''}\n `, Object.assign(this.source.obj, {\n __render: Object.freeze({\n drStripOption: this.elementSource.attrs.drStripOption,\n drAttr: this.elementSource.attrs,\n drAttrsOriginName: RawSet.drAttrsOriginName,\n fag: newTemp,\n ...this.render\n // eslint-disable-next-line no-use-before-define\n } as Render)\n }));\n RawSet.drVarDecoding(newTemp, vars);\n RawSet.drItOtherDecoding(newTemp, itRandom);\n const tempalte = this.source.config.window.document.createElement('template');\n tempalte.innerHTML = newTemp.innerHTML;\n this.returnContainer.fag.append(tempalte.content)\n const rr = RawSet.checkPointCreates(this.returnContainer.fag, this.source.obj, this.source.config);\n this.elementSource.element.parentNode?.replaceChild(this.returnContainer.fag, this.elementSource.element);\n // const rrr = rr.flatMap(it => it.render(obj, config));// .flat();\n this.returnContainer.raws.push(...rr)\n return ExecuteState.EXECUTE;\n }\n}\n"],
5
- "mappings": "AAAA,SAAS,mCAAmC;AAC5C,SAAS,mBAAmB;AAC5B,SAAS,cAAc;AAEvB,SAAuC,oBAA6C;AACpF,SAAS,mBAAmB;AAErB,MAAM,gBAAgB,4BAAoC;AAAA,EAC/D,YAAY,QAAgB,QAAgB,iBAAkC,eAA8B,QAAgB,eAA8B;AACxJ,WAAO,iBAAiB;AACxB,UAAM,QAAQ,QAAQ,iBAAiB,eAAe,QAAQ,eAAe,KAAK;AAAA,EACpF;AAAA,EAEA,MAAM,mBAAmB,MAAqC;AAE5D,UAAM,WAAW,OAAO,kBAAkB,KAAK,cAAc,SAAS,SAAS;AAC/E,UAAM,OAAO,OAAO,cAAc,KAAK,cAAc,SAAS,KAAK,cAAc,MAAM,eAAe,EAAE;AACxG,UAAM,UAAU,KAAK,OAAO,OAAO,OAAO,SAAS,cAAc,MAAM;AAGvE,gBAAY,SAAS;AAAA,sBACH,KAAK,OAAO,UAAU;AAAA,sBACtB,KAAK,cAAc,MAAM,kBAAkB,EAAE;AAAA;AAAA,oCAE/B,YAAY,KAAK,oBAAoB,IAAI,CAAC;AAAA,yCACrC,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4EAkB+B,OAAO,yBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA,mEAKzC,OAAO,yBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qEAY9B,OAAO,2BAA2B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sEAYjC,OAAO,kBAAkB;AAAA;AAAA,kDAE7C,OAAO,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8BAUvC,KAAK,cAAc,MAAM,YAAY;AAAA;AAAA;AAAA,mDAGhB,KAAK,cAAc,MAAM,YAAY;AAAA,8CAC1C,OAAO,cAAc;AAAA,8CACrB,OAAO,kBAAkB;AAAA;AAAA;AAAA;AAAA,sBAIjD,KAAK,cAAc,MAAM,iBAAiB,EAAE;AAAA,uBAC3C,OAAO,OAAO,KAAK,OAAO,KAAK;AAAA,MAChD,UAAU,OAAO,OAAO;AAAA,QACtB,eAAe,KAAK,cAAc,MAAM;AAAA,QACxC,QAAQ,KAAK,cAAc;AAAA,QAC3B,mBAAmB,OAAO;AAAA,QAC1B,KAAK;AAAA,QACL,GAAG,KAAK;AAAA;AAAA,MAEV,CAAW;AAAA,IACb,CAAC,CAAC;AACF,WAAO,cAAc,SAAS,IAAI;AAClC,WAAO,kBAAkB,SAAS,QAAQ;AAC1C,UAAM,WAAW,KAAK,OAAO,OAAO,OAAO,SAAS,cAAc,UAAU;AAC5E,aAAS,YAAY,QAAQ;AAC7B,SAAK,gBAAgB,IAAI,OAAO,SAAS,OAAO;AAChD,UAAM,KAAK,OAAO,kBAAkB,KAAK,gBAAgB,KAAK,KAAK,OAAO,KAAK,KAAK,OAAO,MAAM;AACjG,SAAK,cAAc,QAAQ,YAAY,aAAa,KAAK,gBAAgB,KAAK,KAAK,cAAc,OAAO;AAExG,SAAK,gBAAgB,KAAK,KAAK,GAAG,EAAE;AACpC,WAAO,aAAa;AAAA,EACtB;AACF;",
4
+ "sourcesContent": ["import { OperatorExecuterAttrRequire } from './OperatorExecuterAttrRequire';\nimport { ScriptUtils } from '@dooboostore/core-web/script/ScriptUtils';\nimport { RawSet } from '../rawsets/RawSet';\nimport { Render } from '../rawsets/Render';\nimport { AfterCallBack, ElementSource, ExecuteState, ReturnContainer, Source } from './OperatorExecuter';\nimport { ObjectUtils } from '@dooboostore/core/object/ObjectUtils';\n\nexport class DrForOf extends OperatorExecuterAttrRequire<string> {\n constructor(rawSet: RawSet, render: Render, returnContainer: ReturnContainer, elementSource: ElementSource, source: Source, afterCallBack: AfterCallBack) {\n source.operatorAround = undefined;\n super(rawSet, render, returnContainer, elementSource, source, afterCallBack, false);\n }\n\n async executeAttrRequire(attr: string): Promise<ExecuteState> {\n // console.log('\uD0C0\uC9C0\uB3C4\uC54A\uB0D0?')\n const itRandom = RawSet.drItOtherEncoding(this.elementSource.element, 'DrForOf');\n const vars = RawSet.drVarEncoding(this.elementSource.element, this.elementSource.attrs.drVarOption ?? '');\n const newTemp = this.source.config.window.document.createElement('temp');\n\n const variableName = this.elementSource.element.getAttribute(RawSet.DR_VARIABLE_NAME_OPTIONNAME);\n const itemVariableName = this.elementSource.element.getAttribute(RawSet.DR_ITEM_VARIABLE_NAME_OPTIONNAME);\n const itemIndexVariableName = this.elementSource.element.getAttribute(RawSet.DR_ITEM_INDEX_VARIABLE_NAME_OPTIONNAME);\n // console.log('----!', this.elementSource.attrs)\n // ScriptUtils.evalReturn()\n ObjectUtils.Script.evaluate(`\n ${this.render.bindScript}\n ${this.elementSource.attrs.drBeforeOption ?? ''}\n var i = -1; \n const forOf = ${ObjectUtils.Path.toOptionalChainPath(attr)};\n const forOfStr = \\`${attr}\\`.trim();\n // console.log('forOf---',forOf);\n if (forOf) {\n for(const it of forOf) {\n i++;\n var destIt = it;\n if (/\\\\[(.*,?)\\\\],/g.test(forOfStr)) {\n if (typeof it === 'string') {\n destIt = it;\n } else {\n destIt = forOfStr.substring(1, forOfStr.length-1).split(',')[i];\n }\n } else if (forOf.isRange) {\n destIt = it;\n } else {\n destIt = forOfStr + '[' + i +']'\n }\n const n = this.__render.element.cloneNode(true);\n Object.entries(this.__render.drAttr).filter(([k,v]) => k !== 'drForOf' && k !== 'drNextOption' && v).forEach(([k, v]) => n.setAttribute(this.__render.drAttrsOriginName[k], v));\n n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replace(/\\\\#it\\\\#/g, destIt).replace(/\\\\#nearForOfIt\\\\#/g, destIt).replace(/\\\\#it\\\\#/g, destIt).replace(/\\\\#nearForOfIndex\\\\#/g, i)))\n if ('${variableName}') {\n n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replaceAll('#${variableName}#', forOfStr)));\n }\n if ('${itemVariableName}') {\n n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replaceAll('#${itemVariableName}#', destIt)));\n }\n if ('${itemIndexVariableName}') {\n n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replaceAll('#${itemIndexVariableName}#', i)));\n }\n \n const drOptionAttr = n.getAttribute('${RawSet.DR_DETECT_ATTR_OPTIONNAME}');\n if (drOptionAttr) {\n const drOptionAttrResult = $scriptUtils.evaluateReturn(drOptionAttr, this);\n Array.from(Object.entries(drOptionAttrResult??{})).forEach(([k,v])=>{\n if (v === null) {\n n.removeAttribute(k);\n } else {\n n.setAttribute(k,v);\n }\n })\n }\n \n const drOptionFilter = n.getAttribute('${RawSet.DR_DETECT_FILTER_OPTIONNAME}');\n if (drOptionFilter) {\n const drOptionFilterResult = $scriptUtils.evaluateReturn(drOptionFilter, this);\n // console.log('---drforof----', drOptionFilter, drOptionFilterResult)\n if (!drOptionFilterResult) {\n continue;\n }\n }\n\n n.innerHTML = n.innerHTML.replace(/\\\\#it\\\\#/g, destIt).replace(/\\\\#index\\\\#/g, i);\n if ('${variableName}') {\n n.innerHTML = n.innerHTML.replaceAll('#${variableName}#', forOfStr);\n }\n if ('${itemVariableName}') {\n n.innerHTML = n.innerHTML.replaceAll('#${itemVariableName}#', destIt);\n }\n if ('${itemIndexVariableName}') {\n n.innerHTML = n.innerHTML.replaceAll('#${itemIndexVariableName}#', i);\n }\n \n if (this.__render.drStripOption === 'true') {\n Array.from(n.childNodes).forEach(it => this.__render.fag.append(it));\n } else {\n this.__render.fag.append(n);\n }\n \n }\n \n if('${this.elementSource.attrs.drNextOption}' !== 'null') {\n const n = this.__render.element.cloneNode(true);\n Object.entries(this.__render.drAttr).filter(([k,v]) => k !== 'drForOf' && k !== 'drNextOption' && v).forEach(([k, v]) => n.setAttribute(this.__render.drAttrsOriginName[k], v));\n const [name, idx] = '${this.elementSource.attrs.drNextOption}'.split(',');\n n.setAttribute('${RawSet.DR_FOR_OF_NAME}', name + '[' + idx + ']');\n n.setAttribute('${RawSet.DR_NEXT_OPTIONNAME}', name + ',' + (Number(idx) + 1));\n this.__render.fag.append(n);\n }\n }\n ${this.elementSource.attrs.drAfterOption ?? ''}\n `, Object.assign(this.source.obj, {\n __render: Object.freeze({\n drStripOption: this.elementSource.attrs.drStripOption,\n drAttr: this.elementSource.attrs,\n drAttrsOriginName: RawSet.drAttrsOriginName,\n fag: newTemp,\n ...this.render\n // eslint-disable-next-line no-use-before-define\n } as Render)\n }));\n RawSet.drVarDecoding(newTemp, vars);\n RawSet.drItOtherDecoding(newTemp, itRandom);\n const tempalte = this.source.config.window.document.createElement('template');\n tempalte.innerHTML = newTemp.innerHTML;\n this.returnContainer.fag.append(tempalte.content)\n const rr = RawSet.checkPointCreates(this.returnContainer.fag, this.source.obj, this.source.config);\n this.elementSource.element.parentNode?.replaceChild(this.returnContainer.fag, this.elementSource.element);\n // const rrr = rr.flatMap(it => it.render(obj, config));// .flat();\n this.returnContainer.raws.push(...rr)\n return ExecuteState.EXECUTE;\n }\n}\n"],
5
+ "mappings": "AAAA,SAAS,mCAAmC;AAE5C,SAAS,cAAc;AAEvB,SAAuC,oBAA6C;AACpF,SAAS,mBAAmB;AAErB,MAAM,gBAAgB,4BAAoC;AAAA,EAC/D,YAAY,QAAgB,QAAgB,iBAAkC,eAA8B,QAAgB,eAA8B;AACxJ,WAAO,iBAAiB;AACxB,UAAM,QAAQ,QAAQ,iBAAiB,eAAe,QAAQ,eAAe,KAAK;AAAA,EACpF;AAAA,EAEA,MAAM,mBAAmB,MAAqC;AAE5D,UAAM,WAAW,OAAO,kBAAkB,KAAK,cAAc,SAAS,SAAS;AAC/E,UAAM,OAAO,OAAO,cAAc,KAAK,cAAc,SAAS,KAAK,cAAc,MAAM,eAAe,EAAE;AACxG,UAAM,UAAU,KAAK,OAAO,OAAO,OAAO,SAAS,cAAc,MAAM;AAEvE,UAAM,eAAe,KAAK,cAAc,QAAQ,aAAa,OAAO,2BAA2B;AAC/F,UAAM,mBAAmB,KAAK,cAAc,QAAQ,aAAa,OAAO,gCAAgC;AACxG,UAAM,wBAAwB,KAAK,cAAc,QAAQ,aAAa,OAAO,sCAAsC;AAGnH,gBAAY,OAAO,SAAS;AAAA,sBACV,KAAK,OAAO,UAAU;AAAA,sBACtB,KAAK,cAAc,MAAM,kBAAkB,EAAE;AAAA;AAAA,oCAE/B,YAAY,KAAK,oBAAoB,IAAI,CAAC;AAAA,yCACrC,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mCAoBV,YAAY;AAAA,uHACwE,YAAY;AAAA;AAAA,mCAEhG,gBAAgB;AAAA,uHACoE,gBAAgB;AAAA;AAAA,mCAEpG,qBAAqB;AAAA,uHAC+D,qBAAqB;AAAA;AAAA;AAAA,mEAGzE,OAAO,yBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qEAY9B,OAAO,2BAA2B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mCAUpE,YAAY;AAAA,uEACwB,YAAY;AAAA;AAAA,mCAEhD,gBAAgB;AAAA,uEACoB,gBAAgB;AAAA;AAAA,mCAEpD,qBAAqB;AAAA,uEACe,qBAAqB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8BAW9D,KAAK,cAAc,MAAM,YAAY;AAAA;AAAA;AAAA,mDAGhB,KAAK,cAAc,MAAM,YAAY;AAAA,8CAC1C,OAAO,cAAc;AAAA,8CACrB,OAAO,kBAAkB;AAAA;AAAA;AAAA;AAAA,sBAIjD,KAAK,cAAc,MAAM,iBAAiB,EAAE;AAAA,uBAC3C,OAAO,OAAO,KAAK,OAAO,KAAK;AAAA,MAChD,UAAU,OAAO,OAAO;AAAA,QACtB,eAAe,KAAK,cAAc,MAAM;AAAA,QACxC,QAAQ,KAAK,cAAc;AAAA,QAC3B,mBAAmB,OAAO;AAAA,QAC1B,KAAK;AAAA,QACL,GAAG,KAAK;AAAA;AAAA,MAEV,CAAW;AAAA,IACb,CAAC,CAAC;AACF,WAAO,cAAc,SAAS,IAAI;AAClC,WAAO,kBAAkB,SAAS,QAAQ;AAC1C,UAAM,WAAW,KAAK,OAAO,OAAO,OAAO,SAAS,cAAc,UAAU;AAC5E,aAAS,YAAY,QAAQ;AAC7B,SAAK,gBAAgB,IAAI,OAAO,SAAS,OAAO;AAChD,UAAM,KAAK,OAAO,kBAAkB,KAAK,gBAAgB,KAAK,KAAK,OAAO,KAAK,KAAK,OAAO,MAAM;AACjG,SAAK,cAAc,QAAQ,YAAY,aAAa,KAAK,gBAAgB,KAAK,KAAK,cAAc,OAAO;AAExG,SAAK,gBAAgB,KAAK,KAAK,GAAG,EAAE;AACpC,WAAO,aAAa;AAAA,EACtB;AACF;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,4 @@
1
1
  import { OperatorExecuterAttrRequire } from "./OperatorExecuterAttrRequire.js";
2
- import { ScriptUtils } from "@dooboostore/core-web/script/ScriptUtils";
3
2
  import { RawSet } from "../rawsets/RawSet.js";
4
3
  import { ExecuteState } from "./OperatorExecuter.js";
5
4
  import { ObjectUtils } from "@dooboostore/core/object/ObjectUtils";
@@ -12,7 +11,7 @@ class DrIf extends OperatorExecuterAttrRequire {
12
11
  const itRandom = RawSet.drItOtherEncoding(this.elementSource.element, "DrIf");
13
12
  const vars = RawSet.drVarEncoding(this.elementSource.element, this.elementSource.attrs.drVarOption ?? "");
14
13
  const newTemp = this.source.config.window.document.createElement("temp");
15
- const keepgoing = ScriptUtils.evaluate(`
14
+ const keepgoing = ObjectUtils.Script.evaluate(`
16
15
  ${this.render.bindScript}
17
16
  ${this.elementSource.attrs.drBeforeOption ?? ""}
18
17
  if ($rawSet.data === (${ObjectUtils.Path.toOptionalChainPath(attr)})) {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/operators/DrIf.ts"],
4
- "sourcesContent": ["import { OperatorExecuterAttrRequire } from './OperatorExecuterAttrRequire';\nimport { ScriptUtils } from '@dooboostore/core-web/script/ScriptUtils';\nimport { RawSet } from '../rawsets/RawSet';\nimport { Render } from '../rawsets/Render';\nimport { AfterCallBack, ElementSource, ExecuteState, ReturnContainer, Source } from './OperatorExecuter';\nimport { ObjectUtils } from '@dooboostore/core/object/ObjectUtils';\n\nexport class DrIf extends OperatorExecuterAttrRequire<string> {\n constructor(rawSet: RawSet, render: Render, returnContainer: ReturnContainer, elementSource: ElementSource, source: Source, afterCallBack: AfterCallBack) {\n source.operatorAround = undefined;\n super(rawSet, render, returnContainer, elementSource, source, afterCallBack, false);\n }\n\n async executeAttrRequire(attr: string): Promise<ExecuteState> {\n const itRandom = RawSet.drItOtherEncoding(this.elementSource.element, 'DrIf');\n const vars = RawSet.drVarEncoding(this.elementSource.element, this.elementSource.attrs.drVarOption ?? '');\n const newTemp = this.source.config.window.document.createElement('temp');\n // Object.entries(this.__render.drAttr).filter(([k,v]) => k !== 'drIf' && v).forEach(([k, v]) => n.setAttribute(this.__render.drAttrsOriginName[k], v)); <-- \uC774\uBD80\uBD84\uC740 \uB2E4\uB978 attr\uC5D0\uB3C4 \uC801\uC6A9\uC744 \uD560\uC9C0\uB9D0\uC9C0 \uC0DD\uAC01\uD574\uC57C\uB428 \uC5D8\uB9AC\uBA3C\uD2B8 \uC874\uC7AC\uC720\uBB34\uC5D0 \uB530\uB77C\uC11C \uC801\uC6A9\uC744 \uD560\uC9C0\uB9D0\uC9C0 \uACB0\uC815\uD574\uC57C\uB428\n const keepgoing = ScriptUtils.evaluate(`\n ${this.render.bindScript}\n ${this.elementSource.attrs.drBeforeOption ?? ''}\n if ($rawSet.data === (${ObjectUtils.Path.toOptionalChainPath(attr)})) {\n return false;\n }\n $rawSet.data = ${ObjectUtils.Path.toOptionalChainPath(attr)};\n if($rawSet.data) {\n const n = $element.cloneNode(true);\n Object.entries(this.__render.drAttr).filter(([k,v]) => k !== 'drIf' && v).forEach(([k, v]) => n.setAttribute(this.__render.drAttrsOriginName[k], v));\n var destIt = ${this.elementSource.attrs.drItOption};\n if (destIt !== undefined) {\n // \uC5EC\uAE30\uAC00 ..\uC544\uC8FC \uD5DB\uAC08\uB9AC\uB294\uB370...\n Array.from(n.getAttributeNames()).forEach(it => n.setAttribute(it, n.getAttribute(it).replace(/\\\\#DrIFIt\\\\#/g, destIt)))\n n.innerHTML = n.innerHTML.replace(/\\\\#DrIFIt\\\\#/g, destIt);\n }\n if (this.__render.drStripOption === 'true') {\n Array.from(n.childNodes).forEach(it => this.__render.fag.append(it));\n } else {\n this.__render.fag.append(n);\n }\n }\n ${this.elementSource.attrs.drAfterOption ?? ''};\n return true;\n `, Object.assign(this.source.obj,\n {\n __render: Object.freeze({\n fag: newTemp,\n drAttr: this.elementSource.attrs,\n drAttrsOriginName: RawSet.drAttrsOriginName,\n drStripOption: this.elementSource.attrs.drStripOption,\n ...this.render\n } as Render)\n }\n ));\n // TODO: \uBB50\uC9C0?? \uC9C0\uC6CC\uC57C\uB418\uB294\uAC70 \uC544\uB2CC\uAC00?\n if (keepgoing === false) {\n return ExecuteState.STOP;\n }\n RawSet.drVarDecoding(newTemp, vars);\n RawSet.drItOtherDecoding(newTemp, itRandom);\n // const bypass = (newTemp.innerHTML ?? '').trim().length <= 0;\n const tempalte = this.source.config.window.document.createElement('template');\n tempalte.innerHTML = newTemp.innerHTML;\n this.returnContainer.fag.append(tempalte.content);\n const rr = RawSet.checkPointCreates(this.returnContainer.fag, this.source.obj, this.source.config);\n this.elementSource.element.parentNode?.replaceChild(this.returnContainer.fag, this.elementSource.element);\n this.returnContainer.raws.push(...rr);\n return ExecuteState.EXECUTE;\n }\n}\n"],
5
- "mappings": "AAAA,SAAS,mCAAmC;AAC5C,SAAS,mBAAmB;AAC5B,SAAS,cAAc;AAEvB,SAAuC,oBAA6C;AACpF,SAAS,mBAAmB;AAErB,MAAM,aAAa,4BAAoC;AAAA,EAC5D,YAAY,QAAgB,QAAgB,iBAAkC,eAA8B,QAAgB,eAA8B;AACxJ,WAAO,iBAAiB;AACxB,UAAM,QAAQ,QAAQ,iBAAiB,eAAe,QAAQ,eAAe,KAAK;AAAA,EACpF;AAAA,EAEA,MAAM,mBAAmB,MAAqC;AAC5D,UAAM,WAAW,OAAO,kBAAkB,KAAK,cAAc,SAAS,MAAM;AAC5E,UAAM,OAAO,OAAO,cAAc,KAAK,cAAc,SAAS,KAAK,cAAc,MAAM,eAAe,EAAE;AACxG,UAAM,UAAU,KAAK,OAAO,OAAO,OAAO,SAAS,cAAc,MAAM;AAEvE,UAAM,YAAY,YAAY,SAAS;AAAA,kBACzB,KAAK,OAAO,UAAU;AAAA,kBACtB,KAAK,cAAc,MAAM,kBAAkB,EAAE;AAAA,wCACvB,YAAY,KAAK,oBAAoB,IAAI,CAAC;AAAA;AAAA;AAAA,iCAGjD,YAAY,KAAK,oBAAoB,IAAI,CAAC;AAAA;AAAA;AAAA;AAAA,mCAIxC,KAAK,cAAc,MAAM,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAYpD,KAAK,cAAc,MAAM,iBAAiB,EAAE;AAAA;AAAA,mBAE3C,OAAO;AAAA,MAAO,KAAK,OAAO;AAAA,MACvC;AAAA,QACE,UAAU,OAAO,OAAO;AAAA,UACtB,KAAK;AAAA,UACL,QAAQ,KAAK,cAAc;AAAA,UAC3B,mBAAmB,OAAO;AAAA,UAC1B,eAAe,KAAK,cAAc,MAAM;AAAA,UACxC,GAAG,KAAK;AAAA,QACV,CAAW;AAAA,MACb;AAAA,IACF,CAAC;AAED,QAAI,cAAc,OAAO;AACvB,aAAO,aAAa;AAAA,IACtB;AACA,WAAO,cAAc,SAAS,IAAI;AAClC,WAAO,kBAAkB,SAAS,QAAQ;AAE1C,UAAM,WAAW,KAAK,OAAO,OAAO,OAAO,SAAS,cAAc,UAAU;AAC5E,aAAS,YAAY,QAAQ;AAC7B,SAAK,gBAAgB,IAAI,OAAO,SAAS,OAAO;AAChD,UAAM,KAAK,OAAO,kBAAkB,KAAK,gBAAgB,KAAK,KAAK,OAAO,KAAK,KAAK,OAAO,MAAM;AACjG,SAAK,cAAc,QAAQ,YAAY,aAAa,KAAK,gBAAgB,KAAK,KAAK,cAAc,OAAO;AACxG,SAAK,gBAAgB,KAAK,KAAK,GAAG,EAAE;AACpC,WAAO,aAAa;AAAA,EACtB;AACF;",
4
+ "sourcesContent": ["import { OperatorExecuterAttrRequire } from './OperatorExecuterAttrRequire';\nimport { ScriptUtils } from '@dooboostore/core-web/script/ScriptUtils';\nimport { RawSet } from '../rawsets/RawSet';\nimport { Render } from '../rawsets/Render';\nimport { AfterCallBack, ElementSource, ExecuteState, ReturnContainer, Source } from './OperatorExecuter';\nimport { ObjectUtils } from '@dooboostore/core/object/ObjectUtils';\n\nexport class DrIf extends OperatorExecuterAttrRequire<string> {\n constructor(rawSet: RawSet, render: Render, returnContainer: ReturnContainer, elementSource: ElementSource, source: Source, afterCallBack: AfterCallBack) {\n source.operatorAround = undefined;\n super(rawSet, render, returnContainer, elementSource, source, afterCallBack, false);\n }\n\n async executeAttrRequire(attr: string): Promise<ExecuteState> {\n const itRandom = RawSet.drItOtherEncoding(this.elementSource.element, 'DrIf');\n const vars = RawSet.drVarEncoding(this.elementSource.element, this.elementSource.attrs.drVarOption ?? '');\n const newTemp = this.source.config.window.document.createElement('temp');\n // Object.entries(this.__render.drAttr).filter(([k,v]) => k !== 'drIf' && v).forEach(([k, v]) => n.setAttribute(this.__render.drAttrsOriginName[k], v)); <-- \uC774\uBD80\uBD84\uC740 \uB2E4\uB978 attr\uC5D0\uB3C4 \uC801\uC6A9\uC744 \uD560\uC9C0\uB9D0\uC9C0 \uC0DD\uAC01\uD574\uC57C\uB428 \uC5D8\uB9AC\uBA3C\uD2B8 \uC874\uC7AC\uC720\uBB34\uC5D0 \uB530\uB77C\uC11C \uC801\uC6A9\uC744 \uD560\uC9C0\uB9D0\uC9C0 \uACB0\uC815\uD574\uC57C\uB428\n const keepgoing = ObjectUtils.Script.evaluate(`\n ${this.render.bindScript}\n ${this.elementSource.attrs.drBeforeOption ?? ''}\n if ($rawSet.data === (${ObjectUtils.Path.toOptionalChainPath(attr)})) {\n return false;\n }\n $rawSet.data = ${ObjectUtils.Path.toOptionalChainPath(attr)};\n if($rawSet.data) {\n const n = $element.cloneNode(true);\n Object.entries(this.__render.drAttr).filter(([k,v]) => k !== 'drIf' && v).forEach(([k, v]) => n.setAttribute(this.__render.drAttrsOriginName[k], v));\n var destIt = ${this.elementSource.attrs.drItOption};\n if (destIt !== undefined) {\n // \uC5EC\uAE30\uAC00 ..\uC544\uC8FC \uD5DB\uAC08\uB9AC\uB294\uB370...\n Array.from(n.getAttributeNames()).forEach(it => n.setAttribute(it, n.getAttribute(it).replace(/\\\\#DrIFIt\\\\#/g, destIt)))\n n.innerHTML = n.innerHTML.replace(/\\\\#DrIFIt\\\\#/g, destIt);\n }\n if (this.__render.drStripOption === 'true') {\n Array.from(n.childNodes).forEach(it => this.__render.fag.append(it));\n } else {\n this.__render.fag.append(n);\n }\n }\n ${this.elementSource.attrs.drAfterOption ?? ''};\n return true;\n `, Object.assign(this.source.obj,\n {\n __render: Object.freeze({\n fag: newTemp,\n drAttr: this.elementSource.attrs,\n drAttrsOriginName: RawSet.drAttrsOriginName,\n drStripOption: this.elementSource.attrs.drStripOption,\n ...this.render\n } as Render)\n }\n ));\n // TODO: \uBB50\uC9C0?? \uC9C0\uC6CC\uC57C\uB418\uB294\uAC70 \uC544\uB2CC\uAC00?\n if (keepgoing === false) {\n return ExecuteState.STOP;\n }\n RawSet.drVarDecoding(newTemp, vars);\n RawSet.drItOtherDecoding(newTemp, itRandom);\n // const bypass = (newTemp.innerHTML ?? '').trim().length <= 0;\n const tempalte = this.source.config.window.document.createElement('template');\n tempalte.innerHTML = newTemp.innerHTML;\n this.returnContainer.fag.append(tempalte.content);\n const rr = RawSet.checkPointCreates(this.returnContainer.fag, this.source.obj, this.source.config);\n this.elementSource.element.parentNode?.replaceChild(this.returnContainer.fag, this.elementSource.element);\n this.returnContainer.raws.push(...rr);\n return ExecuteState.EXECUTE;\n }\n}\n"],
5
+ "mappings": "AAAA,SAAS,mCAAmC;AAE5C,SAAS,cAAc;AAEvB,SAAuC,oBAA6C;AACpF,SAAS,mBAAmB;AAErB,MAAM,aAAa,4BAAoC;AAAA,EAC5D,YAAY,QAAgB,QAAgB,iBAAkC,eAA8B,QAAgB,eAA8B;AACxJ,WAAO,iBAAiB;AACxB,UAAM,QAAQ,QAAQ,iBAAiB,eAAe,QAAQ,eAAe,KAAK;AAAA,EACpF;AAAA,EAEA,MAAM,mBAAmB,MAAqC;AAC5D,UAAM,WAAW,OAAO,kBAAkB,KAAK,cAAc,SAAS,MAAM;AAC5E,UAAM,OAAO,OAAO,cAAc,KAAK,cAAc,SAAS,KAAK,cAAc,MAAM,eAAe,EAAE;AACxG,UAAM,UAAU,KAAK,OAAO,OAAO,OAAO,SAAS,cAAc,MAAM;AAEvE,UAAM,YAAY,YAAY,OAAO,SAAS;AAAA,kBAChC,KAAK,OAAO,UAAU;AAAA,kBACtB,KAAK,cAAc,MAAM,kBAAkB,EAAE;AAAA,wCACvB,YAAY,KAAK,oBAAoB,IAAI,CAAC;AAAA;AAAA;AAAA,iCAGjD,YAAY,KAAK,oBAAoB,IAAI,CAAC;AAAA;AAAA;AAAA;AAAA,mCAIxC,KAAK,cAAc,MAAM,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAYpD,KAAK,cAAc,MAAM,iBAAiB,EAAE;AAAA;AAAA,mBAE3C,OAAO;AAAA,MAAO,KAAK,OAAO;AAAA,MACvC;AAAA,QACE,UAAU,OAAO,OAAO;AAAA,UACtB,KAAK;AAAA,UACL,QAAQ,KAAK,cAAc;AAAA,UAC3B,mBAAmB,OAAO;AAAA,UAC1B,eAAe,KAAK,cAAc,MAAM;AAAA,UACxC,GAAG,KAAK;AAAA,QACV,CAAW;AAAA,MACb;AAAA,IACF,CAAC;AAED,QAAI,cAAc,OAAO;AACvB,aAAO,aAAa;AAAA,IACtB;AACA,WAAO,cAAc,SAAS,IAAI;AAClC,WAAO,kBAAkB,SAAS,QAAQ;AAE1C,UAAM,WAAW,KAAK,OAAO,OAAO,OAAO,SAAS,cAAc,UAAU;AAC5E,aAAS,YAAY,QAAQ;AAC7B,SAAK,gBAAgB,IAAI,OAAO,SAAS,OAAO;AAChD,UAAM,KAAK,OAAO,kBAAkB,KAAK,gBAAgB,KAAK,KAAK,OAAO,KAAK,KAAK,OAAO,MAAM;AACjG,SAAK,cAAc,QAAQ,YAAY,aAAa,KAAK,gBAAgB,KAAK,KAAK,cAAc,OAAO;AACxG,SAAK,gBAAgB,KAAK,KAAK,GAAG,EAAE;AACpC,WAAO,aAAa;AAAA,EACtB;AACF;",
6
6
  "names": []
7
7
  }
@@ -1,14 +1,14 @@
1
1
  import { OperatorExecuterAttrRequire } from "./OperatorExecuterAttrRequire.js";
2
- import { ScriptUtils } from "@dooboostore/core-web/script/ScriptUtils";
3
2
  import { RawSet } from "../rawsets/RawSet.js";
4
3
  import { ExecuteState } from "./OperatorExecuter.js";
4
+ import { ObjectUtils } from "@dooboostore/core/object/ObjectUtils";
5
5
  class DrInnerText extends OperatorExecuterAttrRequire {
6
6
  constructor(rawSet, render, returnContainer, elementSource, source, afterCallBack) {
7
7
  super(rawSet, render, returnContainer, elementSource, source, afterCallBack, false);
8
8
  }
9
9
  async executeAttrRequire(attr) {
10
10
  const newTemp = this.source.config.window.document.createElement("temp");
11
- ScriptUtils.evaluate(`
11
+ ObjectUtils.Script.evaluate(`
12
12
  ${this.render.bindScript}
13
13
  const n = $element.cloneNode(true);
14
14
  ${this.elementSource.attrs.drBeforeOption ?? ""}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/operators/DrInnerText.ts"],
4
- "sourcesContent": ["import {OperatorExecuterAttrRequire} from './OperatorExecuterAttrRequire';\nimport {ScriptUtils} from '@dooboostore/core-web/script/ScriptUtils';\nimport {RawSet} from '../rawsets/RawSet';\nimport {Render} from '../rawsets/Render';\nimport {AfterCallBack, ElementSource, ExecuteState, ReturnContainer, Source} from './OperatorExecuter';\n\nexport class DrInnerText extends OperatorExecuterAttrRequire<string> {\n constructor(rawSet: RawSet, render: Render, returnContainer: ReturnContainer, elementSource: ElementSource, source: Source, afterCallBack: AfterCallBack) {\n super(rawSet, render, returnContainer, elementSource, source, afterCallBack, false);\n }\n\n async executeAttrRequire(attr: string): Promise<ExecuteState> {\n const newTemp = this.source.config.window.document.createElement('temp');\n ScriptUtils.evaluate(` \n ${this.render.bindScript}\n const n = $element.cloneNode(true); \n ${this.elementSource.attrs.drBeforeOption ?? ''}\n n.innerText = ${attr};\n if (this.__render.drStripOption === 'true') {\n Array.from(n.childNodes).forEach(it => this.__render.fag.append(it));\n } else {\n this.__render.fag.append(n);\n }\n ${this.elementSource.attrs.drAfterOption ?? ''}\n `, Object.assign(this.source.obj, {\n __render: Object.freeze({\n drStripOption: this.elementSource.attrs.drStripOption,\n fag: newTemp,\n ...this.render\n } as Render)\n }));\n const tempalte = this.source.config.window.document.createElement('template');\n tempalte.innerHTML = newTemp.innerHTML;\n this.returnContainer.fag.append(tempalte.content);\n const rr = RawSet.checkPointCreates(this.returnContainer.fag, this.source.obj, this.source.config);\n this.elementSource.element.parentNode?.replaceChild(this.returnContainer.fag, this.elementSource.element);\n this.returnContainer.raws.push(...rr);\n return ExecuteState.EXECUTE;\n }\n}\n"],
5
- "mappings": "AAAA,SAAQ,mCAAkC;AAC1C,SAAQ,mBAAkB;AAC1B,SAAQ,cAAa;AAErB,SAAsC,oBAA4C;AAE3E,MAAM,oBAAoB,4BAAoC;AAAA,EACjE,YAAY,QAAgB,QAAgB,iBAAkC,eAA8B,QAAgB,eAA8B;AACtJ,UAAM,QAAQ,QAAQ,iBAAiB,eAAe,QAAQ,eAAe,KAAK;AAAA,EACtF;AAAA,EAEA,MAAM,mBAAmB,MAAqC;AAC1D,UAAM,UAAU,KAAK,OAAO,OAAO,OAAO,SAAS,cAAc,MAAM;AACvE,gBAAY,SAAS;AAAA,0BACH,KAAK,OAAO,UAAU;AAAA;AAAA,0BAEtB,KAAK,cAAc,MAAM,kBAAkB,EAAE;AAAA,wCAC/B,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAMlB,KAAK,cAAc,MAAM,iBAAiB,EAAE;AAAA,uBAC/C,OAAO,OAAO,KAAK,OAAO,KAAK;AAAA,MAC1C,UAAU,OAAO,OAAO;AAAA,QACpB,eAAe,KAAK,cAAc,MAAM;AAAA,QACxC,KAAK;AAAA,QACL,GAAG,KAAK;AAAA,MACZ,CAAW;AAAA,IACf,CAAC,CAAC;AACF,UAAM,WAAW,KAAK,OAAO,OAAO,OAAO,SAAS,cAAc,UAAU;AAC5E,aAAS,YAAY,QAAQ;AAC7B,SAAK,gBAAgB,IAAI,OAAO,SAAS,OAAO;AAChD,UAAM,KAAK,OAAO,kBAAkB,KAAK,gBAAgB,KAAK,KAAK,OAAO,KAAK,KAAK,OAAO,MAAM;AACjG,SAAK,cAAc,QAAQ,YAAY,aAAa,KAAK,gBAAgB,KAAK,KAAK,cAAc,OAAO;AACxG,SAAK,gBAAgB,KAAK,KAAK,GAAG,EAAE;AACpC,WAAO,aAAa;AAAA,EACxB;AACJ;",
4
+ "sourcesContent": ["import {OperatorExecuterAttrRequire} from './OperatorExecuterAttrRequire';\nimport {ScriptUtils} from '@dooboostore/core-web/script/ScriptUtils';\nimport {RawSet} from '../rawsets/RawSet';\nimport {Render} from '../rawsets/Render';\nimport {AfterCallBack, ElementSource, ExecuteState, ReturnContainer, Source} from './OperatorExecuter';\nimport {ObjectUtils} from '@dooboostore/core/object/ObjectUtils';\n\nexport class DrInnerText extends OperatorExecuterAttrRequire<string> {\n constructor(rawSet: RawSet, render: Render, returnContainer: ReturnContainer, elementSource: ElementSource, source: Source, afterCallBack: AfterCallBack) {\n super(rawSet, render, returnContainer, elementSource, source, afterCallBack, false);\n }\n\n async executeAttrRequire(attr: string): Promise<ExecuteState> {\n const newTemp = this.source.config.window.document.createElement('temp');\n ObjectUtils.Script.evaluate(` \n ${this.render.bindScript}\n const n = $element.cloneNode(true); \n ${this.elementSource.attrs.drBeforeOption ?? ''}\n n.innerText = ${attr};\n if (this.__render.drStripOption === 'true') {\n Array.from(n.childNodes).forEach(it => this.__render.fag.append(it));\n } else {\n this.__render.fag.append(n);\n }\n ${this.elementSource.attrs.drAfterOption ?? ''}\n `, Object.assign(this.source.obj, {\n __render: Object.freeze({\n drStripOption: this.elementSource.attrs.drStripOption,\n fag: newTemp,\n ...this.render\n } as Render)\n }));\n const tempalte = this.source.config.window.document.createElement('template');\n tempalte.innerHTML = newTemp.innerHTML;\n this.returnContainer.fag.append(tempalte.content);\n const rr = RawSet.checkPointCreates(this.returnContainer.fag, this.source.obj, this.source.config);\n this.elementSource.element.parentNode?.replaceChild(this.returnContainer.fag, this.elementSource.element);\n this.returnContainer.raws.push(...rr);\n return ExecuteState.EXECUTE;\n }\n}\n"],
5
+ "mappings": "AAAA,SAAQ,mCAAkC;AAE1C,SAAQ,cAAa;AAErB,SAAsC,oBAA4C;AAClF,SAAQ,mBAAkB;AAEnB,MAAM,oBAAoB,4BAAoC;AAAA,EACjE,YAAY,QAAgB,QAAgB,iBAAkC,eAA8B,QAAgB,eAA8B;AACtJ,UAAM,QAAQ,QAAQ,iBAAiB,eAAe,QAAQ,eAAe,KAAK;AAAA,EACtF;AAAA,EAEA,MAAM,mBAAmB,MAAqC;AAC1D,UAAM,UAAU,KAAK,OAAO,OAAO,OAAO,SAAS,cAAc,MAAM;AACvE,gBAAY,OAAO,SAAS;AAAA,0BACV,KAAK,OAAO,UAAU;AAAA;AAAA,0BAEtB,KAAK,cAAc,MAAM,kBAAkB,EAAE;AAAA,wCAC/B,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAMlB,KAAK,cAAc,MAAM,iBAAiB,EAAE;AAAA,uBAC/C,OAAO,OAAO,KAAK,OAAO,KAAK;AAAA,MAC1C,UAAU,OAAO,OAAO;AAAA,QACpB,eAAe,KAAK,cAAc,MAAM;AAAA,QACxC,KAAK;AAAA,QACL,GAAG,KAAK;AAAA,MACZ,CAAW;AAAA,IACf,CAAC,CAAC;AACF,UAAM,WAAW,KAAK,OAAO,OAAO,OAAO,SAAS,cAAc,UAAU;AAC5E,aAAS,YAAY,QAAQ;AAC7B,SAAK,gBAAgB,IAAI,OAAO,SAAS,OAAO;AAChD,UAAM,KAAK,OAAO,kBAAkB,KAAK,gBAAgB,KAAK,KAAK,OAAO,KAAK,KAAK,OAAO,MAAM;AACjG,SAAK,cAAc,QAAQ,YAAY,aAAa,KAAK,gBAAgB,KAAK,KAAK,cAAc,OAAO;AACxG,SAAK,gBAAgB,KAAK,KAAK,GAAG,EAAE;AACpC,WAAO,aAAa;AAAA,EACxB;AACJ;",
6
6
  "names": []
7
7
  }