taggedjs 2.4.17 → 2.4.32

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.
Files changed (164) hide show
  1. package/bundle.js +1314 -1241
  2. package/bundle.js.map +1 -1
  3. package/js/Clones.type.d.ts +1 -1
  4. package/js/Tag.class.d.ts +5 -40
  5. package/js/Tag.class.js +2 -347
  6. package/js/Tag.class.js.map +1 -1
  7. package/js/TagSupport.class.d.ts +40 -6
  8. package/js/TagSupport.class.js +268 -30
  9. package/js/TagSupport.class.js.map +1 -1
  10. package/js/TemplaterResult.class.d.ts +13 -13
  11. package/js/TemplaterResult.class.js +34 -45
  12. package/js/TemplaterResult.class.js.map +1 -1
  13. package/js/afterInterpolateElement.function.d.ts +4 -0
  14. package/js/afterInterpolateElement.function.js +14 -0
  15. package/js/afterInterpolateElement.function.js.map +1 -0
  16. package/js/alterProps.function.d.ts +2 -4
  17. package/js/alterProps.function.js +7 -15
  18. package/js/alterProps.function.js.map +1 -1
  19. package/js/bindSubjectCallback.function.js +0 -3
  20. package/js/bindSubjectCallback.function.js.map +1 -1
  21. package/js/checkDestroyPrevious.function.d.ts +5 -5
  22. package/js/checkDestroyPrevious.function.js +20 -17
  23. package/js/checkDestroyPrevious.function.js.map +1 -1
  24. package/js/cloneValueArray.function.d.ts +2 -0
  25. package/js/cloneValueArray.function.js +19 -0
  26. package/js/cloneValueArray.function.js.map +1 -0
  27. package/js/deepFunctions.js +36 -29
  28. package/js/deepFunctions.js.map +1 -1
  29. package/js/destroy.support.d.ts +6 -0
  30. package/js/destroy.support.js +10 -0
  31. package/js/destroy.support.js.map +1 -0
  32. package/js/destroyTag.function.d.ts +2 -3
  33. package/js/destroyTag.function.js +7 -11
  34. package/js/destroyTag.function.js.map +1 -1
  35. package/js/hasTagSupportChanged.function.js +0 -12
  36. package/js/hasTagSupportChanged.function.js.map +1 -1
  37. package/js/index.d.ts +2 -1
  38. package/js/index.js +2 -1
  39. package/js/index.js.map +1 -1
  40. package/js/interpolateTemplate.js +0 -3
  41. package/js/interpolateTemplate.js.map +1 -1
  42. package/js/interpolations/bindSubjectCallback.function.d.ts +7 -0
  43. package/js/interpolations/bindSubjectCallback.function.js +40 -0
  44. package/js/interpolations/bindSubjectCallback.function.js.map +1 -0
  45. package/js/interpolations/elementInitCheck.d.ts +2 -0
  46. package/js/interpolations/elementInitCheck.js +18 -0
  47. package/js/interpolations/elementInitCheck.js.map +1 -0
  48. package/js/interpolations/inputAttribute.d.ts +1 -0
  49. package/js/interpolations/inputAttribute.js +19 -0
  50. package/js/interpolations/inputAttribute.js.map +1 -0
  51. package/js/interpolations/interpolateAttributes.d.ts +4 -0
  52. package/js/interpolations/interpolateAttributes.js +20 -0
  53. package/js/interpolations/interpolateAttributes.js.map +1 -0
  54. package/js/interpolations/interpolateContentTemplates.d.ts +9 -0
  55. package/js/interpolations/interpolateContentTemplates.js +42 -0
  56. package/js/interpolations/interpolateContentTemplates.js.map +1 -0
  57. package/js/interpolations/interpolateElement.d.ts +14 -0
  58. package/js/interpolations/interpolateElement.js +36 -0
  59. package/js/interpolations/interpolateElement.js.map +1 -0
  60. package/js/interpolations/interpolateTemplate.d.ts +32 -0
  61. package/js/interpolations/interpolateTemplate.js +80 -0
  62. package/js/interpolations/interpolateTemplate.js.map +1 -0
  63. package/js/interpolations/interpolations.d.ts +7 -0
  64. package/js/interpolations/interpolations.js +18 -0
  65. package/js/interpolations/interpolations.js.map +1 -0
  66. package/js/interpolations/processAttribute.function.d.ts +5 -0
  67. package/js/interpolations/processAttribute.function.js +122 -0
  68. package/js/interpolations/processAttribute.function.js.map +1 -0
  69. package/js/interpolations/scanTextAreaValue.function.d.ts +3 -0
  70. package/js/interpolations/scanTextAreaValue.function.js +16 -0
  71. package/js/interpolations/scanTextAreaValue.function.js.map +1 -0
  72. package/js/interpolations.js +1 -2
  73. package/js/interpolations.js.map +1 -1
  74. package/js/isInstance.d.ts +4 -1
  75. package/js/isInstance.js +12 -4
  76. package/js/isInstance.js.map +1 -1
  77. package/js/isLikeTags.function.d.ts +3 -1
  78. package/js/isLikeTags.function.js +15 -6
  79. package/js/isLikeTags.function.js.map +1 -1
  80. package/js/processNewValue.function.d.ts +3 -2
  81. package/js/processNewValue.function.js +27 -11
  82. package/js/processNewValue.function.js.map +1 -1
  83. package/js/processRegularValue.function.d.ts +1 -1
  84. package/js/processSubjectComponent.function.d.ts +5 -5
  85. package/js/processSubjectComponent.function.js +26 -34
  86. package/js/processSubjectComponent.function.js.map +1 -1
  87. package/js/processSubjectValue.function.d.ts +11 -7
  88. package/js/processSubjectValue.function.js +20 -7
  89. package/js/processSubjectValue.function.js.map +1 -1
  90. package/js/processTag.function.d.ts +8 -4
  91. package/js/processTag.function.js +23 -39
  92. package/js/processTag.function.js.map +1 -1
  93. package/js/processTagArray.d.ts +6 -4
  94. package/js/processTagArray.js +41 -39
  95. package/js/processTagArray.js.map +1 -1
  96. package/js/processTagResult.function.d.ts +4 -4
  97. package/js/processTagResult.function.js +14 -30
  98. package/js/processTagResult.function.js.map +1 -1
  99. package/js/renderExistingTag.function.d.ts +6 -6
  100. package/js/renderExistingTag.function.js +26 -22
  101. package/js/renderExistingTag.function.js.map +1 -1
  102. package/js/renderTagSupport.function.d.ts +2 -3
  103. package/js/renderTagSupport.function.js +17 -20
  104. package/js/renderTagSupport.function.js.map +1 -1
  105. package/js/setTagPlaceholder.function.d.ts +2 -0
  106. package/js/setTagPlaceholder.function.js +8 -0
  107. package/js/setTagPlaceholder.function.js.map +1 -0
  108. package/js/state/callbackMaker.function.d.ts +2 -2
  109. package/js/state/callbackMaker.function.js +4 -5
  110. package/js/state/callbackMaker.function.js.map +1 -1
  111. package/js/state/onDestroy.js +2 -2
  112. package/js/state/onDestroy.js.map +1 -1
  113. package/js/state/onInit.js +4 -5
  114. package/js/state/onInit.js.map +1 -1
  115. package/js/state/provider.utils.d.ts +2 -2
  116. package/js/state/provider.utils.js +11 -16
  117. package/js/state/provider.utils.js.map +1 -1
  118. package/js/state/providers.d.ts +8 -3
  119. package/js/state/providers.js +15 -18
  120. package/js/state/providers.js.map +1 -1
  121. package/js/state/setUse.function.d.ts +12 -10
  122. package/js/state/setUse.function.js.map +1 -1
  123. package/js/state/state.utils.d.ts +1 -3
  124. package/js/state/state.utils.js +19 -13
  125. package/js/state/state.utils.js.map +1 -1
  126. package/js/state/watch.function.d.ts +6 -1
  127. package/js/state/watch.function.js +8 -3
  128. package/js/state/watch.function.js.map +1 -1
  129. package/js/subject/Subject.class.d.ts +10 -6
  130. package/js/subject/Subject.class.js +26 -10
  131. package/js/subject/Subject.class.js.map +1 -1
  132. package/js/subject/Subject.utils.d.ts +7 -5
  133. package/js/subject/Subject.utils.js.map +1 -1
  134. package/js/subject/ValueSubject.d.ts +2 -2
  135. package/js/subject/ValueSubject.js +1 -1
  136. package/js/subject/ValueSubject.js.map +1 -1
  137. package/js/subject/combineLatest.function.js.map +1 -1
  138. package/js/subject.types.d.ts +18 -0
  139. package/js/subject.types.js +2 -0
  140. package/js/subject.types.js.map +1 -0
  141. package/js/tag.d.ts +1 -1
  142. package/js/tag.js +25 -31
  143. package/js/tag.js.map +1 -1
  144. package/js/tagElement.d.ts +3 -7
  145. package/js/tagElement.js +24 -24
  146. package/js/tagElement.js.map +1 -1
  147. package/js/tagRunner.d.ts +7 -6
  148. package/js/tagRunner.js +16 -8
  149. package/js/tagRunner.js.map +1 -1
  150. package/js/updateBeforeTemplate.function.d.ts +1 -1
  151. package/js/updateBeforeTemplate.function.js.map +1 -1
  152. package/js/updateContextItem.function.d.ts +3 -0
  153. package/js/updateContextItem.function.js +43 -0
  154. package/js/updateContextItem.function.js.map +1 -0
  155. package/js/updateExistingTagComponent.function.d.ts +4 -4
  156. package/js/updateExistingTagComponent.function.js +49 -87
  157. package/js/updateExistingTagComponent.function.js.map +1 -1
  158. package/js/updateExistingValue.function.d.ts +2 -7
  159. package/js/updateExistingValue.function.js +94 -50
  160. package/js/updateExistingValue.function.js.map +1 -1
  161. package/package.json +1 -1
  162. /package/js/{errors.d.ts → Errors.d.ts} +0 -0
  163. /package/js/{errors.js → Errors.js} +0 -0
  164. /package/js/{errors.js.map → Errors.js.map} +0 -0
