taggedjs 2.6.7 → 2.6.9

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 (40) hide show
  1. package/bundle.js +1 -1
  2. package/bundle.js.map +1 -1
  3. package/js/state/callback.function.d.ts +6 -0
  4. package/js/state/callback.function.js +23 -0
  5. package/js/state/callback.function.js.map +1 -0
  6. package/js/state/callbackMaker.function.d.ts +2 -2
  7. package/js/state/callbackMaker.function.js +2 -20
  8. package/js/state/callbackMaker.function.js.map +1 -1
  9. package/js/state/callbackStateUpdate.function.js.map +1 -1
  10. package/js/state/index.d.ts +1 -0
  11. package/js/state/index.js +1 -0
  12. package/js/state/index.js.map +1 -1
  13. package/js/state/state.utils.d.ts +1 -1
  14. package/js/state/state.utils.js +2 -3
  15. package/js/state/state.utils.js.map +1 -1
  16. package/js/state/syncStates.function.js +5 -9
  17. package/js/state/syncStates.function.js.map +1 -1
  18. package/js/tag/TagMaker.type.d.ts +1 -1
  19. package/js/tag/afterRender.function.d.ts +4 -0
  20. package/js/tag/afterRender.function.js +9 -18
  21. package/js/tag/afterRender.function.js.map +1 -1
  22. package/js/tag/checkDestroyPrevious.function.js +1 -1
  23. package/js/tag/checkDestroyPrevious.function.js.map +1 -1
  24. package/js/tag/checkStateMismatch.function.d.ts +3 -0
  25. package/js/tag/checkStateMismatch.function.js +29 -0
  26. package/js/tag/checkStateMismatch.function.js.map +1 -0
  27. package/js/tag/render/beforeRerender.function.d.ts +4 -0
  28. package/js/tag/render/beforeRerender.function.js +8 -0
  29. package/js/tag/render/beforeRerender.function.js.map +1 -0
  30. package/js/tag/render/renderTagOnly.function.js +10 -3
  31. package/js/tag/render/renderTagOnly.function.js.map +1 -1
  32. package/js/tag/tagElement.d.ts +2 -3
  33. package/js/tag/tagElement.js +34 -10
  34. package/js/tag/tagElement.js.map +1 -1
  35. package/js/tag/update/processTagArray.js +28 -10
  36. package/js/tag/update/processTagArray.js.map +1 -1
  37. package/js/tag/update/updateExistingValue.function.d.ts +1 -0
  38. package/js/tag/update/updateExistingValue.function.js +1 -0
  39. package/js/tag/update/updateExistingValue.function.js.map +1 -1
  40. package/package.json +1 -1
@@ -0,0 +1,6 @@
1
+ import { AnySupport } from '../tag/Support.class.js';
2
+ import { State } from './state.types.js';
3
+ import { Callback } from './callbackMaker.function.js';
4
+ /** Wrap a function that will be called back. After the wrapper and function are called, a rendering cycle will update display */
5
+ export declare function callback<A, B, C, D, E, F, T>(callback: Callback<A, B, C, D, E, F, T>): (A?: A, B?: B, C?: C, D?: D, E?: E, F?: F) => T;
6
+ export declare function createTrigger<A, B, C, D, E, F, T>(support: AnySupport, oldState: State, toCallback: Callback<A, B, C, D, E, F, T>): (...args: any[]) => any;
@@ -0,0 +1,23 @@
1
+ import callbackStateUpdate from './callbackStateUpdate.function.js';
2
+ import { setUseMemory } from './setUse.function.js';
3
+ import { syncError } from './callbackMaker.function.js';
4
+ import { getSupportInCycle } from '../tag/getSupportInCycle.function.js';
5
+ /** Wrap a function that will be called back. After the wrapper and function are called, a rendering cycle will update display */
6
+ export function callback(callback) {
7
+ const support = getSupportInCycle();
8
+ if (!support) {
9
+ throw syncError;
10
+ }
11
+ return createTrigger(support, setUseMemory.stateConfig.array, callback);
12
+ }
13
+ export function createTrigger(support, oldState, toCallback) {
14
+ return function trigger(...args) {
15
+ const callbackMaker = support.subject.renderCount > 0;
16
+ if (callbackMaker) {
17
+ return callbackStateUpdate(support, toCallback, oldState, ...args);
18
+ }
19
+ // we are in sync with rendering, just run callback naturally
20
+ return toCallback(...args);
21
+ };
22
+ }
23
+ //# sourceMappingURL=callback.function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"callback.function.js","sourceRoot":"","sources":["../../ts/state/callback.function.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,MAAM,mCAAmC,CAAA;AAEnE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEnD,OAAO,EAAY,SAAS,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAExE,iIAAiI;AACjI,MAAM,UAAU,QAAQ,CACtB,QAAuC;IAEvC,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAA;IAEnC,IAAG,CAAC,OAAO,EAAE,CAAC;QACZ,MAAM,SAAS,CAAA;IACjB,CAAC;IAED,OAAO,aAAa,CAAC,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;AACzE,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,OAAmB,EACnB,QAAe,EACf,UAAyC;IAEzC,OAAO,SAAS,OAAO,CAAC,GAAG,IAAW;QACpC,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,GAAG,CAAC,CAAA;QAErD,IAAG,aAAa,EAAE,CAAC;YACjB,OAAO,mBAAmB,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAA;QACpE,CAAC;QAED,6DAA6D;QAC7D,OAAQ,UAAkB,CAAC,GAAG,IAAI,CAAC,CAAA;IACrC,CAAC,CAAA;AACH,CAAC"}
@@ -1,6 +1,6 @@
1
+ import { SyncCallbackError } from '../errors.js';
1
2
  export type Callback<A, B, C, D, E, F, T> = (a: A, b: B, c: C, d: D, e: E, f: F) => T;
