taggedjs 3.1.13 → 3.1.18
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/TagJsTags/TagJsTag.type.d.ts +1 -0
- package/js/TagJsTags/getArrayTagJsTag.function.js +27 -1
- package/js/TagJsTags/getArrayTagJsTag.function.js.map +1 -1
- package/js/TagJsTags/getSimpleTagVar.function.js +11 -4
- package/js/TagJsTags/getSimpleTagVar.function.js.map +1 -1
- package/js/TagJsTags/getStringTagVar.function.d.ts +8 -0
- package/js/TagJsTags/getStringTagVar.function.js +80 -0
- package/js/TagJsTags/getStringTagVar.function.js.map +1 -0
- package/js/TagJsTags/host.function.js.map +1 -1
- package/js/TagJsTags/index.d.ts +1 -1
- package/js/TagJsTags/index.js +1 -1
- package/js/TagJsTags/processSimpleAttribute.function.js +1 -1
- package/js/TagJsTags/tag.function.d.ts +1 -5
- package/js/TagJsTags/tag.function.js +1 -19
- package/js/TagJsTags/tag.function.js.map +1 -1
- package/js/TagJsTags/valueToTagJsVar.function.js +1 -1
- package/js/elements/ElementFunction.type.d.ts +5 -106
- package/js/elements/attributeCallables.js +9 -2
- package/js/elements/attributeCallables.js.map +1 -1
- package/js/elements/elementAttributes.array.d.ts +107 -0
- package/js/elements/elementAttributes.array.js +44 -0
- package/js/elements/elementAttributes.array.js.map +1 -0
- package/js/elements/elementFunctions.d.ts +4 -4
- package/js/elements/elementFunctions.js +54 -90
- package/js/elements/elementFunctions.js.map +1 -1
- package/js/elements/htmlTag.function.js +34 -28
- package/js/elements/htmlTag.function.js.map +1 -1
- package/js/elements/index.d.ts +2 -1
- package/js/elements/index.js +1 -0
- package/js/elements/index.js.map +1 -1
- package/js/elements/processDesignElementUpdate.function.js +23 -16
- package/js/elements/processDesignElementUpdate.function.js.map +1 -1
- package/js/elements/processElementVar.function.js +23 -16
- package/js/elements/processElementVar.function.js.map +1 -1
- package/js/elements/processElementVarFunction.function.js +0 -2
- package/js/elements/processElementVarFunction.function.js.map +1 -1
- package/js/interpolations/attributes/processFunctionAttr.function.js +0 -6
- package/js/interpolations/attributes/processFunctionAttr.function.js.map +1 -1
- package/js/interpolations/attributes/renderTagArray.function.d.ts +1 -0
- package/js/interpolations/attributes/renderTagArray.function.js +12 -3
- package/js/interpolations/attributes/renderTagArray.function.js.map +1 -1
- package/js/interpolations/optimizers/htmlInterpolationToDomMeta.function.js +1 -2
- package/js/interpolations/optimizers/htmlInterpolationToDomMeta.function.js.map +1 -1
- package/js/interpolations/optimizers/parseHTML.function.js +3 -1
- package/js/interpolations/optimizers/parseHTML.function.js.map +1 -1
- package/js/render/addOneContext.function.js +0 -4
- package/js/render/addOneContext.function.js.map +1 -1
- package/js/render/attributes/createDynamicAttribute.function.js +0 -3
- package/js/render/attributes/createDynamicAttribute.function.js.map +1 -1
- package/js/render/attributes/processAttribute.function.js +5 -13
- package/js/render/attributes/processAttribute.function.js.map +1 -1
- package/js/render/attributes/processTagJsAttribute.function.js +0 -1
- package/js/render/attributes/processTagJsAttribute.function.js.map +1 -1
- package/js/render/buildBeforeElement.function.d.ts +1 -5
- package/js/render/buildBeforeElement.function.js +6 -26
- package/js/render/buildBeforeElement.function.js.map +1 -1
- package/js/render/dom/attachDomElements.function.js +0 -20
- package/js/render/dom/attachDomElements.function.js.map +1 -1
- package/js/render/executeWrap.function.js +0 -6
- package/js/render/executeWrap.function.js.map +1 -1
- package/js/render/index.d.ts +0 -1
- package/js/render/index.js +0 -1
- package/js/render/index.js.map +1 -1
- package/js/render/paint.function.d.ts +2 -0
- package/js/render/paint.function.js +63 -24
- package/js/render/paint.function.js.map +1 -1
- package/js/render/registerNewTagElement.function.js +2 -39
- package/js/render/registerNewTagElement.function.js.map +1 -1
- package/js/render/renderExistingTag.function.d.ts +1 -1
- package/js/render/renderExistingTag.function.js +0 -2
- package/js/render/renderExistingTag.function.js.map +1 -1
- package/js/render/renderTagElement.function.d.ts +0 -1
- package/js/render/update/processRenderOnceInit.function.d.ts +1 -1
- package/js/render/update/processRenderOnceInit.function.js +0 -8
- package/js/render/update/processRenderOnceInit.function.js.map +1 -1
- package/js/render/update/processTag.function.d.ts +2 -14
- package/js/render/update/processTag.function.js +0 -39
- package/js/render/update/processTag.function.js.map +1 -1
- package/js/render/update/updateExistingTagComponent.function.js +0 -12
- package/js/render/update/updateExistingTagComponent.function.js.map +1 -1
- package/js/state/arrayWatch.function.js.map +1 -1
- package/js/state/subject.function.js +3 -3
- package/js/state/subject.function.js.map +1 -1
- package/js/state/syncStates.function.js +0 -10
- package/js/state/syncStates.function.js.map +1 -1
- package/js/state/watch.function.js +1 -2
- package/js/state/watch.function.js.map +1 -1
- package/js/tag/ContextItem.type.d.ts +0 -2
- package/js/tag/ValueTypes.enum.d.ts +0 -1
- package/js/tag/ValueTypes.enum.js +0 -1
- package/js/tag/ValueTypes.enum.js.map +1 -1
- package/js/tag/checkDestroyPrevious.function.js +1 -2
- package/js/tag/checkDestroyPrevious.function.js.map +1 -1
- package/js/tag/destroyArrayContext.function.js +3 -0
- package/js/tag/destroyArrayContext.function.js.map +1 -1
- package/js/tag/domMetaCollector.js +1 -2
- package/js/tag/domMetaCollector.js.map +1 -1
- package/js/tag/getTemplaterResult.function.d.ts +1 -1
- package/js/tag/getTemplaterResult.function.js +1 -2
- package/js/tag/getTemplaterResult.function.js.map +1 -1
- package/js/tag/index.d.ts +0 -1
- package/js/tag/index.js +0 -1
- package/js/tag/index.js.map +1 -1
- package/js/tag/processUpdateContext.function.js +3 -12
- package/js/tag/processUpdateContext.function.js.map +1 -1
- package/js/tag/props/safeRenderSupport.function.d.ts +1 -1
- package/js/tag/props/safeRenderSupport.function.js.map +1 -1
- package/js/tag/tag.types.d.ts +1 -1
- package/js/tag/tag.utils.d.ts +1 -1
- package/js/tag/tagElement.js +0 -1
- package/js/tag/tagElement.js.map +1 -1
- package/js/tag/update/arrays/compareArrayItems.function.d.ts +3 -4
- package/js/tag/update/arrays/compareArrayItems.function.js +15 -22
- package/js/tag/update/arrays/compareArrayItems.function.js.map +1 -1
- package/js/tag/update/arrays/processTagArray.d.ts +1 -1
- package/js/tag/update/arrays/processTagArray.js +74 -45
- package/js/tag/update/arrays/processTagArray.js.map +1 -1
- package/js/tag/update/convertTagToElementManaged.function.js +0 -8
- package/js/tag/update/convertTagToElementManaged.function.js.map +1 -1
- package/js/tag/update/getOverrideTagVar.js.map +1 -1
- package/js/tag/update/oneRenderToSupport.function.d.ts +1 -1
- package/js/tag/update/oneRenderToSupport.function.js +3 -2
- package/js/tag/update/oneRenderToSupport.function.js.map +1 -1
- package/js/tag/update/processFirstSubjectComponent.function.js +2 -14
- package/js/tag/update/processFirstSubjectComponent.function.js.map +1 -1
- package/js/tag/update/processNewSubjectTag.function.d.ts +1 -2
- package/js/tag/update/processNewSubjectTag.function.js +2 -27
- package/js/tag/update/processNewSubjectTag.function.js.map +1 -1
- package/js/tag/update/processRegularValue.function.js +1 -1
- package/js/tag/update/processTagInit.function.js +2 -11
- package/js/tag/update/processTagInit.function.js.map +1 -1
- package/js/tag/update/processTagResult.function.d.ts +1 -1
- package/js/tag/update/processTagResult.function.js +1 -12
- package/js/tag/update/processTagResult.function.js.map +1 -1
- package/js/tag/update/setupSubscribe.function.js +3 -1
- package/js/tag/update/setupSubscribe.function.js.map +1 -1
- package/js/tag/update/tagValueUpdateHandler.function.js +4 -15
- package/js/tag/update/tagValueUpdateHandler.function.js.map +1 -1
- package/js/tag/update/updateToDiffValue.function.js +1 -4
- package/js/tag/update/updateToDiffValue.function.js.map +1 -1
- package/js/version.d.ts +1 -1
- package/js/version.js +1 -1
- package/package.json +1 -1
|
@@ -3,6 +3,7 @@ import { processTagArray } from '../tag/update/arrays/processTagArray.js';
|
|
|
3
3
|
import { tagValueUpdateHandler } from '../tag/update/tagValueUpdateHandler.function.js';
|
|
4
4
|
import { blankHandler } from '../render/dom/blankHandler.function.js';
|
|
5
5
|
import { destroyArrayContext } from '../tag/destroyArrayContext.function.js';
|
|
6
|
+
import { updateToDiffValue } from '../tag/update/updateToDiffValue.function.js';
|
|
6
7
|
/** how to process an array */
|
|
7
8
|
export function getArrayTagVar(value) {
|
|
8
9
|
return {
|
|
@@ -18,14 +19,39 @@ export function getArrayTagVar(value) {
|
|
|
18
19
|
}
|
|
19
20
|
function processArrayUpdates(newValue, contextItem, ownerSupport) {
|
|
20
21
|
++contextItem.updateCount;
|
|
22
|
+
const TagJsTag = contextItem.tagJsVar;
|
|
23
|
+
const ignoreOrDestroyed = TagJsTag.hasValueChanged(newValue, contextItem, ownerSupport);
|
|
24
|
+
if (ignoreOrDestroyed) {
|
|
25
|
+
destroyArrayContext(contextItem);
|
|
26
|
+
updateToDiffValue(newValue, contextItem, ownerSupport, ignoreOrDestroyed);
|
|
27
|
+
return ignoreOrDestroyed;
|
|
28
|
+
}
|
|
29
|
+
// ignore
|
|
30
|
+
/*
|
|
31
|
+
if( ignoreOrDestroyed === 0 ) {
|
|
32
|
+
return ignoreOrDestroyed // do nothing
|
|
33
|
+
}
|
|
34
|
+
/*
|
|
35
|
+
/*
|
|
36
|
+
updateToDiffValue(
|
|
37
|
+
newValue,
|
|
38
|
+
contextItem,
|
|
39
|
+
ownerSupport,
|
|
40
|
+
ignoreOrDestroyed,
|
|
41
|
+
)
|
|
42
|
+
|
|
43
|
+
return ignoreOrDestroyed
|
|
44
|
+
*/
|
|
21
45
|
if (Array.isArray(newValue)) {
|
|
22
46
|
processTagArray(contextItem, newValue, ownerSupport);
|
|
23
|
-
return;
|
|
47
|
+
return 0;
|
|
24
48
|
}
|
|
25
49
|
const tagUpdateResponse = tagValueUpdateHandler(newValue, contextItem, ownerSupport);
|
|
26
50
|
if (tagUpdateResponse === 0) {
|
|
27
51
|
processTagArray(contextItem, newValue, ownerSupport);
|
|
52
|
+
return 0;
|
|
28
53
|
}
|
|
54
|
+
return 1;
|
|
29
55
|
}
|
|
30
56
|
function processArrayInit(value, // TemplateValue | StringTag | SubscribeValue | SignalObject,
|
|
31
57
|
contextItem, ownerSupport, _insertBefore, appendTo) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getArrayTagJsTag.function.js","sourceRoot":"","sources":["../../ts/TagJsTags/getArrayTagJsTag.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAA;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAA;AAIzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAA;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAA;AAErE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAA;
|
|
1
|
+
{"version":3,"file":"getArrayTagJsTag.function.js","sourceRoot":"","sources":["../../ts/TagJsTags/getArrayTagJsTag.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAA;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAA;AAIzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAA;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAA;AAErE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAA;AAE5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AAE/E,8BAA8B;AAC9B,MAAM,UAAU,cAAc,CAC5B,KAAU;IAEV,OAAO;QACL,SAAS,EAAE,KAAK;QAChB,SAAS,EAAE,OAAO;QAClB,KAAK;QACL,oBAAoB,EAAE,YAAY;QAClC,WAAW,EAAE,gBAAgB;QAC7B,aAAa,EAAE,mBAAmB;QAClC,eAAe,EAAE,qBAAqB;QACtC,OAAO,EAAE,mBAAmB;KAC7B,CAAA;AACH,CAAC;AAED,SAAS,mBAAmB,CAC1B,QAAuB,EACvB,WAA6C,EAC7C,YAAwB;IAExB,EAAE,WAAW,CAAC,WAAW,CAAA;IAEzB,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAyB,CAAA;IACtD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,eAAe,CAChD,QAAQ,EACR,WAA4C,EAC5C,YAAY,CACb,CAAA;IAED,IAAI,iBAAiB,EAAG,CAAC;QACvB,mBAAmB,CAAC,WAAW,CAAC,CAAA;QAChC,iBAAiB,CACf,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,iBAAiB,CAClB,CAAA;QACD,OAAO,iBAAiB,CAAA;IAC1B,CAAC;IACD,SAAS;IACT;;;;;;;;;;;;;;IAcA;IAEA,IAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3B,eAAe,CACb,WAAW,EACX,QAAqD,EACrD,YAAY,CACb,CAAA;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED,MAAM,iBAAiB,GAAG,qBAAqB,CAC7C,QAAQ,EACR,WAAW,EACX,YAAY,CACb,CAAA;IAED,IAAG,iBAAiB,KAAK,CAAC,EAAE,CAAC;QAC3B,eAAe,CACb,WAAW,EACX,QAAe,EACf,YAAY,CACb,CAAA;QAED,OAAO,CAAC,CAAA;IACV,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC;AAED,SAAS,gBAAgB,CACvB,KAAoB,EAAE,6DAA6D;AACnF,WAAwB,EACxB,YAAwB,EACxB,aAAoB,EACpB,QAAkB;IAElB,MAAM,QAAQ,GAAG,KAAY,CAAA;IAE7B,eAAe,CACb,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,QAAQ,CACT,CAAA;AACH,CAAC"}
|
|
@@ -43,11 +43,18 @@ contextItem, ownerSupport, insertBefore, _appendTo) {
|
|
|
43
43
|
paintCommands.push(paint);
|
|
44
44
|
}
|
|
45
45
|
export function deleteSimpleValue(context) {
|
|
46
|
-
if (!context.simpleValueElm && context.paint) {
|
|
47
|
-
context.paint[0] = blankHandler;
|
|
48
|
-
return; // I'm being deleted before my first render even occurred
|
|
49
|
-
}
|
|
50
46
|
const elm = context.simpleValueElm;
|
|
47
|
+
if (!elm) {
|
|
48
|
+
// it has not hit the document yet
|
|
49
|
+
if (context.paint) {
|
|
50
|
+
context.paint[0] = blankHandler;
|
|
51
|
+
return; // I'm being deleted before my first render even occurred
|
|
52
|
+
}
|
|
53
|
+
const skip = context.value === undefined || context.value === false || context.value === null;
|
|
54
|
+
if (skip) {
|
|
55
|
+
return; // never had an element put down
|
|
56
|
+
}
|
|
57
|
+
}
|
|
51
58
|
delete context.simpleValueElm;
|
|
52
59
|
addPaintRemover(elm, 'deleteSimpleValue');
|
|
53
60
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getSimpleTagVar.function.js","sourceRoot":"","sources":["../../ts/TagJsTags/getSimpleTagVar.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,wBAAwB,EAAiB,MAAM,aAAa,CAAA;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7F,OAAO,EAAE,UAAU,EAAe,MAAM,aAAa,CAAA;AACrD,OAAO,EAAE,yBAAyB,EAAgB,MAAM,+CAA+C,CAAA;AAGvG,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAA;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAA;AAErE,MAAM,UAAU,qBAAqB,CACnC,WAAiC;IAEjC,MAAM,OAAO,GAAG,WAAW,CAAC,MAAiB,CAAA;IAC7C,MAAM,IAAI,GAAG,WAAW,CAAC,QAAkB,CAAA;IAC3C,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;AAC/B,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,KAAU;IAEV,OAAO;QACL,SAAS,EAAE,KAAK;QAChB,SAAS,EAAE,QAAQ;QACnB,KAAK;QACL,oBAAoB,EAAE,sBAAsB;QAC5C,WAAW,EAAE,sBAAsB;QACnC,OAAO,EAAE,iBAAiB;QAE1B,iDAAiD;QACjD,eAAe,EAAE,kCAAkC,EAAE,+DAA+D;QACpH,aAAa,EAAE,mBAAmB,EAAE,+DAA+D;QACnG,wGAAwG;KACzG,CAAA;AACH,CAAC;AAED,SAAS,mBAAmB,CAC1B,QAAuB,EAAE,WAAW;AACpC,WAAwB,EACxB,YAAwB;IAExB,IAAG,QAAQ,KAAK,WAAW,CAAC,KAAK,EAAE,CAAC;QAClC,OAAO,CAAC,CAAA;IACV,CAAC;IAED,OAAO,wBAAwB,CAC7B,WAAW,EACX,QAAQ,EACR,YAAY,CACb,CAAA;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAU,EAAE,6DAA6D;AACzE,WAAwB,EACxB,YAAwB,EACxB,YAAmB,EACnB,SAAmB;IAEnB,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IAExC,YAAY,GAAG,WAAW,CAAC,WAAmB,CAAA;IAE9C,kCAAkC;IAClC,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,GAAG,CAAC,eAAe,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,SAAS,gBAAgB,CAAC,CAAO;gBAC/G,WAAW,CAAC,cAAc,GAAG,CAAC,CAAA;gBAC9B,OAAO,WAAW,CAAC,KAAK,CAAA;YAC1B,CAAC,EAAE,wBAAwB,CAAC,CAAC,CAAA;IAC7B,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC3B,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,OAAoB;IAEpB,
|
|
1
|
+
{"version":3,"file":"getSimpleTagVar.function.js","sourceRoot":"","sources":["../../ts/TagJsTags/getSimpleTagVar.function.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ContextItem } from "../index.js";
|
|
2
|
+
import { TagJsTag } from "./TagJsTag.type.js";
|
|
3
|
+
import { AttributeContextItem } from "../tag/AttributeContextItem.type.js";
|
|
4
|
+
export declare function deleteSimpleAttribute(contextItem: AttributeContextItem): void;
|
|
5
|
+
export declare function getSimpleTagVar(value: any): TagJsTag<any>;
|
|
6
|
+
export declare function deleteSimpleValue(context: ContextItem): void;
|
|
7
|
+
export declare function checkSimpleValueChange(newValue: unknown, contextItem: ContextItem): 0 | 6;
|
|
8
|
+
export declare function checkUpdateDeleteSimpleValueChange(newValue: unknown, contextItem: ContextItem): 0 | 6;
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { forceUpdateExistingValue } from "../index.js";
|
|
2
|
+
import { castTextValue } from '../castTextValue.function.js';
|
|
3
|
+
import { paintBeforeText, paintCommands, addPaintRemover } from "../render/paint.function.js";
|
|
4
|
+
import { BasicTypes } from "../index.js";
|
|
5
|
+
import { processUpdateRegularValue } from "../tag/update/processRegularValue.function.js";
|
|
6
|
+
import { processSimpleAttribute } from "./processSimpleAttribute.function.js";
|
|
7
|
+
import { blankHandler } from "../render/dom/blankHandler.function.js";
|
|
8
|
+
export function deleteSimpleAttribute(contextItem) {
|
|
9
|
+
const element = contextItem.target;
|
|
10
|
+
const name = contextItem.attrName;
|
|
11
|
+
element.removeAttribute(name);
|
|
12
|
+
}
|
|
13
|
+
export function getSimpleTagVar(value) {
|
|
14
|
+
return {
|
|
15
|
+
component: false,
|
|
16
|
+
tagJsType: 'simple',
|
|
17
|
+
value,
|
|
18
|
+
processInitAttribute: processSimpleAttribute,
|
|
19
|
+
processInit: processSimpleValueInit,
|
|
20
|
+
destroy: deleteSimpleValue,
|
|
21
|
+
// TODO: get to using only checkSimpleValueChange
|
|
22
|
+
hasValueChanged: checkUpdateDeleteSimpleValueChange, // For attributes, this gets switched to checkSimpleValueChange
|
|
23
|
+
processUpdate: processStringUpdate, // For attributes, this gets switched to processAttributeUpdate
|
|
24
|
+
// processUpdate: tagValueUpdateHandler, // For attributes, this gets switched to processAttributeUpdate
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
function processStringUpdate(newValue, // newValue
|
|
28
|
+
contextItem, ownerSupport) {
|
|
29
|
+
if (newValue === contextItem.value) {
|
|
30
|
+
return 0;
|
|
31
|
+
}
|
|
32
|
+
return forceUpdateExistingValue(contextItem, newValue, ownerSupport);
|
|
33
|
+
}
|
|
34
|
+
function processSimpleValueInit(value, // TemplateValue | StringTag | SubscribeValue | SignalObject,
|
|
35
|
+
contextItem, ownerSupport, insertBefore, _appendTo) {
|
|
36
|
+
const castedValue = castTextValue(value);
|
|
37
|
+
insertBefore = contextItem.placeholder;
|
|
38
|
+
// always insertBefore for content
|
|
39
|
+
const paint = contextItem.paint = [paintBeforeText, [insertBefore, castedValue, function afterSimpleValue(x) {
|
|
40
|
+
contextItem.simpleValueElm = x;
|
|
41
|
+
delete contextItem.paint;
|
|
42
|
+
}, 'processSimpleValueInit']];
|
|
43
|
+
paintCommands.push(paint);
|
|
44
|
+
}
|
|
45
|
+
export function deleteSimpleValue(context) {
|
|
46
|
+
const elm = context.simpleValueElm;
|
|
47
|
+
if (!elm) {
|
|
48
|
+
// it has not hit the document yet
|
|
49
|
+
if (context.paint) {
|
|
50
|
+
context.paint[0] = blankHandler;
|
|
51
|
+
return; // I'm being deleted before my first render even occurred
|
|
52
|
+
}
|
|
53
|
+
const skip = context.value === undefined || context.value === false || context.value === null;
|
|
54
|
+
if (skip) {
|
|
55
|
+
return; // never had an element put down
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
delete context.simpleValueElm;
|
|
59
|
+
addPaintRemover(elm, 'deleteSimpleValue');
|
|
60
|
+
}
|
|
61
|
+
export function checkSimpleValueChange(newValue, contextItem) {
|
|
62
|
+
const isBadValue = newValue === null || newValue === undefined;
|
|
63
|
+
const isRegularUpdate = isBadValue || newValue === contextItem.value; // !(typeof(newValue) === BasicTypes.object)
|
|
64
|
+
if (isRegularUpdate) {
|
|
65
|
+
return 0; // no need to destroy, just update display
|
|
66
|
+
}
|
|
67
|
+
return 6; // 'changed-simple-value'
|
|
68
|
+
}
|
|
69
|
+
export function checkUpdateDeleteSimpleValueChange(newValue, contextItem) {
|
|
70
|
+
const isBadValue = newValue === null || newValue === undefined;
|
|
71
|
+
const isRegularUpdate = isBadValue || !([BasicTypes.object, BasicTypes.function].includes(typeof (newValue)));
|
|
72
|
+
if (isRegularUpdate) {
|
|
73
|
+
// This will cause all other values to render
|
|
74
|
+
processUpdateRegularValue(newValue, contextItem);
|
|
75
|
+
return 0; // no need to destroy, just update display
|
|
76
|
+
}
|
|
77
|
+
deleteSimpleValue(contextItem);
|
|
78
|
+
return 6; // 'changed-simple-value'
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=getStringTagVar.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getStringTagVar.function.js","sourceRoot":"","sources":["../../ts/TagJsTags/getStringTagVar.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,wBAAwB,EAAiB,MAAM,aAAa,CAAA;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7F,OAAO,EAAE,UAAU,EAAe,MAAM,aAAa,CAAA;AACrD,OAAO,EAAE,yBAAyB,EAAgB,MAAM,+CAA+C,CAAA;AAGvG,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAA;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAA;AAErE,MAAM,UAAU,qBAAqB,CACnC,WAAiC;IAEjC,MAAM,OAAO,GAAG,WAAW,CAAC,MAAiB,CAAA;IAC7C,MAAM,IAAI,GAAG,WAAW,CAAC,QAAkB,CAAA;IAC3C,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;AAC/B,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,KAAU;IAEV,OAAO;QACL,SAAS,EAAE,KAAK;QAChB,SAAS,EAAE,QAAQ;QACnB,KAAK;QACL,oBAAoB,EAAE,sBAAsB;QAC5C,WAAW,EAAE,sBAAsB;QACnC,OAAO,EAAE,iBAAiB;QAE1B,iDAAiD;QACjD,eAAe,EAAE,kCAAkC,EAAE,+DAA+D;QACpH,aAAa,EAAE,mBAAmB,EAAE,+DAA+D;QACnG,wGAAwG;KACzG,CAAA;AACH,CAAC;AAED,SAAS,mBAAmB,CAC1B,QAAuB,EAAE,WAAW;AACpC,WAAwB,EACxB,YAAwB;IAExB,IAAG,QAAQ,KAAK,WAAW,CAAC,KAAK,EAAE,CAAC;QAClC,OAAO,CAAC,CAAA;IACV,CAAC;IAED,OAAO,wBAAwB,CAC7B,WAAW,EACX,QAAQ,EACR,YAAY,CACb,CAAA;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAU,EAAE,6DAA6D;AACzE,WAAwB,EACxB,YAAwB,EACxB,YAAmB,EACnB,SAAmB;IAEnB,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IAExC,YAAY,GAAG,WAAW,CAAC,WAAmB,CAAA;IAE9C,kCAAkC;IAClC,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,GAAG,CAAC,eAAe,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,SAAS,gBAAgB,CAAC,CAAO;gBAC/G,WAAW,CAAC,cAAc,GAAG,CAAC,CAAA;gBAC9B,OAAO,WAAW,CAAC,KAAK,CAAA;YAC1B,CAAC,EAAE,wBAAwB,CAAC,CAAC,CAAA;IAC7B,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC3B,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,OAAoB;IAEpB,MAAM,GAAG,GAAG,OAAO,CAAC,cAAyB,CAAA;IAE7C,IAAI,CAAC,GAAG,EAAG,CAAC;QACV,kCAAkC;QAClC,IAAI,OAAO,CAAC,KAAK,EAAG,CAAC;YACnB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,YAAY,CAAA;YAC/B,OAAM,CAAC,yDAAyD;QAClE,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,CAAA;QAC7F,IAAI,IAAI,EAAG,CAAC;YACV,OAAM,CAAC,gCAAgC;QACzC,CAAC;IACH,CAAC;IAGD,OAAO,OAAO,CAAC,cAAc,CAAA;IAC7B,eAAe,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAA;AAC3C,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,QAAiB,EACjB,WAAwB;IAExB,MAAM,UAAU,GAAG,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,CAAA;IAC9D,MAAM,eAAe,GAAG,UAAU,IAAI,QAAQ,KAAK,WAAW,CAAC,KAAK,CAAA,CAAC,4CAA4C;IACjH,IAAG,eAAe,EAAE,CAAC;QACnB,OAAO,CAAC,CAAA,CAAE,0CAA0C;IACtD,CAAC;IAED,OAAO,CAAC,CAAA,CAAC,yBAAyB;AACpC,CAAC;AAED,MAAM,UAAU,kCAAkC,CAChD,QAAiB,EACjB,WAAwB;IAExB,MAAM,UAAU,GAAG,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,CAAA;IAC9D,MAAM,eAAe,GAAG,UAAU,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAM,CAAC,QAAQ,CAAQ,CAAC,CAAC,CAAA;IAEnH,IAAG,eAAe,EAAE,CAAC;QACnB,6CAA6C;QAC7C,yBAAyB,CACvB,QAAwB,EACxB,WAAW,CACZ,CAAA;QAED,OAAO,CAAC,CAAA,CAAE,0CAA0C;IACtD,CAAC;IAED,iBAAiB,CAAC,WAAW,CAAC,CAAA;IAE9B,OAAO,CAAC,CAAA,CAAC,yBAAyB;AACpC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host.function.js","sourceRoot":"","sources":["../../ts/TagJsTags/host.function.ts"],"names":[],"mappings":"AACA,OAAO,EAA0C,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAC5D,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AAErG,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,mDAAmD,CAAA;
|
|
1
|
+
{"version":3,"file":"host.function.js","sourceRoot":"","sources":["../../ts/TagJsTags/host.function.ts"],"names":[],"mappings":"AACA,OAAO,EAA0C,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAC5D,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AAErG,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,mDAAmD,CAAA;AAmB3F;;GAEG;AACH,MAAM,UAAU,IAAI,CAClB,QAAW,EACX,UAAmB,EAAE;IAErB,MAAM,QAAQ,GAAG;QACf,SAAS,EAAE,UAAU,CAAC,IAAI;QAC1B,oBAAoB,EAAE,oBAAoB;QAC1C,uCAAuC;QACvC,eAAe,EAAE,GAAG,EAAE,CAAC,CAAC;QACxB,WAAW,EAAE,WAAW,EAAE,mEAAmE;QAC7F,aAAa,EAAE,iBAAiB;QAChC,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAgB;QAC/C,gBAAgB,CAAC,MAAW,EAAE,OAAoB;YAChD,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,CAAA;YAC/B,IAAG,CAAC,OAAO,EAAE,CAAC;gBACZ,OAAM;YACR,CAAC;YAED,MAAM,cAAc,GAAG,OAAO,EAAE,QAAQ,CAAA;YACxC,8DAA8D;YAC9D,IAAG,cAAc,KAAK,QAAQ,EAAE,CAAC;gBAC/B,OAAO,OAAO,CAAA;YAChB,CAAC;YAED,OAAM;QACR,CAAC;KACF,CAAA;IAED,MAAM,cAAc,GAAG,CAAC,GAAG,IAAW,EAAE,EAAE;QACxC,MAAM,SAAS,GAAG;YAChB,GAAG,cAAc;YACjB,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAgB;SACjE,CAAA;QAED,OAAO,SAAS,CAAA;IAClB,CAAC,CAAA;IAED,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAA;IACvC,wCAAwC;IAExC,OAAO,cAA6C,CAAA;AACtD,CAAC;AAYD,6CAA6C;AAC7C,CAAC;AAAC,IAAY,CAAC,MAAM,GAAG,CAAC,QAAsB,EAAa,EAAE;IAC5D,OAAO,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;AAC7C,CAAC,CAEA;AAAC,IAAY,CAAC,SAAS,GAAG,CAAC,QAAsB,EAAa,EAAE;IAC/D,OAAO,IAAI,CACT,GAAG,EAAE,GAAE,CAAC,EACR,EAAE,SAAS,EAAE,QAAQ,EAAE,CACxB,CAAA;AACH,CAAC,CAAA;AAED,SAAS,iBAAiB,CACxB,QAAuB,EACvB,WAAwB,EACxB,YAAwB;IAExB,MAAM,UAAU,GAAG,uBAAuB,CACxC,UAAU,CAAC,IAAI,EACf,QAAQ;IACR,YAAY;IACZ,YAAY,EACZ,WAAW,CACZ,CAAA;IAED,IAAI,UAAU,EAAG,CAAC;QAChB,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,MAAM,WAAW,GAAG,WAAW,CAAC,QAAqB,CAAA;IACrD,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAA;IAEtC,0FAA0F;IAC1F,MAAM,OAAO,GAAG,QAAgC,CAAA;IAEhD,OAAO,CAAC,WAAW,CAAC,CAAA;IAEpB,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,IAAI,UAAU,CAAC,SAAS,IAAI,EAAE,CAAC,CAAA;IACtE,WAAW,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAA;IAE3D,cAAc,CAAC,WAAW,CAAC,CAAA;AAC7B,CAAC;AAED,SAAS,oBAAoB,CAC3B,IAAY,EACZ,KAAU,EAAE,6DAA6D;AACzE,OAAoB,EACpB,QAAuB,EAAE,2BAA2B;AACpD,WAAiC;IAEjC,OAAO,WAAW,CAChB,QAAQ,EACR,WAA0C,CAC3C,CAAA;AACH,CAAC;AAED,8BAA8B;AAC9B,SAAS,WAAW,CAClB,QAAuB,EACvB,OAAoB;IAEpB,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAA;IAC9B,MAAM,KAAK,GAAI,OAAoC,CAAC,KAAK,GAAG,EAAE,CAAA;IAC9D,SAAS,CAAC,OAAO,CAAC,CAAA;IAClB,mBAAmB,CACjB,OAA2B,EAC3B,QAAqB,EACrB,OAAO,EACP,KAAK,CACN,CAAA;IAED,cAAc,CAAC,OAAO,CAAC,CAAA;AACzB,CAAC;AACD,qBAAqB;AACrB,SAAS,mBAAmB,CAC1B,OAAyB,EACzB,QAAmB,EACnB,WAAwB,EACxB,KAAU;IAEV,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAA;IAC7C,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAA;IAEtD,kDAAkD;IAClD,WAAW,CAAC,WAAW,GAAG,WAAW,CAAA;IAErC,aAAa;IACb,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;IAChC,IAAG,OAAO,CAAC,MAAM,EAAE,CAAC;QAClB,yDAAyD;QACzD,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,CAAC,CAAA;IACvD,CAAC;IAED,OAAO,WAAW,CAAA;AACpB,CAAC;AAED,SAAS,UAAU,CACjB,WAAwB;IAExB,EAAE,WAAW,CAAC,WAAW,CAAA;IACzB,MAAM,WAAW,GAAG,WAA0C,CAAA;IAC9D,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAqB,CAAA;IAClD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;IAEhC,IAAG,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;QAC3C,gCAAgC;QAChC,iBAAiB,CAAC,WAAW,CAAC,CAAA;QAE9B,gBAAgB,CACd,EAAE,EACF,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EACpD,WAAW,CACZ,CAAA;QAED,gCAAgC;QAChC,oBAAoB,EAAE,CAAA;IACxB,CAAC;IAED,aAAa;IACb,uDAAuD;IACvD,IAAG,OAAO,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,WAAW,CAAC,MAAiB,CAAA;QAE7C,MAAM,WAAW,GAAG,SAAS,kBAAkB;YAC7C,iBAAiB,CAAC,WAAW,CAAC,CAAA;YAE9B,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAC9B,OAA2B,EAC3B,QAAQ,EACR,WAAW,EACV,WAAwC,CAAC,KAAK,CAChD,CAAA;YAED,oBAAoB,EAAE,CAAA;YAEtB,OAAO,MAAM,CAAA;QACf,CAAC,CAAA;QAED,MAAM,UAAU,GAAI,WAAmB,CAAC,UAAwB,CAAA;QAChE,OAAO,gBAAgB,CACrB,EAAE,EACF,WAAW,EACX,UAAU,CAAC,OAAO,CACnB,CAAA;IACH,CAAC;AACH,CAAC"}
|
package/js/TagJsTags/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export * from './subscribe.function.js';
|
|
2
2
|
export * from './getInnerHTML.function.js';
|
|
3
3
|
export * from './tag.function.js';
|
|
4
|
-
export { checkSimpleValueChange, deleteSimpleValue } from './
|
|
4
|
+
export { checkSimpleValueChange, deleteSimpleValue } from './getStringTagVar.function.js';
|
|
5
5
|
export { pipe } from './pipe.function.js';
|
|
6
6
|
export * from './host.function.js';
|
|
7
7
|
export { valueToTagJsVar } from './valueToTagJsVar.function.js';
|
package/js/TagJsTags/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export * from './subscribe.function.js';
|
|
2
2
|
export * from './getInnerHTML.function.js';
|
|
3
3
|
export * from './tag.function.js';
|
|
4
|
-
export { checkSimpleValueChange, deleteSimpleValue } from './
|
|
4
|
+
export { checkSimpleValueChange, deleteSimpleValue } from './getStringTagVar.function.js';
|
|
5
5
|
export { pipe } from './pipe.function.js';
|
|
6
6
|
export * from './host.function.js';
|
|
7
7
|
export { valueToTagJsVar } from './valueToTagJsVar.function.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { isSpecialAttr } from "../interpolations/attributes/isSpecialAttribute.function.js";
|
|
2
2
|
import { processNonDynamicAttr } from "../interpolations/attributes/processNameValueAttribute.function.js";
|
|
3
|
-
import { checkSimpleValueChange, deleteSimpleAttribute } from "./
|
|
3
|
+
import { checkSimpleValueChange, deleteSimpleAttribute } from "./getStringTagVar.function.js";
|
|
4
4
|
import { processAttributeUpdate } from "./processAttributeUpdate.function.js";
|
|
5
5
|
/** init runner */
|
|
6
6
|
export function processSimpleAttribute(name, value, // TemplateValue | StringTag | SubscribeValue | SignalObject,
|
|
@@ -63,9 +63,7 @@ export declare enum PropWatches {
|
|
|
63
63
|
NONE = "none",
|
|
64
64
|
IMMUTABLE = "immutable"
|
|
65
65
|
}
|
|
66
|
-
/** Wraps a function tag in a state manager and calls wrapped function on event cycles
|
|
67
|
-
* For single rendering, no event cycles, use: tag.renderOnce = (props) => html``
|
|
68
|
-
*/
|
|
66
|
+
/** Wraps a function tag in a state manager and calls wrapped function on event cycles */
|
|
69
67
|
export declare function tag<T extends ToTag>(tagComponent: T, propWatch?: PropWatches): TaggedFunction<T>;
|
|
70
68
|
type outputAlias = typeof output;
|
|
71
69
|
type getInnerHTMLAlias = typeof getInnerHTML;
|
|
@@ -75,7 +73,6 @@ export declare namespace tag {
|
|
|
75
73
|
*/
|
|
76
74
|
let use: typeof tagUseFn;
|
|
77
75
|
/** Used to create a tag component that renders once and has no addition rendering cycles */
|
|
78
|
-
let renderOnce: typeof renderOnceFn;
|
|
79
76
|
let route: typeof routeFn;
|
|
80
77
|
let app: (_routeTag: RouteTag) => StateToTag;
|
|
81
78
|
let deepPropWatch: typeof tag;
|
|
@@ -97,7 +94,6 @@ type ReturnTag = AnyTag | StateToTag | null | undefined;
|
|
|
97
94
|
* Example: export default tag.route = (routeProps: RouteProps) => (state) => html``
|
|
98
95
|
*/
|
|
99
96
|
declare function routeFn(_routeProps: RouteProps): StateToTag;
|
|
100
|
-
declare function renderOnceFn(): ReturnTag;
|
|
101
97
|
/** Used to create variable scoping when calling a function that lives within a prop container function */
|
|
102
98
|
declare function tagUseFn(): ReturnTag;
|
|
103
99
|
export {};
|
|
@@ -5,7 +5,6 @@ import { getTemplaterResult } from '../tag/getTemplaterResult.function.js';
|
|
|
5
5
|
import { tags } from '../tag/tag.utils.js';
|
|
6
6
|
import { getTagWrap } from '../tag/getTagWrap.function.js';
|
|
7
7
|
import { ValueTypes } from '../tag/ValueTypes.enum.js';
|
|
8
|
-
import { processRenderOnceInit } from '../render/update/processRenderOnceInit.function.js';
|
|
9
8
|
import { processTagComponentInit } from '../tag/update/processTagComponentInit.function.js';
|
|
10
9
|
import { checkTagValueChangeAndUpdate } from '../tag/checkTagValueChange.function.js';
|
|
11
10
|
import { destroySupportByContextItem } from '../tag/destroySupportByContextItem.function.js';
|
|
@@ -63,9 +62,7 @@ export var PropWatches;
|
|
|
63
62
|
PropWatches["NONE"] = "none";
|
|
64
63
|
PropWatches["IMMUTABLE"] = "immutable";
|
|
65
64
|
})(PropWatches || (PropWatches = {}));
|
|
66
|
-
/** Wraps a function tag in a state manager and calls wrapped function on event cycles
|
|
67
|
-
* For single rendering, no event cycles, use: tag.renderOnce = (props) => html``
|
|
68
|
-
*/
|
|
65
|
+
/** Wraps a function tag in a state manager and calls wrapped function on event cycles */
|
|
69
66
|
export function tag(tagComponent, propWatch = PropWatches.SHALLOW) {
|
|
70
67
|
// ): TagJsComponent<any> {
|
|
71
68
|
/** function developer triggers */
|
|
@@ -115,9 +112,6 @@ export function tag(tagComponent, propWatch = PropWatches.SHALLOW) {
|
|
|
115
112
|
function routeFn(_routeProps) {
|
|
116
113
|
throw new Error('Do not call tag.route as a function but instead set it as: `tag.route = (routeProps: RouteProps) => (state) => html`` `');
|
|
117
114
|
}
|
|
118
|
-
function renderOnceFn() {
|
|
119
|
-
throw new Error('Do not call tag.renderOnce as a function but instead set it as: `(props) => tag.renderOnce = () => html`` `');
|
|
120
|
-
}
|
|
121
115
|
/** Used to create variable scoping when calling a function that lives within a prop container function */
|
|
122
116
|
function tagUseFn() {
|
|
123
117
|
throw new Error('Do not call tag.use as a function but instead set it as: `(props) => tag.use = (use) => html`` `');
|
|
@@ -125,7 +119,6 @@ function tagUseFn() {
|
|
|
125
119
|
// actually placing of items into tag memory
|
|
126
120
|
;
|
|
127
121
|
tag.element = tagElement;
|
|
128
|
-
tag.renderOnce = renderOnceFn;
|
|
129
122
|
tag.use = tagUseFn;
|
|
130
123
|
tag.deepPropWatch = tag;
|
|
131
124
|
tag.route = routeFn;
|
|
@@ -146,17 +139,6 @@ tag.watchProps = function watchProps(tagComponent) {
|
|
|
146
139
|
return tag(tagComponent, PropWatches.SHALLOW);
|
|
147
140
|
};
|
|
148
141
|
/* BELOW: Cast functions into setters with no getters */
|
|
149
|
-
Object.defineProperty(tag, 'renderOnce', {
|
|
150
|
-
set(oneRenderFunction) {
|
|
151
|
-
oneRenderFunction.tagJsType = ValueTypes.renderOnce;
|
|
152
|
-
oneRenderFunction.processInit = processRenderOnceInit;
|
|
153
|
-
oneRenderFunction.processUpdate = tagValueUpdateHandler;
|
|
154
|
-
oneRenderFunction.destroy = destroySupportByContextItem;
|
|
155
|
-
oneRenderFunction.hasValueChanged = function renderOnceNeverChanges() {
|
|
156
|
-
return 0;
|
|
157
|
-
};
|
|
158
|
-
},
|
|
159
|
-
});
|
|
160
142
|
Object.defineProperty(tag, 'use', {
|
|
161
143
|
set(renderFunction) {
|
|
162
144
|
renderFunction.original = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag.function.js","sourceRoot":"","sources":["../../ts/TagJsTags/tag.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAA;
|
|
1
|
+
{"version":3,"file":"tag.function.js","sourceRoot":"","sources":["../../ts/TagJsTags/tag.function.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { isArray } from '../isInstance.js';
|
|
2
|
-
import { getSimpleTagVar } from './
|
|
2
|
+
import { getSimpleTagVar } from './getStringTagVar.function.js';
|
|
3
3
|
import { getArrayTagVar } from './getArrayTagJsTag.function.js';
|
|
4
4
|
export function valueToTagJsVar(value) {
|
|
5
5
|
const tagJsType = value?.tagJsType;
|
|
@@ -1,109 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { TagJsTag } from
|
|
5
|
-
import
|
|
6
|
-
import { ElementVarBase } from './ElementVarBase.type.js';
|
|
7
|
-
export type CombinedElementFunctions = ElementVarBase & {
|
|
8
|
-
/** array value metadata */
|
|
9
|
-
key: KeyFunction;
|
|
10
|
-
/** Inline CSS styles for the element */
|
|
11
|
-
style: AttributeCallable;
|
|
12
|
-
/** Unique identifier used for selectors and linking */
|
|
13
|
-
id: AttributeCallable;
|
|
14
|
-
/** CSS class names used for styling and state */
|
|
15
|
-
class: AttributeCallable;
|
|
16
|
-
/** Main value for `meta` tags (depends on paired `name`/`charset`/etc.) */
|
|
17
|
-
content: AttributeCallable;
|
|
18
|
-
/** Character encoding declaration (commonly on `meta`) */
|
|
19
|
-
charset: AttributeCallable;
|
|
20
|
-
/** Relationship type for linked resources (e.g. stylesheet, icon) */
|
|
21
|
-
rel: AttributeCallable;
|
|
22
|
-
/** Vertical alignment hint (legacy/compat usage) */
|
|
23
|
-
valign: AttributeCallable;
|
|
24
|
-
/** URL target for links and related elements */
|
|
25
|
-
href: AttributeCallable;
|
|
26
|
-
/** Current/input value for form controls */
|
|
27
|
-
value: AttributeCallable;
|
|
28
|
-
/** Hint text shown when input has no value */
|
|
29
|
-
placeholder: AttributeCallable;
|
|
30
|
-
/** Minimum allowed character length */
|
|
31
|
-
minLength: AttributeCallable;
|
|
32
|
-
/** Maximum allowed character length */
|
|
33
|
-
maxLength: AttributeCallable;
|
|
34
|
-
/** Minimum numeric/date range value */
|
|
35
|
-
min: AttributeCallable;
|
|
36
|
-
/** Maximum numeric/date range value */
|
|
37
|
-
max: AttributeCallable;
|
|
38
|
-
/** Step interval for numeric/date inputs */
|
|
39
|
-
step: AttributeCallable;
|
|
40
|
-
/** Field name used for forms and metadata */
|
|
41
|
-
name: AttributeCallable;
|
|
42
|
-
/** Text wrapping behavior (commonly for `textarea`) */
|
|
43
|
-
wrap: AttributeCallable;
|
|
44
|
-
/** Browsing context target (e.g. `_blank`) */
|
|
45
|
-
target: AttributeCallable;
|
|
46
|
-
/** Source URL for embedded media/content */
|
|
47
|
-
src: AttributeCallable;
|
|
48
|
-
/** Visible text rows (commonly for `textarea`) */
|
|
49
|
-
rows: AttributeCallable;
|
|
50
|
-
/** Element/input type behavior */
|
|
51
|
-
type: AttributeCallable;
|
|
52
|
-
/** Advisory text, often shown as tooltip */
|
|
53
|
-
title: AttributeCallable;
|
|
54
|
-
/** Alternative text for non-text content (e.g. images) */
|
|
55
|
-
alt: AttributeCallable;
|
|
56
|
-
/** Preferred element width */
|
|
57
|
-
width: AttributeCallable;
|
|
58
|
-
/** Preferred element height */
|
|
59
|
-
height: AttributeCallable;
|
|
60
|
-
/** Language tag for content and accessibility tooling */
|
|
61
|
-
lang: AttributeCallable;
|
|
62
|
-
/** Loading strategy hint (e.g. lazy/eager) */
|
|
63
|
-
loading: AttributeCallable;
|
|
64
|
-
/** Associates a label/output element with a control id */
|
|
65
|
-
for: AttributeCallable;
|
|
66
|
-
/** Marks control as non-interactive */
|
|
67
|
-
disabled: AttributeCallable;
|
|
68
|
-
/** Marks checkbox/radio as selected */
|
|
69
|
-
checked: AttributeCallable;
|
|
70
|
-
/** Marks option as selected in a list */
|
|
71
|
-
selected: AttributeCallable;
|
|
72
|
-
/** Inner cell spacing in table layouts (legacy/compat usage) */
|
|
73
|
-
cellPadding: AttributeCallable;
|
|
74
|
-
/** Space between table cells (legacy/compat usage) */
|
|
75
|
-
cellSpacing: AttributeCallable;
|
|
76
|
-
/** Requests focus when element is initialized */
|
|
77
|
-
autoFocus: AttributeCallable;
|
|
78
|
-
/** Border size hint (legacy/compat usage) */
|
|
79
|
-
border: AttributeCallable;
|
|
80
|
-
/** Accessible label when visible text is missing/insufficient */
|
|
81
|
-
ariaLabel: AttributeCallable;
|
|
82
|
-
/** Referrer information policy used for outgoing requests */
|
|
83
|
-
referrerPolicy: AttributeCallable;
|
|
84
|
-
/** SVG viewport and coordinate system definition */
|
|
85
|
-
viewBox: AttributeCallable;
|
|
86
|
-
/** SVG fill paint for shapes/text */
|
|
87
|
-
fill: AttributeCallable;
|
|
88
|
-
attr: (nameOrValue: AttrValue, value?: AttrValue) => ElementFunction;
|
|
89
|
-
attrs: (nameValuePairs: {
|
|
90
|
-
[name: string]: AttrValue;
|
|
91
|
-
}) => ElementFunction;
|
|
92
|
-
contextMenu: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
93
|
-
onClick: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
94
|
-
onDoubleClick: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
95
|
-
onDblClick: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
96
|
-
onBlur: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
97
|
-
onChange: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
98
|
-
onInput: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
99
|
-
onKeyUp: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
100
|
-
onKeyDown: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
101
|
-
onMouseOver: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
102
|
-
onMouseOut: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
103
|
-
onMouseUp: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
104
|
-
onMouseDown: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
105
|
-
onClose: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
106
|
-
};
|
|
1
|
+
import { ContextItem } from "../tag/ContextItem.type.js";
|
|
2
|
+
import { InputElementTargetEvent } from "../TagJsEvent.type.js";
|
|
3
|
+
import { TagJsComponent } from "../TagJsTags/index.js";
|
|
4
|
+
import { TagJsTag } from "../TagJsTags/TagJsTag.type.js";
|
|
5
|
+
import { CombinedElementFunctions } from "./elementAttributes.array.js";
|
|
107
6
|
type HtmlBasic = void | Date | string | boolean | TagJsTag<any> | number | null | undefined;
|
|
108
7
|
export type ToHtmlItem = ((_: InputElementTargetEvent) => (HtmlItem | HtmlItem[] | TagJsComponent<any> | TagJsComponent<any>[]));
|
|
109
8
|
export type HtmlItem = /*(
|
|
@@ -3,9 +3,16 @@ function isTemplateStringsArray(value) {
|
|
|
3
3
|
Object.prototype.hasOwnProperty.call(value, 'raw'));
|
|
4
4
|
}
|
|
5
5
|
export function makeAttrCallable(attrName, attr) {
|
|
6
|
-
return function (item, stringsOrValue, values) {
|
|
6
|
+
return function makeAttrCallableFunction(item, stringsOrValue, values) {
|
|
7
7
|
if (isTemplateStringsArray(stringsOrValue)) {
|
|
8
|
-
const
|
|
8
|
+
const parts = [];
|
|
9
|
+
for (let index = 0; index < stringsOrValue.length; ++index) {
|
|
10
|
+
parts.push(stringsOrValue[index]);
|
|
11
|
+
if (index < values.length) {
|
|
12
|
+
parts.push(String(values[index] ?? ''));
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
const attrValue = parts.join('');
|
|
9
16
|
return attr(item, [attrName, attrValue]);
|
|
10
17
|
}
|
|
11
18
|
return attr(item, [attrName, stringsOrValue]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attributeCallables.js","sourceRoot":"","sources":["../../ts/elements/attributeCallables.ts"],"names":[],"mappings":"AAWA,SAAS,sBAAsB,CAAC,KAAU;IACxC,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACpB,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CACnD,CAAA;AACH,CAAC;AAQD,MAAM,UAAU,gBAAgB,CAAC,QAAgB,EAAE,IAAY;IAC7D,OAAO,
|
|
1
|
+
{"version":3,"file":"attributeCallables.js","sourceRoot":"","sources":["../../ts/elements/attributeCallables.ts"],"names":[],"mappings":"AAWA,SAAS,sBAAsB,CAAC,KAAU;IACxC,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACpB,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CACnD,CAAA;AACH,CAAC;AAQD,MAAM,UAAU,gBAAgB,CAAC,QAAgB,EAAE,IAAY;IAC7D,OAAO,SAAS,wBAAwB,CACtC,IAAS,EACT,cAAwF,EACxF,MAAa;QAEb,IAAI,sBAAsB,CAAC,cAAc,CAAC,EAAE,CAAC;YAC3C,MAAM,KAAK,GAAa,EAAE,CAAA;YAC1B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,cAAc,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC;gBAC3D,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAW,CAAC,CAAA;gBAC3C,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC1B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;gBACzC,CAAC;YACH,CAAC;YAED,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAChC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAA;QAC1C,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAA;IAC/C,CAAC,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { KeyFunction } from '../index.js';
|
|
2
|
+
import { InputElementTargetEvent } from '../TagJsEvent.type.js';
|
|
3
|
+
import type { AttributeCallable } from './attributeCallables.js';
|
|
4
|
+
import { AttrValue, ElementFunction } from './ElementFunction.type.js';
|
|
5
|
+
import { ElementVarBase } from "./ElementVarBase.type";
|
|
6
|
+
export declare const ATTRIBUTE_CALLABLE_DEFS: Array<[apiName: string, attrName: string]>;
|
|
7
|
+
export type CombinedElementFunctions = ElementVarBase & {
|
|
8
|
+
/** array value metadata */
|
|
9
|
+
key: KeyFunction;
|
|
10
|
+
/** Inline CSS styles for the element */
|
|
11
|
+
style: AttributeCallable;
|
|
12
|
+
/** Unique identifier used for selectors and linking */
|
|
13
|
+
id: AttributeCallable;
|
|
14
|
+
/** CSS class names used for styling and state */
|
|
15
|
+
class: AttributeCallable;
|
|
16
|
+
/** Main value for `meta` tags (depends on paired `name`/`charset`/etc.) */
|
|
17
|
+
content: AttributeCallable;
|
|
18
|
+
/** Character encoding declaration (commonly on `meta`) */
|
|
19
|
+
charset: AttributeCallable;
|
|
20
|
+
/** Relationship type for linked resources (e.g. stylesheet, icon) */
|
|
21
|
+
rel: AttributeCallable;
|
|
22
|
+
/** Vertical alignment hint (legacy/compat usage) */
|
|
23
|
+
valign: AttributeCallable;
|
|
24
|
+
open: boolean;
|
|
25
|
+
/** URL target for links and related elements */
|
|
26
|
+
href: AttributeCallable;
|
|
27
|
+
/** Current/input value for form controls */
|
|
28
|
+
value: AttributeCallable;
|
|
29
|
+
/** Hint text shown when input has no value */
|
|
30
|
+
placeholder: AttributeCallable;
|
|
31
|
+
/** Minimum allowed character length */
|
|
32
|
+
minLength: AttributeCallable;
|
|
33
|
+
/** Maximum allowed character length */
|
|
34
|
+
maxLength: AttributeCallable;
|
|
35
|
+
/** Minimum numeric/date range value */
|
|
36
|
+
min: AttributeCallable;
|
|
37
|
+
/** Maximum numeric/date range value */
|
|
38
|
+
max: AttributeCallable;
|
|
39
|
+
/** Step interval for numeric/date inputs */
|
|
40
|
+
step: AttributeCallable;
|
|
41
|
+
/** Field name used for forms and metadata */
|
|
42
|
+
name: AttributeCallable;
|
|
43
|
+
/** Text wrapping behavior (commonly for `textarea`) */
|
|
44
|
+
wrap: AttributeCallable;
|
|
45
|
+
/** Browsing context target (e.g. `_blank`) */
|
|
46
|
+
target: AttributeCallable;
|
|
47
|
+
/** Source URL for embedded media/content */
|
|
48
|
+
src: AttributeCallable;
|
|
49
|
+
/** Visible text rows (commonly for `textarea`) */
|
|
50
|
+
rows: AttributeCallable;
|
|
51
|
+
/** Element/input type behavior */
|
|
52
|
+
type: AttributeCallable;
|
|
53
|
+
/** Advisory text, often shown as tooltip */
|
|
54
|
+
title: AttributeCallable;
|
|
55
|
+
/** Alternative text for non-text content (e.g. images) */
|
|
56
|
+
alt: AttributeCallable;
|
|
57
|
+
/** Preferred element width */
|
|
58
|
+
width: AttributeCallable;
|
|
59
|
+
/** Preferred element height */
|
|
60
|
+
height: AttributeCallable;
|
|
61
|
+
/** Language tag for content and accessibility tooling */
|
|
62
|
+
lang: AttributeCallable;
|
|
63
|
+
/** Loading strategy hint (e.g. lazy/eager) */
|
|
64
|
+
loading: AttributeCallable;
|
|
65
|
+
/** Associates a label/output element with a control id */
|
|
66
|
+
for: AttributeCallable;
|
|
67
|
+
/** Marks control as non-interactive */
|
|
68
|
+
disabled: AttributeCallable;
|
|
69
|
+
/** Marks checkbox/radio as selected */
|
|
70
|
+
checked: AttributeCallable;
|
|
71
|
+
/** Marks option as selected in a list */
|
|
72
|
+
selected: AttributeCallable;
|
|
73
|
+
/** Inner cell spacing in table layouts (legacy/compat usage) */
|
|
74
|
+
cellPadding: AttributeCallable;
|
|
75
|
+
/** Space between table cells (legacy/compat usage) */
|
|
76
|
+
cellSpacing: AttributeCallable;
|
|
77
|
+
/** Requests focus when element is initialized */
|
|
78
|
+
autoFocus: AttributeCallable;
|
|
79
|
+
/** Border size hint (legacy/compat usage) */
|
|
80
|
+
border: AttributeCallable;
|
|
81
|
+
/** Accessible label when visible text is missing/insufficient */
|
|
82
|
+
ariaLabel: AttributeCallable;
|
|
83
|
+
/** Referrer information policy used for outgoing requests */
|
|
84
|
+
referrerPolicy: AttributeCallable;
|
|
85
|
+
/** SVG viewport and coordinate system definition */
|
|
86
|
+
viewBox: AttributeCallable;
|
|
87
|
+
/** SVG fill paint for shapes/text */
|
|
88
|
+
fill: AttributeCallable;
|
|
89
|
+
attr: (nameOrValue: AttrValue, value?: AttrValue) => ElementFunction;
|
|
90
|
+
attrs: (nameValuePairs: {
|
|
91
|
+
[name: string]: AttrValue;
|
|
92
|
+
}) => ElementFunction;
|
|
93
|
+
contextMenu: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
94
|
+
onClick: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
95
|
+
onDoubleClick: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
96
|
+
onDblClick: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
97
|
+
onBlur: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
98
|
+
onChange: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
99
|
+
onInput: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
100
|
+
onKeyUp: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
101
|
+
onKeyDown: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
102
|
+
onMouseOver: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
103
|
+
onMouseOut: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
104
|
+
onMouseUp: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
105
|
+
onMouseDown: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
106
|
+
onClose: (callback: (e: InputElementTargetEvent) => any) => ElementFunction;
|
|
107
|
+
};
|