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
package/js/tag/tag.js
CHANGED
|
@@ -1,59 +1,91 @@
|
|
|
1
1
|
// taggedjs-no-compile
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { setUseMemory } from '../state/index.js';
|
|
3
|
+
import { getTemplaterResult } from './TemplaterResult.class.js';
|
|
4
4
|
import { tags } from './tag.utils.js';
|
|
5
5
|
import { getTagWrap } from './getTagWrap.function.js';
|
|
6
6
|
import { ValueTypes } from './ValueTypes.enum.js';
|
|
7
|
+
import { key } from './key.js';
|
|
7
8
|
let tagCount = 0;
|
|
9
|
+
export var PropWatches;
|
|
10
|
+
(function (PropWatches) {
|
|
11
|
+
PropWatches["DEEP"] = "deep";
|
|
12
|
+
PropWatches["SHALLOW"] = "shallow";
|
|
13
|
+
PropWatches["NONE"] = "none";
|
|
14
|
+
PropWatches["IMMUTABLE"] = "immutable";
|
|
15
|
+
})(PropWatches || (PropWatches = {}));
|
|
8
16
|
/** Wraps a function tag in a state manager and calls wrapped function on event cycles
|
|
9
17
|
* For single rendering, no event cycles, use: tag.renderOnce = (props) => html``
|
|
10
18
|
*/
|
|
11
|
-
export function tag(tagComponent) {
|
|
19
|
+
export function tag(tagComponent, propWatch = PropWatches.SHALLOW) {
|
|
12
20
|
/** function developer triggers */
|
|
13
21
|
const parentWrap = (function tagWrapper(...props) {
|
|
14
|
-
const templater =
|
|
22
|
+
const templater = getTemplaterResult(propWatch, props);
|
|
15
23
|
templater.tagJsType = ValueTypes.tagComponent;
|
|
16
24
|
// attach memory back to original function that contains developer display logic
|
|
17
25
|
const innerTagWrap = getTagWrap(templater, parentWrap);
|
|
18
26
|
if (!innerTagWrap.parentWrap) {
|
|
19
27
|
innerTagWrap.parentWrap = parentWrap;
|
|
20
28
|
}
|
|
21
|
-
templater.tagged = true;
|
|
22
29
|
templater.wrapper = innerTagWrap;
|
|
23
30
|
return templater;
|
|
24
31
|
}) // we override the function provided and pretend original is what's returned
|
|
25
32
|
;
|
|
26
33
|
parentWrap.original = tagComponent;
|
|
27
|
-
parentWrap.compareTo = tagComponent.toString()
|
|
34
|
+
// parentWrap.compareTo = (tagComponent as any).toString()
|
|
28
35
|
const tag = tagComponent;
|
|
29
|
-
parentWrap.isTag = true;
|
|
30
36
|
parentWrap.original = tag;
|
|
31
37
|
// group tags together and have hmr pickup
|
|
32
38
|
tag.tags = tags;
|
|
33
|
-
tag.setUse =
|
|
39
|
+
tag.setUse = setUseMemory;
|
|
40
|
+
tag.ValueTypes = ValueTypes;
|
|
34
41
|
tag.tagIndex = tagCount++; // needed for things like HMR
|
|
35
42
|
tags.push(parentWrap);
|
|
36
43
|
return parentWrap;
|
|
37
44
|
}
|
|
38
45
|
/** Used to create a tag component that renders once and has no addition rendering cycles */
|
|
39
|
-
tag.
|
|
40
|
-
throw new Error('Do not call
|
|
46
|
+
tag.renderOnce = function () {
|
|
47
|
+
throw new Error('Do not call tag.renderOnce as a function but instead set it as: `(props) => tag.renderOnce = () => html`` `');
|
|
41
48
|
};
|
|
49
|
+
/** Used to create variable scoping when calling a function that lives within a prop container function */
|
|
50
|
+
tag.state = function () {
|
|
51
|
+
throw new Error('Do not call tag.state as a function but instead set it as: `(props) => tag.state = (state) => html`` `');
|
|
52
|
+
};
|
|
53
|
+
// TODO???: Is tag.route and tag.app in use?
|
|
42
54
|
/** Use to structure and define a browser tag route handler
|
|
43
55
|
* Example: export default tag.route = (routeProps: RouteProps) => (state) => html``
|
|
44
56
|
*/
|
|
45
|
-
tag.route = (routeProps)
|
|
46
|
-
throw new Error('Do not call
|
|
57
|
+
tag.route = function (routeProps) {
|
|
58
|
+
throw new Error('Do not call tag.route as a function but instead set it as: `tag.route = (routeProps: RouteProps) => (state) => html`` `');
|
|
47
59
|
};
|
|
60
|
+
tag.key = key;
|
|
48
61
|
/** Use to structure and define a browser tag route handler
|
|
49
62
|
* Example: export default tag.route = (routeProps: RouteProps) => (state) => html``
|
|
50
63
|
*/
|
|
51
|
-
tag.app = (routeTag)
|
|
52
|
-
throw new Error('Do not call
|
|
64
|
+
tag.app = function (routeTag) {
|
|
65
|
+
throw new Error('Do not call tag.route as a function but instead set it as: `tag.route = (routeProps: RouteProps) => (state) => html`` `');
|
|
66
|
+
};
|
|
67
|
+
tag.deepPropWatch = tag;
|
|
68
|
+
tag.immutableProps = function immutableProps(tagComponent) {
|
|
69
|
+
return tag(tagComponent, PropWatches.IMMUTABLE);
|
|
70
|
+
};
|
|
71
|
+
tag.watchProps = function watchProps(tagComponent) {
|
|
72
|
+
return tag(tagComponent, PropWatches.SHALLOW);
|
|
53
73
|
};
|
|
54
|
-
Object.defineProperty(tag, '
|
|
74
|
+
Object.defineProperty(tag, 'renderOnce', {
|
|
55
75
|
set(oneRenderFunction) {
|
|
56
|
-
oneRenderFunction.
|
|
76
|
+
oneRenderFunction.tagJsType = ValueTypes.renderOnce;
|
|
77
|
+
},
|
|
78
|
+
});
|
|
79
|
+
Object.defineProperty(tag, 'state', {
|
|
80
|
+
set(renderFunction) {
|
|
81
|
+
;
|
|
82
|
+
renderFunction.parentWrap = {
|
|
83
|
+
original: {
|
|
84
|
+
setUse: setUseMemory,
|
|
85
|
+
tags,
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
renderFunction.tagJsType = ValueTypes.stateRender;
|
|
57
89
|
},
|
|
58
90
|
});
|
|
59
91
|
//# sourceMappingURL=tag.js.map
|
package/js/tag/tag.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag.js","sourceRoot":"","sources":["../../ts/tag/tag.ts"],"names":[],"mappings":"AAAA,sBAAsB;AAGtB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"tag.js","sourceRoot":"","sources":["../../ts/tag/tag.ts"],"names":[],"mappings":"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"}
|
package/js/tag/tag.types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ValueSubject } from '../subject/index.js';
|
|
2
|
-
import {
|
|
2
|
+
import { DomTag, StringTag } from './Tag.class.js';
|
|
3
3
|
export declare class RouteQuery {
|
|
4
4
|
get(name: string): string | undefined;
|
|
5
5
|
}
|
|
@@ -8,6 +8,8 @@ export type RouteProps = {
|
|
|
8
8
|
paramSubject: ValueSubject<string>;
|
|
9
9
|
query: RouteQuery;
|
|
10
10
|
};
|
|
11
|
-
export type ToTag = (...props: any[]) => StateToTag |
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
export type ToTag = ((...props: any[]) => StateToTag | StringTag | DomTag | null) & {
|
|
12
|
+
arrayValue?: unknown;
|
|
13
|
+
};
|
|
14
|
+
export type StateToTag = () => StringTag | DomTag | null;
|
|
15
|
+
export type RouteTag = (extraProps?: Record<string, any>) => StringTag | DomTag;
|
package/js/tag/tag.utils.d.ts
CHANGED
|
@@ -1,24 +1,27 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DomTag, StringTag, TagTemplate } from './Tag.class.js';
|
|
2
2
|
import { TemplaterResult } from './TemplaterResult.class.js';
|
|
3
3
|
import { ValueSubject } from '../subject/ValueSubject.js';
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
import { setUseMemory } from '../state/index.js';
|
|
5
|
+
import { ValueTypes } from './ValueTypes.enum.js';
|
|
6
|
+
export type TagChildren = ValueSubject<(StringTag | DomTag)[]> & {
|
|
7
|
+
lastArray?: (StringTag | DomTag)[];
|
|
7
8
|
};
|
|
8
|
-
export type TagChildrenInput = (
|
|
9
|
-
export type TagComponent = ((...args: any[]) => (
|
|
9
|
+
export type TagChildrenInput = (StringTag | DomTag)[] | DomTag | StringTag | TagChildren;
|
|
10
|
+
export type TagComponent = ((...args: any[]) => (StringTag | DomTag)) & {
|
|
10
11
|
tags?: TagWrapper<any>[];
|
|
11
|
-
setUse?: typeof setUse;
|
|
12
12
|
tagIndex?: number;
|
|
13
|
+
setUse?: typeof setUseMemory;
|
|
14
|
+
ValueTypes: typeof ValueTypes;
|
|
13
15
|
};
|
|
14
16
|
export declare const tags: TagWrapper<any>[];
|
|
17
|
+
export type Original = ((...args: any[]) => any) & {
|
|
18
|
+
setUse: any[];
|
|
19
|
+
};
|
|
15
20
|
export type TagWrapper<T> = ((...props: T[]) => TemplaterResult) & {
|
|
16
|
-
original:
|
|
17
|
-
|
|
18
|
-
isTag: boolean;
|
|
19
|
-
oneRender?: true;
|
|
21
|
+
original: Original;
|
|
22
|
+
tagJsType?: typeof ValueTypes.renderOnce | typeof ValueTypes.stateRender;
|
|
20
23
|
lastRuns?: {
|
|
21
24
|
[index: number]: TagTemplate;
|
|
22
25
|
};
|
|
23
26
|
};
|
|
24
|
-
export type TagMaker = ((...args: any[]) => (
|
|
27
|
+
export type TagMaker = ((...args: any[]) => (StringTag | DomTag)) | ((...args: any[]) => (...args: any[]) => (StringTag | DomTag));
|
package/js/tag/tag.utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag.utils.js","sourceRoot":"","sources":["../../ts/tag/tag.utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tag.utils.js","sourceRoot":"","sources":["../../ts/tag/tag.utils.ts"],"names":[],"mappings":"AAmBA,MAAM,CAAC,MAAM,IAAI,GAAsB,EAAE,CAAA"}
|
package/js/tag/tagElement.d.ts
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
|
-
import { Support } from './Support.class.js';
|
|
2
1
|
import { TemplaterResult } from './TemplaterResult.class.js';
|
|
2
|
+
import { BaseSupport } from './Support.class.js';
|
|
3
3
|
import { TagComponent, TagMaker } from './tag.utils.js';
|
|
4
|
+
import { ValueTypes } from './ValueTypes.enum.js';
|
|
5
|
+
import { ContextItem } from './Context.types.js';
|
|
6
|
+
export type TagAppElement = Element & {
|
|
7
|
+
ValueTypes: typeof ValueTypes;
|
|
8
|
+
setUse: any;
|
|
9
|
+
};
|
|
4
10
|
/**
|
|
5
11
|
*
|
|
6
12
|
* @param app taggedjs tag
|
|
@@ -8,9 +14,9 @@ import { TagComponent, TagMaker } from './tag.utils.js';
|
|
|
8
14
|
* @param props object
|
|
9
15
|
* @returns
|
|
10
16
|
*/
|
|
11
|
-
export declare function tagElement(app: TagMaker,
|
|
12
|
-
|
|
13
|
-
support: Support;
|
|
17
|
+
export declare function tagElement(app: TagMaker, element: HTMLElement | Element, props?: unknown): {
|
|
18
|
+
support: BaseSupport;
|
|
14
19
|
tags: TagComponent[];
|
|
20
|
+
ValueTypes: typeof ValueTypes;
|
|
15
21
|
};
|
|
16
|
-
export declare function runWrapper(templater: TemplaterResult,
|
|
22
|
+
export declare function runWrapper(templater: TemplaterResult, placeholder: Text, appElement: Element, subject: ContextItem): import("./Support.class.js").AnySupport;
|
package/js/tag/tagElement.js
CHANGED
|
@@ -1,8 +1,16 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
1
|
+
import { getBaseSupport } from './Support.class.js';
|
|
2
|
+
import { subscribeToTemplate } from '../interpolations/subscribeToTemplate.function.js';
|
|
3
|
+
import { buildBeforeElement } from './buildBeforeElement.function.js';
|
|
4
|
+
import { getNewGlobal } from './update/getNewGlobal.function.js';
|
|
5
|
+
import { BasicTypes, ValueTypes } from './ValueTypes.enum.js';
|
|
6
|
+
import { destroySupport } from './destroySupport.function.js';
|
|
7
|
+
import { checkTagValueChange, PropWatches } from './index.js';
|
|
8
|
+
import { setUseMemory } from '../state/setUse.function.js';
|
|
9
|
+
import { executeWrap } from './executeWrap.function.js';
|
|
10
|
+
import { paint, painting } from './paint.function.js';
|
|
11
|
+
import { initState } from '../state/state.utils.js';
|
|
12
|
+
import { isTagComponent } from '../isInstance.js';
|
|
13
|
+
import { runAfterRender } from './tagRunner.js';
|
|
6
14
|
const appElements = [];
|
|
7
15
|
/**
|
|
8
16
|
*
|
|
@@ -11,59 +19,124 @@ const appElements = [];
|
|
|
11
19
|
* @param props object
|
|
12
20
|
* @returns
|
|
13
21
|
*/
|
|
14
|
-
export function tagElement(app,
|
|
15
|
-
element, props) {
|
|
22
|
+
export function tagElement(app, element, props) {
|
|
16
23
|
const appElmIndex = appElements.findIndex(appElm => appElm.element === element);
|
|
17
24
|
if (appElmIndex >= 0) {
|
|
18
|
-
appElements[appElmIndex].support
|
|
25
|
+
destroySupport(appElements[appElmIndex].support, 0);
|
|
19
26
|
appElements.splice(appElmIndex, 1);
|
|
20
27
|
// an element already had an app on it
|
|
21
28
|
console.warn('Found and destroyed app element already rendered to element', { element });
|
|
22
29
|
}
|
|
23
30
|
// Create the app which returns [props, runOneTimeFunction]
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
|
|
31
|
+
let templater = (() => templater2(props));
|
|
32
|
+
templater.propWatch = PropWatches.NONE;
|
|
33
|
+
templater.tagJsType = ValueTypes.stateRender;
|
|
34
|
+
// todo: props should be an array
|
|
35
|
+
templater.props = [props];
|
|
36
|
+
const subject = getNewSubject(templater, element);
|
|
37
|
+
const global = subject.global;
|
|
38
|
+
initState(global.newest, setUseMemory.stateConfig);
|
|
39
|
+
let templater2 = app(props);
|
|
40
|
+
if (typeof templater2 !== BasicTypes.function) {
|
|
41
|
+
if (!isTagComponent(templater2)) {
|
|
42
|
+
templater2 = app;
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
global.newest.propsConfig = {
|
|
46
|
+
latest: [props],
|
|
47
|
+
castProps: [props],
|
|
48
|
+
};
|
|
49
|
+
templater.propWatch = templater2.propWatch;
|
|
50
|
+
templater.tagJsType = templater2.tagJsType;
|
|
51
|
+
templater.wrapper = templater2.wrapper;
|
|
52
|
+
templater = templater2;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
const placeholder = document.createTextNode('');
|
|
56
|
+
const support = runWrapper(templater, placeholder, element, subject);
|
|
32
57
|
global.isApp = true;
|
|
33
|
-
element.destroy = ()
|
|
34
|
-
|
|
58
|
+
element.destroy = function () {
|
|
59
|
+
const events = global.events;
|
|
60
|
+
for (const eventName in events) {
|
|
61
|
+
const callback = events[eventName];
|
|
62
|
+
element.removeEventListener(eventName, callback);
|
|
63
|
+
}
|
|
64
|
+
global.events = {};
|
|
65
|
+
destroySupport(support, 0); // never return anything here
|
|
66
|
+
paint();
|
|
35
67
|
};
|
|
36
|
-
|
|
68
|
+
let tags = [];
|
|
69
|
+
++painting.locks;
|
|
70
|
+
const result = buildBeforeElement(support, element);
|
|
71
|
+
global.oldest = support;
|
|
72
|
+
global.newest = support;
|
|
73
|
+
let setUse = templater.setUse;
|
|
74
|
+
if (templater.tagJsType !== ValueTypes.stateRender) {
|
|
75
|
+
const wrap = app;
|
|
76
|
+
const parentWrap = wrap.parentWrap;
|
|
77
|
+
const original = wrap.original || parentWrap.original;
|
|
78
|
+
setUse = original.setUse;
|
|
79
|
+
tags = app.original.tags;
|
|
80
|
+
}
|
|
37
81
|
;
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
const children = [...newFragment.children];
|
|
41
|
-
support.subject.global.oldest = support;
|
|
42
|
-
support.subject.global.newest = support;
|
|
43
|
-
element.setUse = app.original.setUse;
|
|
82
|
+
element.setUse = setUse;
|
|
83
|
+
element.ValueTypes = ValueTypes;
|
|
44
84
|
appElements.push({ element, support });
|
|
85
|
+
const newFragment = document.createDocumentFragment();
|
|
86
|
+
newFragment.appendChild(placeholder);
|
|
87
|
+
for (const domItem of result.dom) {
|
|
88
|
+
putOneDomDown(domItem, newFragment);
|
|
89
|
+
}
|
|
90
|
+
for (const sub of result.subs) {
|
|
91
|
+
subscribeToTemplate(sub);
|
|
92
|
+
}
|
|
93
|
+
--painting.locks;
|
|
94
|
+
paint();
|
|
45
95
|
element.appendChild(newFragment);
|
|
46
|
-
|
|
96
|
+
++global.renderCount;
|
|
47
97
|
return {
|
|
48
98
|
support,
|
|
49
|
-
tags
|
|
99
|
+
tags,
|
|
100
|
+
ValueTypes,
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
function getNewSubject(templater, appElement) {
|
|
104
|
+
const global = getNewGlobal();
|
|
105
|
+
global.events = {};
|
|
106
|
+
const subject = {
|
|
107
|
+
value: templater,
|
|
108
|
+
global,
|
|
109
|
+
checkValueChange: checkTagValueChange,
|
|
110
|
+
withinOwnerElement: false, // i am the highest owner
|
|
50
111
|
};
|
|
112
|
+
const newSupport = getBaseSupport(templater, subject);
|
|
113
|
+
newSupport.appElement = appElement;
|
|
114
|
+
global.oldest = global.oldest || newSupport;
|
|
115
|
+
global.newest = newSupport;
|
|
116
|
+
return subject;
|
|
51
117
|
}
|
|
52
|
-
export function runWrapper(templater,
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
const
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
runBeforeRender(newSupport, undefined);
|
|
118
|
+
export function runWrapper(templater, placeholder, appElement, subject) {
|
|
119
|
+
subject.placeholder = placeholder;
|
|
120
|
+
const global = subject.global;
|
|
121
|
+
const newSupport = global.newest;
|
|
122
|
+
if (templater.tagJsType === ValueTypes.stateRender) {
|
|
123
|
+
const result = templater.wrapper || { original: templater };
|
|
124
|
+
const nowSupport = executeWrap(templater, result, newSupport);
|
|
125
|
+
runAfterRender(newSupport, nowSupport);
|
|
126
|
+
return nowSupport;
|
|
127
|
+
}
|
|
63
128
|
// Call the apps function for our tag templater
|
|
64
129
|
const wrapper = templater.wrapper;
|
|
65
|
-
const
|
|
66
|
-
runAfterRender(newSupport,
|
|
67
|
-
return
|
|
130
|
+
const nowSupport = wrapper(newSupport, subject);
|
|
131
|
+
runAfterRender(newSupport, nowSupport);
|
|
132
|
+
return nowSupport;
|
|
133
|
+
}
|
|
134
|
+
function putOneDomDown(dom, newFragment) {
|
|
135
|
+
if (dom.domElement) {
|
|
136
|
+
newFragment.appendChild(dom.domElement);
|
|
137
|
+
}
|
|
138
|
+
if (dom.marker) {
|
|
139
|
+
newFragment.appendChild(dom.marker);
|
|
140
|
+
}
|
|
68
141
|
}
|
|
69
142
|
//# sourceMappingURL=tagElement.js.map
|
package/js/tag/tagElement.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tagElement.js","sourceRoot":"","sources":["../../ts/tag/tagElement.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tagElement.js","sourceRoot":"","sources":["../../ts/tag/tagElement.ts"],"names":[],"mappings":"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"}
|
package/js/tag/tagRunner.d.ts
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare function runBeforeRender(support: AnySupport, ownerSupport?: AnySupport): void;
|
|
1
|
+
import { BaseSupport, Support } from './Support.class.js';
|
|
3
2
|
export declare function runAfterRender(support: BaseSupport | Support, ownerSupport?: Support | BaseSupport): void;
|
|
4
|
-
export declare function
|
|
5
|
-
export declare function runBeforeDestroy(support: Support | BaseSupport, ownerSupport: Support | BaseSupport): void;
|
|
3
|
+
export declare function runBeforeDestroy(support: Support | BaseSupport): void;
|
package/js/tag/tagRunner.js
CHANGED
|
@@ -1,55 +1,33 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { setUseMemory } from '../state/index.js';
|
|
2
2
|
import { Subject } from '../subject/index.js';
|
|
3
3
|
import { getSupportInCycle } from './getSupportInCycle.function.js';
|
|
4
|
+
import { afterRender } from '../state/state.utils.js';
|
|
4
5
|
// Emits event at the end of a tag being rendered. Use tagClosed$.toPromise() to render a tag after a current tag is done rendering
|
|
5
|
-
|
|
6
|
+
setUseMemory.tagClosed$ = new Subject(undefined, function tagCloser(subscription) {
|
|
6
7
|
if (!getSupportInCycle()) {
|
|
7
8
|
subscription.next(); // we are not currently processing so process now
|
|
8
9
|
}
|
|
9
10
|
});
|
|
10
|
-
// Life cycle 1
|
|
11
|
-
export function runBeforeRender(support, ownerSupport) {
|
|
12
|
-
const tagUse = setUse.tagUse;
|
|
13
|
-
const length = tagUse.length;
|
|
14
|
-
for (let index = 0; index < length; ++index) {
|
|
15
|
-
tagUse[index].beforeRender(support, ownerSupport);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
11
|
// Life cycle 2
|
|
19
12
|
export function runAfterRender(support, ownerSupport) {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
for (let index = 0; index < length; ++index) {
|
|
23
|
-
tagUse[index].afterRender(support, ownerSupport);
|
|
24
|
-
}
|
|
25
|
-
setUse.memory.tagClosed$.next(ownerSupport);
|
|
26
|
-
}
|
|
27
|
-
// Life cycle 3
|
|
28
|
-
export function runBeforeRedraw(support, ownerSupport) {
|
|
29
|
-
const tagUse = setUse.tagUse;
|
|
30
|
-
const length = tagUse.length;
|
|
31
|
-
for (let index = 0; index < length; ++index) {
|
|
32
|
-
tagUse[index].beforeRedraw(support, ownerSupport);
|
|
33
|
-
}
|
|
13
|
+
afterRender(support);
|
|
14
|
+
setUseMemory.tagClosed$.next(ownerSupport);
|
|
34
15
|
}
|
|
35
16
|
// Life cycle 4 - end of life
|
|
36
|
-
export function runBeforeDestroy(support
|
|
37
|
-
|
|
38
|
-
const length = tagUse.length;
|
|
39
|
-
for (let index = 0; index < length; ++index) {
|
|
40
|
-
tagUse[index].beforeDestroy(support, ownerSupport);
|
|
41
|
-
}
|
|
42
|
-
support.subject.global.deleted = true;
|
|
43
|
-
support.hasLiveElements = false;
|
|
17
|
+
export function runBeforeDestroy(support) {
|
|
18
|
+
// TODO: We don't need to remove from parents if parent is being destroyed
|
|
44
19
|
// remove me from my parents
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
provider.children
|
|
20
|
+
const global = support.subject.global;
|
|
21
|
+
const providers = global.providers;
|
|
22
|
+
if (providers) {
|
|
23
|
+
for (const provider of providers) {
|
|
24
|
+
for (let index = provider.children.length - 1; index >= 0; --index) {
|
|
25
|
+
const child = provider.children[index];
|
|
26
|
+
if (child.subject.global === global) {
|
|
27
|
+
provider.children.splice(index, 1);
|
|
28
|
+
}
|
|
51
29
|
}
|
|
52
|
-
}
|
|
30
|
+
}
|
|
53
31
|
}
|
|
54
32
|
}
|
|
55
33
|
//# sourceMappingURL=tagRunner.js.map
|
package/js/tag/tagRunner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tagRunner.js","sourceRoot":"","sources":["../../ts/tag/tagRunner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"tagRunner.js","sourceRoot":"","sources":["../../ts/tag/tagRunner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAK,mBAAmB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAK,qBAAqB,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAK,iCAAiC,CAAA;AAElE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAErD,mIAAmI;AACnI,YAAY,CAAC,UAAU,GAAG,IAAI,OAAO,CAAU,SAAS,EAAE,SAAS,SAAS,CAAC,YAAY;IACvF,IAAI,CAAC,iBAAiB,EAAE,EAAG,CAAC;QAC1B,YAAY,CAAC,IAAI,EAAE,CAAA,CAAC,iDAAiD;IACvE,CAAC;AACH,CAAC,CAAC,CAAA;AAEF,eAAe;AACf,MAAM,UAAU,cAAc,CAC5B,OAA8B,EAC9B,YAAoC;IAEpC,WAAW,CAAC,OAAO,CAAC,CAAA;IACpB,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;AAC5C,CAAC;AAED,6BAA6B;AAC7B,MAAM,UAAU,gBAAgB,CAC9B,OAA8B;IAE9B,0EAA0E;IAC1E,4BAA4B;IAC5B,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAA0B,CAAA;IACzD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;IAClC,IAAG,SAAS,EAAE,CAAC;QACb,KAAI,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAChC,KAAK,IAAI,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC;gBACnE,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;gBACtC,IAAG,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBACnC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;gBACpC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
|
package/js/tag/textNode.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { empty } from "./ValueTypes.enum.js";
|
|
2
|
-
export const textNode =
|
|
2
|
+
export const textNode = document === undefined ? getTestTextNode() : document.createTextNode(empty);
|
|
3
3
|
function getTestTextNode() {
|
|
4
4
|
return {
|
|
5
5
|
textContent: empty,
|
package/js/tag/textNode.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textNode.js","sourceRoot":"","sources":["../../ts/tag/textNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C,MAAM,CAAC,MAAM,QAAQ,GAAG,
|
|
1
|
+
{"version":3,"file":"textNode.js","sourceRoot":"","sources":["../../ts/tag/textNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C,MAAM,CAAC,MAAM,QAAQ,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;AAEnG,SAAS,eAAe;IACtB,OAAO;QACL,WAAW,EAAE,KAAK;QAClB,SAAS,EAAE,CAAC,SAAkB,EAAE,EAAE,CAAC,eAAe,EAAE;KACrD,CAAA;AACH,CAAC"}
|
|
@@ -1,8 +1,2 @@
|
|
|
1
1
|
import { TagGlobal } from '../TemplaterResult.class.js';
|
|
2
|
-
import { ValueSubject } from '../../subject/ValueSubject.js';
|
|
3
|
-
import { ValueTypes } from '../ValueTypes.enum.js';
|
|
4
|
-
export declare class TagJsSubject<T> extends ValueSubject<T> {
|
|
5
|
-
tagJsType: ValueTypes;
|
|
6
|
-
global: TagGlobal;
|
|
7
|
-
}
|
|
8
2
|
export declare function getNewGlobal(): TagGlobal;
|
|
@@ -1,11 +1,4 @@
|
|
|
1
1
|
import { Subject } from '../../subject/Subject.class.js';
|
|
2
|
-
import { ValueSubject } from '../../subject/ValueSubject.js';
|
|
3
|
-
import { ValueTypes } from '../ValueTypes.enum.js';
|
|
4
|
-
export class TagJsSubject extends ValueSubject {
|
|
5
|
-
tagJsType = ValueTypes.tagJsSubject;
|
|
6
|
-
// travels with all renderings
|
|
7
|
-
global = getNewGlobal();
|
|
8
|
-
}
|
|
9
2
|
export function getNewGlobal() {
|
|
10
3
|
return {
|
|
11
4
|
destroy$: new Subject(),
|
|
@@ -17,7 +10,7 @@ export function getNewGlobal() {
|
|
|
17
10
|
oldest: undefined, // TODO: This needs to addressed
|
|
18
11
|
blocked: [], // renders that did not occur because an event was processing
|
|
19
12
|
childTags: [], // tags on me
|
|
20
|
-
|
|
13
|
+
// htmlDomMeta: [],
|
|
21
14
|
};
|
|
22
15
|
}
|
|
23
16
|
//# sourceMappingURL=TagJsSubject.class.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TagJsSubject.class.js","sourceRoot":"","sources":["../../../ts/tag/update/TagJsSubject.class.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAA;
|
|
1
|
+
{"version":3,"file":"TagJsSubject.class.js","sourceRoot":"","sources":["../../../ts/tag/update/TagJsSubject.class.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAA;AAExD,MAAM,UAAU,YAAY;IAC1B,OAAO;QACL,QAAQ,EAAE,IAAI,OAAO,EAAyB;QAC9C,OAAO,EAAE,EAAE,EAAE,mGAAmG;QAChH,SAAS,EAAE,EAAE;QACb,oFAAoF;QACpF,WAAW,EAAE,CAAC;QACd,aAAa,EAAE,EAAE;QACjB,MAAM,EAAE,SAAgB,EAAE,gCAAgC;QAE1D,OAAO,EAAE,EAAE,EAAE,6DAA6D;QAC1E,SAAS,EAAE,EAAE,EAAE,aAAa;QAC5B,mBAAmB;KACpB,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { DomObjectChildren } from '../../interpolations/optimizers/ObjectNode.types.js';
|
|
2
|
+
import { AnySupport } from '../Support.class.js';
|
|
3
|
+
import { ContextItem } from '../Tag.class.js';
|
|
4
|
+
/** This is the function that enhances elements such as [class.something] and [style.color] OR it fixes elements that alter innerHTML */
|
|
5
|
+
export declare function afterChildrenBuilt(children: DomObjectChildren, // HTMLCollection // Element[],
|
|
6
|
+
subject: ContextItem, ownerSupport: AnySupport): void;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/** This is the function that enhances elements such as [class.something] and [style.color] OR it fixes elements that alter innerHTML */
|
|
2
|
+
export function afterChildrenBuilt(children, // HTMLCollection // Element[],
|
|
3
|
+
subject, ownerSupport) {
|
|
4
|
+
const kids = children;
|
|
5
|
+
const len = kids.length;
|
|
6
|
+
let index = 0;
|
|
7
|
+
while (index < len) {
|
|
8
|
+
const elmMeta = kids[index];
|
|
9
|
+
const attributes = elmMeta.at;
|
|
10
|
+
if (!attributes) {
|
|
11
|
+
++index;
|
|
12
|
+
continue;
|
|
13
|
+
}
|
|
14
|
+
const domElm = elmMeta.domElement;
|
|
15
|
+
attributes.forEach(attribute => {
|
|
16
|
+
const name = attribute[0];
|
|
17
|
+
});
|
|
18
|
+
const children = elmMeta.ch; // children
|
|
19
|
+
if (children) {
|
|
20
|
+
afterChildrenBuilt(children, subject, ownerSupport);
|
|
21
|
+
}
|
|
22
|
+
++index;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=afterChildrenBuilt.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"afterChildrenBuilt.function.js","sourceRoot":"","sources":["../../../ts/tag/update/afterChildrenBuilt.function.ts"],"names":[],"mappings":"AAKA,wIAAwI;AACxI,MAAM,UAAU,kBAAkB,CAChC,QAA2B,EAAE,+BAA+B;AAC5D,OAAoB,EACpB,YAAwB;IAExB,MAAM,IAAI,GAAG,QAAQ,CAAA;IACrB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAA;IACvB,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,OAAO,KAAK,GAAG,GAAG,EAAE,CAAC;QACnB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAqB,CAAA;QAC/C,MAAM,UAAU,GAAG,OAAO,CAAC,EAAE,CAAA;QAE7B,IAAG,CAAC,UAAU,EAAE,CAAC;YACf,EAAE,KAAK,CAAA;YACP,SAAQ;QACV,CAAC;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAA;QACjC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC7B,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;QAE3B,CAAC,CAAC,CAAA;QAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAA,CAAC,WAAW;QACvC,IAAG,QAAQ,EAAE,CAAC;YACZ,kBAAkB,CAAC,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAC,CAAA;QACrD,CAAC;QAED,EAAE,KAAK,CAAA;IACT,CAAC;AACH,CAAC"}
|