taggedjs 2.5.23 → 2.6.1

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 (386) hide show
  1. package/bundle.js +1 -1
  2. package/bundle.js.gz +0 -0
  3. package/bundle.js.map +1 -1
  4. package/bundle.js.map.gz +0 -0
  5. package/js/RegularValue.type.d.ts +1 -0
  6. package/js/RegularValue.type.js +2 -0
  7. package/js/RegularValue.type.js.map +1 -0
  8. package/js/alterProp.function.d.ts +8 -8
  9. package/js/alterProp.function.js +97 -64
  10. package/js/alterProp.function.js.map +1 -1
  11. package/js/buildClones.function.d.ts +2 -0
  12. package/js/buildClones.function.js +12 -0
  13. package/js/buildClones.function.js.map +1 -0
  14. package/js/deepFunctions.d.ts +2 -2
  15. package/js/deepFunctions.js +40 -26
  16. package/js/deepFunctions.js.map +1 -1
  17. package/js/index.d.ts +9 -13
  18. package/js/index.js +9 -14
  19. package/js/index.js.map +1 -1
  20. package/js/interpolations/afterInterpolateElement.function.d.ts +3 -3
  21. package/js/interpolations/afterInterpolateElement.function.js +6 -5
  22. package/js/interpolations/afterInterpolateElement.function.js.map +1 -1
  23. package/js/interpolations/attributes/ElementTargetEvent.interface.d.ts +6 -0
  24. package/js/interpolations/attributes/ElementTargetEvent.interface.js +2 -0
  25. package/js/interpolations/attributes/ElementTargetEvent.interface.js.map +1 -0
  26. package/js/interpolations/attributes/addSupportEventListener.function.d.ts +3 -0
  27. package/js/interpolations/attributes/addSupportEventListener.function.js +42 -0
  28. package/js/interpolations/attributes/addSupportEventListener.function.js.map +1 -0
  29. package/js/interpolations/attributes/bindSubjectCallback.function.d.ts +13 -0
  30. package/js/interpolations/attributes/bindSubjectCallback.function.js +74 -0
  31. package/js/interpolations/attributes/bindSubjectCallback.function.js.map +1 -0
  32. package/js/interpolations/attributes/elementInitCheck.d.ts +2 -0
  33. package/js/interpolations/attributes/elementInitCheck.js +18 -0
  34. package/js/interpolations/attributes/elementInitCheck.js.map +1 -0
  35. package/js/interpolations/attributes/getUpTags.function.d.ts +2 -0
  36. package/js/interpolations/attributes/getUpTags.function.js +35 -0
  37. package/js/interpolations/attributes/getUpTags.function.js.map +1 -0
  38. package/js/interpolations/attributes/howToSetInputValue.function.d.ts +2 -0
  39. package/js/interpolations/attributes/howToSetInputValue.function.js +11 -0
  40. package/js/interpolations/attributes/howToSetInputValue.function.js.map +1 -0
  41. package/js/interpolations/attributes/isSpecialAttribute.function.d.ts +3 -0
  42. package/js/interpolations/attributes/isSpecialAttribute.function.js +26 -0
  43. package/js/interpolations/attributes/isSpecialAttribute.function.js.map +1 -0
  44. package/js/interpolations/attributes/processAttribute.function.d.ts +19 -0
  45. package/js/interpolations/attributes/processAttribute.function.js +175 -0
  46. package/js/interpolations/attributes/processAttribute.function.js.map +1 -0
  47. package/js/interpolations/attributes/processAttributeCallback.function.d.ts +3 -0
  48. package/js/interpolations/attributes/processAttributeCallback.function.js +12 -0
  49. package/js/interpolations/attributes/processAttributeCallback.function.js.map +1 -0
  50. package/js/interpolations/attributes/processNameValueAttribute.function.d.ts +7 -0
  51. package/js/interpolations/attributes/processNameValueAttribute.function.js +24 -0
  52. package/js/interpolations/attributes/processNameValueAttribute.function.js.map +1 -0
  53. package/js/interpolations/attributes/renderTagArray.function.d.ts +2 -0
  54. package/js/interpolations/attributes/renderTagArray.function.js +17 -0
  55. package/js/interpolations/attributes/renderTagArray.function.js.map +1 -0
  56. package/js/interpolations/attributes/specialAttribute.d.ts +2 -0
  57. package/js/interpolations/attributes/specialAttribute.js +44 -0
  58. package/js/interpolations/attributes/specialAttribute.js.map +1 -0
  59. package/js/interpolations/bindSubjectCallback.function.d.ts +12 -5
  60. package/js/interpolations/bindSubjectCallback.function.js +48 -40
  61. package/js/interpolations/bindSubjectCallback.function.js.map +1 -1
  62. package/js/interpolations/index.d.ts +1 -0
  63. package/js/interpolations/index.js +2 -0
  64. package/js/interpolations/index.js.map +1 -0
  65. package/js/interpolations/interpolateAttributes.d.ts +1 -3
  66. package/js/interpolations/interpolateAttributes.js +3 -19
  67. package/js/interpolations/interpolateAttributes.js.map +1 -1
  68. package/js/interpolations/interpolateContentTemplates.d.ts +3 -7
  69. package/js/interpolations/interpolateContentTemplates.js +16 -12
  70. package/js/interpolations/interpolateContentTemplates.js.map +1 -1
  71. package/js/interpolations/interpolateElement.d.ts +4 -6
  72. package/js/interpolations/interpolateElement.js +4 -13
  73. package/js/interpolations/interpolateElement.js.map +1 -1
  74. package/js/interpolations/interpolateTemplate.d.ts +6 -12
  75. package/js/interpolations/interpolateTemplate.js +1 -95
  76. package/js/interpolations/interpolateTemplate.js.map +1 -1
  77. package/js/interpolations/interpolations.d.ts +0 -3
  78. package/js/interpolations/interpolations.js +1 -17
  79. package/js/interpolations/interpolations.js.map +1 -1
  80. package/js/interpolations/optimizers/LikeObjectElement.type.d.ts +15 -0
  81. package/js/interpolations/optimizers/LikeObjectElement.type.js +2 -0
  82. package/js/interpolations/optimizers/LikeObjectElement.type.js.map +1 -0
  83. package/js/interpolations/optimizers/ObjectNode.types.d.ts +38 -0
  84. package/js/interpolations/optimizers/ObjectNode.types.js +2 -0
  85. package/js/interpolations/optimizers/ObjectNode.types.js.map +1 -0
  86. package/js/interpolations/optimizers/attachDomElements.function.d.ts +13 -0
  87. package/js/interpolations/optimizers/attachDomElements.function.js +107 -0
  88. package/js/interpolations/optimizers/attachDomElements.function.js.map +1 -0
  89. package/js/interpolations/optimizers/exchangeParsedForValues.function.d.ts +15 -0
  90. package/js/interpolations/optimizers/exchangeParsedForValues.function.js +2 -0
  91. package/js/interpolations/optimizers/exchangeParsedForValues.function.js.map +1 -0
  92. package/js/interpolations/optimizers/htmlInterpolationToDomMeta.function.d.ts +12 -0
  93. package/js/interpolations/optimizers/htmlInterpolationToDomMeta.function.js +201 -0
  94. package/js/interpolations/optimizers/htmlInterpolationToDomMeta.function.js.map +1 -0
  95. package/js/interpolations/optimizers/metaAttachDomElements.function.d.ts +12 -0
  96. package/js/interpolations/optimizers/metaAttachDomElements.function.js +89 -0
  97. package/js/interpolations/optimizers/metaAttachDomElements.function.js.map +1 -0
  98. package/js/interpolations/optimizers/replacePlaceholders.function.d.ts +3 -0
  99. package/js/interpolations/optimizers/replacePlaceholders.function.js +71 -0
  100. package/js/interpolations/optimizers/replacePlaceholders.function.js.map +1 -0
  101. package/js/interpolations/optimizers/restorePlaceholders.function.d.ts +3 -0
  102. package/js/interpolations/optimizers/restorePlaceholders.function.js +40 -0
  103. package/js/interpolations/optimizers/restorePlaceholders.function.js.map +1 -0
  104. package/js/interpolations/optimizers/test.function.d.ts +10 -0
  105. package/js/interpolations/optimizers/test.function.js +19 -0
  106. package/js/interpolations/optimizers/test.function.js.map +1 -0
  107. package/js/interpolations/processAttribute.function.d.ts +14 -4
  108. package/js/interpolations/processAttribute.function.js +129 -88
  109. package/js/interpolations/processAttribute.function.js.map +1 -1
  110. package/js/interpolations/processSubscriptionUpdate.function.d.ts +4 -0
  111. package/js/interpolations/processSubscriptionUpdate.function.js +14 -0
  112. package/js/interpolations/processSubscriptionUpdate.function.js.map +1 -0
  113. package/js/interpolations/scanTextAreaValue.function.d.ts +2 -2
  114. package/js/interpolations/scanTextAreaValue.function.js +11 -6
  115. package/js/interpolations/scanTextAreaValue.function.js.map +1 -1
  116. package/js/interpolations/specialAttribute.js +20 -9
  117. package/js/interpolations/specialAttribute.js.map +1 -1
  118. package/js/interpolations/subscribeToTemplate.function.d.ts +13 -0
  119. package/js/interpolations/subscribeToTemplate.function.js +27 -0
  120. package/js/interpolations/subscribeToTemplate.function.js.map +1 -0
  121. package/js/isInstance.d.ts +10 -6
  122. package/js/isInstance.js +32 -18
  123. package/js/isInstance.js.map +1 -1
  124. package/js/render.js +17 -4
  125. package/js/render.js.map +1 -1
  126. package/js/state/callbackMaker.function.d.ts +1 -1
  127. package/js/state/callbackMaker.function.js +25 -35
  128. package/js/state/callbackMaker.function.js.map +1 -1
  129. package/js/state/callbackStateUpdate.function.d.ts +3 -3
  130. package/js/state/callbackStateUpdate.function.js +9 -8
  131. package/js/state/callbackStateUpdate.function.js.map +1 -1
  132. package/js/state/children.js +5 -5
  133. package/js/state/children.js.map +1 -1
  134. package/js/state/getCallbackValue.function.d.ts +4 -0
  135. package/js/state/getCallbackValue.function.js +10 -0
  136. package/js/state/getCallbackValue.function.js.map +1 -0
  137. package/js/state/getStateValue.function.d.ts +2 -0
  138. package/js/state/getStateValue.function.js +24 -0
  139. package/js/state/getStateValue.function.js.map +1 -0
  140. package/js/state/handleProviderChanges.function.d.ts +8 -2
  141. package/js/state/handleProviderChanges.function.js +9 -20
  142. package/js/state/handleProviderChanges.function.js.map +1 -1
  143. package/js/state/index.d.ts +2 -3
  144. package/js/state/index.js +2 -2
  145. package/js/state/index.js.map +1 -1
  146. package/js/state/letState.function.d.ts +2 -0
  147. package/js/state/letState.function.js +28 -28
  148. package/js/state/letState.function.js.map +1 -1
  149. package/js/state/onDestroy.js +4 -3
  150. package/js/state/onDestroy.js.map +1 -1
  151. package/js/state/providers.d.ts +3 -4
  152. package/js/state/providers.js +26 -21
  153. package/js/state/providers.js.map +1 -1
  154. package/js/state/providersChangeCheck.function.d.ts +2 -2
  155. package/js/state/providersChangeCheck.function.js +11 -8
  156. package/js/state/providersChangeCheck.function.js.map +1 -1
  157. package/js/state/setUse.function.d.ts +7 -17
  158. package/js/state/setUse.function.js +12 -13
  159. package/js/state/setUse.function.js.map +1 -1
  160. package/js/state/state.function.js +2 -47
  161. package/js/state/state.function.js.map +1 -1
  162. package/js/state/state.types.d.ts +8 -0
  163. package/js/state/state.types.js +2 -0
  164. package/js/state/state.types.js.map +1 -0
  165. package/js/state/state.utils.d.ts +13 -12
  166. package/js/state/state.utils.js +37 -68
  167. package/js/state/state.utils.js.map +1 -1
  168. package/js/state/stateHandlers.d.ts +2 -0
  169. package/js/state/stateHandlers.js +36 -0
  170. package/js/state/stateHandlers.js.map +1 -0
  171. package/js/state/subject.function.js +16 -12
  172. package/js/state/subject.function.js.map +1 -1
  173. package/js/state/syncStates.function.d.ts +1 -1
  174. package/js/state/syncStates.function.js +8 -5
  175. package/js/state/syncStates.function.js.map +1 -1
  176. package/js/state/watch.function.js +9 -9
  177. package/js/state/watch.function.js.map +1 -1
  178. package/js/subject/Subject.class.d.ts +11 -4
  179. package/js/subject/Subject.class.js +39 -20
  180. package/js/subject/Subject.class.js.map +1 -1
  181. package/js/subject/ValueSubject.d.ts +5 -0
  182. package/js/subject/ValueSubject.js +15 -1
  183. package/js/subject/ValueSubject.js.map +1 -1
  184. package/js/subject/combineLatest.function.js +5 -3
  185. package/js/subject/combineLatest.function.js.map +1 -1
  186. package/js/subject/subject.utils.js +17 -14
  187. package/js/subject/subject.utils.js.map +1 -1
  188. package/js/subject/will.functions.js.map +1 -1
  189. package/js/subject.types.d.ts +4 -16
  190. package/js/tag/Context.types.d.ts +21 -0
  191. package/js/tag/Context.types.js +2 -0
  192. package/js/tag/Context.types.js.map +1 -0
  193. package/js/tag/Support.class.d.ts +34 -0
  194. package/js/tag/Support.class.js +41 -0
  195. package/js/tag/Support.class.js.map +1 -0
  196. package/js/tag/Tag.class.d.ts +36 -23
  197. package/js/tag/Tag.class.js +40 -24
  198. package/js/tag/Tag.class.js.map +1 -1
  199. package/js/tag/TagSupport.class.d.ts +1 -0
  200. package/js/tag/TagSupport.class.js +19 -23
  201. package/js/tag/TagSupport.class.js.map +1 -1
  202. package/js/tag/TemplaterResult.class.d.ts +34 -33
  203. package/js/tag/TemplaterResult.class.js +12 -25
  204. package/js/tag/TemplaterResult.class.js.map +1 -1
  205. package/js/tag/ValueTypes.enum.d.ts +25 -9
  206. package/js/tag/ValueTypes.enum.js +29 -14
  207. package/js/tag/ValueTypes.enum.js.map +1 -1
  208. package/js/tag/buildBeforeElement.function.d.ts +10 -0
  209. package/js/tag/buildBeforeElement.function.js +47 -0
  210. package/js/tag/buildBeforeElement.function.js.map +1 -0
  211. package/js/tag/buildSupportContext.function.d.ts +3 -0
  212. package/js/tag/buildSupportContext.function.js +15 -0
  213. package/js/tag/buildSupportContext.function.js.map +1 -0
  214. package/js/tag/checkDestroyPrevious.function.d.ts +5 -10
  215. package/js/tag/checkDestroyPrevious.function.js +52 -92
  216. package/js/tag/checkDestroyPrevious.function.js.map +1 -1
  217. package/js/tag/clonePropsBy.function.d.ts +6 -0
  218. package/js/tag/clonePropsBy.function.js +27 -0
  219. package/js/tag/clonePropsBy.function.js.map +1 -0
  220. package/js/tag/cloneValueArray.function.d.ts +4 -2
  221. package/js/tag/cloneValueArray.function.js +17 -11
  222. package/js/tag/cloneValueArray.function.js.map +1 -1
  223. package/js/tag/destroy.support.d.ts +7 -5
  224. package/js/tag/destroy.support.js +44 -7
  225. package/js/tag/destroy.support.js.map +1 -1
  226. package/js/tag/destroySupport.function.d.ts +2 -0
  227. package/js/tag/destroySupport.function.js +21 -0
  228. package/js/tag/destroySupport.function.js.map +1 -0
  229. package/js/tag/destroyTag.function.d.ts +2 -2
  230. package/js/tag/destroyTag.function.js +6 -5
  231. package/js/tag/destroyTag.function.js.map +1 -1
  232. package/js/tag/domMetaCollector.d.ts +3 -0
  233. package/js/tag/domMetaCollector.js +30 -0
  234. package/js/tag/domMetaCollector.js.map +1 -0
  235. package/js/tag/elementDestroyCheck.function.js +4 -7
  236. package/js/tag/elementDestroyCheck.function.js.map +1 -1
  237. package/js/tag/executeWrap.function.d.ts +5 -0
  238. package/js/tag/executeWrap.function.js +23 -0
  239. package/js/tag/executeWrap.function.js.map +1 -0
  240. package/js/tag/getChildTagsToDestroy.function.d.ts +8 -0
  241. package/js/tag/getChildTagsToDestroy.function.js +47 -0
  242. package/js/tag/getChildTagsToDestroy.function.js.map +1 -0
  243. package/js/tag/getStringsId.function.d.ts +1 -0
  244. package/js/tag/getStringsId.function.js +6 -0
  245. package/js/tag/getStringsId.function.js.map +1 -0
  246. package/js/tag/getSupportInCycle.function.d.ts +1 -1
  247. package/js/tag/getSupportInCycle.function.js +2 -2
  248. package/js/tag/getSupportInCycle.function.js.map +1 -1
  249. package/js/tag/getTagWrap.function.d.ts +2 -0
  250. package/js/tag/getTagWrap.function.js +28 -63
  251. package/js/tag/getTagWrap.function.js.map +1 -1
  252. package/js/tag/getValueType.function.d.ts +3 -2
  253. package/js/tag/getValueType.function.js +20 -28
  254. package/js/tag/getValueType.function.js.map +1 -1
  255. package/js/tag/hasPropChanges.function.d.ts +1 -1
  256. package/js/tag/hasPropChanges.function.js +9 -18
  257. package/js/tag/hasPropChanges.function.js.map +1 -1
  258. package/js/tag/hasSupportChanged.function.d.ts +8 -0
  259. package/js/tag/hasSupportChanged.function.js +146 -0
  260. package/js/tag/hasSupportChanged.function.js.map +1 -0
  261. package/js/tag/hasTagSupportChanged.function.js +15 -2
  262. package/js/tag/hasTagSupportChanged.function.js.map +1 -1
  263. package/js/tag/html.d.ts +7 -4
  264. package/js/tag/html.js +11 -2
  265. package/js/tag/html.js.map +1 -1
  266. package/js/tag/index.d.ts +14 -2
  267. package/js/tag/index.js +14 -2
  268. package/js/tag/index.js.map +1 -1
  269. package/js/tag/isLastRunMatched.function.d.ts +2 -0
  270. package/js/tag/isLastRunMatched.function.js +14 -0
  271. package/js/tag/isLastRunMatched.function.js.map +1 -0
  272. package/js/tag/isLikeTags.function.d.ts +5 -4
  273. package/js/tag/isLikeTags.function.js +33 -12
  274. package/js/tag/isLikeTags.function.js.map +1 -1
  275. package/js/tag/key.d.ts +6 -0
  276. package/js/tag/key.js +9 -0
  277. package/js/tag/key.js.map +1 -0
  278. package/js/tag/kidsToTagArraySubject.function.d.ts +2 -2
  279. package/js/tag/kidsToTagArraySubject.function.js +3 -2
  280. package/js/tag/kidsToTagArraySubject.function.js.map +1 -1
  281. package/js/tag/paint.function.d.ts +15 -0
  282. package/js/tag/paint.function.js +42 -0
  283. package/js/tag/paint.function.js.map +1 -0
  284. package/js/tag/processUpdateAttrContext.function.d.ts +3 -0
  285. package/js/tag/processUpdateAttrContext.function.js +14 -0
  286. package/js/tag/processUpdateAttrContext.function.js.map +1 -0
  287. package/js/tag/processUpdateContext.function.d.ts +5 -0
  288. package/js/tag/processUpdateContext.function.js +35 -0
  289. package/js/tag/processUpdateContext.function.js.map +1 -0
  290. package/js/tag/render/destroyUnlikeTags.function.d.ts +3 -5
  291. package/js/tag/render/destroyUnlikeTags.function.js +2 -14
  292. package/js/tag/render/destroyUnlikeTags.function.js.map +1 -1
  293. package/js/tag/render/renderExistingTag.function.d.ts +5 -7
  294. package/js/tag/render/renderExistingTag.function.js +12 -25
  295. package/js/tag/render/renderExistingTag.function.js.map +1 -1
  296. package/js/tag/render/renderSubjectComponent.function.d.ts +2 -2
  297. package/js/tag/render/renderSubjectComponent.function.js +16 -5
  298. package/js/tag/render/renderSubjectComponent.function.js.map +1 -1
  299. package/js/tag/render/renderSupport.function.d.ts +9 -0
  300. package/js/tag/render/renderSupport.function.js +79 -0
  301. package/js/tag/render/renderSupport.function.js.map +1 -0
  302. package/js/tag/render/renderTagOnly.function.d.ts +4 -3
  303. package/js/tag/render/renderTagOnly.function.js +36 -28
  304. package/js/tag/render/renderTagOnly.function.js.map +1 -1
  305. package/js/tag/render/renderWithSupport.function.d.ts +9 -5
  306. package/js/tag/render/renderWithSupport.function.js +43 -8
  307. package/js/tag/render/renderWithSupport.function.js.map +1 -1
  308. package/js/tag/render/softDestroySupport.function.d.ts +2 -3
  309. package/js/tag/render/softDestroySupport.function.js +23 -16
  310. package/js/tag/render/softDestroySupport.function.js.map +1 -1
  311. package/js/tag/setTagPlaceholder.function.js +2 -1
  312. package/js/tag/setTagPlaceholder.function.js.map +1 -1
  313. package/js/tag/smartRemoveKids.function.d.ts +3 -0
  314. package/js/tag/smartRemoveKids.function.js +80 -0
  315. package/js/tag/smartRemoveKids.function.js.map +1 -0
  316. package/js/tag/tag.d.ts +16 -3
  317. package/js/tag/tag.js +49 -16
  318. package/js/tag/tag.js.map +1 -1
  319. package/js/tag/tag.types.d.ts +6 -4
  320. package/js/tag/tag.utils.d.ts +18 -12
  321. package/js/tag/tag.utils.js.map +1 -1
  322. package/js/tag/tagElement.d.ts +11 -5
  323. package/js/tag/tagElement.js +119 -41
  324. package/js/tag/tagElement.js.map +1 -1
  325. package/js/tag/tagRunner.d.ts +3 -5
  326. package/js/tag/tagRunner.js +18 -40
  327. package/js/tag/tagRunner.js.map +1 -1
  328. package/js/tag/textNode.d.ts +4 -0
  329. package/js/tag/textNode.js +9 -0
  330. package/js/tag/textNode.js.map +1 -0
  331. package/js/tag/update/TagJsSubject.class.d.ts +2 -0
  332. package/js/tag/update/TagJsSubject.class.js +16 -0
  333. package/js/tag/update/TagJsSubject.class.js.map +1 -0
  334. package/js/tag/update/afterChildrenBuilt.function.d.ts +6 -0
  335. package/js/tag/update/afterChildrenBuilt.function.js +25 -0
  336. package/js/tag/update/afterChildrenBuilt.function.js.map +1 -0
  337. package/js/tag/update/getNewGlobal.function.d.ts +2 -0
  338. package/js/tag/update/getNewGlobal.function.js +7 -0
  339. package/js/tag/update/getNewGlobal.function.js.map +1 -0
  340. package/js/tag/update/oneRenderToSupport.function.d.ts +4 -0
  341. package/js/tag/update/oneRenderToSupport.function.js +19 -0
  342. package/js/tag/update/oneRenderToSupport.function.js.map +1 -0
  343. package/js/tag/update/processFirstSubject.utils.d.ts +6 -12
  344. package/js/tag/update/processFirstSubjectComponent.function.d.ts +6 -0
  345. package/js/tag/update/processFirstSubjectComponent.function.js +36 -0
  346. package/js/tag/update/processFirstSubjectComponent.function.js.map +1 -0
  347. package/js/tag/update/processFirstSubjectValue.function.d.ts +9 -8
  348. package/js/tag/update/processFirstSubjectValue.function.js +75 -37
  349. package/js/tag/update/processFirstSubjectValue.function.js.map +1 -1
  350. package/js/tag/update/processNewValue.function.d.ts +5 -3
  351. package/js/tag/update/processNewValue.function.js +28 -25
  352. package/js/tag/update/processNewValue.function.js.map +1 -1
  353. package/js/tag/update/processRegularValue.function.d.ts +4 -6
  354. package/js/tag/update/processRegularValue.function.js +10 -23
  355. package/js/tag/update/processRegularValue.function.js.map +1 -1
  356. package/js/tag/update/processSubjectComponent.function.d.ts +4 -6
  357. package/js/tag/update/processSubjectComponent.function.js +20 -22
  358. package/js/tag/update/processSubjectComponent.function.js.map +1 -1
  359. package/js/tag/update/processTag.function.d.ts +15 -11
  360. package/js/tag/update/processTag.function.js +56 -35
  361. package/js/tag/update/processTag.function.js.map +1 -1
  362. package/js/tag/update/processTagArray.d.ts +7 -20
  363. package/js/tag/update/processTagArray.js +118 -137
  364. package/js/tag/update/processTagArray.js.map +1 -1
  365. package/js/tag/update/processTagResult.function.d.ts +4 -10
  366. package/js/tag/update/processTagResult.function.js +33 -26
  367. package/js/tag/update/processTagResult.function.js.map +1 -1
  368. package/js/tag/update/updateContextItem.function.d.ts +6 -2
  369. package/js/tag/update/updateContextItem.function.js +11 -8
  370. package/js/tag/update/updateContextItem.function.js.map +1 -1
  371. package/js/tag/update/updateExistingTagComponent.function.d.ts +8 -6
  372. package/js/tag/update/updateExistingTagComponent.function.js +96 -126
  373. package/js/tag/update/updateExistingTagComponent.function.js.map +1 -1
  374. package/js/tag/update/updateExistingValue.function.d.ts +5 -4
  375. package/js/tag/update/updateExistingValue.function.js +82 -112
  376. package/js/tag/update/updateExistingValue.function.js.map +1 -1
  377. package/js/tag/update/validateTemplater.function.d.ts +2 -0
  378. package/js/tag/update/validateTemplater.function.js +17 -0
  379. package/js/tag/update/validateTemplater.function.js.map +1 -0
  380. package/js/tag/updateSupportBy.function.d.ts +3 -0
  381. package/js/tag/updateSupportBy.function.js +18 -0
  382. package/js/tag/updateSupportBy.function.js.map +1 -0
  383. package/js/updateBeforeTemplate.function.d.ts +2 -3
  384. package/js/updateBeforeTemplate.function.js +11 -8
  385. package/js/updateBeforeTemplate.function.js.map +1 -1
  386. package/package.json +1 -1
