taggedjs 2.6.7 → 2.6.8
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/state/callback.function.d.ts +6 -0
- package/js/state/callback.function.js +23 -0
- package/js/state/callback.function.js.map +1 -0
- package/js/state/callbackMaker.function.d.ts +2 -2
- package/js/state/callbackMaker.function.js +2 -20
- package/js/state/callbackMaker.function.js.map +1 -1
- package/js/state/callbackStateUpdate.function.js.map +1 -1
- package/js/state/index.d.ts +1 -0
- package/js/state/index.js +1 -0
- package/js/state/index.js.map +1 -1
- package/js/state/state.utils.d.ts +1 -1
- package/js/state/state.utils.js +2 -3
- package/js/state/state.utils.js.map +1 -1
- package/js/state/syncStates.function.js +5 -9
- package/js/state/syncStates.function.js.map +1 -1
- package/js/tag/afterRender.function.d.ts +4 -0
- package/js/tag/afterRender.function.js +9 -18
- package/js/tag/afterRender.function.js.map +1 -1
- package/js/tag/checkDestroyPrevious.function.js +1 -1
- package/js/tag/checkDestroyPrevious.function.js.map +1 -1
- package/js/tag/checkStateMismatch.function.d.ts +3 -0
- package/js/tag/checkStateMismatch.function.js +29 -0
- package/js/tag/checkStateMismatch.function.js.map +1 -0
- package/js/tag/render/beforeRerender.function.d.ts +4 -0
- package/js/tag/render/beforeRerender.function.js +8 -0
- package/js/tag/render/beforeRerender.function.js.map +1 -0
- package/js/tag/render/renderTagOnly.function.js +10 -3
- package/js/tag/render/renderTagOnly.function.js.map +1 -1
- package/js/tag/tagElement.d.ts +2 -3
- package/js/tag/tagElement.js +34 -10
- package/js/tag/tagElement.js.map +1 -1
- package/js/tag/update/processTagArray.js +28 -10
- package/js/tag/update/processTagArray.js.map +1 -1
- package/js/tag/update/updateExistingValue.function.d.ts +1 -0
- package/js/tag/update/updateExistingValue.function.js +1 -0
- package/js/tag/update/updateExistingValue.function.js.map +1 -1
- 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
|
-
|
|
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,
|
|
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;
|
|
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"}
|
package/js/state/index.d.ts
CHANGED
|
@@ -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
|
package/js/state/index.js.map
CHANGED
|
@@ -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];
|
package/js/state/state.utils.js
CHANGED
|
@@ -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
|
-
|
|
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;
|
|
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
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
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,
|
|
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,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
|
-
|
|
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
|
-
|
|
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;
|
|
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":"AAAA,iEAAiE;AAEjE,OAAO,EAAE,yBAAyB,EAAgB,MAAM,0CAA0C,CAAA;AAElG,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAK,6BAA6B,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAE7D,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAK,kBAAkB,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,MAAK,0BAA0B,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAGjD,MAAM,UAAU,qBAAqB,CACnC,QAAiB,EACjB,OAAoB;IAEpB,sBAAsB;IACtB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,OAAO,CAAC,SAAsB,CAAA;QAChD,YAAY,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QAEhC,OAAO,CAAC,CAAA,CAAC,UAAU;IACrB,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,OAAoB,EACpB,SAAgB;IAEhB,MAAM,MAAM,GAAG,EAAC,KAAK,EAAC,CAAC,EAAE,OAAO,EAAC,CAAC,EAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"checkDestroyPrevious.function.js","sourceRoot":"","sources":["../../ts/tag/checkDestroyPrevious.function.ts"],"names":[],"mappings":"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"}
|
|
@@ -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,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 {
|
|
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
|
-
|
|
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,
|
|
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"}
|
package/js/tag/tagElement.d.ts
CHANGED
|
@@ -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:
|
|
23
|
+
export declare function runWrapper(templater: TemplaterResult, placeholder: Text, appElement: Element, subject: SupportContextItem, isAppFunction: boolean): BaseSupport;
|
package/js/tag/tagElement.js
CHANGED
|
@@ -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
|
-
|
|
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
|
|
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
|
|
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
|
-
|
|
129
|
-
|
|
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(
|
|
135
|
-
runAfterRender(
|
|
158
|
+
const nowSupport = wrapper(useSupport, subject);
|
|
159
|
+
runAfterRender(nowSupport);
|
|
136
160
|
return nowSupport;
|
|
137
161
|
}
|
|
138
162
|
function putOneDomDown(dom, newFragment) {
|
package/js/tag/tagElement.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tagElement.js","sourceRoot":"","sources":["../../ts/tag/tagElement.ts"],"names":[],"mappings":"AAEA,OAAO,EAAe,cAAc,
|
|
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 =
|
|
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
|
-
|
|
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(
|
|
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,
|
|
54
|
+
updateExistingValue(itemSubject, value, ownerSupport);
|
|
45
55
|
return itemSubject;
|
|
46
56
|
}
|
|
47
|
-
const result = processAddTagArrayItem(
|
|
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
|
-
|
|
85
|
-
|
|
86
|
-
|
|
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(
|
|
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":"AAAA,sBAAsB;AAEtB,OAAO,
|
|
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;
|