taggedjs 2.5.24 → 2.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle.js +1 -1
- package/bundle.js.map +1 -1
- package/js/RegularValue.type.d.ts +1 -0
- package/js/RegularValue.type.js +2 -0
- package/js/RegularValue.type.js.map +1 -0
- package/js/alterProp.function.d.ts +7 -7
- package/js/alterProp.function.js +71 -73
- package/js/alterProp.function.js.map +1 -1
- package/js/deepFunctions.d.ts +2 -2
- package/js/deepFunctions.js +25 -33
- package/js/deepFunctions.js.map +1 -1
- package/js/index.d.ts +6 -9
- package/js/index.js +6 -10
- package/js/index.js.map +1 -1
- package/js/interpolations/attributes/ElementTargetEvent.interface.d.ts +6 -0
- package/js/interpolations/attributes/ElementTargetEvent.interface.js +2 -0
- package/js/interpolations/attributes/ElementTargetEvent.interface.js.map +1 -0
- package/js/interpolations/attributes/addSupportEventListener.function.d.ts +3 -0
- package/js/interpolations/attributes/addSupportEventListener.function.js +42 -0
- package/js/interpolations/attributes/addSupportEventListener.function.js.map +1 -0
- package/js/interpolations/attributes/bindSubjectCallback.function.d.ts +13 -0
- package/js/interpolations/attributes/bindSubjectCallback.function.js +74 -0
- package/js/interpolations/attributes/bindSubjectCallback.function.js.map +1 -0
- package/js/interpolations/attributes/elementInitCheck.d.ts +2 -0
- package/js/interpolations/attributes/elementInitCheck.js +18 -0
- package/js/interpolations/attributes/elementInitCheck.js.map +1 -0
- package/js/interpolations/attributes/getUpTags.function.d.ts +2 -0
- package/js/interpolations/attributes/getUpTags.function.js +35 -0
- package/js/interpolations/attributes/getUpTags.function.js.map +1 -0
- package/js/interpolations/attributes/howToSetInputValue.function.d.ts +2 -0
- package/js/interpolations/attributes/howToSetInputValue.function.js +11 -0
- package/js/interpolations/attributes/howToSetInputValue.function.js.map +1 -0
- package/js/interpolations/attributes/isSpecialAttribute.function.d.ts +3 -0
- package/js/interpolations/attributes/isSpecialAttribute.function.js +26 -0
- package/js/interpolations/attributes/isSpecialAttribute.function.js.map +1 -0
- package/js/interpolations/attributes/processAttribute.function.d.ts +19 -0
- package/js/interpolations/attributes/processAttribute.function.js +175 -0
- package/js/interpolations/attributes/processAttribute.function.js.map +1 -0
- package/js/interpolations/attributes/processAttributeCallback.function.d.ts +3 -0
- package/js/interpolations/attributes/processAttributeCallback.function.js +12 -0
- package/js/interpolations/attributes/processAttributeCallback.function.js.map +1 -0
- package/js/interpolations/attributes/processNameValueAttribute.function.d.ts +7 -0
- package/js/interpolations/attributes/processNameValueAttribute.function.js +24 -0
- package/js/interpolations/attributes/processNameValueAttribute.function.js.map +1 -0
- package/js/interpolations/attributes/renderTagArray.function.d.ts +2 -0
- package/js/interpolations/attributes/renderTagArray.function.js +17 -0
- package/js/interpolations/attributes/renderTagArray.function.js.map +1 -0
- package/js/interpolations/attributes/specialAttribute.d.ts +2 -0
- package/js/interpolations/attributes/specialAttribute.js +44 -0
- package/js/interpolations/attributes/specialAttribute.js.map +1 -0
- package/js/interpolations/bindSubjectCallback.function.d.ts +8 -7
- package/js/interpolations/bindSubjectCallback.function.js +13 -46
- package/js/interpolations/bindSubjectCallback.function.js.map +1 -1
- package/js/interpolations/index.d.ts +2 -0
- package/js/interpolations/index.js +3 -0
- package/js/interpolations/index.js.map +1 -0
- package/js/interpolations/interpolateAttributes.d.ts +0 -3
- package/js/interpolations/interpolateAttributes.js +2 -14
- package/js/interpolations/interpolateAttributes.js.map +1 -1
- package/js/interpolations/interpolateTemplate.d.ts +1 -4
- package/js/interpolations/interpolateTemplate.js +1 -29
- package/js/interpolations/interpolateTemplate.js.map +1 -1
- package/js/interpolations/optimizers/LikeObjectElement.type.d.ts +15 -0
- package/js/interpolations/optimizers/LikeObjectElement.type.js +2 -0
- package/js/interpolations/optimizers/LikeObjectElement.type.js.map +1 -0
- package/js/interpolations/optimizers/ObjectNode.types.d.ts +21 -14
- package/js/interpolations/optimizers/attachDomElements.function.d.ts +13 -0
- package/js/interpolations/optimizers/attachDomElements.function.js +107 -0
- package/js/interpolations/optimizers/attachDomElements.function.js.map +1 -0
- package/js/interpolations/optimizers/exchangeParsedForValues.function.d.ts +15 -0
- package/js/interpolations/optimizers/exchangeParsedForValues.function.js +2 -0
- package/js/interpolations/optimizers/exchangeParsedForValues.function.js.map +1 -0
- package/js/interpolations/optimizers/htmlInterpolationToDomMeta.function.d.ts +4 -3
- package/js/interpolations/optimizers/htmlInterpolationToDomMeta.function.js +121 -56
- package/js/interpolations/optimizers/htmlInterpolationToDomMeta.function.js.map +1 -1
- package/js/interpolations/optimizers/metaAttachDomElements.function.d.ts +9 -3
- package/js/interpolations/optimizers/metaAttachDomElements.function.js +82 -36
- package/js/interpolations/optimizers/metaAttachDomElements.function.js.map +1 -1
- package/js/interpolations/optimizers/replacePlaceholders.function.d.ts +3 -2
- package/js/interpolations/optimizers/replacePlaceholders.function.js +38 -59
- package/js/interpolations/optimizers/replacePlaceholders.function.js.map +1 -1
- package/js/interpolations/optimizers/restorePlaceholders.function.d.ts +1 -1
- package/js/interpolations/optimizers/restorePlaceholders.function.js +14 -13
- package/js/interpolations/optimizers/restorePlaceholders.function.js.map +1 -1
- package/js/interpolations/optimizers/test.function.d.ts +10 -0
- package/js/interpolations/optimizers/test.function.js +19 -0
- package/js/interpolations/optimizers/test.function.js.map +1 -0
- package/js/interpolations/optimizers/types.d.ts +8 -0
- package/js/interpolations/optimizers/types.js +2 -0
- package/js/interpolations/optimizers/types.js.map +1 -0
- package/js/interpolations/processAttribute.function.d.ts +10 -5
- package/js/interpolations/processAttribute.function.js +111 -67
- package/js/interpolations/processAttribute.function.js.map +1 -1
- package/js/interpolations/processSubscriptionUpdate.function.d.ts +4 -0
- package/js/interpolations/processSubscriptionUpdate.function.js +14 -0
- package/js/interpolations/processSubscriptionUpdate.function.js.map +1 -0
- package/js/interpolations/specialAttribute.js +18 -9
- package/js/interpolations/specialAttribute.js.map +1 -1
- package/js/interpolations/subscribeToTemplate.function.d.ts +10 -2
- package/js/interpolations/subscribeToTemplate.function.js +19 -20
- package/js/interpolations/subscribeToTemplate.function.js.map +1 -1
- package/js/isInstance.d.ts +10 -6
- package/js/isInstance.js +33 -25
- package/js/isInstance.js.map +1 -1
- package/js/state/callbackMaker.function.d.ts +1 -1
- package/js/state/callbackMaker.function.js +21 -30
- package/js/state/callbackMaker.function.js.map +1 -1
- package/js/state/callbackStateUpdate.function.d.ts +1 -1
- package/js/state/callbackStateUpdate.function.js +6 -5
- package/js/state/callbackStateUpdate.function.js.map +1 -1
- package/js/state/getCallbackValue.function.d.ts +4 -0
- package/js/state/getCallbackValue.function.js +10 -0
- package/js/state/getCallbackValue.function.js.map +1 -0
- package/js/state/getStateValue.function.d.ts +2 -0
- package/js/state/getStateValue.function.js +24 -0
- package/js/state/getStateValue.function.js.map +1 -0
- package/js/state/handleProviderChanges.function.d.ts +7 -1
- package/js/state/handleProviderChanges.function.js +7 -21
- package/js/state/handleProviderChanges.function.js.map +1 -1
- package/js/state/index.d.ts +2 -3
- package/js/state/index.js +2 -2
- package/js/state/index.js.map +1 -1
- package/js/state/letState.function.d.ts +2 -0
- package/js/state/letState.function.js +28 -28
- package/js/state/letState.function.js.map +1 -1
- package/js/state/onDestroy.js +3 -2
- package/js/state/onDestroy.js.map +1 -1
- package/js/state/providers.d.ts +0 -1
- package/js/state/providers.js +20 -15
- package/js/state/providers.js.map +1 -1
- package/js/state/providersChangeCheck.function.d.ts +2 -2
- package/js/state/providersChangeCheck.function.js +9 -10
- package/js/state/providersChangeCheck.function.js.map +1 -1
- package/js/state/setUse.function.d.ts +1 -11
- package/js/state/setUse.function.js +12 -13
- package/js/state/setUse.function.js.map +1 -1
- package/js/state/state.function.js +2 -47
- package/js/state/state.function.js.map +1 -1
- package/js/state/state.types.d.ts +8 -0
- package/js/state/state.types.js +2 -0
- package/js/state/state.types.js.map +1 -0
- package/js/state/state.utils.d.ts +11 -10
- package/js/state/state.utils.js +35 -65
- package/js/state/state.utils.js.map +1 -1
- package/js/state/stateHandlers.d.ts +2 -0
- package/js/state/stateHandlers.js +36 -0
- package/js/state/stateHandlers.js.map +1 -0
- package/js/state/subject.function.js +10 -6
- package/js/state/subject.function.js.map +1 -1
- package/js/state/syncStates.function.d.ts +1 -1
- package/js/state/syncStates.function.js +8 -5
- package/js/state/syncStates.function.js.map +1 -1
- package/js/state/watch.function.js +6 -6
- package/js/state/watch.function.js.map +1 -1
- package/js/subject/Subject.class.d.ts +9 -2
- package/js/subject/Subject.class.js +36 -11
- package/js/subject/Subject.class.js.map +1 -1
- package/js/subject/ValueSubject.d.ts +6 -1
- package/js/subject/ValueSubject.js +15 -1
- package/js/subject/ValueSubject.js.map +1 -1
- package/js/subject/combineLatest.function.js +2 -2
- package/js/subject/combineLatest.function.js.map +1 -1
- package/js/subject/subject.utils.js +5 -4
- package/js/subject/subject.utils.js.map +1 -1
- package/js/subject.types.d.ts +2 -10
- package/js/tag/Context.types.d.ts +21 -0
- package/js/tag/Context.types.js +2 -0
- package/js/tag/Context.types.js.map +1 -0
- package/js/tag/Support.class.d.ts +31 -66
- package/js/tag/Support.class.js +36 -285
- package/js/tag/Support.class.js.map +1 -1
- package/js/tag/Tag.class.d.ts +29 -28
- package/js/tag/Tag.class.js +34 -46
- package/js/tag/Tag.class.js.map +1 -1
- package/js/tag/TemplaterResult.class.d.ts +32 -38
- package/js/tag/TemplaterResult.class.js +11 -34
- package/js/tag/TemplaterResult.class.js.map +1 -1
- package/js/tag/ValueTypes.enum.d.ts +23 -13
- package/js/tag/ValueTypes.enum.js +28 -19
- package/js/tag/ValueTypes.enum.js.map +1 -1
- package/js/tag/buildBeforeElement.function.d.ts +10 -0
- package/js/tag/buildBeforeElement.function.js +47 -0
- package/js/tag/buildBeforeElement.function.js.map +1 -0
- package/js/tag/buildSupportContext.function.d.ts +3 -0
- package/js/tag/buildSupportContext.function.js +15 -0
- package/js/tag/buildSupportContext.function.js.map +1 -0
- package/js/tag/checkDestroyPrevious.function.d.ts +5 -8
- package/js/tag/checkDestroyPrevious.function.js +53 -71
- package/js/tag/checkDestroyPrevious.function.js.map +1 -1
- package/js/tag/clonePropsBy.function.d.ts +6 -0
- package/js/tag/clonePropsBy.function.js +27 -0
- package/js/tag/clonePropsBy.function.js.map +1 -0
- package/js/tag/cloneValueArray.function.d.ts +4 -3
- package/js/tag/cloneValueArray.function.js +17 -13
- package/js/tag/cloneValueArray.function.js.map +1 -1
- package/js/tag/destroy.support.d.ts +7 -5
- package/js/tag/destroy.support.js +44 -6
- package/js/tag/destroy.support.js.map +1 -1
- package/js/tag/destroySupport.function.d.ts +2 -0
- package/js/tag/destroySupport.function.js +21 -0
- package/js/tag/destroySupport.function.js.map +1 -0
- package/js/tag/destroyTag.function.js +4 -4
- package/js/tag/destroyTag.function.js.map +1 -1
- package/js/tag/domMetaCollector.d.ts +2 -2
- package/js/tag/domMetaCollector.js +12 -8
- package/js/tag/domMetaCollector.js.map +1 -1
- package/js/tag/elementDestroyCheck.function.js +4 -7
- package/js/tag/elementDestroyCheck.function.js.map +1 -1
- package/js/tag/executeWrap.function.d.ts +5 -0
- package/js/tag/executeWrap.function.js +23 -0
- package/js/tag/executeWrap.function.js.map +1 -0
- package/js/tag/getChildTagsToDestroy.function.d.ts +8 -0
- package/js/tag/getChildTagsToDestroy.function.js +47 -0
- package/js/tag/getChildTagsToDestroy.function.js.map +1 -0
- package/js/tag/getStringsId.function.d.ts +1 -1
- package/js/tag/getStringsId.function.js +1 -2
- package/js/tag/getStringsId.function.js.map +1 -1
- package/js/tag/getSupportInCycle.function.js +2 -2
- package/js/tag/getSupportInCycle.function.js.map +1 -1
- package/js/tag/getTagWrap.function.d.ts +2 -0
- package/js/tag/getTagWrap.function.js +24 -68
- package/js/tag/getTagWrap.function.js.map +1 -1
- package/js/tag/getValueType.function.d.ts +3 -2
- package/js/tag/getValueType.function.js +17 -30
- package/js/tag/getValueType.function.js.map +1 -1
- package/js/tag/hasPropChanges.function.js +4 -10
- package/js/tag/hasPropChanges.function.js.map +1 -1
- package/js/tag/hasSupportChanged.function.d.ts +6 -2
- package/js/tag/hasSupportChanged.function.js +143 -24
- package/js/tag/hasSupportChanged.function.js.map +1 -1
- package/js/tag/html.d.ts +5 -6
- package/js/tag/html.js +9 -3
- package/js/tag/html.js.map +1 -1
- package/js/tag/index.d.ts +11 -1
- package/js/tag/index.js +11 -1
- package/js/tag/index.js.map +1 -1
- package/js/tag/isLikeTags.function.d.ts +4 -3
- package/js/tag/isLikeTags.function.js +18 -31
- package/js/tag/isLikeTags.function.js.map +1 -1
- package/js/tag/key.d.ts +6 -0
- package/js/tag/key.js +9 -0
- package/js/tag/key.js.map +1 -0
- package/js/tag/kidsToTagArraySubject.function.d.ts +2 -2
- package/js/tag/kidsToTagArraySubject.function.js +2 -1
- package/js/tag/kidsToTagArraySubject.function.js.map +1 -1
- package/js/tag/paint.function.d.ts +15 -0
- package/js/tag/paint.function.js +42 -0
- package/js/tag/paint.function.js.map +1 -0
- package/js/tag/processUpdateAttrContext.function.d.ts +3 -0
- package/js/tag/processUpdateAttrContext.function.js +14 -0
- package/js/tag/processUpdateAttrContext.function.js.map +1 -0
- package/js/tag/processUpdateContext.function.d.ts +5 -0
- package/js/tag/processUpdateContext.function.js +35 -0
- package/js/tag/processUpdateContext.function.js.map +1 -0
- package/js/tag/render/destroyUnlikeTags.function.d.ts +3 -5
- package/js/tag/render/destroyUnlikeTags.function.js +1 -3
- package/js/tag/render/destroyUnlikeTags.function.js.map +1 -1
- package/js/tag/render/renderExistingTag.function.d.ts +4 -6
- package/js/tag/render/renderExistingTag.function.js +11 -27
- package/js/tag/render/renderExistingTag.function.js.map +1 -1
- package/js/tag/render/renderSubjectComponent.function.js +14 -5
- package/js/tag/render/renderSubjectComponent.function.js.map +1 -1
- package/js/tag/render/renderSupport.function.d.ts +8 -3
- package/js/tag/render/renderSupport.function.js +68 -32
- package/js/tag/render/renderSupport.function.js.map +1 -1
- package/js/tag/render/renderTagOnly.function.d.ts +4 -3
- package/js/tag/render/renderTagOnly.function.js +33 -24
- package/js/tag/render/renderTagOnly.function.js.map +1 -1
- package/js/tag/render/renderWithSupport.function.d.ts +8 -4
- package/js/tag/render/renderWithSupport.function.js +12 -10
- package/js/tag/render/renderWithSupport.function.js.map +1 -1
- package/js/tag/render/softDestroySupport.function.d.ts +1 -2
- package/js/tag/render/softDestroySupport.function.js +22 -18
- package/js/tag/render/softDestroySupport.function.js.map +1 -1
- package/js/tag/smartRemoveKids.function.d.ts +3 -0
- package/js/tag/smartRemoveKids.function.js +80 -0
- package/js/tag/smartRemoveKids.function.js.map +1 -0
- package/js/tag/tag.d.ts +16 -3
- package/js/tag/tag.js +48 -16
- package/js/tag/tag.js.map +1 -1
- package/js/tag/tag.types.d.ts +6 -4
- package/js/tag/tag.utils.d.ts +15 -12
- package/js/tag/tag.utils.js.map +1 -1
- package/js/tag/tagElement.d.ts +11 -5
- package/js/tag/tagElement.js +114 -41
- package/js/tag/tagElement.js.map +1 -1
- package/js/tag/tagRunner.d.ts +2 -4
- package/js/tag/tagRunner.js +17 -39
- package/js/tag/tagRunner.js.map +1 -1
- package/js/tag/textNode.js +1 -1
- package/js/tag/textNode.js.map +1 -1
- package/js/tag/update/TagJsSubject.class.d.ts +0 -6
- package/js/tag/update/TagJsSubject.class.js +1 -8
- package/js/tag/update/TagJsSubject.class.js.map +1 -1
- package/js/tag/update/afterChildrenBuilt.function.d.ts +6 -0
- package/js/tag/update/afterChildrenBuilt.function.js +25 -0
- package/js/tag/update/afterChildrenBuilt.function.js.map +1 -0
- package/js/tag/update/getNewGlobal.function.d.ts +2 -0
- package/js/tag/update/getNewGlobal.function.js +7 -0
- package/js/tag/update/getNewGlobal.function.js.map +1 -0
- package/js/tag/update/oneRenderToSupport.function.d.ts +2 -2
- package/js/tag/update/oneRenderToSupport.function.js +7 -7
- package/js/tag/update/oneRenderToSupport.function.js.map +1 -1
- package/js/tag/update/processFirstSubject.utils.d.ts +4 -11
- package/js/tag/update/processFirstSubjectComponent.function.d.ts +6 -0
- package/js/tag/update/processFirstSubjectComponent.function.js +36 -0
- package/js/tag/update/processFirstSubjectComponent.function.js.map +1 -0
- package/js/tag/update/processFirstSubjectValue.function.d.ts +8 -8
- package/js/tag/update/processFirstSubjectValue.function.js +75 -39
- package/js/tag/update/processFirstSubjectValue.function.js.map +1 -1
- package/js/tag/update/processNewValue.function.d.ts +4 -3
- package/js/tag/update/processNewValue.function.js +27 -27
- package/js/tag/update/processNewValue.function.js.map +1 -1
- package/js/tag/update/processRegularValue.function.d.ts +4 -6
- package/js/tag/update/processRegularValue.function.js +10 -23
- package/js/tag/update/processRegularValue.function.js.map +1 -1
- package/js/tag/update/processSubjectComponent.function.d.ts +3 -5
- package/js/tag/update/processSubjectComponent.function.js +18 -22
- package/js/tag/update/processSubjectComponent.function.js.map +1 -1
- package/js/tag/update/processTag.function.d.ts +13 -10
- package/js/tag/update/processTag.function.js +51 -37
- package/js/tag/update/processTag.function.js.map +1 -1
- package/js/tag/update/processTagArray.d.ts +7 -26
- package/js/tag/update/processTagArray.js +118 -141
- package/js/tag/update/processTagArray.js.map +1 -1
- package/js/tag/update/processTagResult.function.d.ts +4 -8
- package/js/tag/update/processTagResult.function.js +31 -30
- package/js/tag/update/processTagResult.function.js.map +1 -1
- package/js/tag/update/updateContextItem.function.d.ts +6 -2
- package/js/tag/update/updateContextItem.function.js +11 -9
- package/js/tag/update/updateContextItem.function.js.map +1 -1
- package/js/tag/update/updateExistingTagComponent.function.d.ts +7 -8
- package/js/tag/update/updateExistingTagComponent.function.js +76 -98
- package/js/tag/update/updateExistingTagComponent.function.js.map +1 -1
- package/js/tag/update/updateExistingValue.function.d.ts +4 -4
- package/js/tag/update/updateExistingValue.function.js +81 -101
- package/js/tag/update/updateExistingValue.function.js.map +1 -1
- package/js/tag/update/validateTemplater.function.d.ts +2 -0
- package/js/tag/update/validateTemplater.function.js +17 -0
- package/js/tag/update/validateTemplater.function.js.map +1 -0
- package/js/tag/updateSupportBy.function.d.ts +3 -0
- package/js/tag/updateSupportBy.function.js +18 -0
- package/js/tag/updateSupportBy.function.js.map +1 -0
- package/js/updateBeforeTemplate.function.d.ts +2 -3
- package/js/updateBeforeTemplate.function.js +10 -8
- package/js/updateBeforeTemplate.function.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,22 +1,24 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { getHtmlSupport } from '../Support.class.js';
|
|
2
|
+
import { ValueTypes } from '../ValueTypes.enum.js';
|
|
3
|
+
import { paintAppends } from '../paint.function.js';
|
|
4
|
+
import { subscribeToTemplate } from '../../interpolations/subscribeToTemplate.function.js';
|
|
5
|
+
import { buildBeforeElement } from '../buildBeforeElement.function.js';
|
|
6
|
+
import { checkTagValueChange } from '../checkDestroyPrevious.function.js';
|
|
7
|
+
/** When first time render, adds to owner childTags
|
|
8
|
+
* Used for BOTH inserts & updates to values that were something else
|
|
9
|
+
* Intended use only for updates
|
|
10
|
+
*/
|
|
11
|
+
export function processTag(ownerSupport, // owner
|
|
6
12
|
subject) {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
if (!support) {
|
|
10
|
-
support = newSupportByTemplater(templater, ownerSupport, subject);
|
|
11
|
-
}
|
|
12
|
-
subject.support = support;
|
|
13
|
+
const global = subject.global;
|
|
14
|
+
const support = global.newest;
|
|
13
15
|
support.ownerSupport = ownerSupport;
|
|
14
|
-
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
subject.checkValueChange = checkTagValueChange;
|
|
17
|
+
const ph = subject.placeholder;
|
|
18
|
+
const result = buildBeforeElement(support, undefined, ph, { counts: { added: 0, removed: 0 } });
|
|
19
|
+
for (const sub of result.subs) {
|
|
20
|
+
subscribeToTemplate(sub);
|
|
21
|
+
}
|
|
20
22
|
return support;
|
|
21
23
|
}
|
|
22
24
|
export function tagFakeTemplater(tag) {
|
|
@@ -27,33 +29,45 @@ export function tagFakeTemplater(tag) {
|
|
|
27
29
|
}
|
|
28
30
|
export function getFakeTemplater() {
|
|
29
31
|
const fake = {
|
|
30
|
-
|
|
31
|
-
// props: {} as Props,
|
|
32
|
-
props: [],
|
|
33
|
-
isTag: true,
|
|
34
|
-
tagJsType: 'templater',
|
|
35
|
-
tagged: false,
|
|
36
|
-
html: () => fake,
|
|
37
|
-
dom: () => fake,
|
|
38
|
-
key: () => fake,
|
|
32
|
+
tagJsType: ValueTypes.templater,
|
|
39
33
|
};
|
|
40
34
|
return fake;
|
|
41
35
|
}
|
|
42
36
|
/** Create Support for a tag component */
|
|
43
37
|
export function newSupportByTemplater(templater, ownerSupport, subject) {
|
|
44
|
-
const support =
|
|
45
|
-
|
|
46
|
-
|
|
38
|
+
const support = getHtmlSupport(templater, ownerSupport, ownerSupport.appSupport, subject);
|
|
39
|
+
const global = subject.global;
|
|
40
|
+
global.context = [];
|
|
47
41
|
return support;
|
|
48
42
|
}
|
|
49
|
-
export function
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
subject.
|
|
53
|
-
|
|
43
|
+
export function processNewTag(templater, ownerSupport, // owner
|
|
44
|
+
subject, // could be tag via result.tag
|
|
45
|
+
appendTo) {
|
|
46
|
+
subject.checkValueChange = checkTagValueChange;
|
|
47
|
+
const support = newSupportByTemplater(templater, ownerSupport, subject);
|
|
54
48
|
support.ownerSupport = ownerSupport;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
|
|
49
|
+
const result = buildBeforeElement(support, appendTo, undefined, { counts: { added: 0, removed: 0 } });
|
|
50
|
+
for (const dom of result.dom) {
|
|
51
|
+
if (dom.marker) {
|
|
52
|
+
paintAppends.push({
|
|
53
|
+
element: dom.marker,
|
|
54
|
+
relative: appendTo, // ph.parentNode as Element,
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
if (dom.domElement) {
|
|
58
|
+
paintAppends.push({
|
|
59
|
+
element: dom.domElement,
|
|
60
|
+
relative: appendTo, // ph.parentNode as Element,
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
let index = -1;
|
|
65
|
+
const length = result.subs.length - 1;
|
|
66
|
+
//++painting.locks
|
|
67
|
+
while (index++ < length) {
|
|
68
|
+
const sub = result.subs[index];
|
|
69
|
+
subscribeToTemplate(sub);
|
|
70
|
+
}
|
|
71
|
+
return support;
|
|
58
72
|
}
|
|
59
73
|
//# sourceMappingURL=processTag.function.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processTag.function.js","sourceRoot":"","sources":["../../../ts/tag/update/processTag.function.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"processTag.function.js","sourceRoot":"","sources":["../../../ts/tag/update/processTag.function.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +1,8 @@
|
|
|
1
|
-
import { InsertBefore } from '../../interpolations/InsertBefore.type.js';
|
|
2
|
-
import { Tag, TagTemplate } from '../Tag.class.js';
|
|
3
|
-
import { Counts } from '../../interpolations/interpolateTemplate.js';
|
|
4
|
-
import { BaseSupport, Support } from '../Support.class.js';
|
|
5
1
|
import { TemplaterResult } from '../TemplaterResult.class.js';
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
array: LastArrayItem[];
|
|
14
|
-
lastRuns?: {
|
|
15
|
-
[index: number]: TagTemplate;
|
|
16
|
-
};
|
|
17
|
-
};
|
|
18
|
-
export type TagArraySubject = TagJsSubject<Tag[]> & {
|
|
19
|
-
insertBefore: InsertBefore;
|
|
20
|
-
lastArray?: LastArrayMeta;
|
|
21
|
-
};
|
|
22
|
-
export declare function processTagArray(subject: TagArraySubject, value: (TemplaterResult | Tag)[], // arry of Tag classes
|
|
23
|
-
insertBefore: InsertBefore, // <template end interpolate />
|
|
24
|
-
ownerSupport: BaseSupport | Support, options: {
|
|
25
|
-
counts: Counts;
|
|
26
|
-
}, fragment?: DocumentFragment): InsertBefore[];
|
|
27
|
-
export {};
|
|
2
|
+
import { BaseSupport, Support } from '../Support.class.js';
|
|
3
|
+
import { Counts } from '../../interpolations/interpolateTemplate.js';
|
|
4
|
+
import { ContextItem } from '../Context.types.js';
|
|
5
|
+
import { StringTag } from '../Tag.class.js';
|
|
6
|
+
export declare function processTagArray(subject: ContextItem, value: (TemplaterResult | StringTag)[], // arry of Tag classes
|
|
7
|
+
ownerSupport: BaseSupport | Support, counts: Counts, appendTo?: Element): void;
|
|
8
|
+
export declare function destroyArrayItem(item: ContextItem, counts: Counts): void;
|
|
@@ -1,161 +1,138 @@
|
|
|
1
1
|
// taggedjs-no-compile
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import { TagJsSubject } from './TagJsSubject.class.js';
|
|
9
|
-
import { afterChildrenBuilt } from './processTag.function.js';
|
|
10
|
-
import { textNode } from '../textNode.js';
|
|
2
|
+
import { paintAppends, paintInsertBefores, paintRemoves } from '../paint.function.js';
|
|
3
|
+
import { processFirstSubjectValue } from './processFirstSubjectValue.function.js';
|
|
4
|
+
import { checkSimpleValueChange } from '../checkDestroyPrevious.function.js';
|
|
5
|
+
import { updateExistingValue } from './updateExistingValue.function.js';
|
|
6
|
+
import { processNewArrayValue } from './processNewValue.function.js';
|
|
7
|
+
import { destroySupport } from '../destroySupport.function.js';
|
|
11
8
|
export function processTagArray(subject, value, // arry of Tag classes
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
let lastArray = subject.lastArray = subject.lastArray || { array: [] };
|
|
16
|
-
if (!subject.global.placeholder) {
|
|
17
|
-
setPlaceholderElm(insertBefore, subject);
|
|
9
|
+
ownerSupport, counts, appendTo) {
|
|
10
|
+
if (!subject.lastArray) {
|
|
11
|
+
subject.lastArray = [];
|
|
18
12
|
}
|
|
19
|
-
|
|
13
|
+
let lastArray = subject.lastArray;
|
|
14
|
+
let runtimeInsertBefore = subject.placeholder;
|
|
20
15
|
let removed = 0;
|
|
21
16
|
/** 🗑️ remove previous items first */
|
|
22
|
-
lastArray
|
|
23
|
-
const
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
if (lessLength) {
|
|
27
|
-
destroyArrayItem(lastArray.array, index, options);
|
|
28
|
-
++removed;
|
|
29
|
-
return false;
|
|
30
|
-
}
|
|
31
|
-
const subTag = value[index - removed];
|
|
32
|
-
const tagClass = isTagClass(subTag);
|
|
33
|
-
let tag = subTag;
|
|
34
|
-
let templater = subTag.templater;
|
|
35
|
-
let prevArrayValue;
|
|
36
|
-
if (tagClass) {
|
|
37
|
-
prevArrayValue = tag.arrayValue;
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
templater = subTag;
|
|
41
|
-
tag = templater.tag;
|
|
42
|
-
prevArrayValue = templater.arrayValue;
|
|
43
|
-
}
|
|
44
|
-
// const tag = subTag?.templater.tag as Tag
|
|
45
|
-
const lastTag = item.support.templater.tag;
|
|
46
|
-
const lastArrayValue = lastTag.arrayValue;
|
|
47
|
-
const destroyItem = !areLikeValues(prevArrayValue, lastArrayValue);
|
|
48
|
-
if (destroyItem) {
|
|
49
|
-
destroyArrayItem(lastArray.array, index, options);
|
|
50
|
-
++removed;
|
|
51
|
-
return false;
|
|
52
|
-
}
|
|
53
|
-
return true;
|
|
17
|
+
const filteredLast = subject.lastArray = lastArray.filter(function lastArrayFilter(item, index) {
|
|
18
|
+
const newRemoved = reviewLastArrayItem(item, value, index, lastArray, removed, counts);
|
|
19
|
+
removed = removed + newRemoved;
|
|
20
|
+
return newRemoved === 0;
|
|
54
21
|
});
|
|
22
|
+
// const eAppendTo = existed ? undefined : appendTo
|
|
23
|
+
const eAppendTo = appendTo; // existed ? undefined : appendTo
|
|
55
24
|
const length = value.length;
|
|
56
25
|
for (let index = 0; index < length; ++index) {
|
|
57
|
-
const
|
|
58
|
-
|
|
59
|
-
const previousSupport = previous?.support;
|
|
60
|
-
const subTag = item;
|
|
61
|
-
const tagClass = isTagClass(subTag);
|
|
62
|
-
const itemSubject = previousSupport?.subject || new TagJsSubject(undefined);
|
|
63
|
-
let templater = subTag.templater;
|
|
64
|
-
let support;
|
|
65
|
-
if (tagClass) {
|
|
66
|
-
if (!templater) {
|
|
67
|
-
templater = tagFakeTemplater(subTag);
|
|
68
|
-
}
|
|
69
|
-
support = new Support(templater, ownerSupport, itemSubject);
|
|
70
|
-
}
|
|
71
|
-
else {
|
|
72
|
-
templater = subTag;
|
|
73
|
-
support = setupNewTemplater(templater, ownerSupport, itemSubject);
|
|
74
|
-
}
|
|
75
|
-
// share global between old and new
|
|
76
|
-
if (previousSupport) {
|
|
77
|
-
const prevSubject = previousSupport.subject;
|
|
78
|
-
const global = prevSubject.global;
|
|
79
|
-
setupNewSupport(support, ownerSupport, prevSubject);
|
|
80
|
-
support.subject.global = global;
|
|
81
|
-
global.newest = support;
|
|
82
|
-
}
|
|
83
|
-
else {
|
|
84
|
-
setupNewSupport(support, ownerSupport, itemSubject);
|
|
85
|
-
}
|
|
86
|
-
// check for html``.key()
|
|
87
|
-
const tag = templater.tag || subTag;
|
|
88
|
-
const keySet = 'arrayValue' in tag;
|
|
89
|
-
if (!keySet) {
|
|
90
|
-
const details = {
|
|
91
|
-
// template: support.getTemplate().string,
|
|
92
|
-
array: value,
|
|
93
|
-
};
|
|
94
|
-
const message = 'Use html`...`.key(item) instead of html`...` to template an Array';
|
|
95
|
-
console.error(message, details);
|
|
96
|
-
const err = new ArrayNoKeyError(message, details);
|
|
97
|
-
throw err;
|
|
98
|
-
}
|
|
99
|
-
const couldBeSame = lastArray.array.length > index;
|
|
100
|
-
if (couldBeSame) {
|
|
101
|
-
const prevSupport = previous.support;
|
|
102
|
-
const prevGlobal = prevSupport.subject.global;
|
|
103
|
-
const oldest = prevGlobal.oldest;
|
|
104
|
-
oldest.updateBy(support);
|
|
105
|
-
continue;
|
|
106
|
-
}
|
|
107
|
-
processAddTagArrayItem(runtimeInsertBefore, support, index, options, lastArray.array, fragment);
|
|
108
|
-
ownerSupport.subject.global.childTags.push(support);
|
|
26
|
+
const newSubject = reviewArrayItem(value, index, filteredLast, ownerSupport, runtimeInsertBefore, counts, eAppendTo);
|
|
27
|
+
runtimeInsertBefore = newSubject.placeholder;
|
|
109
28
|
}
|
|
110
|
-
return clones;
|
|
111
29
|
}
|
|
112
|
-
function
|
|
113
|
-
|
|
114
|
-
const
|
|
115
|
-
|
|
116
|
-
|
|
30
|
+
function reviewArrayItem(array, index, lastArray, ownerSupport, runtimeInsertBefore, // used during updates
|
|
31
|
+
counts, appendTo) {
|
|
32
|
+
const item = array[index];
|
|
33
|
+
const previous = lastArray[index];
|
|
34
|
+
if (previous) {
|
|
35
|
+
return reviewPreviousArrayItem(item, previous, lastArray, ownerSupport, index, runtimeInsertBefore, counts, appendTo);
|
|
36
|
+
}
|
|
37
|
+
return processAddTagArrayItem(item, runtimeInsertBefore, // thisInsert as any,
|
|
38
|
+
ownerSupport, counts, lastArray, appendTo);
|
|
39
|
+
}
|
|
40
|
+
function reviewPreviousArrayItem(item, itemSubject, lastArray, ownerSupport, index, runtimeInsertBefore, // used during updates
|
|
41
|
+
counts, appendTo) {
|
|
42
|
+
const couldBeSame = lastArray.length > index;
|
|
43
|
+
if (couldBeSame) {
|
|
44
|
+
updateExistingValue(itemSubject, item, ownerSupport);
|
|
45
|
+
return itemSubject;
|
|
46
|
+
}
|
|
47
|
+
const result = processAddTagArrayItem(item, runtimeInsertBefore, // thisInsert as any,
|
|
48
|
+
ownerSupport, counts, lastArray, appendTo);
|
|
49
|
+
return result;
|
|
117
50
|
}
|
|
118
|
-
function processAddTagArrayItem(
|
|
119
|
-
|
|
120
|
-
|
|
51
|
+
function processAddTagArrayItem(value, before, // used during updates
|
|
52
|
+
ownerSupport, counts, lastArray, appendTo) {
|
|
53
|
+
const itemSubject = {
|
|
54
|
+
value,
|
|
55
|
+
checkValueChange: checkSimpleValueChange,
|
|
56
|
+
withinOwnerElement: false, // TODO: we need to pass down depth so we can answer this truthfully
|
|
121
57
|
};
|
|
58
|
+
counts.added = counts.added + 1; // index
|
|
59
|
+
const subPlaceholder = document.createTextNode('');
|
|
60
|
+
itemSubject.placeholder = subPlaceholder;
|
|
61
|
+
if (!appendTo) {
|
|
62
|
+
paintInsertBefores.push({
|
|
63
|
+
element: subPlaceholder,
|
|
64
|
+
relative: before,
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
processNewArrayValue(value, ownerSupport, itemSubject);
|
|
68
|
+
processFirstSubjectValue(value, itemSubject, ownerSupport, // support,
|
|
69
|
+
counts, `rvp_${lastArray.length}_array`, appendTo);
|
|
70
|
+
// after processing
|
|
71
|
+
itemSubject.value = value;
|
|
122
72
|
// Added to previous array
|
|
123
|
-
lastArray.push(
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
const children = [...newFragment.children];
|
|
132
|
-
const placeholder = before; // subject.global.placeholder as Text
|
|
133
|
-
const parentNode = placeholder.parentNode;
|
|
134
|
-
parentNode.insertBefore(newFragment, placeholder);
|
|
135
|
-
afterChildrenBuilt(children, support.subject, support);
|
|
73
|
+
lastArray.push(itemSubject);
|
|
74
|
+
if (appendTo) {
|
|
75
|
+
paintAppends.push({
|
|
76
|
+
element: subPlaceholder,
|
|
77
|
+
relative: appendTo,
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
return itemSubject;
|
|
136
81
|
}
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
82
|
+
export function destroyArrayItem(item, counts) {
|
|
83
|
+
const global = item.global;
|
|
84
|
+
const support = global.newest;
|
|
85
|
+
global.deleted = true;
|
|
86
|
+
if (support) {
|
|
87
|
+
destroySupport(support, counts.removed);
|
|
141
88
|
}
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
89
|
+
else {
|
|
90
|
+
const element = item.simpleValueElm;
|
|
91
|
+
delete item.simpleValueElm;
|
|
92
|
+
paintRemoves.push(element);
|
|
146
93
|
}
|
|
147
|
-
|
|
94
|
+
++counts.removed;
|
|
148
95
|
}
|
|
149
|
-
function
|
|
150
|
-
const
|
|
151
|
-
|
|
152
|
-
|
|
96
|
+
function reviewLastArrayItem(subTag, value, index, lastArray, removed, counts) {
|
|
97
|
+
const newLength = value.length - 1;
|
|
98
|
+
const at = index - removed;
|
|
99
|
+
const lessLength = at < 0 || newLength < at;
|
|
100
|
+
if (lessLength) {
|
|
101
|
+
destroyArrayItem(lastArray[index], counts);
|
|
102
|
+
++removed;
|
|
103
|
+
return 1;
|
|
104
|
+
}
|
|
105
|
+
/*
|
|
106
|
+
const nowValue = getArrayValueByItem(subTag)
|
|
107
|
+
const lastArrayValue = lastArray.array[index].arrayValue
|
|
108
|
+
*/
|
|
109
|
+
// check for html``.key()
|
|
110
|
+
/*
|
|
111
|
+
const keySet = 'arrayValue' in tag
|
|
112
|
+
if (!keySet) {
|
|
113
|
+
const details = {
|
|
114
|
+
array: value.map(item => item.values || item),
|
|
115
|
+
vdom: (tag as any)?.support.templater.tag.dom,
|
|
116
|
+
tag,
|
|
117
|
+
lastArray: lastArray.array[index]
|
|
118
|
+
}
|
|
119
|
+
const message = 'Found Tag in array without key value, during array update. Be sure to use "html`...`.key(unique)" OR import TaggedJs "key" "key(unique).html = CustomTag(props)"'
|
|
120
|
+
console.error(message, details)
|
|
121
|
+
const err = new ArrayNoKeyError(message, details)
|
|
122
|
+
throw err
|
|
123
|
+
}
|
|
124
|
+
*/
|
|
125
|
+
/*
|
|
126
|
+
const destroyItem = nowValue !== lastArrayValue
|
|
127
|
+
if(destroyItem) {
|
|
128
|
+
destroyArrayItem(lastArray.array, index, counts)
|
|
129
|
+
++removed
|
|
130
|
+
return 1
|
|
131
|
+
}
|
|
132
|
+
*/
|
|
133
|
+
return 0;
|
|
153
134
|
}
|
|
154
|
-
function
|
|
155
|
-
|
|
156
|
-
const support = last.support;
|
|
157
|
-
destroyArrayTag(support, options.counts);
|
|
158
|
-
last.deleted = true;
|
|
159
|
-
++options.counts.removed;
|
|
135
|
+
function getArrayValueByItem(item) {
|
|
136
|
+
return item?.arrayValue || item;
|
|
160
137
|
}
|
|
161
138
|
//# sourceMappingURL=processTagArray.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processTagArray.js","sourceRoot":"","sources":["../../../ts/tag/update/processTagArray.ts"],"names":[],"mappings":"AAAA,sBAAsB;
|
|
1
|
+
{"version":3,"file":"processTagArray.js","sourceRoot":"","sources":["../../../ts/tag/update/processTagArray.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
import { Counts } from '../../interpolations/interpolateTemplate.js';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
export declare function processTagResult(support: Support, subject: TagArraySubject | TagSubject | Function, // used for recording past and current value
|
|
7
|
-
{ counts, }: {
|
|
8
|
-
counts: Counts;
|
|
9
|
-
}, fragment?: DocumentFragment): Support;
|
|
2
|
+
import { AnySupport } from '../Support.class.js';
|
|
3
|
+
import { ContextItem } from '../Context.types.js';
|
|
4
|
+
export declare function processReplaceTagResult(support: AnySupport, counts: Counts, contextItem: ContextItem): AnySupport;
|
|
5
|
+
export declare function processFirstTagResult(support: AnySupport, counts: Counts, appendTo: Element): AnySupport;
|
|
@@ -1,37 +1,38 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
{
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
import { paintAppends } from '../paint.function.js';
|
|
2
|
+
import { subscribeToTemplate } from '../../interpolations/subscribeToTemplate.function.js';
|
|
3
|
+
import { buildBeforeElement } from '../buildBeforeElement.function.js';
|
|
4
|
+
import { checkTagValueChange } from '../index.js';
|
|
5
|
+
export function processReplaceTagResult(support, counts, contextItem) {
|
|
6
|
+
contextItem.checkValueChange = checkTagValueChange;
|
|
7
|
+
const ph = contextItem.placeholder;
|
|
8
|
+
const result = buildBeforeElement(support, undefined, ph, { counts });
|
|
9
|
+
const subs = result.subs;
|
|
10
|
+
for (const sub of subs) {
|
|
11
|
+
subscribeToTemplate(sub);
|
|
11
12
|
}
|
|
12
|
-
const newFragment = support.buildBeforeElement(undefined, { counts });
|
|
13
|
-
//if(fragment) {
|
|
14
|
-
// fragment.appendChild(newFragment)
|
|
15
|
-
//} else {
|
|
16
|
-
const placeholder = subject.global.placeholder;
|
|
17
|
-
const parentNode = placeholder.parentNode;
|
|
18
|
-
parentNode.insertBefore(newFragment, placeholder);
|
|
19
|
-
//}
|
|
20
13
|
return support;
|
|
21
14
|
}
|
|
22
|
-
function
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
15
|
+
export function processFirstTagResult(support, counts, appendTo) {
|
|
16
|
+
let appendIndex = paintAppends.length;
|
|
17
|
+
const result = buildBeforeElement(support, appendTo, undefined, { counts });
|
|
18
|
+
for (const dom of result.dom) {
|
|
19
|
+
if (dom.domElement) {
|
|
20
|
+
paintAppends.splice(appendIndex++, 0, {
|
|
21
|
+
element: dom.domElement,
|
|
22
|
+
relative: appendTo,
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
if (dom.marker) {
|
|
26
|
+
paintAppends.splice(appendIndex++, 0, {
|
|
27
|
+
element: dom.marker,
|
|
28
|
+
relative: appendTo,
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
const subs = result.subs;
|
|
33
|
+
for (const sub of subs) {
|
|
34
|
+
subscribeToTemplate(sub);
|
|
30
35
|
}
|
|
31
|
-
// ??? - new removed
|
|
32
|
-
// prevSupport.updateBy(support)
|
|
33
|
-
subject.global.oldest.updateBy(support);
|
|
34
|
-
subject.support = support;
|
|
35
36
|
return support;
|
|
36
37
|
}
|
|
37
38
|
//# sourceMappingURL=processTagResult.function.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processTagResult.function.js","sourceRoot":"","sources":["../../../ts/tag/update/processTagResult.function.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"processTagResult.function.js","sourceRoot":"","sources":["../../../ts/tag/update/processTagResult.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAsB,MAAM,sBAAsB,CAAA;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAA;AAE1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAA;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEjD,MAAM,UAAU,uBAAuB,CACrC,OAAmB,EACnB,MAAc,EACd,WAAwB;IAExB,WAAW,CAAC,gBAAgB,GAAG,mBAAmB,CAAA;IAClD,MAAM,EAAE,GAAG,WAAW,CAAC,WAAmB,CAAA;IAE1C,MAAM,MAAM,GAAG,kBAAkB,CAC/B,OAAO,EACP,SAAS,EACT,EAAE,EACF,EAAC,MAAM,EAAC,CACT,CAAA;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;IACxB,KAAI,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACtB,mBAAmB,CAAC,GAAG,CAAC,CAAA;IAC1B,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,OAAmB,EACnB,MAAc,EACd,QAAiB;IAEjB,IAAI,WAAW,GAAG,YAAY,CAAC,MAAM,CAAA;IAErC,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAC,MAAM,EAAC,CAAC,CAAA;IACzE,KAAI,MAAM,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;QAC5B,IAAG,GAAG,CAAC,UAAU,EAAE,CAAC;YAClB,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE;gBACpC,OAAO,EAAE,GAAG,CAAC,UAAU;gBACvB,QAAQ,EAAE,QAAQ;aACnB,CAAC,CAAA;QACJ,CAAC;QACD,IAAG,GAAG,CAAC,MAAM,EAAE,CAAC;YACd,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE;gBACpC,OAAO,EAAE,GAAG,CAAC,MAAM;gBACnB,QAAQ,EAAE,QAAQ;aACnB,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;IACxB,KAAI,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACtB,mBAAmB,CAAC,GAAG,CAAC,CAAA;IAC1B,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC"}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
import { TemplateValue } from './processFirstSubject.utils.js';
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import { ContextItem } from '../Tag.class.js';
|
|
3
|
+
import { TypedValue } from '../getValueType.function.js';
|
|
4
|
+
import { AnySupport } from '../Support.class.js';
|
|
5
|
+
/** return boolean indicated if render took place */
|
|
6
|
+
export declare function updateContextItem(contextItem: ContextItem, value: TemplateValue, ownerSupport: AnySupport, valueType: TypedValue): boolean;
|
|
7
|
+
export declare function updateOneContextValue(value: TemplateValue, contextItem: ContextItem): void;
|
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
if (isSub) {
|
|
6
|
-
return; // emits on its own
|
|
7
|
-
}
|
|
1
|
+
import { updateExistingValue } from './updateExistingValue.function.js';
|
|
2
|
+
/** return boolean indicated if render took place */
|
|
3
|
+
export function updateContextItem(contextItem, value, ownerSupport, valueType) {
|
|
4
|
+
contextItem.global.nowValueType = valueType;
|
|
8
5
|
// listeners will evaluate updated values to possibly update display(s)
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
const result = updateExistingValue(contextItem, value, ownerSupport).rendered;
|
|
7
|
+
updateOneContextValue(value, contextItem);
|
|
8
|
+
return result;
|
|
9
|
+
}
|
|
10
|
+
export function updateOneContextValue(value, contextItem) {
|
|
11
|
+
contextItem.value = value;
|
|
12
|
+
contextItem.global.lastValue = value;
|
|
11
13
|
}
|
|
12
14
|
//# sourceMappingURL=updateContextItem.function.js.map
|