@warlock.js/cascade 4.15.0 → 5.0.0
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/CHANGELOG.md +19 -0
- package/cjs/index.cjs +494 -72
- package/cjs/index.cjs.map +1 -1
- package/esm/contracts/query-builder.contract.d.mts +7 -3
- package/esm/contracts/query-builder.contract.d.mts.map +1 -1
- package/esm/drivers/mongodb/mongodb-query-builder.d.mts.map +1 -1
- package/esm/drivers/mongodb/mongodb-query-builder.mjs +4 -3
- package/esm/drivers/mongodb/mongodb-query-builder.mjs.map +1 -1
- package/esm/drivers/mongodb/mongodb-query-parser.d.mts +21 -0
- package/esm/drivers/mongodb/mongodb-query-parser.d.mts.map +1 -1
- package/esm/drivers/mongodb/mongodb-query-parser.mjs +55 -22
- package/esm/drivers/mongodb/mongodb-query-parser.mjs.map +1 -1
- package/esm/errors/unsafe-filter.error.d.mts +33 -0
- package/esm/errors/unsafe-filter.error.d.mts.map +1 -0
- package/esm/errors/unsafe-filter.error.mjs +40 -0
- package/esm/errors/unsafe-filter.error.mjs.map +1 -0
- package/esm/errors/unsafe-raw-expression.error.d.mts +23 -0
- package/esm/errors/unsafe-raw-expression.error.d.mts.map +1 -0
- package/esm/errors/unsafe-raw-expression.error.mjs +28 -0
- package/esm/errors/unsafe-raw-expression.error.mjs.map +1 -0
- package/esm/index.d.mts +5 -1
- package/esm/index.mjs +5 -1
- package/esm/model/methods/accessor-methods.mjs +39 -1
- package/esm/model/methods/accessor-methods.mjs.map +1 -1
- package/esm/model/methods/delete-methods.mjs +3 -2
- package/esm/model/methods/delete-methods.mjs.map +1 -1
- package/esm/model/methods/query-methods.mjs +7 -4
- package/esm/model/methods/query-methods.mjs.map +1 -1
- package/esm/model/methods/serialization-methods.mjs +49 -4
- package/esm/model/methods/serialization-methods.mjs.map +1 -1
- package/esm/model/methods/write-methods.d.mts.map +1 -1
- package/esm/model/methods/write-methods.mjs +2 -4
- package/esm/model/methods/write-methods.mjs.map +1 -1
- package/esm/model/model.d.mts +48 -2
- package/esm/model/model.d.mts.map +1 -1
- package/esm/model/model.mjs +61 -2
- package/esm/model/model.mjs.map +1 -1
- package/esm/model/model.types.d.mts +1 -1
- package/esm/query-builder/query-builder.d.mts +13 -1
- package/esm/query-builder/query-builder.d.mts.map +1 -1
- package/esm/query-builder/query-builder.mjs +28 -11
- package/esm/query-builder/query-builder.mjs.map +1 -1
- package/esm/remover/database-remover.d.mts.map +1 -1
- package/esm/remover/database-remover.mjs +1 -1
- package/esm/remover/database-remover.mjs.map +1 -1
- package/esm/utils/database-writer.utils.d.mts +1 -0
- package/esm/utils/database-writer.utils.d.mts.map +1 -1
- package/esm/utils/escape-regex.d.mts +67 -0
- package/esm/utils/escape-regex.d.mts.map +1 -0
- package/esm/utils/escape-regex.mjs +76 -0
- package/esm/utils/escape-regex.mjs.map +1 -0
- package/esm/utils/sanitize-filter.d.mts +26 -0
- package/esm/utils/sanitize-filter.d.mts.map +1 -0
- package/esm/utils/sanitize-filter.mjs +76 -0
- package/esm/utils/sanitize-filter.mjs.map +1 -0
- package/esm/writer/database-writer.d.mts +12 -0
- package/esm/writer/database-writer.d.mts.map +1 -1
- package/esm/writer/database-writer.mjs +26 -6
- package/esm/writer/database-writer.mjs.map +1 -1
- package/llms-full.txt +59 -4
- package/llms.txt +3 -3
- package/package.json +8 -8
- package/skills/README.md +3 -3
- package/skills/define-model/SKILL.md +17 -1
- package/skills/perform-atomic-ops/SKILL.md +4 -1
- package/skills/query-data/SKILL.md +38 -2
package/esm/model/model.d.mts
CHANGED
|
@@ -89,6 +89,25 @@ declare abstract class Model<TSchema extends ModelSchema = ModelSchema> {
|
|
|
89
89
|
* ```
|
|
90
90
|
*/
|
|
91
91
|
static toJsonColumns?: string[];
|
|
92
|
+
/**
|
|
93
|
+
* Top-level fields that are ALWAYS stripped from `toJSON()` output —
|
|
94
|
+
* regardless of `resource`, `resourceColumns` or `toJsonColumns`.
|
|
95
|
+
*
|
|
96
|
+
* `toJSON()` is invoked implicitly by `JSON.stringify(model)` (e.g.
|
|
97
|
+
* `res.json(user)`), and with no `resource`/`toJsonColumns` configured it
|
|
98
|
+
* returns the entire raw document. Declare credential/PII columns here so
|
|
99
|
+
* they can never leak through serialization, whatever else is configured.
|
|
100
|
+
*
|
|
101
|
+
* @default []
|
|
102
|
+
*
|
|
103
|
+
* @example
|
|
104
|
+
* ```typescript
|
|
105
|
+
* class User extends Model {
|
|
106
|
+
* public static hidden = ["password", "resetToken"];
|
|
107
|
+
* }
|
|
108
|
+
* ```
|
|
109
|
+
*/
|
|
110
|
+
static hidden: string[];
|
|
92
111
|
/**
|
|
93
112
|
* Data source reference for this model.
|
|
94
113
|
*
|
|
@@ -370,6 +389,16 @@ declare abstract class Model<TSchema extends ModelSchema = ModelSchema> {
|
|
|
370
389
|
* ```
|
|
371
390
|
*/
|
|
372
391
|
static relations: Readonly<Record<string, RelationDefinition>>;
|
|
392
|
+
/** Backing field for {@link isNew}. */
|
|
393
|
+
private newRecord;
|
|
394
|
+
/**
|
|
395
|
+
* The primary key value captured at the moment this instance became a
|
|
396
|
+
* persisted record — the ONLY value an UPDATE/REPLACE filter may be built
|
|
397
|
+
* from. See {@link trustedPrimaryKey}.
|
|
398
|
+
*/
|
|
399
|
+
private capturedPrimaryKey;
|
|
400
|
+
/** Whether {@link capturedPrimaryKey} holds a captured value. */
|
|
401
|
+
private primaryKeyCaptured;
|
|
373
402
|
/**
|
|
374
403
|
* Flag indicating whether this model instance represents a new (unsaved) record.
|
|
375
404
|
*
|
|
@@ -377,8 +406,25 @@ declare abstract class Model<TSchema extends ModelSchema = ModelSchema> {
|
|
|
377
406
|
* - `false`: The model represents an existing database record
|
|
378
407
|
*
|
|
379
408
|
* This flag is used by the writer to determine whether to perform an insert or update.
|
|
409
|
+
*
|
|
410
|
+
* Setting it to `false` (hydration from the database, or the writer marking a
|
|
411
|
+
* freshly inserted row as persisted) is also the moment the instance captures
|
|
412
|
+
* its trusted primary key — see {@link trustedPrimaryKey}.
|
|
413
|
+
*/
|
|
414
|
+
get isNew(): boolean;
|
|
415
|
+
set isNew(value: boolean);
|
|
416
|
+
/**
|
|
417
|
+
* The primary key value an UPDATE/REPLACE filter must be built from.
|
|
418
|
+
*
|
|
419
|
+
* For a persisted record this is the value the row was loaded with, captured
|
|
420
|
+
* when `isNew` flipped to `false` — NOT the current value in `data`. Deriving
|
|
421
|
+
* the filter from post-`merge()` state let a request body carrying
|
|
422
|
+
* `{ id: "<victim-id>" }` redirect the write to a different document
|
|
423
|
+
* (`model.merge(req.body); await model.save()`), so the two must never be the
|
|
424
|
+
* same read. For a model that was never persisted it falls back to the
|
|
425
|
+
* current value, which is what an insert would use anyway.
|
|
380
426
|
*/
|
|
381
|
-
|
|
427
|
+
get trustedPrimaryKey(): any;
|
|
382
428
|
/**
|
|
383
429
|
* The raw mutable data backing this model instance.
|
|
384
430
|
*
|
|
@@ -1391,7 +1437,7 @@ declare abstract class Model<TSchema extends ModelSchema = ModelSchema> {
|
|
|
1391
1437
|
/**
|
|
1392
1438
|
* Get model schema
|
|
1393
1439
|
*/
|
|
1394
|
-
getSchema():
|
|
1440
|
+
getSchema(): ObjectValidator<import("@warlock.js/seal").Schema> | undefined;
|
|
1395
1441
|
/**
|
|
1396
1442
|
* Check if schema has the given key
|
|
1397
1443
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.mts","names":[],"sources":["../../../../../../../cascade/src/model/model.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model.d.mts","names":[],"sources":["../../../../../../../cascade/src/model/model.ts"],"mappings":"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"}
|
package/esm/model/model.mjs
CHANGED
|
@@ -9,10 +9,10 @@ import { cloneModel, deepFreezeObject, hydrateModel, modelFromSnapshot, modelToS
|
|
|
9
9
|
import { emitModelEvent, offModelEvent, onModelEvent, onceModelEvent } from "./methods/instance-event-methods.mjs";
|
|
10
10
|
import { applyDefaultsToModel, generateModelNextId, performAtomicDecrement, performAtomicIncrement, performAtomicUpdate } from "./methods/meta-methods.mjs";
|
|
11
11
|
import { attachPivotRelation, detachPivotRelation, pivotRelation } from "./methods/pivot-methods.mjs";
|
|
12
|
+
import { modelToJSON } from "./methods/serialization-methods.mjs";
|
|
12
13
|
import { buildNewQueryBuilder, buildQuery, countRecords, decreaseField, findAll, findAndReplaceRecord, findAndUpdateRecords, findById, findFirst, findLast, findLatest, findOneAndDeleteRecord, findOneAndUpdateRecord, increaseField, paginateRecords, performAtomic, resolveDataSource, updateById } from "./methods/query-methods.mjs";
|
|
13
14
|
import { restoreAllRecords, restoreRecord } from "./methods/restore-methods.mjs";
|
|
14
15
|
import { addGlobalModelScope, addLocalModelScope, removeGlobalModelScope, removeLocalModelScope } from "./methods/scope-methods.mjs";
|
|
15
|
-
import { modelToJSON } from "./methods/serialization-methods.mjs";
|
|
16
16
|
import { cleanupModelEvents, getGlobalEvents, getModelEvents, offStaticEvent, onStaticEvent, onceStaticEvent } from "./methods/static-event-methods.mjs";
|
|
17
17
|
import { createManyRecords, createRecord, findOrCreateRecord, saveModel, upsertRecord } from "./methods/write-methods.mjs";
|
|
18
18
|
|
|
@@ -91,6 +91,25 @@ var Model = class Model {
|
|
|
91
91
|
*/
|
|
92
92
|
static toJsonColumns;
|
|
93
93
|
/**
|
|
94
|
+
* Top-level fields that are ALWAYS stripped from `toJSON()` output —
|
|
95
|
+
* regardless of `resource`, `resourceColumns` or `toJsonColumns`.
|
|
96
|
+
*
|
|
97
|
+
* `toJSON()` is invoked implicitly by `JSON.stringify(model)` (e.g.
|
|
98
|
+
* `res.json(user)`), and with no `resource`/`toJsonColumns` configured it
|
|
99
|
+
* returns the entire raw document. Declare credential/PII columns here so
|
|
100
|
+
* they can never leak through serialization, whatever else is configured.
|
|
101
|
+
*
|
|
102
|
+
* @default []
|
|
103
|
+
*
|
|
104
|
+
* @example
|
|
105
|
+
* ```typescript
|
|
106
|
+
* class User extends Model {
|
|
107
|
+
* public static hidden = ["password", "resetToken"];
|
|
108
|
+
* }
|
|
109
|
+
* ```
|
|
110
|
+
*/
|
|
111
|
+
static hidden = [];
|
|
112
|
+
/**
|
|
94
113
|
* Data source reference for this model.
|
|
95
114
|
*
|
|
96
115
|
* Can be:
|
|
@@ -371,6 +390,16 @@ var Model = class Model {
|
|
|
371
390
|
* ```
|
|
372
391
|
*/
|
|
373
392
|
static relations = {};
|
|
393
|
+
/** Backing field for {@link isNew}. */
|
|
394
|
+
newRecord = true;
|
|
395
|
+
/**
|
|
396
|
+
* The primary key value captured at the moment this instance became a
|
|
397
|
+
* persisted record — the ONLY value an UPDATE/REPLACE filter may be built
|
|
398
|
+
* from. See {@link trustedPrimaryKey}.
|
|
399
|
+
*/
|
|
400
|
+
capturedPrimaryKey = void 0;
|
|
401
|
+
/** Whether {@link capturedPrimaryKey} holds a captured value. */
|
|
402
|
+
primaryKeyCaptured = false;
|
|
374
403
|
/**
|
|
375
404
|
* Flag indicating whether this model instance represents a new (unsaved) record.
|
|
376
405
|
*
|
|
@@ -378,8 +407,38 @@ var Model = class Model {
|
|
|
378
407
|
* - `false`: The model represents an existing database record
|
|
379
408
|
*
|
|
380
409
|
* This flag is used by the writer to determine whether to perform an insert or update.
|
|
410
|
+
*
|
|
411
|
+
* Setting it to `false` (hydration from the database, or the writer marking a
|
|
412
|
+
* freshly inserted row as persisted) is also the moment the instance captures
|
|
413
|
+
* its trusted primary key — see {@link trustedPrimaryKey}.
|
|
414
|
+
*/
|
|
415
|
+
get isNew() {
|
|
416
|
+
return this.newRecord;
|
|
417
|
+
}
|
|
418
|
+
set isNew(value) {
|
|
419
|
+
this.newRecord = value;
|
|
420
|
+
if (value) {
|
|
421
|
+
this.capturedPrimaryKey = void 0;
|
|
422
|
+
this.primaryKeyCaptured = false;
|
|
423
|
+
return;
|
|
424
|
+
}
|
|
425
|
+
this.capturedPrimaryKey = this.get(this.self().primaryKey);
|
|
426
|
+
this.primaryKeyCaptured = true;
|
|
427
|
+
}
|
|
428
|
+
/**
|
|
429
|
+
* The primary key value an UPDATE/REPLACE filter must be built from.
|
|
430
|
+
*
|
|
431
|
+
* For a persisted record this is the value the row was loaded with, captured
|
|
432
|
+
* when `isNew` flipped to `false` — NOT the current value in `data`. Deriving
|
|
433
|
+
* the filter from post-`merge()` state let a request body carrying
|
|
434
|
+
* `{ id: "<victim-id>" }` redirect the write to a different document
|
|
435
|
+
* (`model.merge(req.body); await model.save()`), so the two must never be the
|
|
436
|
+
* same read. For a model that was never persisted it falls back to the
|
|
437
|
+
* current value, which is what an insert would use anyway.
|
|
381
438
|
*/
|
|
382
|
-
|
|
439
|
+
get trustedPrimaryKey() {
|
|
440
|
+
return this.primaryKeyCaptured ? this.capturedPrimaryKey : this.get(this.self().primaryKey);
|
|
441
|
+
}
|
|
383
442
|
/**
|
|
384
443
|
* The raw mutable data backing this model instance.
|
|
385
444
|
*
|