tungsten 0.6.1 → 0.6.2
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/dist/.build-complete +1 -1
- package/dist/Components.d.ts +12 -8
- package/dist/Components.d.ts.map +1 -1
- package/dist/Components.js +1 -0
- package/dist/Instance/Instance.d.ts +9 -5
- package/dist/Instance/Instance.d.ts.map +1 -1
- package/dist/Instance/Instance.js +101 -60
- package/dist/Servers/DevServer.d.ts.map +1 -1
- package/dist/Servers/DevServer.js +4 -0
- package/dist/Servers/ProdServer.d.ts.map +1 -1
- package/dist/Servers/ProdServer.js +4 -0
- package/dist/Store/InternalStoreSchema.d.ts +12 -1
- package/dist/Store/InternalStoreSchema.d.ts.map +1 -1
- package/dist/Store/InternalStoreSchema.js +2 -0
- package/dist/Store/StoreSubscriptions.types.d.ts +2 -2
- package/dist/Store/StoreSubscriptions.types.d.ts.map +1 -1
- package/dist/Store/getInternalStore.d.ts +3 -3
- package/dist/Store/getInternalStore.d.ts.map +1 -1
- package/dist/Store/makeStore.d.ts +24 -11
- package/dist/Store/makeStore.d.ts.map +1 -1
- package/dist/Store/makeStore.js +27 -23
- package/dist/assert.d.ts +2 -0
- package/dist/assert.d.ts.map +1 -0
- package/dist/assert.js +4 -0
- package/dist/components/Link.d.ts +0 -1
- package/dist/components/Link.d.ts.map +1 -1
- package/dist/components/Link.js +4 -6
- package/dist/testing/createTestApp.d.ts +12 -0
- package/dist/testing/createTestApp.d.ts.map +1 -1
- package/dist/testing/createTestApp.js +9 -3
- package/dist/testing/host.d.ts.map +1 -1
- package/dist/testing/host.js +3 -3
- package/dist/testing/hydrateTestApp.d.ts +1 -0
- package/dist/testing/hydrateTestApp.d.ts.map +1 -1
- package/dist/testing/hydrateTestApp.js +10 -4
- package/dist/testing/index.d.ts +1 -1
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/testingComponentPackage.d.ts +6 -11
- package/dist/testing/testingComponentPackage.d.ts.map +1 -1
- package/dist/testing/testingComponentPackage.js +20 -23
- package/package.json +1 -1
package/dist/.build-complete
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
1789702483581
|
package/dist/Components.d.ts
CHANGED
|
@@ -281,7 +281,7 @@ export declare abstract class TungstenSignalsComponent<Props extends TungstenCom
|
|
|
281
281
|
__content: () => ContentNode | Promise<ContentNode>;
|
|
282
282
|
__styledContent: () => ContentNode | Promise<ContentNode>;
|
|
283
283
|
}
|
|
284
|
-
import type {
|
|
284
|
+
import type { ReadonlyTrueStore } from './Store/makeStore.js';
|
|
285
285
|
import type { Prettify } from '../types/helpers.js';
|
|
286
286
|
import type { Key } from './Key.js';
|
|
287
287
|
import type { GlobalData } from './routing/registerGlobalData.js';
|
|
@@ -303,32 +303,36 @@ export type ComponentStoreValue<T> = {
|
|
|
303
303
|
export type ComponentStore<Schema> = {
|
|
304
304
|
[Property in keyof Schema]: ComponentStoreValue<Schema[Property]>;
|
|
305
305
|
};
|
|
306
|
+
export type ReadonlyComponentStore<Schema> = {
|
|
307
|
+
[Property in keyof Schema]: Omit<ComponentStoreValue<Schema[Property]>, 'set'>;
|
|
308
|
+
};
|
|
306
309
|
export type ComponentStoreWithTrueStore<Schema> = ComponentStore<Schema> & {
|
|
307
|
-
__trueStore:
|
|
310
|
+
__trueStore: ReadonlyTrueStore<Schema>;
|
|
308
311
|
};
|
|
309
|
-
export declare function __proxyStore<Schema extends object>(this: TungstenBaseStoreComponent<any, any, any>, store:
|
|
312
|
+
export declare function __proxyStore<Schema extends object>(this: TungstenBaseStoreComponent<any, any, any>, store: ReadonlyTrueStore<Schema>): Prettify<ComponentStore<Schema>>;
|
|
313
|
+
export type TungstenBaseStoreComponentAny = TungstenBaseStoreComponent<any, any, any>;
|
|
310
314
|
export declare abstract class TungstenBaseStoreComponent<Props extends TungstenComponentPropsBase, RouteData, StoreSchema extends TungstenComponentStoreConstraint> extends TungstenBaseComponent<Props, RouteData> {
|
|
311
|
-
abstract store:
|
|
315
|
+
abstract store: ReadonlyComponentStore<StoreSchema>;
|
|
312
316
|
constructor(pkg: ConstructPackage<Props, RouteData>);
|
|
313
317
|
__proxyStore: typeof __proxyStore;
|
|
314
318
|
__delete: () => void;
|
|
315
319
|
}
|
|
316
320
|
export declare abstract class TungstenBaseSimpleStoreComponent<Props extends TungstenComponentPropsBase, RouteData, StoreSchema extends TungstenComponentStoreConstraint> extends TungstenSimpleComponent<Props, RouteData> {
|
|
317
|
-
abstract store:
|
|
321
|
+
abstract store: ReadonlyComponentStore<StoreSchema>;
|
|
318
322
|
constructor(pkg: ConstructPackage<Props, RouteData>);
|
|
319
323
|
__proxyStore: typeof __proxyStore;
|
|
320
324
|
__delete: () => void;
|
|
321
325
|
}
|
|
322
326
|
export declare abstract class TungstenBaseStatefulStoreComponent<Props extends TungstenComponentPropsBase, State extends TungstenComponentStateConstraint, RouteData, StoreSchema extends TungstenComponentStoreConstraint> extends TungstenStatefulComponent<Props, State, RouteData> {
|
|
323
|
-
abstract store:
|
|
327
|
+
abstract store: ReadonlyComponentStore<StoreSchema>;
|
|
324
328
|
constructor(pkg: ConstructPackage<Props, RouteData>);
|
|
325
329
|
__proxyStore: typeof __proxyStore;
|
|
326
330
|
__delete: () => void;
|
|
327
331
|
}
|
|
328
332
|
export declare abstract class TungstenSimpleInternalStoreComponent<Props extends TungstenComponentPropsBase = object, RouteData = undefined> extends TungstenBaseSimpleStoreComponent<Props, RouteData, InternalStoreSchema> {
|
|
329
|
-
store:
|
|
333
|
+
store: import("./Store/InternalStoreSchema.js").InternalComponentStore;
|
|
330
334
|
}
|
|
331
335
|
export declare abstract class TungstenStatefulInternalStoreComponent<Props extends TungstenComponentPropsBase = object, State extends TungstenComponentStateConstraint = object, RouteData = undefined> extends TungstenBaseStatefulStoreComponent<Props, State, RouteData, InternalStoreSchema> {
|
|
332
|
-
store:
|
|
336
|
+
store: import("./Store/InternalStoreSchema.js").InternalComponentStore;
|
|
333
337
|
}
|
|
334
338
|
//# sourceMappingURL=Components.d.ts.map
|
package/dist/Components.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Components.d.ts","sourceRoot":"","sources":["../src/Components.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAEtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAC1F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AA8B7C,MAAM,MAAM,6BAA6B,GAAG;IACxC,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,QAAQ,CAAC,EAAE,WAAW,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,6BAA6B,GAAG;IACxC,QAAQ,CAAC,EAAE,WAAW,CAAA;IACtB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,SAAS,CAAC,EAAE,SAAS,CAAA;IAErB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAAA;AAE/C,MAAM,MAAM,8BAA8B,GAAG;IACzC,QAAQ,CAAC,EAAE,WAAW,CAAA;IACtB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,SAAS,CAAC,EAAE,SAAS,CAAA;IAErB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,gCAAgC,GAAG,MAAM,CAAA;AAErD,MAAM,MAAM,kCAAkC,GAAG,MAAM,CAAA;AAEvD,MAAM,MAAM,6BAA6B,GAAG;IACxC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,gCAAgC,GAAG,MAAM,CAAA;AAGrD,MAAM,MAAM,cAAc,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,GAAG,CAAA;AACxD,MAAM,MAAM,YAAY,GAAG,GAAG,EAAE,CAAA;AAChC,MAAM,MAAM,YAAY,GAAG,GAAG,EAAE,CAAA;AAChC,MAAM,MAAM,QAAQ,GAAG;IACnB,MAAM,EAAE,cAAc,CAAA;IACtB,IAAI,EAAE,YAAY,CAAA;CACrB,CAAA;AAgCD,MAAM,MAAM,gBAAgB,CAAC,KAAK,EAAE,SAAS,IAAI;IAC7C,KAAK,EAAE,KAAK,CAAC;IACb,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,EAAE,eAAe,GAAG,IAAI,CAAA;IAGrC,MAAM,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAKD,MAAM,MAAM,sBAAsB,CAC9B,KAAK,SAAS,0BAA0B,EACxC,SAAS,SAAS,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC,IAC3F,KAAK,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,SAAS,CAAA;AAE9D,MAAM,MAAM,yBAAyB,CACjC,KAAK,SAAS,0BAA0B,GAAG,0BAA0B,EAAC,iCAAiC;AACvG,SAAS,GAAG,SAAS,IACrB;IACA,KAAK,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,GAAG,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;IACtF,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,mBAAmB,CAAA;CAC/B,CAAA;AAED,MAAM,MAAM,2BAA2B,CACnC,KAAK,SAAS,0BAA0B,GAAG,0BAA0B,EAAC,iCAAiC;AACvG,SAAS,GAAG,SAAS,IACrB;IACA,KAAK,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,GAAG,uBAAuB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;IACxF,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACvB,CAAA;AAGD,MAAM,MAAM,6BAA6B,CACrC,KAAK,SAAS,0BAA0B,EAAC,iCAAiC;AAC1E,KAAK,SAAS,gCAAgC,EAC9C,SAAS,GAAG,SAAS,IACrB;IACA,KAAK,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,GAAI,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA;IAClG,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACvB,CAAA;AAGD,MAAM,MAAM,8BAA8B,CACtC,KAAK,SAAS,0BAA0B,EAAC,iCAAiC;AAC1E,SAAS,EACT,WAAW,SAAS,gCAAgC,IACpD;IACA,KAAK,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,GAAG,0BAA0B,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,CAAA;IACxG,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACvB,CAAA;AAgCD,8BAAsB,qBAAqB,CACvC,KAAK,SAAS,0BAA0B,GAAG,0BAA0B,EACrE,SAAS,GAAG,SAAS;;IAErB,aAAa,SAAkB;IAE/B,UAAU,EAAE,QAAQ,CAAA;IACpB,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB,eAAe,EAAE,YAAY,GAAG,IAAI,CAAA;IACpC,eAAe,EAAE,YAAY,EAAE,CAAK;IACpC,KAAK,EAAE,KAAK,CAAA;IACZ,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;IACrC,SAAS,EAAE,SAAS,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAEnC,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3C,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC9D,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACxC,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAElC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACpE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACxC,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAElC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACpE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACxC,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAElC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,GAAG,CAAC,GAAI,CAAC,MAAM,GAAG,CAAC,CAAA;IAGzG,KAAK,CAAC,EAAE,QAAQ,CAAA;IAChB;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,aAAa,UAAQ;IAErB,QAAQ,UAAQ;IAEhB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAQ;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAGjB,gBAAgB,EAAE,mBAAmB,GAAG,YAAY,CAAe;IACnE,SAAS,CAAC,MAAM,UAAQ;IACxB,gBAAgB,UAAQ;IAIxB,cAAc,CAAC,EAAE,iCAAiC,CAAA;IAElD;;;OAGG;IACH,uBAAuB,QAAO,YAAY,CAKxC;IAEF,YAAY,GAAI,SAAS,WAAW,KAAG,WAAW,CAWjD;IAOD,OAAO,CAAC,EAAE,uBAAuB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;IAC7C,MAAM,CAAC,EAAE,uBAAuB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;IAE5C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IACnE,QAAQ,CAAC,aAAa,EAAE,MAAM,IAAI,CAAA;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IAC5D,QAAQ,CAAC,eAAe,EAAE,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IAIlE,eAAe,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;IACvC,YAAY,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;IAEpC,QAAQ,8BAAsD;IAC9D,QAAQ,CAAC,WAAW,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,CAAA;IACjD,QAAQ,CAAC,wBAAwB,EAAE,MAAM,OAAO,CAAC;QAAE,OAAO,EAAE,WAAW,CAAC;QAAC,QAAQ,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC,CAAA;IAGhG,iBAAiB,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9C,QAAQ,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACrC,mBAAmB,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAChD,SAAS,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACtC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAChF,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACtE,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAChF,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACvE,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,oBAAoB,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACjD,SAAS,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACtC,mBAAmB,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAChD,QAAQ,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAIrC,0BAA0B,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,KAAK,OAAO,CAAA;IACjE,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAE3B,MAAM,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;gBAEb,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC;IA8BnD,IAAI,UAAU,IAAI,UAAU,CAAsC;IAElE,cAAc,GAAI,OAAO,MAAM,EAAE,WAAW,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,UAErE;IAED,aAAa,aA+BZ;IACD,aAAa,8BAGZ;IAGD,QAAQ,GAAI,MAAM,GAAG,KAAG,IAAI,CAE3B;IAID,UAAU,aAQT;IAGD,YAAY,aAQX;IAED,QAAQ,CAAC,WAAW,EAAE,MAAM,IAAI,CAAA;IAMhC,QAAQ,aAA2B;IAQnC,SAAS,aAWR;IAED,SAAS,GAAI,GAAG,SAAS,MAAM,KAAK,EAAE,GAAG,MAAM,GAAG,EAAE,0EAEnD;IAKD,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACxB,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAEzB,UAAU,GAAI,MAAM,MAAM,IAAI,EAAE,WAAM,KAAG,MAAM,GAAG,SAAS,CAO1D;IACD,WAAW,GAAI,MAAM,MAAM,IAAI,EAAE,IAAI,MAAM,KAAG,MAAM,GAAG,SAAS,CAM/D;IACD,YAAY,GAAI,QAAQ,MAAM,GAAG,SAAS,UAIzC;IACD,aAAa,GAAI,QAAQ,MAAM,GAAG,SAAS,UAI1C;IAED,aAAa,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAA;IAE/B,KAAK,GAAI,CAAC,SAAS,UAAU,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,UAAU,EAAE,CAAC,KAAK,IAAI,KAAG,CAAC,CAc1E;CAEJ;AAGD,8BAAsB,uBAAuB,CACzC,KAAK,SAAS,0BAA0B,GAAG,0BAA0B,EACrE,SAAS,GAAG,SAAS,CACvB,SAAQ,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC;IAC7C,KAAK,CAAC,EAAE,KAAK,CAAA;IAEb,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAC9E,UAAU,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IACpF,UAAU,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAC5E,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,GAAG,CAAC,GAAI,CAAC,MAAM,GAAG,CAAC,CAAA;IAExE,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAA;IACtC,MAAM,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAA;IAE7C,kBAAkB,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAChG,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IACtF,kBAAkB,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAChG,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAEvF,MAAM,sBAeL;IAKD,gBAAgB,2CAoBf;IAED,WAAW,8BAwCV;IAED,wBAAwB;;;OAUvB;IACD,oBAAoB,GAAI,OAAO,KAAK,UAanC;IAED,aAAa,aAOZ;IAED,SAAS,QAAO,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAQjD;IAED,eAAe,QAAO,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAWvD;IAED,WAAW,aAOV;CAEJ;AAID,8BAAsB,iBAAiB,CACnC,KAAK,SAAS,0BAA0B,GAAG,MAAM,EACjD,KAAK,SAAS,gCAAgC,GAAG,SAAS,GAAG,SAAS,EACtE,SAAS,GAAG,SAAS,CACvB,SAAQ,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC;IAC7C,KAAK,CAAC,EAAE,KAAK,CAAA;IAEb,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACvD,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACxC,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,UAAU,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC7D,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACxC,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,UAAU,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC7D,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACxC,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,KAAK,MAAM,CAAC,GACpE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,MAAM,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,CAAA;IAOzC,OAAO,CAAC,EAAE,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IAC/C,MAAM,CAAC,EAAE,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IAEtD,kBAAkB,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC7E,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACnE,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,kBAAkB,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC7E,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACpE,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAElC,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;gBAEf,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC;IAKnD,MAAM,sBAyBL;IAKD,gBAAgB,2CAOf;IAED,WAAW,8BA2BV;IAED,aAAa,aAQZ;IAED,QAAQ,GAAI,cAAc,KAAK,UAQ9B;IACD,YAAY,GAAI,cAAc,KAAK,UAWlC;IAUD,cAAc,aASb;IAID,WAAW,GAAI,MAAM,OAAO,aAI3B;IAED,SAAS,QAAO,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAUjD;IAED,eAAe,QAAO,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAWvD;CAEJ;AAED,8BAAsB,yBAAyB,CAC3C,KAAK,SAAS,0BAA0B,EACxC,KAAK,SAAS,gCAAgC,EAC9C,SAAS,GAAG,SAAS,CACvB,SAAQ,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC;IAC7C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;IAErB,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACvD,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACxC,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,UAAU,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC7D,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACxC,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,UAAU,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC7D,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACxC,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,KAAK,MAAM,CAAC,GACpE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,MAAM,CAAC,GAAI,CAAC,MAAM,MAAM,CAAC,CAAA;IAOlD,QAAQ,CAAC,OAAO,EAAE,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IAC/C,MAAM,CAAC,EAAE,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IAEtD,kBAAkB,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC7E,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACnE,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAElC,kBAAkB,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC7E,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACpE,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAElC,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;gBAEf,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC;IAOnD,MAAM,sBAuBL;IAMD,gBAAgB,2CAsBf;IAED,WAAW,8BAuCV;IACD,wBAAwB;;;OAUvB;IACD,oBAAoB,GAAI,OAAO,KAAK,EAAE,OAAO,KAAK,UAajD;IAED,aAAa,aAOZ;IAED,QAAQ,GAAI,cAAc,KAAK,UAQ9B;IACD,YAAY,GAAI,cAAc,KAAK,UAWlC;IAED,cAAc,aASb;IAKD,WAAW,GAAI,MAAM,OAAO,aAK3B;IAED,SAAS,QAAO,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAOjD;IAED,eAAe,QAAO,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAoBvD;IAMD,WAAW,aAUV;IAED,SAAS,GAAI,GAAG,SAAS,MAAM,KAAK,EAAE,GAAG,MAAM,GAAG,EAAE,0EAEnD;CACJ;AAID;;;;;;GAMG;AACH,8BAAsB,wBAAwB,CAC1C,KAAK,SAAS,0BAA0B,EACxC,OAAO,SAAS,kCAAkC,EAClD,SAAS,GAAG,SAAS,CACvB,SAAQ,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC;IAC7C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,SAAkB,SAAS,QAAO;IAEzB,QAAQ,EAAE,MAAM,CAEvB;IAEF,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC3D,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACxC,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,UAAU,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACjE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACxC,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,UAAU,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACjE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACxC,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,GACxE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,MAAM,CAAC,GAAI,CAAC,MAAM,MAAM,CAAC,CAAA;IAElD,QAAQ,CAAC,OAAO,EAAE,uBAAuB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAEzD,kBAAkB,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACjF,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACvE,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,kBAAkB,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACjF,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GACxE,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAElC,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;gBAEf,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC;IAInD,MAAM,sBAcL;IAED,gBAAgB,2CAGf;IAED,WAAW,8BAgBV;IAED,wBAAwB;;;OAUvB;IAED,oBAAoB,GAAI,OAAO,KAAK,EAAE,SAAS,OAAO,UAQrD;IAED,WAAW,aAOV;IAED,aAAa,aAOZ;IAGD,cAAc,aAEb;IAGD,SAAS,QAAO,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAEjD;IAED,eAAe,QAAO,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAIvD;CACJ;AAMD,OAAO,KAAK,EAAwB,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAC3E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AACnC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACzE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AAGxE,OAAO,EAA0C,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAE3F,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,cAAc,CAAA;AAC9D,OAAO,EAEH,KAAK,mBAAmB,EACxB,KAAK,iCAAiC,EACzC,MAAM,0BAA0B,CAAA;AAMjC,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI;IACjC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACtB,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAA;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,IAAI,CAAA;IAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,IAAI,CAAA;IAChC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,CAAA;IAChE,QAAQ,CAAC,UAAU,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,CAAA;CACvE,CAAA;AAED,MAAM,MAAM,cAAc,CAAC,MAAM,IAAI;KAChC,QAAQ,IAAI,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;CACpE,CAAA;AAED,MAAM,MAAM,2BAA2B,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,CAAC,GAAG;IAAE,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,CAAA;CAAE,CAAA;AAE7G,wBAAgB,YAAY,CAAC,MAAM,SAAS,MAAM,EAC9C,IAAI,EAAE,0BAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,GAC1E,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CA4ClC;AA8BD,8BAAsB,0BAA0B,CAC5C,KAAK,SAAS,0BAA0B,EACxC,SAAS,EACT,WAAW,SAAS,gCAAgC,CACtD,SAAQ,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC;IAC7C,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC,WAAW,CAAC,CAAA;gBAC/B,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC;IAInD,YAAY,sBAAe;IAE3B,QAAQ,aAMP;CACJ;AAGD,8BAAsB,gCAAgC,CAClD,KAAK,SAAS,0BAA0B,EACxC,SAAS,EACT,WAAW,SAAS,gCAAgC,CACtD,SAAQ,uBAAuB,CAAC,KAAK,EAAE,SAAS,CAAC;IAE/C,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC,WAAW,CAAC,CAAA;gBAC/B,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC;IAInD,YAAY,sBAAe;IAE3B,QAAQ,aAKP;CACJ;AAGD,8BAAsB,kCAAkC,CACpD,KAAK,SAAS,0BAA0B,EACxC,KAAK,SAAS,gCAAgC,EAC9C,SAAS,EACT,WAAW,SAAS,gCAAgC,CACtD,SAAQ,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC;IACxD,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC,WAAW,CAAC,CAAA;gBAC/B,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC;IAGnD,YAAY,sBAAe;IAE3B,QAAQ,aAKP;CACJ;AAKD,8BAAsB,oCAAoC,CACtD,KAAK,SAAS,0BAA0B,GAAG,MAAM,EACjD,SAAS,GAAG,SAAS,CACvB,SAAQ,gCAAgC,CAAC,KAAK,EAAE,SAAS,EAAE,mBAAmB,CAAC;IAC7E,KAAK,sCAAyB;CACjC;AAED,8BAAsB,sCAAsC,CACxD,KAAK,SAAS,0BAA0B,GAAG,MAAM,EACjD,KAAK,SAAS,gCAAgC,GAAG,MAAM,EACvD,SAAS,GAAG,SAAS,CACvB,SAAQ,kCAAkC,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,mBAAmB,CAAC;IACtF,KAAK,sCAAyB;CACjC"}
|
|
1
|
+
{"version":3,"file":"Components.d.ts","sourceRoot":"","sources":["../src/Components.tsx"],"names":[],"mappings":"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"}
|
package/dist/Components.js
CHANGED
|
@@ -952,6 +952,7 @@ import { guardedUpdate } from './update/guardedUpdate.js';
|
|
|
952
952
|
import { getInternalStore } from './Store/getInternalStore.js';
|
|
953
953
|
import { isDev } from './isDev.js';
|
|
954
954
|
import { warn } from './output.js';
|
|
955
|
+
// takes the readable form, so a store whose framework-owned keys drop set() can be proxied too
|
|
955
956
|
export function __proxyStore(store) {
|
|
956
957
|
const proxiedStore = objectMap(store, (valueKey, valueObject) => {
|
|
957
958
|
const handler = {
|
|
@@ -3,7 +3,7 @@ import type { InstanceConfig } from './InstanceConfig.js';
|
|
|
3
3
|
import type { ReqRes } from '../ReqRes.js';
|
|
4
4
|
import type { AppRoutes } from '../routing/AppRoutes.js';
|
|
5
5
|
import type { GlobalData } from '../routing/registerGlobalData.js';
|
|
6
|
-
import type {
|
|
6
|
+
import type { InternalStore } from '../Store/InternalStoreSchema.js';
|
|
7
7
|
import type { TrueStore } from '../Store/makeStore.js';
|
|
8
8
|
import type { MatchedRouteInfo } from '../Servers/MatchedRouteInfo.js';
|
|
9
9
|
import type { Routes } from '../routing/Routes.js';
|
|
@@ -20,7 +20,7 @@ export declare class Instance {
|
|
|
20
20
|
appRoutes: AppRoutes;
|
|
21
21
|
routes: Routes;
|
|
22
22
|
hydrationComplete: boolean;
|
|
23
|
-
internalStore:
|
|
23
|
+
internalStore: InternalStore;
|
|
24
24
|
stores: TrueStore<any>[];
|
|
25
25
|
storeSubscriptions: StoreSubscriptionsMap;
|
|
26
26
|
serverLoadingData: boolean;
|
|
@@ -32,18 +32,22 @@ export declare class Instance {
|
|
|
32
32
|
globalData: GlobalData;
|
|
33
33
|
matchedRouteInfo: MatchedRouteInfo;
|
|
34
34
|
persistentHeadChildren: HTMLElement[];
|
|
35
|
-
navigating: boolean;
|
|
36
35
|
runtimeContext: ClientRuntimeContext | undefined;
|
|
37
36
|
registeredComponents: DisposableComponent[];
|
|
38
|
-
|
|
37
|
+
redirected: {
|
|
38
|
+
url: string;
|
|
39
|
+
code: RedirectCode;
|
|
40
|
+
} | undefined;
|
|
41
|
+
constructor(location: string, instanceConfig: InstanceConfig, reqRes: ReqRes | null, appRoutes: AppRoutes, routes: Routes, internalStore: InternalStore, stores: TrueStore<any>[], storeSubscriptions: StoreSubscriptionsMap, globalData: GlobalData, matchedRouteInfo: MatchedRouteInfo, runtimeContext?: ClientRuntimeContext);
|
|
39
42
|
routeKeyToUrl: (routeKey: RouteKey) => string;
|
|
40
43
|
urlToRouteKey: (pathname: string) => RouteKey;
|
|
41
44
|
getRoutes: () => Routes;
|
|
42
45
|
updateLocation: (location: string) => void;
|
|
43
|
-
goto: (
|
|
46
|
+
goto: (path: RouteKey, { pushHistory }?: {
|
|
44
47
|
pushHistory?: boolean;
|
|
45
48
|
}) => Promise<void>;
|
|
46
49
|
redirect: (url: string, code?: RedirectCode) => void;
|
|
50
|
+
httpTo: (url: string) => void;
|
|
47
51
|
setDefaultTitle: (defaultTitle: string) => void;
|
|
48
52
|
setTitle: (title: string) => void;
|
|
49
53
|
setTitleToDefault: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Instance.d.ts","sourceRoot":"","sources":["../../src/Instance/Instance.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAA;AAEvF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAClE,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"Instance.d.ts","sourceRoot":"","sources":["../../src/Instance/Instance.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,8 @@ import { ContentNodeIsClassComponent } from '../ContentNode.js';
|
|
|
14
14
|
import { $props, $type } from '../contentNodeSymbols.js';
|
|
15
15
|
import { errorOut } from '../appOutput.js';
|
|
16
16
|
import { makeTungstenErrorInfo } from '../routing/TungstenErrorInfo.js';
|
|
17
|
+
import { tAssert } from '../assert.js';
|
|
18
|
+
import { throwError } from '../throwError.js';
|
|
17
19
|
export class Instance {
|
|
18
20
|
constructor(_location, instanceConfig, reqRes, appRoutes, routes,
|
|
19
21
|
//globalData: GlobalData,
|
|
@@ -39,9 +41,13 @@ export class Instance {
|
|
|
39
41
|
_defineProperty(this, "globalData", void 0);
|
|
40
42
|
_defineProperty(this, "matchedRouteInfo", void 0);
|
|
41
43
|
_defineProperty(this, "persistentHeadChildren", void 0);
|
|
42
|
-
|
|
44
|
+
//navigationIndex: number = 0
|
|
45
|
+
//lastNavigation: number = 0
|
|
46
|
+
//navigating: boolean = false
|
|
43
47
|
_defineProperty(this, "runtimeContext", void 0);
|
|
44
48
|
_defineProperty(this, "registeredComponents", []);
|
|
49
|
+
// set when the server has answered the request with a redirect, so it sends nothing more
|
|
50
|
+
_defineProperty(this, "redirected", undefined);
|
|
45
51
|
_defineProperty(this, "routeKeyToUrl", routeKey => {
|
|
46
52
|
return routeKeyToUrl(routeKey, this.config.siteBasePath, isProd && this.config.staticSite);
|
|
47
53
|
});
|
|
@@ -60,72 +66,93 @@ export class Instance {
|
|
|
60
66
|
this.location = location;
|
|
61
67
|
this.internalStore.location.set(location);
|
|
62
68
|
});
|
|
63
|
-
_defineProperty(this, "goto", async (
|
|
69
|
+
_defineProperty(this, "goto", async (path, {
|
|
64
70
|
pushHistory = true
|
|
65
71
|
} = {}) => {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
let matchedRouteInfo;
|
|
69
|
-
try {
|
|
70
|
-
matchedRouteInfo = await routing(routeKey, this.getRoutes());
|
|
71
|
-
} catch (error) {
|
|
72
|
-
errorOut(`Tungsten client navigation to '${routeKey}' failed while loading route data:`, error);
|
|
73
|
-
const errorRoute = this.routes.error;
|
|
74
|
-
// Without an app-defined error route there's nothing better to show; at
|
|
75
|
-
// least this is now a logged, caught rejection rather than a silent
|
|
76
|
-
// unhandled one that left the previous page frozen with no feedback.
|
|
77
|
-
if (errorRoute === undefined) return;
|
|
78
|
-
matchedRouteInfo = {
|
|
79
|
-
key: 'error',
|
|
80
|
-
params: {},
|
|
81
|
-
content: errorRoute.content,
|
|
82
|
-
data: makeTungstenErrorInfo(error)
|
|
83
|
-
};
|
|
84
|
-
}
|
|
85
|
-
//console.log('matchedRouteInfo', location, matchedRouteInfo)
|
|
86
|
-
//console.log('matched route info', this.matchedRouteInfo)
|
|
87
|
-
// data here is the result of the route data function
|
|
88
|
-
if (matchedRouteInfo.data instanceof RoutingRedirect) {
|
|
89
|
-
const redirect = matchedRouteInfo.data;
|
|
90
|
-
this.goto(redirect.to);
|
|
72
|
+
if (isServer) {
|
|
73
|
+
this.redirect(this.routeKeyToUrl(path));
|
|
91
74
|
return;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
//
|
|
97
|
-
|
|
98
|
-
this.redirect(redirect.to, redirect.code);
|
|
75
|
+
}
|
|
76
|
+
// immediate redirect
|
|
77
|
+
//
|
|
78
|
+
if (!this.config.clientSideNav) {
|
|
79
|
+
// if clientSideNav is off, these navs should turn into requests to the server
|
|
80
|
+
this.httpTo(this.routeKeyToUrl(path));
|
|
99
81
|
return;
|
|
100
82
|
}
|
|
101
|
-
//
|
|
102
|
-
//
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
83
|
+
// the store types these two readonly for everyone else; goto() is what owns them
|
|
84
|
+
const navigationIndex = this.internalStore.navigationIndex; // eslint-disable-line @typescript-eslint/no-unsafe-type-assertion
|
|
85
|
+
const navigating = this.internalStore.navigating; // eslint-disable-line @typescript-eslint/no-unsafe-type-assertion
|
|
86
|
+
const i = navigationIndex.get() + 1;
|
|
87
|
+
navigationIndex.set(i);
|
|
88
|
+
navigating.set(true);
|
|
89
|
+
// get route data
|
|
90
|
+
try {
|
|
91
|
+
let matchedRouteInfo;
|
|
92
|
+
try {
|
|
93
|
+
matchedRouteInfo = await routing(path, this.getRoutes());
|
|
94
|
+
} catch (error) {
|
|
95
|
+
errorOut(`Tungsten client navigation to '${path}' failed while loading route data:`, error);
|
|
96
|
+
const errorRoute = this.routes.error;
|
|
97
|
+
// Without an app-defined error route there's nothing better to show; at
|
|
98
|
+
// least this is now a logged, caught rejection rather than a silent
|
|
99
|
+
// unhandled one that left the previous page frozen with no feedback.
|
|
100
|
+
if (errorRoute === undefined) return;
|
|
101
|
+
matchedRouteInfo = {
|
|
102
|
+
key: 'error',
|
|
103
|
+
params: {},
|
|
104
|
+
content: errorRoute.content,
|
|
105
|
+
data: makeTungstenErrorInfo(error)
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
//console.log('matchedRouteInfo', location, matchedRouteInfo)
|
|
109
|
+
//console.log('matched route info', this.matchedRouteInfo)
|
|
110
|
+
if (i !== navigationIndex.get()) return; // another nav has taken over
|
|
111
|
+
// data here is the result of the route data function
|
|
112
|
+
if (matchedRouteInfo.data instanceof RoutingRedirect) {
|
|
113
|
+
const redirect = matchedRouteInfo.data;
|
|
114
|
+
this.goto(redirect.to);
|
|
109
115
|
return;
|
|
110
|
-
} else if (matchedRouteInfo.
|
|
111
|
-
|
|
112
|
-
|
|
116
|
+
} else if (matchedRouteInfo.data instanceof WebRedirect) {
|
|
117
|
+
// A WebRedirect names a URL rather than a route, so it leaves the
|
|
118
|
+
// application — exactly as a WebRedirectComponent returned as
|
|
119
|
+
// content does below. On the server redirect() writes an HTTP
|
|
120
|
+
// redirect; in the browser it replaces the location.
|
|
121
|
+
const redirect = matchedRouteInfo.data;
|
|
122
|
+
this.redirect(redirect.to, redirect.code);
|
|
113
123
|
return;
|
|
114
124
|
}
|
|
125
|
+
// handle Redirect components
|
|
126
|
+
// if (
|
|
127
|
+
// matchedRouteInfo.content instanceof RedirectComponent
|
|
128
|
+
// //&& matchedRouteInfo.content.__tungstenComponentType === 'redirect'
|
|
129
|
+
// ) {
|
|
130
|
+
if (typeof matchedRouteInfo.content !== 'function' && ContentNodeIsClassComponent(matchedRouteInfo.content)) {
|
|
131
|
+
if (matchedRouteInfo.content[$type] === RouteRedirectComponent || matchedRouteInfo.content[$type].prototype instanceof RouteRedirectComponent) {
|
|
132
|
+
this.goto(matchedRouteInfo.content[$props].to);
|
|
133
|
+
return;
|
|
134
|
+
} else if (matchedRouteInfo.content[$type] === WebRedirectComponent || matchedRouteInfo.content[$type].prototype instanceof WebRedirectComponent) {
|
|
135
|
+
console.log('Content is a WebRedirectComponent - perform a hard redirect');
|
|
136
|
+
this.redirect(matchedRouteInfo.content[$props].to);
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
//console.log('updating route info to', matchedRouteInfo)
|
|
141
|
+
//console.log('instance goto')
|
|
142
|
+
//console.log('siteBasePath', this.config.siteBasePath)
|
|
143
|
+
//console.log('location', location)
|
|
144
|
+
//console.log('final dest', this.config.siteBasePath + location)
|
|
145
|
+
this.matchedRouteInfo = matchedRouteInfo;
|
|
146
|
+
if (isClient && pushHistory) {
|
|
147
|
+
const runtimeWindow = this.runtimeContext?.window ?? window;
|
|
148
|
+
runtimeWindow.history.pushState(null, '', this.routeKeyToUrl(path));
|
|
149
|
+
}
|
|
150
|
+
this.setTitleToDefault();
|
|
151
|
+
this.updateLocation(path); // this.internalStore.set('location', to)
|
|
152
|
+
//this.finishedNavigating()
|
|
153
|
+
} finally {
|
|
154
|
+
if (i === navigationIndex.get()) navigating.set(false);
|
|
115
155
|
}
|
|
116
|
-
//console.log('updating route info to', matchedRouteInfo)
|
|
117
|
-
//console.log('instance goto')
|
|
118
|
-
//console.log('siteBasePath', this.config.siteBasePath)
|
|
119
|
-
//console.log('location', location)
|
|
120
|
-
//console.log('final dest', this.config.siteBasePath + location)
|
|
121
|
-
this.matchedRouteInfo = matchedRouteInfo;
|
|
122
|
-
if (isClient && pushHistory) {
|
|
123
|
-
const runtimeWindow = this.runtimeContext?.window ?? window;
|
|
124
|
-
runtimeWindow.history.pushState(null, '', this.routeKeyToUrl(routeKey));
|
|
125
|
-
}
|
|
126
|
-
this.setTitleToDefault();
|
|
127
|
-
this.updateLocation(routeKey); // this.internalStore.set('location', to)
|
|
128
|
-
//this.finishedNavigating()
|
|
129
156
|
});
|
|
130
157
|
// postNavigationQueue: (() => void)[] = []
|
|
131
158
|
// finishedNavigating = () => {
|
|
@@ -137,14 +164,28 @@ export class Instance {
|
|
|
137
164
|
// }
|
|
138
165
|
_defineProperty(this, "redirect", (url, code = 302) => {
|
|
139
166
|
if (this.reqRes) {
|
|
140
|
-
|
|
167
|
+
tAssert(isServer, 'reqRes is set, expected isServer to be truthy');
|
|
168
|
+
// a render can ask more than once (two <GoTo>s, a goto() and a WebRedirect): the
|
|
169
|
+
// first answers the request, and a second res.redirect() would throw
|
|
170
|
+
if (this.redirected !== undefined) return;
|
|
171
|
+
this.redirected = {
|
|
172
|
+
url,
|
|
173
|
+
code
|
|
174
|
+
};
|
|
141
175
|
this.reqRes.res.redirect(code, url);
|
|
142
176
|
} else {
|
|
143
|
-
|
|
177
|
+
tAssert(isClient, 'reqRes is not set, expected isClient to be truthy');
|
|
144
178
|
const runtimeWindow = this.runtimeContext?.window ?? window;
|
|
145
179
|
runtimeWindow.location.replace(url);
|
|
146
180
|
}
|
|
147
181
|
});
|
|
182
|
+
_defineProperty(this, "httpTo", url => {
|
|
183
|
+
if (!isClient) {
|
|
184
|
+
throwError('gotoHttp', 'Cannot modify window location on the server');
|
|
185
|
+
}
|
|
186
|
+
const runtimeWindow = this.runtimeContext?.window ?? window;
|
|
187
|
+
runtimeWindow.location.assign(url);
|
|
188
|
+
});
|
|
148
189
|
_defineProperty(this, "setDefaultTitle", defaultTitle => {
|
|
149
190
|
this.defaultTitle = defaultTitle;
|
|
150
191
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DevServer.d.ts","sourceRoot":"","sources":["../../src/Servers/DevServer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAClC,OAAO,OAAgF,MAAM,SAAS,CAAA;AAOtG,OAAO,KAAK,EAAE,uBAAuB,EAAwB,MAAM,uBAAuB,CAAA;AAC1F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AA0B1C,OAAO,EAAkB,KAAK,UAAU,EAAE,KAAK,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAC3G,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAsBrD,qBAAa,SAAU,SAAQ,cAAc;IACzC,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,uBAAuB,CAAA;IAC/B,eAAe,EAAE,eAAe,CAAA;IAChC,aAAa,EAAE,MAAM,CAAA;IAGrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAO;IAGlC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAO;IAClC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACzC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAA;IAExB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,OAAO,CAAO;IAC3B,cAAc,EAAE,MAAM,CAAI;IAC1B,oBAAoB,EAAE,MAAM,CAAI;IAChC,OAAO,CAAC,iBAAiB,CAA2B;IACpD,OAAO,CAAC,iBAAiB,CAA4B;IAIrD,OAAO,CAAC,MAAM,CAA2C;gBAErD,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,uBAAuB,EAAE,eAAe,EAAE,eAAe,EACvF,iBAAiB,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM;IAoIlD,OAAO,CAAC,mBAAmB,CA2E1B;IAKD,OAAO,CAAC,sBAAsB,CAQ7B;IACD,OAAO,CAAC,mBAAmB,CAA8B;IACzD,OAAO,CAAC,iBAAiB,CAA+B;IACxD,OAAO,CAAC,kBAAkB,CAAyB;IACnD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAM;IAC9C,OAAO,CAAC,oBAAoB,CAwB3B;IACD,OAAO,CAAC,mBAAmB,CAK1B;IACD,OAAO,CAAC,gBAAgB,CAcvB;IAED,OAAO,CAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"DevServer.d.ts","sourceRoot":"","sources":["../../src/Servers/DevServer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAClC,OAAO,OAAgF,MAAM,SAAS,CAAA;AAOtG,OAAO,KAAK,EAAE,uBAAuB,EAAwB,MAAM,uBAAuB,CAAA;AAC1F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AA0B1C,OAAO,EAAkB,KAAK,UAAU,EAAE,KAAK,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAC3G,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAsBrD,qBAAa,SAAU,SAAQ,cAAc;IACzC,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,uBAAuB,CAAA;IAC/B,eAAe,EAAE,eAAe,CAAA;IAChC,aAAa,EAAE,MAAM,CAAA;IAGrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAO;IAGlC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAO;IAClC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACzC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAA;IAExB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,OAAO,CAAO;IAC3B,cAAc,EAAE,MAAM,CAAI;IAC1B,oBAAoB,EAAE,MAAM,CAAI;IAChC,OAAO,CAAC,iBAAiB,CAA2B;IACpD,OAAO,CAAC,iBAAiB,CAA4B;IAIrD,OAAO,CAAC,MAAM,CAA2C;gBAErD,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,uBAAuB,EAAE,eAAe,EAAE,eAAe,EACvF,iBAAiB,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM;IAoIlD,OAAO,CAAC,mBAAmB,CA2E1B;IAKD,OAAO,CAAC,sBAAsB,CAQ7B;IACD,OAAO,CAAC,mBAAmB,CAA8B;IACzD,OAAO,CAAC,iBAAiB,CAA+B;IACxD,OAAO,CAAC,kBAAkB,CAAyB;IACnD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAM;IAC9C,OAAO,CAAC,oBAAoB,CAwB3B;IACD,OAAO,CAAC,mBAAmB,CAK1B;IACD,OAAO,CAAC,gBAAgB,CAcvB;IAED,OAAO,CAAC,aAAa,CAsOpB;IAaD,OAAO,CAAC,mBAAmB,CAsC1B;IAID,aAAa,GAAU,MAAM,kBAAkB,EAAE,QAAQ,MAAM,yBAQ9D;IACD,QAAQ,GAAI,OAAO,OAAO,UAIzB;IACD,SAAS,GAAI,OAAO,OAAO,EAAE,YAAY,MAAM,EAAE,YAiBhD;IAGD,KAAK;;;;OA+BJ;IACD,IAAI,aAMH;CAGJ"}
|
|
@@ -379,6 +379,8 @@ export class DevServer extends TungstenServer {
|
|
|
379
379
|
// '' // siteBasePathOverride
|
|
380
380
|
// )
|
|
381
381
|
}
|
|
382
|
+
// a goto() during the render has already answered with a redirect
|
|
383
|
+
if (instance.redirected !== undefined) return;
|
|
382
384
|
//debug('html', html)
|
|
383
385
|
res.setHeader('Content-Type', 'text/html');
|
|
384
386
|
res.status(instance.matchedRouteInfo.key === '404' ? 404 : 200);
|
|
@@ -387,6 +389,8 @@ export class DevServer extends TungstenServer {
|
|
|
387
389
|
cliLog('error in TungstenServer handleRequest', e);
|
|
388
390
|
this.errorLog(e);
|
|
389
391
|
cliLog('');
|
|
392
|
+
// too late for an error page once a redirect has gone out
|
|
393
|
+
if (res.headersSent) return;
|
|
390
394
|
const errorRouteHtml = await this.tryRenderErrorRoute(req, res, capturedRoutes, capturedRootComponentClass, capturedGlobalData, e);
|
|
391
395
|
res.setHeader('Content-Type', 'text/html');
|
|
392
396
|
res.status(500);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProdServer.d.ts","sourceRoot":"","sources":["../../src/Servers/ProdServer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAClC,OAAO,OAAO,MAAM,SAAS,CAAA;AAK7B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAGxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAiB7D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAWrD,qBAAa,UAAW,SAAQ,cAAc;IAC1C,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,uBAAuB,CAAA;IAC/B,eAAe,EAAE,eAAe,CAAA;IAChC,SAAS,EAAE,SAAS,CAAA;IACpB,mBAAmB,EAAE,gBAAgB,GAAG,IAAI,CAAA;IAO5C,YAAY,EAAE,MAAM,GAAG,IAAI,CAAO;IAGlC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAO;IAClC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAA;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;IACrC,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,MAAM,CAAc;gBAExB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,uBAAuB,EAC/B,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,SAAS,EACpB,mBAAmB,EAAE,gBAAgB,GAAG,IAAI,EAC5C,gBAAgB,EAAE,gBAAgB,GAAG,IAAI;IAqJ7C,OAAO,CAAC,gBAAgB,CAgBvB;IACD,aAAa,GAAU,KAAK,OAAO,CAAC,OAAO,EAAE,KAAK,OAAO,CAAC,QAAQ,KAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"ProdServer.d.ts","sourceRoot":"","sources":["../../src/Servers/ProdServer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAClC,OAAO,OAAO,MAAM,SAAS,CAAA;AAK7B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAGxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAiB7D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAWrD,qBAAa,UAAW,SAAQ,cAAc;IAC1C,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,uBAAuB,CAAA;IAC/B,eAAe,EAAE,eAAe,CAAA;IAChC,SAAS,EAAE,SAAS,CAAA;IACpB,mBAAmB,EAAE,gBAAgB,GAAG,IAAI,CAAA;IAO5C,YAAY,EAAE,MAAM,GAAG,IAAI,CAAO;IAGlC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAO;IAClC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAA;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;IACrC,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,MAAM,CAAc;gBAExB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,uBAAuB,EAC/B,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,SAAS,EACpB,mBAAmB,EAAE,gBAAgB,GAAG,IAAI,EAC5C,gBAAgB,EAAE,gBAAgB,GAAG,IAAI;IAqJ7C,OAAO,CAAC,gBAAgB,CAgBvB;IACD,aAAa,GAAU,KAAK,OAAO,CAAC,OAAO,EAAE,KAAK,OAAO,CAAC,QAAQ,KAAG,OAAO,CAAC,IAAI,CAAC,CAgIjF;IASD,OAAO,CAAC,mBAAmB,CA+C1B;IACD,SAAS,eASR;IAOK,KAAK,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,UAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IA4BlE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAa9B"}
|
|
@@ -178,12 +178,16 @@ export class ProdServer extends TungstenServer {
|
|
|
178
178
|
}
|
|
179
179
|
html = await renderContentToHtml(this.compilationInfo, this.framework.clientImportAliases, content, instance, config, this.config.siteBasePath);
|
|
180
180
|
}
|
|
181
|
+
// a goto() during the render has already answered with a redirect
|
|
182
|
+
if (instance.redirected !== undefined) return;
|
|
181
183
|
//debug('html', html)
|
|
182
184
|
res.setHeader('Content-Type', 'text/html');
|
|
183
185
|
res.status(instance.matchedRouteInfo.key === '404' ? 404 : 200);
|
|
184
186
|
res.send(html);
|
|
185
187
|
} catch (e) {
|
|
186
188
|
cliLog('handleRequest() error', e);
|
|
189
|
+
// too late for an error page once a redirect has gone out
|
|
190
|
+
if (res.headersSent) return;
|
|
187
191
|
const errorRouteHtml = await this.tryRenderErrorRoute(req, res, capturedGlobalData, e);
|
|
188
192
|
res.setHeader('Content-Type', 'text/html');
|
|
189
193
|
res.status(500);
|
|
@@ -1,10 +1,21 @@
|
|
|
1
1
|
import type { MatchedRouteInfo } from '../Servers/MatchedRouteInfo.js';
|
|
2
2
|
import type { PopMessage } from '../PopMessage.type.js';
|
|
3
|
+
import type { ComponentStoreValue } from '../Components.jsx';
|
|
4
|
+
import type { ReadonlyTrueStoreValue, StoreValue } from './makeStore.js';
|
|
3
5
|
export declare class InternalStoreSchema {
|
|
4
6
|
location: string;
|
|
7
|
+
navigationIndex: number;
|
|
8
|
+
navigating: boolean;
|
|
5
9
|
matchedRouteInfo: MatchedRouteInfo;
|
|
6
10
|
popMessages: PopMessage[];
|
|
7
11
|
constructor(location: string, matchedRouteInfo: MatchedRouteInfo);
|
|
8
12
|
}
|
|
9
|
-
export type
|
|
13
|
+
export type FrameworkOwnedInternalKeys = 'navigating' | 'navigationIndex';
|
|
14
|
+
export type InternalStore = {
|
|
15
|
+
[Key in keyof InternalStoreSchema]: Key extends FrameworkOwnedInternalKeys ? ReadonlyTrueStoreValue<InternalStoreSchema[Key]> : StoreValue<InternalStoreSchema[Key]>;
|
|
16
|
+
};
|
|
17
|
+
export type InternalComponentStore = {
|
|
18
|
+
[Key in keyof InternalStoreSchema]: Key extends FrameworkOwnedInternalKeys ? Omit<ComponentStoreValue<InternalStoreSchema[Key]>, 'set'> : ComponentStoreValue<InternalStoreSchema[Key]>;
|
|
19
|
+
};
|
|
20
|
+
export type PartialInternalStoreSchema = Pick<InternalStoreSchema, 'popMessages'> & Partial<Omit<InternalStoreSchema, 'popMessages' | FrameworkOwnedInternalKeys>>;
|
|
10
21
|
//# sourceMappingURL=InternalStoreSchema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InternalStoreSchema.d.ts","sourceRoot":"","sources":["../../src/Store/InternalStoreSchema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"InternalStoreSchema.d.ts","sourceRoot":"","sources":["../../src/Store/InternalStoreSchema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAGxE,qBAAa,mBAAmB;IAC5B,QAAQ,EAAE,MAAM,CAAA;IAChB,eAAe,EAAE,MAAM,CAAI;IAC3B,UAAU,EAAE,OAAO,CAAQ;IAC3B,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,WAAW,EAAE,UAAU,EAAE,CAAK;gBAClB,QAAQ,EAAE,MAAM,EAAE,gBAAgB,EAAE,gBAAgB;CAInE;AAID,MAAM,MAAM,0BAA0B,GAAG,YAAY,GAAG,iBAAiB,CAAA;AAGzE,MAAM,MAAM,aAAa,GAAG;KACvB,GAAG,IAAI,MAAM,mBAAmB,GAAG,GAAG,SAAS,0BAA0B,GACpE,sBAAsB,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,GAChD,UAAU,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;CAC7C,CAAA;AAGD,MAAM,MAAM,sBAAsB,GAAG;KAChC,GAAG,IAAI,MAAM,mBAAmB,GAAG,GAAG,SAAS,0BAA0B,GACpE,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,GAC1D,mBAAmB,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;CACtD,CAAA;AAGD,MAAM,MAAM,0BAA0B,GAChC,IAAI,CAAC,mBAAmB,EAAE,aAAa,CAAC,GACxC,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,aAAa,GAAG,0BAA0B,CAAC,CAAC,CAAA"}
|
|
@@ -4,6 +4,8 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
|
|
|
4
4
|
export class InternalStoreSchema {
|
|
5
5
|
constructor(location, matchedRouteInfo) {
|
|
6
6
|
_defineProperty(this, "location", void 0);
|
|
7
|
+
_defineProperty(this, "navigationIndex", 0);
|
|
8
|
+
_defineProperty(this, "navigating", false);
|
|
7
9
|
_defineProperty(this, "matchedRouteInfo", void 0);
|
|
8
10
|
_defineProperty(this, "popMessages", []);
|
|
9
11
|
this.location = location;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { TungstenBaseComponent } from '../Components.jsx';
|
|
2
|
-
import type {
|
|
2
|
+
import type { ReadonlyTrueStore } from './makeStore.js';
|
|
3
3
|
import type { Key } from '../Key.js';
|
|
4
4
|
export type SubscribedElements = Map<TungstenBaseComponent<any, any>, Set<Key>>;
|
|
5
|
-
export type StoreSubscriptionsMap = Map<
|
|
5
|
+
export type StoreSubscriptionsMap = Map<ReadonlyTrueStore<any>, SubscribedElements>;
|
|
6
6
|
//# sourceMappingURL=StoreSubscriptions.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoreSubscriptions.types.d.ts","sourceRoot":"","sources":["../../src/Store/StoreSubscriptions.types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAC9D,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"StoreSubscriptions.types.d.ts","sourceRoot":"","sources":["../../src/Store/StoreSubscriptions.types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAGpC,MAAM,MAAM,kBAAkB,GAAG,GAAG,CAAC,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;AAE/E,MAAM,MAAM,qBAAqB,GAAG,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,kBAAkB,CAAC,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
3
|
-
export declare function getInternalStore(element: TungstenBaseStoreComponent<any, any, any>):
|
|
1
|
+
import type { TungstenBaseStoreComponent } from '../Components.jsx';
|
|
2
|
+
import type { InternalComponentStore } from './InternalStoreSchema.js';
|
|
3
|
+
export declare function getInternalStore(element: TungstenBaseStoreComponent<any, any, any>): InternalComponentStore;
|
|
4
4
|
//# sourceMappingURL=getInternalStore.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getInternalStore.d.ts","sourceRoot":"","sources":["../../src/Store/getInternalStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"getInternalStore.d.ts","sourceRoot":"","sources":["../../src/Store/getInternalStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,KAAK,EAAE,sBAAsB,EAAuB,MAAM,0BAA0B,CAAA;AAM3F,wBAAgB,gBAAgB,CAC5B,OAAO,EAAE,0BAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GACnD,sBAAsB,CAIxB"}
|
|
@@ -2,38 +2,51 @@ import type { Key } from '../Key.js';
|
|
|
2
2
|
import type { TungstenBaseStoreComponent } from '../Components.jsx';
|
|
3
3
|
import type { ServerDataLoading } from './ServerDataLoading.js';
|
|
4
4
|
import type { SubscribedElements } from './StoreSubscriptions.types.js';
|
|
5
|
-
export declare const $
|
|
6
|
-
export declare class StoreValueServer<T> {
|
|
5
|
+
export declare const $trueStoreValue: unique symbol;
|
|
6
|
+
export declare class StoreValueServer<T> implements TrueStoreValueInterface<T> {
|
|
7
7
|
#private;
|
|
8
|
-
readonly [$
|
|
8
|
+
readonly [$trueStoreValue] = true;
|
|
9
9
|
constructor(value: T, serverDataLoading: ServerDataLoading);
|
|
10
10
|
readonly get: () => T;
|
|
11
11
|
readonly sync: () => T;
|
|
12
12
|
readonly set: (newValue: T) => void;
|
|
13
13
|
readonly subscribe: () => void;
|
|
14
14
|
readonly unsubscribe: () => void;
|
|
15
|
-
readonly notify: <Fn extends ((value: T) => void)>(fn: Fn) => Fn;
|
|
16
|
-
readonly stopNotify: <Fn extends ((value: T) => void)>(fn: Fn) => Fn;
|
|
15
|
+
readonly notify: <Fn extends ((value: T) => void)>(fn: Fn, element: TungstenBaseStoreComponent<any, any, any>) => Fn;
|
|
16
|
+
readonly stopNotify: <Fn extends ((value: T) => void)>(fn: Fn, element: TungstenBaseStoreComponent<any, any, any>) => Fn;
|
|
17
17
|
readonly stopNotifyAll: () => void;
|
|
18
18
|
}
|
|
19
19
|
export type NotifyFn<T> = (value: T) => void;
|
|
20
|
-
export
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
export interface TrueStoreValueInterface<T> {
|
|
21
|
+
readonly [$trueStoreValue]: true;
|
|
22
|
+
readonly get: () => T;
|
|
23
|
+
readonly sync: (element: TungstenBaseStoreComponent<any, any, any>) => T;
|
|
24
|
+
readonly set: (value: T) => void;
|
|
25
|
+
readonly subscribe: (element: TungstenBaseStoreComponent<any, any, any>) => void;
|
|
26
|
+
readonly unsubscribe: (element: TungstenBaseStoreComponent<any, any, any>) => void;
|
|
27
|
+
readonly notify: <Fn extends NotifyFn<T>>(fn: Fn, element: TungstenBaseStoreComponent<any, any, any>) => Fn;
|
|
28
|
+
readonly stopNotify: <Fn extends NotifyFn<T>>(fn: Fn, element: TungstenBaseStoreComponent<any, any, any>) => Fn;
|
|
29
|
+
readonly stopNotifyAll: (element: TungstenBaseStoreComponent<any, any, any>) => void;
|
|
30
|
+
}
|
|
31
|
+
export type ReadonlyTrueStoreValue<T> = Omit<TrueStoreValueInterface<T>, 'set'>;
|
|
32
|
+
export declare class StoreValue<T> implements TrueStoreValueInterface<T> {
|
|
23
33
|
#private;
|
|
24
|
-
readonly [$
|
|
34
|
+
readonly [$trueStoreValue] = true;
|
|
25
35
|
constructor(key: Key, value: T, subscribedElements: SubscribedElements);
|
|
26
36
|
readonly get: () => T;
|
|
27
37
|
readonly sync: (element: TungstenBaseStoreComponent<any, any, any>) => T;
|
|
28
38
|
readonly set: (newValue: T) => void;
|
|
29
39
|
readonly subscribe: (element: TungstenBaseStoreComponent<any, any, any>) => void;
|
|
30
40
|
readonly unsubscribe: (element: TungstenBaseStoreComponent<any, any, any>) => void;
|
|
31
|
-
readonly notify: <Fn extends ((value: T) => void)>(fn: Fn, element
|
|
32
|
-
readonly stopNotify: <Fn extends ((value: T) => void)>(fn: Fn, element
|
|
41
|
+
readonly notify: <Fn extends ((value: T) => void)>(fn: Fn, element: TungstenBaseStoreComponent<any, any, any>) => Fn;
|
|
42
|
+
readonly stopNotify: <Fn extends ((value: T) => void)>(fn: Fn, element: TungstenBaseStoreComponent<any, any, any>) => Fn;
|
|
33
43
|
readonly stopNotifyAll: (element: TungstenBaseStoreComponent<any, any, any>) => void;
|
|
34
44
|
}
|
|
35
45
|
export type TrueStore<Schema> = {
|
|
36
46
|
[Property in keyof Schema]: StoreValue<Schema[Property]>;
|
|
37
47
|
};
|
|
48
|
+
export type ReadonlyTrueStore<Schema> = {
|
|
49
|
+
[Property in keyof Schema]: ReadonlyTrueStoreValue<Schema[Property]>;
|
|
50
|
+
};
|
|
38
51
|
export declare function makeStore<Schema extends object>(schema: Schema, subscribedElements: SubscribedElements, serverDataLoading?: ServerDataLoading | null): TrueStore<Schema>;
|
|
39
52
|
//# sourceMappingURL=makeStore.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"makeStore.d.ts","sourceRoot":"","sources":["../../src/Store/makeStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;
|
|
1
|
+
{"version":3,"file":"makeStore.d.ts","sourceRoot":"","sources":["../../src/Store/makeStore.ts"],"names":[],"mappings":"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"}
|
package/dist/Store/makeStore.js
CHANGED
|
@@ -7,17 +7,19 @@ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
|
|
|
7
7
|
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
|
|
8
8
|
function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
|
|
9
9
|
import { objectMap } from '../objectMap.js';
|
|
10
|
+
// type Notify<T> = <Fn extends ((value: T) => void)>(fn: Fn, element: TungstenBaseStoreComponent<any, any, any>) => Fn
|
|
11
|
+
// type StopNotify<T> = Notify<T>
|
|
10
12
|
// Marks a cell as unbound - subscribe takes the component. A ComponentStore's cells are the
|
|
11
13
|
// same objects behind a proxy that binds it, and without this their types would be assignable
|
|
12
14
|
// (a () => void fits an (element) => void), so a bound store could pass for a TrueStore.
|
|
13
|
-
export const $
|
|
15
|
+
export const $trueStoreValue = Symbol('trueStoreValue');
|
|
14
16
|
// the server render is one pass, so nothing re-renders on a write: no subscribers, and subscribe
|
|
15
17
|
// is a no-op that keeps the cell's shape for the component proxy
|
|
16
18
|
var _value = /*#__PURE__*/new WeakMap();
|
|
17
19
|
var _serverDataLoading = /*#__PURE__*/new WeakMap();
|
|
18
20
|
export class StoreValueServer {
|
|
19
21
|
constructor(value, serverDataLoading) {
|
|
20
|
-
_defineProperty(this, $
|
|
22
|
+
_defineProperty(this, $trueStoreValue, true);
|
|
21
23
|
_classPrivateFieldInitSpec(this, _value, void 0);
|
|
22
24
|
_classPrivateFieldInitSpec(this, _serverDataLoading, void 0);
|
|
23
25
|
_defineProperty(this, "get", () => _classPrivateFieldGet(_value, this));
|
|
@@ -36,8 +38,10 @@ export class StoreValueServer {
|
|
|
36
38
|
// do nothing on the server, because nothing continue past first render.
|
|
37
39
|
});
|
|
38
40
|
// no-ops, but they return the function as the client cells do, so a caller can keep the handle
|
|
39
|
-
_defineProperty(this, "notify", fn
|
|
40
|
-
|
|
41
|
+
_defineProperty(this, "notify", (fn, element // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
42
|
+
) => fn);
|
|
43
|
+
_defineProperty(this, "stopNotify", (fn, element // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
44
|
+
) => fn);
|
|
41
45
|
_defineProperty(this, "stopNotifyAll", () => {
|
|
42
46
|
// do nothing on the server, because nothing continue past first render.
|
|
43
47
|
});
|
|
@@ -54,7 +58,7 @@ var _notifyOwners = /*#__PURE__*/new WeakMap();
|
|
|
54
58
|
var _dropOwnerIfDone = /*#__PURE__*/new WeakMap();
|
|
55
59
|
export class StoreValue {
|
|
56
60
|
constructor(key, value, subscribedElements) {
|
|
57
|
-
_defineProperty(this, $
|
|
61
|
+
_defineProperty(this, $trueStoreValue, true);
|
|
58
62
|
/* #store: StoreSchemaClassGeneral */
|
|
59
63
|
_classPrivateFieldInitSpec(this, _key, void 0);
|
|
60
64
|
_classPrivateFieldInitSpec(this, _value2, void 0);
|
|
@@ -104,29 +108,29 @@ export class StoreValue {
|
|
|
104
108
|
});
|
|
105
109
|
_defineProperty(this, "notify", (fn, element) => {
|
|
106
110
|
_classPrivateFieldGet(_notifyFunctions, this).add(fn);
|
|
107
|
-
if (element !== undefined) {
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
}
|
|
120
|
-
subscriptions.add(_classPrivateFieldGet(_key, this));
|
|
111
|
+
//if (element !== undefined) {
|
|
112
|
+
let owned = _classPrivateFieldGet(_notifyOwners, this).get(element);
|
|
113
|
+
if (owned === undefined) {
|
|
114
|
+
owned = new Set();
|
|
115
|
+
_classPrivateFieldGet(_notifyOwners, this).set(element, owned);
|
|
116
|
+
}
|
|
117
|
+
owned.add(fn);
|
|
118
|
+
// index the key like subscribe does, so teardown visits this cell
|
|
119
|
+
let subscriptions = _classPrivateFieldGet(_subscribedElements, this).get(element);
|
|
120
|
+
if (subscriptions === undefined) {
|
|
121
|
+
subscriptions = new Set();
|
|
122
|
+
_classPrivateFieldGet(_subscribedElements, this).set(element, subscriptions);
|
|
121
123
|
}
|
|
124
|
+
subscriptions.add(_classPrivateFieldGet(_key, this));
|
|
125
|
+
//}
|
|
122
126
|
return fn;
|
|
123
127
|
});
|
|
124
128
|
_defineProperty(this, "stopNotify", (fn, element) => {
|
|
125
129
|
_classPrivateFieldGet(_notifyFunctions, this).delete(fn);
|
|
126
|
-
if (element !== undefined) {
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
}
|
|
130
|
+
//if (element !== undefined) {
|
|
131
|
+
_classPrivateFieldGet(_notifyOwners, this).get(element)?.delete(fn);
|
|
132
|
+
_classPrivateFieldGet(_dropOwnerIfDone, this).call(this, element);
|
|
133
|
+
//}
|
|
130
134
|
return fn;
|
|
131
135
|
});
|
|
132
136
|
_defineProperty(this, "stopNotifyAll", element => {
|
package/dist/assert.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assert.d.ts","sourceRoot":"","sources":["../src/assert.ts"],"names":[],"mappings":"AAGA,wBAAgB,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,QAE1D"}
|
package/dist/assert.js
ADDED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../src/components/Link.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAG3D,MAAM,MAAM,SAAS,GAAG;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,EAAE,EAAE,IAAI,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,WAAW,CAAA;CACxB,CAAA;AAED,qBAAa,IAAK,SAAQ,uBAAuB,CAAC,SAAS,CAAC;IACxD,
|
|
1
|
+
{"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../src/components/Link.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAG3D,MAAM,MAAM,SAAS,GAAG;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,EAAE,EAAE,IAAI,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,WAAW,CAAA;CACxB,CAAA;AAED,qBAAa,IAAK,SAAQ,uBAAuB,CAAC,SAAS,CAAC;IACxD,KAAK,GAAI,OAAO,gBAAgB,UAiB/B;IACD,OAAO,uDAUN;CACJ"}
|
package/dist/components/Link.js
CHANGED
|
@@ -6,11 +6,9 @@ import { jsx as _jsx } from "tungsten/jsx-runtime";
|
|
|
6
6
|
export class Link extends TungstenSimpleComponent {
|
|
7
7
|
constructor(...args) {
|
|
8
8
|
super(...args);
|
|
9
|
-
_defineProperty(this, "href", this.__instance.routeKeyToUrl(this.props.to));
|
|
10
9
|
_defineProperty(this, "click", (event /* Event */) => {
|
|
11
|
-
// GUARD
|
|
12
|
-
|
|
13
|
-
if (event.ctrlKey) return;
|
|
10
|
+
// GUARD a modified or non-primary click is the browser's: new tab, new window, download
|
|
11
|
+
if (event.button !== 0 || event.ctrlKey || event.metaKey || event.shiftKey || event.altKey) return;
|
|
14
12
|
// GUARD don't do anything if clientSideNavigation is disabled
|
|
15
13
|
if (!this.__instance.config.clientSideNav) return;
|
|
16
14
|
//if (this.__instance.config.staticSite) return // temporarily disable this on static sites
|
|
@@ -21,12 +19,12 @@ export class Link extends TungstenSimpleComponent {
|
|
|
21
19
|
// ? '/'
|
|
22
20
|
// : `${to}.html`
|
|
23
21
|
//console.log('go to', to)
|
|
24
|
-
this.__instance.goto(to);
|
|
22
|
+
void this.__instance.goto(to);
|
|
25
23
|
});
|
|
26
24
|
_defineProperty(this, "content", () => {
|
|
27
25
|
return _jsx("a", {
|
|
28
26
|
className: this.props.className,
|
|
29
|
-
href: this.
|
|
27
|
+
href: this.__instance.routeKeyToUrl(this.props.to),
|
|
30
28
|
onClick: this.click,
|
|
31
29
|
children: this.props.children
|
|
32
30
|
});
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import type { ConstructPackage, TungstenBaseComponent, TungstenBaseComponentType, TungstenComponentPropsBase } from '../Components.jsx';
|
|
2
2
|
import type { TrueStore } from '../Store/makeStore.js';
|
|
3
|
+
import type { Endpoint, Path } from '../routing/RouteTypes.js';
|
|
4
|
+
import type { ErrorRouteType } from '../routing/ErrorRouteType.js';
|
|
5
|
+
import type { ReqRes } from '../ReqRes.js';
|
|
3
6
|
export type ComponentProps<ComponentType extends TungstenBaseComponentType<any, any>> = InstanceType<ComponentType>['props'];
|
|
4
7
|
export type TestStoreRegistration<Schema extends object> = {
|
|
5
8
|
getStore: (stores: TrueStore<unknown>[]) => TrueStore<Schema>;
|
|
@@ -19,6 +22,14 @@ export type TestAppOptions<Props extends object> = {
|
|
|
19
22
|
routeData?: unknown;
|
|
20
23
|
globalData?: Record<string, unknown>;
|
|
21
24
|
stores?: readonly TestStoreOverride<any>[];
|
|
25
|
+
routes?: TestRoutes | ((reqRes: ReqRes | null) => TestRoutes);
|
|
26
|
+
};
|
|
27
|
+
export type TestRoutes = {
|
|
28
|
+
[key in Path]: Endpoint<any, any>;
|
|
29
|
+
} & {
|
|
30
|
+
'404'?: Endpoint<any, any>;
|
|
31
|
+
'default'?: Endpoint<any, any>;
|
|
32
|
+
'error'?: ErrorRouteType;
|
|
22
33
|
};
|
|
23
34
|
export type TestApp<Component extends TungstenBaseComponent> = {
|
|
24
35
|
readonly document: Document;
|
|
@@ -27,6 +38,7 @@ export type TestApp<Component extends TungstenBaseComponent> = {
|
|
|
27
38
|
resolved(): Promise<void>;
|
|
28
39
|
setProps(props: Component['props']): Promise<void>;
|
|
29
40
|
unmount(): Promise<void>;
|
|
41
|
+
[Symbol.asyncDispose](): Promise<void>;
|
|
30
42
|
};
|
|
31
43
|
export type CreateTestAppArgs<Props extends object> = object extends Props ? [options?: TestAppOptions<Props>] : keyof Props extends never ? [options?: TestAppOptions<Props>] : [options: TestAppOptions<Props> & {
|
|
32
44
|
props: Props;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createTestApp.d.ts","sourceRoot":"","sources":["../../src/testing/createTestApp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACR,gBAAgB,EAChB,qBAAqB,EACrB,yBAAyB,EACzB,0BAA0B,EAC7B,MAAM,mBAAmB,CAAA;AAI1B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"createTestApp.d.ts","sourceRoot":"","sources":["../../src/testing/createTestApp.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,6 +41,9 @@ class TestAppImplementation {
|
|
|
41
41
|
_classPrivateFieldGet(_instance, this).queueUpdate(this.component);
|
|
42
42
|
await this.resolved();
|
|
43
43
|
});
|
|
44
|
+
_defineProperty(this, Symbol.asyncDispose, async () => {
|
|
45
|
+
await this.unmount();
|
|
46
|
+
});
|
|
44
47
|
_defineProperty(this, "unmount", async () => {
|
|
45
48
|
if (_classPrivateFieldGet(_unmounted, this)) return;
|
|
46
49
|
_classPrivateFieldSet(_unmounted, this, true);
|
|
@@ -123,13 +126,16 @@ RootComponent, ...args) {
|
|
|
123
126
|
const instanceConfig = {
|
|
124
127
|
prod: false,
|
|
125
128
|
useRootComponent: true,
|
|
126
|
-
clientSideNav:
|
|
129
|
+
clientSideNav: true,
|
|
127
130
|
siteBasePath: '/',
|
|
128
131
|
staticSite: false,
|
|
129
132
|
csr: false
|
|
130
133
|
};
|
|
131
|
-
|
|
132
|
-
|
|
134
|
+
// routing() falls back to the built-in 404 when neither '404' nor 'default' is given
|
|
135
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
|
136
|
+
const appRoutes = options?.routes ?? {};
|
|
137
|
+
const routes = typeof appRoutes === 'function' ? appRoutes(null) : appRoutes;
|
|
138
|
+
const instance = new Instance(location, instanceConfig, null, appRoutes, routes, internalStore, stores, storeSubscriptions, globalData, matchedRouteInfo, runtimeContext);
|
|
133
139
|
try {
|
|
134
140
|
for (const override of options?.stores ?? []) {
|
|
135
141
|
const store = override.registration.getStore(instance.stores);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../src/testing/host.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpD,OAAO,KAAK,EAAE,mBAAmB,EAA8B,MAAM,iCAAiC,CAAA;AACtG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAClE,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EACH,qBAAqB,
|
|
1
|
+
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../src/testing/host.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpD,OAAO,KAAK,EAAE,mBAAmB,EAA8B,MAAM,iCAAiC,CAAA;AACtG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAClE,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EACH,qBAAqB,EAErB,uBAAuB,EACvB,KAAK,cAAc,EAAE,KAAK,iBAAiB,EAAE,KAAK,sBAAsB,EACxE,KAAK,0BAA0B,EAAE,KAAK,yBAAyB,EAClE,MAAM,mBAAmB,CAAA;AAQ1B,KAAK,OAAO,CAAC,SAAS,IAAI,SAAS,SAAS;IAAE,KAAK,CAAC,EAAE,MAAM,KAAK,CAAA;CAAE,GAAG,KAAK,GAAG,KAAK,CAAA;AAInF,KAAK,SAAS,CAAC,SAAS,SAAS,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,IAC1D,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,MAAM,GACtE,MAAM,GACN,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;AAe5C,KAAK,eAAe,GACZ,MAAM,uBAAuB,CAAC,GAAG,EAAE,GAAG,CAAC,GACzC,MAAM,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GACtC,MAAM,yBAAyB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;AAEpD,KAAK,cAAc,GAAG,MAAM,UAAU,CAAC,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;AAyBvE,MAAM,MAAM,YAAY,CAAC,SAAS,SAAS,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI;KACzE,GAAG,IAAI,MAAM,SAAS,IAAI,GAAG,SAAS,eAAe,GAAG,cAAc,GACjE,KAAK,GACL,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,GAAG,GAAG,GAAG,KAAK,GAC5E,SAAS,CAAC,GAAG,CAAC;CACpB,CAAA;AAGD,MAAM,MAAM,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAA;AAElE,MAAM,MAAM,WAAW,CAAC,SAAS,SAAS,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,IACnE,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,SAAS,CAAC,GAAG,IAAI,CAAA;AAE9D,KAAK,UAAU,CAAC,SAAS,SAAS,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI;IACjE,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;IAClC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;IAGlC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,QAAQ,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAA;IAI3C,OAAO,EAAE,MAAM,SAAS,CAAC,SAAS,CAAC,CAAA;IACnC,WAAW,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IAClF,WAAW,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;CAC1F,CAAA;AAID,MAAM,MAAM,MAAM,CAAC,SAAS,SAAS,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,IAC9D,UAAU,CAAC,SAAS,CAAC,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;AAErD,KAAK,aAAa,CAAC,SAAS,IACtB,SAAS,SAAS;IAAE,KAAK,EAAE,cAAc,CAAC,MAAM,MAAM,SAAS,MAAM,CAAC,CAAA;CAAE,GAAG,MAAM,GAAG,KAAK,CAAA;AAG/F,KAAK,OAAO,CAAC,SAAS,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAC9D,KAAK,GACL,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,GACpD,KAAK,GACL,aAAa,CAAC,SAAS,CAAC,CAAA;AAElC,MAAM,MAAM,WAAW,GAAG;IAAE,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,CAAA;AAEnG,KAAK,YAAY,GACX;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,cAAc,CAAC;IAAC,YAAY,CAAC,EAAE,KAAK,CAAA;CAAE,GACxF;IAAE,OAAO,CAAC,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,WAAW,CAAA;CAAE,CAAA;AAKvF,KAAK,OAAO,GAAG;IAAE,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,YAAY,CAAC,EAAE,KAAK,CAAC;IAAC,SAAS,CAAC,EAAE,KAAK,CAAC;IAAC,gBAAgB,CAAC,EAAE,KAAK,CAAA;CAAE,CAAA;AAEnG,KAAK,eAAe,CAAC,MAAM,SAAS,MAAM,IAClC;IACA,sGAAsG;IACtG,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACzB,YAAY,CAAC,EAAE,KAAK,CAAC;IAAC,SAAS,CAAC,EAAE,KAAK,CAAC;IAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC;CACrE,GACC;IACE,gGAAgG;IAChG,YAAY,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IACzC,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,SAAS,CAAC,EAAE,KAAK,CAAC;IAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC;CAC9D,GACC;IACE,+DAA+D;IAC/D,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,YAAY,CAAC,EAAE,KAAK,CAAC;IAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC;CACjE,GACC;IACE,qGAAqG;IACrG,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,YAAY,CAAC,EAAE,KAAK,CAAC;IAAC,SAAS,CAAC,EAAE,KAAK,CAAC;CAC1D,CAAA;AAKL,MAAM,MAAM,gBAAgB,CAAC,MAAM,SAAS,MAAM,IAAI,CAAC,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,SAAS,MAAM,OAAO,GAC9G,OAAO,SAAS,OAAO,GAAG;KAAG,CAAC,IAAI,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;CAAE,GAAG,KAAK,GACtE,KAAK,CAAA;AAEX,MAAM,MAAM,WAAW,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GACnE,CAAC,YAAY,GAAG,OAAO,CAAC,SAAS,MAAM,OAAO,GAC1C,OAAO,SAAS,OAAO,GAAG;KAAG,CAAC,IAAI,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;CAAE,GAAG,KAAK,GACtE,KAAK,GACT,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;AAI1C,KAAK,QAAQ,CAAC,KAAK,EAAE,SAAS,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAChE,MAAM,SAAS,KAAK,GAChB,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC,GACjD,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC,GACpD,MAAM,SAAS,KAAK,GAChB,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC,GAC3D,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC,CAAA;AA4CzD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,IAAI,CACtB,KAAK,SAAS,0BAA0B,EACxC,MAAM,SAAS,MAAM,EACrB,SAAS,SAAS,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG;IAAE,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;CAAE,EAErF,aAAa,EAAE,sBAAsB,CAAC,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK;IAAE,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;CAAE,CAAC,EACnH,KAAK,EAAE,KAAK,EAEZ,OAAO,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,mBAAmB,CAAC,GAAG,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,GAC5F,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAA;AAE7B,wBAAsB,IAAI,CACtB,KAAK,SAAS,0BAA0B,EAExC,SAAS,SAAS,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,EAEjD,aAAa,EAAE,sBAAsB,CAAC,KAAK,EAAE,SAAS,CAAC,EACvD,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,GAChD,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAA"}
|
package/dist/testing/host.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { TungstenBaseComponent, TungstenBaseSimpleStoreComponent, TungstenBaseStatefulStoreComponent, TungstenBaseStoreComponent, TungstenSimpleComponent } from "../Components.js";
|
|
2
|
-
import {
|
|
2
|
+
import { makeStore } from '../Store/makeStore.js';
|
|
3
3
|
import { routing } from "../Servers/routing.js";
|
|
4
|
-
import { missingStoreValue,
|
|
4
|
+
import { missingStoreValue, testingComponentPackage } from './testingComponentPackage.js';
|
|
5
5
|
const isPromise = value => value instanceof Promise || typeof value === 'object' && value !== null && 'then' in value;
|
|
6
6
|
// The same list at runtime. Underscore-prefixed members are excluded by rule
|
|
7
7
|
// (the framework's naming scheme), so only the plain-named ones are listed, and
|
|
@@ -52,7 +52,7 @@ export async function host(ComponentType, props,
|
|
|
52
52
|
options) {
|
|
53
53
|
const stored = options ?? {};
|
|
54
54
|
const storeData = stored.storeData ?? stored.partialStoreData;
|
|
55
|
-
const store = stored.store ?? stored.partialStore ?? (storeData === undefined ? undefined :
|
|
55
|
+
const store = stored.store ?? stored.partialStore ?? (storeData === undefined ? undefined : makeStore(storeData, new Map()));
|
|
56
56
|
const partial = stored.partialStore !== undefined || stored.partialStoreData !== undefined;
|
|
57
57
|
const route = await hostedRouting(stored);
|
|
58
58
|
const pending = [];
|
|
@@ -17,6 +17,7 @@ export type HydrateTestApp<Component extends TungstenBaseComponent> = {
|
|
|
17
17
|
resolved(): Promise<void>;
|
|
18
18
|
setProps(props: Component['props']): Promise<void>;
|
|
19
19
|
unmount(): Promise<void>;
|
|
20
|
+
[Symbol.asyncDispose](): Promise<void>;
|
|
20
21
|
};
|
|
21
22
|
/**
|
|
22
23
|
* The hydration round trip createTestApp() deliberately doesn't cover: render a component to
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hydrateTestApp.d.ts","sourceRoot":"","sources":["../../src/testing/hydrateTestApp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACR,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC7B,MAAM,mBAAmB,CAAA;AAI1B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAA;AAK1F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAaxD,MAAM,MAAM,qBAAqB,CAAC,KAAK,SAAS,MAAM,IAAI,cAAc,CAAC,KAAK,CAAC,GAAG;IAM9E,WAAW,CAAC,EAAE,KAAK,CAAA;IAEnB,GAAG,CAAC,EAAE,OAAO,CAAA;CAChB,CAAA;AAED,KAAK,kBAAkB,CAAC,KAAK,SAAS,MAAM,IAAI,MAAM,SAAS,KAAK,GAC9D,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,GACxC,MAAM,KAAK,SAAS,KAAK,GACrB,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,GACxC,CAAC,OAAO,EAAE,qBAAqB,CAAC,KAAK,CAAC,GAAG;IAAE,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC,CAAA;AAEpE,MAAM,MAAM,cAAc,CAAC,SAAS,SAAS,qBAAqB,IAAI;IAClE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAA;IAC/B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAG7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IAIrB,QAAQ,CAAC,UAAU,EAAE,SAAS,uBAAuB,EAAE,CAAA;IAEvD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAClD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"hydrateTestApp.d.ts","sourceRoot":"","sources":["../../src/testing/hydrateTestApp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACR,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC7B,MAAM,mBAAmB,CAAA;AAI1B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAA;AAK1F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAaxD,MAAM,MAAM,qBAAqB,CAAC,KAAK,SAAS,MAAM,IAAI,cAAc,CAAC,KAAK,CAAC,GAAG;IAM9E,WAAW,CAAC,EAAE,KAAK,CAAA;IAEnB,GAAG,CAAC,EAAE,OAAO,CAAA;CAChB,CAAA;AAED,KAAK,kBAAkB,CAAC,KAAK,SAAS,MAAM,IAAI,MAAM,SAAS,KAAK,GAC9D,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,GACxC,MAAM,KAAK,SAAS,KAAK,GACrB,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,GACxC,CAAC,OAAO,EAAE,qBAAqB,CAAC,KAAK,CAAC,GAAG;IAAE,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC,CAAA;AAEpE,MAAM,MAAM,cAAc,CAAC,SAAS,SAAS,qBAAqB,IAAI;IAClE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAA;IAC/B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAG7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IAIrB,QAAQ,CAAC,UAAU,EAAE,SAAS,uBAAuB,EAAE,CAAA;IAEvD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAClD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAExB,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACzC,CAAA;AAsGD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,cAAc,CAChC,KAAK,SAAS,0BAA0B,EACxC,SAAS,SAAS,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,EACjD,SAAS,GAAG,SAAS,EAErB,aAAa,EAAE,KAAK,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,SAAS,EACzE,GAAG,IAAI,EAAE,kBAAkB,CAAC,KAAK,CAAC,GACnC,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAgIpC"}
|
|
@@ -58,6 +58,9 @@ class HydrateTestAppImplementation {
|
|
|
58
58
|
_classPrivateFieldGet(_instance, this).queueUpdate(this.component);
|
|
59
59
|
await this.resolved();
|
|
60
60
|
});
|
|
61
|
+
_defineProperty(this, Symbol.asyncDispose, async () => {
|
|
62
|
+
await this.unmount();
|
|
63
|
+
});
|
|
61
64
|
_defineProperty(this, "unmount", async () => {
|
|
62
65
|
if (_classPrivateFieldGet(_unmounted, this)) return;
|
|
63
66
|
_classPrivateFieldSet(_unmounted, this, true);
|
|
@@ -146,12 +149,15 @@ export async function hydrateTestApp(RootComponent, ...args) {
|
|
|
146
149
|
const instanceConfig = {
|
|
147
150
|
prod: false,
|
|
148
151
|
useRootComponent: true,
|
|
149
|
-
clientSideNav:
|
|
152
|
+
clientSideNav: true,
|
|
150
153
|
siteBasePath: '/',
|
|
151
154
|
staticSite: false,
|
|
152
155
|
csr: options?.csr ?? false
|
|
153
156
|
};
|
|
154
|
-
|
|
157
|
+
// routing() falls back to the built-in 404 when neither '404' nor 'default' is given
|
|
158
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
|
159
|
+
const appRoutes = options?.routes ?? {};
|
|
160
|
+
const routes = typeof appRoutes === 'function' ? appRoutes(null) : appRoutes;
|
|
155
161
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- rootToHtml.ts builds a root content node the same way
|
|
156
162
|
const componentNode = {
|
|
157
163
|
[$type]: RootComponent,
|
|
@@ -167,7 +173,7 @@ export async function hydrateTestApp(RootComponent, ...args) {
|
|
|
167
173
|
stores,
|
|
168
174
|
storeSubscriptions
|
|
169
175
|
} = initStores(location, null, globalData, matchedRouteInfo);
|
|
170
|
-
const ssrInstance = new Instance(location, instanceConfig, null,
|
|
176
|
+
const ssrInstance = new Instance(location, instanceConfig, null, appRoutes, routes, internalStore, stores, storeSubscriptions, globalData, matchedRouteInfo, {
|
|
171
177
|
document,
|
|
172
178
|
window: document.defaultView,
|
|
173
179
|
scheduler: ssrScheduler,
|
|
@@ -211,7 +217,7 @@ export async function hydrateTestApp(RootComponent, ...args) {
|
|
|
211
217
|
scheduler,
|
|
212
218
|
navigation: false
|
|
213
219
|
};
|
|
214
|
-
const instance = new Instance(location, instanceConfig, null,
|
|
220
|
+
const instance = new Instance(location, instanceConfig, null, appRoutes, routes, internalStore, stores, storeSubscriptions, globalData, matchedRouteInfo, runtimeContext);
|
|
215
221
|
try {
|
|
216
222
|
for (const override of options?.stores ?? []) {
|
|
217
223
|
const store = override.registration.getStore(instance.stores);
|
package/dist/testing/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { loadEnv } from './loadEnv.js';
|
|
2
2
|
export { testEnvVariableName } from './testEnvIsRequested.js';
|
|
3
3
|
export { hydrateTestApp, type HydrateTestApp, type HydrateTestAppOptions } from './hydrateTestApp.js';
|
|
4
|
-
export { createTestApp, testStore, type ComponentProps, type CreateTestAppArgs, type TestApp, type TestAppOptions, type TestStore, type TestStoreOverride, type TestStoreRegistration, } from './createTestApp.js';
|
|
4
|
+
export { createTestApp, testStore, type ComponentProps, type CreateTestAppArgs, type TestApp, type TestAppOptions, type TestStore, type TestStoreOverride, type TestStoreRegistration, type TestRoutes, } from './createTestApp.js';
|
|
5
5
|
export { host, type HostOptions, type HostStoreOptions, type Hosted } from './host.js';
|
|
6
6
|
export { testingComponentPackage } from './testingComponentPackage.js';
|
|
7
7
|
export { contentHtmlElements } from './helpers/contentHtmlElements.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,KAAK,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AACrG,OAAO,EACH,aAAa,EACb,SAAS,EACT,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,KAAK,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AACrG,OAAO,EACH,aAAa,EACb,SAAS,EACT,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,GAClB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,KAAK,gBAAgB,EAAE,KAAK,MAAM,EAAE,MAAM,WAAW,CAAA;AACtF,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAA"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type { ConstructPackage } from '../Components.jsx';
|
|
1
|
+
import type { ConstructPackage, TungstenBaseStoreComponent } from '../Components.jsx';
|
|
2
2
|
import type { Instance } from '../Instance/Instance.js';
|
|
3
3
|
import type { InstanceConfig } from '../Instance/InstanceConfig.js';
|
|
4
4
|
import type { PartialInternalStoreSchema } from '../Store/InternalStoreSchema.js';
|
|
5
5
|
import type { GlobalData } from '../routing/registerGlobalData.js';
|
|
6
|
-
import { $
|
|
6
|
+
import { $trueStoreValue, type TrueStore } from '../Store/makeStore.js';
|
|
7
7
|
export type TestingComponentPackageOptions = {
|
|
8
8
|
store?: Partial<TrueStore<any>>;
|
|
9
9
|
routes?: object;
|
|
@@ -17,21 +17,16 @@ export type TestingComponentPackageOptions = {
|
|
|
17
17
|
goto?: Instance['goto'];
|
|
18
18
|
redirect?: Instance['redirect'];
|
|
19
19
|
};
|
|
20
|
-
export declare const storeValue: <Value>(initialValue: Value) => {
|
|
21
|
-
[$trueStoreCell]: true;
|
|
22
|
-
get: () => Value;
|
|
23
|
-
set: (newValue: Value) => void;
|
|
24
|
-
subscribe: () => undefined;
|
|
25
|
-
unsubscribe: () => undefined;
|
|
26
|
-
sync: () => Value;
|
|
27
|
-
};
|
|
28
20
|
export declare const missingStoreValue: <Value>(key: string) => {
|
|
29
|
-
[$
|
|
21
|
+
[$trueStoreValue]: true;
|
|
30
22
|
get: () => Value;
|
|
31
23
|
set: () => undefined;
|
|
32
24
|
subscribe: () => undefined;
|
|
33
25
|
unsubscribe: () => undefined;
|
|
34
26
|
sync: () => Value;
|
|
27
|
+
notify: <Fn extends ((value: Value) => void)>(fn: Fn, el: TungstenBaseStoreComponent<any, any, any>) => Fn;
|
|
28
|
+
stopNotify: <Fn extends ((value: Value) => void)>(fn: Fn, el: TungstenBaseStoreComponent<any, any, any>) => Fn;
|
|
29
|
+
stopNotifyAll: () => undefined;
|
|
35
30
|
};
|
|
36
31
|
export declare const testingComponentPackage: <Props extends object>(props: Props, options?: TestingComponentPackageOptions) => ConstructPackage<Props, undefined>;
|
|
37
32
|
//# sourceMappingURL=testingComponentPackage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testingComponentPackage.d.ts","sourceRoot":"","sources":["../../src/testing/testingComponentPackage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"testingComponentPackage.d.ts","sourceRoot":"","sources":["../../src/testing/testingComponentPackage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAA;AACrF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AACnE,OAAO,KAAK,EAAuB,0BAA0B,EAAE,MAAM,iCAAiC,CAAA;AACtG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAGlE,OAAO,EACH,eAAe,EAAc,KAAK,SAAS,EAC9C,MAAM,uBAAuB,CAAA;AAI9B,MAAM,MAAM,8BAA8B,GAAG;IAIzC,KAAK,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;IAG/B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,UAAU,CAAA;IAMvB,aAAa,CAAC,EAAE,0BAA0B,CAAA;IAC1C,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;IAGhC,SAAS,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAA;IAIjC,WAAW,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAA;IAGrC,SAAS,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAA;IACjC,QAAQ,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAA;IAG/B,IAAI,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;IACvB,QAAQ,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAA;CAClC,CAAA;AAYD,eAAO,MAAM,iBAAiB,GAAI,KAAK,EAAE,KAAK,MAAM;;eAEvC,KAAK;;;;gBAIJ,KAAK;aACN,EAAE,SAAS,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,MAAM,EAAE,MAAM,0BAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,KAAG,EAAE;iBAC3F,EAAE,SAAS,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,MAAM,EAAE,MAAM,0BAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,KAAG,EAAE;;CAErE,CAAA;AAoC3C,eAAO,MAAM,uBAAuB,GAAI,KAAK,SAAS,MAAM,EACxD,OAAO,KAAK,EACZ,UAAS,8BAAmC,KAC7C,gBAAgB,CAAC,KAAK,EAAE,SAAS,CA6ClC,CAAA"}
|
|
@@ -1,43 +1,40 @@
|
|
|
1
|
-
import { $
|
|
1
|
+
import { $trueStoreValue, StoreValue } from '../Store/makeStore.js';
|
|
2
2
|
import { routeKeyToUrl } from '../routing/routeUrl.js';
|
|
3
3
|
const missing = key => {
|
|
4
4
|
throw new Error(`testingComponentPackage: no ${key} supplied. Pass one in the options if the value is part` + ` of the test, or use createTestApp() for a component that needs a real app.`);
|
|
5
5
|
};
|
|
6
|
-
export const storeValue = initialValue => {
|
|
7
|
-
let value = initialValue;
|
|
8
|
-
return {
|
|
9
|
-
[$trueStoreCell]: true,
|
|
10
|
-
get: () => value,
|
|
11
|
-
set: newValue => {
|
|
12
|
-
value = newValue;
|
|
13
|
-
},
|
|
14
|
-
subscribe: () => undefined,
|
|
15
|
-
unsubscribe: () => undefined,
|
|
16
|
-
sync: () => value
|
|
17
|
-
};
|
|
18
|
-
};
|
|
19
6
|
// A store key the test did not supply: subscribing and setting work, reading
|
|
20
7
|
// names the key.
|
|
21
8
|
export const missingStoreValue = key => ({
|
|
22
|
-
[$
|
|
9
|
+
[$trueStoreValue]: true,
|
|
23
10
|
get: () => missing(key),
|
|
24
11
|
set: () => undefined,
|
|
25
12
|
subscribe: () => undefined,
|
|
26
13
|
unsubscribe: () => undefined,
|
|
27
|
-
sync: () => missing(key)
|
|
14
|
+
sync: () => missing(key),
|
|
15
|
+
notify: (fn, el) => fn,
|
|
16
|
+
stopNotify: (fn, el) => fn,
|
|
17
|
+
stopNotifyAll: () => undefined
|
|
28
18
|
});
|
|
29
|
-
|
|
19
|
+
// A supplied key gets the real cell, so the mock never has to track StoreValue's methods
|
|
20
|
+
const storeField = (key, value, subscribedElements) => value === undefined ? missingStoreValue(key) : new StoreValue(key, value, subscribedElements);
|
|
30
21
|
// Keyed off the schema, so a new internal store key fails to compile here
|
|
31
22
|
// rather than turning up as `undefined.sync is not a function` in a test.
|
|
32
|
-
const internalStore = supplied =>
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
23
|
+
const internalStore = supplied => {
|
|
24
|
+
// the cells of one store share an element index, as a real store's do
|
|
25
|
+
const subscribedElements = new Map();
|
|
26
|
+
return {
|
|
27
|
+
location: storeField('internalStore.location', supplied?.location, subscribedElements),
|
|
28
|
+
navigationIndex: storeField('internalStore.navigationIndex', 0, subscribedElements),
|
|
29
|
+
navigating: storeField('internalStore.navigating', false, subscribedElements),
|
|
30
|
+
matchedRouteInfo: storeField('internalStore.matchedRouteInfo', supplied?.matchedRouteInfo, subscribedElements),
|
|
31
|
+
popMessages: storeField('internalStore.popMessages', supplied?.popMessages, subscribedElements)
|
|
32
|
+
};
|
|
33
|
+
};
|
|
37
34
|
const defaultConfig = {
|
|
38
35
|
prod: false,
|
|
39
36
|
useRootComponent: true,
|
|
40
|
-
clientSideNav:
|
|
37
|
+
clientSideNav: true,
|
|
41
38
|
siteBasePath: '',
|
|
42
39
|
staticSite: false,
|
|
43
40
|
csr: false
|