2
3
  type innerCallback = <A, B, C, D, E, F, T>(_callback: Callback<A, B, C, D, E, F, T>) => (_a?: A, _b?: B, _c?: C, _d?: D, _e?: E, _f?: F) => T;
3
4
  export declare const callbackMaker: () => innerCallback;
4
- /** Wrap a function that will be called back. After the wrapper and function are called, a rendering cycle will update display */
5
- export declare function callback<A, B, C, D, E, F, T>(callback: Callback<A, B, C, D, E, F, T>): (A?: A, B?: B, C?: C, D?: D, E?: E, F?: F) => T;
5
+ export declare const syncError: SyncCallbackError;
6
6
  export {};
@@ -1,7 +1,7 @@
1
1
  import { getSupportInCycle } from '../tag/getSupportInCycle.function.js';
2
- import callbackStateUpdate from './callbackStateUpdate.function.js';
3
2
  import { setUseMemory } from './setUse.function.js';
4
3
  import { SyncCallbackError } from '../errors.js';
4
+ import { createTrigger } from './callback.function.js';
5
5
  export const callbackMaker = () => {
6
6
  const support = getSupportInCycle();
7
7
  // callback as typeof innerCallback
@@ -13,23 +13,5 @@ export const callbackMaker = () => {
13
13
  return createTrigger(support, oldState, callback);
14
14
  };
15
15
  };
16
- const syncError = new SyncCallbackError('callback() was called outside of synchronous rendering. Use `callback = callbackMaker()` to create a callback that could be called out of sync with rendering');
17
- /** Wrap a function that will be called back. After the wrapper and function are called, a rendering cycle will update display */
18
- export function callback(callback) {
19
- const support = getSupportInCycle();
20
- if (!support) {
21
- throw syncError;
22
- }
23
- return createTrigger(support, setUseMemory.stateConfig.array, callback);
24
- }
25
- function createTrigger(support, oldState, toCallback) {
26
- return function trigger(...args) {
27
- const callbackMaker = support.subject.renderCount > 0;
28
- if (callbackMaker) {
29
- return callbackStateUpdate(support, toCallback, oldState, ...args);
30
- }
31
- // we are in sync with rendering, just run callback naturally
32
- return toCallback(...args);
33
- };
34
- }
16
+ export const syncError = new SyncCallbackError('callback() was called outside of synchronous rendering. Use `callback = callbackMaker()` to create a callback that could be called out of sync with rendering');
35
17
  //# sourceMappingURL=callbackMaker.function.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"callbackMaker.function.js","sourceRoot":"","sources":["../../ts/state/callbackMaker.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AACxE,OAAO,mBAAmB,MAAM,mCAAmC,CAAA;AAEnE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAYhD,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAA;IACnC,mCAAmC;IAEnC,IAAG,CAAC,OAAO,EAAE,CAAC;QACZ,MAAM,SAAS,CAAA;IACjB,CAAC;IAED,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,KAAK,CAAA;IAC/C,OAAO,SAAS,YAAY,CAC1B,QAAuC;QAEvC,OAAO,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IACnD,CAAkB,CAAA;AACpB,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,+JAA+J,CAAC,CAAA;AAExM,iIAAiI;AACjI,MAAM,UAAU,QAAQ,CACtB,QAAuC;IAEvC,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAA;IAEnC,IAAG,CAAC,OAAO,EAAE,CAAC;QACZ,MAAM,SAAS,CAAA;IACjB,CAAC;IAED,OAAO,aAAa,CAAC,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;AACzE,CAAC;AAED,SAAS,aAAa,CACpB,OAAmB,EACnB,QAAe,EACf,UAAyC;IAEzC,OAAO,SAAS,OAAO,CAAC,GAAG,IAAW;QACpC,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,GAAG,CAAC,CAAA;QAErD,IAAG,aAAa,EAAE,CAAC;YACjB,OAAO,mBAAmB,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAA;QACpE,CAAC;QAED,6DAA6D;QAC7D,OAAQ,UAAkB,CAAC,GAAG,IAAI,CAAC,CAAA;IACrC,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"callbackMaker.function.js","sourceRoot":"","sources":["../../ts/state/callbackMaker.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAWtD,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAA;IACnC,mCAAmC;IAEnC,IAAG,CAAC,OAAO,EAAE,CAAC;QACZ,MAAM,SAAS,CAAA;IACjB,CAAC;IAED,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,KAAK,CAAA;IAC/C,OAAO,SAAS,YAAY,CAC1B,QAAuC;QAEvC,OAAO,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IACnD,CAAkB,CAAA;AACpB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,+JAA+J,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"callbackStateUpdate.function.js","sourceRoot":"","sources":["../../ts/state/callbackStateUpdate.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAA;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAGrD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAE5C,MAAM,CAAC,OAAO,UAAU,mBAAmB,CACzC,OAA8B,EAC9B,QAAkD,EAClD,QAAe,EACf,GAAG,IAAW;IAEd,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAA0B,CAAA;IACzD,OAAO,GAAG,MAAM,CAAC,MAAM,CAAA,CAAC,aAAa;IACrC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;IAC3B,qDAAqD;IACrD,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IAE3B,mBAAmB;IACnB,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,IAAiC,CAAC,CAAA;IAEnE,gDAAgD;IAChD,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;IAC3B,aAAa,CAAC,OAAO,CAAC,CAAA;IAEtB,IAAG,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;QAC1B,YAA6B,CAAC,OAAO,CAAC,GAAG,EAAE;YAC1C,gDAAgD;YAChD,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;YAE3B,aAAa,CAAC,OAAO,CAAC,CAAA;QACxB,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,wBAAwB;IACxB,OAAO,YAAY,CAAA;AACrB,CAAC"}
