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,27 +1,146 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
1
|
+
import { deepEqual } from '../deepFunctions.js';
|
|
2
|
+
import { isArray } from '../isInstance.js';
|
|
3
|
+
import { hasPropLengthsChanged } from './render/renderSupport.function.js';
|
|
4
|
+
import { PropWatches } from './tag.js';
|
|
5
|
+
import { BasicTypes } from './ValueTypes.enum.js';
|
|
6
|
+
export function hasSupportChanged(lastSupport, newTemplater) {
|
|
7
|
+
const latestProps = newTemplater.props;
|
|
8
|
+
const propsConfig = lastSupport.propsConfig;
|
|
9
|
+
const pastCloneProps = propsConfig.latest;
|
|
10
|
+
const propsChanged = hasPropChanges(latestProps, pastCloneProps, lastSupport.templater.propWatch);
|
|
11
|
+
return propsChanged;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
*
|
|
15
|
+
* @param props
|
|
16
|
+
* @param pastCloneProps
|
|
17
|
+
* @returns WHEN number then props have changed. WHEN false props have not changed
|
|
18
|
+
*/
|
|
19
|
+
function hasPropChanges(props, // natural props
|
|
20
|
+
pastCloneProps, // previously cloned props
|
|
21
|
+
propWatch) {
|
|
22
|
+
const hasLenChanged = hasPropLengthsChanged(props, pastCloneProps);
|
|
23
|
+
if (hasLenChanged) {
|
|
24
|
+
return 11;
|
|
25
|
+
}
|
|
26
|
+
switch (propWatch) {
|
|
27
|
+
case PropWatches.NONE:
|
|
28
|
+
return 1; // always render
|
|
29
|
+
case PropWatches.SHALLOW: // determining equal is same as immutable, its the previous cloning step thats different
|
|
30
|
+
return shallowPropMatch(props, pastCloneProps);
|
|
31
|
+
case PropWatches.IMMUTABLE:
|
|
32
|
+
return immutablePropMatch(props, pastCloneProps);
|
|
33
|
+
}
|
|
34
|
+
return deepPropChangeCompare(props, pastCloneProps);
|
|
35
|
+
}
|
|
36
|
+
function deepPropChangeCompare(props, pastCloneProps) {
|
|
37
|
+
// DEEP watch
|
|
38
|
+
let castedProps = props;
|
|
39
|
+
let castedPastProps = pastCloneProps;
|
|
40
|
+
castedProps = [...props];
|
|
41
|
+
castedPastProps = [...(pastCloneProps || [])];
|
|
42
|
+
const allFunctionsMatch = castedProps.every((value, index) => onePropCompare(value, index, castedProps, castedPastProps));
|
|
43
|
+
if (!allFunctionsMatch) {
|
|
44
|
+
return 7; // a change has been detected by function comparisons
|
|
45
|
+
}
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
48
|
+
export function immutablePropMatch(props, pastCloneProps) {
|
|
49
|
+
// if every prop the same, then no changes
|
|
50
|
+
const len = props.length;
|
|
51
|
+
for (let index = 0; index < len; ++index) {
|
|
52
|
+
const prop = props[index];
|
|
53
|
+
const pastProp = pastCloneProps[index];
|
|
54
|
+
if (prop !== pastProp) {
|
|
55
|
+
return 2;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return false; // false means has not changed
|
|
59
|
+
}
|
|
60
|
+
export function shallowPropMatch(props, pastCloneProps) {
|
|
61
|
+
// if every prop the same, then no changes
|
|
62
|
+
const len = props.length;
|
|
63
|
+
for (let index = 0; index < len; ++index) {
|
|
64
|
+
const prop = props[index];
|
|
65
|
+
const pastProp = pastCloneProps[index];
|
|
66
|
+
if (isArray(prop) && isArray(pastProp)) {
|
|
67
|
+
if (prop === pastProp) {
|
|
68
|
+
continue;
|
|
69
|
+
}
|
|
70
|
+
return 3.0; // not equal array
|
|
71
|
+
}
|
|
72
|
+
if (typeof (prop) === BasicTypes.function && typeof (pastProp) === BasicTypes.function) {
|
|
73
|
+
continue; // considered good
|
|
74
|
+
}
|
|
75
|
+
if (typeof (prop) === BasicTypes.object) {
|
|
76
|
+
if (typeof (pastCloneProps) === BasicTypes.object) {
|
|
77
|
+
const obEntries = Object.entries(prop);
|
|
78
|
+
for (const subItem of obEntries) {
|
|
79
|
+
const result = objectItemMatches(subItem, pastProp);
|
|
80
|
+
if (!result) {
|
|
81
|
+
return 3.1;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
continue; // all sub objects matched
|
|
86
|
+
}
|
|
87
|
+
if (prop === pastProp) {
|
|
88
|
+
continue; // matched good
|
|
89
|
+
}
|
|
90
|
+
return 3.3; // not equal
|
|
91
|
+
}
|
|
92
|
+
return false; // false means has not changed
|
|
93
|
+
}
|
|
94
|
+
function onePropCompare(value, index, castedProps, castedPastProps) {
|
|
95
|
+
const compare = castedPastProps[index];
|
|
96
|
+
if (typeof (value) === BasicTypes.object) {
|
|
97
|
+
const subCastedProps = { ...value };
|
|
98
|
+
const subCompareProps = { ...compare || {} };
|
|
99
|
+
const matched = Object.entries(subCastedProps).every(([key, value]) => compareProps(value, subCompareProps[key], () => {
|
|
100
|
+
delete subCastedProps[key]; // its a function and not needed to be compared
|
|
101
|
+
delete subCompareProps[key]; // its a function and not needed to be compared
|
|
102
|
+
}));
|
|
103
|
+
return matched;
|
|
104
|
+
}
|
|
105
|
+
return compareProps(value, compare, () => {
|
|
106
|
+
castedProps.splice(index, 1);
|
|
107
|
+
castedPastProps.splice(index, 1);
|
|
24
108
|
});
|
|
25
|
-
|
|
109
|
+
}
|
|
110
|
+
export const shallowCompareDepth = 3;
|
|
111
|
+
export const deepCompareDepth = 10;
|
|
112
|
+
/** returning a number means true good comparison */
|
|
113
|
+
function compareProps(value, compare, onDelete) {
|
|
114
|
+
if (!(typeof (value) === BasicTypes.function)) {
|
|
115
|
+
return deepEqual(value, compare, deepCompareDepth) ? 4 : false;
|
|
116
|
+
}
|
|
117
|
+
const compareFn = compare;
|
|
118
|
+
if (!(typeof (compareFn) === BasicTypes.function)) {
|
|
119
|
+
return false; // its a function now but was not before
|
|
120
|
+
}
|
|
121
|
+
// ensure we are comparing apples to apples as function get wrapped
|
|
122
|
+
const compareOriginal = compare?.original;
|
|
123
|
+
if (compareOriginal) {
|
|
124
|
+
compare = compareOriginal;
|
|
125
|
+
}
|
|
126
|
+
const original = value.original;
|
|
127
|
+
if (original) {
|
|
128
|
+
value = value.original;
|
|
129
|
+
}
|
|
130
|
+
const valueString = value.toString();
|
|
131
|
+
const compareString = compare.toString();
|
|
132
|
+
if (valueString === compareString) {
|
|
133
|
+
onDelete();
|
|
134
|
+
return 5; // both are function the same
|
|
135
|
+
}
|
|
136
|
+
onDelete();
|
|
137
|
+
return 6;
|
|
138
|
+
}
|
|
139
|
+
function objectItemMatches([name, value], pastProp) {
|
|
140
|
+
const pastValue = pastProp[name];
|
|
141
|
+
if (typeof (value) === BasicTypes.function && typeof (pastValue) === BasicTypes.function) {
|
|
142
|
+
return true;
|
|
143
|
+
}
|
|
144
|
+
return pastValue === value;
|
|
26
145
|
}
|
|
27
146
|
//# sourceMappingURL=hasSupportChanged.function.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hasSupportChanged.function.js","sourceRoot":"","sources":["../../ts/tag/hasSupportChanged.function.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hasSupportChanged.function.js","sourceRoot":"","sources":["../../ts/tag/hasSupportChanged.function.ts"],"names":[],"mappings":"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"}
|
package/js/tag/html.d.ts
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { InputElementTargetEvent } from '../interpolations/ElementTargetEvent.interface.js';
|
|
2
|
-
import {
|
|
3
|
-
import { RegularValue } from '
|
|
4
|
-
import { Tag, Dom } from './Tag.class.js';
|
|
1
|
+
import { InputElementTargetEvent } from '../interpolations/attributes/ElementTargetEvent.interface.js';
|
|
2
|
+
import { LikeObjectChildren } from '../interpolations/optimizers/LikeObjectElement.type.js';
|
|
3
|
+
import { RegularValue } from './update/processRegularValue.function.js';
|
|
5
4
|
export type TagValues = (((e: InputElementTargetEvent) => any) | RegularValue | null | undefined | Object)[];
|
|
6
|
-
export declare function html(strings: string[] | TemplateStringsArray, ...values: TagValues): Tag;
|
|
5
|
+
export declare function html(strings: string[] | TemplateStringsArray, ...values: TagValues): import("./Tag.class.js").StringTag;
|
|
7
6
|
export declare namespace html {
|
|
8
|
-
var dom: (dom:
|
|
7
|
+
var dom: (dom: LikeObjectChildren, ...values: TagValues) => import("./Tag.class.js").DomTag;
|
|
9
8
|
}
|
package/js/tag/html.js
CHANGED
|
@@ -1,8 +1,14 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getStringTag, getDomTag } from './Tag.class.js';
|
|
2
|
+
import { PropWatches } from './tag.js';
|
|
3
|
+
import { getTemplaterResult } from './TemplaterResult.class.js';
|
|
2
4
|
export function html(strings, ...values) {
|
|
3
|
-
|
|
5
|
+
const stringTag = getStringTag(strings, values);
|
|
6
|
+
const templater = getTemplaterResult(PropWatches.NONE);
|
|
7
|
+
templater.tag = stringTag;
|
|
8
|
+
stringTag.templater = templater;
|
|
9
|
+
return stringTag;
|
|
4
10
|
}
|
|
5
11
|
html.dom = function (dom, ...values) {
|
|
6
|
-
return
|
|
12
|
+
return getDomTag(dom, values);
|
|
7
13
|
};
|
|
8
14
|
//# sourceMappingURL=html.js.map
|
package/js/tag/html.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html.js","sourceRoot":"","sources":["../../ts/tag/html.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"html.js","sourceRoot":"","sources":["../../ts/tag/html.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAK/D,MAAM,UAAU,IAAI,CAClB,OAAwC,EACxC,GAAG,MAAiB;IAEpB,MAAM,SAAS,GAAG,YAAY,CAAC,OAAmB,EAAE,MAAM,CAAC,CAAA;IAC3D,MAAM,SAAS,GAAG,kBAAkB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;IACtD,SAAS,CAAC,GAAG,GAAG,SAAS,CAAA;IACzB,SAAS,CAAC,SAAS,GAAG,SAAS,CAAA;IAC/B,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,IAAI,CAAC,GAAG,GAAG,UACT,GAAuB,EACvB,GAAG,MAAiB;IAEpB,OAAO,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;AAC/B,CAAC,CAAA"}
|
package/js/tag/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
export { getNewGlobal } from './update/getNewGlobal.function.js';
|
|
1
2
|
export * from './tag.types.js';
|
|
2
3
|
export { getDomMeta } from './domMetaCollector.js';
|
|
4
|
+
export * from './buildBeforeElement.function.js';
|
|
3
5
|
export * from './tag.js';
|
|
4
6
|
export * from './Tag.class.js';
|
|
5
7
|
export * from './tag.utils.js';
|
|
@@ -7,5 +9,13 @@ export * from './html.js';
|
|
|
7
9
|
export * from './ValueTypes.enum.js';
|
|
8
10
|
export * from './render/renderTagOnly.function.js';
|
|
9
11
|
export * from './update/oneRenderToSupport.function.js';
|
|
10
|
-
export * from './getValueType.function.js';
|
|
11
12
|
export * from './TemplaterResult.class.js';
|
|
13
|
+
export * from './destroySupport.function.js';
|
|
14
|
+
export * from './checkDestroyPrevious.function.js';
|
|
15
|
+
export * from './Context.types.js';
|
|
16
|
+
export * from './tagElement.js';
|
|
17
|
+
export { Tag, StringTag, DomTag, variablePrefix } from './Tag.class.js';
|
|
18
|
+
export { renderSupport } from './render/renderSupport.function.js';
|
|
19
|
+
export { renderWithSupport } from './render/renderWithSupport.function.js';
|
|
20
|
+
export { paint } from './paint.function.js';
|
|
21
|
+
export { processFirstSubjectValue } from './update/processFirstSubjectValue.function.js';
|
package/js/tag/index.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
export { getNewGlobal } from './update/getNewGlobal.function.js';
|
|
1
2
|
export * from './tag.types.js';
|
|
2
3
|
export { getDomMeta } from './domMetaCollector.js';
|
|
4
|
+
export * from './buildBeforeElement.function.js';
|
|
3
5
|
export * from './tag.js';
|
|
4
6
|
export * from './Tag.class.js';
|
|
5
7
|
export * from './tag.utils.js';
|
|
@@ -7,6 +9,14 @@ export * from './html.js';
|
|
|
7
9
|
export * from './ValueTypes.enum.js';
|
|
8
10
|
export * from './render/renderTagOnly.function.js';
|
|
9
11
|
export * from './update/oneRenderToSupport.function.js';
|
|
10
|
-
export * from './getValueType.function.js';
|
|
11
12
|
export * from './TemplaterResult.class.js';
|
|
13
|
+
export * from './destroySupport.function.js';
|
|
14
|
+
export * from './checkDestroyPrevious.function.js';
|
|
15
|
+
export * from './Context.types.js';
|
|
16
|
+
export * from './tagElement.js';
|
|
17
|
+
export { variablePrefix } from './Tag.class.js';
|
|
18
|
+
export { renderSupport } from './render/renderSupport.function.js';
|
|
19
|
+
export { renderWithSupport } from './render/renderWithSupport.function.js';
|
|
20
|
+
export { paint } from './paint.function.js';
|
|
21
|
+
export { processFirstSubjectValue } from './update/processFirstSubjectValue.function.js';
|
|
12
22
|
//# sourceMappingURL=index.js.map
|
package/js/tag/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/tag/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,cAAc,UAAU,CAAA;AACxB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA;AACpC,cAAc,oCAAoC,CAAA;AAClD,cAAc,yCAAyC,CAAA;AACvD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/tag/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAChE,cAAc,gBAAgB,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,cAAc,kCAAkC,CAAA;AAChD,cAAc,UAAU,CAAA;AACxB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA;AACpC,cAAc,oCAAoC,CAAA;AAClD,cAAc,yCAAyC,CAAA;AACvD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,oCAAoC,CAAA;AAClD,cAAc,oBAAoB,CAAA;AAElC,cAAc,iBAAiB,CAAA;AAC/B,OAAO,EAA0B,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAA;AAC1E,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,+CAA+C,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { StringTag, DomTag } from './Tag.class.js';
|
|
2
2
|
import { BaseSupport, Support } from './Support.class.js';
|
|
3
|
-
export declare function isLikeTags(support0: BaseSupport | Support |
|
|
4
|
-
support1: Support | BaseSupport):
|
|
3
|
+
export declare function isLikeTags(support0: BaseSupport | Support | StringTag, // new
|
|
4
|
+
support1: Support | BaseSupport): boolean;
|
|
5
|
+
export declare function isLikeDomTags(tag0: DomTag, tag1: DomTag): boolean;
|
|
5
6
|
export declare function isLikeValueSets(values0: any[], values1: any[]): boolean;
|
|
@@ -1,43 +1,30 @@
|
|
|
1
|
-
import { ValueTypes } from './ValueTypes.enum.js';
|
|
2
|
-
import { deepEqual } from '../deepFunctions.js';
|
|
1
|
+
import { BasicTypes, ValueTypes } from './ValueTypes.enum.js';
|
|
3
2
|
export function isLikeTags(support0, // new
|
|
4
3
|
support1) {
|
|
5
4
|
const templater0 = support0.templater;
|
|
6
5
|
const templater1 = support1.templater;
|
|
7
|
-
// TODO: turn this on
|
|
8
|
-
/*
|
|
9
|
-
if(templater0 === templater1) {
|
|
10
|
-
return true
|
|
11
|
-
}
|
|
12
|
-
*/
|
|
13
6
|
const tag0 = templater0?.tag || support0;
|
|
14
|
-
const tag1 = templater1.tag;
|
|
15
|
-
if (
|
|
16
|
-
return
|
|
7
|
+
const tag1 = templater1.tag; // || (support1 as any)
|
|
8
|
+
if (templater0?.tagJsType === ValueTypes.stateRender) {
|
|
9
|
+
return templater0.dom === templater1.dom;
|
|
17
10
|
}
|
|
18
11
|
if (tag0.tagJsType === ValueTypes.dom) {
|
|
19
|
-
return isLikeDomTags(tag0, tag1
|
|
12
|
+
return isLikeDomTags(tag0, tag1);
|
|
20
13
|
}
|
|
21
|
-
|
|
14
|
+
const like = isLikeStringTags(tag0, tag1, support0, support1);
|
|
15
|
+
return like;
|
|
22
16
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
const equal = deepEqual(tag0.dom, tag1.dom);
|
|
29
|
-
if (!equal) {
|
|
30
|
-
return false;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
const values0 = support0.values || tag0.values;
|
|
34
|
-
const values1 = support1.values || tag1.values;
|
|
35
|
-
return isLikeValueSets(values0, values1);
|
|
17
|
+
// used when compiler was used
|
|
18
|
+
export function isLikeDomTags(tag0, tag1) {
|
|
19
|
+
const domMeta0 = tag0.dom;
|
|
20
|
+
const domMeta1 = tag1.dom;
|
|
21
|
+
return domMeta0 === domMeta1;
|
|
36
22
|
}
|
|
23
|
+
// used for no compiling
|
|
37
24
|
function isLikeStringTags(tag0, tag1, support0, // new
|
|
38
25
|
support1) {
|
|
39
26
|
const strings0 = tag0.strings;
|
|
40
|
-
const strings1 = tag1.strings
|
|
27
|
+
const strings1 = tag1.strings;
|
|
41
28
|
if (strings0.length !== strings1.length) {
|
|
42
29
|
return false;
|
|
43
30
|
}
|
|
@@ -47,8 +34,8 @@ support1) {
|
|
|
47
34
|
if (!everyStringMatched) {
|
|
48
35
|
return false;
|
|
49
36
|
}
|
|
50
|
-
const values0 = support0.values || tag0.values;
|
|
51
|
-
const values1 = support1.values || tag1.values;
|
|
37
|
+
const values0 = support0.templater.values || tag0.values;
|
|
38
|
+
const values1 = support1.templater.values || tag1.values;
|
|
52
39
|
return isLikeValueSets(values0, values1);
|
|
53
40
|
}
|
|
54
41
|
export function isLikeValueSets(values0, values1) {
|
|
@@ -58,7 +45,7 @@ export function isLikeValueSets(values0, values1) {
|
|
|
58
45
|
}
|
|
59
46
|
const allVarsMatch = values1.every((value, index) => {
|
|
60
47
|
const compareTo = values0[index];
|
|
61
|
-
const isFunctions = value
|
|
48
|
+
const isFunctions = typeof (value) === BasicTypes.function && typeof (compareTo) === BasicTypes.function;
|
|
62
49
|
if (isFunctions) {
|
|
63
50
|
const stringMatch = value.toString() === compareTo.toString();
|
|
64
51
|
if (stringMatch) {
|
|
@@ -66,7 +53,7 @@ export function isLikeValueSets(values0, values1) {
|
|
|
66
53
|
}
|
|
67
54
|
return false;
|
|
68
55
|
}
|
|
69
|
-
return true;
|
|
56
|
+
return true;
|
|
70
57
|
});
|
|
71
58
|
if (allVarsMatch) {
|
|
72
59
|
return true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isLikeTags.function.js","sourceRoot":"","sources":["../../ts/tag/isLikeTags.function.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"isLikeTags.function.js","sourceRoot":"","sources":["../../ts/tag/isLikeTags.function.ts"],"names":[],"mappings":"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"}
|
package/js/tag/key.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { DomTag, StringTag } from "./index";
|
|
2
|
+
import { ToTag } from "./tag.types";
|
|
3
|
+
/** Used to give unique value to an array of tag content. Should not be an object */
|
|
4
|
+
export declare function key(arrayValue: string | number | null): {
|
|
5
|
+
html: StringTag | DomTag | ToTag;
|
|
6
|
+
};
|
package/js/tag/key.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"key.js","sourceRoot":"","sources":["../../ts/tag/key.ts"],"names":[],"mappings":"AAGA,oFAAoF;AACpF,MAAM,UAAU,GAAG,CAAC,UAAkC;IACpD,OAAO;QACL,IAAI,IAAI,CAAC,QAAoC;YAC3C,QAAQ,CAAC,UAAU,GAAG,UAAU,CAAA;QAClC,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { StringTag, DomTag } from './Tag.class.js';
|
|
2
2
|
import { ValueSubject } from '../subject/ValueSubject.js';
|
|
3
3
|
import { TagChildrenInput } from './tag.utils.js';
|
|
4
4
|
import { TemplaterResult } from './TemplaterResult.class.js';
|
|
5
|
-
export declare function kidsToTagArraySubject(children: TagChildrenInput | undefined, templaterResult: TemplaterResult): ValueSubject<(
|
|
5
|
+
export declare function kidsToTagArraySubject(children: TagChildrenInput | undefined, templaterResult: TemplaterResult): ValueSubject<(StringTag | DomTag)[]>;
|
|
@@ -11,7 +11,8 @@ export function kidsToTagArraySubject(children, templaterResult) {
|
|
|
11
11
|
}
|
|
12
12
|
const kid = children;
|
|
13
13
|
if (kid) {
|
|
14
|
-
templaterResult.madeChildIntoSubject = true
|
|
14
|
+
templaterResult.madeChildIntoSubject = true // was converted into a subject
|
|
15
|
+
;
|
|
15
16
|
kid.arrayValue = 0;
|
|
16
17
|
return new ValueSubject([kid]);
|
|
17
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kidsToTagArraySubject.function.js","sourceRoot":"","sources":["../../ts/tag/kidsToTagArraySubject.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAIzD,MAAM,UAAU,qBAAqB,CACnC,QAAsC,EACtC,eAAgC;IAEhC,IAAG,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,OAAO,
|
|
1
|
+
{"version":3,"file":"kidsToTagArraySubject.function.js","sourceRoot":"","sources":["../../ts/tag/kidsToTagArraySubject.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAIzD,MAAM,UAAU,qBAAqB,CACnC,QAAsC,EACtC,eAAgC;IAEhC,IAAG,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,OAAO,QAAgD,CAAA;IACzD,CAAC;IAED,MAAM,QAAQ,GAAG,QAAkC,CAAA;IACnD,IAAG,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxB,eAAe,CAAC,oBAAoB,GAAG,IAAI,CAAA,CAAC,+BAA+B;QAC3E,OAAO,IAAI,YAAY,CAAC,QAAkC,CAAC,CAAA;IAC7D,CAAC;IAED,MAAM,GAAG,GAAG,QAA8B,CAAA;IAC1C,IAAG,GAAG,EAAE,CAAC;QACP,eAAe,CAAC,oBAAoB,GAAG,IAAI,CAAC,+BAA+B;SAC1E;QAAC,GAAW,CAAC,UAAU,GAAG,CAAC,CAAA;QAC5B,OAAO,IAAI,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IAChC,CAAC;IAED,eAAe,CAAC,oBAAoB,GAAG,IAAI,CAAA,CAAC,+BAA+B;IAC3E,OAAO,IAAI,YAAY,CAAyB,EAAE,CAAC,CAAA;AACrD,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
type PaintAppend = {
|
|
2
|
+
element: Text | Element;
|
|
3
|
+
relative: Text | Element;
|
|
4
|
+
};
|
|
5
|
+
export declare let paintRemoves: (Text | Element | ChildNode)[];
|
|
6
|
+
export declare let paintContent: (() => any)[];
|
|
7
|
+
export declare let setContent: [string, Text][];
|
|
8
|
+
export declare let paintAppends: PaintAppend[];
|
|
9
|
+
export declare let paintInsertBefores: PaintAppend[];
|
|
10
|
+
export declare let paintAfters: (() => any)[];
|
|
11
|
+
export declare const painting: {
|
|
12
|
+
locks: number;
|
|
13
|
+
};
|
|
14
|
+
export declare function paint(): void;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export let paintRemoves = [];
|
|
2
|
+
export let paintContent = [];
|
|
3
|
+
export let setContent = [];
|
|
4
|
+
export let paintAppends = [];
|
|
5
|
+
export let paintInsertBefores = [];
|
|
6
|
+
export let paintAfters = [];
|
|
7
|
+
export const painting = {
|
|
8
|
+
locks: 0
|
|
9
|
+
};
|
|
10
|
+
export function paint() {
|
|
11
|
+
if (painting.locks > 0) {
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
++painting.locks;
|
|
15
|
+
for (const toRemove of paintRemoves) {
|
|
16
|
+
const parentNode = toRemove.parentNode;
|
|
17
|
+
parentNode.removeChild(toRemove);
|
|
18
|
+
}
|
|
19
|
+
for (const content of paintContent) {
|
|
20
|
+
content();
|
|
21
|
+
}
|
|
22
|
+
for (const [text, textNode] of setContent) {
|
|
23
|
+
textNode.textContent = text;
|
|
24
|
+
}
|
|
25
|
+
for (const now of paintAppends) {
|
|
26
|
+
now.relative.appendChild(now.element);
|
|
27
|
+
}
|
|
28
|
+
for (const { element, relative } of paintInsertBefores) {
|
|
29
|
+
relative.parentNode.insertBefore(element, relative);
|
|
30
|
+
}
|
|
31
|
+
for (const now of paintAfters) {
|
|
32
|
+
now();
|
|
33
|
+
}
|
|
34
|
+
paintRemoves = [];
|
|
35
|
+
paintContent = [];
|
|
36
|
+
paintAppends = [];
|
|
37
|
+
paintInsertBefores = [];
|
|
38
|
+
paintAfters = [];
|
|
39
|
+
setContent = [];
|
|
40
|
+
--painting.locks;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=paint.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paint.function.js","sourceRoot":"","sources":["../../ts/tag/paint.function.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,IAAI,YAAY,GAAG,EAAoC,CAAA;AAC9D,MAAM,CAAC,IAAI,YAAY,GAAkB,EAAE,CAAA;AAC3C,MAAM,CAAC,IAAI,UAAU,GAAqB,EAAE,CAAA;AAC5C,MAAM,CAAC,IAAI,YAAY,GAAkB,EAAE,CAAA;AAC3C,MAAM,CAAC,IAAI,kBAAkB,GAAkB,EAAE,CAAA;AACjD,MAAM,CAAC,IAAI,WAAW,GAAkB,EAAE,CAAA;AAE1C,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,KAAK,EAAE,CAAC;CACT,CAAA;AAED,MAAM,UAAU,KAAK;IACnB,IAAG,QAAQ,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;QACtB,OAAM;IACR,CAAC;IAED,EAAE,QAAQ,CAAC,KAAK,CAAA;IAEhB,KAAI,MAAM,QAAQ,IAAI,YAAY,EAAE,CAAC;QACnC,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAwB,CAAA;QACpD,UAAU,CAAC,WAAW,CAAC,QAAmB,CAAC,CAAA;IAC7C,CAAC;IAED,KAAI,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;QAClC,OAAO,EAAE,CAAA;IACX,CAAC;IAED,KAAI,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC;QACzC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAA;IAC7B,CAAC;IAED,KAAI,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAC9B,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IACvC,CAAC;IAED,KAAI,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,kBAAkB,EAAE,CAAC;QACrD,QAAQ,CAAC,UAAyB,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACrE,CAAC;IAED,KAAI,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC7B,GAAG,EAAE,CAAA;IACP,CAAC;IAED,YAAY,GAAG,EAAE,CAAA;IACjB,YAAY,GAAG,EAAE,CAAA;IACjB,YAAY,GAAG,EAAE,CAAA;IACjB,kBAAkB,GAAG,EAAE,CAAA;IACvB,WAAW,GAAG,EAAE,CAAA;IAChB,UAAU,GAAG,EAAE,CAAA;IACf,EAAE,QAAQ,CAAC,KAAK,CAAA;AAClB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { processAttributeEmit, updateNameOnlyAttrValue } from '../interpolations/attributes/processAttribute.function.js';
|
|
2
|
+
export function processUpdateAttrContext(values, value, contextItem, ownerSupport) {
|
|
3
|
+
if (contextItem.isNameOnly) {
|
|
4
|
+
updateNameOnlyAttrValue(values, value, contextItem.value, contextItem.element, // global.element as Element,
|
|
5
|
+
ownerSupport, contextItem.howToSet, []);
|
|
6
|
+
contextItem.value = value;
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
const element = contextItem.element;
|
|
10
|
+
processAttributeEmit(value, contextItem.attrName, contextItem, element, ownerSupport, contextItem.howToSet, contextItem.isSpecial);
|
|
11
|
+
contextItem.value = value;
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=processUpdateAttrContext.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"processUpdateAttrContext.function.js","sourceRoot":"","sources":["../../ts/tag/processUpdateAttrContext.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,2DAA2D,CAAA;AAGzH,MAAM,UAAU,wBAAwB,CACtC,MAAiB,EACjB,KAAc,EACd,WAAwB,EACxB,YAAwB;IAExB,IAAG,WAAW,CAAC,UAAU,EAAE,CAAC;QAC1B,uBAAuB,CACrB,MAAM,EACN,KAAe,EACf,WAAW,CAAC,KAAK,EACjB,WAAW,CAAC,OAAkB,EAAC,6BAA6B;QAC5D,YAAY,EACZ,WAAW,CAAC,QAAoB,EAChC,EAAE,CACH,CAAA;QAED,WAAW,CAAC,KAAK,GAAG,KAAK,CAAA;QAEzB,OAAM;IACR,CAAC;IAED,MAAM,OAAO,GAAG,WAAW,CAAC,OAAkB,CAAA;IAC9C,oBAAoB,CAClB,KAAK,EACL,WAAW,CAAC,QAAkB,EAC9B,WAAW,EACX,OAAO,EACP,YAAY,EACZ,WAAW,CAAC,QAAoB,EAChC,WAAW,CAAC,SAAoB,CACjC,CAAA;IAED,WAAW,CAAC,KAAK,GAAG,KAAK,CAAA;IAEzB,OAAM;AACR,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { AnySupport } from './Support.class.js';
|
|
2
|
+
import { Context } from './Context.types.js';
|
|
3
|
+
export declare function processUpdateContext(support: AnySupport, context: Context): Context;
|
|
4
|
+
/** returns boolean of did render */
|
|
5
|
+
export declare function processUpdateOneContext(values: unknown[], index: number, context: Context, ownerSupport: AnySupport): void;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { updateExistingValue } from './update/updateExistingValue.function.js';
|
|
2
|
+
import { isSubjectInstance } from '../isInstance.js';
|
|
3
|
+
import { processUpdateAttrContext } from './processUpdateAttrContext.function.js';
|
|
4
|
+
export function processUpdateContext(support, context) {
|
|
5
|
+
const thisTag = support.templater.tag;
|
|
6
|
+
const values = thisTag.values;
|
|
7
|
+
let index = 0;
|
|
8
|
+
const len = values.length;
|
|
9
|
+
while (index < len) {
|
|
10
|
+
processUpdateOneContext(values, index, context, support);
|
|
11
|
+
++index;
|
|
12
|
+
}
|
|
13
|
+
return context;
|
|
14
|
+
}
|
|
15
|
+
/** returns boolean of did render */
|
|
16
|
+
export function processUpdateOneContext(values, index, context, ownerSupport) {
|
|
17
|
+
const value = values[index];
|
|
18
|
+
// is something already there?
|
|
19
|
+
const contextItem = context[index];
|
|
20
|
+
if (isSubjectInstance(value)) {
|
|
21
|
+
return; // emits on its own
|
|
22
|
+
}
|
|
23
|
+
if (contextItem.isAttr) {
|
|
24
|
+
// Do not continue if the value is just the same
|
|
25
|
+
if (value === contextItem.value) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
processUpdateAttrContext(values, value, contextItem, ownerSupport);
|
|
29
|
+
contextItem.value = value;
|
|
30
|
+
}
|
|
31
|
+
// listeners will evaluate updated values to possibly update display(s)
|
|
32
|
+
updateExistingValue(contextItem, value, ownerSupport);
|
|
33
|
+
contextItem.value = value;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=processUpdateContext.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"processUpdateContext.function.js","sourceRoot":"","sources":["../../ts/tag/processUpdateContext.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAA;AAE9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAA;AAEjF,MAAM,UAAU,oBAAoB,CAClC,OAAmB,EACnB,OAAgB;IAEhB,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,GAAyB,CAAA;IAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;IAE7B,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAA;IACzB,OAAO,KAAK,GAAG,GAAG,EAAE,CAAC;QACnB,uBAAuB,CACrB,MAAM,EACN,KAAK,EACL,OAAO,EACP,OAAO,CACR,CAAA;QAED,EAAE,KAAK,CAAA;IACT,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,oCAAoC;AACpC,MAAM,UAAU,uBAAuB,CACrC,MAAiB,EACjB,KAAa,EACb,OAAgB,EAChB,YAAwB;IAExB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAQ,CAAA;IAElC,8BAA8B;IAC9B,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;IAElC,IAAG,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAM,CAAC,mBAAmB;IAC5B,CAAC;IAED,IAAG,WAAW,CAAC,MAAM,EAAE,CAAC;QACtB,gDAAgD;QAChD,IAAG,KAAK,KAAK,WAAW,CAAC,KAAK,EAAE,CAAC;YAC/B,OAAM;QACR,CAAC;QAED,wBAAwB,CACtB,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,CACzC,CAAA;QAED,WAAW,CAAC,KAAK,GAAG,KAAK,CAAA;IAC3B,CAAC;IAED,uEAAuE;IACvE,mBAAmB,CACjB,WAAW,EACX,KAAK,EACL,YAAY,CACb,CAAA;IAED,WAAW,CAAC,KAAK,GAAG,KAAK,CAAA;AAC3B,CAAC"}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
reSupport: Support, // new
|
|
5
|
-
subject: TagSubject): void;
|
|
1
|
+
import { AnySupport } from '../Support.class.js';
|
|
2
|
+
export declare function destroyUnlikeTags(lastSupport: AnySupport, // old
|
|
3
|
+
reSupport: AnySupport): void;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { softDestroySupport } from './softDestroySupport.function.js';
|
|
2
2
|
import { moveProviders } from '../update/updateExistingTagComponent.function.js';
|
|
3
3
|
export function destroyUnlikeTags(lastSupport, // old
|
|
4
|
-
reSupport
|
|
5
|
-
subject) {
|
|
4
|
+
reSupport) {
|
|
6
5
|
// when a tag is destroyed, disconnect the globals
|
|
7
6
|
const global = reSupport.subject.global; // = {...oldGlobal} // break memory references
|
|
8
7
|
moveProviders(lastSupport, reSupport);
|
|
@@ -10,6 +9,5 @@ subject) {
|
|
|
10
9
|
delete global.deleted;
|
|
11
10
|
global.oldest = reSupport;
|
|
12
11
|
global.newest = reSupport;
|
|
13
|
-
subject.support = reSupport;
|
|
14
12
|
}
|
|
15
13
|
//# sourceMappingURL=destroyUnlikeTags.function.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"destroyUnlikeTags.function.js","sourceRoot":"","sources":["../../../ts/tag/render/destroyUnlikeTags.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;
|
|
1
|
+
{"version":3,"file":"destroyUnlikeTags.function.js","sourceRoot":"","sources":["../../../ts/tag/render/destroyUnlikeTags.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,kDAAkD,CAAA;AAEhF,MAAM,UAAU,iBAAiB,CAC/B,WAAuB,EAAE,MAAM;AAC/B,SAAqB;IAErB,kDAAkD;IAClD,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAA,CAAC,8CAA8C;IAEtF,aAAa,CAAC,WAAsB,EAAE,SAAS,CAAC,CAAA;IAChD,kBAAkB,CAAC,WAAW,CAAC,CAAA;IAC/B,OAAO,MAAM,CAAC,OAAO,CAAA;IAErB,MAAM,CAAC,MAAM,GAAG,SAAS,CAAA;IACzB,MAAM,CAAC,MAAM,GAAG,SAAS,CAAA;AAC3B,CAAC"}
|