taggedjs 2.8.26 → 2.8.28
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/alterProp.function.d.ts +5 -5
- package/js/alterProp.function.js +19 -20
- package/js/alterProp.function.js.map +1 -1
- package/js/index.d.ts +1 -1
- package/js/index.js +1 -1
- package/js/index.js.map +1 -1
- package/js/interpolations/attributes/addSupportEventListener.function.d.ts +1 -1
- package/js/interpolations/attributes/bindSubjectCallback.function.d.ts +4 -2
- package/js/interpolations/attributes/bindSubjectCallback.function.js +14 -6
- package/js/interpolations/attributes/bindSubjectCallback.function.js.map +1 -1
- package/js/interpolations/attributes/getSupportWithState.function.d.ts +2 -0
- package/js/interpolations/attributes/getSupportWithState.function.js +10 -0
- package/js/interpolations/attributes/getSupportWithState.function.js.map +1 -0
- package/js/interpolations/attributes/getUpTags.function.d.ts +1 -1
- package/js/interpolations/attributes/getUpTags.function.js.map +1 -1
- package/js/interpolations/attributes/processAttribute.function.d.ts +3 -3
- package/js/interpolations/attributes/processAttribute.function.js +2 -7
- package/js/interpolations/attributes/processAttribute.function.js.map +1 -1
- package/js/interpolations/attributes/processAttributeCallback.function.d.ts +1 -1
- package/js/interpolations/attributes/processNameValueAttribute.function.d.ts +2 -2
- package/js/interpolations/attributes/renderTagArray.function.d.ts +1 -1
- package/js/interpolations/attributes/specialAttribute.d.ts +1 -1
- package/js/interpolations/attributes/updateAttribute.function.d.ts +1 -1
- package/js/interpolations/interpolateTemplate.d.ts +1 -1
- package/js/interpolations/optimizers/attachDomElements.function.d.ts +2 -4
- package/js/interpolations/optimizers/attachDomElements.function.js +5 -49
- package/js/interpolations/optimizers/attachDomElements.function.js.map +1 -1
- package/js/interpolations/optimizers/attachDynamicDom.function.d.ts +7 -0
- package/js/interpolations/optimizers/attachDynamicDom.function.js +28 -0
- package/js/interpolations/optimizers/attachDynamicDom.function.js.map +1 -0
- package/js/interpolations/optimizers/domProcessContextItem.function.d.ts +5 -0
- package/js/interpolations/optimizers/domProcessContextItem.function.js +18 -0
- package/js/interpolations/optimizers/domProcessContextItem.function.js.map +1 -0
- package/js/interpolations/optimizers/processDomContextItem.function.d.ts +5 -0
- package/js/interpolations/optimizers/processDomContextItem.function.js +18 -0
- package/js/interpolations/optimizers/processDomContextItem.function.js.map +1 -0
- package/js/interpolations/processSubscriptionUpdate.function.d.ts +1 -1
- package/js/interpolations/processSubscriptionUpdate.function.js +2 -2
- package/js/interpolations/processSubscriptionUpdate.function.js.map +1 -1
- package/js/interpolations/subscribeToTemplate.function.d.ts +1 -3
- package/js/interpolations/subscribeToTemplate.function.js +1 -29
- package/js/interpolations/subscribeToTemplate.function.js.map +1 -1
- package/js/isInstance.d.ts +1 -1
- package/js/isInstance.js.map +1 -1
- package/js/state/StateMemory.type.d.ts +2 -1
- package/js/state/callback.function.d.ts +1 -1
- package/js/state/callback.function.js +2 -6
- package/js/state/callback.function.js.map +1 -1
- package/js/state/callbackMaker.function.js +0 -1
- package/js/state/callbackMaker.function.js.map +1 -1
- package/js/state/callbackStateUpdate.function.d.ts +2 -7
- package/js/state/callbackStateUpdate.function.js +5 -31
- package/js/state/callbackStateUpdate.function.js.map +1 -1
- package/js/state/handleProviderChanges.function.d.ts +1 -1
- package/js/state/index.d.ts +1 -0
- package/js/state/index.js +1 -0
- package/js/state/index.js.map +1 -1
- package/js/state/letProp.function.js +10 -7
- package/js/state/letProp.function.js.map +1 -1
- package/js/state/providers.d.ts +1 -1
- package/js/state/providersChangeCheck.function.d.ts +1 -1
- package/js/state/setUse.function.d.ts +1 -1
- package/js/state/state.utils.d.ts +2 -3
- package/js/state/state.utils.js +3 -3
- package/js/state/state.utils.js.map +1 -1
- package/js/state/states.function.d.ts +1 -1
- package/js/state/states.function.js.map +1 -1
- package/js/state/states.utils.d.ts +2 -1
- package/js/state/states.utils.js +13 -25
- package/js/state/states.utils.js.map +1 -1
- package/js/state/subject.function.js +3 -3
- package/js/state/subject.function.js.map +1 -1
- package/js/state/subscribe.function.d.ts +18 -0
- package/js/state/subscribe.function.js +14 -0
- package/js/state/subscribe.function.js.map +1 -0
- package/js/state/syncStates.function.d.ts +4 -2
- package/js/state/syncStates.function.js +18 -13
- package/js/state/syncStates.function.js.map +1 -1
- package/js/state/tagClosed$.subject.d.ts +1 -1
- package/js/state/watch.function.js +2 -2
- package/js/state/watch.function.js.map +1 -1
- package/js/subject/ProcessInit.type.d.ts +6 -0
- package/js/subject/ProcessInit.type.js +2 -0
- package/js/subject/ProcessInit.type.js.map +1 -0
- package/js/subject/Subject.class.d.ts +2 -1
- package/js/subject/Subject.class.js.map +1 -1
- package/js/subject/ValueSubject.d.ts +1 -1
- package/js/subject/signal.function.d.ts +9 -15
- package/js/subject/signal.function.js +4 -0
- package/js/subject/signal.function.js.map +1 -1
- package/js/tag/AnySupport.type.d.ts +7 -0
- package/js/tag/AnySupport.type.js +2 -0
- package/js/tag/AnySupport.type.js.map +1 -0
- package/js/tag/BaseSupport.type.d.ts +1 -1
- package/js/tag/Context.types.d.ts +6 -7
- package/js/tag/Tag.type.d.ts +4 -2
- package/js/tag/ValueTypes.enum.d.ts +2 -2
- package/js/tag/ValueTypes.enum.js +4 -2
- package/js/tag/ValueTypes.enum.js.map +1 -1
- package/js/tag/afterRender.function.d.ts +1 -1
- package/js/tag/afterRender.function.js +7 -5
- package/js/tag/afterRender.function.js.map +1 -1
- package/js/tag/buildBeforeElement.function.d.ts +1 -2
- package/js/tag/buildBeforeElement.function.js +3 -2
- package/js/tag/buildBeforeElement.function.js.map +1 -1
- package/js/tag/checkDestroyPrevious.function.d.ts +1 -0
- package/js/tag/checkDestroyPrevious.function.js +4 -1
- package/js/tag/checkDestroyPrevious.function.js.map +1 -1
- package/js/tag/checkStateMismatch.function.d.ts +1 -1
- package/js/tag/checkTagValueChange.function.d.ts +3 -1
- package/js/tag/checkTagValueChange.function.js +7 -2
- package/js/tag/checkTagValueChange.function.js.map +1 -1
- package/js/tag/clonePropsBy.function.d.ts +1 -1
- package/js/tag/cloneValueArray.function.js +2 -0
- package/js/tag/cloneValueArray.function.js.map +1 -1
- package/js/tag/createHtmlSupport.function.d.ts +33 -0
- package/js/tag/createHtmlSupport.function.js +41 -0
- package/js/tag/createHtmlSupport.function.js.map +1 -0
- package/js/tag/createSupport.function.d.ts +6 -0
- package/js/tag/createSupport.function.js +8 -0
- package/js/tag/createSupport.function.js.map +1 -0
- package/js/tag/destroyContext.function.d.ts +8 -0
- package/js/tag/destroyContext.function.js +48 -0
- package/js/tag/destroyContext.function.js.map +1 -0
- package/js/tag/destroySupport.function.d.ts +1 -1
- package/js/tag/destroySupport.function.js +2 -2
- package/js/tag/destroySupport.function.js.map +1 -1
- package/js/tag/executeWrap.function.d.ts +1 -1
- package/js/tag/executeWrap.function.js +3 -2
- package/js/tag/executeWrap.function.js.map +1 -1
- package/js/tag/getDomTag.function.js +3 -0
- package/js/tag/getDomTag.function.js.map +1 -1
- package/js/tag/getSupport.function.d.ts +1 -0
- package/js/tag/getSupport.function.js +3 -3
- package/js/tag/getSupport.function.js.map +1 -1
- package/js/tag/getSupportInCycle.function.d.ts +1 -1
- package/js/tag/getTagWrap.function.d.ts +1 -1
- package/js/tag/getTagWrap.function.js +2 -2
- package/js/tag/getTagWrap.function.js.map +1 -1
- package/js/tag/getTemplaterResult.function.d.ts +8 -5
- package/js/tag/getTemplaterResult.function.js +3 -1
- package/js/tag/getTemplaterResult.function.js.map +1 -1
- package/js/tag/index.d.ts +4 -3
- package/js/tag/index.js.map +1 -1
- package/js/tag/isLikeTags.function.d.ts +1 -1
- package/js/tag/isLikeTags.function.js +0 -1
- package/js/tag/isLikeTags.function.js.map +1 -1
- package/js/tag/processUpdateAttrContext.function.d.ts +1 -1
- package/js/tag/processUpdateContext.function.d.ts +1 -1
- package/js/tag/render/renderExistingTag.function.d.ts +4 -2
- package/js/tag/render/renderExistingTag.function.js +2 -1
- package/js/tag/render/renderExistingTag.function.js.map +1 -1
- package/js/tag/render/renderSupport.function.d.ts +1 -1
- package/js/tag/render/renderSupport.function.js.map +1 -1
- package/js/tag/render/renderTagOnly.function.d.ts +2 -1
- package/js/tag/render/renderTagOnly.function.js +4 -16
- package/js/tag/render/renderTagOnly.function.js.map +1 -1
- package/js/tag/render/renderWithSupport.function.d.ts +3 -2
- package/js/tag/render/renderWithSupport.function.js +1 -1
- package/js/tag/render/renderWithSupport.function.js.map +1 -1
- package/js/tag/render/softDestroySupport.function.d.ts +1 -1
- package/js/tag/render/softDestroySupport.function.js +11 -12
- package/js/tag/render/softDestroySupport.function.js.map +1 -1
- package/js/tag/tag.function.js +9 -2
- package/js/tag/tag.function.js.map +1 -1
- package/js/tag/tagElement.d.ts +2 -1
- package/js/tag/tagElement.js +23 -20
- package/js/tag/tagElement.js.map +1 -1
- package/js/tag/tagRunner.d.ts +1 -1
- package/js/tag/update/compareArrayItems.function.d.ts +1 -1
- package/js/tag/update/compareArrayItems.function.js +1 -23
- package/js/tag/update/compareArrayItems.function.js.map +1 -1
- package/js/tag/update/createAndProcessContextItem.function.d.ts +7 -0
- package/js/tag/update/createAndProcessContextItem.function.js +32 -0
- package/js/tag/update/createAndProcessContextItem.function.js.map +1 -0
- package/js/tag/update/forceUpdateExistingValue.function.d.ts +7 -0
- package/js/tag/update/forceUpdateExistingValue.function.js +13 -0
- package/js/tag/update/forceUpdateExistingValue.function.js.map +1 -0
- package/js/tag/update/handleStillTag.function.d.ts +5 -0
- package/js/tag/update/handleStillTag.function.js +11 -0
- package/js/tag/update/handleStillTag.function.js.map +1 -0
- package/js/tag/update/oneRenderToSupport.function.d.ts +1 -1
- package/js/tag/update/processDomTagInit.function.d.ts +9 -0
- package/js/tag/update/processDomTagInit.function.js +23 -0
- package/js/tag/update/processDomTagInit.function.js.map +1 -0
- package/js/tag/update/processFirstSubject.utils.d.ts +2 -1
- package/js/tag/update/processFirstSubjectComponent.function.d.ts +2 -1
- package/js/tag/update/processFirstSubjectComponent.function.js +3 -3
- package/js/tag/update/processFirstSubjectComponent.function.js.map +1 -1
- package/js/tag/update/processFirstSubjectValue.function.d.ts +1 -1
- package/js/tag/update/processFirstSubjectValue.function.js +2 -62
- package/js/tag/update/processFirstSubjectValue.function.js.map +1 -1
- package/js/tag/update/processNewSubjectTag.function.d.ts +3 -3
- package/js/tag/update/processNewSubjectTag.function.js +2 -16
- package/js/tag/update/processNewSubjectTag.function.js.map +1 -1
- package/js/tag/update/processNewValue.function.d.ts +2 -1
- package/js/tag/update/processNewValue.function.js +3 -3
- package/js/tag/update/processNewValue.function.js.map +1 -1
- package/js/tag/update/processRenderOnceInit.function.d.ts +8 -0
- package/js/tag/update/processRenderOnceInit.function.js +17 -0
- package/js/tag/update/processRenderOnceInit.function.js.map +1 -0
- package/js/tag/update/processSubscribe.function.d.ts +9 -0
- package/js/tag/update/processSubscribe.function.js +10 -0
- package/js/tag/update/processSubscribe.function.js.map +1 -0
- package/js/tag/update/processTag.function.d.ts +2 -1
- package/js/tag/update/processTag.function.js +5 -7
- package/js/tag/update/processTag.function.js.map +1 -1
- package/js/tag/update/processTagArray.d.ts +1 -1
- package/js/tag/update/processTagArray.js +9 -42
- package/js/tag/update/processTagArray.js.map +1 -1
- package/js/tag/update/processTagComponentInit.function.d.ts +7 -0
- package/js/tag/update/processTagComponentInit.function.js +17 -0
- package/js/tag/update/processTagComponentInit.function.js.map +1 -0
- package/js/tag/update/processTagInit.function.d.ts +4 -0
- package/js/tag/update/processTagInit.function.js +11 -0
- package/js/tag/update/processTagInit.function.js.map +1 -0
- package/js/tag/update/processTagResult.function.d.ts +1 -1
- package/js/tag/update/processTagResult.function.js +1 -10
- package/js/tag/update/processTagResult.function.js.map +1 -1
- package/js/tag/update/setupSubscribe.function.d.ts +21 -0
- package/js/tag/update/setupSubscribe.function.js +85 -0
- package/js/tag/update/setupSubscribe.function.js.map +1 -0
- package/js/tag/update/syncPriorPropFunction.function.d.ts +1 -1
- package/js/tag/update/tryUpdateToTag.function.d.ts +7 -0
- package/js/tag/update/tryUpdateToTag.function.js +64 -0
- package/js/tag/update/tryUpdateToTag.function.js.map +1 -0
- package/js/tag/update/updateContextItemBySupport.function.d.ts +3 -0
- package/js/tag/update/updateContextItemBySupport.function.js +10 -0
- package/js/tag/update/updateContextItemBySupport.function.js.map +1 -0
- package/js/tag/update/updateExistingArray.function.d.ts +1 -1
- package/js/tag/update/updateExistingObject.function.d.ts +1 -1
- package/js/tag/update/updateExistingTagComponent.function.d.ts +2 -1
- package/js/tag/update/updateExistingTagComponent.function.js.map +1 -1
- package/js/tag/update/updateExistingValue.function.d.ts +3 -6
- package/js/tag/update/updateExistingValue.function.js +5 -99
- package/js/tag/update/updateExistingValue.function.js.map +1 -1
- package/js/tag/update/updateToDiffValue.function.d.ts +5 -0
- package/js/tag/update/updateToDiffValue.function.js +28 -0
- package/js/tag/update/updateToDiffValue.function.js.map +1 -0
- package/js/tag/updateSupportBy.function.d.ts +1 -1
- package/js/tag/updateSupportBy.function.js +3 -2
- package/js/tag/updateSupportBy.function.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,28 +1,27 @@
|
|
|
1
|
-
import { getChildTagsToSoftDestroy } from '../
|
|
1
|
+
import { getChildTagsToSoftDestroy } from '../destroyContext.function.js';
|
|
2
2
|
import { getNewGlobal } from '../update/getNewGlobal.function.js';
|
|
3
3
|
import { smartRemoveKids } from '../smartRemoveKids.function.js';
|
|
4
4
|
/** used when a tag swaps content returned */
|
|
5
5
|
export function softDestroySupport(lastSupport) {
|
|
6
|
-
const
|
|
6
|
+
const subject = lastSupport.subject;
|
|
7
|
+
const global = subject.global;
|
|
7
8
|
const { subs, tags } = getChildTagsToSoftDestroy(global.context);
|
|
8
|
-
softDestroyOne(
|
|
9
|
+
softDestroyOne(global);
|
|
9
10
|
for (const child of tags) {
|
|
10
|
-
|
|
11
|
+
const cGlobal = child.subject.global;
|
|
12
|
+
if (cGlobal.deleted === true) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
softDestroyOne(cGlobal);
|
|
11
16
|
}
|
|
12
17
|
const mySubs = global.subscriptions;
|
|
13
18
|
if (mySubs) {
|
|
14
19
|
subs.forEach(sub => sub.unsubscribe());
|
|
15
20
|
}
|
|
16
|
-
getNewGlobal(
|
|
21
|
+
getNewGlobal(subject);
|
|
17
22
|
}
|
|
18
|
-
function softDestroyOne(
|
|
19
|
-
const subject = child.subject;
|
|
20
|
-
const global = subject.global;
|
|
21
|
-
if (global.deleted === true) {
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
23
|
+
function softDestroyOne(global) {
|
|
24
24
|
global.deleted = true; // the children are truly destroyed but the main support will be swapped
|
|
25
|
-
subject.renderCount = 0; // TODO: most likely can be removed
|
|
26
25
|
smartRemoveKids(global, []);
|
|
27
26
|
}
|
|
28
27
|
//# sourceMappingURL=softDestroySupport.function.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"softDestroySupport.function.js","sourceRoot":"","sources":["../../../ts/tag/render/softDestroySupport.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"softDestroySupport.function.js","sourceRoot":"","sources":["../../../ts/tag/render/softDestroySupport.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AAGzE,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAGhE,6CAA6C;AAC7C,MAAM,UAAU,kBAAkB,CAChC,WAAuB;IAEvB,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAA;IACnC,MAAM,MAAM,GAAG,OAAO,CAAC,MAA0B,CAAA;IACjD,MAAM,EAAC,IAAI,EAAE,IAAI,EAAC,GAAG,yBAAyB,CAAC,MAAM,CAAC,OAAwB,CAAC,CAAA;IAE/E,cAAc,CAAC,MAAM,CAAC,CAAA;IACtB,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAA;QACpC,IAAG,OAAO,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAC5B,OAAM;QACR,CAAC;QACD,cAAc,CAAE,OAAO,CAAE,CAAA;IAC3B,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAA;IACnC,IAAG,MAAM,EAAE,CAAC;QACV,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAA;IACxC,CAAC;IAED,YAAY,CAAC,OAAO,CAAC,CAAA;AACvB,CAAC;AAED,SAAS,cAAc,CACrB,MAAwB;IAExB,MAAM,CAAC,OAAO,GAAG,IAAI,CAAA,CAAC,wEAAwE;IAC9F,eAAe,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;AAC7B,CAAC"}
|
package/js/tag/tag.function.js
CHANGED
|
@@ -4,6 +4,8 @@ import { getTemplaterResult } from './getTemplaterResult.function.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 { processRenderOnceInit } from './update/processRenderOnceInit.function.js';
|
|
8
|
+
import { processTagComponentInit } from './update/processTagComponentInit.function.js';
|
|
7
9
|
let tagCount = 0;
|
|
8
10
|
/** How to handle checking for prop changes aka argument changes */
|
|
9
11
|
export var PropWatches;
|
|
@@ -22,6 +24,7 @@ export function tag(tagComponent, propWatch = PropWatches.SHALLOW) {
|
|
|
22
24
|
const parentWrap = function tagWrapper(...props) {
|
|
23
25
|
const templater = getTemplaterResult(propWatch, props);
|
|
24
26
|
templater.tagJsType = ValueTypes.tagComponent;
|
|
27
|
+
templater.processInit = processTagComponentInit;
|
|
25
28
|
// attach memory back to original function that contains developer display logic
|
|
26
29
|
const innerTagWrap = getTagWrap(templater, parentWrap);
|
|
27
30
|
innerTagWrap.original = tagComponent;
|
|
@@ -51,7 +54,7 @@ function renderOnceFn() {
|
|
|
51
54
|
function tagUseFn() {
|
|
52
55
|
throw new Error('Do not call tag.use as a function but instead set it as: `(props) => tag.use = (use) => html`` `');
|
|
53
56
|
}
|
|
54
|
-
/** deprecated */
|
|
57
|
+
/** @deprecated use tag.use() instead */
|
|
55
58
|
;
|
|
56
59
|
tag.state = tagUseFn;
|
|
57
60
|
tag.use = tagUseFn;
|
|
@@ -76,10 +79,12 @@ tag.watchProps = function watchProps(tagComponent) {
|
|
|
76
79
|
/* BELOW: Cast functions into setters with no getters */
|
|
77
80
|
Object.defineProperty(tag, 'renderOnce', {
|
|
78
81
|
set(oneRenderFunction) {
|
|
82
|
+
;
|
|
79
83
|
oneRenderFunction.tagJsType = ValueTypes.renderOnce;
|
|
84
|
+
oneRenderFunction.processInit = processRenderOnceInit;
|
|
80
85
|
},
|
|
81
86
|
});
|
|
82
|
-
// TODO: deprecate this
|
|
87
|
+
// TODO: deprecate this in favor of tag.use
|
|
83
88
|
Object.defineProperty(tag, 'state', {
|
|
84
89
|
set(renderFunction) {
|
|
85
90
|
;
|
|
@@ -88,6 +93,7 @@ Object.defineProperty(tag, 'state', {
|
|
|
88
93
|
tags,
|
|
89
94
|
};
|
|
90
95
|
renderFunction.tagJsType = ValueTypes.stateRender;
|
|
96
|
+
renderFunction.processInit = processTagComponentInit;
|
|
91
97
|
},
|
|
92
98
|
});
|
|
93
99
|
Object.defineProperty(tag, 'use', {
|
|
@@ -98,6 +104,7 @@ Object.defineProperty(tag, 'use', {
|
|
|
98
104
|
tags,
|
|
99
105
|
};
|
|
100
106
|
renderFunction.tagJsType = ValueTypes.stateRender;
|
|
107
|
+
renderFunction.processInit = processTagComponentInit;
|
|
101
108
|
},
|
|
102
109
|
});
|
|
103
110
|
//# sourceMappingURL=tag.function.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag.function.js","sourceRoot":"","sources":["../../ts/tag/tag.function.ts"],"names":[],"mappings":"AAAA,sBAAsB;AAItB,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAA4B,MAAM,kCAAkC,CAAA;AAC/F,OAAO,EAAsC,IAAI,EAAE,MAAM,gBAAgB,CAAA;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAGrD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"tag.function.js","sourceRoot":"","sources":["../../ts/tag/tag.function.ts"],"names":[],"mappings":"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"}
|
package/js/tag/tagElement.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { TemplaterResult } from './getTemplaterResult.function.js';
|
|
2
|
-
import {
|
|
2
|
+
import { SupportContextItem } from './createHtmlSupport.function.js';
|
|
3
3
|
import { TagWrapper } from './tag.utils.js';
|
|
4
4
|
import { ValueTypes } from './ValueTypes.enum.js';
|
|
5
5
|
import { TagMaker } from './TagMaker.type.js';
|
|
6
6
|
import { BaseSupport } from './BaseSupport.type.js';
|
|
7
7
|
import { setUseMemory } from '../state/setUseMemory.object.js';
|
|
8
|
+
import { AnySupport } from './AnySupport.type.js';
|
|
8
9
|
export type TagAppElement = Element & {
|
|
9
10
|
ValueTypes: typeof ValueTypes;
|
|
10
11
|
setUse: typeof setUseMemory;
|
package/js/tag/tagElement.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { getBaseSupport, upgradeBaseToSupport } from './
|
|
2
|
-
import { subscribeToTemplate } from '../interpolations/subscribeToTemplate.function.js';
|
|
1
|
+
import { getBaseSupport, upgradeBaseToSupport } from './createHtmlSupport.function.js';
|
|
3
2
|
import { buildBeforeElement } from './buildBeforeElement.function.js';
|
|
4
3
|
import { tags } from './tag.utils.js';
|
|
5
4
|
import { getNewGlobal } from './update/getNewGlobal.function.js';
|
|
@@ -12,7 +11,8 @@ import { paint, painting } from './paint.function.js';
|
|
|
12
11
|
import { initState, reState } from '../state/state.utils.js';
|
|
13
12
|
import { isTagComponent } from '../isInstance.js';
|
|
14
13
|
import { setUseMemory } from '../state/setUseMemory.object.js';
|
|
15
|
-
import { checkTagValueChange } from './checkTagValueChange.function.js';
|
|
14
|
+
import { checkTagValueChange, destorySupportByContextItem } from './checkTagValueChange.function.js';
|
|
15
|
+
import { createSupport } from './createSupport.function.js';
|
|
16
16
|
const appElements = [];
|
|
17
17
|
/**
|
|
18
18
|
*
|
|
@@ -115,15 +115,13 @@ function registerTagElement(support, element, global, templater, app, placeholde
|
|
|
115
115
|
for (const domItem of result.dom) {
|
|
116
116
|
putOneDomDown(domItem, newFragment);
|
|
117
117
|
}
|
|
118
|
-
for (const sub of result.subs) {
|
|
119
|
-
subscribeToTemplate(sub);
|
|
120
|
-
}
|
|
121
118
|
return newFragment;
|
|
122
119
|
}
|
|
123
120
|
function getNewSubject(templater, appElement) {
|
|
124
121
|
const subject = {
|
|
125
122
|
value: templater,
|
|
126
123
|
checkValueChange: checkTagValueChange,
|
|
124
|
+
delete: destorySupportByContextItem,
|
|
127
125
|
withinOwnerElement: false, // i am the highest owner
|
|
128
126
|
renderCount: 0,
|
|
129
127
|
global: undefined, // gets set below in getNewGlobal()
|
|
@@ -145,27 +143,21 @@ function loadNewBaseSupport(templater, subject, appElement) {
|
|
|
145
143
|
export function runWrapper(templater, placeholder, appElement, subject, isAppFunction) {
|
|
146
144
|
subject.placeholder = placeholder;
|
|
147
145
|
const global = subject.global;
|
|
148
|
-
const useSupport = global.newest;
|
|
149
146
|
const oldest = global.oldest;
|
|
150
|
-
const isFirstRender =
|
|
147
|
+
const isFirstRender = global.newest === oldest;
|
|
148
|
+
const newSupport = createSupport(templater, global.newest, global.newest.appSupport, // ownerSupport.appSupport as AnySupport,
|
|
149
|
+
subject);
|
|
151
150
|
if (!isFirstRender) {
|
|
152
|
-
reState(
|
|
151
|
+
reState(newSupport, global.newest, // global.oldest, // global.newest,
|
|
152
|
+
setUseMemory.stateConfig, oldest.state);
|
|
153
153
|
}
|
|
154
154
|
if (templater.tagJsType === ValueTypes.stateRender) {
|
|
155
|
-
|
|
156
|
-
if (!isAppFunction) {
|
|
157
|
-
const newSupport = loadNewBaseSupport(templater, subject, appElement);
|
|
158
|
-
runAfterRender(newSupport);
|
|
159
|
-
return newSupport;
|
|
160
|
-
}
|
|
161
|
-
const nowSupport = executeWrap(templater, result, useSupport);
|
|
162
|
-
runAfterRender(nowSupport);
|
|
163
|
-
return nowSupport;
|
|
155
|
+
return executeStateWrap(templater, isAppFunction, newSupport, subject, appElement);
|
|
164
156
|
}
|
|
165
157
|
// Call the apps function for our tag templater
|
|
166
158
|
const wrapper = templater.wrapper;
|
|
167
|
-
const nowSupport = wrapper(
|
|
168
|
-
runAfterRender(
|
|
159
|
+
const nowSupport = wrapper(newSupport, subject);
|
|
160
|
+
runAfterRender(newSupport);
|
|
169
161
|
return nowSupport;
|
|
170
162
|
}
|
|
171
163
|
function putOneDomDown(dom, newFragment) {
|
|
@@ -176,4 +168,15 @@ function putOneDomDown(dom, newFragment) {
|
|
|
176
168
|
newFragment.appendChild(dom.marker);
|
|
177
169
|
}
|
|
178
170
|
}
|
|
171
|
+
function executeStateWrap(templater, isAppFunction, newSupport, subject, appElement) {
|
|
172
|
+
const result = (templater.wrapper || { original: templater });
|
|
173
|
+
if (!isAppFunction) {
|
|
174
|
+
const newSupport = loadNewBaseSupport(templater, subject, appElement);
|
|
175
|
+
runAfterRender(newSupport);
|
|
176
|
+
return newSupport;
|
|
177
|
+
}
|
|
178
|
+
executeWrap(templater, result, newSupport);
|
|
179
|
+
runAfterRender(newSupport);
|
|
180
|
+
return newSupport;
|
|
181
|
+
}
|
|
179
182
|
//# 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":"AAEA,OAAO,
|
|
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,3 +1,3 @@
|
|
|
1
1
|
import { SupportTagGlobal } from './getTemplaterResult.function.js';
|
|
2
|
-
import { AnySupport } from './
|
|
2
|
+
import { AnySupport } from './AnySupport.type.js';
|
|
3
3
|
export declare function runBeforeDestroy(support: AnySupport, global: SupportTagGlobal): void;
|
|
@@ -2,5 +2,5 @@ import { Counts } from '../../interpolations/interpolateTemplate.js';
|
|
|
2
2
|
import { ContextItem, LastArrayItem } from '../Context.types.js';
|
|
3
3
|
import { TemplaterResult } from '../getTemplaterResult.function.js';
|
|
4
4
|
import type { StringTag } from '../StringTag.type.js';
|
|
5
|
-
export declare function compareArrayItems(value: (TemplaterResult | StringTag)[], index: number, lastArray: LastArrayItem[], removed: number, counts: Counts):
|
|
5
|
+
export declare function compareArrayItems(value: (TemplaterResult | StringTag)[], index: number, lastArray: LastArrayItem[], removed: number, counts: Counts): 1 | 0 | 2;
|
|
6
6
|
export declare function destroyArrayItem(item: ContextItem, counts: Counts): void;
|
|
@@ -4,7 +4,7 @@ export function compareArrayItems(value, index, lastArray, removed, counts) {
|
|
|
4
4
|
const newLength = value.length - 1;
|
|
5
5
|
const at = index - removed;
|
|
6
6
|
const lessLength = at < 0 || newLength < at;
|
|
7
|
-
const prevContext = lastArray[index]
|
|
7
|
+
const prevContext = lastArray[index];
|
|
8
8
|
if (lessLength) {
|
|
9
9
|
destroyArrayItem(prevContext, counts);
|
|
10
10
|
return 1;
|
|
@@ -17,28 +17,6 @@ export function compareArrayItems(value, index, lastArray, removed, counts) {
|
|
|
17
17
|
function runArrayItemDiff(oldKey, newValueTag, prevContext, counts, lastArray, index) {
|
|
18
18
|
const isDiff = newValueTag && oldKey !== newValueTag.arrayValue;
|
|
19
19
|
if (isDiff) {
|
|
20
|
-
// Intended to protect an array from adding and then immediately deleting
|
|
21
|
-
/*
|
|
22
|
-
// TODO: Does this code protect bad array keying?
|
|
23
|
-
if(prevContext.renderCount === 0) {
|
|
24
|
-
const newKey = newValueTag.arrayValue
|
|
25
|
-
console.warn('Possible array issue. Array is attempting to create/delete same items. Either html``.key is not unique or array changes with every render', {
|
|
26
|
-
oldKey,
|
|
27
|
-
newKey,
|
|
28
|
-
|
|
29
|
-
prevValue: prevContext.value,
|
|
30
|
-
prevContext,
|
|
31
|
-
})
|
|
32
|
-
|
|
33
|
-
paintAfters.push(() => {
|
|
34
|
-
destroyArrayItemByGlobal(prevContext.global, prevContext)
|
|
35
|
-
paintAfters.shift() // prevent endless recursion
|
|
36
|
-
paint()
|
|
37
|
-
})
|
|
38
|
-
|
|
39
|
-
return 1
|
|
40
|
-
}
|
|
41
|
-
*/
|
|
42
20
|
destroyArrayItem(prevContext, counts);
|
|
43
21
|
lastArray.splice(index, 1);
|
|
44
22
|
return 2;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compareArrayItems.function.js","sourceRoot":"","sources":["../../../ts/tag/update/compareArrayItems.function.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAI9D,MAAM,UAAU,iBAAiB,CAC/B,KAAsC,EACtC,KAAa,EACb,SAA0B,EAC1B,OAAe,EACf,MAAc;IAEd,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAA;IAClC,MAAM,EAAE,GAAG,KAAK,GAAG,OAAO,CAAA;IAC1B,MAAM,UAAU,GAAG,EAAE,GAAG,CAAC,IAAI,SAAS,GAAG,EAAE,CAAA;IAC3C,MAAM,WAAW,GAAG,SAAS,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"compareArrayItems.function.js","sourceRoot":"","sources":["../../../ts/tag/update/compareArrayItems.function.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAI9D,MAAM,UAAU,iBAAiB,CAC/B,KAAsC,EACtC,KAAa,EACb,SAA0B,EAC1B,OAAe,EACf,MAAc;IAEd,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAA;IAClC,MAAM,EAAE,GAAG,KAAK,GAAG,OAAO,CAAA;IAC1B,MAAM,UAAU,GAAG,EAAE,GAAG,CAAC,IAAI,SAAS,GAAG,EAAE,CAAA;IAC3C,MAAM,WAAW,GAAG,SAAS,CAAC,KAAK,CAAuB,CAAA;IAE1D,IAAG,UAAU,EAAE,CAAC;QACd,gBAAgB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;QACrC,OAAO,CAAC,CAAA;IACV,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,UAAU,CAAA;IAC3C,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;IAEhC,MAAM,MAAM,GAAG,gBAAgB,CAC7B,MAAM,EACN,WAAwB,EACxB,WAAW,EACX,MAAM,EACN,SAAS,EACT,KAAK,CACN,CAAA;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,gBAAgB,CACvB,MAAc,EACd,WAAsB,EACtB,WAA+B,EAC/B,MAAc,EACd,SAA0B,EAC1B,KAAa;IAEb,MAAM,MAAM,GAAG,WAAW,IAAI,MAAM,KAAK,WAAW,CAAC,UAAU,CAAA;IAE/D,IAAI,MAAM,EAAG,CAAC;QACZ,gBAAgB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;QACrC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QAC1B,OAAO,CAAC,CAAA;IACV,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,IAAiB,EACjB,MAAc;IAEd,MAAM,MAAM,GAAG,IAAI,CAAC,MAA0B,CAAA;IAE9C,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAEtC,EAAE,MAAM,CAAC,OAAO,CAAA;AAClB,CAAC;AAED,SAAS,wBAAwB,CAC/B,MAAwB,EACxB,IAAiB;IAEjB,IAAG,MAAM,EAAE,CAAC;QACV,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAA;QAC7B,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IACjC,CAAC;SAAM,CAAC;QACN,MAAM,OAAO,GAAG,IAAI,CAAC,cAAyB,CAAA;QAC9C,OAAO,IAAI,CAAC,cAAc,CAAA;QAC1B,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC5B,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Counts } from '../../interpolations/interpolateTemplate.js';
|
|
2
|
+
import { TemplateValue } from './processFirstSubject.utils.js';
|
|
3
|
+
import { ContextItem } from '../Context.types.js';
|
|
4
|
+
import { AnySupport } from '../AnySupport.type.js';
|
|
5
|
+
/** Must provide insertBefore OR appendTo */
|
|
6
|
+
export declare function createAndProcessContextItem(value: TemplateValue, ownerSupport: AnySupport, counts: Counts, insertBefore?: Text, // used during updates
|
|
7
|
+
appendTo?: Element): ContextItem;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
// taggedjs-no-compile
|
|
2
|
+
import { paintAppends, paintInsertBefores } from '../paint.function.js';
|
|
3
|
+
import { checkSimpleValueChange, deleteSimpleValue } from '../checkDestroyPrevious.function.js';
|
|
4
|
+
import { domProcessContextItem } from '../../interpolations/optimizers/domProcessContextItem.function.js';
|
|
5
|
+
/** Must provide insertBefore OR appendTo */
|
|
6
|
+
export function createAndProcessContextItem(value, ownerSupport, counts, insertBefore, // used during updates
|
|
7
|
+
appendTo) {
|
|
8
|
+
const element = document.createTextNode('');
|
|
9
|
+
const contextItem = {
|
|
10
|
+
value,
|
|
11
|
+
checkValueChange: checkSimpleValueChange,
|
|
12
|
+
delete: deleteSimpleValue,
|
|
13
|
+
withinOwnerElement: false,
|
|
14
|
+
placeholder: element,
|
|
15
|
+
};
|
|
16
|
+
counts.added = counts.added + 1; // index
|
|
17
|
+
if (!appendTo) {
|
|
18
|
+
paintInsertBefores.push({
|
|
19
|
+
element,
|
|
20
|
+
relative: insertBefore,
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
domProcessContextItem(value, contextItem, ownerSupport, counts, appendTo, insertBefore);
|
|
24
|
+
if (appendTo) {
|
|
25
|
+
paintAppends.push({
|
|
26
|
+
element,
|
|
27
|
+
relative: appendTo,
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
return contextItem;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=createAndProcessContextItem.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createAndProcessContextItem.function.js","sourceRoot":"","sources":["../../../ts/tag/update/createAndProcessContextItem.function.ts"],"names":[],"mappings":"AAAA,sBAAsB;AAEtB,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACvE,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAA;AAK/F,OAAO,EAAE,qBAAqB,EAAE,MAAM,mEAAmE,CAAA;AAEzG,4CAA4C;AAC5C,MAAM,UAAU,2BAA2B,CACzC,KAAoB,EACpB,YAAwB,EACxB,MAAc,EACd,YAAmB,EAAE,sBAAsB;AAC3C,QAAkB;IAElB,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAA;IAC3C,MAAM,WAAW,GAAgB;QAC/B,KAAK;QACL,gBAAgB,EAAE,sBAAsB;QACxC,MAAM,EAAE,iBAAiB;QACzB,kBAAkB,EAAE,KAAK;QACzB,WAAW,EAAE,OAAO;KACrB,CAAA;IAED,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAA,CAAC,UAAU;IAE1C,IAAG,CAAC,QAAQ,EAAE,CAAC;QACb,kBAAkB,CAAC,IAAI,CAAC;YACtB,OAAO;YACP,QAAQ,EAAE,YAAoB;SAC/B,CAAC,CAAA;IACJ,CAAC;IAED,qBAAqB,CACnB,KAAK,EACL,WAAW,EACX,YAAY,EACZ,MAAM,EACN,QAAQ,EACR,YAAY,CACb,CAAA;IAED,IAAI,QAAQ,EAAG,CAAC;QACd,YAAY,CAAC,IAAI,CAAC;YAChB,OAAO;YACP,QAAQ,EAAE,QAAQ;SACnB,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,WAAW,CAAA;AACpB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { SupportContextItem } from '../createHtmlSupport.function.js';
|
|
2
|
+
import { TemplateValue } from './processFirstSubject.utils.js';
|
|
3
|
+
import { ContextItem } from '../Context.types.js';
|
|
4
|
+
import { AnySupport } from '../AnySupport.type.js';
|
|
5
|
+
/** Used for all tag value updates. Determines if value changed since last render */
|
|
6
|
+
export declare function forceUpdateExistingValue(contextItem: ContextItem | SupportContextItem, newValue: TemplateValue, // newValue
|
|
7
|
+
ownerSupport: AnySupport): void;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { updateToDiffValue } from './updateToDiffValue.function.js';
|
|
2
|
+
/** Used for all tag value updates. Determines if value changed since last render */
|
|
3
|
+
export function forceUpdateExistingValue(contextItem, newValue, // newValue
|
|
4
|
+
ownerSupport) {
|
|
5
|
+
// Have the context check itself (avoid having to detect old value)
|
|
6
|
+
const ignoreOrDestroyed = contextItem.checkValueChange(newValue, contextItem);
|
|
7
|
+
// ignore
|
|
8
|
+
if (ignoreOrDestroyed === -1) {
|
|
9
|
+
return; // do nothing
|
|
10
|
+
}
|
|
11
|
+
updateToDiffValue(newValue, contextItem, ownerSupport, ignoreOrDestroyed);
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=forceUpdateExistingValue.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"forceUpdateExistingValue.function.js","sourceRoot":"","sources":["../../../ts/tag/update/forceUpdateExistingValue.function.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAInE,oFAAoF;AACpF,MAAM,UAAU,wBAAwB,CACtC,WAA6C,EAC7C,QAAuB,EAAE,WAAW;AACpC,YAAwB;IAExB,mEAAmE;IACnE,MAAM,iBAAiB,GAAG,WAAW,CAAC,gBAAgB,CACpD,QAAQ,EACR,WAA4C,CAC7C,CAAA;IAED,SAAS;IACT,IAAG,iBAAiB,KAAK,CAAC,CAAC,EAAE,CAAC;QAC5B,OAAM,CAAC,aAAa;IACtB,CAAC;IAED,iBAAiB,CAAC,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,iBAAiB,CAAC,CAAA;AAC3E,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { TemplateValue } from './processFirstSubject.utils.js';
|
|
2
|
+
import type { StringTag } from '../StringTag.type.js';
|
|
3
|
+
import { ContextItem } from '../Context.types.js';
|
|
4
|
+
import { AnySupport } from '../AnySupport.type.js';
|
|
5
|
+
export declare function handleStillTag(lastSupport: AnySupport, subject: ContextItem, value: StringTag | TemplateValue, ownerSupport: AnySupport): void;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { updateSupportBy } from '../updateSupportBy.function.js';
|
|
2
|
+
import { createSupport } from '../createSupport.function.js';
|
|
3
|
+
export function handleStillTag(lastSupport, subject, value, ownerSupport) {
|
|
4
|
+
const templater = value.templater || value;
|
|
5
|
+
const valueSupport = createSupport(templater, ownerSupport, ownerSupport.appSupport, subject);
|
|
6
|
+
const lastSubject = lastSupport.subject;
|
|
7
|
+
const newGlobal = lastSubject.global;
|
|
8
|
+
const oldest = newGlobal.oldest;
|
|
9
|
+
updateSupportBy(oldest, valueSupport);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=handleStillTag.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handleStillTag.function.js","sourceRoot":"","sources":["../../../ts/tag/update/handleStillTag.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAKhE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAG5D,MAAM,UAAU,cAAc,CAC5B,WAAuB,EACvB,OAAoB,EACpB,KAAgC,EAChC,YAAwB;IAExB,MAAM,SAAS,GAAI,KAAa,CAAC,SAAS,IAAI,KAAK,CAAA;IAEnD,MAAM,YAAY,GAAG,aAAa,CAChC,SAA4B,EAC5B,YAAY,EACZ,YAAY,CAAC,UAAU,EACvB,OAAO,CACR,CAAA;IAED,MAAM,WAAW,GAAG,WAAW,CAAC,OAAsB,CAAA;IACtD,MAAM,SAAS,GAAG,WAAW,CAAC,MAA0B,CAAA;IACxD,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAA;IAE/B,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;AACvC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Wrapper } from '../getTemplaterResult.function.js';
|
|
2
|
-
import { AnySupport } from '../
|
|
2
|
+
import { AnySupport } from '../AnySupport.type.js';
|
|
3
3
|
import { ContextItem } from '../Context.types.js';
|
|
4
4
|
export declare function oneRenderToSupport(wrapper: Wrapper, subject: ContextItem, ownerSupport: AnySupport): AnySupport;
|
|
5
5
|
export type UnknownFunction = (...n: unknown[]) => unknown;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Counts } from '../../interpolations/interpolateTemplate.js';
|
|
2
|
+
import { TemplateValue } from './processFirstSubject.utils.js';
|
|
3
|
+
import type { StringTag } from '../StringTag.type.js';
|
|
4
|
+
import { ContextItem } from '../Context.types.js';
|
|
5
|
+
import { AnySupport } from '../AnySupport.type.js';
|
|
6
|
+
export declare function processDomTagInit(value: TemplateValue | StringTag, contextItem: ContextItem, // could be tag via result.tag
|
|
7
|
+
ownerSupport: AnySupport, // owningSupport
|
|
8
|
+
counts: Counts, // {added:0, removed:0}
|
|
9
|
+
appendTo?: Element, insertBefore?: Text): AnySupport | undefined;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { checkTagValueChange } from '../checkTagValueChange.function.js';
|
|
2
|
+
import { newSupportByTemplater, processTag, tagFakeTemplater } from './processTag.function.js';
|
|
3
|
+
import { getNewGlobal } from './getNewGlobal.function.js';
|
|
4
|
+
import { processNewSubjectTag } from './processNewSubjectTag.function.js';
|
|
5
|
+
export function processDomTagInit(value, contextItem, // could be tag via result.tag
|
|
6
|
+
ownerSupport, // owningSupport
|
|
7
|
+
counts, // {added:0, removed:0}
|
|
8
|
+
appendTo, insertBefore) {
|
|
9
|
+
contextItem.checkValueChange = checkTagValueChange;
|
|
10
|
+
const tag = value;
|
|
11
|
+
let templater = tag.templater;
|
|
12
|
+
if (!templater) {
|
|
13
|
+
templater = tagFakeTemplater(tag);
|
|
14
|
+
}
|
|
15
|
+
const global = getNewGlobal(contextItem);
|
|
16
|
+
if (appendTo) {
|
|
17
|
+
return processNewSubjectTag(templater, contextItem, ownerSupport, counts, appendTo, insertBefore);
|
|
18
|
+
}
|
|
19
|
+
global.newest = newSupportByTemplater(templater, ownerSupport, contextItem);
|
|
20
|
+
contextItem.checkValueChange = checkTagValueChange;
|
|
21
|
+
return processTag(ownerSupport, contextItem, counts);
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=processDomTagInit.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"processDomTagInit.function.js","sourceRoot":"","sources":["../../../ts/tag/update/processDomTagInit.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAA;AACxE,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAK9F,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAIzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAA;AAGzE,MAAM,UAAU,iBAAiB,CAC/B,KAAgC,EAChC,WAAwB,EAAE,8BAA8B;AACxD,YAAwB,EAAE,gBAAgB;AAC1C,MAAc,EAAE,uBAAuB;AACvC,QAAkB,EAClB,YAAmB;IAEnB,WAAW,CAAC,gBAAgB,GAAG,mBAAmB,CAAA;IAClD,MAAM,GAAG,GAAG,KAA2B,CAAA;IACvC,IAAI,SAAS,GAAG,GAAG,CAAC,SAAS,CAAA;IAE7B,IAAG,CAAC,SAAS,EAAE,CAAC;QACd,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAA;IACnC,CAAC;IAED,MAAM,MAAM,GAAG,YAAY,CAAC,WAAW,CAAqB,CAAA;IAE5D,IAAG,QAAQ,EAAE,CAAC;QACZ,OAAO,oBAAoB,CACzB,SAAS,EACT,WAAW,EACX,YAAY,EACZ,MAAM,EACN,QAAQ,EACR,YAAY,CACb,CAAA;IACH,CAAC;IAED,MAAM,CAAC,MAAM,GAAG,qBAAqB,CAAC,SAAS,EAAE,YAAY,EAAE,WAAW,CAAC,CAAA;IAC3E,WAAW,CAAC,gBAAgB,GAAG,mBAAmB,CAAA;IAElD,OAAO,UAAU,CACf,YAAY,EACZ,WAAiC,EACjC,MAAM,CACP,CAAA;AACH,CAAC"}
|
|
@@ -4,7 +4,8 @@ import { RegularValue } from './processRegularValue.function.js';
|
|
|
4
4
|
import { Callback } from '../../interpolations/attributes/bindSubjectCallback.function.js';
|
|
5
5
|
import { StringTag } from '../StringTag.type.js';
|
|
6
6
|
import { Subject } from '../../subject/index.js';
|
|
7
|
+
import { SubscribeValue } from '../../state/subscribe.function.js';
|
|
7
8
|
export type InterpolateSubject = (ValueSubject<unknown> | ValueSubject<Callback>) & {
|
|
8
9
|
global: TagGlobal;
|
|
9
10
|
};
|
|
10
|
-
export type TemplateValue = StringTag | TemplaterResult | (StringTag | TemplaterResult)[] | RegularValue | Subject<unknown> | Callback;
|
|
11
|
+
export type TemplateValue = StringTag | SubscribeValue | TemplaterResult | (StringTag | TemplaterResult)[] | RegularValue | Subject<unknown> | Callback;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { TemplaterResult } from '../getTemplaterResult.function.js';
|
|
2
2
|
import { Counts } from '../../interpolations/interpolateTemplate.js';
|
|
3
|
-
import {
|
|
3
|
+
import { SupportContextItem } from '../createHtmlSupport.function.js';
|
|
4
|
+
import { AnySupport } from '../AnySupport.type.js';
|
|
4
5
|
export declare function processReplacementComponent(templater: TemplaterResult, subject: SupportContextItem, ownerSupport: AnySupport, counts: Counts): AnySupport;
|
|
5
6
|
export declare function processFirstSubjectComponent(templater: TemplaterResult, subject: SupportContextItem, ownerSupport: AnySupport, counts: Counts, appendTo: Element): AnySupport;
|
|
@@ -2,11 +2,11 @@ import { processFirstTagResult, processReplaceTagResult } from './processTagResu
|
|
|
2
2
|
import { renderWithSupport } from '../render/renderWithSupport.function.js';
|
|
3
3
|
import { ValueTypes } from '../ValueTypes.enum.js';
|
|
4
4
|
import { getCastedProps } from '../getTagWrap.function.js';
|
|
5
|
-
import {
|
|
5
|
+
import { createSupport } from '../createSupport.function.js';
|
|
6
6
|
export function processReplacementComponent(templater, subject, ownerSupport, counts) {
|
|
7
7
|
// TODO: This below check not needed in production mode
|
|
8
8
|
// validateTemplater(templater)
|
|
9
|
-
const newSupport =
|
|
9
|
+
const newSupport = createSupport(templater, ownerSupport, ownerSupport.appSupport, subject);
|
|
10
10
|
const newPropsConfig = newSupport.propsConfig;
|
|
11
11
|
if (newPropsConfig) {
|
|
12
12
|
const castedProps = templater.tagJsType !== ValueTypes.tagComponent ? [] : getCastedProps(templater, newSupport);
|
|
@@ -21,7 +21,7 @@ export function processReplacementComponent(templater, subject, ownerSupport, co
|
|
|
21
21
|
export function processFirstSubjectComponent(templater, subject, ownerSupport, counts, appendTo) {
|
|
22
22
|
// TODO: This below check not needed in production mode
|
|
23
23
|
// validateTemplater(templater)
|
|
24
|
-
const newSupport =
|
|
24
|
+
const newSupport = createSupport(templater, ownerSupport, ownerSupport.appSupport, subject);
|
|
25
25
|
const newPropsConfig = newSupport.propsConfig;
|
|
26
26
|
if (newPropsConfig) {
|
|
27
27
|
const castedProps = templater.tagJsType !== ValueTypes.tagComponent ? [] : getCastedProps(templater, newSupport);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processFirstSubjectComponent.function.js","sourceRoot":"","sources":["../../../ts/tag/update/processFirstSubjectComponent.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAK,gCAAgC,CAAA;AAE9F,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAA;AAE3E,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"processFirstSubjectComponent.function.js","sourceRoot":"","sources":["../../../ts/tag/update/processFirstSubjectComponent.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAK,gCAAgC,CAAA;AAE9F,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAA;AAE3E,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAG5D,MAAM,UAAU,2BAA2B,CACzC,SAA0B,EAC1B,OAA0B,EAC1B,YAAwB,EACxB,MAAc;IAEd,uDAAuD;IACvD,+BAA+B;IAE/B,MAAM,UAAU,GAAG,aAAa,CAC9B,SAAS,EACT,YAAY,EACZ,YAAY,CAAC,UAAU,EACvB,OAAO,CACR,CAAA;IAED,MAAM,cAAc,GAAG,UAAU,CAAC,WAA0B,CAAA;IAC5D,IAAG,cAAc,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,SAAS,CAAC,SAAS,KAAK,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CACvF,SAAS,EACT,UAAU,CACX,CAAA;QAED,cAAc,CAAC,SAAS,GAAG,WAAW,CAAA;IACxC,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,MAA0B,CAAA;IACjD,MAAM,EAAC,OAAO,EAAC,GAAG,iBAAiB,CACjC,UAAU,EACV,MAAM,CAAC,MAAM,EAAE,eAAe;IAC9B,OAAO,EACP,YAAY,CACb,CAAA;IAED,uBAAuB,CACrB,OAAO,EACP,MAAM,EACN,OAAsB,CACvB,CAAA;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,SAA0B,EAC1B,OAA0B,EAC1B,YAAwB,EACxB,MAAc,EACd,QAAiB;IAEjB,uDAAuD;IACvD,+BAA+B;IAE/B,MAAM,UAAU,GAAG,aAAa,CAC9B,SAAS,EACT,YAAY,EACZ,YAAY,CAAC,UAAU,EACvB,OAAO,CACR,CAAA;IAED,MAAM,cAAc,GAAG,UAAU,CAAC,WAA0B,CAAA;IAC5D,IAAG,cAAc,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,SAAS,CAAC,SAAS,KAAK,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CACvF,SAAS,EACT,UAAU,CACX,CAAA;QAED,cAAc,CAAC,SAAS,GAAG,WAAW,CAAA;IACxC,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,MAA0B,CAAA;IACjD,MAAM,EAAC,OAAO,EAAC,GAAG,iBAAiB,CACjC,UAAU,EACV,MAAM,CAAC,MAAM,EAAE,kBAAkB;IACjC,OAAO,EACP,YAAY,CACb,CAAA;IAED,qBAAqB,CACnB,OAAO,EACP,MAAM,EACN,QAAQ,CACT,CAAA;IAED,OAAO,OAAO,CAAA;AAChB,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Counts } from '../../interpolations/interpolateTemplate.js';
|
|
2
|
-
import { AnySupport } from '../getSupport.function.js';
|
|
3
2
|
import { TemplateValue } from './processFirstSubject.utils.js';
|
|
4
3
|
import type { StringTag } from '../StringTag.type.js';
|
|
5
4
|
import { ContextItem } from '../Context.types.js';
|
|
5
|
+
import { AnySupport } from '../AnySupport.type.js';
|
|
6
6
|
export declare function processFirstSubjectValue(value: TemplateValue | StringTag, contextItem: ContextItem, // could be tag via result.tag
|
|
7
7
|
ownerSupport: AnySupport, // owningSupport
|
|
8
8
|
counts: Counts, // {added:0, removed:0}
|