1
+ {"version":3,"file":"callbackStateUpdate.function.js","sourceRoot":"","sources":["../../ts/state/callbackStateUpdate.function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAA;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAGrD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAE5C,MAAM,CAAC,OAAO,UAAU,mBAAmB,CACzC,OAA8B,EAC9B,QAAkD,EAClD,QAAe,EACf,GAAG,IAAW;IAEd,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAA0B,CAAA;IACzD,OAAO,GAAG,MAAM,CAAC,MAAM,CAAA,CAAC,aAAa;IACrC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;IAE3B,qDAAqD;IACrD,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IAE3B,mBAAmB;IACnB,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,IAAiC,CAAC,CAAA;IAEnE,gDAAgD;IAChD,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;IAC3B,aAAa,CAAC,OAAO,CAAC,CAAA;IAEtB,IAAG,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;QAC1B,YAA6B,CAAC,OAAO,CAAC,GAAG,EAAE;YAC1C,gDAAgD;YAChD,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;YAE3B,aAAa,CAAC,OAAO,CAAC,CAAA;QACxB,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,wBAAwB;IACxB,OAAO,YAAY,CAAA;AACrB,CAAC"}
@@ -7,5 +7,6 @@ export { letState } from './letState.function.js';
7
7
  export * from './state.types.js';
8
8
  export { providers } from './providers.js';
9
9
  export * from './callbackMaker.function.js';
10
+ export * from './callback.function.js';
10
11
  export * from './onInit.js';
11
12
  export * from './onDestroy.js';
package/js/state/index.js CHANGED
@@ -7,6 +7,7 @@ export { letState } from './letState.function.js';
7
7
  export * from './state.types.js';
8
8
  export { providers } from './providers.js';
9
9
  export * from './callbackMaker.function.js';
10
+ export * from './callback.function.js';
10
11
  export * from './onInit.js';
11
12
  export * from './onDestroy.js';
12
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/state/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/state/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,wBAAwB,CAAA;AACtC,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA"}
@@ -14,7 +14,7 @@ export type Config = {
14
14
  };
15
15
  export type GetSet<T> = (y: T) => [T, T];
16
16
  export declare function initState(support: Support | BaseSupport, config: Config): void;
17
- export declare function reState(support: Support | BaseSupport, config: Config): void;
17
+ export declare function reState(support: Support | BaseSupport, config: Config, prevState: State): void;
18
18
  export declare class StateEchoBack {
19
19
  }
20
20
  export declare function getCallbackValue<T>(callback: StateConfig<T>): [T, T];
@@ -7,9 +7,8 @@ export function initState(support, config) {
7
7
  config.array = [];
8
8
  config.support = support;
9
9
  }
10
- export function reState(support, config) {
11
- const state = support.state;
12
- config.rearray = state;
10
+ export function reState(support, config, prevState) {
11
+ config.rearray = prevState;
13
12
  config.array = [];
14
13
  config.handlers.handler = runRestate;
15
14
  config.handlers.letHandler = reLetState;
@@ -1 +1 @@
1
- {"version":3,"file":"state.utils.js","sourceRoot":"","sources":["../../ts/state/state.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAElE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAgB9D,MAAM,UAAU,SAAS,CACvB,OAA8B,EAC9B,MAAc;IAEd,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAG,aAAa,CAAA;IACvC,MAAM,CAAC,QAAQ,CAAC,UAAU,GAAG,aAAsE,CAAA;IAEnG,MAAM,CAAC,OAAO,GAAG,EAAE,CAAA;IACnB,MAAM,CAAC,KAAK,GAAG,EAAE,CAAA;IACjB,MAAM,CAAC,OAAO,GAAG,OAAO,CAAA;AAC1B,CAAC;AAED,MAAM,UAAU,OAAO,CACrB,OAA8B,EAC9B,MAAc;IAEd,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;IAC3B,MAAM,CAAC,OAAO,GAAG,KAAK,CAAA;IACtB,MAAM,CAAC,KAAK,GAAG,EAAE,CAAA;IAEjB,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAG,UAAiB,CAAA;IAC3C,MAAM,CAAC,QAAQ,CAAC,UAAU,GAAG,UAAiB,CAAA;IAC9C,MAAM,CAAC,OAAO,GAAG,OAAO,CAAA;AAC1B,CAAC;AAED,MAAM,OAAO,aAAa;CAAG;AAE7B,0DAA0D;AAC1D,MAAM,UAAU,gBAAgB,CAC9B,QAAwB;IAExB,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAoB,CAAC,CAAA,CAAC,iCAAiC;IACjF,MAAM,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAA;IAExB,MAAM,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAE,KAAK,CAAE,CAAA,CAAC,6BAA6B;IACpE,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;AAC5B,CAAC"}
1
+ {"version":3,"file":"state.utils.js","sourceRoot":"","sources":["../../ts/state/state.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAElE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAiB9D,MAAM,UAAU,SAAS,CACvB,OAA8B,EAC9B,MAAc;IAEd,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAG,aAAa,CAAA;IACvC,MAAM,CAAC,QAAQ,CAAC,UAAU,GAAG,aAAsE,CAAA;IAEnG,MAAM,CAAC,OAAO,GAAG,EAAE,CAAA;IACnB,MAAM,CAAC,KAAK,GAAG,EAAE,CAAA;IACjB,MAAM,CAAC,OAAO,GAAG,OAAO,CAAA;AAC1B,CAAC;AAED,MAAM,UAAU,OAAO,CACrB,OAA8B,EAC9B,MAAc,EACd,SAAgB;IAEhB,MAAM,CAAC,OAAO,GAAG,SAAS,CAAA;IAC1B,MAAM,CAAC,KAAK,GAAG,EAAE,CAAA;IAEjB,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAG,UAAiB,CAAA;IAC3C,MAAM,CAAC,QAAQ,CAAC,UAAU,GAAG,UAAiB,CAAA;IAC9C,MAAM,CAAC,OAAO,GAAG,OAAO,CAAA;AAC1B,CAAC;AAED,MAAM,OAAO,aAAa;CAAG;AAE7B,0DAA0D;AAC1D,MAAM,UAAU,gBAAgB,CAC9B,QAAwB;IAExB,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAoB,CAAC,CAAA,CAAC,iCAAiC;IACjF,MAAM,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAA;IAExB,MAAM,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAE,KAAK,CAAE,CAAA,CAAC,6BAA6B;IACpE,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;AAC5B,CAAC"}
@@ -1,14 +1,10 @@
1
1
  export function syncStates(stateFrom, stateTo) {
2
2
  for (let index = stateFrom.length - 1; index >= 0; --index) {
3
- const state = stateFrom[index];
4
- const fromValue = state.get();
5
- const s = stateTo[index];
6
- setState(s, fromValue);
7
- }
8
- }
9
- function setState(s, fromValue) {
10
- const callback = s.callback;
11
- if (callback) {
3
+ const fromValue = stateFrom[index].get();
4
+ const callback = stateTo[index].callback; // is it a let state?
5
+ if (!callback) {
6
+ continue;
7
+ }
12
8
  callback(fromValue); // set the value
13
9
  }
14
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"syncStates.function.js","sourceRoot":"","sources":["../../ts/state/syncStates.function.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,UAAU,CACxB,SAAgB,EAChB,OAAc;IAEd,KAAK,IAAI,KAAK,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC;QAC3D,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;QAC9B,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,EAAE,CAAA;QAC7B,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;QACxB,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;IACxB,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CACf,CAAuB,EACvB,SAAc;IAEd,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAA;IAE3B,IAAG,QAAQ,EAAE,CAAC;QACZ,QAAQ,CAAE,SAAS,CAAE,CAAA,CAAC,gBAAgB;IACxC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"syncStates.function.js","sourceRoot":"","sources":["../../ts/state/syncStates.function.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,UAAU,CACxB,SAAgB,EAChB,OAAc;IAEd,KAAK,IAAI,KAAK,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC;QAC3D,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAA;QACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAA,CAAC,qBAAqB;QAE9D,IAAG,CAAC,QAAQ,EAAE,CAAC;YACb,SAAQ;QACV,CAAC;QAED,QAAQ,CAAE,SAAS,CAAE,CAAA,CAAC,gBAAgB;IACxC,CAAC;AACH,CAAC"}
@@ -1,2 +1,2 @@
1
1
  import { DomTag, StringTag } from './Tag.class.js';
2
- export type TagMaker<Args extends any[] = any[]> = ((...args: Args) => StringTag | DomTag) | ((...args: Args) => (...args: Args) => StringTag | DomTag);
2
+ export type TagMaker<Args extends any[] = any[]> = ((...args: Args) => StringTag | DomTag | TagMaker) | ((...args: Args) => (...args: Args) => StringTag | DomTag | TagMaker);
@@ -1,2 +1,6 @@
1
1
  import { BaseSupport, Support } from './Support.class.js';
2
+ /** Compares states of previous renders
3
+ * @property support - The workflow that supports a single tag
4
+ * @property ownerSupport - undefined when "support" is the app element
5
+ */
2
6
  export declare function runAfterRender(support: BaseSupport | Support, ownerSupport?: Support | BaseSupport): void;
@@ -1,26 +1,17 @@
1
1
  import { setUseMemory } from '../state/setUse.function.js';
2
- // Life cycle 2
2
+ import { checkStateMismatch } from './checkStateMismatch.function.js';
3
+ /** Compares states of previous renders
4
+ * @property support - The workflow that supports a single tag
5
+ * @property ownerSupport - undefined when "support" is the app element
6
+ */
3
7
  export function runAfterRender(support, ownerSupport) {
4
- ++support.subject.renderCount;
8
+ const subject = support.subject;
9
+ ++subject.renderCount;
5
10
  const config = setUseMemory.stateConfig;
6
- // TODO: only needed in development
7
- /*
8
- const rearray = config.rearray as unknown as State[]
9
- if(rearray.length && rearray.length !== config.array.length) {
10
- const message = `States lengths have changed ${rearray.length} !== ${config.array.length}. State tracking requires the same amount of function calls every render. Typically this errors is thrown when a state like function call occurs only for certain conditions or when a function is intended to be wrapped with a tag() call`
11
- const wrapper = support.templater?.wrapper as Wrapper
12
- const details = {
13
- oldStates: config.array,
14
- newStates: config.rearray,
15
- tagFunction: wrapper.parentWrap.original,
16
- }
17
- const error = new StateMismatchError(message,details)
18
- console.warn(message,details)
19
- throw error
20
- }
21
- */
22
11
  delete config.support;
23
12
  support.state = config.array;
24
13
  setUseMemory.tagClosed$.next(ownerSupport);
14
+ checkStateMismatch(config, support);
15
+ subject.global.newest = support;
25
16
  }
26
17
  //# sourceMappingURL=afterRender.function.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"afterRender.function.js","sourceRoot":"","sources":["../../ts/tag/afterRender.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAI1D,eAAe;AACf,MAAM,UAAU,cAAc,CAC5B,OAA8B,EAC9B,YAAoC;IAEpC,EAAE,OAAO,CAAC,OAAO,CAAC,WAAW,CAAA;IAE7B,MAAM,MAAM,GAAW,YAAY,CAAC,WAAW,CAAA;IAE/C,mCAAmC;IACnC;;;;;;;;;;;;;;MAcE;IAEF,OAAO,MAAM,CAAC,OAAO,CAAA;IAErB,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;IAE5B,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;AAC5C,CAAC"}
1
+ {"version":3,"file":"afterRender.function.js","sourceRoot":"","sources":["../../ts/tag/afterRender.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAG1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAErE;;;GAGG;AACH,MAAM,UAAU,cAAc,CAC5B,OAA8B,EAC9B,YAAoC;IAEpC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;IAC/B,EAAE,OAAO,CAAC,WAAW,CAAA;IAErB,MAAM,MAAM,GAAW,YAAY,CAAC,WAAW,CAAA;IAC/C,OAAO,MAAM,CAAC,OAAO,CAAA;IACrB,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;IAE5B,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAC1C,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAA;AACjC,CAAC"}
@@ -18,10 +18,10 @@ export function checkArrayValueChange(newValue, subject) {
18
18
  }
19
19
  export function destroyArray(subject, lastArray) {
20
20
  const counts = { added: 0, removed: 0 };
21
- delete subject.lastArray;
22
21
  for (let index = 0; index < lastArray.length; ++index) {
23
22
  destroyArrayItem(lastArray[index], counts);
24
23
  }
24
+ delete subject.lastArray;
25
25
  }
26
26
  export function checkSimpleValueChange(newValue, subject) {
27
27
  const isBadValue = newValue === null || newValue === undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"checkDestroyPrevious.function.js","sourceRoot":"","sources":["../../ts/tag/checkDestroyPrevious.function.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checkDestroyPrevious.function.js","sourceRoot":"","sources":["../../ts/tag/checkDestroyPrevious.function.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { BaseSupport, Support } from './Support.class.js';
2
+ import { Config } from '../state/state.utils.js';
3
+ export declare function checkStateMismatch(config: Config, support: BaseSupport | Support): void;
@@ -0,0 +1,29 @@
1
+ import { StateMismatchError } from '../errors.js';
2
+ export function checkStateMismatch(config, support) {
3
+ const rearray = config.rearray;
4
+ if (rearray.length && rearray.length !== config.array.length) {
5
+ throwStateMismatch(rearray, support, config);
6
+ }
7
+ }
8
+ const hint = 'State tracking requires same number of state calls on every render. This error typically occurs when a state call is only reachable behind a condition. Also, wrapping tags that have state, with tag(), often helps when tag is only reachable by a condition.';
9
+ function throwStateMismatch(rearray, support, config) {
10
+ const message = `Saved states between renders are inconsistent. Expected ${rearray.length} states got ${config.array.length}.`;
11
+ const wrapper = support.templater?.wrapper;
12
+ let tagFunction = wrapper;
13
+ if (wrapper?.original) {
14
+ tagFunction = wrapper.original;
15
+ }
16
+ else if (wrapper?.parentWrap.original) {
17
+ tagFunction = wrapper.parentWrap.original;
18
+ }
19
+ const details = {
20
+ oldStates: config.array,
21
+ newStates: config.rearray,
22
+ tagFunction,
23
+ templater: support.templater,
24
+ };
25
+ const error = new StateMismatchError(message, details);
26
+ console.error(hint, details);
27
+ throw error;
28
+ }
29
+ //# sourceMappingURL=checkStateMismatch.function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkStateMismatch.function.js","sourceRoot":"","sources":["../../ts/tag/checkStateMismatch.function.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAEjD,MAAM,UAAU,kBAAkB,CAChC,MAAc,EACd,OAA8B;IAE9B,MAAM,OAAO,GAAG,MAAM,CAAC,OAA2B,CAAA;IAClD,IAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAC5D,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;IAC9C,CAAC;AACH,CAAC;AAED,MAAM,IAAI,GAAG,iQAAiQ,CAAA;AAE9Q,SAAS,kBAAkB,CACzB,OAAc,EACd,OAAmB,EACnB,MAAc;IAEd,MAAM,OAAO,GAAG,2DAA2D,OAAO,CAAC,MAAM,eAAe,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAA;IAC9H,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EAAE,OAAkB,CAAA;IACrD,IAAI,WAAW,GAAG,OAAO,CAAA;IAEzB,IAAI,OAAe,EAAE,QAAQ,EAAE,CAAC;QAC9B,WAAW,GAAI,OAAe,CAAC,QAAQ,CAAA;IACzC,CAAC;SAAM,IAAG,OAAO,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC;QACvC,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,QAAe,CAAA;IAClD,CAAC;IAED,MAAM,OAAO,GAAG;QACd,SAAS,EAAE,MAAM,CAAC,KAAK;QACvB,SAAS,EAAE,MAAM,CAAC,OAAO;QACzB,WAAW;QACX,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAA;IACD,MAAM,KAAK,GAAG,IAAI,kBAAkB,CAAC,OAAO,EAAC,OAAO,CAAC,CAAA;IACrD,OAAO,CAAC,KAAK,CAAC,IAAI,EAAC,OAAO,CAAC,CAAA;IAC3B,MAAM,KAAK,CAAA;AACb,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { AnySupport } from '../Support.class.js';
2
+ import { State } from '../../state/state.types.js';
3
+ export declare function beforeRerender(support: AnySupport, // new
4
+ prevState: State): void;
@@ -0,0 +1,8 @@
1
+ import { reState } from '../../state/state.utils.js';
2
+ import { setUseMemory } from '../../state/setUse.function.js';
3
+ export function beforeRerender(support, // new
4
+ prevState) {
5
+ reState(support, setUseMemory.stateConfig, prevState);
6
+ return;
7
+ }
8
+ //# sourceMappingURL=beforeRerender.function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"beforeRerender.function.js","sourceRoot":"","sources":["../../../ts/tag/render/beforeRerender.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAI7D,MAAM,UAAU,cAAc,CAC5B,OAAmB,EAAE,MAAM;AAC3B,SAAgB;IAEhB,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;IACrD,OAAM;AACR,CAAC"}
@@ -1,13 +1,21 @@
1
1
  import { getSupport } from '../Support.class.js';
2
- import { beforeRender } from './beforeRender.function.js';
2
+ import { beforeRerender } from './beforeRerender.function.js';
3
3
  import { executeWrap } from '../executeWrap.function.js';
4
4
  import { ValueTypes } from '../ValueTypes.enum.js';
5
5
  import { runAfterRender } from '../afterRender.function.js';
6
+ import { initState } from '../../state/state.utils.js';
7
+ import { setUseMemory } from '../../state/setUse.function.js';
6
8
  export function renderTagOnly(newSupport, prevSupport, // causes restate
7
9
  subject, ownerSupport) {
8
10
  const global = subject.global;
9
11
  const oldRenderCount = subject.renderCount;
10
- beforeRender(newSupport, prevSupport?.state);
12
+ const prevState = prevSupport?.state;
13
+ if (prevState) {
14
+ beforeRerender(newSupport, prevState);
15
+ }
16
+ else {
17
+ initState(newSupport, setUseMemory.stateConfig);
18
+ }
11
19
  const templater = newSupport.templater;
12
20
  let reSupport;
13
21
  // NEW TAG CREATED HERE
@@ -24,7 +32,6 @@ subject, ownerSupport) {
24
32
  reSupport = wrapper(newSupport, subject, prevSupport);
25
33
  }
26
34
  runAfterRender(reSupport, ownerSupport);
27
- global.newest = reSupport;
28
35
  // When we rendered, only 1 render should have taken place OTHERWISE rendering caused another render and that is the latest instead
29
36
  // TODO: below most likely not needed
30
37
  if (subject.renderCount > oldRenderCount + 1) {
@@ -1 +1 @@
1
- {"version":3,"file":"renderTagOnly.function.js","sourceRoot":"","sources":["../../../ts/tag/render/renderTagOnly.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,UAAU,EAA+B,MAAM,qBAAqB,CAAA;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAE3D,MAAM,UAAU,aAAa,CAC3B,UAAsB,EACtB,WAAmC,EAAE,iBAAiB;AACtD,OAA2B,EAC3B,YAAyB;IAEzB,MAAM,MAAM,GAAG,OAAO,CAAC,MAA0B,CAAA;IACjD,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,CAAA;IAE1C,YAAY,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,CAAC,CAAA;IAE5C,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAA;IACtC,IAAI,SAAqB,CAAA;IAEzB,uBAAuB;IACvB,IAAG,SAAS,CAAC,SAAS,KAAK,UAAU,CAAC,WAAW,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,SAAmC,CAAA,CAAC,oDAAoD;QAEvG,MAAM,UAAU,GAAG,UAAU,CAC3B,SAAS,EACT,YAA0B,EAC1B,UAAU,CAAC,UAAU,EAAE,sCAAsC;QAC7D,OAAO,CACR,CAAA;QAED,SAAS,GAAG,WAAW,CACrB,SAAS,EACT,MAAM,EACN,UAAU,CACX,CAAA;IACH,CAAC;SAAM,CAAC;QACN,6BAA6B;QAC7B,MAAM,OAAO,GAAG,SAAS,CAAC,OAAkB,CAAA;QAE5C,gDAAgD;QAChD,SAAS,GAAG,OAAO,CACjB,UAAU,EACV,OAAO,EACP,WAAW,CACZ,CAAA;IACH,CAAC;IAED,cAAc,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;IAEvC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAA;IAEzB,mIAAmI;IACnI,qCAAqC;IACrC,IAAG,OAAO,CAAC,WAAW,GAAG,cAAc,GAAG,CAAC,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,MAAiB,CAAA;IACjC,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC"}
1
+ {"version":3,"file":"renderTagOnly.function.js","sourceRoot":"","sources":["../../../ts/tag/render/renderTagOnly.function.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,UAAU,EAA+B,MAAM,qBAAqB,CAAA;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAE7D,MAAM,UAAU,aAAa,CAC3B,UAAsB,EACtB,WAAmC,EAAE,iBAAiB;AACtD,OAA2B,EAC3B,YAAyB;IAEzB,MAAM,MAAM,GAAG,OAAO,CAAC,MAA0B,CAAA;IACjD,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,CAAA;IAC1C,MAAM,SAAS,GAAG,WAAW,EAAE,KAAK,CAAA;IAEpC,IAAG,SAAS,EAAE,CAAC;QACb,cAAc,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;IACvC,CAAC;SAAM,CAAC;QACN,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,WAAW,CAAC,CAAA;IACjD,CAAC;IAED,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAA;IACtC,IAAI,SAAqB,CAAA;IAEzB,uBAAuB;IACvB,IAAG,SAAS,CAAC,SAAS,KAAK,UAAU,CAAC,WAAW,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,SAAmC,CAAA,CAAC,oDAAoD;QAEvG,MAAM,UAAU,GAAG,UAAU,CAC3B,SAAS,EACT,YAA0B,EAC1B,UAAU,CAAC,UAAU,EAAE,sCAAsC;QAC7D,OAAO,CACR,CAAA;QAED,SAAS,GAAG,WAAW,CACrB,SAAS,EACT,MAAM,EACN,UAAU,CACX,CAAA;IACH,CAAC;SAAM,CAAC;QACN,6BAA6B;QAC7B,MAAM,OAAO,GAAG,SAAS,CAAC,OAAkB,CAAA;QAE5C,gDAAgD;QAChD,SAAS,GAAG,OAAO,CACjB,UAAU,EACV,OAAO,EACP,WAAW,CACZ,CAAA;IACH,CAAC;IAED,cAAc,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;IAEvC,mIAAmI;IACnI,qCAAqC;IACrC,IAAG,OAAO,CAAC,WAAW,GAAG,cAAc,GAAG,CAAC,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,MAAiB,CAAA;IACjC,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC"}
@@ -1,9 +1,8 @@
1
1
  import { TemplaterResult } from './TemplaterResult.class.js';
2
- import { BaseSupport } from './Support.class.js';
2
+ import { BaseSupport, SupportContextItem } from './Support.class.js';
3
3
  import { TagComponent } from './tag.utils.js';
4
4
  import { ValueTypes } from './ValueTypes.enum.js';
5
5
  import { setUseMemory } from '../state/setUse.function.js';
6
- import { ContextItem } from './Context.types.js';
7
6
  import { TagMaker } from './TagMaker.type.js';
8
7
  export type TagAppElement = Element & {
9
8
  ValueTypes: typeof ValueTypes;
@@ -21,4 +20,4 @@ export declare function tagElement(app: TagMaker, element: HTMLElement | Element
21
20
  tags: TagComponent[];
22
21
  ValueTypes: typeof ValueTypes;
23
22
  };
24
- export declare function runWrapper(templater: TemplaterResult, placeholder: Text, appElement: Element, subject: ContextItem): import("./Support.class.js").AnySupport;
23
+ export declare function runWrapper(templater: TemplaterResult, placeholder: Text, appElement: Element, subject: SupportContextItem, isAppFunction: boolean): BaseSupport;
@@ -11,6 +11,7 @@ import { executeWrap } from './executeWrap.function.js';
11
11
  import { paint, painting } from './paint.function.js';
12
12
  import { initState } from '../state/state.utils.js';
13
13
  import { isTagComponent } from '../isInstance.js';
14
+ import { beforeRerender } from './render/beforeRerender.function.js';
14
15
  const appElements = [];
15
16
  /**
16
17
  *
@@ -38,8 +39,10 @@ export function tagElement(app, element, props) {
38
39
  const global = subject.global;
39
40
  initState(global.newest, setUseMemory.stateConfig);
40
41
  let templater2 = app(props);
41
- if (typeof templater2 !== BasicTypes.function) {
42
+ const isAppFunction = typeof templater2 == BasicTypes.function;
43
+ if (!isAppFunction) {
42
44
  if (!isTagComponent(templater2)) {
45
+ templater.tag = templater2;
43
46
  templater2 = app;
44
47
  }
45
48
  else {
@@ -54,8 +57,13 @@ export function tagElement(app, element, props) {
54
57
  }
55
58
  }
56
59
  const placeholder = document.createTextNode('');
57
- const support = runWrapper(templater, placeholder, element, subject);
60
+ const support = runWrapper(templater, placeholder, element, subject, isAppFunction);
58
61
  global.isApp = true;
62
+ if (isAppFunction) {
63
+ templater2.tag = support.templater.tag;
64
+ }
65
+ // enables hmr destroy so it can control entire app
66
+ ;
59
67
  element.destroy = function () {
60
68
  const events = global.events;
61
69
  for (const eventName in events) {
@@ -96,7 +104,6 @@ export function tagElement(app, element, props) {
96
104
  --painting.locks;
97
105
  paint();
98
106
  element.appendChild(newFragment);
99
- // ++subject.renderCount
100
107
  return {
101
108
  support,
102
109
  tags,
@@ -113,26 +120,43 @@ function getNewSubject(templater, appElement) {
113
120
  };
114
121
  const global = getNewGlobal(subject);
115
122
  global.events = {};
123
+ loadNewBaseSupport(templater, subject, appElement);
124
+ return subject;
125
+ }
126
+ function loadNewBaseSupport(templater, subject, appElement) {
127
+ const global = subject.global;
116
128
  const newSupport = getBaseSupport(templater, subject);
117
129
  newSupport.appElement = appElement;
118
130
  global.oldest = global.oldest || newSupport;
119
131
  global.newest = newSupport;
120
- return subject;
132
+ return newSupport;
121
133
  }
122
- export function runWrapper(templater, placeholder, appElement, subject) {
134
+ export function runWrapper(templater, placeholder, appElement, subject, isAppFunction) {
123
135
  subject.placeholder = placeholder;
124
136
  const global = subject.global;
125
- const newSupport = global.newest;
137
+ const useSupport = global.newest;
138
+ const oldest = global.oldest;
139
+ const isFirstRender = useSupport === oldest;
140
+ if (!isFirstRender) {
141
+ beforeRerender(useSupport, oldest.state);
142
+ }
126
143
  if (templater.tagJsType === ValueTypes.stateRender) {
127
144
  const result = (templater.wrapper || { original: templater });
128
- const nowSupport = executeWrap(templater, result, newSupport);
129
- runAfterRender(newSupport, nowSupport);
145
+ if (!isAppFunction) {
146
+ const newSupport = loadNewBaseSupport(templater, subject, appElement);
147
+ const nowState = setUseMemory.stateConfig.array;
148
+ newSupport.state = nowState;
149
+ runAfterRender(newSupport);
150
+ return newSupport;
151
+ }
152
+ const nowSupport = executeWrap(templater, result, useSupport);
153
+ runAfterRender(nowSupport);
130
154
  return nowSupport;
131
155
  }
132
156
  // Call the apps function for our tag templater
133
157
  const wrapper = templater.wrapper;
134
- const nowSupport = wrapper(newSupport, subject);
135
- runAfterRender(newSupport, nowSupport);
158
+ const nowSupport = wrapper(useSupport, subject);
159
+ runAfterRender(nowSupport);
136
160
  return nowSupport;
137
161
  }
138
162
  function putOneDomDown(dom, newFragment) {
@@ -1 +1 @@
1
- {"version":3,"file":"tagElement.js","sourceRoot":"","sources":["../../ts/tag/tagElement.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tagElement.js","sourceRoot":"","sources":["../../ts/tag/tagElement.ts"],"names":[],"mappings":"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"}
@@ -14,11 +14,21 @@ ownerSupport, counts, appendTo) {
14
14
  let runtimeInsertBefore = subject.placeholder;
15
15
  let removed = 0;
16
16
  /** 🗑️ remove previous items first */
17
- const filteredLast = subject.lastArray = lastArray.filter(function lastArrayFilter(item, index) {
17
+ const filteredLast = [];
18
+ for (let index = 0; index < lastArray.length; ++index) {
19
+ const item = lastArray[index];
18
20
  const newRemoved = reviewLastArrayItem(item, value, index, lastArray, removed, counts);
21
+ if (newRemoved === 0) {
22
+ filteredLast.push(item);
23
+ continue;
24
+ }
19
25
  removed = removed + newRemoved;
20
- return newRemoved === 0;
21
- });
26
+ // do the same number again because it was a mid delete
27
+ if (newRemoved === 2) {
28
+ index = index - 1;
29
+ }
30
+ }
31
+ subject.lastArray = filteredLast;
22
32
  // const eAppendTo = existed ? undefined : appendTo
23
33
  const eAppendTo = appendTo; // existed ? undefined : appendTo
24
34
  const length = value.length;
@@ -37,14 +47,14 @@ counts, appendTo) {
37
47
  return processAddTagArrayItem(item, runtimeInsertBefore, // thisInsert as any,
38
48
  ownerSupport, counts, lastArray, appendTo);
39
49
  }
40
- function reviewPreviousArrayItem(item, itemSubject, lastArray, ownerSupport, index, runtimeInsertBefore, // used during updates
50
+ function reviewPreviousArrayItem(value, itemSubject, lastArray, ownerSupport, index, runtimeInsertBefore, // used during updates
41
51
  counts, appendTo) {
42
52
  const couldBeSame = lastArray.length > index;
43
53
  if (couldBeSame) {
44
- updateExistingValue(itemSubject, item, ownerSupport);
54
+ updateExistingValue(itemSubject, value, ownerSupport);
45
55
  return itemSubject;
46
56
  }
47
- const result = processAddTagArrayItem(item, runtimeInsertBefore, // thisInsert as any,
57
+ const result = processAddTagArrayItem(value, runtimeInsertBefore, // thisInsert as any,
48
58
  ownerSupport, counts, lastArray, appendTo);
49
59
  return result;
50
60
  }
@@ -81,10 +91,11 @@ ownerSupport, counts, lastArray, appendTo) {
81
91
  }
82
92
  export function destroyArrayItem(item, counts) {
83
93
  const global = item.global;
84
- const support = global.newest;
85
- global.deleted = true;
86
- if (support) {
94
+ if (global) {
95
+ const support = global.oldest;
96
+ global.deleted = true;
87
97
  destroySupport(support, counts.removed);
98
+ global.deleted = true;
88
99
  }
89
100
  else {
90
101
  const element = item.simpleValueElm;
@@ -98,11 +109,18 @@ value, index, lastArray, removed, counts) {
98
109
  const newLength = value.length - 1;
99
110
  const at = index - removed;
100
111
  const lessLength = at < 0 || newLength < at;
112
+ const prev = lastArray[index];
101
113
  if (lessLength) {
102
- destroyArrayItem(lastArray[index], counts);
114
+ destroyArrayItem(prev, counts);
103
115
  ++removed;
104
116
  return 1;
105
117
  }
118
+ if (lastArray[index].value.arrayValue !== value[index].arrayValue) {
119
+ destroyArrayItem(prev, counts);
120
+ lastArray.splice(index, 1);
121
+ ++removed;
122
+ return 2;
123
+ }
106
124
  /*
107
125
  const nowValue = getArrayValueByItem(subTag)
108
126
  const lastArrayValue = lastArray.array[index].arrayValue
@@ -1 +1 @@
1
- {"version":3,"file":"processTagArray.js","sourceRoot":"","sources":["../../../ts/tag/update/processTagArray.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processTagArray.js","sourceRoot":"","sources":["../../../ts/tag/update/processTagArray.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { BaseSupport, Support, SupportContextItem } from '../Support.class.js';
2
2
  import { TemplateValue } from './processFirstSubject.utils.js';
3
3
  import { ContextItem } from '../Context.types.js';
4
+ /** Used for all tag value updates. Determines if value changed since last render */
4
5
  export declare function updateExistingValue(contextItem: ContextItem | SupportContextItem, value: TemplateValue, ownerSupport: BaseSupport | Support): void;