@@ -1,130 +1,100 @@
1
- import { TagSupport } from '../TagSupport.class.js';
2
- import { TemplaterResult } from '../TemplaterResult.class.js';
3
- import { isTagClass, isTagTemplater } from '../../isInstance.js';
4
- import { processTagArray } from './processTagArray.js';
1
+ import { getFakeTemplater, newSupportByTemplater, processTag } from './processTag.function.js';
2
+ import { processNowRegularValue } from './processRegularValue.function.js';
3
+ import { processReplacementComponent } from './processFirstSubjectComponent.function.js';
5
4
  import { updateExistingTagComponent } from './updateExistingTagComponent.function.js';
6
- import { processRegularValue } from './processRegularValue.function.js';
7
- import { checkDestroyPrevious, restoreTagMarker } from '../checkDestroyPrevious.function.js';
8
- import { processSubjectComponent } from './processSubjectComponent.function.js';
9
- import { isLikeTags } from '../isLikeTags.function.js';
10
- import { getFakeTemplater, processTag, setupNewSupport } from './processTag.function.js';
11
- import { swapInsertBefore } from '../setTagPlaceholder.function.js';
12
- import { ValueTypes } from '../ValueTypes.enum.js';
13
- import { getValueType } from '../getValueType.function.js';
14
- export function updateExistingValue(subject, value, ownerSupport, insertBefore) {
15
- const subjectTag = subject;
16
- const valueType = getValueType(value);
17
- checkDestroyPrevious(subject, value, insertBefore, valueType);
18
- // handle already seen tag components
19
- if (valueType === ValueTypes.tagComponent) {
20
- return prepareUpdateToComponent(value, subjectTag, insertBefore, ownerSupport);
5
+ import { getSupport } from '../Support.class.js';
6
+ import { BasicTypes, ValueTypes } from '../ValueTypes.enum.js';
7
+ import { updateSupportBy } from '../updateSupportBy.function.js';
8
+ import { isArray, isTagComponent } from '../../isInstance.js';
9
+ import { getNewGlobal } from './getNewGlobal.function.js';
10
+ import { processTagArray } from './processTagArray.js';
11
+ export function updateExistingValue(contextItem, // InterpolateSubject,
12
+ value, ownerSupport) {
13
+ // Do not continue if the value is just the same
14
+ if (value === contextItem.value) {
15
+ return;
21
16
  }
22
- // was component but no longer
23
- const tagSupport = subjectTag.tagSupport;
24
- if (tagSupport) {
25
- if (valueType === ValueTypes.function) {
26
- return subjectTag; // its a oneRender tag
17
+ const wasDestroyed = contextItem.checkValueChange(value, contextItem);
18
+ if (wasDestroyed === -1) {
19
+ return; // do nothing
20
+ }
21
+ // handle already seen tag components
22
+ const tagJsType = value && value.tagJsType;
23
+ if (tagJsType) {
24
+ if (tagJsType === ValueTypes.renderOnce) {
25
+ return;
26
+ }
27
+ const isComp = isTagComponent(value);
28
+ if (isComp) {
29
+ contextItem.global = contextItem.global || getNewGlobal();
30
+ prepareUpdateToComponent(value, contextItem, ownerSupport);
31
+ return;
27
32
  }
28
- handleStillTag(subject, value, ownerSupport);
29
- return subjectTag;
30
33
  }
31
- switch (valueType) {
32
- case ValueTypes.tagArray:
33
- processTagArray(subject, value, insertBefore, // oldInsertBefore as InsertBefore,
34
- ownerSupport, { counts: {
35
- added: 0,
36
- removed: 0,
37
- } });
38
- return subject;
39
- case ValueTypes.templater:
40
- processTag(value, insertBefore, ownerSupport, subjectTag);
41
- return subjectTag;
42
- case ValueTypes.tag:
43
- const tag = value;
44
- let templater = tag.templater;
45
- if (!templater) {
46
- templater = getFakeTemplater();
47
- tag.templater = templater;
48
- templater.tag = tag;
34
+ const global = contextItem.global;
35
+ if (global) {
36
+ // was component but no longer
37
+ const support = global.newest;
38
+ if (support) {
39
+ if (typeof (value) === BasicTypes.function) {
40
+ return;
49
41
  }
50
- processTag(templater, insertBefore, ownerSupport, subjectTag);
51
- return subjectTag;
52
- case ValueTypes.subject:
53
- return value;
54
- // now its a useless function (we don't automatically call functions)
55
- case ValueTypes.function:
56
- if (!subject.clone) {
57
- subject.clone = swapInsertBefore(insertBefore);
42
+ handleStillTag(support, contextItem, value, ownerSupport);
43
+ if (!global.locked) {
44
+ ++global.renderCount;
58
45
  }
59
- return subject;
60
- }
61
- // This will cause all other values to render
62
- processRegularValue(value, subject, insertBefore);
63
- return subjectTag;
64
- }
65
- function handleStillTag(subject, value, ownerSupport) {
66
- const lastSupport = subject.tagSupport;
67
- let templater = value;
68
- const isClass = isTagClass(value);
69
- if (isClass) {
70
- const tag = value;
71
- templater = tag.templater;
72
- if (!templater) {
73
- templater = new TemplaterResult([]);
74
- templater.tag = tag;
75
- tag.templater = templater;
46
+ return;
76
47
  }
77
48
  }
78
- const valueSupport = new TagSupport(templater, ownerSupport, subject);
79
- // ??? new
80
- // subject.tagSupport = valueSupport
81
- if (isClass) {
82
- valueSupport.global = lastSupport.global;
49
+ if (tagJsType) {
50
+ switch (tagJsType) {
51
+ case ValueTypes.templater:
52
+ processTag(ownerSupport, contextItem);
53
+ return;
54
+ case ValueTypes.tag:
55
+ case ValueTypes.dom:
56
+ const tag = value;
57
+ let templater = tag.templater;
58
+ if (!templater) {
59
+ templater = getFakeTemplater();
60
+ tag.templater = templater;
61
+ templater.tag = tag;
62
+ }
63
+ const nowGlobal = contextItem.global = (contextItem.global || getNewGlobal());
64
+ nowGlobal.newest = newSupportByTemplater(templater, ownerSupport, contextItem);
65
+ processTag(ownerSupport, contextItem);
66
+ return;
67
+ }
83
68
  }
84
- const isSameTag = value && isLikeTags(lastSupport, valueSupport);
85
- if (isTagTemplater(value)) {
86
- setupNewSupport(valueSupport, ownerSupport, subject);
69
+ if (isArray(value)) {
70
+ processTagArray(contextItem, value, ownerSupport, { added: 0, removed: 0 });
71
+ return;
87
72
  }
88
- if (isSameTag) {
89
- lastSupport.updateBy(valueSupport);
73
+ if (typeof (value) === BasicTypes.function) {
74
+ contextItem.value = value; // do not render functions that are not explicity defined as tag html processing
90
75
  return;
91
76
  }
92
- if (isSameTag) {
93
- // const subjectTag = subject as TagSubject
94
- const global = lastSupport.global;
95
- const insertBefore = global.insertBefore;
96
- return processTag(templater, insertBefore, ownerSupport, subject);
77
+ if (wasDestroyed) {
78
+ processNowRegularValue(value, contextItem);
97
79
  }
98
- return processRegularValue(value, subject, subject.insertBefore);
99
80
  }
100
- function prepareUpdateToComponent(templater, subjectTag, insertBefore, ownerSupport) {
81
+ function handleStillTag(lastSupport, subject, value, ownerSupport) {
82
+ const templater = value.templater || value;
83
+ const valueSupport = getSupport(templater, ownerSupport, ownerSupport.appSupport, subject);
84
+ const lastSubject = lastSupport.subject;
85
+ const newGlobal = lastSubject.global;
86
+ const oldest = newGlobal.oldest;
87
+ updateSupportBy(oldest, valueSupport);
88
+ }
89
+ function prepareUpdateToComponent(templater, contextItem, ownerSupport) {
90
+ const global = contextItem.global;
101
91
  // When last value was not a component
102
- if (!subjectTag.tagSupport) {
103
- processSubjectComponent(templater, subjectTag, insertBefore, // oldInsertBefore as InsertBefore,
104
- ownerSupport, {
105
- counts: { added: 0, removed: 0 },
106
- });
107
- return subjectTag;
108
- }
109
- const tagSupport = new TagSupport(templater, ownerSupport, subjectTag);
110
- const subjectSup = subjectTag.tagSupport;
111
- const prevSupport = subjectSup.global.newest;
112
- if (prevSupport) {
113
- const newestState = prevSupport.memory.state;
114
- tagSupport.memory.state.length = 0;
115
- tagSupport.memory.state.push(...newestState);
116
- }
117
- else {
118
- restoreTagMarker(subjectSup);
119
- processSubjectComponent(templater, subjectTag, insertBefore, ownerSupport, {
120
- counts: { added: 0, removed: 0 },
121
- });
122
- return subjectTag;
92
+ if (!global.newest) {
93
+ processReplacementComponent(templater, contextItem, ownerSupport, { added: 0, removed: 0 });
94
+ return;
123
95
  }
124
- tagSupport.global = subjectSup.global;
125
- subjectTag.tagSupport = tagSupport;
126
- updateExistingTagComponent(ownerSupport, tagSupport, // latest value
127
- subjectTag, insertBefore);
128
- return subjectTag;
96
+ const support = getSupport(templater, ownerSupport, ownerSupport.appSupport, contextItem);
97
+ updateExistingTagComponent(ownerSupport, support, // latest value
98
+ contextItem);
129
99
  }
130
100
  //# sourceMappingURL=updateExistingValue.function.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"updateExistingValue.function.js","sourceRoot":"","sources":["../../../ts/tag/update/updateExistingValue.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEhE,OAAO,EAAmB,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACvE,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAA;AACrF,OAAO,EAAgB,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AACrF,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAA;AAE5F,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAA;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAGxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAE1D,MAAM,UAAU,mBAAmB,CACjC,OAA2B,EAC3B,KAAoB,EACpB,YAAwB,EACxB,YAA0B;IAE1B,MAAM,UAAU,GAAG,OAAqB,CAAA;IACxC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;IAErC,oBAAoB,CAClB,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,CACxC,CAAA;IAED,qCAAqC;IACrC,IAAG,SAAS,KAAK,UAAU,CAAC,YAAY,EAAE,CAAC;QACzC,OAAO,wBAAwB,CAC7B,KAAwB,EACxB,UAAU,EACV,YAAY,EACZ,YAAY,CACb,CAAA;IACH,CAAC;IAED,8BAA8B;IAC9B,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,CAAA;IACxC,IAAI,UAAU,EAAG,CAAC;QAChB,IAAG,SAAS,KAAK,UAAU,CAAC,QAAQ,EAAE,CAAC;YACrC,OAAO,UAAU,CAAA,CAAC,sBAAsB;QAC1C,CAAC;QAED,cAAc,CACZ,OAAqB,EACrB,KAAwB,EACxB,YAAY,CACb,CAAA;QAED,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,UAAU,CAAC,QAAQ;YACtB,eAAe,CACb,OAA0B,EAC1B,KAAkC,EAClC,YAAY,EAAE,mCAAmC;YACjD,YAAY,EACZ,EAAC,MAAM,EAAE;oBACP,KAAK,EAAE,CAAC;oBACR,OAAO,EAAE,CAAC;iBACX,EAAC,CACH,CAAA;YAED,OAAO,OAAO,CAAA;QAEhB,KAAK,UAAU,CAAC,SAAS;YACvB,UAAU,CACR,KAAwB,EACxB,YAAY,EACZ,YAAY,EACZ,UAAU,CACX,CAAA;YACD,OAAO,UAAU,CAAA;QAEnB,KAAK,UAAU,CAAC,GAAG;YACjB,MAAM,GAAG,GAAG,KAAY,CAAA;YACxB,IAAI,SAAS,GAAG,GAAG,CAAC,SAAS,CAAA;YAE7B,IAAG,CAAC,SAAS,EAAE,CAAC;gBACd,SAAS,GAAG,gBAAgB,EAAE,CAAA;gBAC9B,GAAG,CAAC,SAAS,GAAG,SAAS,CAAA;gBACzB,SAAS,CAAC,GAAG,GAAG,GAAG,CAAA;YACrB,CAAC;YAED,UAAU,CACR,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,UAAU,CACX,CAAA;YAED,OAAO,UAAU,CAAA;QAEnB,KAAK,UAAU,CAAC,OAAO;YACrB,OAAO,KAA0B,CAAA;QAEnC,qEAAqE;QACrE,KAAK,UAAU,CAAC,QAAQ;YACtB,IAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBAClB,OAAO,CAAC,KAAK,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAA;YAChD,CAAC;YAED,OAAO,OAAO,CAAA;IAClB,CAAC;IAED,6CAA6C;IAC7C,mBAAmB,CACjB,KAAqB,EACrB,OAAyB,EACzB,YAAY,CACb,CAAA;IAED,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,SAAS,cAAc,CACrB,OAAmB,EACnB,KAA0B,EAC1B,YAAwB;IAExB,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,CAAA;IACtC,IAAI,SAAS,GAAG,KAAwB,CAAA;IACxC,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IAEjC,IAAG,OAAO,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,KAAY,CAAA;QACxB,SAAS,GAAG,GAAG,CAAC,SAAS,CAAA;QACzB,IAAG,CAAC,SAAS,EAAE,CAAC;YACd,SAAS,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC,CAAA;YACnC,SAAS,CAAC,GAAG,GAAG,GAAG,CAAA;YACnB,GAAG,CAAC,SAAS,GAAG,SAAS,CAAA;QAC3B,CAAC;IACH,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,UAAU,CACjC,SAAS,EACT,YAAY,EACZ,OAAO,CACR,CAAA;IAED,UAAU;IACV,oCAAoC;IAEpC,IAAG,OAAO,EAAE,CAAC;QACX,YAAY,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAA;IAC1C,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,IAAI,UAAU,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;IAEhE,IAAG,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,eAAe,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,CAAC,CAAA;IACtD,CAAC;IAED,IAAG,SAAS,EAAE,CAAC;QACb,WAAW,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;QAClC,OAAM;IACR,CAAC;IAED,IAAG,SAAS,EAAE,CAAC;QACb,2CAA2C;QAC3C,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAA;QACjC,MAAM,YAAY,GAAG,MAAM,CAAC,YAA4B,CAAA;QAExD,OAAO,UAAU,CACf,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,OAAO,CACR,CAAA;IACH,CAAC;IAED,OAAO,mBAAmB,CACxB,KAAqB,EACrB,OAAoC,EACnC,OAAqC,CAAC,YAAY,CACpD,CAAA;AACH,CAAC;AAED,SAAS,wBAAwB,CAC/B,SAA0B,EAC1B,UAAsB,EACtB,YAA0B,EAC1B,YAAwB;IAExB,sCAAsC;IACtC,IAAG,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;QAC1B,uBAAuB,CACrB,SAAS,EACT,UAAU,EACV,YAAY,EAAE,mCAAmC;QACjD,YAAY,EACZ;YACE,MAAM,EAAE,EAAC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAC;SAC/B,CACF,CAAA;QAED,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,UAAU,CAC/B,SAAS,EACT,YAAY,EACZ,UAAU,CACX,CAAA;IAED,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,CAAA;IACxC,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAA;IAC5C,IAAG,WAAW,EAAE,CAAC;QACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAA;QAC5C,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAA;QAClC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAA;IAC9C,CAAC;SAAM,CAAC;QACN,gBAAgB,CAAC,UAAU,CAAC,CAAA;QAE5B,uBAAuB,CACrB,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EACjD;YACE,MAAM,EAAE,EAAC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAC;SAC/B,CACF,CAAA;QAED,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,UAAU,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAA;IACrC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAA;IAElC,0BAA0B,CACxB,YAAY,EACZ,UAAU,EAAE,eAAe;IAC3B,UAAU,EACV,YAAY,CACb,CAAA;IAED,OAAO,UAAU,CAAA;AACnB,CAAC"}
1
+ {"version":3,"file":"updateExistingValue.function.js","sourceRoot":"","sources":["../../../ts/tag/update/updateExistingValue.function.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { TemplaterResult } from '../TemplaterResult.class.js';
2
+ export declare function validateTemplater(templater: TemplaterResult): void;
@@ -0,0 +1,17 @@
1
+ import { isTagComponent } from '../../isInstance.js';
2
+ export function validateTemplater(templater) {
3
+ // Check if function component is wrapped in a tag() call
4
+ if (isTagComponent(templater)) {
5
+ return;
6
+ }
7
+ const wrapper = templater.wrapper;
8
+ const original = wrapper?.parentWrap.original || templater;
9
+ let name = original.name || original.constructor?.name;
10
+ if (name === 'Function') {
11
+ name = undefined;
12
+ }
13
+ const label = name || original.toString().substring(0, 120);
14
+ const error = new Error(`Not a tag component. Wrap your function with tag(). Example tag(props => html\`\`) on component:\n\n${label}\n\n`);
15
+ throw error;
16
+ }
17
+ //# sourceMappingURL=validateTemplater.function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateTemplater.function.js","sourceRoot":"","sources":["../../../ts/tag/update/validateTemplater.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAGpD,MAAM,UAAU,iBAAiB,CAC/B,SAA0B;IAE1B,yDAAyD;IACzD,IAAG,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,OAAM;IACR,CAAC;IAED,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAA;IACjC,MAAM,QAAQ,GAAa,OAAO,EAAE,UAAU,CAAC,QAAQ,IAAI,SAAgB,CAAA;IAC3E,IAAI,IAAI,GAAuB,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAA;IAE1E,IAAG,IAAI,KAAK,UAAU,EAAE,CAAC;QACvB,IAAI,GAAG,SAAS,CAAA;IAClB,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,EAAC,GAAG,CAAC,CAAA;IAC1D,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,uGAAuG,KAAK,MAAM,CAAC,CAAA;IAC3I,MAAM,KAAK,CAAA;AACb,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { AnySupport } from './Support.class.js';
2
+ export declare function updateSupportBy(olderSupport: AnySupport, newerSupport: AnySupport): void;
3
+ export declare function updateSupportValuesBy(olderSupport: AnySupport, newerSupport: AnySupport): void;
@@ -0,0 +1,18 @@
1
+ import { paint, painting } from './paint.function.js';
2
+ import { processUpdateContext } from './processUpdateContext.function.js';
3
+ export function updateSupportBy(olderSupport, newerSupport) {
4
+ const global = olderSupport.subject.global;
5
+ const context = global.context;
6
+ updateSupportValuesBy(olderSupport, newerSupport);
7
+ ++painting.locks;
8
+ processUpdateContext(olderSupport, context);
9
+ --painting.locks;
10
+ paint();
11
+ }
12
+ export function updateSupportValuesBy(olderSupport, newerSupport) {
13
+ const tempTag = (newerSupport.templater.tag || newerSupport.templater);
14
+ const values = newerSupport.templater.values || tempTag.values;
15
+ const tag = olderSupport.templater.tag;
16
+ tag.values = values;
17
+ }
18
+ //# sourceMappingURL=updateSupportBy.function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateSupportBy.function.js","sourceRoot":"","sources":["../../ts/tag/updateSupportBy.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAA;AAKzE,MAAM,UAAU,eAAe,CAC7B,YAAwB,EACxB,YAAwB;IAExB,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,MAA0B,CAAA;IAC9D,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;IAE9B,qBAAqB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;IAEjD,EAAE,QAAQ,CAAC,KAAK,CAAA;IAChB,oBAAoB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IAC3C,EAAE,QAAQ,CAAC,KAAK,CAAA;IAEhB,KAAK,EAAE,CAAA;AACT,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,YAAwB,EACxB,YAAwB;IAExB,MAAM,OAAO,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,IAAI,YAAY,CAAC,SAAS,CAAuB,CAAA;IAC5F,MAAM,MAAM,GAAI,YAAY,CAAC,SAAwB,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAA;IAC9E,MAAM,GAAG,GAAG,YAAY,CAAC,SAAS,CAAC,GAAU,CAAA;IAE7C,GAAG,CAAC,MAAM,GAAG,MAAM,CAAA;AACrB,CAAC"}
@@ -1,7 +1,6 @@
1
- import { InsertBefore } from './interpolations/InsertBefore.type.js';
2
- import { NoDisplayValue } from './interpolations/processAttribute.function.js';
1
+ import { NoDisplayValue } from './interpolations/attributes/processAttribute.function.js';
3
2
  export declare function updateBeforeTemplate(value: string, // value should be casted before calling here
4
- lastFirstChild: InsertBefore): Text;
3
+ lastFirstChild: Text): Text;
5
4
  type TextableValue = string | boolean | number | NoDisplayValue;
6
5
  export declare function castTextValue(value: TextableValue): string;
7
6
  export {};
@@ -1,18 +1,21 @@
1
+ import { paintInsertBefores } from './tag/paint.function.js';
2
+ import { empty } from './tag/ValueTypes.enum.js';
1
3
  // Function to update the value of x
2
4
  export function updateBeforeTemplate(value, // value should be casted before calling here
3
5
  lastFirstChild) {
4
- const parent = lastFirstChild.parentNode;
5
- // Insert the new value (never use innerHTML here)
6
6
  const textNode = document.createTextNode(value); // never innerHTML
7
- parent.insertBefore(textNode, lastFirstChild);
8
- /* remove existing nodes */
9
- parent.removeChild(lastFirstChild);
7
+ paintInsertBefores.push({
8
+ element: textNode,
9
+ relative: lastFirstChild,
10
+ });
10
11
  return textNode;
11
12
  }
12
13
  export function castTextValue(value) {
13
- // mimic React skipping to display EXCEPT for true does display on page
14
- if ([undefined, false, null].includes(value)) { // || value === true
15
- return '';
14
+ switch (value) {
15
+ case undefined:
16
+ case false:
17
+ case null:
18
+ return empty;
16
19
  }
17
20
  return value;
18
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"updateBeforeTemplate.function.js","sourceRoot":"","sources":["../ts/updateBeforeTemplate.function.ts"],"names":[],"mappings":"AAGA,oCAAoC;AACpC,MAAM,UAAU,oBAAoB,CAClC,KAAa,EAAE,6CAA6C;AAC5D,cAA4B;IAE5B,MAAM,MAAM,GAAG,cAAc,CAAC,UAAwB,CAAA;IAEtD,kDAAkD;IAClD,MAAM,QAAQ,GAAG,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA,CAAC,kBAAkB;IAClE,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAA;IAE7C,2BAA2B;IAC3B,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAA;IAElC,OAAO,QAAQ,CAAA;AACjB,CAAC;AAID,MAAM,UAAU,aAAa,CAC3B,KAAoB;IAEpB,uEAAuE;IACvE,IAAG,CAAC,SAAS,EAAC,KAAK,EAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAuB,CAAC,EAAE,CAAC,CAAC,oBAAoB;QACjF,OAAO,EAAE,CAAA;IACX,CAAC;IAED,OAAO,KAAe,CAAA;AACxB,CAAC"}
1
+ {"version":3,"file":"updateBeforeTemplate.function.js","sourceRoot":"","sources":["../ts/updateBeforeTemplate.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAEhD,oCAAoC;AACpC,MAAM,UAAU,oBAAoB,CAClC,KAAa,EAAE,6CAA6C;AAC5D,cAAoB;IAEpB,MAAM,QAAQ,GAAG,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA,CAAC,kBAAkB;IAElE,kBAAkB,CAAC,IAAI,CAAC;QACtB,OAAO,EAAE,QAAQ;QACjB,QAAQ,EAAE,cAAc;KACzB,CAAC,CAAA;IAEF,OAAO,QAAQ,CAAA;AACjB,CAAC;AAGD,MAAM,UAAU,aAAa,CAAC,KAAoB;IAChD,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,SAAS,CAAC;QACf,KAAK,KAAK,CAAC;QACX,KAAK,IAAI;YACP,OAAO,KAAK,CAAA;IAChB,CAAC;IAED,OAAO,KAAe,CAAC;AACzB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "taggedjs",
3
- "version": "2.5.23",
3
+ "version": "2.6.1",
4
4
  "description": "tagged template reactive html",
5
5
  "main": "js/index.js",
6
6
  "type": "module",