taggedjs 2.4.32 → 2.5.5
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 +3367 -2879
- package/bundle.js.map +1 -1
- package/js/Props.d.ts +1 -1
- package/js/Tag.class.d.ts +1 -1
- package/js/TagSupport.class.d.ts +1 -1
- package/js/TagSupport.class.js +26 -19
- package/js/TagSupport.class.js.map +1 -1
- package/js/TemplaterResult.class.d.ts +14 -12
- package/js/TemplaterResult.class.js +12 -58
- package/js/TemplaterResult.class.js.map +1 -1
- package/js/afterInterpolateElement.function.d.ts +2 -2
- package/js/alterProps.function.d.ts +3 -4
- package/js/alterProps.function.js +39 -16
- package/js/alterProps.function.js.map +1 -1
- package/js/checkDestroyPrevious.function.d.ts +4 -4
- package/js/checkDestroyPrevious.function.js +7 -5
- package/js/checkDestroyPrevious.function.js.map +1 -1
- package/js/cloneValueArray.function.d.ts +1 -1
- package/js/deepFunctions.js +1 -1
- package/js/deepFunctions.js.map +1 -1
- package/js/destroy.support.d.ts +1 -1
- package/js/destroyTag.function.d.ts +1 -1
- package/js/destroyTag.function.js +0 -2
- package/js/destroyTag.function.js.map +1 -1
- package/js/hasTagSupportChanged.function.d.ts +1 -1
- package/js/index.d.ts +18 -10
- package/js/index.js +17 -15
- package/js/index.js.map +1 -1
- package/js/insertAfter.function.d.ts +1 -1
- package/js/interpolations/Clones.type.d.ts +3 -0
- package/js/interpolations/Clones.type.js +2 -0
- package/js/interpolations/Clones.type.js.map +1 -0
- package/js/interpolations/ElementTargetEvent.interface.d.ts +6 -0
- package/js/interpolations/ElementTargetEvent.interface.js +2 -0
- package/js/interpolations/ElementTargetEvent.interface.js.map +1 -0
- package/js/interpolations/afterInterpolateElement.function.d.ts +4 -0
- package/js/interpolations/afterInterpolateElement.function.js +12 -0
- package/js/interpolations/afterInterpolateElement.function.js.map +1 -0
- package/js/interpolations/bindSubjectCallback.function.d.ts +1 -1
- package/js/interpolations/bindSubjectCallback.function.js +11 -7
- package/js/interpolations/bindSubjectCallback.function.js.map +1 -1
- package/js/interpolations/interpolateAttributes.d.ts +2 -2
- package/js/interpolations/interpolateAttributes.js +5 -0
- package/js/interpolations/interpolateAttributes.js.map +1 -1
- package/js/interpolations/interpolateContentTemplates.d.ts +2 -2
- package/js/interpolations/interpolateElement.d.ts +2 -2
- package/js/interpolations/interpolateElement.js +1 -1
- package/js/interpolations/interpolateElement.js.map +1 -1
- package/js/interpolations/interpolateTemplate.d.ts +4 -4
- package/js/interpolations/interpolateTemplate.js +19 -4
- package/js/interpolations/interpolateTemplate.js.map +1 -1
- package/js/interpolations/processAttribute.function.d.ts +2 -2
- package/js/interpolations/scanTextAreaValue.function.d.ts +2 -2
- package/js/isInstance.d.ts +2 -2
- package/js/isInstance.js +2 -1
- package/js/isInstance.js.map +1 -1
- package/js/isLikeTags.function.d.ts +2 -1
- package/js/isLikeTags.function.js +3 -0
- package/js/isLikeTags.function.js.map +1 -1
- package/js/processNewValue.function.d.ts +1 -1
- package/js/processNewValue.function.js +1 -1
- package/js/processNewValue.function.js.map +1 -1
- package/js/processSubjectComponent.function.d.ts +1 -1
- package/js/processSubjectComponent.function.js +2 -16
- package/js/processSubjectComponent.function.js.map +1 -1
- package/js/processSubjectValue.function.d.ts +2 -2
- package/js/processSubjectValue.function.js +2 -2
- package/js/processSubjectValue.function.js.map +1 -1
- package/js/processTag.function.d.ts +1 -1
- package/js/processTag.function.js +1 -1
- package/js/processTag.function.js.map +1 -1
- package/js/processTagArray.d.ts +1 -1
- package/js/processTagArray.js +2 -2
- package/js/processTagArray.js.map +1 -1
- package/js/processTagResult.function.d.ts +2 -2
- package/js/render.d.ts +1 -1
- package/js/renderExistingTag.function.d.ts +1 -1
- package/js/renderExistingTag.function.js +4 -7
- package/js/renderExistingTag.function.js.map +1 -1
- package/js/renderSubjectComponent.function.d.ts +3 -0
- package/js/renderSubjectComponent.function.js +14 -0
- package/js/renderSubjectComponent.function.js.map +1 -0
- package/js/renderTagOnly.function.d.ts +4 -0
- package/js/renderTagOnly.function.js +39 -0
- package/js/renderTagOnly.function.js.map +1 -0
- package/js/renderTagSupport.function.d.ts +3 -2
- package/js/renderTagSupport.function.js +7 -9
- package/js/renderTagSupport.function.js.map +1 -1
- package/js/renderWithSupport.function.d.ts +5 -0
- package/js/renderWithSupport.function.js +31 -0
- package/js/renderWithSupport.function.js.map +1 -0
- package/js/state/callbackMaker.function.d.ts +3 -2
- package/js/state/callbackMaker.function.js +37 -18
- package/js/state/callbackMaker.function.js.map +1 -1
- package/js/state/children.d.ts +1 -0
- package/js/state/children.js +14 -0
- package/js/state/children.js.map +1 -0
- package/js/state/index.d.ts +2 -2
- package/js/state/index.js +1 -1
- package/js/state/index.js.map +1 -1
- package/js/state/letState.function.js.map +1 -1
- package/js/state/onDestroy.js +8 -6
- package/js/state/onDestroy.js.map +1 -1
- package/js/state/onInit.js +2 -2
- package/js/state/onInit.js.map +1 -1
- package/js/state/provider.utils.d.ts +1 -1
- package/js/state/provider.utils.js +7 -7
- package/js/state/provider.utils.js.map +1 -1
- package/js/state/providers.d.ts +4 -2
- package/js/state/providers.js +56 -40
- package/js/state/providers.js.map +1 -1
- package/js/state/setProp.function.js.map +1 -1
- package/js/state/setUse.function.d.ts +9 -8
- package/js/state/setUse.function.js.map +1 -1
- package/js/state/state.function.js +17 -0
- package/js/state/state.function.js.map +1 -1
- package/js/state/state.utils.d.ts +5 -6
- package/js/state/state.utils.js +44 -27
- package/js/state/state.utils.js.map +1 -1
- package/js/state/syncStates.function.d.ts +2 -0
- package/js/state/syncStates.function.js +11 -0
- package/js/state/syncStates.function.js.map +1 -0
- package/js/state/watch.function.d.ts +20 -3
- package/js/state/watch.function.js +106 -10
- package/js/state/watch.function.js.map +1 -1
- package/js/subject/Subject.class.d.ts +10 -2
- package/js/subject/Subject.class.js +31 -54
- package/js/subject/Subject.class.js.map +1 -1
- package/js/subject/Subject.utils.d.ts +6 -3
- package/js/subject/Subject.utils.js +51 -3
- package/js/subject/Subject.utils.js.map +1 -1
- package/js/subject/ValueSubject.d.ts +2 -2
- package/js/subject/combineLatest.function.js +10 -2
- package/js/subject/combineLatest.function.js.map +1 -1
- package/js/subject/subject.cancel.d.ts +2 -0
- package/js/subject/subject.cancel.js +3 -0
- package/js/subject/subject.cancel.js.map +1 -0
- package/js/subject/will.functions.d.ts +1 -1
- package/js/subject.types.d.ts +2 -2
- package/js/tag/Tag.class.d.ts +43 -0
- package/js/tag/Tag.class.js +27 -0
- package/js/tag/Tag.class.js.map +1 -0
- package/js/tag/TagSupport.class.d.ts +58 -0
- package/js/tag/TagSupport.class.js +321 -0
- package/js/tag/TagSupport.class.js.map +1 -0
- package/js/tag/checkDestroyPrevious.function.d.ts +8 -0
- package/js/tag/checkDestroyPrevious.function.js +83 -0
- package/js/tag/checkDestroyPrevious.function.js.map +1 -0
- package/js/tag/cloneValueArray.function.d.ts +2 -0
- package/js/tag/cloneValueArray.function.js +19 -0
- package/js/tag/cloneValueArray.function.js.map +1 -0
- package/js/tag/destroy.support.d.ts +6 -0
- package/js/tag/destroy.support.js +10 -0
- package/js/tag/destroy.support.js.map +1 -0
- package/js/tag/destroyTag.function.d.ts +3 -0
- package/js/tag/destroyTag.function.js +12 -0
- package/js/tag/destroyTag.function.js.map +1 -0
- package/js/tag/elementDestroyCheck.function.d.ts +3 -0
- package/js/tag/elementDestroyCheck.function.js +17 -0
- package/js/tag/elementDestroyCheck.function.js.map +1 -0
- package/js/tag/getSupportInCycle.function.d.ts +1 -0
- package/js/tag/getSupportInCycle.function.js +5 -0
- package/js/tag/getSupportInCycle.function.js.map +1 -0
- package/js/tag/hasPropChanges.function.d.ts +9 -0
- package/js/tag/hasPropChanges.function.js +80 -0
- package/js/tag/hasPropChanges.function.js.map +1 -0
- package/js/tag/hasTagSupportChanged.function.d.ts +4 -0
- package/js/tag/hasTagSupportChanged.function.js +23 -0
- package/js/tag/hasTagSupportChanged.function.js.map +1 -0
- package/js/tag/html.d.ts +4 -0
- package/js/tag/html.js +5 -0
- package/js/tag/html.js.map +1 -0
- package/js/tag/isLikeTags.function.d.ts +5 -0
- package/js/tag/isLikeTags.function.js +42 -0
- package/js/tag/isLikeTags.function.js.map +1 -0
- package/js/tag/render/renderExistingTag.function.d.ts +7 -0
- package/js/tag/render/renderExistingTag.function.js +45 -0
- package/js/tag/render/renderExistingTag.function.js.map +1 -0
- package/js/tag/render/renderSubjectComponent.function.d.ts +3 -0
- package/js/tag/render/renderSubjectComponent.function.js +14 -0
- package/js/tag/render/renderSubjectComponent.function.js.map +1 -0
- package/js/tag/render/renderTagOnly.function.d.ts +3 -0
- package/js/tag/render/renderTagOnly.function.js +41 -0
- package/js/tag/render/renderTagOnly.function.js.map +1 -0
- package/js/tag/render/renderTagSupport.function.d.ts +4 -0
- package/js/tag/render/renderTagSupport.function.js +37 -0
- package/js/tag/render/renderTagSupport.function.js.map +1 -0
- package/js/tag/render/renderWithSupport.function.d.ts +5 -0
- package/js/tag/render/renderWithSupport.function.js +31 -0
- package/js/tag/render/renderWithSupport.function.js.map +1 -0
- package/js/tag/setTagPlaceholder.function.d.ts +4 -0
- package/js/tag/setTagPlaceholder.function.js +12 -0
- package/js/tag/setTagPlaceholder.function.js.map +1 -0
- package/js/tag/tag.d.ts +26 -0
- package/js/tag/tag.js +121 -0
- package/js/tag/tag.js.map +1 -0
- package/js/tag/tagElement.d.ts +9 -0
- package/js/tag/tagElement.js +58 -0
- package/js/tag/tagElement.js.map +1 -0
- package/js/tag/tagRunner.d.ts +5 -0
- package/js/tag/tagRunner.js +28 -0
- package/js/tag/tagRunner.js.map +1 -0
- package/js/tag/update/processNewValue.function.d.ts +3 -0
- package/js/tag/update/processNewValue.function.js +42 -0
- package/js/tag/update/processNewValue.function.js.map +1 -0
- package/js/tag/update/processRegularValue.function.d.ts +5 -0
- package/js/tag/update/processRegularValue.function.js +15 -0
- package/js/tag/update/processRegularValue.function.js.map +1 -0
- package/js/tag/update/processSubjectComponent.function.d.ts +9 -0
- package/js/tag/update/processSubjectComponent.function.js +35 -0
- package/js/tag/update/processSubjectComponent.function.js.map +1 -0
- package/js/tag/update/processSubjectValue.function.d.ts +27 -0
- package/js/tag/update/processSubjectValue.function.js +55 -0
- package/js/tag/update/processSubjectValue.function.js.map +1 -0
- package/js/tag/update/processTag.function.d.ts +11 -0
- package/js/tag/update/processTag.function.js +46 -0
- package/js/tag/update/processTag.function.js.map +1 -0
- package/js/tag/update/processTagArray.d.ts +22 -0
- package/js/tag/update/processTagArray.js +120 -0
- package/js/tag/update/processTagArray.js.map +1 -0
- package/js/tag/update/processTagResult.function.d.ts +11 -0
- package/js/tag/update/processTagResult.function.js +30 -0
- package/js/tag/update/processTagResult.function.js.map +1 -0
- package/js/tag/update/updateContextItem.function.d.ts +3 -0
- package/js/tag/update/updateContextItem.function.js +44 -0
- package/js/tag/update/updateContextItem.function.js.map +1 -0
- package/js/tag/update/updateExistingTagComponent.function.d.ts +5 -0
- package/js/tag/update/updateExistingTagComponent.function.js +116 -0
- package/js/tag/update/updateExistingTagComponent.function.js.map +1 -0
- package/js/tag/update/updateExistingValue.function.d.ts +4 -0
- package/js/tag/update/updateExistingValue.function.js +135 -0
- package/js/tag/update/updateExistingValue.function.js.map +1 -0
- package/js/tag/updates/processNewValue.function.d.ts +3 -0
- package/js/tag/updates/processNewValue.function.js +43 -0
- package/js/tag/updates/processNewValue.function.js.map +1 -0
- package/js/tag.d.ts +8 -1
- package/js/tag.js +3 -2
- package/js/tag.js.map +1 -1
- package/js/tagElement.d.ts +2 -2
- package/js/tagElement.js +7 -1
- package/js/tagElement.js.map +1 -1
- package/js/tagRunner.d.ts +2 -3
- package/js/tagRunner.js +6 -3
- package/js/tagRunner.js.map +1 -1
- package/js/updateBeforeTemplate.function.d.ts +1 -1
- package/js/updateContextItem.function.d.ts +1 -1
- package/js/updateContextItem.function.js +2 -3
- package/js/updateContextItem.function.js.map +1 -1
- package/js/updateExistingTagComponent.function.d.ts +2 -2
- package/js/updateExistingTagComponent.function.js +3 -5
- package/js/updateExistingTagComponent.function.js.map +1 -1
- package/js/updateExistingValue.function.d.ts +3 -3
- package/js/updateExistingValue.function.js +7 -10
- package/js/updateExistingValue.function.js.map +1 -1
- package/package.json +1 -1
package/js/processTagArray.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ValueSubject } from './subject/ValueSubject';
|
|
2
2
|
import { ArrayNoKeyError } from './errors';
|
|
3
3
|
import { destroyArrayTag } from './checkDestroyPrevious.function';
|
|
4
|
-
import { setupNewTemplater, tagFakeTemplater } from './processTag.function';
|
|
5
|
-
import { TagSupport } from './TagSupport.class';
|
|
4
|
+
import { setupNewTemplater, tagFakeTemplater } from './tag/update/processTag.function';
|
|
5
|
+
import { TagSupport } from './tag/TagSupport.class';
|
|
6
6
|
import { isTagClass } from './isInstance';
|
|
7
7
|
export function processTagArray(subject, value, // arry of Tag classes
|
|
8
8
|
insertBefore, // <template end interpolate />
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processTagArray.js","sourceRoot":"","sources":["../ts/processTagArray.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"processTagArray.js","sourceRoot":"","sources":["../ts/processTagArray.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Counts } from './interpolations/interpolateTemplate';
|
|
2
|
-
import { TagArraySubject } from './processTagArray';
|
|
2
|
+
import { TagArraySubject } from './tag/update/processTagArray';
|
|
3
3
|
import { TagSubject } from './subject.types';
|
|
4
4
|
import { InsertBefore } from './Clones.type';
|
|
5
|
-
import { TagSupport } from './TagSupport.class';
|
|
5
|
+
import { TagSupport } from './tag/TagSupport.class';
|
|
6
6
|
export declare function processTagResult(tagSupport: TagSupport, subject: TagArraySubject | TagSubject | Function, // used for recording past and current value
|
|
7
7
|
insertBefore: InsertBefore, // <template end interpolate />
|
|
8
8
|
{ counts, forceElement, }: {
|
package/js/render.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { InsertBefore } from "./Clones.type";
|
|
1
|
+
import { InsertBefore } from "./interpolations/Clones.type";
|
|
2
2
|
export declare function buildClones(temporary: Element, insertBefore: InsertBefore): ChildNode[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BaseTagSupport, TagSupport } from './TagSupport.class';
|
|
1
|
+
import { BaseTagSupport, TagSupport } from './tag/TagSupport.class';
|
|
2
2
|
import { TagSubject } from './subject.types';
|
|
3
3
|
/** Returns true when rendering owner is not needed. Returns false when rendering owner should occur */
|
|
4
4
|
export declare function renderExistingTag(oldestSupport: TagSupport, // oldest with elements on html
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { providersChangeCheck } from './state/provider.utils';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { isLikeTags } from './tag/isLikeTags.function';
|
|
3
|
+
import { renderWithSupport } from './renderWithSupport.function';
|
|
4
4
|
/** Returns true when rendering owner is not needed. Returns false when rendering owner should occur */
|
|
5
5
|
export function renderExistingTag(oldestSupport, // oldest with elements on html
|
|
6
6
|
newSupport, // new to be rendered
|
|
@@ -18,14 +18,11 @@ subject) {
|
|
|
18
18
|
oldestSupport.updateBy(prevSupport);
|
|
19
19
|
return prevSupport; // already rendered during triggered events
|
|
20
20
|
}
|
|
21
|
-
// ??? changed during mirroring - lastSupport keeps having less info than newest
|
|
22
|
-
// const toRedrawTag = lastSupport || prevSupport || tagSupport.global.oldest
|
|
23
21
|
const toRedrawTag = prevSupport || lastSupport || global.oldest;
|
|
24
|
-
const reSupport = renderWithSupport(newSupport, toRedrawTag, subject,
|
|
25
|
-
// oldestSupport,
|
|
26
|
-
ownerSupport);
|
|
22
|
+
const reSupport = renderWithSupport(newSupport, toRedrawTag, subject, ownerSupport);
|
|
27
23
|
const oldest = global.oldest || oldestSupport;
|
|
28
24
|
reSupport.global.oldest = oldest;
|
|
25
|
+
// TODO: renderWithSupport already does an isLikeTags compare
|
|
29
26
|
if (isLikeTags(prevSupport, reSupport)) {
|
|
30
27
|
subject.tagSupport = reSupport;
|
|
31
28
|
oldest.updateBy(reSupport);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderExistingTag.function.js","sourceRoot":"","sources":["../ts/renderExistingTag.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"renderExistingTag.function.js","sourceRoot":"","sources":["../ts/renderExistingTag.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAE7D,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAEhE,uGAAuG;AACvG,MAAM,UAAU,iBAAiB,CAC/B,aAAyB,EAAE,+BAA+B;AAC1D,UAAsB,EAAE,qBAAqB;AAC7C,YAA4B,EAAE,eAAe;AAC7C,OAAmB;IAEnB,MAAM,WAAW,GAAG,OAAO,CAAC,UAAwB,CAAA;IACpD,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAA;IAEjC,8BAA8B;IAC9B,UAAU,CAAC,MAAM,GAAG,MAAM,CAAA;IAE1B,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CAAA;IACzC,oBAAoB,CAAC,aAAa,CAAC,CAAA;IAEnC,oGAAoG;IACpG,MAAM,WAAW,GAAG,MAAM,CAAC,MAAoB,CAAA;IAC/C,IAAG,cAAc,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC;QACzC,aAAa,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;QACnC,OAAO,WAAW,CAAA,CAAC,2CAA2C;IAChE,CAAC;IAED,MAAM,WAAW,GAAG,WAAW,IAAI,WAAW,IAAI,MAAM,CAAC,MAAM,CAAA;IAE/D,MAAM,SAAS,GAAG,iBAAiB,CACjC,UAAU,EACV,WAAW,EACX,OAAO,EACP,YAA0B,CAC3B,CAAA;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,aAAa,CAAA;IAC7C,SAAS,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA;IAEhC,6DAA6D;IAC7D,IAAG,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC;QACtC,OAAO,CAAC,UAAU,GAAG,SAAS,CAAA;QAC9B,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;IAC5B,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { renderWithSupport } from './tag/render/renderWithSupport.function';
|
|
2
|
+
export function renderSubjectComponent(subject, reSupport, ownerSupport) {
|
|
3
|
+
const preClones = ownerSupport.clones.map(clone => clone);
|
|
4
|
+
reSupport = renderWithSupport(reSupport, subject.tagSupport, // existing tag
|
|
5
|
+
subject, ownerSupport);
|
|
6
|
+
reSupport.global.newest = reSupport;
|
|
7
|
+
if (ownerSupport.clones.length > preClones.length) {
|
|
8
|
+
const myClones = ownerSupport.clones.filter(fClone => !preClones.find(clone => clone === fClone));
|
|
9
|
+
reSupport.clones.push(...myClones);
|
|
10
|
+
}
|
|
11
|
+
ownerSupport.childTags.push(reSupport);
|
|
12
|
+
return reSupport;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=renderSubjectComponent.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderSubjectComponent.function.js","sourceRoot":"","sources":["../ts/renderSubjectComponent.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAA;AAI3E,MAAM,UAAU,sBAAsB,CACpC,OAAmB,EACnB,SAAqB,EACrB,YAAwB;IAExB,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAA;IAEzD,SAAS,GAAG,iBAAiB,CAC3B,SAAS,EACT,OAAO,CAAC,UAAU,EAAE,eAAe;IACnC,OAAO,EACP,YAAY,CACb,CAAA;IAED,SAAS,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAA;IAEnC,IAAG,YAAY,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC;QACjD,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAA;QACjG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAA;IACpC,CAAC;IAED,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAEtC,OAAO,SAAS,CAAA;AAClB,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { runBeforeRedraw, runBeforeRender } from './tag/tagRunner';
|
|
2
|
+
import { setUse } from './state';
|
|
3
|
+
import { runAfterRender } from './tag/tagRunner';
|
|
4
|
+
export function renderTagOnly(tagSupport, // new
|
|
5
|
+
lastSupport, subject, ownerSupport) {
|
|
6
|
+
const oldRenderCount = tagSupport.global.renderCount;
|
|
7
|
+
beforeWithRender(tagSupport, ownerSupport, lastSupport);
|
|
8
|
+
const templater = tagSupport.templater;
|
|
9
|
+
// NEW TAG CREATED HERE
|
|
10
|
+
const wrapper = templater.wrapper;
|
|
11
|
+
const reSupport = wrapper(tagSupport, subject);
|
|
12
|
+
/* AFTER */
|
|
13
|
+
runAfterRender(tagSupport, reSupport);
|
|
14
|
+
// When we rendered, only 1 render should have taken place OTHERWISE rendering caused another render and that is the latest instead
|
|
15
|
+
if (reSupport.global.renderCount > oldRenderCount + 1) {
|
|
16
|
+
return tagSupport.global.newest;
|
|
17
|
+
}
|
|
18
|
+
tagSupport.global.newest = reSupport;
|
|
19
|
+
return reSupport;
|
|
20
|
+
}
|
|
21
|
+
function beforeWithRender(tagSupport, ownerSupport, lastSupport) {
|
|
22
|
+
const lastOwnerSupport = lastSupport?.ownerTagSupport;
|
|
23
|
+
const runtimeOwnerSupport = lastOwnerSupport || ownerSupport;
|
|
24
|
+
if (lastSupport) {
|
|
25
|
+
const lastState = lastSupport.memory.state;
|
|
26
|
+
const memory = tagSupport.memory;
|
|
27
|
+
memory.state = [...lastState];
|
|
28
|
+
tagSupport.global = lastSupport.global;
|
|
29
|
+
runBeforeRedraw(tagSupport, lastSupport);
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
// first time render
|
|
33
|
+
runBeforeRender(tagSupport, runtimeOwnerSupport);
|
|
34
|
+
// TODO: Logic below most likely could live within providers.ts inside the runBeforeRender function
|
|
35
|
+
const providers = setUse.memory.providerConfig;
|
|
36
|
+
providers.ownerSupport = runtimeOwnerSupport;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=renderTagOnly.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderTagOnly.function.js","sourceRoot":"","sources":["../ts/renderTagOnly.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAIhD,MAAM,UAAU,aAAa,CAC3B,UAAsB,EAAE,MAAM;AAC9B,WAAmC,EACnC,OAAmB,EACnB,YAAyB;IAEzB,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC,WAAW,CAAA;IAEpD,gBAAgB,CAAC,UAAU,EAAE,YAAY,EAAE,WAAW,CAAC,CAAA;IAEvD,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAA;IAEtC,uBAAuB;IACvB,MAAM,OAAO,GAAG,SAAS,CAAC,OAAkB,CAAA;IAC5C,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAC9C,WAAW;IAEX,cAAc,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;IAErC,mIAAmI;IACnI,IAAG,SAAS,CAAC,MAAM,CAAC,WAAW,GAAG,cAAc,GAAG,CAAC,EAAE,CAAC;QACrD,OAAO,UAAU,CAAC,MAAM,CAAC,MAAoB,CAAA;IAC/C,CAAC;IAED,UAAU,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAA;IAEpC,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,gBAAgB,CACvB,UAA0B,EAC1B,YAAyB,EACzB,WAAwB;IAExB,MAAM,gBAAgB,GAAG,WAAW,EAAE,eAAe,CAAA;IACrD,MAAM,mBAAmB,GAA2B,gBAAgB,IAAI,YAAY,CAAA;IAEpF,IAAG,WAAW,EAAE,CAAC;QACf,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAA;QAC1C,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAA;QAChC,MAAM,CAAC,KAAK,GAAG,CAAC,GAAG,SAAS,CAAC,CAAA;QAC7B,UAAU,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAA;QAEtC,eAAe,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;IAC1C,CAAC;SAAM,CAAC;QACN,oBAAoB;QACpB,eAAe,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAA;QAEhD,mGAAmG;QACnG,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAA;QAC9C,SAAS,CAAC,YAAY,GAAG,mBAAmB,CAAA;IAC9C,CAAC;AACH,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import { TagSupport } from './TagSupport.class';
|
|
1
|
+
import { TagSupport } from './tag/TagSupport.class';
|
|
2
2
|
/** Main function used by all other callers to render/update display of a tag component */
|
|
3
|
-
export declare function renderTagSupport(tagSupport: TagSupport,
|
|
3
|
+
export declare function renderTagSupport(tagSupport: TagSupport, // must be latest/newest state render
|
|
4
|
+
renderUp: boolean): TagSupport;
|
|
@@ -1,30 +1,28 @@
|
|
|
1
1
|
import { deepEqual } from './deepFunctions';
|
|
2
|
-
import { renderExistingTag } from './renderExistingTag.function';
|
|
2
|
+
import { renderExistingTag } from './tag/render/renderExistingTag.function';
|
|
3
3
|
/** Main function used by all other callers to render/update display of a tag component */
|
|
4
|
-
export function renderTagSupport(tagSupport,
|
|
4
|
+
export function renderTagSupport(tagSupport, // must be latest/newest state render
|
|
5
|
+
renderUp) {
|
|
5
6
|
const global = tagSupport.global;
|
|
6
7
|
const templater = tagSupport.templater;
|
|
7
8
|
// is it just a vanilla tag, not component?
|
|
8
9
|
if (!templater.wrapper) { // || isTagTemplater(templater)
|
|
9
|
-
const
|
|
10
|
-
const ownerTag = newTag.ownerTagSupport;
|
|
10
|
+
const ownerTag = tagSupport.ownerTagSupport;
|
|
11
11
|
++global.renderCount;
|
|
12
12
|
return renderTagSupport(ownerTag, true);
|
|
13
13
|
}
|
|
14
14
|
const subject = tagSupport.subject;
|
|
15
|
-
const newest = global.newest;
|
|
16
15
|
let ownerSupport;
|
|
17
16
|
let selfPropChange = false;
|
|
18
|
-
const shouldRenderUp = renderUp &&
|
|
17
|
+
const shouldRenderUp = renderUp && tagSupport;
|
|
19
18
|
if (shouldRenderUp) {
|
|
20
|
-
ownerSupport =
|
|
19
|
+
ownerSupport = tagSupport.ownerTagSupport;
|
|
21
20
|
if (ownerSupport) {
|
|
22
21
|
const nowProps = templater.props;
|
|
23
|
-
const latestProps =
|
|
22
|
+
const latestProps = tagSupport.propsConfig.latestCloned;
|
|
24
23
|
selfPropChange = !deepEqual(nowProps, latestProps);
|
|
25
24
|
}
|
|
26
25
|
}
|
|
27
|
-
// const useTagSupport = global.newest as TagSupport // oldTagSetup
|
|
28
26
|
const oldest = tagSupport.global.oldest;
|
|
29
27
|
const tag = renderExistingTag(oldest, tagSupport, ownerSupport, // useTagSupport,
|
|
30
28
|
subject);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderTagSupport.function.js","sourceRoot":"","sources":["../ts/renderTagSupport.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"renderTagSupport.function.js","sourceRoot":"","sources":["../ts/renderTagSupport.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAA;AAE3E,0FAA0F;AAC1F,MAAM,UAAU,gBAAgB,CAC9B,UAAsB,EAAE,qCAAqC;AAC7D,QAAiB;IAEjB,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAA;IAChC,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAA;IAEtC,2CAA2C;IAE3C,IAAI,CAAC,SAAS,CAAC,OAAO,EAAG,CAAC,CAAA,gCAAgC;QACxD,MAAM,QAAQ,GAAG,UAAU,CAAC,eAA6B,CAAA;QACzD,EAAE,MAAM,CAAC,WAAW,CAAA;QACpB,OAAO,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IACzC,CAAC;IAED,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAA;IAElC,IAAI,YAAoC,CAAA;IACxC,IAAI,cAAc,GAAG,KAAK,CAAA;IAC1B,MAAM,cAAc,GAAG,QAAQ,IAAI,UAAU,CAAA;IAE7C,IAAG,cAAc,EAAE,CAAC;QAClB,YAAY,GAAG,UAAU,CAAC,eAAe,CAAA;QACzC,IAAG,YAAY,EAAE,CAAC;YAChB,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAY,CAAA;YACvC,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,YAAY,CAAA;YACvD,cAAc,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;QACpD,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,MAAoB,CAAA;IACrD,MAAM,GAAG,GAAG,iBAAiB,CAC3B,MAAM,EACN,UAAU,EACV,YAA0B,EAAE,iBAAiB;IAC7C,OAAO,CACR,CAAA;IAED,MAAM,WAAW,GAAG,YAAY,IAAI,cAAc,CAAA;IAClD,IAAG,WAAW,EAAE,CAAC;QACf,MAAM,eAAe,GAAG,YAA0B,CAAA;QAElD,gBAAgB,CACd,eAAe,EACf,IAAI,CACL,CAAA;QAED,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { TagSupport } from './tag/TagSupport.class';
|
|
2
|
+
import { TagSubject } from './subject.types';
|
|
3
|
+
export declare function renderWithSupport(tagSupport: TagSupport, lastSupport: TagSupport | undefined, // previous
|
|
4
|
+
subject: TagSubject, // events & memory
|
|
5
|
+
ownerSupport?: TagSupport): TagSupport;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { isLikeTags } from './tag/isLikeTags.function';
|
|
2
|
+
import { destroyTagMemory } from './destroyTag.function';
|
|
3
|
+
import { renderTagOnly } from './renderTagOnly.function';
|
|
4
|
+
export function renderWithSupport(tagSupport, lastSupport, // previous
|
|
5
|
+
subject, // events & memory
|
|
6
|
+
ownerSupport) {
|
|
7
|
+
const reSupport = renderTagOnly(tagSupport, lastSupport, subject, ownerSupport);
|
|
8
|
+
const isLikeTag = !lastSupport || isLikeTags(lastSupport, reSupport);
|
|
9
|
+
if (!isLikeTag) {
|
|
10
|
+
destroyUnlikeTags(lastSupport, reSupport, subject);
|
|
11
|
+
}
|
|
12
|
+
const lastOwnerSupport = lastSupport?.ownerTagSupport;
|
|
13
|
+
reSupport.ownerTagSupport = (ownerSupport || lastOwnerSupport);
|
|
14
|
+
return reSupport;
|
|
15
|
+
}
|
|
16
|
+
function destroyUnlikeTags(lastSupport, // old
|
|
17
|
+
reSupport, // new
|
|
18
|
+
subject) {
|
|
19
|
+
const oldGlobal = lastSupport.global;
|
|
20
|
+
const insertBefore = oldGlobal.insertBefore;
|
|
21
|
+
destroyTagMemory(lastSupport, subject);
|
|
22
|
+
// when a tag is destroyed, disconnect the globals
|
|
23
|
+
reSupport.global = { ...oldGlobal }; // break memory references
|
|
24
|
+
const global = reSupport.global;
|
|
25
|
+
global.insertBefore = insertBefore;
|
|
26
|
+
global.deleted = false;
|
|
27
|
+
delete global.oldest;
|
|
28
|
+
delete global.newest;
|
|
29
|
+
delete subject.tagSupport;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=renderWithSupport.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderWithSupport.function.js","sourceRoot":"","sources":["../ts/renderWithSupport.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAExD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAExD,MAAM,UAAU,iBAAiB,CAC/B,UAAsB,EACtB,WAAmC,EAAE,WAAW;AAChD,OAAmB,EAAE,kBAAkB;AACvC,YAAyB;IAEzB,MAAM,SAAS,GAAG,aAAa,CAC7B,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,CAC/C,CAAA;IAED,MAAM,SAAS,GAAG,CAAC,WAAW,IAAI,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;IACpE,IAAG,CAAC,SAAS,EAAE,CAAC;QACd,iBAAiB,CACf,WAAW,EACX,SAAS,EACT,OAAO,CACR,CAAA;IACH,CAAC;IAED,MAAM,gBAAgB,GAAG,WAAW,EAAE,eAAe,CAAA;IACrD,SAAS,CAAC,eAAe,GAAG,CAAC,YAAY,IAAI,gBAAgB,CAAe,CAAA;IAE5E,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,iBAAiB,CACxB,WAAuB,EAAE,MAAM;AAC/B,SAAqB,EAAE,MAAM;AAC7B,OAAmB;IAEnB,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAA;IACpC,MAAM,YAAY,GAAG,SAAS,CAAC,YAAuB,CAAA;IAEtD,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;IAEtC,kDAAkD;IAClD,SAAS,CAAC,MAAM,GAAG,EAAC,GAAG,SAAS,EAAC,CAAA,CAAC,0BAA0B;IAC5D,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAA;IAE/B,MAAM,CAAC,YAAY,GAAG,YAAY,CAAA;IAClC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAA;IAEtB,OAAO,MAAM,CAAC,MAAM,CAAA;IACpB,OAAO,MAAM,CAAC,MAAM,CAAA;IACpB,OAAQ,OAAyB,CAAC,UAAU,CAAA;AAC9C,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
type Callback<A, B, C, D, E, F> =
|
|
2
|
-
export declare const callbackMaker: () => <A, B, C, D, E, F>(callback: Callback<A, B, C, D, E, F>) => (a?: A | undefined, b?: B | undefined, c?: C | undefined, d?: D | undefined, e?: E | undefined, f?: F | undefined) =>
|
|
1
|
+
type Callback<A, B, C, D, E, F, T> = (a: A, b: B, c: C, d: D, e: E, f: F) => T;
|
|
2
|
+
export declare const callbackMaker: () => <A, B, C, D, E, F, T>(callback: Callback<A, B, C, D, E, F, T>) => (a?: A | undefined, b?: B | undefined, c?: C | undefined, d?: D | undefined, e?: E | undefined, f?: F | undefined) => T;
|
|
3
|
+
export declare function callback<A, B, C, D, E, F, T>(callback: Callback<A, B, C, D, E, F, T>): () => T;
|
|
3
4
|
export {};
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { setUse } from "./setUse.function";
|
|
2
|
-
import {
|
|
3
|
-
import { renderTagSupport } from "../renderTagSupport.function";
|
|
2
|
+
import { renderTagSupport } from "../tag/render/renderTagSupport.function";
|
|
4
3
|
import { SyncCallbackError } from "../errors";
|
|
4
|
+
import { syncStates } from "./syncStates.function";
|
|
5
|
+
import { getSupportInCycle } from "../tag/getSupportInCycle.function";
|
|
5
6
|
let innerCallback = (callback) => (a, b, c, d, e, f) => {
|
|
6
7
|
throw new SyncCallbackError('Callback function was called immediately in sync and must instead be call async');
|
|
7
8
|
};
|
|
@@ -10,42 +11,60 @@ const originalGetter = innerCallback; // callbackMaker
|
|
|
10
11
|
setUse({
|
|
11
12
|
beforeRender: (tagSupport) => initMemory(tagSupport),
|
|
12
13
|
beforeRedraw: (tagSupport) => initMemory(tagSupport),
|
|
13
|
-
afterRender: (
|
|
14
|
+
afterRender: (tagSupport) => {
|
|
15
|
+
;
|
|
16
|
+
tagSupport.global.callbackMaker = true;
|
|
14
17
|
innerCallback = originalGetter; // prevent crossing callbacks with another tag
|
|
15
18
|
},
|
|
16
19
|
});
|
|
17
|
-
function
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
export function callback(callback) {
|
|
21
|
+
const tagSupport = getSupportInCycle();
|
|
22
|
+
if (!tagSupport) {
|
|
23
|
+
const error = new SyncCallbackError('callback() was called outside of synchronous rendering. Use `callback = callbackMaker()` to create a callback that could be called out of sync with rendering');
|
|
24
|
+
throw error;
|
|
25
|
+
}
|
|
26
|
+
const oldState = setUse.memory.stateConfig.array;
|
|
27
|
+
const trigger = (...args) => {
|
|
28
|
+
const callbackMaker = tagSupport.global.callbackMaker;
|
|
29
|
+
if (callbackMaker) {
|
|
30
|
+
return triggerStateUpdate(tagSupport, callback, oldState, ...args);
|
|
23
31
|
}
|
|
24
|
-
|
|
25
|
-
}
|
|
32
|
+
return callback(...args);
|
|
33
|
+
};
|
|
34
|
+
return trigger;
|
|
26
35
|
}
|
|
27
36
|
function initMemory(tagSupport) {
|
|
28
37
|
const oldState = setUse.memory.stateConfig.array;
|
|
29
38
|
innerCallback = (callback) => {
|
|
30
|
-
const trigger = (...args) =>
|
|
39
|
+
const trigger = (...args) => {
|
|
40
|
+
const callbackMaker = tagSupport.global.callbackMaker;
|
|
41
|
+
if (callbackMaker) {
|
|
42
|
+
return triggerStateUpdate(tagSupport, callback, oldState, ...args);
|
|
43
|
+
}
|
|
44
|
+
return callback(...args);
|
|
45
|
+
};
|
|
31
46
|
return trigger;
|
|
32
47
|
};
|
|
33
48
|
}
|
|
34
49
|
function triggerStateUpdate(tagSupport, callback, oldState, ...args) {
|
|
35
50
|
const state = tagSupport.memory.state;
|
|
51
|
+
// oldState = (tagSupport.global.oldest as TagSupport).memory.state
|
|
36
52
|
// ensure that the oldest has the latest values first
|
|
37
|
-
|
|
53
|
+
syncStates(state, oldState);
|
|
38
54
|
// run the callback
|
|
39
|
-
const
|
|
55
|
+
const maybePromise = callback(...args);
|
|
56
|
+
// const maybePromise = callback(...args as [any,any,any,any,any,any])
|
|
40
57
|
// send the oldest state changes into the newest
|
|
41
|
-
|
|
58
|
+
syncStates(oldState, state);
|
|
42
59
|
renderTagSupport(tagSupport, false);
|
|
43
|
-
if (
|
|
44
|
-
|
|
60
|
+
if (maybePromise instanceof Promise) {
|
|
61
|
+
maybePromise.finally(() => {
|
|
45
62
|
// send the oldest state changes into the newest
|
|
46
|
-
|
|
63
|
+
syncStates(oldState, state);
|
|
47
64
|
renderTagSupport(tagSupport, false);
|
|
48
65
|
});
|
|
49
66
|
}
|
|
67
|
+
// return undefined as T
|
|
68
|
+
return maybePromise;
|
|
50
69
|
}
|
|
51
70
|
//# sourceMappingURL=callbackMaker.function.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"callbackMaker.function.js","sourceRoot":"","sources":["../../ts/state/callbackMaker.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"callbackMaker.function.js","sourceRoot":"","sources":["../../ts/state/callbackMaker.function.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function children(): import("..").TagChildren;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { setUse } from "./setUse.function";
|
|
2
|
+
function setCurrentTagSupport(support) {
|
|
3
|
+
setUse.memory.childrenCurrentSupport = support;
|
|
4
|
+
}
|
|
5
|
+
export function children() {
|
|
6
|
+
const tagSupport = setUse.memory.childrenCurrentSupport;
|
|
7
|
+
const children = tagSupport.templater.children;
|
|
8
|
+
return children;
|
|
9
|
+
}
|
|
10
|
+
setUse({
|
|
11
|
+
beforeRender: tagSupport => setCurrentTagSupport(tagSupport),
|
|
12
|
+
beforeRedraw: tagSupport => setCurrentTagSupport(tagSupport),
|
|
13
|
+
});
|
|
14
|
+
//# sourceMappingURL=children.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"children.js","sourceRoot":"","sources":["../../ts/state/children.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,SAAS,oBAAoB,CAAC,OAAoC;IAChE,MAAM,CAAC,MAAM,CAAC,sBAAsB,GAAG,OAAqB,CAAA;AAC9D,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,sBAAoC,CAAA;IACrE,MAAM,QAAQ,GAAG,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAA;IAC9C,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,MAAM,CAAC;IACL,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC,oBAAoB,CAAC,UAAU,CAAC;IAC5D,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC,oBAAoB,CAAC,UAAU,CAAC;CAC7D,CAAC,CAAA"}
|
package/js/state/index.d.ts
CHANGED
|
@@ -2,9 +2,9 @@ export * from "./watch.function";
|
|
|
2
2
|
export { setUse } from "./setUse.function";
|
|
3
3
|
export { state } from "./state.function";
|
|
4
4
|
export { letState } from "./letState.function";
|
|
5
|
-
export {
|
|
6
|
-
export { StateConfigArray, State } from "./state.utils";
|
|
5
|
+
export { State } from "./state.utils";
|
|
7
6
|
export { providers } from "./providers";
|
|
8
7
|
export * from "./callbackMaker.function";
|
|
9
8
|
export * from "./onInit";
|
|
10
9
|
export * from "./onDestroy";
|
|
10
|
+
export * from "./children";
|
package/js/state/index.js
CHANGED
|
@@ -2,9 +2,9 @@ export * from "./watch.function";
|
|
|
2
2
|
export { setUse } from "./setUse.function";
|
|
3
3
|
export { state } from "./state.function";
|
|
4
4
|
export { letState } from "./letState.function";
|
|
5
|
-
export { setProp } from "./setProp.function";
|
|
6
5
|
export { providers } from "./providers";
|
|
7
6
|
export * from "./callbackMaker.function";
|
|
8
7
|
export * from "./onInit";
|
|
9
8
|
export * from "./onDestroy";
|
|
9
|
+
export * from "./children";
|
|
10
10
|
//# sourceMappingURL=index.js.map
|
package/js/state/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/state/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/state/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAE9C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,cAAc,0BAA0B,CAAA;AACxC,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"letState.function.js","sourceRoot":"","sources":["../../ts/state/letState.function.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"letState.function.js","sourceRoot":"","sources":["../../ts/state/letState.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuD,aAAa,EAAE,MAAM,eAAe,CAAA;AAClG,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,oFAAoF;AACpF,MAAM,UAAU,QAAQ,CACtB,YAA2B;IAE3B,MAAM,MAAM,GAAW,MAAM,CAAC,MAAM,CAAC,WAAW,CAAA;IAChD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAgB,CAAA;IACvC,IAAI,YAA4B,CAAA;IAEhC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAE5C,IAAG,OAAO,EAAE,CAAC;QACX,IAAI,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAM,CAAA;QAE1C,YAAY,GAAG,CAAC,CAAC,CAAI,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAA;QACnD,MAAM,IAAI,GAAuB;YAC/B,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAM;YACnC,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,QAAQ;YACnB,YAAY,EAAE,OAAO,CAAC,YAAY;SACnC,CAAA;QAED,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAEvB,OAAO,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IACxC,CAAC;IAED,uBAAuB;IACvB,MAAM,SAAS,GAAG,YAAY,YAAY,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,YAAY,CAAA;IACtF,IAAI,SAAS,GAAG,SAAS,EAAE,CAAA;IAE3B,YAAY,GAAG,CAAC,CAAC,CAAI,EAAE,EAAE,CAAC,CAAC,SAAS,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC,CAAA;IACrD,MAAM,IAAI,GAAuB;QAC/B,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAM;QACnC,QAAQ,EAAE,YAAY;QACtB,SAAS,EAAE,SAAS;QACpB,YAAY,EAAE,SAAS;KACxB,CAAA;IACD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEvB,OAAO,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;AACzC,CAAC;AAED,SAAS,eAAe,CACtB,SAAY,EACZ,IAAwB;IAExB,mBAAmB;IACnB,MAAM,MAAM,GAAI,CAAC,CAAM,EAAE,EAAE;QACzB,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC,CAAA;QAEtD,OAAO,SAAS,CAAA;IAClB,CAAC,CAAA;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
|
package/js/state/onDestroy.js
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import { setUse } from "./setUse.function";
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
function setCurrentTagSupport(support) {
|
|
3
|
+
setUse.memory.destroyCurrentSupport = support;
|
|
4
|
+
}
|
|
4
5
|
export function onDestroy(callback) {
|
|
5
|
-
|
|
6
|
+
const tagSupport = setUse.memory.destroyCurrentSupport;
|
|
7
|
+
tagSupport.global.destroyCallback = callback;
|
|
6
8
|
}
|
|
7
9
|
setUse({
|
|
8
|
-
beforeRender: tagSupport =>
|
|
9
|
-
beforeRedraw: tagSupport =>
|
|
10
|
-
beforeDestroy: (tagSupport
|
|
10
|
+
beforeRender: tagSupport => setCurrentTagSupport(tagSupport),
|
|
11
|
+
beforeRedraw: tagSupport => setCurrentTagSupport(tagSupport),
|
|
12
|
+
beforeDestroy: (tagSupport) => {
|
|
11
13
|
const callback = tagSupport.global.destroyCallback;
|
|
12
14
|
if (callback) {
|
|
13
15
|
callback();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onDestroy.js","sourceRoot":"","sources":["../../ts/state/onDestroy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAI1C,
|
|
1
|
+
{"version":3,"file":"onDestroy.js","sourceRoot":"","sources":["../../ts/state/onDestroy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAI1C,SAAS,oBAAoB,CAAC,OAAoC;IAChE,MAAM,CAAC,MAAM,CAAC,qBAAqB,GAAG,OAAqB,CAAA;AAC7D,CAAC;AAED,MAAM,UAAU,SAAS,CACvB,QAA2B;IAE3B,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAmC,CAAA;IACpE,UAAU,CAAC,MAAM,CAAC,eAAe,GAAG,QAAQ,CAAA;AAC9C,CAAC;AAED,MAAM,CAAC;IACL,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC,oBAAoB,CAAC,UAAU,CAAC;IAC5D,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC,oBAAoB,CAAC,UAAU,CAAC;IAC5D,aAAa,EAAE,CAAC,UAAU,EAAE,EAAE;QAC5B,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,eAAe,CAAA;QAElD,IAAG,QAAQ,EAAE,CAAC;YACZ,QAAQ,EAAE,CAAA;QACZ,CAAC;IACH,CAAC;CACF,CAAC,CAAA"}
|
package/js/state/onInit.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { setUse } from "./setUse.function";
|
|
2
2
|
function setCurrentTagSupport(support) {
|
|
3
|
-
setUse.memory.
|
|
3
|
+
setUse.memory.currentSupport = support;
|
|
4
4
|
}
|
|
5
5
|
export function onInit(callback) {
|
|
6
|
-
const tagSupport = setUse.memory.
|
|
6
|
+
const tagSupport = setUse.memory.currentSupport;
|
|
7
7
|
if (!tagSupport.global.init) {
|
|
8
8
|
tagSupport.global.init = callback;
|
|
9
9
|
callback(); // fire init
|
package/js/state/onInit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onInit.js","sourceRoot":"","sources":["../../ts/state/onInit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAI1C,SAAS,oBAAoB,CAAC,OAAoC;IAChE,MAAM,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"onInit.js","sourceRoot":"","sources":["../../ts/state/onInit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAI1C,SAAS,oBAAoB,CAAC,OAAoC;IAChE,MAAM,CAAC,MAAM,CAAC,cAAc,GAAG,OAAqB,CAAA;AACtD,CAAC;AAED,MAAM,UAAU,MAAM,CACpB,QAAwB;IAExB,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAA;IAC/C,IAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAC3B,UAAU,CAAC,MAAM,CAAC,IAAI,GAAG,QAAQ,CAAA;QACjC,QAAQ,EAAE,CAAA,CAAC,YAAY;IACzB,CAAC;AACH,CAAC;AAED,MAAM,CAAC;IACL,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC,oBAAoB,CAAC,UAAU,CAAC;IAC5D,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC,oBAAoB,CAAC,UAAU,CAAC;CAC7D,CAAC,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { TagSupport } from '../TagSupport.class';
|
|
1
|
+
import { TagSupport } from '../tag/TagSupport.class';
|
|
2
2
|
export declare function providersChangeCheck(tagSupport: TagSupport): void;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { deepClone, deepEqual } from '../deepFunctions';
|
|
2
|
-
import { renderTagSupport } from '../renderTagSupport.function';
|
|
2
|
+
import { renderTagSupport } from '../tag/render/renderTagSupport.function';
|
|
3
3
|
export function providersChangeCheck(tagSupport) {
|
|
4
4
|
const global = tagSupport.global;
|
|
5
5
|
const providersWithChanges = global.providers.filter(provider => !deepEqual(provider.instance, provider.clone));
|
|
6
6
|
// reset clones
|
|
7
7
|
providersWithChanges.forEach(provider => {
|
|
8
|
-
const
|
|
9
|
-
handleProviderChanges(
|
|
8
|
+
const appSupport = tagSupport.getAppTagSupport();
|
|
9
|
+
handleProviderChanges(appSupport, provider);
|
|
10
10
|
provider.clone = deepClone(provider.instance);
|
|
11
11
|
});
|
|
12
12
|
}
|
|
13
|
-
function handleProviderChanges(
|
|
14
|
-
const tagsWithProvider = getTagsWithProvider(
|
|
13
|
+
function handleProviderChanges(appSupport, provider) {
|
|
14
|
+
const tagsWithProvider = getTagsWithProvider(appSupport, provider);
|
|
15
15
|
tagsWithProvider.forEach(({ tagSupport, renderCount, provider }) => {
|
|
16
16
|
if (tagSupport.global.deleted) {
|
|
17
17
|
return; // i was deleted after another tag processed
|
|
@@ -19,14 +19,14 @@ function handleProviderChanges(appElement, provider) {
|
|
|
19
19
|
const notRendered = renderCount === tagSupport.global.renderCount;
|
|
20
20
|
if (notRendered) {
|
|
21
21
|
provider.clone = deepClone(provider.instance);
|
|
22
|
-
renderTagSupport(tagSupport, false);
|
|
22
|
+
return renderTagSupport(tagSupport, false);
|
|
23
23
|
}
|
|
24
24
|
});
|
|
25
25
|
}
|
|
26
26
|
function getTagsWithProvider(tagSupport, provider, memory = []) {
|
|
27
27
|
const global = tagSupport.global;
|
|
28
28
|
const compare = global.providers;
|
|
29
|
-
const hasProvider = compare.find(xProvider => xProvider.constructMethod === provider.constructMethod);
|
|
29
|
+
const hasProvider = compare.find(xProvider => xProvider.constructMethod.compareTo === provider.constructMethod.compareTo);
|
|
30
30
|
if (hasProvider) {
|
|
31
31
|
memory.push({
|
|
32
32
|
tagSupport,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.utils.js","sourceRoot":"","sources":["../../ts/state/provider.utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"provider.utils.js","sourceRoot":"","sources":["../../ts/state/provider.utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AAG1E,MAAM,UAAU,oBAAoB,CAClC,UAAsB;IAEtB,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAA;IAChC,MAAM,oBAAoB,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAC9D,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,CAC9C,CAAA;IAED,eAAe;IACf,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QACtC,MAAM,UAAU,GAAG,UAAU,CAAC,gBAAgB,EAAE,CAAA;QAEhD,qBAAqB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QAE3C,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,qBAAqB,CAC5B,UAAsB,EACtB,QAAkB;IAElB,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;IAElE,gBAAgB,CAAC,OAAO,CAAC,CAAC,EAAC,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAC,EAAE,EAAE;QAC/D,IAAG,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAM,CAAC,4CAA4C;QACrD,CAAC;QAED,MAAM,WAAW,GAAG,WAAW,KAAK,UAAU,CAAC,MAAM,CAAC,WAAW,CAAA;QACjE,IAAG,WAAW,EAAE,CAAC;YACf,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAC7C,OAAO,gBAAgB,CACrB,UAAU,EACV,KAAK,CACN,CAAA;QACH,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,UAAsB,EACtB,QAAkB,EAClB,SAA4B,EAAE;IAE9B,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAA;IAChC,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAA;IAChC,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAC9B,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,eAAe,CAAC,SAAS,KAAK,QAAQ,CAAC,eAAe,CAAC,SAAS,CACxF,CAAA;IAED,IAAG,WAAW,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC;YACV,UAAU;YACV,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,QAAQ,EAAE,WAAW;SACtB,CAAC,CAAA;IACJ,CAAC;IAED,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,mBAAmB,CACvD,KAAK,EACL,QAAQ,EACR,MAAM,CACP,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC"}
|
package/js/state/providers.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { TagSupport } from '../TagSupport.class';
|
|
1
|
+
import { TagSupport } from '../tag/TagSupport.class';
|
|
2
2
|
export type Provider = {
|
|
3
3
|
constructMethod: any;
|
|
4
4
|
instance: any;
|
|
5
5
|
clone: any;
|
|
6
|
+
stateDiff: number;
|
|
6
7
|
};
|
|
7
8
|
type ProviderConstructor<T> = (new (...args: any[]) => T) | (() => T);
|
|
8
9
|
export type ProviderConfig = {
|
|
@@ -11,8 +12,9 @@ export type ProviderConfig = {
|
|
|
11
12
|
};
|
|
12
13
|
type functionProvider<T> = () => T;
|
|
13
14
|
type classProvider<T> = new (...args: any[]) => T;
|
|
15
|
+
type Construct<T> = classProvider<T> | functionProvider<T>;
|
|
14
16
|
export declare const providers: {
|
|
15
|
-
create: <T>(constructMethod:
|
|
17
|
+
create: <T>(constructMethod: Construct<T>) => T;
|
|
16
18
|
/**
|
|
17
19
|
* @template T
|
|
18
20
|
* @param {(new (...args: any[]) => T) | () => T} constructor
|