@@ -1,8 +1,8 @@
1
- import { Tag } from './Tag.class';
2
1
  import { InterpolateSubject } from './processSubjectValue.function';
3
- import { Counts } from './interpolateTemplate';
2
+ import { Counts } from './interpolations/interpolateTemplate';
4
3
  import { InsertBefore } from './Clones.type';
4
+ import { TagSupport } from './TagSupport.class';
5
5
  export declare function checkDestroyPrevious(subject: InterpolateSubject, // existing.value is the old value
6
- newValue: unknown, insertBefore: InsertBefore): false | "array" | 2 | "different-tag" | 4;
7
- export declare function destroyArrayTag(tag: Tag, counts: Counts): void;
8
- export declare function restoreTagMarker(existingTag: Tag, insertBefore: InsertBefore): void;
6
+ newValue: unknown, insertBefore: InsertBefore): false | "array" | 2 | "different-tag" | "changed-simple-value";
7
+ export declare function destroyArrayTag(tagSupport: TagSupport, counts: Counts): void;
8
+ export declare function restoreTagMarker(lastSupport: TagSupport, insertBefore: InsertBefore): void;
@@ -1,4 +1,4 @@
1
- import { isTagArray, isTagComponent, isTagInstance } from './isInstance';
1
+ import { isTag, isTagArray, isTagComponent } from './isInstance';
2
2
  import { isLikeTags } from './isLikeTags.function';
