@opensaas/stack-core 0.20.1 → 0.22.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/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +334 -0
- package/CLAUDE.md +29 -11
- package/dist/access/access-filter.d.ts +29 -0
- package/dist/access/access-filter.d.ts.map +1 -0
- package/dist/access/access-filter.js +68 -0
- package/dist/access/access-filter.js.map +1 -0
- package/dist/access/engine.d.ts +15 -48
- package/dist/access/engine.d.ts.map +1 -1
- package/dist/access/engine.js +14 -280
- package/dist/access/engine.js.map +1 -1
- package/dist/access/field-access.d.ts +44 -0
- package/dist/access/field-access.d.ts.map +1 -0
- package/dist/access/field-access.js +123 -0
- package/dist/access/field-access.js.map +1 -0
- package/dist/access/field-access.test.d.ts +2 -0
- package/dist/access/field-access.test.d.ts.map +1 -0
- package/dist/access/{engine.test.js → field-access.test.js} +2 -2
- package/dist/access/field-access.test.js.map +1 -0
- package/dist/access/field-visibility.d.ts +13 -0
- package/dist/access/field-visibility.d.ts.map +1 -0
- package/dist/access/field-visibility.js +178 -0
- package/dist/access/field-visibility.js.map +1 -0
- package/dist/access/index.d.ts +4 -1
- package/dist/access/index.d.ts.map +1 -1
- package/dist/access/index.js +8 -1
- package/dist/access/index.js.map +1 -1
- package/dist/access/multi-column-read-write.test.d.ts +2 -0
- package/dist/access/multi-column-read-write.test.d.ts.map +1 -0
- package/dist/access/multi-column-read-write.test.js +149 -0
- package/dist/access/multi-column-read-write.test.js.map +1 -0
- package/dist/config/index.d.ts +1 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/types.d.ts +334 -5
- package/dist/config/types.d.ts.map +1 -1
- package/dist/context/hook-pipeline.d.ts +49 -0
- package/dist/context/hook-pipeline.d.ts.map +1 -0
- package/dist/context/hook-pipeline.js +75 -0
- package/dist/context/hook-pipeline.js.map +1 -0
- package/dist/context/index.d.ts.map +1 -1
- package/dist/context/index.js +30 -462
- package/dist/context/index.js.map +1 -1
- package/dist/context/nested-operations.d.ts.map +1 -1
- package/dist/context/nested-operations.js +72 -68
- package/dist/context/nested-operations.js.map +1 -1
- package/dist/context/write-pipeline.d.ts +158 -0
- package/dist/context/write-pipeline.d.ts.map +1 -0
- package/dist/context/write-pipeline.js +306 -0
- package/dist/context/write-pipeline.js.map +1 -0
- package/dist/extend.d.ts +3 -0
- package/dist/extend.d.ts.map +1 -0
- package/dist/extend.js +10 -0
- package/dist/extend.js.map +1 -0
- package/dist/fields/format-prisma-default.d.ts +35 -0
- package/dist/fields/format-prisma-default.d.ts.map +1 -0
- package/dist/fields/format-prisma-default.js +52 -0
- package/dist/fields/format-prisma-default.js.map +1 -0
- package/dist/fields/format-prisma-default.test.d.ts +2 -0
- package/dist/fields/format-prisma-default.test.d.ts.map +1 -0
- package/dist/fields/format-prisma-default.test.js +54 -0
- package/dist/fields/format-prisma-default.test.js.map +1 -0
- package/dist/fields/index.d.ts +1 -0
- package/dist/fields/index.d.ts.map +1 -1
- package/dist/fields/index.js +267 -18
- package/dist/fields/index.js.map +1 -1
- package/dist/fields/select.test.js +85 -0
- package/dist/fields/select.test.js.map +1 -1
- package/dist/fields/text-keystone-compat.test.d.ts +2 -0
- package/dist/fields/text-keystone-compat.test.d.ts.map +1 -0
- package/dist/fields/text-keystone-compat.test.js +93 -0
- package/dist/fields/text-keystone-compat.test.js.map +1 -0
- package/dist/hooks/index.d.ts +20 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +246 -0
- package/dist/hooks/index.js.map +1 -1
- package/dist/index.d.ts +6 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +25 -9
- package/dist/index.js.map +1 -1
- package/dist/index.test.d.ts +2 -0
- package/dist/index.test.d.ts.map +1 -0
- package/dist/index.test.js +33 -0
- package/dist/index.test.js.map +1 -0
- package/dist/internal.d.ts +8 -0
- package/dist/internal.d.ts.map +1 -0
- package/dist/internal.js +16 -0
- package/dist/internal.js.map +1 -0
- package/dist/mcp/handler.js +0 -1
- package/dist/mcp/handler.js.map +1 -1
- package/dist/validation/field-config.d.ts +55 -0
- package/dist/validation/field-config.d.ts.map +1 -0
- package/dist/validation/field-config.js +100 -0
- package/dist/validation/field-config.js.map +1 -0
- package/dist/validation/field-config.test.d.ts +2 -0
- package/dist/validation/field-config.test.d.ts.map +1 -0
- package/dist/validation/field-config.test.js +159 -0
- package/dist/validation/field-config.test.js.map +1 -0
- package/package.json +11 -3
- package/src/access/access-filter.ts +97 -0
- package/src/access/engine.ts +13 -396
- package/src/access/{engine.test.ts → field-access.test.ts} +1 -1
- package/src/access/field-access.ts +159 -0
- package/src/access/field-visibility.ts +269 -0
- package/src/access/index.ts +7 -4
- package/src/access/multi-column-read-write.test.ts +255 -0
- package/src/config/index.ts +3 -0
- package/src/config/types.ts +342 -4
- package/src/context/hook-pipeline.ts +160 -0
- package/src/context/index.ts +29 -667
- package/src/context/nested-operations.ts +142 -111
- package/src/context/write-pipeline.ts +543 -0
- package/src/extend.ts +19 -0
- package/src/fields/format-prisma-default.test.ts +64 -0
- package/src/fields/format-prisma-default.ts +67 -0
- package/src/fields/index.ts +375 -20
- package/src/fields/select.test.ts +99 -0
- package/src/fields/text-keystone-compat.test.ts +126 -0
- package/src/hooks/index.ts +270 -0
- package/src/index.test.ts +50 -0
- package/src/index.ts +35 -82
- package/src/internal.ts +49 -0
- package/src/mcp/handler.ts +0 -2
- package/src/validation/field-config.test.ts +199 -0
- package/src/validation/field-config.ts +145 -0
- package/tests/access-relationships.test.ts +4 -4
- package/tests/access.test.ts +1 -1
- package/tests/field-hooks.test.ts +410 -0
- package/tests/field-types.test.ts +1 -1
- package/tests/hook-pipeline.test.ts +233 -0
- package/tests/nested-operation-registry.test.ts +206 -0
- package/tests/write-pipeline.test.ts +588 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/vitest.config.ts +43 -1
- package/dist/access/engine.test.d.ts +0 -2
- package/dist/access/engine.test.d.ts.map +0 -1
- package/dist/access/engine.test.js.map +0 -1
package/dist/config/types.d.ts
CHANGED
|
@@ -395,9 +395,12 @@ export type BaseFieldConfig<TTypeInfo extends TypeInfo> = {
|
|
|
395
395
|
* @param fieldName - The name of the field (for generating modifiers)
|
|
396
396
|
* @param provider - Optional database provider ('sqlite', 'postgresql', 'mysql', etc.)
|
|
397
397
|
* @param listName - Optional list name (used for generating enum type names)
|
|
398
|
+
* @param keystoneCompat - Whether Keystone-compat mode is enabled (db.keystoneCompat).
|
|
399
|
+
* When true, non-null text columns without an explicit defaultValue emit
|
|
400
|
+
* `@default("")` to match Keystone 6's implicit empty-string text default.
|
|
398
401
|
* @returns Prisma type string, optional modifiers, and optional enum values
|
|
399
402
|
*/
|
|
400
|
-
getPrismaType?: (fieldName: string, provider?: string, listName?: string) => {
|
|
403
|
+
getPrismaType?: (fieldName: string, provider?: string, listName?: string, keystoneCompat?: boolean) => {
|
|
401
404
|
type: string;
|
|
402
405
|
modifiers?: string;
|
|
403
406
|
/**
|
|
@@ -435,6 +438,71 @@ export type BaseFieldConfig<TTypeInfo extends TypeInfo> = {
|
|
|
435
438
|
*/
|
|
436
439
|
typeOnly?: boolean;
|
|
437
440
|
}>;
|
|
441
|
+
/**
|
|
442
|
+
* Multi-column Prisma emission.
|
|
443
|
+
*
|
|
444
|
+
* Most scalar fields back a single Prisma column via {@link getPrismaType}.
|
|
445
|
+
* A field that maps onto SEVERAL physical columns (e.g. the storage
|
|
446
|
+
* `image()`/`file()` fields in multi-column / Keystone-parity mode — see
|
|
447
|
+
* ADR-0006) implements this instead: it returns one descriptor per column,
|
|
448
|
+
* each becoming its own line in the generated model. When present, the
|
|
449
|
+
* generator emits these lines and skips the single-column `getPrismaType`
|
|
450
|
+
* path. The field itself owns the column layout — the generator stays a
|
|
451
|
+
* neutral coordinator (no field-type switches), mirroring how relationship
|
|
452
|
+
* fields emit FK + relation lines through `getPrismaRelation`.
|
|
453
|
+
*
|
|
454
|
+
* @param fieldName - The field's config key (used to derive default column names)
|
|
455
|
+
* @returns One descriptor per physical column, or `undefined` to fall back to
|
|
456
|
+
* the single-column `getPrismaType` path.
|
|
457
|
+
*/
|
|
458
|
+
getPrismaColumns?: (fieldName: string) => MultiColumnPrismaResult[] | undefined;
|
|
459
|
+
/**
|
|
460
|
+
* The physical Prisma column names this field owns when it spans multiple
|
|
461
|
+
* columns (see {@link getPrismaColumns}). The read path uses this to strip the
|
|
462
|
+
* raw per-part columns from query results so only the assembled logical value
|
|
463
|
+
* (produced by {@link assembleColumns}) is exposed.
|
|
464
|
+
*
|
|
465
|
+
* @param fieldName - The field's config key
|
|
466
|
+
*/
|
|
467
|
+
getColumnNames?: (fieldName: string) => string[];
|
|
468
|
+
/**
|
|
469
|
+
* Assemble the field's logical value from a database row's per-part columns
|
|
470
|
+
* (the read direction of a multi-column field). Pure transform — called by the
|
|
471
|
+
* read pipeline before field visibility. Receives the full row so it can read
|
|
472
|
+
* its sibling columns by name.
|
|
473
|
+
*
|
|
474
|
+
* @param fieldName - The field's config key
|
|
475
|
+
* @param row - The raw database row (contains the per-part columns)
|
|
476
|
+
*/
|
|
477
|
+
assembleColumns?: (fieldName: string, row: Record<string, unknown>) => unknown;
|
|
478
|
+
/**
|
|
479
|
+
* Split the field's logical value into per-part columns for writing (the write
|
|
480
|
+
* direction of a multi-column field). Pure transform — called by the write
|
|
481
|
+
* pipeline after `resolveInput`; the returned record is merged into the write
|
|
482
|
+
* payload in place of the single field key.
|
|
483
|
+
*
|
|
484
|
+
* @param fieldName - The field's config key
|
|
485
|
+
* @param value - The resolved logical value (metadata, or `null` to clear)
|
|
486
|
+
*/
|
|
487
|
+
splitColumns?: (fieldName: string, value: unknown) => Record<string, unknown>;
|
|
488
|
+
};
|
|
489
|
+
/**
|
|
490
|
+
* A single physical column contributed by a multi-column field
|
|
491
|
+
* (see {@link BaseFieldConfig.getPrismaColumns}).
|
|
492
|
+
*/
|
|
493
|
+
export type MultiColumnPrismaResult = {
|
|
494
|
+
/** The Prisma model field name (the property the column is declared as). */
|
|
495
|
+
name: string;
|
|
496
|
+
/** The Prisma scalar type, e.g. `'String'` or `'Int'`. */
|
|
497
|
+
type: string;
|
|
498
|
+
/**
|
|
499
|
+
* Field modifiers, e.g. `'?'` for nullable. A leading `'?'` attaches to the
|
|
500
|
+
* type; anything after it is treated as trailing attributes (matching the
|
|
501
|
+
* single-column `getPrismaType` modifier convention).
|
|
502
|
+
*/
|
|
503
|
+
modifiers?: string;
|
|
504
|
+
/** Physical column name for the `@map` attribute, when it differs from `name`. */
|
|
505
|
+
map?: string;
|
|
438
506
|
};
|
|
439
507
|
export type TextField<TTypeInfo extends TypeInfo = TypeInfo> = BaseFieldConfig<TTypeInfo> & {
|
|
440
508
|
type: 'text';
|
|
@@ -513,6 +581,46 @@ export type SelectField<TTypeInfo extends TypeInfo = TypeInfo> = BaseFieldConfig
|
|
|
513
581
|
*/
|
|
514
582
|
type?: 'string' | 'enum';
|
|
515
583
|
map?: string;
|
|
584
|
+
/**
|
|
585
|
+
* Force the generated column to be nullable (`?`) even when a `defaultValue`
|
|
586
|
+
* is present. By default a select with a `defaultValue` generates NOT NULL;
|
|
587
|
+
* set this to `true` for an explicit opt-in to a nullable column with a
|
|
588
|
+
* default (e.g. `String? @default("X")` or `<Enum>? @default(X)`), so that
|
|
589
|
+
* a live column containing NULLs migrates without a NOT NULL failure.
|
|
590
|
+
*
|
|
591
|
+
* @default undefined (NOT NULL when a default is present — unchanged behaviour)
|
|
592
|
+
*
|
|
593
|
+
* @example
|
|
594
|
+
* ```typescript
|
|
595
|
+
* // Optional select with a default, but keep the column nullable
|
|
596
|
+
* status: select({
|
|
597
|
+
* options: [{ label: 'Draft', value: 'draft' }],
|
|
598
|
+
* defaultValue: 'draft',
|
|
599
|
+
* db: { isNullable: true },
|
|
600
|
+
* })
|
|
601
|
+
* // Generates: String? @default("draft")
|
|
602
|
+
* ```
|
|
603
|
+
*/
|
|
604
|
+
isNullable?: boolean;
|
|
605
|
+
/**
|
|
606
|
+
* Override the generated Prisma enum type name for native-enum selects
|
|
607
|
+
* (only applies when `type: 'enum'`). By default the enum is named
|
|
608
|
+
* `<List><Field>` (e.g. `AccountNoteStatus`); set this to match a live DB
|
|
609
|
+
* enum type whose name differs (e.g. Keystone's `…Type` suffix).
|
|
610
|
+
*
|
|
611
|
+
* The custom name is applied to both the generated `enum` block and every
|
|
612
|
+
* reference to it in the owning model.
|
|
613
|
+
*
|
|
614
|
+
* @example
|
|
615
|
+
* ```typescript
|
|
616
|
+
* status: select({
|
|
617
|
+
* options: [{ label: 'Open', value: 'open' }],
|
|
618
|
+
* db: { type: 'enum', enumName: 'AccountNoteStatusType' },
|
|
619
|
+
* })
|
|
620
|
+
* // Generates: enum AccountNoteStatusType { ... } and the column references it
|
|
621
|
+
* ```
|
|
622
|
+
*/
|
|
623
|
+
enumName?: string;
|
|
516
624
|
};
|
|
517
625
|
validation?: {
|
|
518
626
|
isRequired?: boolean;
|
|
@@ -649,6 +757,49 @@ export type RelationshipField<TTypeInfo extends TypeInfo = TypeInfo> = BaseField
|
|
|
649
757
|
ui?: {
|
|
650
758
|
displayMode?: 'select' | 'cards';
|
|
651
759
|
};
|
|
760
|
+
/**
|
|
761
|
+
* Get the complete Prisma schema contribution for this relationship field.
|
|
762
|
+
*
|
|
763
|
+
* Relationships are special: unlike scalar fields (which return a single
|
|
764
|
+
* type via `getPrismaType`), a relationship can contribute a foreign key
|
|
765
|
+
* line, a relation line on the owning model, and a synthetic back-relation
|
|
766
|
+
* line on the target model. This method encapsulates all of that logic so
|
|
767
|
+
* the generator can remain a neutral coordinator.
|
|
768
|
+
*
|
|
769
|
+
* @param fieldName - The name of this relationship field
|
|
770
|
+
* @param allFields - All fields on the list this relationship belongs to
|
|
771
|
+
* @param listKey - The name of the list this relationship belongs to
|
|
772
|
+
* @param config - The full OpenSaas config (used to resolve the target list/field)
|
|
773
|
+
*/
|
|
774
|
+
getPrismaRelation?: (fieldName: string, allFields: Record<string, FieldConfig>, listKey: string, config: OpenSaasConfig) => PrismaRelationResult;
|
|
775
|
+
};
|
|
776
|
+
/**
|
|
777
|
+
* The complete Prisma schema contribution of a relationship field.
|
|
778
|
+
*/
|
|
779
|
+
export type PrismaRelationResult = {
|
|
780
|
+
/**
|
|
781
|
+
* Lines to add to the owning model.
|
|
782
|
+
* For an FK-owning single relationship this is `[fkLine, relationLine]`;
|
|
783
|
+
* for the many side or the non-FK side it is `[relationLine]`.
|
|
784
|
+
*/
|
|
785
|
+
modelLines: string[];
|
|
786
|
+
/**
|
|
787
|
+
* Foreign key index to add to the owning model, if this side owns an
|
|
788
|
+
* indexed foreign key.
|
|
789
|
+
*/
|
|
790
|
+
foreignKeyIndex?: {
|
|
791
|
+
foreignKeyField: string;
|
|
792
|
+
indexType: boolean | 'unique';
|
|
793
|
+
};
|
|
794
|
+
/**
|
|
795
|
+
* Synthetic back-relation field to add to the target model. Only present
|
|
796
|
+
* for list-only refs (e.g., `ref: 'Category'`), where the target model
|
|
797
|
+
* needs an opposite relation field for Prisma to validate the relation.
|
|
798
|
+
*/
|
|
799
|
+
backRelation?: {
|
|
800
|
+
targetList: string;
|
|
801
|
+
line: string;
|
|
802
|
+
};
|
|
652
803
|
};
|
|
653
804
|
export type JsonField<TTypeInfo extends TypeInfo = TypeInfo> = BaseFieldConfig<TTypeInfo> & {
|
|
654
805
|
type: 'json';
|
|
@@ -981,6 +1132,65 @@ export type ListConfig<TTypeInfo extends TypeInfo> = {
|
|
|
981
1132
|
operation?: OperationAccess<TTypeInfo['item']>;
|
|
982
1133
|
};
|
|
983
1134
|
hooks?: Hooks<TTypeInfo['item'], TTypeInfo['inputs']['create'], TTypeInfo['inputs']['update']>;
|
|
1135
|
+
/**
|
|
1136
|
+
* Database configuration for this list (model level)
|
|
1137
|
+
*/
|
|
1138
|
+
db?: {
|
|
1139
|
+
/**
|
|
1140
|
+
* Custom database table name.
|
|
1141
|
+
* Adds a `@@map` attribute to the generated Prisma model.
|
|
1142
|
+
*
|
|
1143
|
+
* Useful when the Prisma model name (the list key) must differ from the
|
|
1144
|
+
* physical table name — e.g. adopting an existing better-auth installation
|
|
1145
|
+
* whose tables were created under a different name.
|
|
1146
|
+
*
|
|
1147
|
+
* @example
|
|
1148
|
+
* ```typescript
|
|
1149
|
+
* AuthUser: list({ fields: { ... }, db: { map: 'user' } })
|
|
1150
|
+
* // Generates: model AuthUser { ... @@map("user") }
|
|
1151
|
+
* ```
|
|
1152
|
+
*/
|
|
1153
|
+
map?: string;
|
|
1154
|
+
/**
|
|
1155
|
+
* Database schema for this model (Postgres multi-schema).
|
|
1156
|
+
* Adds a `@@schema` attribute to the generated Prisma model.
|
|
1157
|
+
*
|
|
1158
|
+
* Requires the schema to be listed in the datasource `schemas` array (see
|
|
1159
|
+
* {@link DatabaseConfig.schemas}) and the `multiSchema` preview feature,
|
|
1160
|
+
* both of which the generator emits automatically when `db.schemas` is set.
|
|
1161
|
+
*
|
|
1162
|
+
* Useful when adopting an existing installation whose tables live in a
|
|
1163
|
+
* non-`public` schema — e.g. a separate-schema better-auth layout.
|
|
1164
|
+
*
|
|
1165
|
+
* @example
|
|
1166
|
+
* ```typescript
|
|
1167
|
+
* AuthUser: list({ fields: { ... }, db: { schema: 'auth' } })
|
|
1168
|
+
* // Generates: model AuthUser { ... @@schema("auth") }
|
|
1169
|
+
* ```
|
|
1170
|
+
*/
|
|
1171
|
+
schema?: string;
|
|
1172
|
+
/**
|
|
1173
|
+
* Per-list override for auto-injected `createdAt`/`updatedAt` timestamp columns.
|
|
1174
|
+
*
|
|
1175
|
+
* Takes precedence over the global `db.timestamps` setting:
|
|
1176
|
+
* - `true` forces auto-timestamps on for this list, even when the global default is off.
|
|
1177
|
+
* - `false` forces them off for this list, even when enabled globally.
|
|
1178
|
+
* - `undefined` (the default) falls back to the global `db.timestamps` setting.
|
|
1179
|
+
*
|
|
1180
|
+
* When timestamps resolve to on but the list already declares its own `createdAt`/
|
|
1181
|
+
* `updatedAt` field, the auto column is skipped for the declared field(s) so Prisma
|
|
1182
|
+
* never sees a duplicate (`P1012`).
|
|
1183
|
+
*
|
|
1184
|
+
* @example Opt a single list out of timestamps even when enabled globally
|
|
1185
|
+
* ```typescript
|
|
1186
|
+
* Production: list({
|
|
1187
|
+
* fields: { name: text() },
|
|
1188
|
+
* db: { timestamps: false },
|
|
1189
|
+
* })
|
|
1190
|
+
* ```
|
|
1191
|
+
*/
|
|
1192
|
+
timestamps?: boolean;
|
|
1193
|
+
};
|
|
984
1194
|
/**
|
|
985
1195
|
* MCP server configuration for this list
|
|
986
1196
|
*/
|
|
@@ -1048,12 +1258,10 @@ export type DatabaseConfig = {
|
|
|
1048
1258
|
*
|
|
1049
1259
|
* @example SQLite with better-sqlite3
|
|
1050
1260
|
* ```typescript
|
|
1051
|
-
* import {
|
|
1052
|
-
* import Database from 'better-sqlite3'
|
|
1261
|
+
* import { PrismaBetterSqlite3 } from '@prisma/adapter-better-sqlite3'
|
|
1053
1262
|
*
|
|
1054
1263
|
* prismaClientConstructor: (PrismaClient) => {
|
|
1055
|
-
* const
|
|
1056
|
-
* const adapter = new PrismaBetterSQLite3(db)
|
|
1264
|
+
* const adapter = new PrismaBetterSqlite3({ url: process.env.DATABASE_URL || 'file:./dev.db' })
|
|
1057
1265
|
* return new PrismaClient({ adapter })
|
|
1058
1266
|
* }
|
|
1059
1267
|
* ```
|
|
@@ -1108,6 +1316,86 @@ export type DatabaseConfig = {
|
|
|
1108
1316
|
* ```
|
|
1109
1317
|
*/
|
|
1110
1318
|
joinTableNaming?: 'prisma' | 'keystone';
|
|
1319
|
+
/**
|
|
1320
|
+
* Postgres multi-schema support.
|
|
1321
|
+
*
|
|
1322
|
+
* When set, the generator enables Prisma's `multiSchema` preview feature and
|
|
1323
|
+
* emits the `schemas = [...]` array on the datasource block. Combine with a
|
|
1324
|
+
* per-list `db.schema` (see {@link ListConfig}) to place models in a specific
|
|
1325
|
+
* schema via `@@schema(...)`.
|
|
1326
|
+
*
|
|
1327
|
+
* Only applies to the `postgresql` provider. When unset, the generated schema
|
|
1328
|
+
* is unchanged (single `public` schema, no `@@schema` attributes).
|
|
1329
|
+
*
|
|
1330
|
+
* @example Separate `auth` schema alongside the default `public`
|
|
1331
|
+
* ```typescript
|
|
1332
|
+
* db: {
|
|
1333
|
+
* provider: 'postgresql',
|
|
1334
|
+
* schemas: ['public', 'auth'],
|
|
1335
|
+
* // ...
|
|
1336
|
+
* }
|
|
1337
|
+
* ```
|
|
1338
|
+
*/
|
|
1339
|
+
schemas?: string[];
|
|
1340
|
+
/**
|
|
1341
|
+
* Auto-inject `createdAt`/`updatedAt` timestamp columns into every generated model.
|
|
1342
|
+
*
|
|
1343
|
+
* Default: `false`. The generator does NOT add timestamps automatically — a list
|
|
1344
|
+
* opts in either by declaring the fields itself or by enabling this flag. This matches
|
|
1345
|
+
* Keystone 6, which never adds timestamps automatically, and keeps Keystone → stack
|
|
1346
|
+
* migrations non-destructive (Schema parity). See ADR-0004.
|
|
1347
|
+
*
|
|
1348
|
+
* When `true`, every list receives:
|
|
1349
|
+
* ```prisma
|
|
1350
|
+
* createdAt DateTime @default(now())
|
|
1351
|
+
* updatedAt DateTime @default(now()) @updatedAt
|
|
1352
|
+
* ```
|
|
1353
|
+
*
|
|
1354
|
+
* A per-list `db.timestamps` override takes precedence over this global setting. When
|
|
1355
|
+
* timestamps are enabled but a list already declares its own `createdAt`/`updatedAt`
|
|
1356
|
+
* field, the auto column is skipped for the declared field(s) so Prisma never sees a
|
|
1357
|
+
* duplicate (`P1012`).
|
|
1358
|
+
*
|
|
1359
|
+
* @default false
|
|
1360
|
+
*
|
|
1361
|
+
* @example Re-enable auto-timestamps globally
|
|
1362
|
+
* ```typescript
|
|
1363
|
+
* db: {
|
|
1364
|
+
* provider: 'postgresql',
|
|
1365
|
+
* timestamps: true,
|
|
1366
|
+
* // ... rest of config
|
|
1367
|
+
* }
|
|
1368
|
+
* ```
|
|
1369
|
+
*/
|
|
1370
|
+
timestamps?: boolean;
|
|
1371
|
+
/**
|
|
1372
|
+
* Opt into Keystone-compat mode for generated schema defaults.
|
|
1373
|
+
*
|
|
1374
|
+
* Keystone 6 gives every non-null text column an implicit empty-string
|
|
1375
|
+
* default. With `keystoneCompat: true`, the generator mirrors that: any
|
|
1376
|
+
* non-null `text()` column that has no explicit `defaultValue` emits
|
|
1377
|
+
* `@default("")`, so a migrating project reaches Schema parity without
|
|
1378
|
+
* hand-setting `defaultValue: ''` on dozens of columns.
|
|
1379
|
+
*
|
|
1380
|
+
* Stays opt-in (default `false`) because a greenfield project would not want
|
|
1381
|
+
* implicit empty-string text defaults cluttering its schema. The flag never
|
|
1382
|
+
* affects nullable text, fields with an explicit `defaultValue`, or any
|
|
1383
|
+
* non-text field — an explicit `text({ defaultValue: 'x' })` always wins.
|
|
1384
|
+
*
|
|
1385
|
+
* @default false
|
|
1386
|
+
*
|
|
1387
|
+
* @example Reach Schema parity when migrating from Keystone
|
|
1388
|
+
* ```typescript
|
|
1389
|
+
* db: {
|
|
1390
|
+
* provider: 'postgresql',
|
|
1391
|
+
* keystoneCompat: true, // non-null text without a default → @default("")
|
|
1392
|
+
* // ... rest of config
|
|
1393
|
+
* }
|
|
1394
|
+
* ```
|
|
1395
|
+
*
|
|
1396
|
+
* @see ADR-0004 (Keystone-compatible generator defaults)
|
|
1397
|
+
*/
|
|
1398
|
+
keystoneCompat?: boolean;
|
|
1111
1399
|
/**
|
|
1112
1400
|
* Optional function to extend or modify the generated Prisma schema
|
|
1113
1401
|
* Receives the generated schema as a string and should return the modified schema
|
|
@@ -1556,6 +1844,33 @@ export type Plugin = {
|
|
|
1556
1844
|
* Main configuration type
|
|
1557
1845
|
* Using interface instead of type to allow module augmentation
|
|
1558
1846
|
*/
|
|
1847
|
+
/**
|
|
1848
|
+
* Configurable generator output locations.
|
|
1849
|
+
*
|
|
1850
|
+
* Lets a project relocate the generated Prisma schema and the `.opensaas`
|
|
1851
|
+
* bundle directory. Paths are interpreted relative to the project root.
|
|
1852
|
+
*
|
|
1853
|
+
* @example
|
|
1854
|
+
* ```typescript
|
|
1855
|
+
* output: {
|
|
1856
|
+
* prismaSchema: 'prisma-opensaas/schema.prisma',
|
|
1857
|
+
* opensaasDir: '.opensaas',
|
|
1858
|
+
* }
|
|
1859
|
+
* ```
|
|
1860
|
+
*/
|
|
1861
|
+
export interface OutputConfig {
|
|
1862
|
+
/**
|
|
1863
|
+
* Path to the generated Prisma schema file.
|
|
1864
|
+
* @default "prisma/schema.prisma"
|
|
1865
|
+
*/
|
|
1866
|
+
prismaSchema?: string;
|
|
1867
|
+
/**
|
|
1868
|
+
* Directory for the generated `.opensaas` bundle (types, lists, context,
|
|
1869
|
+
* plugin-types, prisma-extensions, and the patched Prisma client).
|
|
1870
|
+
* @default ".opensaas"
|
|
1871
|
+
*/
|
|
1872
|
+
opensaasDir?: string;
|
|
1873
|
+
}
|
|
1559
1874
|
export interface OpenSaasConfig {
|
|
1560
1875
|
db: DatabaseConfig;
|
|
1561
1876
|
lists: Record<string, ListConfig<any>>;
|
|
@@ -1575,6 +1890,20 @@ export interface OpenSaasConfig {
|
|
|
1575
1890
|
* @default ".opensaas"
|
|
1576
1891
|
*/
|
|
1577
1892
|
opensaasPath?: string;
|
|
1893
|
+
/**
|
|
1894
|
+
* Relocate the generator's output so `opensaas generate` can coexist with an
|
|
1895
|
+
* existing `prisma/` directory (e.g. during a Keystone → stack migration).
|
|
1896
|
+
*
|
|
1897
|
+
* Both fields are resolved relative to the project root (the directory the
|
|
1898
|
+
* CLI runs in). When omitted, defaults are unchanged: the schema is written to
|
|
1899
|
+
* `prisma/schema.prisma` and the `.opensaas` bundle to `.opensaas/`.
|
|
1900
|
+
*
|
|
1901
|
+
* The generated files' cross-references follow these locations — `context.ts`
|
|
1902
|
+
* imports the generated types/lists from the resolved `.opensaas` dir, and the
|
|
1903
|
+
* top-level `prisma.config.ts` points at the configured schema path so the
|
|
1904
|
+
* `prisma` CLI keeps working.
|
|
1905
|
+
*/
|
|
1906
|
+
output?: OutputConfig;
|
|
1578
1907
|
/**
|
|
1579
1908
|
* Plugins to extend the stack
|
|
1580
1909
|
* Executed in array order (or dependency order if dependencies specified)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { ListConfig } from '../config/types.js';
|
|
2
|
+
import type { AccessContext } from '../access/types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Hook Pipeline — the single module that runs the transform+validate span of a
|
|
5
|
+
* write: list `resolveInput` → field `resolveInput` → list `validate` → field
|
|
6
|
+
* `validate` → built-in field rules (`validateFieldRules`). It owns the order of
|
|
7
|
+
* these phases and the threading of `resolvedData` through them, in one place.
|
|
8
|
+
*
|
|
9
|
+
* It is THE place where input is shaped and validated; it throws
|
|
10
|
+
* {@link ValidationError} on failure exactly as before (validate hooks via
|
|
11
|
+
* `addValidationError`, then `validateFieldRules`) — validation is never silent.
|
|
12
|
+
*
|
|
13
|
+
* Side-effect hooks (`beforeOperation`/`afterOperation`), operation-level access,
|
|
14
|
+
* writable-field filtering, nested operations, persistence and Field Visibility
|
|
15
|
+
* are deliberately OUT of this span — they stay in the Write Pipeline. See the
|
|
16
|
+
* "Hook Pipeline" and "Write Pipeline" glossary terms in CONTEXT.md.
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Arguments for one transform+validate span. Only the create/update operations
|
|
20
|
+
* run this span (delete skips the input-shaping phases entirely).
|
|
21
|
+
*/
|
|
22
|
+
export interface HookPipelineArgs {
|
|
23
|
+
operation: 'create' | 'update';
|
|
24
|
+
listName: string;
|
|
25
|
+
listConfig: ListConfig<any>;
|
|
26
|
+
/** The original input data for the write. */
|
|
27
|
+
inputData: Record<string, unknown>;
|
|
28
|
+
/** The existing row for update; `undefined` for create. */
|
|
29
|
+
item: Record<string, unknown> | undefined;
|
|
30
|
+
context: AccessContext;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Result of a transform+validate span: the fully-resolved write data after the
|
|
34
|
+
* resolveInput hooks have run and all validation has passed.
|
|
35
|
+
*/
|
|
36
|
+
export interface HookPipelineResult {
|
|
37
|
+
resolvedData: Record<string, unknown>;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* The transform+validate span, owning order + `resolvedData` threading.
|
|
41
|
+
*/
|
|
42
|
+
export interface HookPipeline {
|
|
43
|
+
run(args: HookPipelineArgs): Promise<HookPipelineResult>;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* The default Hook Pipeline instance used by the Write Pipeline.
|
|
47
|
+
*/
|
|
48
|
+
export declare const hookPipeline: HookPipeline;
|
|
49
|
+
//# sourceMappingURL=hook-pipeline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hook-pipeline.d.ts","sourceRoot":"","sources":["../../src/context/hook-pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAUvD;;;;;;;;;;;;;;GAcG;AAEH;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAEhB,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAA;IAC3B,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,2DAA2D;IAC3D,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;IACzC,OAAO,EAAE,aAAa,CAAA;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAA;CACzD;AAkGD;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,YAE1B,CAAA"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { executeResolveInput, executeValidate, executeFieldResolveInputHooks, executeFieldValidateHooks, validateFieldRules, ValidationError, } from '../hooks/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* Run the transform+validate span once.
|
|
4
|
+
*
|
|
5
|
+
* Phase order (owned here, in one place):
|
|
6
|
+
* list `resolveInput`
|
|
7
|
+
* → field `resolveInput`
|
|
8
|
+
* → list `validate`
|
|
9
|
+
* → field `validate`
|
|
10
|
+
* → built-in field rules (`validateFieldRules`)
|
|
11
|
+
*
|
|
12
|
+
* Contract preserved exactly:
|
|
13
|
+
* - `resolvedData` starts as `inputData` and is threaded through each phase;
|
|
14
|
+
* - validate hooks report failures via `addValidationError` → THROW
|
|
15
|
+
* `ValidationError` (never silent);
|
|
16
|
+
* - built-in field rule failures THROW `ValidationError`;
|
|
17
|
+
* - on success returns the transformed `resolvedData`.
|
|
18
|
+
*/
|
|
19
|
+
async function runHookPipeline(args) {
|
|
20
|
+
const { operation, listName, listConfig, inputData, item, context } = args;
|
|
21
|
+
// ── Phase 1: list-level resolveInput ──────────────────────────────────────
|
|
22
|
+
let resolvedData = await executeResolveInput(listConfig.hooks, operation === 'create'
|
|
23
|
+
? {
|
|
24
|
+
listKey: listName,
|
|
25
|
+
operation: 'create',
|
|
26
|
+
inputData,
|
|
27
|
+
resolvedData: inputData,
|
|
28
|
+
item: undefined,
|
|
29
|
+
context,
|
|
30
|
+
}
|
|
31
|
+
: {
|
|
32
|
+
listKey: listName,
|
|
33
|
+
operation: 'update',
|
|
34
|
+
inputData,
|
|
35
|
+
resolvedData: inputData,
|
|
36
|
+
item,
|
|
37
|
+
context,
|
|
38
|
+
});
|
|
39
|
+
// ── Phase 1.5: field-level resolveInput (e.g. hash passwords) ──────────────
|
|
40
|
+
resolvedData = await executeFieldResolveInputHooks(inputData, resolvedData, listConfig.fields, operation, context, listName, item);
|
|
41
|
+
// ── Phase 2: list-level validate ──────────────────────────────────────────
|
|
42
|
+
await executeValidate(listConfig.hooks, operation === 'create'
|
|
43
|
+
? {
|
|
44
|
+
listKey: listName,
|
|
45
|
+
operation: 'create',
|
|
46
|
+
inputData,
|
|
47
|
+
resolvedData,
|
|
48
|
+
item: undefined,
|
|
49
|
+
context,
|
|
50
|
+
}
|
|
51
|
+
: {
|
|
52
|
+
listKey: listName,
|
|
53
|
+
operation: 'update',
|
|
54
|
+
inputData,
|
|
55
|
+
resolvedData,
|
|
56
|
+
item,
|
|
57
|
+
context,
|
|
58
|
+
});
|
|
59
|
+
// ── Phase 2.5: field-level validate ───────────────────────────────────────
|
|
60
|
+
await executeFieldValidateHooks(inputData, resolvedData, listConfig.fields, operation, context, listName, item);
|
|
61
|
+
// ── Phase 3: built-in field rules (isRequired, length, etc.) ──────────────
|
|
62
|
+
// Validation failures THROW (validation is not silent).
|
|
63
|
+
const validation = validateFieldRules(resolvedData, listConfig.fields, operation);
|
|
64
|
+
if (validation.errors.length > 0) {
|
|
65
|
+
throw new ValidationError(validation.errors, validation.fieldErrors);
|
|
66
|
+
}
|
|
67
|
+
return { resolvedData };
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* The default Hook Pipeline instance used by the Write Pipeline.
|
|
71
|
+
*/
|
|
72
|
+
export const hookPipeline = {
|
|
73
|
+
run: runHookPipeline,
|
|
74
|
+
};
|
|
75
|
+
//# sourceMappingURL=hook-pipeline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hook-pipeline.js","sourceRoot":"","sources":["../../src/context/hook-pipeline.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,6BAA6B,EAC7B,yBAAyB,EACzB,kBAAkB,EAClB,eAAe,GAChB,MAAM,mBAAmB,CAAA;AAiD1B;;;;;;;;;;;;;;;;GAgBG;AACH,KAAK,UAAU,eAAe,CAAC,IAAsB;IACnD,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAE1E,6EAA6E;IAC7E,IAAI,YAAY,GAAG,MAAM,mBAAmB,CAC1C,UAAU,CAAC,KAAK,EAChB,SAAS,KAAK,QAAQ;QACpB,CAAC,CAAC;YACE,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,QAAQ;YACnB,SAAS;YACT,YAAY,EAAE,SAAS;YACvB,IAAI,EAAE,SAAS;YACf,OAAO;SACR;QACH,CAAC,CAAC;YACE,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,QAAQ;YACnB,SAAS;YACT,YAAY,EAAE,SAAS;YACvB,IAAI;YACJ,OAAO;SACR,CACN,CAAA;IAED,8EAA8E;IAC9E,YAAY,GAAG,MAAM,6BAA6B,CAChD,SAAS,EACT,YAAY,EACZ,UAAU,CAAC,MAAM,EACjB,SAAS,EACT,OAAO,EACP,QAAQ,EACR,IAAI,CACL,CAAA;IAED,6EAA6E;IAC7E,MAAM,eAAe,CACnB,UAAU,CAAC,KAAK,EAChB,SAAS,KAAK,QAAQ;QACpB,CAAC,CAAC;YACE,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,QAAQ;YACnB,SAAS;YACT,YAAY;YACZ,IAAI,EAAE,SAAS;YACf,OAAO;SACR;QACH,CAAC,CAAC;YACE,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,QAAQ;YACnB,SAAS;YACT,YAAY;YACZ,IAAI;YACJ,OAAO;SACR,CACN,CAAA;IAED,6EAA6E;IAC7E,MAAM,yBAAyB,CAC7B,SAAS,EACT,YAAY,EACZ,UAAU,CAAC,MAAM,EACjB,SAAS,EACT,OAAO,EACP,QAAQ,EACR,IAAI,CACL,CAAA;IAED,6EAA6E;IAC7E,wDAAwD;IACxD,MAAM,UAAU,GAAG,kBAAkB,CAAC,YAAY,EAAE,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IACjF,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,eAAe,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,WAAW,CAAC,CAAA;IACtE,CAAC;IAED,OAAO,EAAE,YAAY,EAAE,CAAA;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,GAAG,EAAE,eAAe;CACrB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,oBAAoB,CAAA;AACpE,OAAO,KAAK,EAAE,OAAO,EAAiB,kBAAkB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,oBAAoB,CAAA;AACpE,OAAO,KAAK,EAAE,OAAO,EAAiB,kBAAkB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AASlG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAS1D,MAAM,MAAM,iBAAiB,GACzB;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GACpE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,QAAQ,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAChF;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,QAAQ,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAA;AA4GrD;;;;;;;GAOG;AACH,wBAAgB,UAAU,CACxB,OAAO,SAAS,cAAc,EAC9B,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,EAEnD,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,OAAO,GAAG,IAAI,EACvB,OAAO,CAAC,EAAE,YAAY,EACtB,OAAO,GAAE,OAAe,GACvB;IACD,EAAE,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAC/B,OAAO,EAAE,OAAO,GAAG,IAAI,CAAA;IACvB,MAAM,EAAE,OAAO,CAAA;IACf,OAAO,EAAE,YAAY,CAAA;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC,YAAY,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAC5D,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,MAAM;QACV,EAAE,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAA;QAC/B,OAAO,EAAE,OAAO,GAAG,IAAI,CAAA;QACvB,MAAM,EAAE,OAAO,CAAA;QACf,OAAO,EAAE,YAAY,CAAA;QACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAChC,YAAY,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;QAC5D,IAAI,EAAE,MAAM,OAAO,CAAA;QACnB,OAAO,EAAE,OAAO,CAAA;KACjB,CAAA;CACF,CAgMA"}
|