taggedjs 2.4.2 → 2.4.12
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 +3612 -0
- package/bundle.js.map +1 -0
- package/index.js +1 -1
- package/js/Subject.d.ts +3 -4
- package/js/Subject.js +4 -4
- package/js/Subject.js.map +1 -1
- package/js/Tag.class.d.ts +25 -17
- package/js/Tag.class.js +208 -78
- package/js/Tag.class.js.map +1 -1
- package/js/Tag.utils.d.ts +13 -13
- package/js/Tag.utils.js +2 -18
- package/js/Tag.utils.js.map +1 -1
- package/js/TagSupport.class.d.ts +15 -14
- package/js/TagSupport.class.js +24 -46
- package/js/TagSupport.class.js.map +1 -1
- package/js/TemplaterResult.class.d.ts +36 -0
- package/js/TemplaterResult.class.js +73 -0
- package/js/TemplaterResult.class.js.map +1 -0
- package/js/ValueSubject.d.ts +4 -2
- package/js/ValueSubject.js +1 -1
- package/js/ValueSubject.js.map +1 -1
- package/js/alterProps.function.d.ts +4 -0
- package/js/alterProps.function.js +45 -0
- package/js/alterProps.function.js.map +1 -0
- package/js/bindSubjectCallback.function 9.27.33/342/200/257AM.js" +32 -0
- package/js/bindSubjectCallback.function.d 9.27.33/342/200/257AM.ts" +8 -0
- package/js/bindSubjectCallback.function.d.ts +3 -4
- package/js/bindSubjectCallback.function.js +20 -8
- package/js/bindSubjectCallback.function.js.map +1 -1
- package/js/checkDestroyPrevious.function.d.ts +6 -0
- package/js/checkDestroyPrevious.function.js +62 -0
- package/js/checkDestroyPrevious.function.js.map +1 -0
- package/js/destroyTag.function.d.ts +5 -0
- package/js/destroyTag.function.js +18 -0
- package/js/destroyTag.function.js.map +1 -0
- package/js/elementInitCheck.d.ts +1 -1
- package/js/getCallback.d.ts +1 -1
- package/js/getCallback.js +16 -15
- package/js/getCallback.js.map +1 -1
- package/js/hasTagSupportChanged.function.d.ts +6 -6
- package/js/hasTagSupportChanged.function.js +30 -21
- package/js/hasTagSupportChanged.function.js.map +1 -1
- package/js/html.d.ts +1 -1
- package/js/html.js +1 -1
- package/js/html.js.map +1 -1
- package/js/index.d.ts +22 -27
- package/js/index.js +26 -27
- package/js/index.js.map +1 -1
- package/js/interpolateAttributes.d.ts +2 -3
- package/js/interpolateAttributes.js +1 -127
- package/js/interpolateAttributes.js.map +1 -1
- package/js/interpolateContentTemplates.d.ts +9 -6
- package/js/interpolateContentTemplates.js +18 -28
- package/js/interpolateContentTemplates.js.map +1 -1
- package/js/interpolateElement.d.ts +7 -6
- package/js/interpolateElement.js +13 -10
- package/js/interpolateElement.js.map +1 -1
- package/js/interpolateTemplate.d.ts +22 -7
- package/js/interpolateTemplate.js +65 -27
- package/js/interpolateTemplate.js.map +1 -1
- package/js/isInstance.d.ts +3 -4
- package/js/isInstance.js.map +1 -1
- package/js/isLikeTags.function.d.ts +2 -0
- package/js/isLikeTags.function.js +30 -0
- package/js/isLikeTags.function.js.map +1 -0
- package/js/onDestroy.js +3 -3
- package/js/onDestroy.js.map +1 -1
- package/js/onInit.js +6 -4
- package/js/onInit.js.map +1 -1
- package/js/processAttribute.function.d.ts +3 -0
- package/js/processAttribute.function.js +122 -0
- package/js/processAttribute.function.js.map +1 -0
- package/js/processNewValue.function.d.ts +2 -2
- package/js/processNewValue.function.js +13 -15
- package/js/processNewValue.function.js.map +1 -1
- package/js/processRegularValue.function.d.ts +5 -7
- package/js/processRegularValue.function.js +10 -17
- package/js/processRegularValue.function.js.map +1 -1
- package/js/processSubjectComponent.function.d.ts +6 -6
- package/js/processSubjectComponent.function.js +30 -22
- package/js/processSubjectComponent.function.js.map +1 -1
- package/js/processSubjectValue.function.d.ts +17 -14
- package/js/processSubjectValue.function.js +55 -79
- package/js/processSubjectValue.function.js.map +1 -1
- package/js/processTagArray.d.ts +9 -8
- package/js/processTagArray.js +36 -37
- package/js/processTagArray.js.map +1 -1
- package/js/processTagResult.function.d.ts +7 -8
- package/js/processTagResult.function.js +40 -17
- package/js/processTagResult.function.js.map +1 -1
- package/js/provider.utils.d.ts +1 -1
- package/js/provider.utils.js +19 -8
- package/js/provider.utils.js.map +1 -1
- package/js/providers.js +6 -6
- package/js/providers.js.map +1 -1
- package/js/redrawTag.function.d.ts +5 -8
- package/js/redrawTag.function.js +16 -4
- package/js/redrawTag.function.js.map +1 -1
- package/js/render.d.ts +1 -1
- package/js/render.js.map +1 -1
- package/js/renderExistingTag.function.d.ts +7 -0
- package/js/renderExistingTag.function.js +30 -0
- package/js/renderExistingTag.function.js.map +1 -0
- package/js/renderTagSupport.function.d.ts +4 -0
- package/js/renderTagSupport.function.js +42 -0
- package/js/renderTagSupport.function.js.map +1 -0
- package/js/scanTextAreaValue.function.d.ts +2 -0
- package/js/scanTextAreaValue.function.js +16 -0
- package/js/scanTextAreaValue.function.js.map +1 -0
- package/js/set.function.d.ts +4 -3
- package/js/set.function.js +25 -34
- package/js/set.function.js.map +1 -1
- package/js/setLet.function.d.ts +1 -1
- package/js/setLet.function.js +14 -3
- package/js/setLet.function.js.map +1 -1
- package/js/setProp.function.d.ts +1 -1
- package/js/setProp.function.js +6 -3
- package/js/setProp.function.js.map +1 -1
- package/js/setUse.function.d.ts +11 -11
- package/js/tag.d.ts +6 -4
- package/js/tag.js +78 -71
- package/js/tag.js.map +1 -1
- package/js/tagElement.d.ts +5 -7
- package/js/tagElement.js +20 -31
- package/js/tagElement.js.map +1 -1
- package/js/tagRunner.d.ts +6 -6
- package/js/tagRunner.js +1 -1
- package/js/tagRunner.js.map +1 -1
- package/js/templater.utils.d.ts +23 -12
- package/js/templater.utils.js +55 -40
- package/js/templater.utils.js.map +1 -1
- package/js/updateExistingTag.function.d.ts +4 -4
- package/js/updateExistingTag.function.js +16 -7
- package/js/updateExistingTag.function.js.map +1 -1
- package/js/updateExistingTagComponent.function.d.ts +4 -4
- package/js/updateExistingTagComponent.function.js +105 -39
- package/js/updateExistingTagComponent.function.js.map +1 -1
- package/js/updateExistingValue.function.d.ts +8 -10
- package/js/updateExistingValue.function.js +62 -89
- package/js/updateExistingValue.function.js.map +1 -1
- package/js/watch.function.js +4 -3
- package/js/watch.function.js.map +1 -1
- package/package.json +1 -2
- package/js/CustomError.d.ts +0 -7
- package/js/CustomError.js +0 -9
- package/js/CustomError.js.map +0 -1
- package/js/ElementTarget.interface.d.ts +0 -7
- package/js/ElementTarget.interface.js +0 -2
- package/js/ElementTarget.interface.js.map +0 -1
- package/js/Errors2.d.ts +0 -14
- package/js/Errors2.js +0 -21
- package/js/Errors2.js.map +0 -1
- package/js/gateway/gateway.web.component.d.ts +0 -11
- package/js/gateway/gateway.web.component.js +0 -20
- package/js/gateway/gateway.web.component.js.map +0 -1
- package/js/gateway/index.d.ts +0 -3
- package/js/gateway/index.js +0 -4
- package/js/gateway/index.js.map +0 -1
- package/js/gateway/loadTagGateway.function.d.ts +0 -2
- package/js/gateway/loadTagGateway.function.js +0 -18
- package/js/gateway/loadTagGateway.function.js.map +0 -1
- package/js/gateway/tagGateway.function.d.ts +0 -5
- package/js/gateway/tagGateway.function.js +0 -49
- package/js/gateway/tagGateway.function.js.map +0 -1
- package/js/gateway/tagGateway.utils.d.ts +0 -22
- package/js/gateway/tagGateway.utils.js +0 -137
- package/js/gateway/tagGateway.utils.js.map +0 -1
- package/js/getTagSupport.d.ts +0 -20
- package/js/getTagSupport.js +0 -114
- package/js/getTagSupport.js.map +0 -1
- package/js/renderAppToElement.d.ts +0 -14
- package/js/renderAppToElement.js +0 -57
- package/js/renderAppToElement.js.map +0 -1
- package/js/state.d.ts +0 -22
- package/js/state.js +0 -128
- package/js/state.js.map +0 -1
- package/js/tagGateway.function.d.ts +0 -14
- package/js/tagGateway.function.js +0 -138
- package/js/tagGateway.function.js.map +0 -1
- package/js/updateTag.utils.d.ts +0 -8
- package/js/updateTag.utils.js +0 -83
- package/js/updateTag.utils.js.map +0 -1
- package/taggedjs.js +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/provider.utils.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import { deepClone, deepEqual } from
|
|
1
|
+
import { deepClone, deepEqual } from './deepFunctions';
|
|
2
|
+
import { renderTagSupport } from './renderTagSupport.function';
|
|
2
3
|
export function providersChangeCheck(tag) {
|
|
3
|
-
const
|
|
4
|
+
const global = tag.tagSupport.templater.global;
|
|
5
|
+
const providersWithChanges = global.providers.filter(provider => !deepEqual(provider.instance, provider.clone));
|
|
4
6
|
// reset clones
|
|
5
7
|
providersWithChanges.forEach(provider => {
|
|
6
8
|
const appElement = tag.getAppElement();
|
|
@@ -11,24 +13,33 @@ export function providersChangeCheck(tag) {
|
|
|
11
13
|
function handleProviderChanges(appElement, provider) {
|
|
12
14
|
const tagsWithProvider = getTagsWithProvider(appElement, provider);
|
|
13
15
|
tagsWithProvider.forEach(({ tag, renderCount, provider }) => {
|
|
14
|
-
|
|
16
|
+
if (tag.tagSupport.templater.global.deleted) {
|
|
17
|
+
return; // i was deleted after another tag processed
|
|
18
|
+
}
|
|
19
|
+
const notRendered = renderCount === tag.tagSupport.templater.global.renderCount;
|
|
15
20
|
if (notRendered) {
|
|
16
21
|
provider.clone = deepClone(provider.instance);
|
|
17
|
-
tag.tagSupport
|
|
22
|
+
renderTagSupport(tag.tagSupport, false);
|
|
18
23
|
}
|
|
19
24
|
});
|
|
20
25
|
}
|
|
21
26
|
function getTagsWithProvider(tag, provider, memory = []) {
|
|
22
|
-
const
|
|
27
|
+
const global = tag.tagSupport.templater.global;
|
|
28
|
+
const compare = global.providers;
|
|
23
29
|
const hasProvider = compare.find(xProvider => xProvider.constructMethod === provider.constructMethod);
|
|
24
30
|
if (hasProvider) {
|
|
25
31
|
memory.push({
|
|
26
32
|
tag,
|
|
27
|
-
renderCount:
|
|
28
|
-
provider: hasProvider
|
|
33
|
+
renderCount: global.renderCount,
|
|
34
|
+
provider: hasProvider,
|
|
29
35
|
});
|
|
30
36
|
}
|
|
31
|
-
tag.
|
|
37
|
+
tag.childTags.forEach(child => getTagsWithProvider(child, provider, memory));
|
|
38
|
+
memory.forEach(({ tag }) => {
|
|
39
|
+
if (tag.tagSupport.templater.global.deleted) {
|
|
40
|
+
throw new Error('do not get here - 0');
|
|
41
|
+
}
|
|
42
|
+
});
|
|
32
43
|
return memory;
|
|
33
44
|
}
|
|
34
45
|
//# sourceMappingURL=provider.utils.js.map
|
package/js/provider.utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.utils.js","sourceRoot":"","sources":["../ts/provider.utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"provider.utils.js","sourceRoot":"","sources":["../ts/provider.utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAE9D,MAAM,UAAU,oBAAoB,CAAC,GAAQ;IAC3C,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAA;IAC9C,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,GAAG,CAAC,aAAa,EAAE,CAAA;QAEtC,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,UAAe,EACf,QAAkB;IAElB,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;IAElE,gBAAgB,CAAC,OAAO,CAAC,CAAC,EAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAC,EAAE,EAAE;QACxD,IAAG,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAC3C,OAAM,CAAC,4CAA4C;QACrD,CAAC;QAED,MAAM,WAAW,GAAG,WAAW,KAAK,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAA;QAC/E,IAAG,WAAW,EAAE,CAAC;YACf,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAC7C,gBAAgB,CACd,GAAG,CAAC,UAAU,EACd,KAAK,CACN,CAAA;QACH,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,GAAQ,EACR,QAAkB,EAClB,SAA4B,EAAE;IAE9B,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAA;IAC9C,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAA;IAChC,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAC9B,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,eAAe,KAAK,QAAQ,CAAC,eAAe,CACpE,CAAA;IAED,IAAG,WAAW,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC;YACV,GAAG;YACH,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,QAAQ,EAAE,WAAW;SACtB,CAAC,CAAA;IACJ,CAAC;IAED,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAChD,KAAK,EACL,QAAQ,EACR,MAAM,CACP,CAAC,CAAA;IAEF,MAAM,CAAC,OAAO,CAAC,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE;QACvB,IAAG,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;QACxC,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC"}
|
package/js/providers.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { deepClone } from
|
|
2
|
-
import { setUse } from
|
|
1
|
+
import { deepClone } from './deepFunctions';
|
|
2
|
+
import { setUse } from './setUse.function';
|
|
3
3
|
// TODO: rename
|
|
4
4
|
setUse.memory.providerConfig = {
|
|
5
5
|
providers: [],
|
|
@@ -43,7 +43,7 @@ export const providers = {
|
|
|
43
43
|
ownerTag: config.ownerTag
|
|
44
44
|
};
|
|
45
45
|
while (owner.ownerTag) {
|
|
46
|
-
const ownerProviders = owner.ownerTag.tagSupport.
|
|
46
|
+
const ownerProviders = owner.ownerTag.tagSupport.templater.global.providers;
|
|
47
47
|
const provider = ownerProviders.find(provider => {
|
|
48
48
|
if (provider.constructMethod === constructor) {
|
|
49
49
|
return true;
|
|
@@ -70,7 +70,7 @@ setUse({
|
|
|
70
70
|
},
|
|
71
71
|
afterRender: (tagSupport) => {
|
|
72
72
|
const config = setUse.memory.providerConfig;
|
|
73
|
-
tagSupport.
|
|
73
|
+
tagSupport.templater.global.providers = [...config.providers];
|
|
74
74
|
config.providers.length = 0;
|
|
75
75
|
}
|
|
76
76
|
});
|
|
@@ -78,9 +78,9 @@ function run(tagSupport, ownerTag) {
|
|
|
78
78
|
const config = setUse.memory.providerConfig;
|
|
79
79
|
// config.currentTagSupport = tagSupport
|
|
80
80
|
config.ownerTag = ownerTag;
|
|
81
|
-
if (tagSupport.
|
|
81
|
+
if (tagSupport.templater.global.providers.length) {
|
|
82
82
|
config.providers.length = 0;
|
|
83
|
-
config.providers.push(...tagSupport.
|
|
83
|
+
config.providers.push(...tagSupport.templater.global.providers);
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
//# sourceMappingURL=providers.js.map
|
package/js/providers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../ts/providers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../ts/providers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
remit: boolean;
|
|
7
|
-
retag: Tag;
|
|
8
|
-
};
|
|
1
|
+
import { Tag } from "./Tag.class";
|
|
2
|
+
import { TagSubject } from "./Tag.utils";
|
|
3
|
+
import { TemplaterResult } from "./TemplaterResult.class";
|
|
4
|
+
/** for components */
|
|
5
|
+
export declare function redrawTag(subject: TagSubject, templater: TemplaterResult, ownerTag: Tag): Tag;
|
package/js/redrawTag.function.js
CHANGED
|
@@ -1,6 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { renderWithSupport } from "./TemplaterResult.class";
|
|
2
|
+
/** for components */
|
|
3
|
+
export function redrawTag(subject, templater, ownerTag) {
|
|
4
|
+
const existingTag = subject.tag || templater.global.newest || templater.global.oldest;
|
|
5
|
+
if (!templater.global.oldest) {
|
|
6
|
+
throw new Error('issue before event redraw');
|
|
7
|
+
}
|
|
8
|
+
const tagSupport = templater.tagSupport; // || existingTag?.tagSupport
|
|
9
|
+
if (!templater.tagSupport) {
|
|
10
|
+
throw new Error('need tag support');
|
|
11
|
+
}
|
|
12
|
+
if (!tagSupport.templater.global.oldest) {
|
|
13
|
+
throw new Error('33333');
|
|
14
|
+
}
|
|
15
|
+
let retag = renderWithSupport(tagSupport, existingTag, subject, ownerTag);
|
|
16
|
+
return retag;
|
|
5
17
|
}
|
|
6
18
|
//# sourceMappingURL=redrawTag.function.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redrawTag.function.js","sourceRoot":"","sources":["../ts/redrawTag.function.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"redrawTag.function.js","sourceRoot":"","sources":["../ts/redrawTag.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAE5E,qBAAqB;AACrB,MAAM,UAAU,SAAS,CACvB,OAAmB,EACnB,SAA0B,EAC1B,QAAa;IAGb,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,CAAA;IAErF,IAAG,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;IAC9C,CAAC;IAED,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAA,CAAC,6BAA6B;IAErE,IAAG,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAA;IACrC,CAAC;IAED,IAAG,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;IAC1B,CAAC;IAED,IAAI,KAAK,GAAG,iBAAiB,CAC3B,UAAU,EACV,WAAW,EACX,OAAO,EACP,QAAQ,CACT,CAAA;IAED,OAAO,KAAK,CAAA;AACd,CAAC"}
|
package/js/render.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare function buildClones(temporary: Element, insertBefore: Element): ChildNode[];
|
|
1
|
+
export declare function buildClones(temporary: Element, insertBefore: Element | Text): ChildNode[];
|
package/js/render.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sourceRoot":"","sources":["../ts/render.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,WAAW,CACzB,SAAkB,EAClB,
|
|
1
|
+
{"version":3,"file":"render.js","sourceRoot":"","sources":["../ts/render.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,WAAW,CACzB,SAAkB,EAClB,YAA4B;IAE5B,MAAM,MAAM,GAAG,EAAE,CAAA;IACjB,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAwB,CAAA;IAC7D,IAAI,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAA;IAE7C,OAAO,WAAW,EAAE,CAAC;QACnB,MAAM,eAAe,GAAG,WAAW,CAAC,WAAW,CAAA;QAC/C,YAAY,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;QACvC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACxB,WAAW,GAAG,eAAe,CAAA;IAC/B,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,YAAY,CACnB,WAAsB,EACtB,YAA4B;IAE5B,MAAM,UAAU,GAAG,YAAY,CAAC,UAAwB,CAAA;IACxD,UAAU,CAAC,YAAY,CACrB,WAAW,EACX,YAAY,CACb,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Tag } from './Tag.class';
|
|
2
|
+
import { BaseTagSupport } from './TagSupport.class';
|
|
3
|
+
import { TemplaterResult } from './TemplaterResult.class';
|
|
4
|
+
import { TagSubject } from './Tag.utils';
|
|
5
|
+
/** Returns true when rendering owner is not needed. Returns false when rendering owner should occur */
|
|
6
|
+
export declare function renderExistingTag(oldestTag: Tag, // existing tag already there
|
|
7
|
+
newTemplater: TemplaterResult, tagSupport: BaseTagSupport, subject: TagSubject): Tag;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { providersChangeCheck } from './provider.utils';
|
|
2
|
+
import { renderWithSupport } from './TemplaterResult.class';
|
|
3
|
+
import { isLikeTags } from './isLikeTags.function';
|
|
4
|
+
/** Returns true when rendering owner is not needed. Returns false when rendering owner should occur */
|
|
5
|
+
export function renderExistingTag(oldestTag, // existing tag already there
|
|
6
|
+
newTemplater, tagSupport, subject) {
|
|
7
|
+
newTemplater.global = subject.tag.tagSupport.templater.global;
|
|
8
|
+
if (!oldestTag.hasLiveElements) {
|
|
9
|
+
throw new Error('1080 - should have live elements');
|
|
10
|
+
}
|
|
11
|
+
const preRenderCount = tagSupport.templater.global.renderCount;
|
|
12
|
+
providersChangeCheck(oldestTag);
|
|
13
|
+
// When the providers were checked, a render to myself occurred and I do not need to re-render again
|
|
14
|
+
const latestTag = tagSupport.templater.global.newest;
|
|
15
|
+
if (preRenderCount !== tagSupport.templater.global.renderCount) {
|
|
16
|
+
oldestTag.updateByTag(latestTag);
|
|
17
|
+
return latestTag;
|
|
18
|
+
}
|
|
19
|
+
const oldTemplater = tagSupport.templater || newTemplater;
|
|
20
|
+
const redraw = renderWithSupport(newTemplater.tagSupport, subject.tag || oldTemplater.global.newest || oldTemplater.global.oldest, // hmmmmmm, why not newest?
|
|
21
|
+
subject, oldestTag.ownerTag);
|
|
22
|
+
const oldest = tagSupport.templater.global.oldest || oldestTag;
|
|
23
|
+
redraw.tagSupport.templater.global.oldest = oldest;
|
|
24
|
+
if (isLikeTags(latestTag, redraw)) {
|
|
25
|
+
subject.tag = redraw;
|
|
26
|
+
oldest.updateByTag(redraw);
|
|
27
|
+
}
|
|
28
|
+
return redraw;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=renderExistingTag.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderExistingTag.function.js","sourceRoot":"","sources":["../ts/renderExistingTag.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAmB,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAE5E,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAElD,uGAAuG;AACvG,MAAM,UAAU,iBAAiB,CAC/B,SAAc,EAAE,6BAA6B;AAC7C,YAA6B,EAC7B,UAA0B,EAC1B,OAAmB;IAEnB,YAAY,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAA;IAE7D,IAAG,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;IACrD,CAAC;IAED,MAAM,cAAc,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAA;IAC9D,oBAAoB,CAAC,SAAS,CAAC,CAAA;IAE/B,oGAAoG;IACpG,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,MAAa,CAAA;IAC3D,IAAG,cAAc,KAAK,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAC9D,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QAChC,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,MAAM,YAAY,GAAG,UAAU,CAAC,SAAS,IAAI,YAAY,CAAA;IACzD,MAAM,MAAM,GAAG,iBAAiB,CAC9B,YAAY,CAAC,UAAU,EACvB,OAAO,CAAC,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,MAAM,IAAI,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,2BAA2B;IACpG,OAAO,EACP,SAAS,CAAC,QAAQ,CACnB,CAAA;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,IAAI,SAAS,CAAA;IAC9D,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA;IAElD,IAAG,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;QACjC,OAAO,CAAC,GAAG,GAAG,MAAM,CAAA;QACpB,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IAC5B,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Tag } from './Tag.class';
|
|
2
|
+
import { BaseTagSupport } from './TagSupport.class';
|
|
3
|
+
/** Main function used by all other callers to render/update display of a tag component */
|
|
4
|
+
export declare function renderTagSupport(tagSupport: BaseTagSupport, renderUp: boolean): Tag;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { deepEqual } from './deepFunctions';
|
|
2
|
+
import { isTagInstance } from './isInstance';
|
|
3
|
+
import { renderExistingTag } from './renderExistingTag.function';
|
|
4
|
+
/** Main function used by all other callers to render/update display of a tag component */
|
|
5
|
+
export function renderTagSupport(tagSupport, renderUp) {
|
|
6
|
+
const global = tagSupport.templater.global;
|
|
7
|
+
if (isTagInstance(tagSupport.templater)) {
|
|
8
|
+
const newTag = global.newest;
|
|
9
|
+
const ownerTag = newTag.ownerTag;
|
|
10
|
+
++global.renderCount;
|
|
11
|
+
return renderTagSupport(ownerTag.tagSupport, true);
|
|
12
|
+
}
|
|
13
|
+
// const oldTagSetup = this
|
|
14
|
+
const subject = tagSupport.subject;
|
|
15
|
+
const templater = tagSupport.templater; // oldTagSetup.templater // templater
|
|
16
|
+
const subjectTag = subject.tag;
|
|
17
|
+
const newest = subjectTag?.tagSupport.templater.global.newest;
|
|
18
|
+
let ownerTag;
|
|
19
|
+
let selfPropChange = false;
|
|
20
|
+
const shouldRenderUp = renderUp && newest;
|
|
21
|
+
if (shouldRenderUp) {
|
|
22
|
+
ownerTag = newest.ownerTag;
|
|
23
|
+
if (ownerTag) {
|
|
24
|
+
const nowProps = templater.props;
|
|
25
|
+
const latestProps = newest.tagSupport.propsConfig.latestCloned;
|
|
26
|
+
selfPropChange = !deepEqual(nowProps, latestProps);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
const useTagSupport = global.newest?.tagSupport; // oldTagSetup
|
|
30
|
+
if (!templater.global.oldest) {
|
|
31
|
+
throw new Error('already causing trouble');
|
|
32
|
+
}
|
|
33
|
+
const tag = renderExistingTag(templater.global.oldest, templater, useTagSupport, subject);
|
|
34
|
+
const renderOwner = ownerTag && selfPropChange;
|
|
35
|
+
if (renderOwner) {
|
|
36
|
+
const ownerTagSupport = ownerTag.tagSupport;
|
|
37
|
+
renderTagSupport(ownerTagSupport, true);
|
|
38
|
+
return tag;
|
|
39
|
+
}
|
|
40
|
+
return tag;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=renderTagSupport.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderTagSupport.function.js","sourceRoot":"","sources":["../ts/renderTagSupport.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAEhE,0FAA0F;AAC1F,MAAM,UAAU,gBAAgB,CAC9B,UAA0B,EAC1B,QAAiB;IAEjB,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAA;IAC1C,IAAG,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAa,CAAA;QACnC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAe,CAAA;QACvC,EAAE,MAAM,CAAC,WAAW,CAAA;QACpB,OAAO,gBAAgB,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;IACpD,CAAC;IAED,2BAA2B;IAC3B,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAA;IAClC,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAA,CAAC,qCAAqC;IAC5E,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAA;IAC9B,MAAM,MAAM,GAAG,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,MAAa,CAAA;IACpE,IAAI,QAAyB,CAAA;IAC7B,IAAI,cAAc,GAAG,KAAK,CAAA;IAC1B,MAAM,cAAc,GAAG,QAAQ,IAAI,MAAM,CAAA;IAEzC,IAAG,cAAc,EAAE,CAAC;QAClB,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;QAE1B,IAAG,QAAQ,EAAE,CAAC;YACZ,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAY,CAAA;YACvC,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,YAAY,CAAA;YAE9D,cAAc,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;QACpD,CAAC;IACH,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,UAAwB,CAAA,CAAC,cAAc;IAE5E,IAAG,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC5C,CAAC;IAED,MAAM,GAAG,GAAG,iBAAiB,CAC3B,SAAS,CAAC,MAAM,CAAC,MAAa,EAC9B,SAAS,EACT,aAAa,EACb,OAAO,CACR,CAAA;IAED,MAAM,WAAW,GAAG,QAAQ,IAAI,cAAc,CAAA;IAC9C,IAAG,WAAW,EAAE,CAAC;QACf,MAAM,eAAe,GAAI,QAAgB,CAAC,UAAU,CAAA;QACpD,gBAAgB,CACd,eAAe,EACf,IAAI,CACL,CAAA;QAED,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { processAttribute } from './processAttribute.function';
|
|
2
|
+
const search = new RegExp('\\s*<template interpolate end id="__tagvar(\\d{1,4})"([^>]*)></template>(\\s*)');
|
|
3
|
+
export function scanTextAreaValue(textarea, context, ownerTag) {
|
|
4
|
+
const value = textarea.value;
|
|
5
|
+
if (value.search(search) >= 0) {
|
|
6
|
+
const match = value.match(/__tagvar(\d{1,4})/);
|
|
7
|
+
const token = match ? match[0] : '';
|
|
8
|
+
const dynamic = '{' + token + '}';
|
|
9
|
+
textarea.value = '';
|
|
10
|
+
textarea.setAttribute('text-var-value', dynamic);
|
|
11
|
+
const howToSet = (_elm, _name, value) => textarea.value = value;
|
|
12
|
+
processAttribute('text-var-value', dynamic, // realValue, // context[token].value,
|
|
13
|
+
textarea, context, ownerTag, howToSet);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=scanTextAreaValue.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scanTextAreaValue.function.js","sourceRoot":"","sources":["../ts/scanTextAreaValue.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAE9D,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,gFAAgF,CAAC,CAAA;AAE3G,MAAM,UAAU,iBAAiB,CAC/B,QAA6B,EAC7B,OAAgB,EAChB,QAAa;IAEb,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAA;IAC5B,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAG,CAAC,EAAG,CAAC;QAC9B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACnC,MAAM,OAAO,GAAG,GAAG,GAAG,KAAK,GAAG,GAAG,CAAA;QACjC,QAAQ,CAAC,KAAK,GAAG,EAAE,CAAA;QACnB,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAA;QAEhD,MAAM,QAAQ,GAAa,CAAC,IAAI,EAAE,KAAK,EAAE,KAAa,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAA;QAEjF,gBAAgB,CACd,gBAAgB,EAChB,OAAO,EAAE,sCAAsC;QAC/C,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,QAAQ,CACT,CAAA;IACH,CAAC;AACH,CAAC"}
|
package/js/set.function.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import { BaseTagSupport } from './TagSupport.class';
|
|
1
2
|
export type StateConfig<T> = (x: T) => [T, T];
|
|
2
3
|
export type StateConfigItem<T> = {
|
|
4
|
+
get: () => T;
|
|
3
5
|
callback?: StateConfig<T>;
|
|
4
6
|
lastValue?: T;
|
|
5
7
|
defaultValue?: T;
|
|
@@ -7,15 +9,14 @@ export type StateConfigItem<T> = {
|
|
|
7
9
|
};
|
|
8
10
|
export type StateConfigArray = StateConfigItem<any>[];
|
|
9
11
|
export type Config = {
|
|
12
|
+
tagSupport: BaseTagSupport;
|
|
10
13
|
array: StateConfigArray;
|
|
11
|
-
rearray
|
|
14
|
+
rearray?: StateConfigArray;
|
|
12
15
|
};
|
|
13
16
|
export type State = {
|
|
14
17
|
newest: StateConfigArray;
|
|
15
18
|
};
|
|
16
19
|
export type GetSet<T> = (y: T) => [T, T];
|
|
17
|
-
export declare function makeStateResult<T>(initValue: T, push: StateConfigItem<T>): (y: any) => T;
|
|
18
|
-
export declare function onNextStateOnly(callback: () => unknown): void;
|
|
19
20
|
export declare function getStateValue<T>(state: StateConfigItem<T>): T | undefined;
|
|
20
21
|
export declare class StateEchoBack {
|
|
21
22
|
}
|
package/js/set.function.js
CHANGED
|
@@ -1,50 +1,34 @@
|
|
|
1
|
-
import { StateMismatchError } from
|
|
2
|
-
import { setUse } from
|
|
1
|
+
import { StateMismatchError } from './errors';
|
|
2
|
+
import { setUse } from './setUse.function';
|
|
3
3
|
// TODO: rename
|
|
4
4
|
setUse.memory.stateConfig = {
|
|
5
5
|
array: [], // state memory on the first render
|
|
6
|
-
rearray: [], // state memory to be used before the next render
|
|
6
|
+
// rearray: [] as StateConfigArray, // state memory to be used before the next render
|
|
7
7
|
};
|
|
8
|
-
export function makeStateResult(initValue, push) {
|
|
9
|
-
// return initValue
|
|
10
|
-
const result = (y) => {
|
|
11
|
-
push.callback = y || (x => [initValue, initValue = x]);
|
|
12
|
-
return initValue;
|
|
13
|
-
};
|
|
14
|
-
return result;
|
|
15
|
-
}
|
|
16
|
-
const waitingStates = [];
|
|
17
|
-
export function onNextStateOnly(callback) {
|
|
18
|
-
const config = setUse.memory.stateConfig;
|
|
19
|
-
if (!config.rearray.length) {
|
|
20
|
-
callback();
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
waitingStates.push(callback);
|
|
24
|
-
}
|
|
25
8
|
setUse({
|
|
26
9
|
beforeRender: (tagSupport) => initState(tagSupport),
|
|
27
10
|
beforeRedraw: (tagSupport) => initState(tagSupport),
|
|
28
11
|
afterRender: (tagSupport) => {
|
|
29
12
|
const state = tagSupport.memory.state;
|
|
30
13
|
const config = setUse.memory.stateConfig;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
const
|
|
14
|
+
const rearray = config.rearray;
|
|
15
|
+
if (rearray.length) {
|
|
16
|
+
if (rearray.length !== config.array.length) {
|
|
17
|
+
const message = `States lengths has changed ${rearray.length} !== ${config.array.length}. Typically occurs when a function is intended to be wrapped with a tag() call`;
|
|
18
|
+
const details = {
|
|
35
19
|
oldStates: config.array,
|
|
36
20
|
newStates: config.rearray,
|
|
37
|
-
component: tagSupport.templater?.wrapper.original
|
|
38
|
-
}
|
|
21
|
+
component: tagSupport.templater?.wrapper.original,
|
|
22
|
+
};
|
|
23
|
+
const error = new StateMismatchError(message, details);
|
|
24
|
+
console.warn(message, details);
|
|
39
25
|
throw error;
|
|
40
26
|
}
|
|
41
27
|
}
|
|
42
|
-
config.rearray
|
|
43
|
-
state.newest = [...config.array]
|
|
44
|
-
|
|
28
|
+
delete config.rearray; // clean up any previous runs
|
|
29
|
+
state.newest = config.array; // [...config.array]
|
|
30
|
+
state.newest.forEach(item => item.lastValue = getStateValue(item)); // set last values
|
|
45
31
|
config.array = [];
|
|
46
|
-
waitingStates.forEach(callback => callback());
|
|
47
|
-
waitingStates.length = 0;
|
|
48
32
|
}
|
|
49
33
|
});
|
|
50
34
|
export function getStateValue(
|
|
@@ -65,6 +49,7 @@ state) {
|
|
|
65
49
|
console.error(message, { state, callback, oldState, oldValue, checkValue });
|
|
66
50
|
throw new Error(message);
|
|
67
51
|
}
|
|
52
|
+
// state.lastValue = oldValue
|
|
68
53
|
return oldValue;
|
|
69
54
|
}
|
|
70
55
|
export class StateEchoBack {
|
|
@@ -73,11 +58,12 @@ function initState(tagSupport) {
|
|
|
73
58
|
const state = tagSupport.memory.state;
|
|
74
59
|
const config = setUse.memory.stateConfig;
|
|
75
60
|
// TODO: This guard may no longer be needed
|
|
76
|
-
if (config.rearray
|
|
77
|
-
const message = 'last
|
|
61
|
+
if (config.rearray) {
|
|
62
|
+
const message = 'last state not cleared. Possibly in the middle of rendering one component and another is trying to render';
|
|
78
63
|
console.error(message, {
|
|
79
64
|
config,
|
|
80
65
|
component: tagSupport.templater?.wrapper.original,
|
|
66
|
+
wasInMiddleOf: config.tagSupport?.templater.wrapper.original,
|
|
81
67
|
state,
|
|
82
68
|
expectedClearArray: config.rearray,
|
|
83
69
|
});
|
|
@@ -91,18 +77,22 @@ function initState(tagSupport) {
|
|
|
91
77
|
// TODO: this maybe redundant and not needed
|
|
92
78
|
config.rearray = []; // .length = 0
|
|
93
79
|
if (state?.newest.length) {
|
|
80
|
+
state.newest.map(state => getStateValue(state));
|
|
94
81
|
config.rearray.push(...state.newest);
|
|
95
82
|
}
|
|
83
|
+
config.tagSupport = tagSupport;
|
|
96
84
|
}
|
|
97
85
|
/** Used for variables that need to remain the same variable during render passes */
|
|
98
86
|
export function set(defaultValue) {
|
|
99
87
|
const config = setUse.memory.stateConfig;
|
|
100
88
|
let getSetMethod;
|
|
101
|
-
const
|
|
89
|
+
const rearray = config.rearray;
|
|
90
|
+
const restate = rearray[config.array.length];
|
|
102
91
|
if (restate) {
|
|
103
92
|
let oldValue = getStateValue(restate);
|
|
104
93
|
getSetMethod = ((x) => [oldValue, oldValue = x]);
|
|
105
94
|
const push = {
|
|
95
|
+
get: () => getStateValue(push),
|
|
106
96
|
callback: getSetMethod,
|
|
107
97
|
lastValue: oldValue,
|
|
108
98
|
defaultValue: restate.defaultValue,
|
|
@@ -115,6 +105,7 @@ export function set(defaultValue) {
|
|
|
115
105
|
let initValue = defaultFn();
|
|
116
106
|
getSetMethod = ((x) => [initValue, initValue = x]);
|
|
117
107
|
const push = {
|
|
108
|
+
get: () => getStateValue(push),
|
|
118
109
|
callback: getSetMethod,
|
|
119
110
|
lastValue: initValue,
|
|
120
111
|
defaultValue: initValue,
|
package/js/set.function.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set.function.js","sourceRoot":"","sources":["../ts/set.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"set.function.js","sourceRoot":"","sources":["../ts/set.function.ts"],"names":[],"mappings":"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"}
|
package/js/setLet.function.d.ts
CHANGED
package/js/setLet.function.js
CHANGED
|
@@ -1,14 +1,16 @@
|
|
|
1
|
-
import { getStateValue
|
|
2
|
-
import { setUse } from
|
|
1
|
+
import { getStateValue } from './set.function';
|
|
2
|
+
import { setUse } from './setUse.function';
|
|
3
3
|
/** Used for variables that need to remain the same variable during render passes */
|
|
4
4
|
export function setLet(defaultValue) {
|
|
5
5
|
const config = setUse.memory.stateConfig;
|
|
6
|
+
const rearray = config.rearray;
|
|
6
7
|
let getSetMethod;
|
|
7
|
-
const restate =
|
|
8
|
+
const restate = rearray[config.array.length];
|
|
8
9
|
if (restate) {
|
|
9
10
|
let oldValue = getStateValue(restate);
|
|
10
11
|
getSetMethod = ((x) => [oldValue, oldValue = x]);
|
|
11
12
|
const push = {
|
|
13
|
+
get: () => getStateValue(push),
|
|
12
14
|
callback: getSetMethod,
|
|
13
15
|
lastValue: oldValue,
|
|
14
16
|
defaultValue: restate.defaultValue,
|
|
@@ -21,6 +23,7 @@ export function setLet(defaultValue) {
|
|
|
21
23
|
let initValue = defaultFn();
|
|
22
24
|
getSetMethod = ((x) => [initValue, initValue = x]);
|
|
23
25
|
const push = {
|
|
26
|
+
get: () => getStateValue(push),
|
|
24
27
|
callback: getSetMethod,
|
|
25
28
|
lastValue: initValue,
|
|
26
29
|
defaultValue: initValue,
|
|
@@ -28,4 +31,12 @@ export function setLet(defaultValue) {
|
|
|
28
31
|
config.array.push(push);
|
|
29
32
|
return makeStateResult(initValue, push);
|
|
30
33
|
}
|
|
34
|
+
function makeStateResult(initValue, push) {
|
|
35
|
+
// return initValue
|
|
36
|
+
const result = (y) => {
|
|
37
|
+
push.callback = y || (x => [initValue, initValue = x]);
|
|
38
|
+
return initValue;
|
|
39
|
+
};
|
|
40
|
+
return result;
|
|
41
|
+
}
|
|
31
42
|
//# sourceMappingURL=setLet.function.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setLet.function.js","sourceRoot":"","sources":["../ts/setLet.function.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"setLet.function.js","sourceRoot":"","sources":["../ts/setLet.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9G,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,oFAAoF;AACpF,MAAM,UAAU,MAAM,CACpB,YAA2B;IAE3B,MAAM,MAAM,GAAW,MAAM,CAAC,MAAM,CAAC,WAAW,CAAA;IAChD,MAAM,OAAO,GAAG,MAAM,CAAC,OAA2B,CAAA;IAClD,IAAI,YAA4B,CAAA;IAEhC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC5C,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/setProp.function.d.ts
CHANGED
package/js/setProp.function.js
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
|
-
import { getStateValue } from
|
|
2
|
-
import { setUse } from
|
|
1
|
+
import { getStateValue } from './set.function';
|
|
2
|
+
import { setUse } from './setUse.function';
|
|
3
3
|
/** Used for variables that need to remain the same variable during render passes */
|
|
4
4
|
export function setProp(getSet) {
|
|
5
5
|
const config = setUse.memory.stateConfig;
|
|
6
|
+
const rearray = config.rearray;
|
|
6
7
|
const [propValue] = getSet(undefined);
|
|
7
8
|
getSet(propValue); // restore original value instead of undefined
|
|
8
|
-
const restate =
|
|
9
|
+
const restate = rearray[config.array.length];
|
|
9
10
|
if (restate) {
|
|
10
11
|
let watchValue = restate.watch;
|
|
11
12
|
let oldValue = getStateValue(restate);
|
|
12
13
|
const push = {
|
|
14
|
+
get: () => getStateValue(push),
|
|
13
15
|
callback: getSet,
|
|
14
16
|
lastValue: oldValue,
|
|
15
17
|
watch: restate.watch,
|
|
@@ -24,6 +26,7 @@ export function setProp(getSet) {
|
|
|
24
26
|
return oldValue;
|
|
25
27
|
}
|
|
26
28
|
const push = {
|
|
29
|
+
get: () => getStateValue(push),
|
|
27
30
|
callback: getSet,
|
|
28
31
|
lastValue: propValue,
|
|
29
32
|
watch: propValue,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setProp.function.js","sourceRoot":"","sources":["../ts/setProp.function.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
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"}
|
package/js/setUse.function.d.ts
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { Tag } from
|
|
2
|
-
import {
|
|
3
|
-
import { Config } from
|
|
1
|
+
import { Tag } from './Tag.class';
|
|
2
|
+
import { BaseTagSupport } from './TagSupport.class';
|
|
3
|
+
import { Config } from './set.function';
|
|
4
4
|
interface TagUse {
|
|
5
|
-
beforeRender: (tagSupport:
|
|
6
|
-
beforeRedraw: (tagSupport:
|
|
7
|
-
afterRender: (tagSupport:
|
|
8
|
-
beforeDestroy: (tagSupport:
|
|
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
9
|
}
|
|
10
10
|
export type UseOptions = {
|
|
11
|
-
beforeRender?: (tagSupport:
|
|
12
|
-
beforeRedraw?: (tagSupport:
|
|
13
|
-
afterRender?: (tagSupport:
|
|
14
|
-
beforeDestroy?: (tagSupport:
|
|
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
15
|
};
|
|
16
16
|
export declare function setUse(use: UseOptions): void;
|
|
17
17
|
export declare namespace setUse {
|