3
3
  import { destroyTagMemory, destroyTagSupportPast } from './destroyTag.function';
4
4
  import { insertAfter } from './insertAfter.function';
@@ -12,22 +12,22 @@ newValue, insertBefore) {
12
12
  delete arraySubject.lastArray;
13
13
  delete arraySubject.placeholder;
14
14
  insertAfter(insertBefore, placeholderElm);
15
- wasArray.forEach(({ tag }) => destroyArrayTag(tag, { added: 0, removed: 0 }));
15
+ wasArray.forEach(({ tagSupport }) => destroyArrayTag(tagSupport, { added: 0, removed: 0 }));
16
16
  return 'array';
17
17
  }
18
18
  const tagSubject = subject;
19
- const existingTag = tagSubject.tag;
19
+ const lastSupport = tagSubject.tagSupport;
20
20
  // no longer tag or component?
21
- if (existingTag) {
22
- const isValueTag = isTagInstance(newValue);
23
- const isSubjectTag = isTagInstance(subject.value);
21
+ if (lastSupport) {
22
+ const isValueTag = isTag(newValue);
23
+ const isSubjectTag = isTag(subject.value);
24
24
  if (isSubjectTag && isValueTag) {
25
25
  const newTag = newValue;
26
26
  // its a different tag now
27
- if (!isLikeTags(newTag, existingTag)) {
27
+ if (!isLikeTags(newTag, lastSupport)) {
28
28
  // put template back down
29
- restoreTagMarker(existingTag, insertBefore);
30
- destroyTagMemory(existingTag, tagSubject);
29
+ restoreTagMarker(lastSupport, insertBefore);
30
+ destroyTagMemory(lastSupport, tagSubject);
31
31
  return 2;
32
32
  }
33
33
  return false;
@@ -37,9 +37,9 @@ newValue, insertBefore) {
37
37
  return false; // its still a tag component
38
38
  }
39
39
  // put template back down
40
- restoreTagMarker(existingTag, insertBefore);
40
+ restoreTagMarker(lastSupport, insertBefore);
41
41
  // destroy old component, value is not a component
42
- destroyTagMemory(existingTag, tagSubject);
42
+ destroyTagMemory(lastSupport, tagSubject);
43
43
  return 'different-tag';
44
44
  }
45
45
  const displaySubject = subject;
@@ -48,15 +48,18 @@ newValue, insertBefore) {
48
48
  // was simple value but now something bigger
49
49
  if (hasLastValue && lastValue !== newValue) {
50
50
  destroySimpleValue(insertBefore, displaySubject);
51
- return 4;
51
+ return 'changed-simple-value';
52
52
  }
53
53
  return false;
54
54
  }
55
- export function destroyArrayTag(tag, counts) {
56
- destroyTagSupportPast(tag.tagSupport);
57
- tag.destroy({
55
+ export function destroyArrayTag(tagSupport, counts) {
56
+ destroyTagSupportPast(tagSupport);
57
+ tagSupport.destroy({
58
58
  stagger: counts.removed++,
59
59
  });
60
+ const insertBefore = tagSupport.global.insertBefore;
61
+ const parentNode = insertBefore.parentNode;
62
+ parentNode.removeChild(insertBefore);
60
63
  }
61
64
  function destroySimpleValue(insertBefore, // always a template tag
62
65
  subject) {
@@ -68,8 +71,8 @@ subject) {
68
71
  delete subject.clone;
69
72
  delete subject.lastValue;
70
73
  }
71
- export function restoreTagMarker(existingTag, insertBefore) {
72
- const global = existingTag.tagSupport.templater.global;
74
+ export function restoreTagMarker(lastSupport, insertBefore) {
75
+ const global = lastSupport.global;
73
76
  const placeholderElm = global.placeholder;
74
77
  if (placeholderElm) {
75
78
  insertAfter(insertBefore, placeholderElm);
@@ -1 +1 @@
1
- {"version":3,"file":"checkDestroyPrevious.function.js","sourceRoot":"","sources":["../ts/checkDestroyPrevious.function.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checkDestroyPrevious.function.js","sourceRoot":"","sources":["../ts/checkDestroyPrevious.function.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Tag } from './Tag.class';
2
+ export declare function cloneValueArray<T>(values: (T | Tag | Tag[])[]): T[];
@@ -0,0 +1,19 @@
1
+ import { deepClone } from './deepFunctions';
2
+ import { isTagArray, isTagClass, isTagComponent, isTagTemplater } from './isInstance';
3
+ export function cloneValueArray(values) {
4
+ return values.map((value) => {
5
+ const tag = value;
6
+ if (isTagComponent(value)) {
7
+ const tagComponent = value;
8
+ return deepClone(tagComponent.props);
9
+ }
10
+ if (isTagClass(tag) || isTagTemplater(tag)) {
11
+ return cloneValueArray(tag.values);
12
+ }
13
+ if (isTagArray(tag)) {
14
+ return cloneValueArray(tag);
15
+ }
16
+ return deepClone(value);
17
+ });
18
+ }
19
+ //# sourceMappingURL=cloneValueArray.function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloneValueArray.function.js","sourceRoot":"","sources":["../ts/cloneValueArray.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAGrF,MAAM,UAAU,eAAe,CAAI,MAA2B;IAC5D,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QAC1B,MAAM,GAAG,GAAG,KAAY,CAAA;QAExB,IAAG,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,YAAY,GAAG,KAAwB,CAAA;YAC7C,OAAO,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;QACtC,CAAC;QAED,IAAG,UAAU,CAAC,GAAG,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,OAAO,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACpC,CAAC;QAED,IAAG,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACnB,OAAO,eAAe,CAAC,GAAuB,CAAC,CAAA;QACjD,CAAC;QAED,OAAO,SAAS,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC,CAAC,CAAA;AACJ,CAAC"}
@@ -40,51 +40,58 @@ export function deepEqual(obj1, obj2) {
40
40
  return isDeepEqual(obj1, obj2, new WeakMap());
41
41
  }
42
42
  function isDeepEqual(obj1, obj2, visited) {
43
- if (obj1 === obj2 || isSameFunctions(obj1, obj2)) {
43
+ const directEqual = obj1 === obj2;
44
+ if (directEqual || isSameFunctions(obj1, obj2)) {
44
45
  return true;
45
46
  }
46
- if (typeof obj1 !== 'object' ||
47
- typeof obj2 !== 'object' ||
48
- obj1 === null ||
49
- obj2 === null) {
50
- return false;
47
+ // If obj is already visited, return the cloned reference
48
+ if (visited.has(obj1)) {
49
+ return true;
50
+ }
51
+ if (typeof obj1 === 'object' && typeof obj2 === 'object') {
52
+ // both are dates and were already determined not the same
53
+ if (obj1 instanceof Date && obj2 instanceof Date) {
54
+ return false;
55
+ }
56
+ // Register the cloned object to avoid cyclic references
57
+ visited.set(obj1, 0);
58
+ // Check if obj1 and obj2 are both arrays
59
+ if (Array.isArray(obj1) && Array.isArray(obj2)) {
60
+ return isArrayDeepEqual(obj1, obj2, visited);
61
+ }
62
+ else if (Array.isArray(obj1) || Array.isArray(obj2)) {
63
+ // One is an array, and the other is not
64
+ return false;
65
+ }
66
+ return isObjectDeepEqual(obj1, obj2, visited);
51
67
  }
68
+ return false;
69
+ }
70
+ function isObjectDeepEqual(obj1, obj2, visited) {
52
71
  const keys1 = Object.keys(obj1);
53
72
  const keys2 = Object.keys(obj2);
73
+ if (keys1.length === 0 && keys2.length === 0) {
74
+ return true;
75
+ }
54
76
  if (keys1.length !== keys2.length) {
55
77
  return false;
56
78
  }
57
- // If obj is already visited, return the cloned reference
58
- if (visited.has(obj1)) {
59
- return true;
60
- }
61
- // Register the cloned object to avoid cyclic references
62
- visited.set(obj1, 0);
63
79
  for (const key of keys1) {
64
80
  const keyFound = keys2.includes(key);
65
81
  if (!keyFound || !isDeepEqual(obj1[key], obj2[key], visited)) {
66
- /*
67
- if(isSameFunctions(obj1[key], obj2[key])) {
68
- continue
69
- }
70
- */
71
82
  return false;
72
83
  }
73
84
  }
74
- // Check if obj1 and obj2 are both arrays
75
- if (Array.isArray(obj1) && Array.isArray(obj2)) {
76
- if (obj1.length !== obj2.length) {
85
+ return true;
86
+ }
87
+ function isArrayDeepEqual(obj1, obj2, visited) {
88
+ if (obj1.length !== obj2.length) {
89
+ return false;
90
+ }
91
+ for (let i = 0; i < obj1.length; i++) {
92
+ if (!isDeepEqual(obj1[i], obj2[i], visited)) {
77
93
  return false;
78
94
  }
79
- for (let i = 0; i < obj1.length; i++) {
80
- if (!isDeepEqual(obj1[i], obj2[i], visited)) {
81
- return false;
82
- }
83
- }
84
- }
85
- else if (Array.isArray(obj1) || Array.isArray(obj2)) {
86
- // One is an array, and the other is not
87
- return false;
88
95
  }
89
96
  return true;
90
97
  }
@@ -1 +1 @@
1
- {"version":3,"file":"deepFunctions.js","sourceRoot":"","sources":["../ts/deepFunctions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deepFunctions.js","sourceRoot":"","sources":["../ts/deepFunctions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { TagSupport } from './TagSupport.class';
2
+ export type DestroyOptions = {
3
+ stagger: number;
4
+ byParent?: boolean;
5
+ };
6
+ export declare function getChildTagsToDestroy(childTags: TagSupport[], allTags?: TagSupport[]): TagSupport[];
@@ -0,0 +1,10 @@
1
+ export function getChildTagsToDestroy(childTags, allTags = []) {
2
+ for (let index = childTags.length - 1; index >= 0; --index) {
3
+ const cTag = childTags[index];
4
+ allTags.push(cTag);
5
+ childTags.splice(index, 1);
6
+ getChildTagsToDestroy(cTag.childTags, allTags);
7
+ }
8
+ return allTags;
9
+ }
10
+ //# sourceMappingURL=destroy.support.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"destroy.support.js","sourceRoot":"","sources":["../ts/destroy.support.ts"],"names":[],"mappings":"AASA,MAAM,UAAU,qBAAqB,CACnC,SAAuB,EACvB,UAAwB,EAAE;IAE1B,KAAK,IAAI,KAAK,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC;QAC3D,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;QAE7B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAClB,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QAC1B,qBAAqB,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IAChD,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC"}
@@ -1,5 +1,4 @@
1
- import { TagSubject } from './Tag.utils';
2
- import { Tag } from './Tag.class';
1
+ import { TagSubject } from './subject.types';
3
2
  import { TagSupport } from './TagSupport.class';
4
- export declare function destroyTagMemory(tag: Tag, subject: TagSubject): void;
3
+ export declare function destroyTagMemory(oldTagSupport: TagSupport, subject: TagSubject): void;
5
4
  export declare function destroyTagSupportPast(oldTagSupport: TagSupport): void;
@@ -1,18 +1,14 @@
1
- export function destroyTagMemory(tag, subject) {
2
- const oldTagSupport = tag.tagSupport;
3
- if (subject != oldTagSupport.subject) {
4
- throw new Error('fff - subjects do not match');
5
- }
6
- delete subject.tag;
7
- delete oldTagSupport.subject.tag; // TODO: this line maybe not needed
1
+ export function destroyTagMemory(oldTagSupport, subject) {
2
+ delete subject.tagSupport;
3
+ delete oldTagSupport.subject.tagSupport; // TODO: this line maybe not needed
8
4
  // must destroy oldest which is tag with elements on stage
9
- const oldest = oldTagSupport.templater.global.oldest;
5
+ const oldest = oldTagSupport.global.oldest;
10
6
  oldest.destroy();
11
7
  destroyTagSupportPast(oldTagSupport);
12
- oldTagSupport.templater.global.context = {};
8
+ oldTagSupport.global.context = {};
13
9
  }
14
10
  export function destroyTagSupportPast(oldTagSupport) {
15
- delete oldTagSupport.templater.global.oldest;
16
- delete oldTagSupport.templater.global.newest;
11
+ delete oldTagSupport.global.oldest;
12
+ delete oldTagSupport.global.newest;
17
13
  }
18
14
  //# sourceMappingURL=destroyTag.function.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"destroyTag.function.js","sourceRoot":"","sources":["../ts/destroyTag.function.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,gBAAgB,CAC9B,GAAQ,EACR,OAAmB;IAEnB,MAAM,aAAa,GAAG,GAAG,CAAC,UAAU,CAAA;IAEpC,IAAG,OAAO,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;IAChD,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,CAAA;IAClB,OAAO,aAAa,CAAC,OAAO,CAAC,GAAG,CAAA,CAAC,mCAAmC;IAEpE,0DAA0D;IAC1D,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,MAAa,CAAA;IAC3D,MAAM,CAAC,OAAO,EAAE,CAAA;IAEhB,qBAAqB,CAAC,aAAa,CAAC,CAAA;IAEpC,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,GAAG,EAAE,CAAA;AAC7C,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,aAAyB;IAC7D,OAAO,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAA;IAC5C,OAAO,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAA;AAC9C,CAAC"}
1
+ {"version":3,"file":"destroyTag.function.js","sourceRoot":"","sources":["../ts/destroyTag.function.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,gBAAgB,CAC9B,aAAyB,EACzB,OAAmB;IAEnB,OAAQ,OAAyB,CAAC,UAAU,CAAA;IAC5C,OAAQ,aAAa,CAAC,OAAyB,CAAC,UAAU,CAAA,CAAC,mCAAmC;IAE9F,0DAA0D;IAC1D,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,MAAoB,CAAA;IACxD,MAAM,CAAC,OAAO,EAAE,CAAA;IAEhB,qBAAqB,CAAC,aAAa,CAAC,CAAA;IAEpC,aAAa,CAAC,MAAM,CAAC,OAAO,GAAG,EAAE,CAAA;AACnC,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,aAAyB;IAC7D,OAAO,aAAa,CAAC,MAAM,CAAC,MAAM,CAAA;IAClC,OAAO,aAAa,CAAC,MAAM,CAAC,MAAM,CAAA;AACpC,CAAC"}
@@ -1,17 +1,5 @@
1
1
  import { deepEqual } from "./deepFunctions";
2
2
  export function hasTagSupportChanged(oldTagSupport, newTagSupport, newTemplater) {
3
- const sameSupport = oldTagSupport === newTagSupport;
4
- const samePropConfig = oldTagSupport.propsConfig === newTagSupport.propsConfig;
5
- // const sameProps = oldTagSupport.propsConfig.latest === newTagSupport.propsConfig.latest
6
- if (sameSupport) {
7
- throw new Error('sameSupport - 22');
8
- }
9
- if (samePropConfig) {
10
- throw new Error('samePropConfig - 22');
11
- }
12
- if (newTagSupport.templater.isTag || oldTagSupport.templater.isTag || newTemplater.isTag) {
13
- throw new Error('trying to compare a basic tag');
14
- }
15
3
  const latestProps = newTemplater.props; // newTagSupport.propsConfig.latest
16
4
  const pastCloneProps = oldTagSupport.propsConfig.latestCloned;
17
5
  const propsChanged = hasPropChanges(latestProps, pastCloneProps);
@@ -1 +1 @@
1
- {"version":3,"file":"hasTagSupportChanged.function.js","sourceRoot":"","sources":["../ts/hasTagSupportChanged.function.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hasTagSupportChanged.function.js","sourceRoot":"","sources":["../ts/hasTagSupportChanged.function.ts"],"names":[],"mappings":"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"}
package/js/index.d.ts CHANGED
@@ -7,10 +7,11 @@ export * from "./subject/index";
7
7
  export * from "./isInstance";
8
8
  export * from "./state/index";
9
9
  export * from "./TagSupport.class";
10
- export * from "./interpolateElement";
10
+ export * from "./interpolations/interpolateElement";
11
11
  export { tagElement } from "./tagElement";
12
12
  export { Tag } from "./Tag.class";
13
13
  export { runBeforeRender } from "./tagRunner";
14
+ export { renderTagSupport } from "./renderTagSupport.function";
14
15
  export declare const hmr: {
15
16
  tagElement: typeof tagElement;
16
17
  };
package/js/index.js CHANGED
@@ -9,11 +9,12 @@ export * from "./isInstance";
9
9
  export * from "./state/index";
10
10
  export * from "./TagSupport.class";
11
11
  // export * from "./redrawTag.function"
12
- export * from "./interpolateElement";
12
+ export * from "./interpolations/interpolateElement";
13
13
  // TODO: export *
14
14
  export { tagElement } from "./tagElement";
15
15
  export { Tag } from "./Tag.class";
16
16
  export { runBeforeRender } from "./tagRunner";
17
+ export { renderTagSupport } from "./renderTagSupport.function";
17
18
  export const hmr = {
18
19
  tagElement,
19
20
  // redrawTag
package/js/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,cAAc,gCAAgC,CAAA;AAE9C,cAAc,OAAO,CAAA;AACrB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,oBAAoB,CAAA;AAClC,uCAAuC;AACvC,cAAc,sBAAsB,CAAA;AAEpC,iBAAiB;AACjB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAE7C,MAAM,CAAC,MAAM,GAAG,GAAG;IACjB,UAAU;IACV,YAAY;CACb,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,cAAc,gCAAgC,CAAA;AAE9C,cAAc,OAAO,CAAA;AACrB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,oBAAoB,CAAA;AAClC,uCAAuC;AACvC,cAAc,qCAAqC,CAAA;AAEnD,iBAAiB;AACjB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAE9D,MAAM,CAAC,MAAM,GAAG,GAAG;IACjB,UAAU;IACV,YAAY;CACb,CAAA"}
@@ -51,9 +51,6 @@ export function subscribeToTemplate(insertBefore, subject, ownerTag, counts, //
51
51
  updateExistingValue(subject, value, ownerTag, insertBefore);
52
52
  return;
53
53
  }
54
- if (!insertBefore.parentNode) {
55
- throw new Error('no insert before parent node - 3');
56
- }
57
54
  processSubjectValue(value, subject, insertBefore, ownerTag, {
58
55
  counts: { ...counts },
59
56
  forceElement: isForceElement,
@@ -1 +1 @@
1
- {"version":3,"file":"interpolateTemplate.js","sourceRoot":"","sources":["../ts/interpolateTemplate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interpolateTemplate.js","sourceRoot":"","sources":["../ts/interpolateTemplate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /** File largely responsible for reacting to element events, such as onclick */
2
+ import { TagSupport } from "../TagSupport.class";
3
+ export type Callback = (...args: any[]) => any & {
4
+ isChildOverride?: true;
5
+ };
6
+ export declare function bindSubjectCallback(value: Callback, tagSupport: TagSupport): Callback;
7
+ export declare function runTagCallback(value: Callback, tagSupport: TagSupport, bindTo: unknown, args: any[]): Promise<string> | "no-data-ever";
@@ -0,0 +1,40 @@
1
+ /** File largely responsible for reacting to element events, such as onclick */
2
+ import { renderTagSupport } from "../renderTagSupport.function";
3
+ export function bindSubjectCallback(value, tagSupport) {
4
+ // Is this children? No override needed
5
+ if (value.isChildOverride) {
6
+ return value;
7
+ }
8
+ const subjectFunction = (element, args) => runTagCallback(value, tagSupport, element, args);
9
+ // link back to original. Mostly used for <div oninit ondestroy> animations
10
+ subjectFunction.tagFunction = value;
11
+ return subjectFunction;
12
+ }
13
+ export function runTagCallback(value, tagSupport, bindTo, args) {
14
+ const renderCount = tagSupport.global.renderCount;
15
+ const method = value.bind(bindTo);
16
+ const callbackResult = method(...args);
17
+ const sameRenderCount = renderCount === tagSupport.global.renderCount;
18
+ // already rendered OR tag was deleted before event processing
19
+ if (!sameRenderCount || tagSupport.global.deleted) {
20
+ if (callbackResult instanceof Promise) {
21
+ return callbackResult.then(() => {
22
+ return 'promise-no-data-ever'; // tag was deleted during event processing
23
+ });
24
+ }
25
+ return 'no-data-ever'; // already rendered
26
+ }
27
+ renderTagSupport(tagSupport, true);
28
+ if (callbackResult instanceof Promise) {
29
+ return callbackResult.then(() => {
30
+ if (tagSupport.global.deleted) {
31
+ return 'promise-no-data-ever'; // tag was deleted during event processing
32
+ }
33
+ renderTagSupport(tagSupport, true);
34
+ return 'promise-no-data-ever';
35
+ });
36
+ }
37
+ // Caller always expects a Promise
38
+ return 'no-data-ever';
39
+ }
40
+ //# sourceMappingURL=bindSubjectCallback.function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bindSubjectCallback.function.js","sourceRoot":"","sources":["../../ts/interpolations/bindSubjectCallback.function.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAI/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAM/D,MAAM,UAAU,mBAAmB,CACjC,KAAe,EACf,UAAsB;IAEtB,uCAAuC;IACvC,IAAI,KAAa,CAAC,eAAe,EAAE,CAAC;QAClC,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,eAAe,GAAG,CACtB,OAAgB,EAAE,IAAW,EAC7B,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;IAErD,2EAA2E;IAC3E,eAAe,CAAC,WAAW,GAAG,KAAK,CAAA;IAEnC,OAAO,eAAe,CAAA;AACxB,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,KAAe,EACf,UAAsB,EACtB,MAAe,EACf,IAAW;IAEX,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,WAAW,CAAA;IACjD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACjC,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC,CAAA;IAEtC,MAAM,eAAe,GAAG,WAAW,KAAK,UAAU,CAAC,MAAM,CAAC,WAAW,CAAA;IAErE,8DAA8D;IAC9D,IAAG,CAAC,eAAe,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACjD,IAAG,cAAc,YAAY,OAAO,EAAE,CAAC;YACrC,OAAO,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC9B,OAAO,sBAAsB,CAAA,CAAC,0CAA0C;YAC1E,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,OAAO,cAAc,CAAA,CAAC,mBAAmB;IAC3C,CAAC;IAED,gBAAgB,CACd,UAAU,EACV,IAAI,CACL,CAAA;IAED,IAAG,cAAc,YAAY,OAAO,EAAE,CAAC;QACrC,OAAO,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE;YAC9B,IAAG,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC7B,OAAO,sBAAsB,CAAA,CAAC,0CAA0C;YAC1E,CAAC;YAED,gBAAgB,CACd,UAAU,EACV,IAAI,CACL,CAAA;YACD,OAAO,sBAAsB,CAAA;QAC/B,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,kCAAkC;IAClC,OAAO,cAAc,CAAA;AACvB,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Counts } from "./interpolateTemplate";
2
+ export declare function elementInitCheck(nextSibling: Element | ChildNode, counts: Counts): number;
@@ -0,0 +1,18 @@
1
+ export function elementInitCheck(nextSibling, counts) {
2
+ const onInitDoubleWrap = nextSibling.oninit;
3
+ if (!onInitDoubleWrap) {
4
+ return counts.added;
5
+ }
6
+ const onInitWrap = onInitDoubleWrap.tagFunction;
7
+ if (!onInitWrap) {
8
+ return counts.added;
9
+ }
10
+ const onInit = onInitWrap.tagFunction;
11
+ if (!onInit) {
12
+ return counts.added;
13
+ }
14
+ const event = { target: nextSibling, stagger: counts.added };
15
+ onInit(event);
16
+ return ++counts.added;
17
+ }
18
+ //# sourceMappingURL=elementInitCheck.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"elementInitCheck.js","sourceRoot":"","sources":["../../ts/interpolations/elementInitCheck.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,gBAAgB,CAC9B,WAAgC,EAChC,MAAc;IAEd,MAAM,gBAAgB,GAAI,WAAmB,CAAC,MAAM,CAAA;IACpD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,OAAO,MAAM,CAAC,KAAK,CAAA;IACrB,CAAC;IAED,MAAM,UAAU,GAAG,gBAAgB,CAAC,WAAW,CAAA;IAC/C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,MAAM,CAAC,KAAK,CAAA;IACrB,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAA;IACrC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,MAAM,CAAC,KAAK,CAAA;IACrB,CAAC;IAED,MAAM,KAAK,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,EAAwC,CAAA;IAClG,MAAM,CAAC,KAAK,CAAC,CAAA;IAEb,OAAO,EAAE,MAAM,CAAC,KAAK,CAAA;AACvB,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function inputAttribute(name: string, value: any, element: Element): void;
@@ -0,0 +1,19 @@
1
+ export function inputAttribute(name, value, element) {
2
+ const names = name.split('.');
3
+ // style.position = "absolute"
4
+ if (names[0] === 'style') {
5
+ element.style[names[1]] = value;
6
+ }
7
+ // Example: class.width-full = "true"
8
+ if (names[0] === 'class') {
9
+ names.shift();
10
+ if (value) {
11
+ names.forEach(name => element.classList.add(name));
12
+ }
13
+ else {
14
+ names.forEach(name => element.classList.remove(name));
15
+ }
16
+ return;
17
+ }
18
+ }
19
+ //# sourceMappingURL=inputAttribute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inputAttribute.js","sourceRoot":"","sources":["../../ts/interpolations/inputAttribute.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,cAAc,CAC5B,IAAY,EACZ,KAAU,EACV,OAAgB;IAEhB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAE7B,8BAA8B;IAC9B,IAAG,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QACvB,OAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;IAC1C,CAAC;IAED,qCAAqC;IACrC,IAAG,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QACxB,KAAK,CAAC,KAAK,EAAE,CAAA;QACb,IAAG,KAAK,EAAE,CAAC;YACT,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;QACpD,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;QACvD,CAAC;QACD,OAAM;IACR,CAAC;AACH,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Context } from "../Tag.class";
2
+ import { TagSupport } from "../TagSupport.class";
3
+ export type HowToSet = (element: Element, name: string, value: string) => any;
4
+ export declare function interpolateAttributes(child: Element, scope: Context, ownerSupport: TagSupport): void;
@@ -0,0 +1,20 @@
1
+ import { processAttribute } from "./processAttribute.function";
2
+ function howToSetAttribute(element, name, value) {
3
+ element.setAttribute(name, value);
4
+ }
5
+ function howToSetInputValue(element, name, value) {
6
+ element[name] = value;
7
+ }
8
+ export function interpolateAttributes(child, scope, ownerSupport) {
9
+ const attrNames = child.getAttributeNames();
10
+ let howToSet = howToSetAttribute;
11
+ attrNames.forEach(attrName => {
12
+ if (child.nodeName === 'INPUT' && attrName === 'value') {
13
+ howToSet = howToSetInputValue;
14
+ }
15
+ const value = child.getAttribute(attrName);
16
+ processAttribute(attrName, value, child, scope, ownerSupport, howToSet);
17
+ howToSet = howToSetAttribute; // put back
18
+ });
19
+ }
20
+ //# sourceMappingURL=interpolateAttributes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interpolateAttributes.js","sourceRoot":"","sources":["../../ts/interpolations/interpolateAttributes.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAI9D,SAAS,iBAAiB,CACxB,OAAgB,EAChB,IAAY,EACZ,KAAa;IAEb,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;AACnC,CAAC;AAED,SAAS,kBAAkB,CACzB,OAAgB,EAChB,IAAY,EACZ,KAAa;IAEZ,OAAe,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA;AAChC,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,KAAc,EACd,KAAc,EACd,YAAwB;IAExB,MAAM,SAAS,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAA;IAE3C,IAAI,QAAQ,GAAG,iBAAiB,CAAA;IAEhC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAC3B,IAAG,KAAK,CAAC,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;YACtD,QAAQ,GAAG,kBAAkB,CAAA;QAC/B,CAAC;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;QAC1C,gBAAgB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAA;QAEvE,QAAQ,GAAG,iBAAiB,CAAA,CAAC,WAAW;IAC1C,CAAC,CAAC,CAAA;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { Clones } from "../Clones.type";
2
+ import { TagSupport } from "../TagSupport.class";
3
+ import { InterpolateOptions } from "./interpolateElement";
4
+ import { InterpolateComponentResult } from "./interpolateTemplate";
5
+ export type InterpolatedContentTemplates = {
6
+ clones: Clones;
7
+ tagComponents: InterpolateComponentResult[];
8
+ };
9
+ export declare function interpolateContentTemplates(element: Element, context: any, tagSupport: TagSupport, options: InterpolateOptions, children: HTMLCollection): InterpolatedContentTemplates;
@@ -0,0 +1,42 @@
1
+ import { interpolateTemplate } from "./interpolateTemplate";
2
+ export function interpolateContentTemplates(element, context, tagSupport, options, children) {
3
+ if (!children || element.tagName === 'TEMPLATE') {
4
+ return { clones: [], tagComponents: [] }; // done
5
+ }
6
+ // counting for animation stagger computing
7
+ const counts = options.counts;
8
+ const clones = [];
9
+ const tagComponents = [];
10
+ const childArray = new Array(...children);
11
+ childArray.forEach(child => {
12
+ const { clones: nextClones, tagComponent } = interpolateTemplate(child, context, tagSupport, counts, options);
13
+ clones.push(...nextClones);
14
+ if (tagComponent) {
15
+ tagComponents.push(tagComponent);
16
+ return;
17
+ }
18
+ if (child.children) {
19
+ const nextKids = new Array(...child.children);
20
+ nextKids.forEach((subChild, index) => {
21
+ // IF <template end /> its a variable to be processed
22
+ if (isRenderEndTemplate(subChild)) {
23
+ const { tagComponent } = interpolateTemplate(subChild, context, tagSupport, counts, options);
24
+ if (tagComponent) {
25
+ tagComponents.push(tagComponent);
26
+ }
27
+ }
28
+ const { clones: nextClones, tagComponents: nextTagComponent } = interpolateContentTemplates(subChild, context, tagSupport, options, subChild.children);
29
+ clones.push(...nextClones);
30
+ tagComponents.push(...nextTagComponent);
31
+ });
32
+ }
33
+ });
34
+ return { clones, tagComponents };
35
+ }
36
+ function isRenderEndTemplate(child) {
37
+ const isTemplate = child.tagName === 'TEMPLATE';
38
+ return isTemplate &&
39
+ child.getAttribute('interpolate') !== undefined &&
40
+ child.getAttribute('end') !== undefined;
41
+ }
42
+ //# sourceMappingURL=interpolateContentTemplates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interpolateContentTemplates.js","sourceRoot":"","sources":["../../ts/interpolations/interpolateContentTemplates.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwC,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAOjG,MAAM,UAAU,2BAA2B,CACzC,OAAgB,EAChB,OAAY,EACZ,UAAsB,EACtB,OAA2B,EAC3B,QAAwB;IAExB,IAAK,CAAC,QAAQ,IAAI,OAAO,CAAC,OAAO,KAAK,UAAU,EAAG,CAAC;QAClD,OAAO,EAAC,MAAM,EAAC,EAAE,EAAE,aAAa,EAAE,EAAE,EAAC,CAAA,CAAC,OAAO;IAC/C,CAAC;IAED,2CAA2C;IAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;IAC7B,MAAM,MAAM,GAAW,EAAE,CAAA;IACzB,MAAM,aAAa,GAAiC,EAAE,CAAA;IACtD,MAAM,UAAU,GAAG,IAAI,KAAK,CAAC,GAAG,QAAQ,CAAC,CAAA;IAEzC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACzB,MAAM,EAAC,MAAM,EAAE,UAAU,EAAE,YAAY,EAAC,GAAG,mBAAmB,CAC5D,KAAiB,EACjB,OAAO,EACP,UAAU,EACV,MAAM,EACN,OAAO,CACR,CAAA;QAED,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAA;QAE1B,IAAG,YAAY,EAAE,CAAC;YAChB,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YAChC,OAAM;QACR,CAAC;QAED,IAAK,KAAK,CAAC,QAAQ,EAAG,CAAC;YACrB,MAAM,QAAQ,GAAG,IAAI,KAAK,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7C,QAAQ,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;gBAEnC,qDAAqD;gBACrD,IAAK,mBAAmB,CAAC,QAAQ,CAAC,EAAG,CAAC;oBACpC,MAAM,EAAC,YAAY,EAAC,GAAG,mBAAmB,CACxC,QAAoB,EACpB,OAAO,EACP,UAAU,EACV,MAAM,EACN,OAAO,CACR,CAAA;oBAED,IAAG,YAAY,EAAE,CAAC;wBAChB,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;oBAClC,CAAC;gBACH,CAAC;gBAED,MAAM,EAAC,MAAM,EAAC,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAC,GAAG,2BAA2B,CACtF,QAAQ,EACR,OAAO,EACP,UAAU,EACV,OAAO,EACP,QAAQ,CAAC,QAAQ,CAClB,CAAA;gBAED,MAAM,CAAC,IAAI,CAAE,GAAG,UAAU,CAAE,CAAA;gBAC5B,aAAa,CAAC,IAAI,CAAE,GAAG,gBAAgB,CAAE,CAAA;YAC3C,CAAC,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,EAAC,MAAM,EAAE,aAAa,EAAC,CAAA;AAChC,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc;IACzC,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,KAAG,UAAU,CAAA;IAC7C,OAAO,UAAU;QACjB,KAAK,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,SAAS;QAC/C,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,SAAS,CAAA;AACzC,CAAC"}