taggedjs 2.8.35 → 2.8.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle.js +1 -1
- package/bundle.js.map +1 -1
- package/js/interpolations/attributes/addSupportEventListener.function.js +1 -1
- package/js/interpolations/attributes/bindSubjectCallback.function.d.ts +1 -6
- package/js/interpolations/attributes/bindSubjectCallback.function.js +22 -43
- package/js/interpolations/attributes/bindSubjectCallback.function.js.map +1 -1
- package/js/interpolations/attributes/checkToResolvePromise.function.d.ts +8 -0
- package/js/interpolations/attributes/checkToResolvePromise.function.js +34 -0
- package/js/interpolations/attributes/checkToResolvePromise.function.js.map +1 -0
- package/js/interpolations/attributes/getSupportWithState.function.js +1 -1
- package/js/interpolations/attributes/getUpTags.function.js +4 -3
- package/js/interpolations/attributes/getUpTags.function.js.map +1 -1
- package/js/interpolations/attributes/isSpecialAttribute.function.d.ts +2 -2
- package/js/interpolations/attributes/isSpecialAttribute.function.js +2 -2
- package/js/interpolations/attributes/isSpecialAttribute.function.js.map +1 -1
- package/js/interpolations/attributes/processNameValueAttribute.function.js +0 -1
- package/js/interpolations/attributes/processNameValueAttribute.function.js.map +1 -1
- package/js/interpolations/attributes/renderTagArray.function.js +1 -1
- package/js/interpolations/attributes/specialAttribute.js +1 -1
- package/js/interpolations/optimizers/domProcessContextItem.function.js +4 -6
- package/js/interpolations/optimizers/domProcessContextItem.function.js.map +1 -1
- package/js/interpolations/optimizers/htmlInterpolationToDomMeta.function.js +0 -11
- package/js/interpolations/optimizers/htmlInterpolationToDomMeta.function.js.map +1 -1
- package/js/jsTagVar/array.function.d.ts +2 -0
- package/js/jsTagVar/array.function.js +10 -0
- package/js/jsTagVar/array.function.js.map +1 -0
- package/js/jsTagVar/signal.function.d.ts +15 -0
- package/js/jsTagVar/signal.function.js +47 -0
- package/js/jsTagVar/signal.function.js.map +1 -0
- package/js/render/afterRender.function.js +1 -1
- package/js/render/attributes/createDynamicAttribute.function.js +8 -2
- package/js/render/attributes/createDynamicAttribute.function.js.map +1 -1
- package/js/render/attributes/getTagJsVar.function.js.map +1 -1
- package/js/render/attributes/processAttribute.function.d.ts +3 -1
- package/js/render/attributes/processAttribute.function.js +17 -2
- package/js/render/attributes/processAttribute.function.js.map +1 -1
- package/js/render/attributes/processUpdateAttrContext.function.d.ts +2 -1
- package/js/render/attributes/processUpdateAttrContext.function.js.map +1 -1
- package/js/render/buildBeforeElement.function.js +7 -5
- package/js/render/buildBeforeElement.function.js.map +1 -1
- package/js/render/destroySupport.function.js +2 -2
- package/js/render/destroySupport.function.js.map +1 -1
- package/js/render/dom/attachDomElements.function.js +8 -5
- package/js/render/dom/attachDomElements.function.js.map +1 -1
- package/js/render/executeWrap.function.js +2 -1
- package/js/render/executeWrap.function.js.map +1 -1
- package/js/render/paint.function.d.ts +1 -1
- package/js/render/paint.function.js +17 -14
- package/js/render/paint.function.js.map +1 -1
- package/js/render/registerNewTagElement.function.js +1 -1
- package/js/render/registerNewTagElement.function.js.map +1 -1
- package/js/render/renderExistingTag.function.d.ts +1 -2
- package/js/render/renderExistingTag.function.js +6 -10
- package/js/render/renderExistingTag.function.js.map +1 -1
- package/js/render/renderSupport.function.d.ts +3 -2
- package/js/render/renderSupport.function.js +17 -25
- package/js/render/renderSupport.function.js.map +1 -1
- package/js/render/renderTagElement.function.d.ts +1 -0
- package/js/render/renderTagElement.function.js +1 -2
- package/js/render/renderTagElement.function.js.map +1 -1
- package/js/render/renderTagOnly.function.js +3 -4
- package/js/render/renderTagOnly.function.js.map +1 -1
- package/js/render/renderWithSupport.function.d.ts +1 -2
- package/js/render/renderWithSupport.function.js +6 -8
- package/js/render/renderWithSupport.function.js.map +1 -1
- package/js/render/softDestroySupport.function.js +3 -3
- package/js/render/softDestroySupport.function.js.map +1 -1
- package/js/render/update/processRenderOnceInit.function.js +2 -3
- package/js/render/update/processRenderOnceInit.function.js.map +1 -1
- package/js/render/update/processTag.function.d.ts +1 -1
- package/js/render/update/processTag.function.js +4 -4
- package/js/render/update/processTag.function.js.map +1 -1
- package/js/render/update/updateExistingTagComponent.function.d.ts +3 -3
- package/js/render/update/updateExistingTagComponent.function.js +29 -23
- package/js/render/update/updateExistingTagComponent.function.js.map +1 -1
- package/js/render/update/updateSupportBy.function.js +2 -2
- package/js/render/update/updateSupportBy.function.js.map +1 -1
- package/js/state/array.function.d.ts +4 -0
- package/js/state/array.function.js +59 -0
- package/js/state/array.function.js.map +1 -0
- package/js/state/awaits.d.ts +5 -0
- package/js/state/awaits.js +19 -0
- package/js/state/awaits.js.map +1 -0
- package/js/state/callback.function.js +1 -1
- package/js/state/callbackStateUpdate.function.js +1 -1
- package/js/state/handleProviderChanges.function.js +2 -2
- package/js/state/index.d.ts +1 -2
- package/js/state/index.js +1 -2
- package/js/state/index.js.map +1 -1
- package/js/state/letProp.function.js +1 -1
- package/js/state/letProp.function.js.map +1 -1
- package/js/state/onDestroy.js +1 -1
- package/js/state/onInit.js +13 -1
- package/js/state/onInit.js.map +1 -1
- package/js/state/pipe.function.d.ts +3 -0
- package/js/state/pipe.function.js +20 -0
- package/js/state/pipe.function.js.map +1 -0
- package/js/state/providers.js +3 -3
- package/js/state/providersChangeCheck.function.js +1 -1
- package/js/state/signal.function.d.ts +15 -0
- package/js/state/signal.function.js +51 -0
- package/js/state/signal.function.js.map +1 -0
- package/js/state/state.utils.d.ts +2 -3
- package/js/state/state.utils.js +8 -3
- package/js/state/state.utils.js.map +1 -1
- package/js/state/subscribeWith.function.js +2 -4
- package/js/state/subscribeWith.function.js.map +1 -1
- package/js/state/useAwaits.d.ts +5 -0
- package/js/state/useAwaits.js +17 -0
- package/js/state/useAwaits.js.map +1 -0
- package/js/state/watch.function.js +1 -1
- package/js/subject/index.d.ts +1 -1
- package/js/subject/index.js +1 -1
- package/js/subject/index.js.map +1 -1
- package/js/subject/signal.function.d.ts +5 -4
- package/js/subject/signal.function.js.map +1 -1
- package/js/tag/AdvancedContextItem.type.d.ts +0 -2
- package/js/tag/BaseSupport.type.d.ts +1 -1
- package/js/tag/Context.types.d.ts +1 -1
- package/js/tag/ContextItem.type.d.ts +4 -4
- package/js/tag/ProcessUpdate.type.d.ts +5 -0
- package/js/tag/ProcessUpdate.type.js +2 -0
- package/js/tag/ProcessUpdate.type.js.map +1 -0
- package/js/tag/Tag.type.d.ts +7 -5
- package/js/tag/ValueTypes.enum.d.ts +1 -0
- package/js/tag/ValueTypes.enum.js +1 -2
- package/js/tag/ValueTypes.enum.js.map +1 -1
- package/js/tag/checkTagValueChange.function.d.ts +1 -1
- package/js/tag/checkTagValueChange.function.js +3 -4
- package/js/tag/checkTagValueChange.function.js.map +1 -1
- package/js/tag/createHtmlSupport.function.d.ts +3 -3
- package/js/tag/createHtmlSupport.function.js +5 -5
- package/js/tag/destroyContext.function.js +2 -2
- package/js/tag/destroyContext.function.js.map +1 -1
- package/js/tag/getDomTag.function.d.ts +1 -4
- package/js/tag/getDomTag.function.js +15 -62
- package/js/tag/getDomTag.function.js.map +1 -1
- package/js/tag/getSupportInCycle.function.d.ts +3 -1
- package/js/tag/getSupportInCycle.function.js +3 -0
- package/js/tag/getSupportInCycle.function.js.map +1 -1
- package/js/tag/getTemplaterResult.function.d.ts +5 -4
- package/js/tag/getTemplaterResult.function.js +2 -0
- package/js/tag/getTemplaterResult.function.js.map +1 -1
- package/js/tag/hasSupportChanged.function.d.ts +1 -1
- package/js/tag/hasSupportChanged.function.js +3 -3
- package/js/tag/hasSupportChanged.function.js.map +1 -1
- package/js/tag/html.js +2 -1
- package/js/tag/html.js.map +1 -1
- package/js/tag/index.d.ts +1 -0
- package/js/tag/index.js +1 -0
- package/js/tag/index.js.map +1 -1
- package/js/tag/isLikeTags.function.d.ts +3 -3
- package/js/tag/isLikeTags.function.js +32 -21
- package/js/tag/isLikeTags.function.js.map +1 -1
- package/js/tag/output.function.d.ts +3 -1
- package/js/tag/output.function.js +16 -13
- package/js/tag/output.function.js.map +1 -1
- package/js/tag/processOuterDomTagInit.function.d.ts +9 -0
- package/js/tag/processOuterDomTagInit.function.js +72 -0
- package/js/tag/processOuterDomTagInit.function.js.map +1 -0
- package/js/tag/processUpdateContext.function.d.ts +1 -1
- package/js/tag/processUpdateContext.function.js +9 -11
- package/js/tag/processUpdateContext.function.js.map +1 -1
- package/js/tag/props/alterProp.function.d.ts +0 -1
- package/js/tag/props/alterProp.function.js +7 -19
- package/js/tag/props/alterProp.function.js.map +1 -1
- package/js/tag/props/safeRenderSupport.function.d.ts +2 -0
- package/js/tag/props/safeRenderSupport.function.js +11 -0
- package/js/tag/props/safeRenderSupport.function.js.map +1 -0
- package/js/tag/smartRemoveKids.function.js +19 -9
- package/js/tag/smartRemoveKids.function.js.map +1 -1
- package/js/tag/tagElement.js +21 -11
- package/js/tag/tagElement.js.map +1 -1
- package/js/tag/tagRunner.js +2 -2
- package/js/tag/update/SubContext.type.d.ts +6 -4
- package/js/tag/update/checkSubContext.function.d.ts +2 -1
- package/js/tag/update/checkSubContext.function.js +13 -7
- package/js/tag/update/checkSubContext.function.js.map +1 -1
- package/js/tag/update/compareArrayItems.function.js +1 -1
- package/js/tag/update/compareArrayItems.function.js.map +1 -1
- package/js/tag/update/createAndProcessContextItem.function.js +2 -0
- package/js/tag/update/createAndProcessContextItem.function.js.map +1 -1
- package/js/tag/update/deleteSubContext.function.d.ts +1 -1
- package/js/tag/update/deleteSubContext.function.js +7 -6
- package/js/tag/update/deleteSubContext.function.js.map +1 -1
- package/js/tag/update/forceUpdateExistingValue.function.js +1 -1
- package/js/tag/update/forceUpdateExistingValue.function.js.map +1 -1
- package/js/tag/update/getNewGlobal.function.d.ts +1 -1
- package/js/tag/update/getNewGlobal.function.js +3 -4
- package/js/tag/update/getNewGlobal.function.js.map +1 -1
- package/js/tag/update/handleStillTag.function.d.ts +2 -2
- package/js/tag/update/handleStillTag.function.js +12 -3
- package/js/tag/update/handleStillTag.function.js.map +1 -1
- package/js/tag/update/onFirstSubContext.function.d.ts +1 -1
- package/js/tag/update/onFirstSubContext.function.js +1 -1
- package/js/tag/update/onFirstSubContext.function.js.map +1 -1
- package/js/tag/update/processFirstSubjectComponent.function.js +10 -13
- package/js/tag/update/processFirstSubjectComponent.function.js.map +1 -1
- package/js/tag/update/processFirstSubjectValue.function.js +3 -3
- package/js/tag/update/processFirstSubjectValue.function.js.map +1 -1
- package/js/tag/update/processRegularValue.function.js +3 -3
- package/js/tag/update/processRegularValue.function.js.map +1 -1
- package/js/tag/update/processSubscribe.function.d.ts +2 -2
- package/js/tag/update/processSubscribe.function.js +6 -5
- package/js/tag/update/processSubscribe.function.js.map +1 -1
- package/js/tag/update/processTagResult.function.d.ts +0 -2
- package/js/tag/update/processTagResult.function.js +2 -9
- package/js/tag/update/processTagResult.function.js.map +1 -1
- package/js/tag/update/setupSubscribe.function.d.ts +3 -3
- package/js/tag/update/setupSubscribe.function.js +36 -19
- package/js/tag/update/setupSubscribe.function.js.map +1 -1
- package/js/tag/update/tagValueUpdateHandler.function.d.ts +0 -2
- package/js/tag/update/tagValueUpdateHandler.function.js +0 -15
- package/js/tag/update/tagValueUpdateHandler.function.js.map +1 -1
- package/js/tag/update/tryUpdateToTag.function.js +16 -1
- package/js/tag/update/tryUpdateToTag.function.js.map +1 -1
- package/js/tagJsVars/array.function.d.ts +3 -0
- package/js/tagJsVars/array.function.js +28 -0
- package/js/tagJsVars/array.function.js.map +1 -0
- package/js/tagJsVars/checkSimpleValueChange.function.d.ts +2 -0
- package/js/tagJsVars/checkSimpleValueChange.function.js +13 -0
- package/js/tagJsVars/checkSimpleValueChange.function.js.map +1 -0
- package/js/tagJsVars/getArrayTagJsVar.function.d.ts +2 -2
- package/js/tagJsVars/getArrayTagJsVar.function.js +2 -0
- package/js/tagJsVars/getArrayTagJsVar.function.js.map +1 -1
- package/js/tagJsVars/getInnerHTML.function.d.ts +5 -1
- package/js/tagJsVars/getInnerHTML.function.js +3 -2
- package/js/tagJsVars/getInnerHTML.function.js.map +1 -1
- package/js/tagJsVars/getSimpleTagVar.function.d.ts +3 -11
- package/js/tagJsVars/getSimpleTagVar.function.js +7 -11
- package/js/tagJsVars/getSimpleTagVar.function.js.map +1 -1
- package/js/tagJsVars/host.function.d.ts +18 -0
- package/js/tagJsVars/host.function.js +47 -0
- package/js/tagJsVars/host.function.js.map +1 -0
- package/js/tagJsVars/index.d.ts +5 -0
- package/js/tagJsVars/index.js +5 -0
- package/js/tagJsVars/index.js.map +1 -1
- package/js/tagJsVars/pipe.function.d.ts +3 -0
- package/js/tagJsVars/pipe.function.js +22 -0
- package/js/tagJsVars/pipe.function.js.map +1 -0
- package/js/tagJsVars/subscribe.function.d.ts +4 -4
- package/js/tagJsVars/subscribe.function.js +9 -7
- package/js/tagJsVars/subscribe.function.js.map +1 -1
- package/js/tagJsVars/subscribeWith.function.d.ts +3 -0
- package/js/tagJsVars/subscribeWith.function.js +21 -0
- package/js/tagJsVars/subscribeWith.function.js.map +1 -0
- package/js/tagJsVars/tag.function.js +3 -0
- package/js/tagJsVars/tag.function.js.map +1 -1
- package/js/tagJsVars/tagJsVar.type.d.ts +8 -0
- package/js/tagJsVars/valueToTagJsVar.function.d.ts +1 -1
- package/js/tagJsVars/valueToTagJsVar.function.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { handleProviderChanges } from './handleProviderChanges.function.js';
|
|
2
2
|
export function providersChangeCheck(support) {
|
|
3
|
-
const global = support.
|
|
3
|
+
const global = support.context.global;
|
|
4
4
|
const providers = global.providers;
|
|
5
5
|
if (!providers) {
|
|
6
6
|
return [];
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ValueTypes } from '../tag/ValueTypes.enum.js';
|
|
2
|
+
import { ProcessInit } from '../tag/ProcessInit.type.js';
|
|
3
|
+
import { SubscribeFn } from '../tagJsVars/subscribe.function.js';
|
|
4
|
+
import { TagJsVar } from '../tagJsVars/tagJsVar.type.js';
|
|
5
|
+
/** Checks if rendering cycle in process. Then creates object with "value" key and ability to "subscribe" to value changes */
|
|
6
|
+
export declare function signal<T>(initialValue: T): SignalObject<T>;
|
|
7
|
+
export type SignalObject<T> = TagJsVar & {
|
|
8
|
+
tagJsType: typeof ValueTypes.signal;
|
|
9
|
+
value: any;
|
|
10
|
+
subscribe: SubscribeFn<T>;
|
|
11
|
+
processInit: ProcessInit;
|
|
12
|
+
emit: (value: any) => any;
|
|
13
|
+
};
|
|
14
|
+
/** Creates object with "value" key and ability to "subscribe" to value changes */
|
|
15
|
+
export declare function Signal<T>(initialValue: T): SignalObject<T>;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { state } from './index.js';
|
|
2
|
+
import { getSupportInCycle } from '../tag/getSupportInCycle.function.js';
|
|
3
|
+
import { processSignal } from '../tag/update/processSubscribe.function.js';
|
|
4
|
+
import { ValueTypes } from '../tag/ValueTypes.enum.js';
|
|
5
|
+
import { deleteAndUnsubscribe } from '../tag/update/setupSubscribe.function.js';
|
|
6
|
+
import { handleTagTypeChangeFrom } from '../tag/update/checkSubContext.function.js';
|
|
7
|
+
/** Checks if rendering cycle in process. Then creates object with "value" key and ability to "subscribe" to value changes */
|
|
8
|
+
export function signal(initialValue) {
|
|
9
|
+
const support = getSupportInCycle();
|
|
10
|
+
if (support) {
|
|
11
|
+
return state(() => Signal(initialValue));
|
|
12
|
+
}
|
|
13
|
+
return Signal(initialValue);
|
|
14
|
+
}
|
|
15
|
+
/** Creates object with "value" key and ability to "subscribe" to value changes */
|
|
16
|
+
export function Signal(initialValue) {
|
|
17
|
+
let value = initialValue;
|
|
18
|
+
const subscribers = new Set();
|
|
19
|
+
const emit = (newValue) => {
|
|
20
|
+
// Notify all subscribers
|
|
21
|
+
subscribers.forEach(callback => callback(newValue));
|
|
22
|
+
};
|
|
23
|
+
return {
|
|
24
|
+
tagJsType: ValueTypes.signal,
|
|
25
|
+
processInit: processSignal,
|
|
26
|
+
// processUpdate: tagValueUpdateHandler,
|
|
27
|
+
// processUpdate: checkSubContext,
|
|
28
|
+
processUpdate: (newValue, ownerSupport, contextItem, _values, counts) => handleTagTypeChangeFrom(ValueTypes.signal, newValue, ownerSupport, contextItem, counts),
|
|
29
|
+
get value() {
|
|
30
|
+
return value;
|
|
31
|
+
},
|
|
32
|
+
set value(newValue) {
|
|
33
|
+
if (value !== newValue) {
|
|
34
|
+
value = newValue;
|
|
35
|
+
emit(newValue);
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
delete: deleteAndUnsubscribe,
|
|
39
|
+
emit,
|
|
40
|
+
subscribe(callback) {
|
|
41
|
+
callback(value); // emit initial value
|
|
42
|
+
subscribers.add(callback);
|
|
43
|
+
// Return an unsubscribe function
|
|
44
|
+
const unsub = () => subscribers.delete(callback);
|
|
45
|
+
// support traditional unsubscribe
|
|
46
|
+
unsub.unsubscribe = unsub;
|
|
47
|
+
return unsub;
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=signal.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signal.function.js","sourceRoot":"","sources":["../../ts/state/signal.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAA;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAItD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAA;AAI/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAA;AAGnF,6HAA6H;AAC7H,MAAM,UAAU,MAAM,CAAI,YAAe;IACvC,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAA;IAEnC,IAAG,OAAO,EAAE,CAAC;QACX,OAAO,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAA;IAC1C,CAAC;IAED,OAAO,MAAM,CAAC,YAAY,CAAC,CAAA;AAC7B,CAAC;AAUD,kFAAkF;AAClF,MAAM,UAAU,MAAM,CAAI,YAAe;IACvC,IAAI,KAAK,GAAM,YAAY,CAAA;IAC3B,MAAM,WAAW,GAAuB,IAAI,GAAG,EAAE,CAAA;IACjD,MAAM,IAAI,GAAG,CAAC,QAAa,EAAE,EAAE;QAC7B,yBAAyB;QACzB,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;IACrD,CAAC,CAAA;IAED,OAAO;QACL,SAAS,EAAE,UAAU,CAAC,MAAM;QAC5B,WAAW,EAAE,aAAa;QAE1B,wCAAwC;QACxC,kCAAkC;QAClC,aAAa,EAAE,CACb,QAAiB,EACjB,YAAwB,EACxB,WAAwB,EACxB,OAAkB,EAClB,MAAiB,EACjB,EAAE,CAAC,uBAAuB,CAC1B,UAAU,CAAC,MAAM,EACjB,QAAQ,EACR,YAAY,EACZ,WAAW,EACX,MAAM,CACP;QAED,IAAI,KAAK;YACP,OAAO,KAAK,CAAA;QACd,CAAC;QAED,IAAI,KAAK,CAAC,QAAW;YACnB,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACvB,KAAK,GAAG,QAAQ,CAAA;gBAChB,IAAI,CAAC,QAAQ,CAAC,CAAA;YAChB,CAAC;QACH,CAAC;QAED,MAAM,EAAE,oBAAoB;QAC5B,IAAI;QAEJ,SAAS,CAAC,QAAuB;YAC/B,QAAQ,CAAC,KAAK,CAAC,CAAA,CAAC,qBAAqB;YAErC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YAEzB,iCAAiC;YACjC,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YAEhD,kCAAkC;YAClC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAA;YAEzB,OAAO,KAAK,CAAA;QACd,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { AnySupport } from '../tag/AnySupport.type.js';
|
|
2
2
|
import { State, StateConfig } from './state.types.js';
|
|
3
|
-
|
|
4
|
-
export declare function
|
|
5
|
-
export declare function reState(newSupport: AnySupport, prevSupport: AnySupport, config: StateMemory, prevState: State): void;
|
|
3
|
+
export declare function initState(support: AnySupport): void;
|
|
4
|
+
export declare function reState(newSupport: AnySupport, prevSupport: AnySupport, prevState: State): void;
|
|
6
5
|
export declare class StateEchoBack {
|
|
7
6
|
}
|
|
8
7
|
/** sends a fake value and then sets back to received value */
|
package/js/state/state.utils.js
CHANGED
|
@@ -1,15 +1,19 @@
|
|
|
1
1
|
import { runFirstState, runRestate } from './stateHandlers.js';
|
|
2
2
|
import { firstStatesHandler, reStatesHandler } from './states.utils.js';
|
|
3
|
-
|
|
3
|
+
import { setUseMemory } from './setUseMemory.object.js';
|
|
4
|
+
import { setSupportInCycle } from '../tag/getSupportInCycle.function.js';
|
|
5
|
+
export function initState(support) {
|
|
6
|
+
const config = setUseMemory.stateConfig;
|
|
4
7
|
config.handlers.handler = runFirstState;
|
|
5
8
|
config.handlers.statesHandler = firstStatesHandler;
|
|
6
9
|
config.rearray = [];
|
|
7
10
|
config.stateArray = [];
|
|
8
11
|
config.states = [];
|
|
9
12
|
config.statesIndex = 0;
|
|
10
|
-
|
|
13
|
+
setSupportInCycle(support);
|
|
11
14
|
}
|
|
12
|
-
export function reState(newSupport, prevSupport,
|
|
15
|
+
export function reState(newSupport, prevSupport, prevState) {
|
|
16
|
+
const config = setUseMemory.stateConfig;
|
|
13
17
|
// set previous state memory
|
|
14
18
|
config.rearray = prevState;
|
|
15
19
|
config.stateArray = [];
|
|
@@ -18,6 +22,7 @@ export function reState(newSupport, prevSupport, config, prevState) {
|
|
|
18
22
|
config.handlers.handler = runRestate;
|
|
19
23
|
config.handlers.statesHandler = reStatesHandler;
|
|
20
24
|
config.prevSupport = prevSupport;
|
|
25
|
+
setSupportInCycle(newSupport);
|
|
21
26
|
}
|
|
22
27
|
export class StateEchoBack {
|
|
23
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.utils.js","sourceRoot":"","sources":["../../ts/state/state.utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAE9D,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"state.utils.js","sourceRoot":"","sources":["../../ts/state/state.utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAE9D,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEvE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAExE,MAAM,UAAU,SAAS,CACvB,OAAmB;IAEnB,MAAM,MAAM,GAAG,YAAY,CAAC,WAAW,CAAA;IACvC,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAG,aAAa,CAAA;IACvC,MAAM,CAAC,QAAQ,CAAC,aAAa,GAAG,kBAA2E,CAAA;IAE3G,MAAM,CAAC,OAAO,GAAG,EAAE,CAAA;IACnB,MAAM,CAAC,UAAU,GAAG,EAAE,CAAA;IACtB,MAAM,CAAC,MAAM,GAAG,EAAE,CAAA;IAClB,MAAM,CAAC,WAAW,GAAG,CAAC,CAAA;IAEtB,iBAAiB,CAAC,OAAO,CAAC,CAAA;AAC5B,CAAC;AAED,MAAM,UAAU,OAAO,CACrB,UAAsB,EACtB,WAAuB,EACvB,SAAgB;IAEhB,MAAM,MAAM,GAAG,YAAY,CAAC,WAAW,CAAA;IAEvC,4BAA4B;IAC5B,MAAM,CAAC,OAAO,GAAG,SAAS,CAAA;IAE1B,MAAM,CAAC,UAAU,GAAG,EAAE,CAAA;IACtB,MAAM,CAAC,MAAM,GAAG,EAAE,CAAA;IAClB,MAAM,CAAC,WAAW,GAAG,CAAC,CAAA;IAEtB,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAG,UAAU,CAAA;IACpC,MAAM,CAAC,QAAQ,CAAC,aAAa,GAAG,eAAe,CAAA;IAE/C,MAAM,CAAC,WAAW,GAAG,WAAW,CAAA;IAChC,iBAAiB,CAAC,UAAU,CAAC,CAAA;AAC/B,CAAC;AAED,MAAM,OAAO,aAAa;CAAG;AAE7B,8DAA8D;AAC9D,MAAM,UAAU,gBAAgB,CAC9B,QAAwB;IAExB,MAAM,CAAE,KAAK,CAAE,GAAG,QAAQ,CAAC,aAAoB,CAAC,CAAA,CAAC,iCAAiC;IAClF,MAAM,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAE,KAAK,CAAE,CAAA,CAAC,6BAA6B;IACpE,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;AAC5B,CAAC"}
|
|
@@ -9,13 +9,11 @@ export function subscribeWith(Observable, withDefault, callback) {
|
|
|
9
9
|
tagJsType: ValueTypes.subscribe,
|
|
10
10
|
processInit: processSubscribeWith,
|
|
11
11
|
delete: deleteAndUnsubscribe,
|
|
12
|
-
checkValueChange: function subscribeDoNothing() {
|
|
13
|
-
return -1;
|
|
14
|
-
},
|
|
15
|
-
Observable,
|
|
16
12
|
callback,
|
|
17
13
|
withDefault,
|
|
18
14
|
states: getSupportWithState(getSupportInCycle()).states,
|
|
15
|
+
Observable,
|
|
16
|
+
Observables: [Observable],
|
|
19
17
|
};
|
|
20
18
|
}
|
|
21
19
|
//# sourceMappingURL=subscribeWith.function.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscribeWith.function.js","sourceRoot":"","sources":["../../ts/state/subscribeWith.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8DAA8D,CAAA;AAElG,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAA;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAA;AAG/E,yIAAyI;AACzI,MAAM,UAAU,aAAa,CAC3B,UAAoC,EACpC,WAAoB,EACpB,QAAgD;IAEhD,OAAO;QACL,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,WAAW,EAAE,oBAAoB;QACjC,MAAM,EAAE,oBAAoB;QAE5B,
|
|
1
|
+
{"version":3,"file":"subscribeWith.function.js","sourceRoot":"","sources":["../../ts/state/subscribeWith.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8DAA8D,CAAA;AAElG,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAA;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAA;AAG/E,yIAAyI;AACzI,MAAM,UAAU,aAAa,CAC3B,UAAoC,EACpC,WAAoB,EACpB,QAAgD;IAEhD,OAAO;QACL,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,WAAW,EAAE,oBAAoB;QACjC,MAAM,EAAE,oBAAoB;QAE5B,QAAQ;QACR,WAAW;QACX,MAAM,EAAE,mBAAmB,CAAE,iBAAiB,EAAgB,CAAC,CAAC,MAAM;QAEtE,UAAU;QACV,WAAW,EAAE,CAAC,UAAU,CAAC;KAC1B,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { thenResolveBy } from '../interpolations/attributes/checkToResolvePromise.function.js';
|
|
2
|
+
import { getSupportInCycle } from '../tag/getSupportInCycle.function.js';
|
|
3
|
+
/** EXPERIMENTAL. NOT LIKING. runs a callback function one time and never again. Same as calling state(() => ...)*/
|
|
4
|
+
export function useAwaits() {
|
|
5
|
+
const nowSupport = getSupportInCycle();
|
|
6
|
+
const controller = {};
|
|
7
|
+
Object.defineProperty(controller, 'add', {
|
|
8
|
+
set(x) {
|
|
9
|
+
x.then(thenResolveBy(nowSupport, resolvePromise));
|
|
10
|
+
},
|
|
11
|
+
});
|
|
12
|
+
return controller;
|
|
13
|
+
}
|
|
14
|
+
function resolvePromise(x) {
|
|
15
|
+
return x;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=useAwaits.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAwaits.js","sourceRoot":"","sources":["../../ts/state/useAwaits.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,gEAAgE,CAAA;AAC9F,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAIxE,mHAAmH;AACnH,MAAM,UAAU,SAAS;IACvB,MAAM,UAAU,GAAG,iBAAiB,EAAgB,CAAA;IACpD,MAAM,UAAU,GAAG,EAA2B,CAAA;IAE9C,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,EAAE;QACvC,GAAG,CAAC,CAAe;YACjB,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAA;QACnD,CAAC;KACF,CAAC,CAAA;IAEF,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,SAAS,cAAc,CAAC,CAAM;IAC5B,OAAO,CAAC,CAAA;AACV,CAAC"}
|
|
@@ -84,7 +84,7 @@ function defineOnMethod(getWatch, attachTo) {
|
|
|
84
84
|
const setTo = callback(currentValues, previousValues);
|
|
85
85
|
if (nowSupport !== firstSupport) {
|
|
86
86
|
const newestState = oldState.stateArray;
|
|
87
|
-
const global = firstSupport.
|
|
87
|
+
const global = firstSupport.context.global;
|
|
88
88
|
const oldest = global.oldest;
|
|
89
89
|
const oldestState = oldest.state;
|
|
90
90
|
const newStates = oldState.states;
|
package/js/subject/index.d.ts
CHANGED
package/js/subject/index.js
CHANGED
package/js/subject/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/subject/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/subject/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAA;AAGpD,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qBAAqB,CAAA"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { ValueTypes } from '../tag/ValueTypes.enum.js';
|
|
2
2
|
import { ProcessInit } from '../tag/ProcessInit.type.js';
|
|
3
|
+
import { SubscribeFn } from '../tagJsVars/subscribe.function.js';
|
|
3
4
|
/** Checks if rendering cycle in process. Then creates object with "value" key and ability to "subscribe" to value changes */
|
|
4
|
-
export declare function signal<T>(initialValue: T): SignalObject
|
|
5
|
-
export type SignalObject = {
|
|
5
|
+
export declare function signal<T>(initialValue: T): SignalObject<T>;
|
|
6
|
+
export type SignalObject<T> = {
|
|
6
7
|
tagJsType: typeof ValueTypes.signal;
|
|
7
8
|
value: any;
|
|
8
|
-
subscribe:
|
|
9
|
+
subscribe: SubscribeFn<T>;
|
|
9
10
|
processInit: ProcessInit;
|
|
10
11
|
};
|
|
11
12
|
/** Creates object with "value" key and ability to "subscribe" to value changes */
|
|
12
|
-
export declare function Signal<T>(initialValue: T): SignalObject
|
|
13
|
+
export declare function Signal<T>(initialValue: T): SignalObject<T>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signal.function.js","sourceRoot":"","sources":["../../ts/subject/signal.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAA;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAKtD,6HAA6H;AAC7H,MAAM,UAAU,MAAM,CAAI,YAAe;IACrC,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAA;IAEnC,IAAG,OAAO,EAAE,CAAC;QACT,OAAO,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAA;IAC5C,CAAC;IAED,OAAO,MAAM,CAAC,YAAY,CAAC,CAAA;AAC/B,CAAC;AASD,kFAAkF;AAClF,MAAM,UAAU,MAAM,CAAI,YAAe;IACrC,IAAI,KAAK,GAAM,YAAY,CAAA;IAC3B,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"signal.function.js","sourceRoot":"","sources":["../../ts/subject/signal.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAA;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAKtD,6HAA6H;AAC7H,MAAM,UAAU,MAAM,CAAI,YAAe;IACrC,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAA;IAEnC,IAAG,OAAO,EAAE,CAAC;QACT,OAAO,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAA;IAC5C,CAAC;IAED,OAAO,MAAM,CAAC,YAAY,CAAC,CAAA;AAC/B,CAAC;AASD,kFAAkF;AAClF,MAAM,UAAU,MAAM,CAAI,YAAe;IACrC,IAAI,KAAK,GAAM,YAAY,CAAA;IAC3B,MAAM,WAAW,GAAuB,IAAI,GAAG,EAAE,CAAA;IAEjD,OAAO;QACH,SAAS,EAAE,UAAU,CAAC,MAAM;QAC5B,WAAW,EAAE,aAAa;QAE1B,IAAI,KAAK;YACP,OAAO,KAAK,CAAA;QACd,CAAC;QACD,IAAI,KAAK,CAAC,QAAW;YACjB,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACrB,KAAK,GAAG,QAAQ,CAAA;gBAChB,yBAAyB;gBACzB,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;YACvD,CAAC;QACL,CAAC;QACD,SAAS,CAAC,QAAuB;YAC7B,QAAQ,CAAC,KAAK,CAAC,CAAA,CAAC,qBAAqB;YAErC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YAEzB,iCAAiC;YACjC,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YAEhD,kCAAkC;YAClC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAA;YAEzB,OAAO,KAAK,CAAA;QAChB,CAAC;KACJ,CAAA;AACL,CAAC"}
|
|
@@ -5,5 +5,5 @@ import { SupportContextItem } from './SupportContextItem.type.js';
|
|
|
5
5
|
import { TagCounts } from './TagCounts.type.js';
|
|
6
6
|
export type ContextHandler = (value: TemplateValue, newSupport: AnySupport, contextItem: ContextItem, values: unknown[], counts: TagCounts) => void;
|
|
7
7
|
export type LastArrayItem = ContextItem;
|
|
8
|
-
export type CheckValueChange = (value: unknown, subject: ContextItem, counts: TagCounts) => number | boolean;
|
|
8
|
+
export type CheckValueChange = (value: unknown, subject: ContextItem, counts: TagCounts, ownerSupport: AnySupport) => number | boolean;
|
|
9
9
|
export type CheckSupportValueChange = (value: unknown, subject: SupportContextItem, counts: TagCounts) => number | boolean;
|
|
@@ -2,13 +2,12 @@ import { HowToSet } from '../interpolations/attributes/howToSetInputValue.functi
|
|
|
2
2
|
import { Clone, TagGlobal } from './getTemplaterResult.function.js';
|
|
3
3
|
import { SubContext } from './update/SubContext.type.js';
|
|
4
4
|
import { PaintCommand } from '../render/paint.function.js';
|
|
5
|
-
import {
|
|
5
|
+
import { LastArrayItem } from '../index.js';
|
|
6
6
|
import { TagJsVar } from '../tagJsVars/tagJsVar.type.js';
|
|
7
7
|
import { SpecialDefinition } from '../render/attributes/Special.types.js';
|
|
8
8
|
export interface ContextItem {
|
|
9
|
-
|
|
9
|
+
locked?: true;
|
|
10
10
|
/** handler(value,newSupport,contextItem,values) Called on value update detected, within processUpdateOneContext(). Return value is ignored */
|
|
11
|
-
handler?: ContextHandler;
|
|
12
11
|
isAttr?: true;
|
|
13
12
|
howToSet?: HowToSet;
|
|
14
13
|
isNameOnly?: boolean;
|
|
@@ -19,8 +18,9 @@ export interface ContextItem {
|
|
|
19
18
|
lastArray?: LastArrayItem[];
|
|
20
19
|
subContext?: SubContext;
|
|
21
20
|
value?: any;
|
|
22
|
-
tagJsVar
|
|
21
|
+
tagJsVar: TagJsVar;
|
|
23
22
|
global?: TagGlobal;
|
|
23
|
+
element?: Element;
|
|
24
24
|
placeholder?: Text;
|
|
25
25
|
withinOwnerElement: boolean;
|
|
26
26
|
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ContextItem } from './ContextItem.type.js';
|
|
2
|
+
import { AnySupport } from './AnySupport.type.js';
|
|
3
|
+
import { TagCounts } from './TagCounts.type.js';
|
|
4
|
+
import { TemplateValue } from './TemplateValue.type.js';
|
|
5
|
+
export type ProcessUpdate = (value: TemplateValue, ownerSupport: AnySupport, contextItem: ContextItem, values: unknown[], counts: TagCounts) => any;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProcessUpdate.type.js","sourceRoot":"","sources":["../../ts/tag/ProcessUpdate.type.ts"],"names":[],"mappings":""}
|
package/js/tag/Tag.type.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { TemplaterResult } from './getTemplaterResult.function.js';
|
|
2
2
|
import { AnySupport } from './AnySupport.type.js';
|
|
3
|
-
import { TagJsVar } from '../tagJsVars/tagJsVar.type.js';
|
|
4
|
-
export type Tag =
|
|
3
|
+
import { TagJsTag, TagJsVar } from '../tagJsVars/tagJsVar.type.js';
|
|
4
|
+
export type Tag = TagJsTag & {
|
|
5
5
|
values: unknown[];
|
|
6
6
|
templater?: TemplaterResult;
|
|
7
7
|
ownerSupport?: AnySupport;
|
|
@@ -9,11 +9,13 @@ export type Tag = TagJsVar & {
|
|
|
9
9
|
/** used in array.map() */
|
|
10
10
|
key: (arrayValue: unknown) => Tag;
|
|
11
11
|
arrayValue?: any;
|
|
12
|
-
/** Used
|
|
13
|
-
|
|
12
|
+
/** Used INSIDE a tag/function to signify that innerHTML is expected */
|
|
13
|
+
acceptInnerHTML: (useTagVar: TagJsVar) => Tag;
|
|
14
14
|
/** Use this to set content to be render within another component */
|
|
15
15
|
innerHTML?: Tag;
|
|
16
|
-
/**
|
|
16
|
+
/** Same as innerHTML = x */
|
|
17
|
+
setHTML: (innerHTML: any) => Tag;
|
|
18
|
+
/** The true saved innerHTML variable */
|
|
17
19
|
_innerHTML?: Tag;
|
|
18
20
|
outerHTML?: Tag;
|
|
19
21
|
};
|
|
@@ -21,8 +21,7 @@ export const ValueTypes = {
|
|
|
21
21
|
templater: 'templater',
|
|
22
22
|
tagComponent: 'tagComponent',
|
|
23
23
|
tagArray: 'tagArray',
|
|
24
|
-
|
|
25
|
-
// tagJsSubject: 'tagJsSubject',
|
|
24
|
+
host: 'host',
|
|
26
25
|
subscribe: 'subscribe',
|
|
27
26
|
signal: 'signal',
|
|
28
27
|
renderOnce: 'renderOnce',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValueTypes.enum.js","sourceRoot":"","sources":["../../ts/tag/ValueTypes.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE,CAAA;AAEvB,MAAM,CAAN,IAAY,cAKX;AALD,WAAY,cAAc;IACxB,mCAAiB,CAAA;IACjB,mCAAiB,CAAA;IACjB,qCAAmB,CAAA;IACnB,yCAAuB,CAAA;AACzB,CAAC,EALW,cAAc,KAAd,cAAc,QAKzB;AAED,MAAM,CAAN,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,mCAAqB,CAAA;IACrB,2BAAa,CAAA;IACb,iCAAmB,CAAA;IACnB,+BAAiB,CAAA;AACnB,CAAC,EALW,UAAU,KAAV,UAAU,QAKrB;
|
|
1
|
+
{"version":3,"file":"ValueTypes.enum.js","sourceRoot":"","sources":["../../ts/tag/ValueTypes.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE,CAAA;AAEvB,MAAM,CAAN,IAAY,cAKX;AALD,WAAY,cAAc;IACxB,mCAAiB,CAAA;IACjB,mCAAiB,CAAA;IACjB,qCAAmB,CAAA;IACnB,yCAAuB,CAAA;AACzB,CAAC,EALW,cAAc,KAAd,cAAc,QAKzB;AAED,MAAM,CAAN,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,mCAAqB,CAAA;IACrB,2BAAa,CAAA;IACb,iCAAmB,CAAA;IACnB,+BAAiB,CAAA;AACnB,CAAC,EALW,UAAU,KAAV,UAAU,QAKrB;AAqBD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;AAE1B,wFAAwF;AACxF,MAAM,CAAC,MAAM,UAAU,GAAoB;IACzC,GAAG,EAAE,MAAM,EAAE,gCAAgC;IAC7C,GAAG,EAAE,KAAK,EAAE,6BAA6B;IAEzC,SAAS,EAAE,WAAW;IACtB,YAAY,EAAE,cAAc;IAC5B,QAAQ,EAAE,UAAU;IAEpB,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;IAEhB,UAAU,EAAE,YAAY;IACxB,WAAW,EAAE,aAAa;IAE1B,OAAO;CACR,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SupportContextItem } from './SupportContextItem.type.js';
|
|
2
2
|
import { ContextItem } from './ContextItem.type.js';
|
|
3
3
|
import { TagCounts } from './TagCounts.type.js';
|
|
4
|
-
export declare function checkTagValueChange(newValue: unknown, contextItem: SupportContextItem, counts: TagCounts): -1 | 7 |
|
|
4
|
+
export declare function checkTagValueChange(newValue: unknown, contextItem: SupportContextItem, counts: TagCounts): -1 | 7 | 88 | 8;
|
|
5
5
|
export declare function destroySupportByContextItem(contextItem: ContextItem): void;
|
|
@@ -5,9 +5,6 @@ import { isLikeTags } from './isLikeTags.function.js';
|
|
|
5
5
|
import { tryUpdateToTag } from './update/tryUpdateToTag.function.js';
|
|
6
6
|
export function checkTagValueChange(newValue, contextItem, counts) {
|
|
7
7
|
const global = contextItem.global;
|
|
8
|
-
if (!global) {
|
|
9
|
-
return 663; // its not a tag this time
|
|
10
|
-
}
|
|
11
8
|
const lastSupport = global?.newest;
|
|
12
9
|
const isValueTag = isStaticTag(newValue);
|
|
13
10
|
const newTag = newValue;
|
|
@@ -19,7 +16,9 @@ export function checkTagValueChange(newValue, contextItem, counts) {
|
|
|
19
16
|
getNewGlobal(contextItem);
|
|
20
17
|
return 7; // 'tag-swap'
|
|
21
18
|
}
|
|
22
|
-
|
|
19
|
+
// always cause a redraw of static tags (was false)
|
|
20
|
+
tryUpdateToTag(contextItem, newValue, lastSupport, counts);
|
|
21
|
+
return -1;
|
|
23
22
|
}
|
|
24
23
|
const isTag = newValue?.tagJsType;
|
|
25
24
|
if (isTag) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkTagValueChange.function.js","sourceRoot":"","sources":["../../ts/tag/checkTagValueChange.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AAErE,OAAO,EAAE,WAAW,EAAE,MAAK,kBAAkB,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAK,0BAA0B,CAAA;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAA;AAGpE,MAAM,UAAU,mBAAmB,CACjC,QAAiB,EACjB,WAA+B,EAC/B,MAAiB;IAEjB,MAAM,MAAM,GAAG,WAAW,CAAC,MAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"checkTagValueChange.function.js","sourceRoot":"","sources":["../../ts/tag/checkTagValueChange.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AAErE,OAAO,EAAE,WAAW,EAAE,MAAK,kBAAkB,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAK,0BAA0B,CAAA;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAA;AAGpE,MAAM,UAAU,mBAAmB,CACjC,QAAiB,EACjB,WAA+B,EAC/B,MAAiB;IAEjB,MAAM,MAAM,GAAG,WAAW,CAAC,MAA0B,CAAA;IACrD,MAAM,WAAW,GAAG,MAAM,EAAE,MAAM,CAAA;IAClC,MAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAA;IACxC,MAAM,MAAM,GAAG,QAAsB,CAAA;IAErC,IAAG,UAAU,EAAE,CAAC;QACd,0BAA0B;QAC1B,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QAChD,IAAG,CAAC,QAAQ,EAAE,CAAC;YACb,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;YACnC,YAAY,CAAC,WAAW,CAAC,CAAA;YACzB,OAAO,CAAC,CAAA,CAAC,aAAa;QACxB,CAAC;QAED,mDAAmD;QACnD,cAAc,CACZ,WAAW,EACX,QAA2B,EAC3B,WAAW,EACX,MAAM,CACP,CAAA;QAED,OAAO,CAAC,CAAC,CAAA;IACX,CAAC;IAED,MAAM,KAAK,GAAI,QAAgB,EAAE,SAAS,CAAA;IAC1C,IAAG,KAAK,EAAE,CAAC;QACT,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAA;QAC7B,MAAM,YAAY,GAAG,OAAO,CAAC,YAA0B,CAAA;QACvD,MAAM,MAAM,GAAG,cAAc,CAC3B,WAAW,EACX,QAA2B,EAC3B,YAAY,EACZ,MAAM,CACP,CAAA;QAED,MAAM,WAAW,GAAG,MAAM,KAAK,IAAI,CAAA;QAEnC,IAAG,WAAW,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,CAAA;QACX,CAAC;QAED,OAAO,EAAE,CAAA,CAAC,+BAA+B;IAC3C,CAAC;IAED,2BAA2B,CAAC,WAAW,CAAC,CAAA;IAExC,OAAO,CAAC,CAAA,CAAC,kBAAkB;AAC7B,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,WAAwB;IAExB,MAAM,MAAM,GAAG,WAAW,CAAC,MAA0B,CAAA;IACrD,MAAM,WAAW,GAAG,MAAM,EAAE,MAAM,CAAA;IAElC,kDAAkD;IAClD,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;IACnC,OAAQ,WAA2B,CAAC,MAAM,CAEzC;IAAC,WAAkC,CAAC,WAAW,GAAG,CAAC,CAAA;AACtD,CAAC"}
|
|
@@ -13,10 +13,10 @@ export type HtmlSupport = {
|
|
|
13
13
|
appElement?: Element;
|
|
14
14
|
propsConfig?: PropsConfig;
|
|
15
15
|
templater: TemplaterResult;
|
|
16
|
-
|
|
16
|
+
context: ContextItem;
|
|
17
17
|
};
|
|
18
18
|
/** used only for apps, otherwise use Support */
|
|
19
|
-
export declare function getBaseSupport(templater: TemplaterResult,
|
|
19
|
+
export declare function getBaseSupport(templater: TemplaterResult, context: SupportContextItem, castedProps?: Props): BaseSupport;
|
|
20
20
|
export type Support = AnySupport & {
|
|
21
21
|
ownerSupport: AnySupport;
|
|
22
22
|
appSupport: BaseSupport;
|
|
@@ -25,4 +25,4 @@ export type Support = AnySupport & {
|
|
|
25
25
|
export declare function upgradeBaseToSupport(templater: TemplaterResult, // at runtime rendering of a tag, it needs to be married to a new Support()
|
|
26
26
|
support: BaseSupport, appSupport: AnySupport, castedProps?: Props): AnySupport;
|
|
27
27
|
export declare function createHtmlSupport(templater: TemplaterResult, // at runtime rendering of a tag, it needs to be married to a new Support()
|
|
28
|
-
ownerSupport: AnySupport, appSupport: AnySupport,
|
|
28
|
+
ownerSupport: AnySupport, appSupport: AnySupport, context: ContextItem, castedProps?: Props): AnySupport;
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { clonePropsBy } from './props/clonePropsBy.function.js';
|
|
2
2
|
import { Subject } from '../subject/Subject.class.js';
|
|
3
3
|
/** used only for apps, otherwise use Support */
|
|
4
|
-
export function getBaseSupport(templater,
|
|
4
|
+
export function getBaseSupport(templater, context, castedProps) {
|
|
5
5
|
const baseSupport = {
|
|
6
6
|
templater,
|
|
7
|
-
|
|
7
|
+
context,
|
|
8
8
|
castedProps,
|
|
9
9
|
appSupport: undefined,
|
|
10
10
|
};
|
|
11
11
|
// baseSupport.appSupport = baseSupport
|
|
12
|
-
const global =
|
|
12
|
+
const global = context.global;
|
|
13
13
|
global.blocked = [];
|
|
14
14
|
global.destroy$ = new Subject();
|
|
15
15
|
return baseSupport;
|
|
@@ -27,10 +27,10 @@ support, appSupport, castedProps) {
|
|
|
27
27
|
return support;
|
|
28
28
|
}
|
|
29
29
|
export function createHtmlSupport(templater, // at runtime rendering of a tag, it needs to be married to a new Support()
|
|
30
|
-
ownerSupport, appSupport,
|
|
30
|
+
ownerSupport, appSupport, context, castedProps) {
|
|
31
31
|
const support = {
|
|
32
32
|
templater,
|
|
33
|
-
|
|
33
|
+
context,
|
|
34
34
|
castedProps,
|
|
35
35
|
appSupport: undefined,
|
|
36
36
|
};
|
|
@@ -27,7 +27,7 @@ export function destroyContext(childTags, ownerSupport) {
|
|
|
27
27
|
if (isTagComponent(support.templater)) {
|
|
28
28
|
runBeforeDestroy(support, global);
|
|
29
29
|
}
|
|
30
|
-
const subTags = global.
|
|
30
|
+
const subTags = global.contexts;
|
|
31
31
|
// recurse
|
|
32
32
|
destroyContext(subTags, support);
|
|
33
33
|
}
|
|
@@ -46,7 +46,7 @@ export function getChildTagsToSoftDestroy(childTags, tags = [], subs = []) {
|
|
|
46
46
|
subs.push(...iSubs);
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
|
-
const subTags = global.
|
|
49
|
+
const subTags = global.contexts;
|
|
50
50
|
if (subTags) {
|
|
51
51
|
getChildTagsToSoftDestroy(subTags, tags, subs);
|
|
52
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"destroyContext.function.js","sourceRoot":"","sources":["../../ts/tag/destroyContext.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAIjD,MAAM,UAAU,cAAc,CAC5B,SAAwB,EACxB,YAAwB;IAExB,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QAC9B,kBAAkB;QAClB,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,IAAG,SAAS,EAAE,CAAC;YACb,UAAU;YACV,cAAc,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;YACvC,SAAQ;QACV,CAAC;QAED,MAAM,UAAU,GAAG,KAAK,CAAC,KAA6B,CAAA;QACtD,IAAG,UAAU,EAAE,SAAS,KAAK,UAAU,CAAC,SAAS,EAAE,CAAC;YAClD,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,CAAA;YACtC,SAAQ;QACV,CAAC;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAA0B,CAAA;QAC/C,IAAG,CAAC,MAAM,EAAE,CAAC;YACX,SAAQ,CAAC,4BAA4B;QACvC,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAA;QAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,aAAa,CAAA;QAClC,IAAG,KAAK,EAAE,CAAC;YACT,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;QAChC,CAAC;QAED,IAAG,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YACrC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QACnC,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"destroyContext.function.js","sourceRoot":"","sources":["../../ts/tag/destroyContext.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAIjD,MAAM,UAAU,cAAc,CAC5B,SAAwB,EACxB,YAAwB;IAExB,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QAC9B,kBAAkB;QAClB,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,IAAG,SAAS,EAAE,CAAC;YACb,UAAU;YACV,cAAc,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;YACvC,SAAQ;QACV,CAAC;QAED,MAAM,UAAU,GAAG,KAAK,CAAC,KAA6B,CAAA;QACtD,IAAG,UAAU,EAAE,SAAS,KAAK,UAAU,CAAC,SAAS,EAAE,CAAC;YAClD,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,CAAA;YACtC,SAAQ;QACV,CAAC;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAA0B,CAAA;QAC/C,IAAG,CAAC,MAAM,EAAE,CAAC;YACX,SAAQ,CAAC,4BAA4B;QACvC,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAA;QAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,aAAa,CAAA;QAClC,IAAG,KAAK,EAAE,CAAC;YACT,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;QAChC,CAAC;QAED,IAAG,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YACrC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QACnC,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAA;QAC/B,UAAU;QACV,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAClC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,SAAwB,EACxB,OAAqB,EAAE,EACvB,OAA4B,EAAE;IAE9B,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,MAA0B,CAAA;QAE/C,IAAG,CAAC,MAAM,EAAE,CAAC;YACX,SAAQ;QACV,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAA;QAC7B,IAAG,OAAO,EAAE,CAAC;YACX,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAClB,MAAM,KAAK,GAAG,MAAM,CAAC,aAAa,CAAA;YAClC,IAAG,KAAK,EAAE,CAAC;gBACT,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAA;YACrB,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAA;QAC/B,IAAG,OAAO,EAAE,CAAC;YACX,yBAAyB,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;QAChD,CAAC;IACH,CAAC;IAED,OAAO,EAAC,IAAI,EAAE,IAAI,EAAC,CAAA;AACrB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAS;IACvC,IAAI,CAAC,WAAW,EAAE,CAAA;AACpB,CAAC"}
|
|
@@ -18,7 +18,7 @@ export interface TagTemplate {
|
|
|
18
18
|
values: unknown[];
|
|
19
19
|
domMetaMap?: DomMetaMap;
|
|
20
20
|
}
|
|
21
|
-
type ArrayItemStringTag<T> = StringTag & {
|
|
21
|
+
export type ArrayItemStringTag<T> = StringTag & {
|
|
22
22
|
arrayValue: T;
|
|
23
23
|
};
|
|
24
24
|
export type KeyFunction =
|
|
@@ -29,6 +29,3 @@ export type KeyFunction =
|
|
|
29
29
|
<T>(arrayValue: T) => ArrayItemStringTag<T>;
|
|
30
30
|
/** When compiled to then run in browser */
|
|
31
31
|
export declare function getDomTag(dom: LikeObjectChildren, values: unknown[]): DomTag;
|
|
32
|
-
/** When runtime is in browser */
|
|
33
|
-
export declare function getStringTag(strings: string[], values: unknown[]): StringTag;
|
|
34
|
-
export {};
|
|
@@ -3,7 +3,8 @@ import { ValueTypes } from './ValueTypes.enum.js';
|
|
|
3
3
|
import { getSupportInCycle } from './getSupportInCycle.function.js';
|
|
4
4
|
import { processDomTagInit } from './update/processDomTagInit.function.js';
|
|
5
5
|
import { checkTagValueChange, destroySupportByContextItem } from '../index.js';
|
|
6
|
-
import {
|
|
6
|
+
import { processOuterDomTagInit } from './processOuterDomTagInit.function.js';
|
|
7
|
+
import { tagValueUpdateHandler } from './update/tagValueUpdateHandler.function.js';
|
|
7
8
|
/** When compiled to then run in browser */
|
|
8
9
|
export function getDomTag(dom, values) {
|
|
9
10
|
const tag = {
|
|
@@ -12,86 +13,38 @@ export function getDomTag(dom, values) {
|
|
|
12
13
|
dom,
|
|
13
14
|
tagJsType: ValueTypes.dom,
|
|
14
15
|
processInit: processDomTagInit,
|
|
16
|
+
processUpdate: tagValueUpdateHandler,
|
|
15
17
|
checkValueChange: checkTagValueChange,
|
|
16
18
|
delete: destroySupportByContextItem,
|
|
17
19
|
key: function keyFun(arrayValue) {
|
|
18
20
|
tag.arrayValue = arrayValue;
|
|
19
21
|
return tag;
|
|
20
22
|
},
|
|
21
|
-
|
|
22
|
-
setInnerHTML: function setInnerHTML(innerHTML) {
|
|
23
|
-
innerHTML.owner = tag;
|
|
24
|
-
return tag;
|
|
25
|
-
},
|
|
26
|
-
html: {
|
|
27
|
-
dom: function dom(dom, // ObjectChildren
|
|
28
|
-
values) {
|
|
29
|
-
tag.children = { dom: dom, values };
|
|
30
|
-
return tag;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
Object.defineProperty(tag, 'innerHTML', {
|
|
35
|
-
set(innerHTML) {
|
|
23
|
+
setHTML: function setHTML(innerHTML) {
|
|
36
24
|
innerHTML.outerHTML = tag;
|
|
37
25
|
tag._innerHTML = innerHTML;
|
|
38
26
|
innerHTML.oldProcessInit = innerHTML.processInit;
|
|
39
27
|
// TODO: Not best idea to override the init
|
|
40
28
|
innerHTML.processInit = processOuterDomTagInit;
|
|
41
|
-
},
|
|
42
|
-
});
|
|
43
|
-
return tag;
|
|
44
|
-
}
|
|
45
|
-
/** Used to override the html`` processing that will first render outerHTML and then its innerHTML */
|
|
46
|
-
function processOuterDomTagInit(value, contextItem, // could be tag via result.tag
|
|
47
|
-
ownerSupport, // owningSupport
|
|
48
|
-
counts, appendTo, insertBefore) {
|
|
49
|
-
const outerHTML = value.outerHTML;
|
|
50
|
-
processDomTagInit(outerHTML, contextItem, // could be tag via result.tag
|
|
51
|
-
ownerSupport, // owningSupport
|
|
52
|
-
counts, appendTo, insertBefore);
|
|
53
|
-
contextItem.handler = (value, newSupport, contextItem, _values, counts) => {
|
|
54
|
-
forceUpdateExistingValue(contextItem, value?.outerHTML || value, newSupport, counts);
|
|
55
|
-
};
|
|
56
|
-
// TODO: Not best idea to swap out the original values changeChecker
|
|
57
|
-
value.checkValueChange = function outerCheckValueChange(newValue, contextItem, counts) {
|
|
58
|
-
return checkOuterTagValueChange(newValue, contextItem, counts);
|
|
59
|
-
};
|
|
60
|
-
}
|
|
61
|
-
function checkOuterTagValueChange(newValue, contextItem, counts) {
|
|
62
|
-
return checkTagValueChange(newValue, // (newValue as Tag)?.outerHTML || newValue,
|
|
63
|
-
contextItem, // subContext.contextItem as any,
|
|
64
|
-
counts);
|
|
65
|
-
}
|
|
66
|
-
/** When runtime is in browser */
|
|
67
|
-
export function getStringTag(strings, values) {
|
|
68
|
-
const tag = {
|
|
69
|
-
values,
|
|
70
|
-
ownerSupport: getSupportInCycle(),
|
|
71
|
-
tagJsType: ValueTypes.tag,
|
|
72
|
-
processInit: processDomTagInit,
|
|
73
|
-
checkValueChange: checkTagValueChange,
|
|
74
|
-
delete: destroySupportByContextItem,
|
|
75
|
-
strings,
|
|
76
|
-
/** Used within an array.map() that returns html aka array.map(x => html``.key(x)) */
|
|
77
|
-
key(arrayValue) {
|
|
78
|
-
tag.arrayValue = arrayValue;
|
|
79
29
|
return tag;
|
|
80
30
|
},
|
|
81
|
-
/** Used within the outerHTML tag to signify that it
|
|
82
|
-
|
|
83
|
-
|
|
31
|
+
/** Used within the outerHTML tag to signify that it can use innerHTML */
|
|
32
|
+
acceptInnerHTML: function acceptInnerHTML(useTagVar) {
|
|
33
|
+
// TODO: datatype
|
|
34
|
+
useTagVar.owner = tag;
|
|
84
35
|
return tag;
|
|
85
36
|
},
|
|
86
|
-
html:
|
|
87
|
-
|
|
88
|
-
|
|
37
|
+
html: {
|
|
38
|
+
dom: function dom(dom, // ObjectChildren
|
|
39
|
+
values) {
|
|
40
|
+
tag.children = { dom: dom, values };
|
|
41
|
+
return tag;
|
|
42
|
+
}
|
|
89
43
|
}
|
|
90
44
|
};
|
|
91
45
|
Object.defineProperty(tag, 'innerHTML', {
|
|
92
46
|
set(innerHTML) {
|
|
93
|
-
|
|
94
|
-
innerHTML.processInit = processOuterDomTagInit;
|
|
47
|
+
return tag.setHTML(innerHTML);
|
|
95
48
|
},
|
|
96
49
|
});
|
|
97
50
|
return tag;
|