taggedjs 2.5.8 → 2.5.11
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 +281 -238
- package/bundle.js.map +1 -1
- package/js/TemplaterResult.class.js.map +1 -1
- package/js/index.d.ts +1 -0
- package/js/interpolations/interpolateContentTemplates.d.ts +1 -1
- package/js/interpolations/interpolateContentTemplates.js +10 -12
- package/js/interpolations/interpolateContentTemplates.js.map +1 -1
- package/js/interpolations/interpolateElement.d.ts +1 -3
- package/js/interpolations/interpolateElement.js +5 -4
- package/js/interpolations/interpolateElement.js.map +1 -1
- package/js/interpolations/interpolateTemplate.d.ts +2 -5
- package/js/interpolations/interpolateTemplate.js +8 -12
- package/js/interpolations/interpolateTemplate.js.map +1 -1
- package/js/isInstance.d.ts +1 -1
- package/js/isInstance.js +4 -3
- package/js/isInstance.js.map +1 -1
- package/js/tag/Tag.class.d.ts +1 -2
- package/js/tag/Tag.class.js.map +1 -1
- package/js/tag/TagSupport.class.d.ts +0 -1
- package/js/tag/TagSupport.class.js +12 -17
- package/js/tag/TagSupport.class.js.map +1 -1
- package/js/tag/checkDestroyPrevious.function.d.ts +3 -2
- package/js/tag/checkDestroyPrevious.function.js +18 -8
- package/js/tag/checkDestroyPrevious.function.js.map +1 -1
- package/js/tag/tag.js.map +1 -1
- package/js/tag/tagElement.d.ts +7 -0
- package/js/tag/tagElement.js +8 -4
- package/js/tag/tagElement.js.map +1 -1
- package/js/tag/update/processFirstSubject.utils.d.ts +34 -0
- package/js/tag/update/processFirstSubject.utils.js +48 -0
- package/js/tag/update/processFirstSubject.utils.js.map +1 -0
- package/js/tag/update/processFirstSubjectValue.function.d.ts +7 -0
- package/js/tag/update/processFirstSubjectValue.function.js +31 -0
- package/js/tag/update/processFirstSubjectValue.function.js.map +1 -0
- package/js/tag/update/processNewValue.function.d.ts +2 -2
- package/js/tag/update/processNewValue.function.js +16 -24
- package/js/tag/update/processNewValue.function.js.map +1 -1
- package/js/tag/update/processRegularValue.function.d.ts +2 -0
- package/js/tag/update/processRegularValue.function.js +17 -2
- package/js/tag/update/processRegularValue.function.js.map +1 -1
- package/js/tag/update/processSubjectComponent.function.d.ts +0 -1
- package/js/tag/update/processSubjectComponent.function.js +1 -1
- package/js/tag/update/processSubjectComponent.function.js.map +1 -1
- package/js/tag/update/processSubjectValue.function.d.ts +3 -23
- package/js/tag/update/processSubjectValue.function.js +1 -25
- package/js/tag/update/processSubjectValue.function.js.map +1 -1
- package/js/tag/update/processTag.function.js +0 -1
- package/js/tag/update/processTag.function.js.map +1 -1
- package/js/tag/update/processTagArray.d.ts +0 -1
- package/js/tag/update/processTagArray.js +1 -2
- package/js/tag/update/processTagArray.js.map +1 -1
- package/js/tag/update/processTagResult.function.d.ts +1 -2
- package/js/tag/update/processTagResult.function.js +3 -4
- package/js/tag/update/processTagResult.function.js.map +1 -1
- package/js/tag/update/updateContextItem.function.d.ts +1 -1
- package/js/tag/update/updateExistingTagComponent.function.js +0 -2
- package/js/tag/update/updateExistingTagComponent.function.js.map +1 -1
- package/js/tag/update/updateExistingValue.function.d.ts +1 -1
- package/js/tag/update/updateExistingValue.function.js +36 -47
- package/js/tag/update/updateExistingValue.function.js.map +1 -1
- package/js/updateBeforeTemplate.function.d.ts +5 -1
- package/js/updateBeforeTemplate.function.js +10 -7
- package/js/updateBeforeTemplate.function.js.map +1 -1
- package/package.json +1 -1
- package/js/Clones.type.d.ts +0 -3
- package/js/Clones.type.js +0 -2
- package/js/Clones.type.js.map +0 -1
- package/js/ElementTargetEvent.interface.d.ts +0 -6
- package/js/ElementTargetEvent.interface.js +0 -2
- package/js/ElementTargetEvent.interface.js.map +0 -1
- package/js/Tag.class.d.ts +0 -37
- package/js/Tag.class.js +0 -21
- package/js/Tag.class.js.map +0 -1
- package/js/Tag.utils.d.ts +0 -17
- package/js/Tag.utils.js +0 -6
- package/js/Tag.utils.js.map +0 -1
- package/js/TagSupport.class.d.ts +0 -58
- package/js/TagSupport.class.js +0 -309
- package/js/TagSupport.class.js.map +0 -1
- package/js/afterInterpolateElement.function.d.ts +0 -4
- package/js/afterInterpolateElement.function.js +0 -14
- package/js/afterInterpolateElement.function.js.map +0 -1
- package/js/bindSubjectCallback.function.d.ts +0 -7
- package/js/bindSubjectCallback.function.js +0 -41
- package/js/bindSubjectCallback.function.js.map +0 -1
- package/js/checkDestroyPrevious.function.d.ts +0 -8
- package/js/checkDestroyPrevious.function.js +0 -83
- package/js/checkDestroyPrevious.function.js.map +0 -1
- package/js/cloneValueArray.function.d.ts +0 -2
- package/js/cloneValueArray.function.js +0 -19
- package/js/cloneValueArray.function.js.map +0 -1
- package/js/destroy.support.d.ts +0 -6
- package/js/destroy.support.js +0 -10
- package/js/destroy.support.js.map +0 -1
- package/js/destroyTag.function.d.ts +0 -4
- package/js/destroyTag.function.js +0 -12
- package/js/destroyTag.function.js.map +0 -1
- package/js/elementDestroyCheck.function.d.ts +0 -3
- package/js/elementDestroyCheck.function.js +0 -17
- package/js/elementDestroyCheck.function.js.map +0 -1
- package/js/elementInitCheck.d.ts +0 -2
- package/js/elementInitCheck.js +0 -18
- package/js/elementInitCheck.js.map +0 -1
- package/js/getCallback.d.ts +0 -3
- package/js/getCallback.js +0 -51
- package/js/getCallback.js.map +0 -1
- package/js/hasTagSupportChanged.function.d.ts +0 -7
- package/js/hasTagSupportChanged.function.js +0 -70
- package/js/hasTagSupportChanged.function.js.map +0 -1
- package/js/html.d.ts +0 -2
- package/js/html.js +0 -5
- package/js/html.js.map +0 -1
- package/js/inputAttribute.d.ts +0 -1
- package/js/inputAttribute.js +0 -19
- package/js/inputAttribute.js.map +0 -1
- package/js/interpolateAttributes.d.ts +0 -3
- package/js/interpolateAttributes.js +0 -20
- package/js/interpolateAttributes.js.map +0 -1
- package/js/interpolateContentTemplates.d.ts +0 -9
- package/js/interpolateContentTemplates.js +0 -42
- package/js/interpolateContentTemplates.js.map +0 -1
- package/js/interpolateElement.d.ts +0 -13
- package/js/interpolateElement.js +0 -36
- package/js/interpolateElement.js.map +0 -1
- package/js/interpolateTemplate.d.ts +0 -31
- package/js/interpolateTemplate.js +0 -89
- package/js/interpolateTemplate.js.map +0 -1
- package/js/interpolations.d.ts +0 -7
- package/js/interpolations.js +0 -18
- package/js/interpolations.js.map +0 -1
- package/js/isLikeTags.function.d.ts +0 -5
- package/js/isLikeTags.function.js +0 -42
- package/js/isLikeTags.function.js.map +0 -1
- package/js/onDestroy.d.ts +0 -2
- package/js/onDestroy.js +0 -17
- package/js/onDestroy.js.map +0 -1
- package/js/onInit.d.ts +0 -2
- package/js/onInit.js +0 -17
- package/js/onInit.js.map +0 -1
- package/js/processAttribute.function.d.ts +0 -4
- package/js/processAttribute.function.js +0 -122
- package/js/processAttribute.function.js.map +0 -1
- package/js/processNewValue.function.d.ts +0 -3
- package/js/processNewValue.function.js +0 -43
- package/js/processNewValue.function.js.map +0 -1
- package/js/processRegularValue.function.d.ts +0 -5
- package/js/processRegularValue.function.js +0 -15
- package/js/processRegularValue.function.js.map +0 -1
- package/js/processSubjectComponent.function.d.ts +0 -9
- package/js/processSubjectComponent.function.js +0 -35
- package/js/processSubjectComponent.function.js.map +0 -1
- package/js/processSubjectValue.function.d.ts +0 -25
- package/js/processSubjectValue.function.js +0 -55
- package/js/processSubjectValue.function.js.map +0 -1
- package/js/processTag.function.d.ts +0 -11
- package/js/processTag.function.js +0 -43
- package/js/processTag.function.js.map +0 -1
- package/js/processTagArray.d.ts +0 -23
- package/js/processTagArray.js +0 -120
- package/js/processTagArray.js.map +0 -1
- package/js/processTagResult.function.d.ts +0 -11
- package/js/processTagResult.function.js +0 -30
- package/js/processTagResult.function.js.map +0 -1
- package/js/propState.function.d.ts +0 -2
- package/js/propState.function.js +0 -3
- package/js/propState.function.js.map +0 -1
- package/js/provider.utils.d.ts +0 -2
- package/js/provider.utils.js +0 -45
- package/js/provider.utils.js.map +0 -1
- package/js/providers.d.ts +0 -18
- package/js/providers.js +0 -86
- package/js/providers.js.map +0 -1
- package/js/renderExistingTag.function.d.ts +0 -7
- package/js/renderExistingTag.function.js +0 -32
- package/js/renderExistingTag.function.js.map +0 -1
- package/js/renderSubjectComponent.function.d.ts +0 -3
- package/js/renderSubjectComponent.function.js +0 -14
- package/js/renderSubjectComponent.function.js.map +0 -1
- package/js/renderTagOnly.function.d.ts +0 -4
- package/js/renderTagOnly.function.js +0 -39
- package/js/renderTagOnly.function.js.map +0 -1
- package/js/renderTagSupport.function.d.ts +0 -4
- package/js/renderTagSupport.function.js +0 -37
- package/js/renderTagSupport.function.js.map +0 -1
- package/js/renderWithSupport.function.d.ts +0 -5
- package/js/renderWithSupport.function.js +0 -31
- package/js/renderWithSupport.function.js.map +0 -1
- package/js/scanTextAreaValue.function.d.ts +0 -2
- package/js/scanTextAreaValue.function.js +0 -16
- package/js/scanTextAreaValue.function.js.map +0 -1
- package/js/set.function.d.ts +0 -24
- package/js/set.function.js +0 -116
- package/js/set.function.js.map +0 -1
- package/js/setLet.function.d.ts +0 -3
- package/js/setLet.function.js +0 -42
- package/js/setLet.function.js.map +0 -1
- package/js/setProp.function.d.ts +0 -3
- package/js/setProp.function.js +0 -37
- package/js/setProp.function.js.map +0 -1
- package/js/setTagPlaceholder.function.d.ts +0 -2
- package/js/setTagPlaceholder.function.js +0 -8
- package/js/setTagPlaceholder.function.js.map +0 -1
- package/js/setUse.function.d.ts +0 -23
- package/js/setUse.function.js +0 -14
- package/js/setUse.function.js.map +0 -1
- package/js/state/getCallback.d.ts +0 -3
- package/js/state/getCallback.js +0 -51
- package/js/state/getCallback.js.map +0 -1
- package/js/state/setProp.function.d.ts +0 -3
- package/js/state/setProp.function.js +0 -37
- package/js/state/setProp.function.js.map +0 -1
- package/js/tag/updates/processNewValue.function.d.ts +0 -3
- package/js/tag/updates/processNewValue.function.js +0 -43
- package/js/tag/updates/processNewValue.function.js.map +0 -1
- package/js/tag.d.ts +0 -21
- package/js/tag.js +0 -121
- package/js/tag.js.map +0 -1
- package/js/tagElement.d.ts +0 -9
- package/js/tagElement.js +0 -55
- package/js/tagElement.js.map +0 -1
- package/js/tagRunner.d.ts +0 -6
- package/js/tagRunner.js +0 -30
- package/js/tagRunner.js.map +0 -1
- package/js/updateContextItem.function.d.ts +0 -3
- package/js/updateContextItem.function.js +0 -42
- package/js/updateContextItem.function.js.map +0 -1
- package/js/updateExistingTagComponent.function.d.ts +0 -5
- package/js/updateExistingTagComponent.function.js +0 -108
- package/js/updateExistingTagComponent.function.js.map +0 -1
- package/js/updateExistingValue.function.d.ts +0 -4
- package/js/updateExistingValue.function.js +0 -135
- package/js/updateExistingValue.function.js.map +0 -1
- package/js/watch.function.d.ts +0 -3
- package/js/watch.function.js +0 -20
- package/js/watch.function.js.map +0 -1
- /package/js/{Errors.d.ts → errors.d.ts} +0 -0
- /package/js/{Errors.js → errors.js} +0 -0
- /package/js/{Errors.js.map → errors.js.map} +0 -0
- /package/js/subject/{Subject.utils.d.ts → subject.utils.d.ts} +0 -0
- /package/js/subject/{Subject.utils.js → subject.utils.js} +0 -0
- /package/js/subject/{Subject.utils.js.map → subject.utils.js.map} +0 -0
package/js/setProp.function.js
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { getStateValue } from './set.function';
|
|
2
|
-
import { setUse } from './setUse.function';
|
|
3
|
-
/** Used for variables that need to remain the same variable during render passes */
|
|
4
|
-
export function setProp(getSet) {
|
|
5
|
-
const config = setUse.memory.stateConfig;
|
|
6
|
-
const rearray = config.rearray;
|
|
7
|
-
const [propValue] = getSet(undefined);
|
|
8
|
-
getSet(propValue); // restore original value instead of undefined
|
|
9
|
-
const restate = rearray[config.array.length];
|
|
10
|
-
if (restate) {
|
|
11
|
-
let watchValue = restate.watch;
|
|
12
|
-
let oldValue = getStateValue(restate);
|
|
13
|
-
const push = {
|
|
14
|
-
get: () => getStateValue(push),
|
|
15
|
-
callback: getSet,
|
|
16
|
-
lastValue: oldValue,
|
|
17
|
-
watch: restate.watch,
|
|
18
|
-
};
|
|
19
|
-
// has the prop value changed?
|
|
20
|
-
if (propValue != watchValue) {
|
|
21
|
-
push.watch = propValue;
|
|
22
|
-
oldValue = push.lastValue = propValue;
|
|
23
|
-
}
|
|
24
|
-
config.array.push(push);
|
|
25
|
-
getSet(oldValue);
|
|
26
|
-
return oldValue;
|
|
27
|
-
}
|
|
28
|
-
const push = {
|
|
29
|
-
get: () => getStateValue(push),
|
|
30
|
-
callback: getSet,
|
|
31
|
-
lastValue: propValue,
|
|
32
|
-
watch: propValue,
|
|
33
|
-
};
|
|
34
|
-
config.array.push(push);
|
|
35
|
-
return propValue;
|
|
36
|
-
}
|
|
37
|
-
//# sourceMappingURL=setProp.function.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setProp.function.js","sourceRoot":"","sources":["../ts/setProp.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqD,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACjG,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,oFAAoF;AACpF,MAAM,UAAU,OAAO,CACrB,MAAmB;IAEnB,MAAM,MAAM,GAAW,MAAM,CAAC,MAAM,CAAC,WAAW,CAAA;IAChD,MAAM,OAAO,GAAG,MAAM,CAAC,OAA2B,CAAA;IAElD,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,SAAc,CAAC,CAAA;IAC1C,MAAM,CAAC,SAAS,CAAC,CAAA,CAAC,8CAA8C;IAEhE,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC5C,IAAG,OAAO,EAAE,CAAC;QACX,IAAI,UAAU,GAAG,OAAO,CAAC,KAAU,CAAA;QACnC,IAAI,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAM,CAAA;QAE1C,MAAM,IAAI,GAAuB;YAC/B,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAM;YACnC,QAAQ,EAAE,MAAM;YAChB,SAAS,EAAE,QAAQ;YACnB,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAA;QAED,8BAA8B;QAC9B,IAAG,SAAS,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAA;YACtB,QAAQ,GAAG,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QACvC,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAEvB,MAAM,CAAC,QAAQ,CAAC,CAAA;QAEhB,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,MAAM,IAAI,GAAuB;QAC/B,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAM;QACnC,QAAQ,EAAE,MAAM;QAChB,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,SAAS;KACjB,CAAA;IACD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEvB,OAAO,SAAS,CAAA;AAClB,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export function setTagPlaceholder(global) {
|
|
2
|
-
const insertBefore = global.insertBefore;
|
|
3
|
-
const placeholder = global.placeholder = document.createTextNode('');
|
|
4
|
-
const parentNode = insertBefore.parentNode;
|
|
5
|
-
parentNode.insertBefore(placeholder, insertBefore);
|
|
6
|
-
parentNode.removeChild(insertBefore);
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=setTagPlaceholder.function.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setTagPlaceholder.function.js","sourceRoot":"","sources":["../ts/setTagPlaceholder.function.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,iBAAiB,CAC/B,MAAiB;IAEjB,MAAM,YAAY,GAAG,MAAM,CAAC,YAA4B,CAAA;IACxD,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAA;IACpE,MAAM,UAAU,GAAG,YAAY,CAAC,UAAwB,CAAA;IACxD,UAAU,CAAC,YAAY,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;IAClD,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAA;AACtC,CAAC"}
|
package/js/setUse.function.d.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { Tag } from './Tag.class';
|
|
2
|
-
import { BaseTagSupport } from './TagSupport.class';
|
|
3
|
-
import { Config } from './set.function';
|
|
4
|
-
interface TagUse {
|
|
5
|
-
beforeRender: (tagSupport: BaseTagSupport, ownerTag: Tag) => void;
|
|
6
|
-
beforeRedraw: (tagSupport: BaseTagSupport, tag: Tag) => void;
|
|
7
|
-
afterRender: (tagSupport: BaseTagSupport, tag: Tag) => void;
|
|
8
|
-
beforeDestroy: (tagSupport: BaseTagSupport, tag: Tag) => void;
|
|
9
|
-
}
|
|
10
|
-
export type UseOptions = {
|
|
11
|
-
beforeRender?: (tagSupport: BaseTagSupport, ownerTag: Tag) => void;
|
|
12
|
-
beforeRedraw?: (tagSupport: BaseTagSupport, tag: Tag) => void;
|
|
13
|
-
afterRender?: (tagSupport: BaseTagSupport, tag: Tag) => void;
|
|
14
|
-
beforeDestroy?: (tagSupport: BaseTagSupport, tag: Tag) => void;
|
|
15
|
-
};
|
|
16
|
-
export declare function setUse(use: UseOptions): void;
|
|
17
|
-
export declare namespace setUse {
|
|
18
|
-
var tagUse: TagUse[];
|
|
19
|
-
var memory: Record<string, any> & {
|
|
20
|
-
stateConfig: Config;
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
export {};
|
package/js/setUse.function.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
const tagUse = [];
|
|
2
|
-
export function setUse(use) {
|
|
3
|
-
// must provide defaults
|
|
4
|
-
const useMe = {
|
|
5
|
-
beforeRender: use.beforeRender || (() => undefined),
|
|
6
|
-
beforeRedraw: use.beforeRedraw || (() => undefined),
|
|
7
|
-
afterRender: use.afterRender || (() => undefined),
|
|
8
|
-
beforeDestroy: use.beforeDestroy || (() => undefined),
|
|
9
|
-
};
|
|
10
|
-
setUse.tagUse.push(useMe);
|
|
11
|
-
}
|
|
12
|
-
setUse.tagUse = tagUse;
|
|
13
|
-
setUse.memory = {};
|
|
14
|
-
//# sourceMappingURL=setUse.function.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setUse.function.js","sourceRoot":"","sources":["../ts/setUse.function.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,GAAa,EAAE,CAAA;AAsB3B,MAAM,UAAU,MAAM,CAAC,GAAe;IACpC,wBAAwB;IACxB,MAAM,KAAK,GAAW;QACpB,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;QACnD,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;QACnD,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;QACjD,aAAa,EAAE,GAAG,CAAC,aAAa,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;KACtD,CAAA;IAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC3B,CAAC;AAED,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA;AACtB,MAAM,CAAC,MAAM,GAAG,EAAkD,CAAA"}
|
package/js/state/getCallback.js
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { setUse } from "./setUse.function";
|
|
2
|
-
import { getStateValue } from "./state.utils";
|
|
3
|
-
import { renderTagSupport } from "../renderTagSupport.function";
|
|
4
|
-
let innerCallback = (callback) => () => {
|
|
5
|
-
throw new Error('Callback function was called immediately in sync and must instead be call async');
|
|
6
|
-
};
|
|
7
|
-
export const getCallback = () => innerCallback;
|
|
8
|
-
const originalGetter = innerCallback; // getCallback
|
|
9
|
-
setUse({
|
|
10
|
-
beforeRender: (tagSupport) => initMemory(tagSupport),
|
|
11
|
-
beforeRedraw: (tagSupport) => initMemory(tagSupport),
|
|
12
|
-
afterRender: (_tagSupport) => {
|
|
13
|
-
innerCallback = originalGetter; // prevent crossing callbacks with another tag
|
|
14
|
-
},
|
|
15
|
-
});
|
|
16
|
-
function updateState(stateFrom, stateTo) {
|
|
17
|
-
stateFrom.forEach((state, index) => {
|
|
18
|
-
const fromValue = getStateValue(state);
|
|
19
|
-
const callback = stateTo[index].callback;
|
|
20
|
-
if (callback) {
|
|
21
|
-
callback(fromValue); // set the value
|
|
22
|
-
}
|
|
23
|
-
stateTo[index].lastValue = fromValue; // record the value
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
function initMemory(tagSupport) {
|
|
27
|
-
const oldState = setUse.memory.stateConfig.array;
|
|
28
|
-
innerCallback = (callback) => {
|
|
29
|
-
const trigger = (...args) => triggerStateUpdate(tagSupport, callback, oldState, ...args);
|
|
30
|
-
return trigger;
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
function triggerStateUpdate(tagSupport, callback, oldState, ...args) {
|
|
34
|
-
const state = tagSupport.memory.state;
|
|
35
|
-
const newest = state.newest;
|
|
36
|
-
// ensure that the oldest has the latest values first
|
|
37
|
-
updateState(newest, oldState);
|
|
38
|
-
// run the callback
|
|
39
|
-
const promise = callback(...args);
|
|
40
|
-
// send the oldest state changes into the newest
|
|
41
|
-
updateState(oldState, newest);
|
|
42
|
-
renderTagSupport(tagSupport, false);
|
|
43
|
-
if (promise instanceof Promise) {
|
|
44
|
-
promise.finally(() => {
|
|
45
|
-
// send the oldest state changes into the newest
|
|
46
|
-
updateState(oldState, newest);
|
|
47
|
-
renderTagSupport(tagSupport, false);
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
//# sourceMappingURL=getCallback.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getCallback.js","sourceRoot":"","sources":["../../ts/state/getCallback.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAA2B,aAAa,EAAE,MAAM,eAAe,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAI/D,IAAI,aAAa,GAAG,CAAC,QAAkB,EAAE,EAAE,CAAC,GAAS,EAAE;IACrD,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAA;AACpG,CAAC,CAAA;AACD,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,aAAa,CAAA;AAE9C,MAAM,cAAc,GAAG,aAAa,CAAA,CAAC,cAAc;AAEnD,MAAM,CAAC;IACL,YAAY,EAAE,CAAC,UAA0B,EAAE,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;IACpE,YAAY,EAAE,CAAC,UAA0B,EAAE,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;IACpE,WAAW,EAAE,CAAC,WAA2B,EAAE,EAAE;QAC3C,aAAa,GAAG,cAAc,CAAA,CAAC,8CAA8C;IAC/E,CAAC;CACF,CAAC,CAAA;AAEF,SAAS,WAAW,CAClB,SAA2B,EAC3B,OAAyB;IAEzB,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACjC,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;QACtC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAA;QAExC,IAAG,QAAQ,EAAE,CAAC;YACZ,QAAQ,CAAE,SAAS,CAAE,CAAA,CAAC,gBAAgB;QACxC,CAAC;QAED,OAAO,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,SAAS,CAAA,CAAC,mBAAmB;IAC1D,CAAC,CAAC,CAAA;AACJ,CAAC;AAKD,SAAS,UAAU,CAAE,UAA0B;IAC7C,MAAM,QAAQ,GAAqB,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAA;IAClE,aAAa,GAAG,CACd,QAAkB,EAClB,EAAE;QACF,MAAM,OAAO,GAAG,CAAC,GAAG,IAAW,EAAE,EAAE,CAAC,kBAAkB,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAA;QAC/F,OAAO,OAAO,CAAA;IAChB,CAAC,CAAA;AACH,CAAC;AAED,SAAS,kBAAkB,CACzB,UAA0B,EAC1B,QAAkB,EAClB,QAA0B,EAC1B,GAAG,IAAW;IAEd,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,KAAc,CAAA;IAC9C,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;IAE3B,qDAAqD;IACrD,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAE7B,mBAAmB;IACnB,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAA;IAEjC,gDAAgD;IAChD,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IAE7B,gBAAgB,CACd,UAAU,EACV,KAAK,CACN,CAAA;IAED,IAAG,OAAO,YAAY,OAAO,EAAE,CAAC;QAC9B,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE;YACnB,gDAAgD;YAChD,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YAE7B,gBAAgB,CACd,UAAU,EACV,KAAK,CACN,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { getStateValue } from './state.utils';
|
|
2
|
-
import { setUse } from './setUse.function';
|
|
3
|
-
/** Used for variables that need to remain the same variable during render passes */
|
|
4
|
-
export function setProp(getSet) {
|
|
5
|
-
const config = setUse.memory.stateConfig;
|
|
6
|
-
const rearray = config.rearray;
|
|
7
|
-
const [propValue] = getSet(undefined);
|
|
8
|
-
getSet(propValue); // restore original value instead of undefined
|
|
9
|
-
const restate = rearray[config.array.length];
|
|
10
|
-
if (restate) {
|
|
11
|
-
let watchValue = restate.watch;
|
|
12
|
-
let oldValue = getStateValue(restate);
|
|
13
|
-
const push = {
|
|
14
|
-
get: () => getStateValue(push),
|
|
15
|
-
callback: getSet,
|
|
16
|
-
lastValue: oldValue,
|
|
17
|
-
watch: restate.watch,
|
|
18
|
-
};
|
|
19
|
-
// has the prop value changed?
|
|
20
|
-
if (propValue != watchValue) {
|
|
21
|
-
push.watch = propValue;
|
|
22
|
-
oldValue = push.lastValue = propValue;
|
|
23
|
-
}
|
|
24
|
-
config.array.push(push);
|
|
25
|
-
getSet(oldValue);
|
|
26
|
-
return oldValue;
|
|
27
|
-
}
|
|
28
|
-
const push = {
|
|
29
|
-
get: () => getStateValue(push),
|
|
30
|
-
callback: getSet,
|
|
31
|
-
lastValue: propValue,
|
|
32
|
-
watch: propValue,
|
|
33
|
-
};
|
|
34
|
-
config.array.push(push);
|
|
35
|
-
return propValue;
|
|
36
|
-
}
|
|
37
|
-
//# sourceMappingURL=setProp.function.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setProp.function.js","sourceRoot":"","sources":["../../ts/state/setProp.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0C,aAAa,EAAE,MAAM,eAAe,CAAA;AACrF,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,oFAAoF;AACpF,MAAM,UAAU,OAAO,CACrB,MAAmB;IAEnB,MAAM,MAAM,GAAW,MAAM,CAAC,MAAM,CAAC,WAAW,CAAA;IAChD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAgB,CAAA;IAEvC,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,SAAc,CAAC,CAAA;IAC1C,MAAM,CAAC,SAAS,CAAC,CAAA,CAAC,8CAA8C;IAEhE,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC5C,IAAG,OAAO,EAAE,CAAC;QACX,IAAI,UAAU,GAAG,OAAO,CAAC,KAAU,CAAA;QACnC,IAAI,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAM,CAAA;QAE1C,MAAM,IAAI,GAAuB;YAC/B,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAM;YACnC,QAAQ,EAAE,MAAM;YAChB,SAAS,EAAE,QAAQ;YACnB,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAA;QAED,8BAA8B;QAC9B,IAAG,SAAS,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAA;YACtB,QAAQ,GAAG,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QACvC,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAEvB,MAAM,CAAC,QAAQ,CAAC,CAAA;QAEhB,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,MAAM,IAAI,GAAuB;QAC/B,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAM;QACnC,QAAQ,EAAE,MAAM;QAChB,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,SAAS;KACjB,CAAA;IACD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEvB,OAAO,SAAS,CAAA;AAClB,CAAC"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { ValueSubject } from '../../subject/ValueSubject';
|
|
2
|
-
import { isSubjectInstance, isTagClass, isTagComponent, isTagTemplater } from '../../isInstance';
|
|
3
|
-
import { TemplaterResult } from '../../TemplaterResult.class';
|
|
4
|
-
import { TagSupport } from '../TagSupport.class';
|
|
5
|
-
export function processNewValue(hasValue, value, ownerSupport) {
|
|
6
|
-
if (isTagComponent(value)) {
|
|
7
|
-
const tagSubject = new ValueSubject(value);
|
|
8
|
-
return tagSubject;
|
|
9
|
-
}
|
|
10
|
-
if (value instanceof Function) {
|
|
11
|
-
return new ValueSubject(value);
|
|
12
|
-
}
|
|
13
|
-
if (!hasValue) {
|
|
14
|
-
return new ValueSubject(undefined);
|
|
15
|
-
}
|
|
16
|
-
if (isTagTemplater(value)) {
|
|
17
|
-
const templater = value;
|
|
18
|
-
const tag = templater.tag;
|
|
19
|
-
return processNewTag(tag, ownerSupport);
|
|
20
|
-
}
|
|
21
|
-
if (isTagClass(value)) {
|
|
22
|
-
return processNewTag(value, ownerSupport);
|
|
23
|
-
}
|
|
24
|
-
// is already a value subject?
|
|
25
|
-
if (isSubjectInstance(value)) {
|
|
26
|
-
return value;
|
|
27
|
-
}
|
|
28
|
-
return new ValueSubject(value);
|
|
29
|
-
}
|
|
30
|
-
function processNewTag(value, ownerSupport) {
|
|
31
|
-
const tag = value;
|
|
32
|
-
let templater = tag.templater;
|
|
33
|
-
if (!templater) {
|
|
34
|
-
const children = new ValueSubject([]);
|
|
35
|
-
templater = new TemplaterResult(undefined, children);
|
|
36
|
-
templater.tag = tag;
|
|
37
|
-
tag.templater = templater;
|
|
38
|
-
}
|
|
39
|
-
const subject = new ValueSubject(templater);
|
|
40
|
-
const tagSupport = subject.tagSupport = new TagSupport(templater, ownerSupport, subject);
|
|
41
|
-
return subject;
|
|
42
|
-
}
|
|
43
|
-
//# sourceMappingURL=processNewValue.function.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"processNewValue.function.js","sourceRoot":"","sources":["../../../ts/tag/updates/processNewValue.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAChG,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAIhD,MAAM,UAAU,eAAe,CAC7B,QAAiB,EACjB,KAAoB,EACpB,YAAwB;IAExB,IAAG,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,UAAU,GAAG,IAAI,YAAY,CAAC,KAAK,CAAe,CAAA;QACxD,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,IAAG,KAAK,YAAY,QAAQ,EAAE,CAAC;QAC7B,OAAO,IAAI,YAAY,CAAW,KAAK,CAAC,CAAA;IAC1C,CAAC;IAED,IAAG,CAAC,QAAQ,EAAE,CAAC;QACb,OAAO,IAAI,YAAY,CAAY,SAAS,CAAC,CAAA;IAC/C,CAAC;IAED,IAAG,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,KAAwB,CAAA;QAC1C,MAAM,GAAG,GAAG,SAAS,CAAC,GAAU,CAAA;QAChC,OAAO,aAAa,CAAC,GAAG,EAAE,YAAY,CAAC,CAAA;IACzC,CAAC;IAED,IAAG,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,aAAa,CAAC,KAAY,EAAE,YAAY,CAAC,CAAA;IAClD,CAAC;IAED,8BAA8B;IAC9B,IAAG,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,KAA0B,CAAA;IACnC,CAAC;IAED,OAAO,IAAI,YAAY,CAAC,KAAK,CAA8B,CAAA;AAC7D,CAAC;AAED,SAAS,aAAa,CACpB,KAAU,EACV,YAAwB;IAExB,MAAM,GAAG,GAAG,KAAY,CAAA;IAExB,IAAI,SAAS,GAAG,GAAG,CAAC,SAAS,CAAA;IAC7B,IAAG,CAAC,SAAS,EAAE,CAAC;QACd,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,EAAW,CAAC,CAAA;QAC9C,SAAS,GAAG,IAAI,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QACpD,SAAS,CAAC,GAAG,GAAG,GAAG,CAAA;QACnB,GAAG,CAAC,SAAS,GAAG,SAAS,CAAA;IAC3B,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,SAAS,CAAe,CAAA;IAEzD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,UAAU,CACpD,SAAS,EACT,YAAY,EACZ,OAAO,CACR,CAAA;IAED,OAAO,OAAO,CAAA;AAChB,CAAC"}
|
package/js/tag.d.ts
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { Tag } from './Tag.class';
|
|
2
|
-
import { TemplaterResult } from './TemplaterResult.class';
|
|
3
|
-
import { ValueSubject } from './subject/ValueSubject';
|
|
4
|
-
export type TagChildren = ValueSubject<Tag[]> & {
|
|
5
|
-
lastArray?: Tag[];
|
|
6
|
-
};
|
|
7
|
-
export type TagChildrenInput = Tag[] | Tag | TagChildren;
|
|
8
|
-
export type TagComponentArg<T extends any[]> = ((...args: T) => Tag) & {
|
|
9
|
-
lastResult?: TagWrapper<T>;
|
|
10
|
-
};
|
|
11
|
-
type FirstArgOptional<T extends any[]> = T['length'] extends 0 ? true : false;
|
|
12
|
-
export type TagComponentBase<T extends any[]> = (arg: FirstArgOptional<T> extends true ? (T[0] | void) : T[0], children?: TagChildrenInput) => Tag;
|
|
13
|
-
export declare const tags: TagComponentBase<any>[];
|
|
14
|
-
export type TagComponent = TagComponentBase<[any?, TagChildren?]> | TagComponentBase<[]>;
|
|
15
|
-
type TagWrapper<T> = ((props?: T | Tag | Tag[], children?: TagChildrenInput) => TemplaterResult) & {
|
|
16
|
-
original: (...args: any[]) => any;
|
|
17
|
-
isTag: boolean;
|
|
18
|
-
};
|
|
19
|
-
/** Wraps a tag component in a state manager and always push children to last argument as an array */
|
|
20
|
-
export declare function tag<T extends any[]>(tagComponent: TagComponentArg<T>): TagComponentBase<T>;
|
|
21
|
-
export {};
|
package/js/tag.js
DELETED
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
import { isSubjectInstance, isTagArray, isTagClass, isTagTemplater } from './isInstance';
|
|
2
|
-
import { setUse } from './state';
|
|
3
|
-
import { TemplaterResult } from './TemplaterResult.class';
|
|
4
|
-
import { runTagCallback } from './interpolations/bindSubjectCallback.function';
|
|
5
|
-
import { deepClone } from './deepFunctions';
|
|
6
|
-
import { TagSupport } from './tag/TagSupport.class';
|
|
7
|
-
import { alterProps } from './alterProps.function';
|
|
8
|
-
import { ValueSubject } from './subject/ValueSubject';
|
|
9
|
-
export const tags = [];
|
|
10
|
-
let tagCount = 0;
|
|
11
|
-
/** Wraps a tag component in a state manager and always push children to last argument as an array */
|
|
12
|
-
// export function tag<T>(a: T): T;
|
|
13
|
-
export function tag(tagComponent) {
|
|
14
|
-
/** function developer triggers */
|
|
15
|
-
const result = (function tagWrapper(props, children) {
|
|
16
|
-
// is the props argument actually children?
|
|
17
|
-
const isPropTag = isTagClass(props) || isTagTemplater(props) || isTagArray(props);
|
|
18
|
-
if (isPropTag) {
|
|
19
|
-
children = props;
|
|
20
|
-
props = undefined;
|
|
21
|
-
}
|
|
22
|
-
const { childSubject, madeSubject } = kidsToTagArraySubject(children);
|
|
23
|
-
childSubject.isChildSubject = true;
|
|
24
|
-
const templater = new TemplaterResult(props, childSubject);
|
|
25
|
-
// attach memory back to original function that contains developer display logic
|
|
26
|
-
const innerTagWrap = getTagWrap(templater, madeSubject);
|
|
27
|
-
innerTagWrap.original = tagComponent.lastResult?.original || tagComponent;
|
|
28
|
-
templater.tagged = true;
|
|
29
|
-
templater.wrapper = innerTagWrap;
|
|
30
|
-
return templater;
|
|
31
|
-
}); // we override the function provided and pretend original is what's returned
|
|
32
|
-
updateResult(result, tagComponent);
|
|
33
|
-
// group tags together and have hmr pickup
|
|
34
|
-
updateComponent(tagComponent);
|
|
35
|
-
tags.push(tagComponent);
|
|
36
|
-
// fake the return as being (props?, children?) => TemplaterResult
|
|
37
|
-
return result;
|
|
38
|
-
}
|
|
39
|
-
function kidsToTagArraySubject(children) {
|
|
40
|
-
if (isSubjectInstance(children)) {
|
|
41
|
-
return { childSubject: children, madeSubject: false };
|
|
42
|
-
}
|
|
43
|
-
const kidArray = children;
|
|
44
|
-
if (isTagArray(kidArray)) {
|
|
45
|
-
return { childSubject: new ValueSubject(children), madeSubject: true };
|
|
46
|
-
}
|
|
47
|
-
const kid = children;
|
|
48
|
-
if (kid) {
|
|
49
|
-
kid.memory.arrayValue = 0;
|
|
50
|
-
return { childSubject: new ValueSubject([kid]), madeSubject: true };
|
|
51
|
-
}
|
|
52
|
-
return {
|
|
53
|
-
childSubject: new ValueSubject([]),
|
|
54
|
-
madeSubject: true
|
|
55
|
-
};
|
|
56
|
-
}
|
|
57
|
-
function updateResult(result, tagComponent) {
|
|
58
|
-
result.isTag = true;
|
|
59
|
-
result.original = tagComponent;
|
|
60
|
-
}
|
|
61
|
-
function updateComponent(tagComponent) {
|
|
62
|
-
tagComponent.tags = tags;
|
|
63
|
-
tagComponent.setUse = setUse;
|
|
64
|
-
tagComponent.tagIndex = tagCount++; // needed for things like HMR
|
|
65
|
-
tagComponent.lastResult = tagComponent;
|
|
66
|
-
}
|
|
67
|
-
/** creates/returns a function that when called then calls the original component function
|
|
68
|
-
* Gets used as templater.wrapper()
|
|
69
|
-
*/
|
|
70
|
-
function getTagWrap(templater, madeSubject) {
|
|
71
|
-
// this function gets called by taggedjs
|
|
72
|
-
const innerTagWrap = function (oldTagSetup, subject) {
|
|
73
|
-
const global = oldTagSetup.global;
|
|
74
|
-
++global.renderCount;
|
|
75
|
-
const childSubject = templater.children;
|
|
76
|
-
const lastArray = global.oldest?.templater.children.lastArray;
|
|
77
|
-
if (lastArray) {
|
|
78
|
-
childSubject.lastArray = lastArray;
|
|
79
|
-
}
|
|
80
|
-
const originalFunction = innerTagWrap.original;
|
|
81
|
-
let props = templater.props;
|
|
82
|
-
let castedProps = alterProps(props, oldTagSetup.ownerTagSupport);
|
|
83
|
-
const clonedProps = deepClone(props); // castedProps
|
|
84
|
-
// CALL ORIGINAL COMPONENT FUNCTION
|
|
85
|
-
const tag = originalFunction(castedProps, childSubject);
|
|
86
|
-
tag.templater = templater;
|
|
87
|
-
templater.tag = tag;
|
|
88
|
-
const tagSupport = new TagSupport(templater, oldTagSetup.ownerTagSupport, subject, global.renderCount);
|
|
89
|
-
tagSupport.global = global;
|
|
90
|
-
tagSupport.propsConfig = {
|
|
91
|
-
latest: props,
|
|
92
|
-
latestCloned: clonedProps,
|
|
93
|
-
lastClonedKidValues: tagSupport.propsConfig.lastClonedKidValues,
|
|
94
|
-
};
|
|
95
|
-
tagSupport.memory = oldTagSetup.memory; // state handover
|
|
96
|
-
if (madeSubject) {
|
|
97
|
-
childSubject.value.forEach(kid => {
|
|
98
|
-
kid.values.forEach((value, index) => {
|
|
99
|
-
if (!(value instanceof Function)) {
|
|
100
|
-
return;
|
|
101
|
-
}
|
|
102
|
-
const valuesValue = kid.values[index];
|
|
103
|
-
if (valuesValue.isChildOverride) {
|
|
104
|
-
return; // already overwritten
|
|
105
|
-
}
|
|
106
|
-
// all functions need to report to me
|
|
107
|
-
kid.values[index] = function (...args) {
|
|
108
|
-
const ownerSupport = tagSupport.ownerTagSupport;
|
|
109
|
-
runTagCallback(value, // callback
|
|
110
|
-
ownerSupport, this, // bindTo
|
|
111
|
-
args);
|
|
112
|
-
};
|
|
113
|
-
valuesValue.isChildOverride = true;
|
|
114
|
-
});
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
return tagSupport;
|
|
118
|
-
};
|
|
119
|
-
return innerTagWrap;
|
|
120
|
-
}
|
|
121
|
-
//# sourceMappingURL=tag.js.map
|
package/js/tag.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tag.js","sourceRoot":"","sources":["../ts/tag.ts"],"names":[],"mappings":"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"}
|
package/js/tagElement.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { TagSupport } from './tag/TagSupport.class';
|
|
2
|
-
import { TemplaterResult } from './TemplaterResult.class';
|
|
3
|
-
import { TagComponent } from './tag';
|
|
4
|
-
export declare function tagElement(app: TagComponent, // (...args: unknown[]) => TemplaterResult,
|
|
5
|
-
element: HTMLElement | Element, props?: unknown): {
|
|
6
|
-
tagSupport: TagSupport;
|
|
7
|
-
tags: TagComponent[];
|
|
8
|
-
};
|
|
9
|
-
export declare function runWrapper(templater: TemplaterResult): TagSupport;
|
package/js/tagElement.js
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { BaseTagSupport } from './tag/TagSupport.class';
|
|
2
|
-
import { runAfterRender, runBeforeRender } from './tagRunner';
|
|
3
|
-
import { ValueSubject } from './subject/ValueSubject';
|
|
4
|
-
const appElements = [];
|
|
5
|
-
export function tagElement(app, // (...args: unknown[]) => TemplaterResult,
|
|
6
|
-
element, props) {
|
|
7
|
-
const appElmIndex = appElements.findIndex(appElm => appElm.element === element);
|
|
8
|
-
if (appElmIndex >= 0) {
|
|
9
|
-
appElements[appElmIndex].tagSupport.destroy();
|
|
10
|
-
appElements.splice(appElmIndex, 1);
|
|
11
|
-
// an element already had an app on it
|
|
12
|
-
console.warn('Found and destroyed app element already rendered to element', { element });
|
|
13
|
-
}
|
|
14
|
-
// Create the app which returns [props, runOneTimeFunction]
|
|
15
|
-
const wrapper = app(props);
|
|
16
|
-
// have a function setup and call the tagWrapper with (props, {update, async, on})
|
|
17
|
-
const tagSupport = runWrapper(wrapper);
|
|
18
|
-
// TODO: is the below needed?
|
|
19
|
-
tagSupport.appElement = element;
|
|
20
|
-
tagSupport.isApp = true;
|
|
21
|
-
tagSupport.global.isApp = true;
|
|
22
|
-
const templateElm = document.createElement('template');
|
|
23
|
-
templateElm.setAttribute('id', 'app-tag-' + appElements.length);
|
|
24
|
-
templateElm.setAttribute('app-tag-detail', appElements.length.toString());
|
|
25
|
-
element.appendChild(templateElm);
|
|
26
|
-
element.destroy = async () => {
|
|
27
|
-
await tagSupport.destroy();
|
|
28
|
-
const insertBefore = tagSupport.global.insertBefore;
|
|
29
|
-
const parentNode = insertBefore.parentNode;
|
|
30
|
-
parentNode.removeChild(insertBefore);
|
|
31
|
-
};
|
|
32
|
-
tagSupport.buildBeforeElement(templateElm);
|
|
33
|
-
tagSupport.global.oldest = tagSupport;
|
|
34
|
-
tagSupport.global.newest = tagSupport;
|
|
35
|
-
element.setUse = app.original.setUse;
|
|
36
|
-
appElements.push({ element, tagSupport });
|
|
37
|
-
return {
|
|
38
|
-
tagSupport,
|
|
39
|
-
tags: app.original.tags,
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
export function runWrapper(templater) {
|
|
43
|
-
let newSupport = {};
|
|
44
|
-
const subject = new ValueSubject(newSupport);
|
|
45
|
-
newSupport = new BaseTagSupport(templater, subject);
|
|
46
|
-
subject.set(templater);
|
|
47
|
-
subject.tagSupport = newSupport;
|
|
48
|
-
runBeforeRender(newSupport, undefined);
|
|
49
|
-
// Call the apps function for our tag templater
|
|
50
|
-
const wrapper = templater.wrapper;
|
|
51
|
-
const tagSupport = wrapper(newSupport, subject);
|
|
52
|
-
runAfterRender(newSupport, tagSupport);
|
|
53
|
-
return tagSupport;
|
|
54
|
-
}
|
|
55
|
-
//# sourceMappingURL=tagElement.js.map
|
package/js/tagElement.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tagElement.js","sourceRoot":"","sources":["../ts/tagElement.ts"],"names":[],"mappings":"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"}
|
package/js/tagRunner.d.ts
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { BaseTagSupport, TagSupport } from './tag/TagSupport.class';
|
|
2
|
-
export declare function isInCycle(): BaseTagSupport | undefined;
|
|
3
|
-
export declare function runBeforeRender(tagSupport: BaseTagSupport, ownerSupport?: TagSupport): void;
|
|
4
|
-
export declare function runAfterRender(tagSupport: BaseTagSupport, ownerTagSupport: TagSupport): void;
|
|
5
|
-
export declare function runBeforeRedraw(tagSupport: BaseTagSupport, ownerTagSupport: TagSupport): void;
|
|
6
|
-
export declare function runBeforeDestroy(tagSupport: BaseTagSupport, ownerTagSupport: TagSupport): void;
|
package/js/tagRunner.js
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
// TODO: This should be more like `new TaggedJs().use({})`
|
|
2
|
-
import { setUse } from './state';
|
|
3
|
-
import { Subject } from './subject';
|
|
4
|
-
// Emits event at the end of a tag being rendered. Use tagClosed$.toPromise() to render a tag after a current tag is done rendering
|
|
5
|
-
setUse.memory.tagClosed$ = new Subject(undefined, subscription => {
|
|
6
|
-
if (!isInCycle()) {
|
|
7
|
-
subscription.next(); // we are not currently processing so process now
|
|
8
|
-
}
|
|
9
|
-
});
|
|
10
|
-
export function isInCycle() {
|
|
11
|
-
return setUse.memory.stateConfig.tagSupport;
|
|
12
|
-
}
|
|
13
|
-
// Life cycle 1
|
|
14
|
-
export function runBeforeRender(tagSupport, ownerSupport) {
|
|
15
|
-
setUse.tagUse.forEach(tagUse => tagUse.beforeRender(tagSupport, ownerSupport));
|
|
16
|
-
}
|
|
17
|
-
// Life cycle 2
|
|
18
|
-
export function runAfterRender(tagSupport, ownerTagSupport) {
|
|
19
|
-
setUse.tagUse.forEach(tagUse => tagUse.afterRender(tagSupport, ownerTagSupport));
|
|
20
|
-
setUse.memory.tagClosed$.next(ownerTagSupport);
|
|
21
|
-
}
|
|
22
|
-
// Life cycle 3
|
|
23
|
-
export function runBeforeRedraw(tagSupport, ownerTagSupport) {
|
|
24
|
-
setUse.tagUse.forEach(tagUse => tagUse.beforeRedraw(tagSupport, ownerTagSupport));
|
|
25
|
-
}
|
|
26
|
-
// Life cycle 4 - end of life
|
|
27
|
-
export function runBeforeDestroy(tagSupport, ownerTagSupport) {
|
|
28
|
-
setUse.tagUse.forEach(tagUse => tagUse.beforeDestroy(tagSupport, ownerTagSupport));
|
|
29
|
-
}
|
|
30
|
-
//# sourceMappingURL=tagRunner.js.map
|
package/js/tagRunner.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tagRunner.js","sourceRoot":"","sources":["../ts/tagRunner.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAG1D,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,mIAAmI;AACnI,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,OAAO,CAAa,SAAS,EAAE,YAAY,CAAC,EAAE;IAC3E,IAAI,CAAC,SAAS,EAAE,EAAG,CAAC;QAClB,YAAY,CAAC,IAAI,EAAE,CAAA,CAAC,iDAAiD;IACvE,CAAC;AACH,CAAC,CAAC,CAAA;AAEF,MAAM,UAAU,SAAS;IACvB,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAA;AAC7C,CAAC;AAED,eAAe;AACf,MAAM,UAAU,eAAe,CAC7B,UAA0B,EAC1B,YAAyB;IAEzB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAA;AAChF,CAAC;AAED,eAAe;AACf,MAAM,UAAU,cAAc,CAC5B,UAA0B,EAC1B,eAA2B;IAE3B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,CAAA;IAChF,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;AAChD,CAAC;AAED,eAAe;AACf,MAAM,UAAU,eAAe,CAC7B,UAA0B,EAC1B,eAA2B;IAE3B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,CAAA;AACnF,CAAC;AAED,6BAA6B;AAC7B,MAAM,UAAU,gBAAgB,CAC9B,UAA0B,EAC1B,eAA2B;IAE3B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,CAAA;AACpF,CAAC"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { isSubjectInstance, isTagComponent } from './isInstance';
|
|
2
|
-
import { TagSupport } from './tag/TagSupport.class';
|
|
3
|
-
export function updateContextItem(context, variableName, value) {
|
|
4
|
-
const subject = context[variableName];
|
|
5
|
-
const tagSubject = subject;
|
|
6
|
-
const tagSupport = tagSubject.tagSupport;
|
|
7
|
-
if (tagSupport) {
|
|
8
|
-
if (value) {
|
|
9
|
-
if (isTagComponent(value)) {
|
|
10
|
-
const templater = value;
|
|
11
|
-
let newSupport = new TagSupport(templater, tagSupport.ownerTagSupport, subject);
|
|
12
|
-
if (isTagComponent(tagSupport)) {
|
|
13
|
-
shareTemplaterGlobal(tagSupport, newSupport);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
if (isSubjectInstance(value)) {
|
|
19
|
-
return; // emits on its own
|
|
20
|
-
}
|
|
21
|
-
// listeners will evaluate updated values to possibly update display(s)
|
|
22
|
-
subject.set(value);
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
function shareTemplaterGlobal(oldTagSupport, tagSupport) {
|
|
26
|
-
const oldTemp = oldTagSupport.templater;
|
|
27
|
-
const oldWrap = oldTemp.wrapper; // tag versus component
|
|
28
|
-
const oldValueFn = oldWrap.original;
|
|
29
|
-
const templater = tagSupport.templater;
|
|
30
|
-
const newWrapper = templater.wrapper;
|
|
31
|
-
const newValueFn = newWrapper?.original;
|
|
32
|
-
const fnMatched = oldValueFn === newValueFn;
|
|
33
|
-
if (fnMatched) {
|
|
34
|
-
tagSupport.global = oldTagSupport.global;
|
|
35
|
-
const newest = oldTagSupport.global.newest;
|
|
36
|
-
if (newest) {
|
|
37
|
-
const prevState = newest.memory.state;
|
|
38
|
-
tagSupport.memory.state = [...prevState];
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=updateContextItem.function.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"updateContextItem.function.js","sourceRoot":"","sources":["../ts/updateContextItem.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAIhE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAGnD,MAAM,UAAU,iBAAiB,CAC/B,OAAgB,EAChB,YAAoB,EACpB,KAAoB;IAEpB,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IACrC,MAAM,UAAU,GAAG,OAAqB,CAAA;IACxC,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,CAAA;IAExC,IAAG,UAAU,EAAE,CAAC;QACd,IAAG,KAAK,EAAE,CAAC;YACT,IAAI,cAAc,CAAC,KAAK,CAAC,EAAG,CAAC;gBAC3B,MAAM,SAAS,GAAG,KAAwB,CAAA;gBAC1C,IAAI,UAAU,GAAG,IAAI,UAAU,CAC7B,SAAS,EACT,UAAU,CAAC,eAAe,EAC1B,OAAqB,CACtB,CAAA;gBAED,IAAG,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC9B,oBAAoB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;gBAC9C,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAG,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAM,CAAC,mBAAmB;IAC5B,CAAC;IAED,uEAAuE;IACvE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IAElB,OAAM;AACR,CAAC;AAED,SAAS,oBAAoB,CAC3B,aAAyB,EACzB,UAAsB;IAEtB,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,CAAA;IACvC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAkB,CAAA,CAAC,uBAAuB;IAClE,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAA;IAEnC,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAA;IACtC,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAA;IACpC,MAAM,UAAU,GAAG,UAAU,EAAE,QAAQ,CAAA;IACvC,MAAM,SAAS,GAAG,UAAU,KAAK,UAAU,CAAA;IAE3C,IAAG,SAAS,EAAE,CAAC;QACb,UAAU,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,CAAA;QACxC,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,MAAoB,CAAA;QACxD,IAAG,MAAM,EAAE,CAAC;YACV,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAA;YACrC,UAAU,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,GAAG,SAAS,CAAC,CAAA;QAC1C,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { TagSubject } from './subject.types';
|
|
2
|
-
import { TagSupport } from './tag/TagSupport.class';
|
|
3
|
-
import { InsertBefore } from './interpolations/Clones.type';
|
|
4
|
-
export declare function updateExistingTagComponent(ownerSupport: TagSupport, tagSupport: TagSupport, // lastest
|
|
5
|
-
subject: TagSubject, insertBefore: InsertBefore): TagSupport;
|