velocious 1.0.396 → 1.0.398
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/README.md +12 -0
- package/build/src/configuration.d.ts +9 -0
- package/build/src/configuration.d.ts.map +1 -1
- package/build/src/configuration.js +19 -7
- package/build/src/database/record/instance-relationships/has-many.d.ts +2 -0
- package/build/src/database/record/instance-relationships/has-many.d.ts.map +1 -1
- package/build/src/database/record/instance-relationships/has-many.js +13 -1
- package/build/src/frontend-models/base.d.ts +22 -5
- package/build/src/frontend-models/base.d.ts.map +1 -1
- package/build/src/frontend-models/base.js +176 -33
- package/build/src/frontend-models/clear-pending-debounced-callback.d.ts +6 -0
- package/build/src/frontend-models/clear-pending-debounced-callback.d.ts.map +1 -0
- package/build/src/frontend-models/clear-pending-debounced-callback.js +12 -0
- package/build/src/frontend-models/event-hook-models.d.ts +12 -0
- package/build/src/frontend-models/event-hook-models.d.ts.map +1 -0
- package/build/src/frontend-models/event-hook-models.js +37 -0
- package/build/src/frontend-models/query.d.ts +63 -0
- package/build/src/frontend-models/query.d.ts.map +1 -1
- package/build/src/frontend-models/query.js +51 -1
- package/build/src/frontend-models/use-created-event.d.ts +17 -0
- package/build/src/frontend-models/use-created-event.d.ts.map +1 -0
- package/build/src/frontend-models/use-created-event.js +19 -0
- package/build/src/frontend-models/use-destroyed-event.d.ts +19 -0
- package/build/src/frontend-models/use-destroyed-event.d.ts.map +1 -0
- package/build/src/frontend-models/use-destroyed-event.js +103 -0
- package/build/src/frontend-models/use-model-class-event.d.ts +27 -0
- package/build/src/frontend-models/use-model-class-event.d.ts.map +1 -0
- package/build/src/frontend-models/use-model-class-event.js +116 -0
- package/build/src/frontend-models/use-updated-event.d.ts +20 -0
- package/build/src/frontend-models/use-updated-event.d.ts.map +1 -0
- package/build/src/frontend-models/use-updated-event.js +105 -0
- package/build/src/frontend-models/websocket-channel.d.ts +54 -12
- package/build/src/frontend-models/websocket-channel.d.ts.map +1 -1
- package/build/src/frontend-models/websocket-channel.js +116 -6
- package/build/src/http-server/client/websocket-session.js +2 -2
- package/build/src/http-server/websocket-channel.d.ts +29 -9
- package/build/src/http-server/websocket-channel.d.ts.map +1 -1
- package/build/src/http-server/websocket-channel.js +23 -5
- package/build/src/testing/browser-frontend-model-event-hook-scenarios.d.ts +56 -0
- package/build/src/testing/browser-frontend-model-event-hook-scenarios.d.ts.map +1 -0
- package/build/src/testing/browser-frontend-model-event-hook-scenarios.js +374 -0
- package/build/src/testing/browser-test-app.js +3 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clear-pending-debounced-callback.d.ts","sourceRoot":"","sources":["../../../src/frontend-models/clear-pending-debounced-callback.js"],"names":[],"mappings":"AAEA;;;GAGG;AACH,gEAHW,OAAO,GACL,IAAI,CAQhB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// @ts-check
|
|
2
|
+
/**
|
|
3
|
+
* @param {unknown} callback - Potentially debounced callback.
|
|
4
|
+
* @returns {void}
|
|
5
|
+
*/
|
|
6
|
+
export default function clearPendingDebouncedCallback(callback) {
|
|
7
|
+
const callbackWithClear = /** @type {{clear?: unknown}} */ (callback);
|
|
8
|
+
if (typeof callbackWithClear.clear === "function") {
|
|
9
|
+
callbackWithClear.clear();
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXItcGVuZGluZy1kZWJvdW5jZWQtY2FsbGJhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZnJvbnRlbmQtbW9kZWxzL2NsZWFyLXBlbmRpbmctZGVib3VuY2VkLWNhbGxiYWNrLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWjs7O0dBR0c7QUFDSCxNQUFNLENBQUMsT0FBTyxVQUFVLDZCQUE2QixDQUFDLFFBQVE7SUFDNUQsTUFBTSxpQkFBaUIsR0FBRyxnQ0FBZ0MsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBRXJFLElBQUksT0FBTyxpQkFBaUIsQ0FBQyxLQUFLLEtBQUssVUFBVSxFQUFFLENBQUM7UUFDbEQsaUJBQWlCLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDM0IsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuLyoqXG4gKiBAcGFyYW0ge3Vua25vd259IGNhbGxiYWNrIC0gUG90ZW50aWFsbHkgZGVib3VuY2VkIGNhbGxiYWNrLlxuICogQHJldHVybnMge3ZvaWR9XG4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGNsZWFyUGVuZGluZ0RlYm91bmNlZENhbGxiYWNrKGNhbGxiYWNrKSB7XG4gIGNvbnN0IGNhbGxiYWNrV2l0aENsZWFyID0gLyoqIEB0eXBlIHt7Y2xlYXI/OiB1bmtub3dufX0gKi8gKGNhbGxiYWNrKVxuXG4gIGlmICh0eXBlb2YgY2FsbGJhY2tXaXRoQ2xlYXIuY2xlYXIgPT09IFwiZnVuY3Rpb25cIikge1xuICAgIGNhbGxiYWNrV2l0aENsZWFyLmNsZWFyKClcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {FrontendModelInstance | FrontendModelInstance[] | null | undefined} modelOrModels - Model or models.
|
|
3
|
+
* @returns {FrontendModelInstance[]} - Normalized model list.
|
|
4
|
+
*/
|
|
5
|
+
export function modelsFromInput(modelOrModels: FrontendModelInstance | FrontendModelInstance[] | null | undefined): FrontendModelInstance[];
|
|
6
|
+
/**
|
|
7
|
+
* @param {FrontendModelInstance | FrontendModelInstance[] | null | undefined} modelOrModels - Model or models.
|
|
8
|
+
* @returns {string} - Stable dependency key.
|
|
9
|
+
*/
|
|
10
|
+
export function modelsDependencyKey(modelOrModels: FrontendModelInstance | FrontendModelInstance[] | null | undefined): string;
|
|
11
|
+
export type FrontendModelInstance = import("./base.js").default;
|
|
12
|
+
//# sourceMappingURL=event-hook-models.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-hook-models.d.ts","sourceRoot":"","sources":["../../../src/frontend-models/event-hook-models.js"],"names":[],"mappings":"AAQA;;;GAGG;AACH,+CAHW,qBAAqB,GAAG,qBAAqB,EAAE,GAAG,IAAI,GAAG,SAAS,GAChE,qBAAqB,EAAE,CAOnC;AAkBD;;;GAGG;AACH,mDAHW,qBAAqB,GAAG,qBAAqB,EAAE,GAAG,IAAI,GAAG,SAAS,GAChE,MAAM,CAIlB;oCAvCa,OAAO,WAAW,EAAE,OAAO"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// @ts-check
|
|
2
|
+
/** @typedef {import("./base.js").default} FrontendModelInstance */
|
|
3
|
+
/** @type {WeakMap<FrontendModelInstance, number>} */
|
|
4
|
+
const modelDependencyIds = new WeakMap();
|
|
5
|
+
let nextModelDependencyId = 1;
|
|
6
|
+
/**
|
|
7
|
+
* @param {FrontendModelInstance | FrontendModelInstance[] | null | undefined} modelOrModels - Model or models.
|
|
8
|
+
* @returns {FrontendModelInstance[]} - Normalized model list.
|
|
9
|
+
*/
|
|
10
|
+
export function modelsFromInput(modelOrModels) {
|
|
11
|
+
if (!modelOrModels)
|
|
12
|
+
return [];
|
|
13
|
+
if (Array.isArray(modelOrModels))
|
|
14
|
+
return modelOrModels.filter(Boolean);
|
|
15
|
+
return [modelOrModels];
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* @param {FrontendModelInstance} model - Model instance.
|
|
19
|
+
* @returns {number} - Stable dependency id for the model object.
|
|
20
|
+
*/
|
|
21
|
+
function modelDependencyId(model) {
|
|
22
|
+
const existingId = modelDependencyIds.get(model);
|
|
23
|
+
if (existingId)
|
|
24
|
+
return existingId;
|
|
25
|
+
const id = nextModelDependencyId;
|
|
26
|
+
nextModelDependencyId += 1;
|
|
27
|
+
modelDependencyIds.set(model, id);
|
|
28
|
+
return id;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* @param {FrontendModelInstance | FrontendModelInstance[] | null | undefined} modelOrModels - Model or models.
|
|
32
|
+
* @returns {string} - Stable dependency key.
|
|
33
|
+
*/
|
|
34
|
+
export function modelsDependencyKey(modelOrModels) {
|
|
35
|
+
return JSON.stringify(modelsFromInput(modelOrModels).map((model) => [model.primaryKeyValue(), modelDependencyId(model)]));
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtaG9vay1tb2RlbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZnJvbnRlbmQtbW9kZWxzL2V2ZW50LWhvb2stbW9kZWxzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWixtRUFBbUU7QUFFbkUscURBQXFEO0FBQ3JELE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtBQUN4QyxJQUFJLHFCQUFxQixHQUFHLENBQUMsQ0FBQTtBQUU3Qjs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsZUFBZSxDQUFDLGFBQWE7SUFDM0MsSUFBSSxDQUFDLGFBQWE7UUFBRSxPQUFPLEVBQUUsQ0FBQTtJQUM3QixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDO1FBQUUsT0FBTyxhQUFhLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBRXRFLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUN4QixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxpQkFBaUIsQ0FBQyxLQUFLO0lBQzlCLE1BQU0sVUFBVSxHQUFHLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUVoRCxJQUFJLFVBQVU7UUFBRSxPQUFPLFVBQVUsQ0FBQTtJQUVqQyxNQUFNLEVBQUUsR0FBRyxxQkFBcUIsQ0FBQTtJQUNoQyxxQkFBcUIsSUFBSSxDQUFDLENBQUE7SUFDMUIsa0JBQWtCLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQTtJQUVqQyxPQUFPLEVBQUUsQ0FBQTtBQUNYLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsbUJBQW1CLENBQUMsYUFBYTtJQUMvQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsZUFBZSxFQUFFLEVBQUUsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFDM0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuXG4vKiogQHR5cGVkZWYge2ltcG9ydChcIi4vYmFzZS5qc1wiKS5kZWZhdWx0fSBGcm9udGVuZE1vZGVsSW5zdGFuY2UgKi9cblxuLyoqIEB0eXBlIHtXZWFrTWFwPEZyb250ZW5kTW9kZWxJbnN0YW5jZSwgbnVtYmVyPn0gKi9cbmNvbnN0IG1vZGVsRGVwZW5kZW5jeUlkcyA9IG5ldyBXZWFrTWFwKClcbmxldCBuZXh0TW9kZWxEZXBlbmRlbmN5SWQgPSAxXG5cbi8qKlxuICogQHBhcmFtIHtGcm9udGVuZE1vZGVsSW5zdGFuY2UgfCBGcm9udGVuZE1vZGVsSW5zdGFuY2VbXSB8IG51bGwgfCB1bmRlZmluZWR9IG1vZGVsT3JNb2RlbHMgLSBNb2RlbCBvciBtb2RlbHMuXG4gKiBAcmV0dXJucyB7RnJvbnRlbmRNb2RlbEluc3RhbmNlW119IC0gTm9ybWFsaXplZCBtb2RlbCBsaXN0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gbW9kZWxzRnJvbUlucHV0KG1vZGVsT3JNb2RlbHMpIHtcbiAgaWYgKCFtb2RlbE9yTW9kZWxzKSByZXR1cm4gW11cbiAgaWYgKEFycmF5LmlzQXJyYXkobW9kZWxPck1vZGVscykpIHJldHVybiBtb2RlbE9yTW9kZWxzLmZpbHRlcihCb29sZWFuKVxuXG4gIHJldHVybiBbbW9kZWxPck1vZGVsc11cbn1cblxuLyoqXG4gKiBAcGFyYW0ge0Zyb250ZW5kTW9kZWxJbnN0YW5jZX0gbW9kZWwgLSBNb2RlbCBpbnN0YW5jZS5cbiAqIEByZXR1cm5zIHtudW1iZXJ9IC0gU3RhYmxlIGRlcGVuZGVuY3kgaWQgZm9yIHRoZSBtb2RlbCBvYmplY3QuXG4gKi9cbmZ1bmN0aW9uIG1vZGVsRGVwZW5kZW5jeUlkKG1vZGVsKSB7XG4gIGNvbnN0IGV4aXN0aW5nSWQgPSBtb2RlbERlcGVuZGVuY3lJZHMuZ2V0KG1vZGVsKVxuXG4gIGlmIChleGlzdGluZ0lkKSByZXR1cm4gZXhpc3RpbmdJZFxuXG4gIGNvbnN0IGlkID0gbmV4dE1vZGVsRGVwZW5kZW5jeUlkXG4gIG5leHRNb2RlbERlcGVuZGVuY3lJZCArPSAxXG4gIG1vZGVsRGVwZW5kZW5jeUlkcy5zZXQobW9kZWwsIGlkKVxuXG4gIHJldHVybiBpZFxufVxuXG4vKipcbiAqIEBwYXJhbSB7RnJvbnRlbmRNb2RlbEluc3RhbmNlIHwgRnJvbnRlbmRNb2RlbEluc3RhbmNlW10gfCBudWxsIHwgdW5kZWZpbmVkfSBtb2RlbE9yTW9kZWxzIC0gTW9kZWwgb3IgbW9kZWxzLlxuICogQHJldHVybnMge3N0cmluZ30gLSBTdGFibGUgZGVwZW5kZW5jeSBrZXkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtb2RlbHNEZXBlbmRlbmN5S2V5KG1vZGVsT3JNb2RlbHMpIHtcbiAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KG1vZGVsc0Zyb21JbnB1dChtb2RlbE9yTW9kZWxzKS5tYXAoKG1vZGVsKSA9PiBbbW9kZWwucHJpbWFyeUtleVZhbHVlKCksIG1vZGVsRGVwZW5kZW5jeUlkKG1vZGVsKV0pKVxufVxuIl19
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {typeof import("./base.js").default} modelClass - Frontend model class.
|
|
3
|
+
* @param {FrontendModelProjectionOptions} [options] - Projection options.
|
|
4
|
+
* @returns {FrontendModelProjectionPayload} - Normalized frontend-model projection payload.
|
|
5
|
+
*/
|
|
6
|
+
export function frontendModelProjectionPayload(modelClass: typeof import("./base.js").default, options?: FrontendModelProjectionOptions): FrontendModelProjectionPayload;
|
|
1
7
|
/**
|
|
2
8
|
* Query wrapper for frontend model commands.
|
|
3
9
|
* @template {typeof import("./base.js").default} T
|
|
@@ -329,6 +335,63 @@ export type FrontendModelSearch = {
|
|
|
329
335
|
*/
|
|
330
336
|
value: unknown;
|
|
331
337
|
};
|
|
338
|
+
export type FrontendModelTransportValue = null | boolean | number | string | object;
|
|
339
|
+
export type FrontendModelWithCountPayloadEntry = {
|
|
340
|
+
attributeName: string;
|
|
341
|
+
relationshipName: string;
|
|
342
|
+
where?: Record<string, FrontendModelTransportValue>;
|
|
343
|
+
};
|
|
344
|
+
export type FrontendModelAbilitiesPayloadEntry = {
|
|
345
|
+
modelName: string;
|
|
346
|
+
actions: string[];
|
|
347
|
+
};
|
|
348
|
+
export type FrontendModelProjectionOptions = {
|
|
349
|
+
/**
|
|
350
|
+
* - Model-aware attribute select map or root-model shorthand.
|
|
351
|
+
*/
|
|
352
|
+
select?: string | string[] | Record<string, string | string[]> | undefined;
|
|
353
|
+
/**
|
|
354
|
+
* - Relationship preload tree.
|
|
355
|
+
*/
|
|
356
|
+
preload?: string | import("../database/query/index.js").NestedPreloadRecord | (string | import("../database/query/index.js").NestedPreloadRecord)[] | undefined;
|
|
357
|
+
/**
|
|
358
|
+
* - Association count spec.
|
|
359
|
+
*/
|
|
360
|
+
withCount?: string | string[] | Record<string, boolean | {
|
|
361
|
+
relationship?: string;
|
|
362
|
+
where?: Record<string, FrontendModelTransportValue>;
|
|
363
|
+
}> | undefined;
|
|
364
|
+
/**
|
|
365
|
+
* - Ability actions to compute per record.
|
|
366
|
+
*/
|
|
367
|
+
abilities?: string[] | Record<string, string[]> | undefined;
|
|
368
|
+
/**
|
|
369
|
+
* - Backend query data names/spec.
|
|
370
|
+
*/
|
|
371
|
+
queryData?: string | Record<string, FrontendModelTransportValue> | (string | Record<string, FrontendModelTransportValue>)[] | undefined;
|
|
372
|
+
};
|
|
373
|
+
export type FrontendModelProjectionPayload = {
|
|
374
|
+
/**
|
|
375
|
+
* - Normalized select map.
|
|
376
|
+
*/
|
|
377
|
+
select?: Record<string, string[]> | undefined;
|
|
378
|
+
/**
|
|
379
|
+
* - Normalized preload tree.
|
|
380
|
+
*/
|
|
381
|
+
preload?: import("../database/query/index.js").NestedPreloadRecord | undefined;
|
|
382
|
+
/**
|
|
383
|
+
* - Normalized count specs.
|
|
384
|
+
*/
|
|
385
|
+
withCount?: FrontendModelWithCountPayloadEntry[] | undefined;
|
|
386
|
+
/**
|
|
387
|
+
* - Normalized ability specs.
|
|
388
|
+
*/
|
|
389
|
+
abilities?: FrontendModelAbilitiesPayloadEntry[] | undefined;
|
|
390
|
+
/**
|
|
391
|
+
* - Normalized queryData spec.
|
|
392
|
+
*/
|
|
393
|
+
queryData?: FrontendModelTransportValue | undefined;
|
|
394
|
+
};
|
|
332
395
|
export type FrontendModelSort = {
|
|
333
396
|
/**
|
|
334
397
|
* - Attribute name to sort by.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../src/frontend-models/query.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../src/frontend-models/query.js"],"names":[],"mappings":"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"}
|