@prisma/orm-framework 8.0.0-rc.12-dev.13 → 8.0.0-rc.12-dev.15

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.
Files changed (89) hide show
  1. package/dist/ast-helpers-2XRnkQEO-BxG5qx3Q.mjs +386 -0
  2. package/dist/ast-helpers-2XRnkQEO-BxG5qx3Q.mjs.map +1 -0
  3. package/dist/authoring-BffMNBO5.d.mts +43 -0
  4. package/dist/authoring-BffMNBO5.d.mts.map +1 -0
  5. package/dist/authoring-DbG78eh2.mjs +88 -0
  6. package/dist/authoring-DbG78eh2.mjs.map +1 -0
  7. package/dist/{utils-DMAM0unR.mjs → canonicalize-json-ZPawceQR-Dua1VNEB.mjs} +2 -2
  8. package/dist/canonicalize-json-ZPawceQR-Dua1VNEB.mjs.map +1 -0
  9. package/dist/components.d.mts +5 -5
  10. package/dist/components.mjs +5 -5
  11. package/dist/components__authoring.d.mts +2 -2
  12. package/dist/components__authoring.mjs +2 -2
  13. package/dist/components__control.d.mts +2 -2
  14. package/dist/components__control.mjs +2 -2
  15. package/dist/components__psl-ast.d.mts +3 -3
  16. package/dist/components__psl-ast.mjs +2 -2
  17. package/dist/components__utils.mjs +1 -1
  18. package/dist/{config-types-DgoEWkgA.d.mts → config-types-CWeyMWBV.d.mts} +17 -14
  19. package/dist/config-types-CWeyMWBV.d.mts.map +1 -0
  20. package/dist/{config-types-BZjCZ4qx.mjs → config-types-D0mYyP62.mjs} +25 -2
  21. package/dist/config-types-D0mYyP62.mjs.map +1 -0
  22. package/dist/config.d.mts +2 -2
  23. package/dist/config.mjs +2 -2
  24. package/dist/config__config-types.d.mts +2 -2
  25. package/dist/config__config-types.mjs +2 -2
  26. package/dist/contract-authoring.d.mts +1 -1
  27. package/dist/{control-Bc_dos9-.d.mts → control-BTo8rNKi.d.mts} +23 -3
  28. package/dist/{control-Bc_dos9-.d.mts.map → control-BTo8rNKi.d.mts.map} +1 -1
  29. package/dist/{control-BjK3Jrmp.mjs → control-CS45l6kB.mjs} +5 -2
  30. package/dist/control-CS45l6kB.mjs.map +1 -0
  31. package/dist/{declarations-D79GooqC-CcAbqTsq.mjs → declarations-43E1JFHg-DGBa0YH_.mjs} +8 -388
  32. package/dist/declarations-43E1JFHg-DGBa0YH_.mjs.map +1 -0
  33. package/dist/errors.d.mts +1 -1
  34. package/dist/errors__execution.d.mts +1 -1
  35. package/dist/{execution-oqC6O8ES.d.mts → execution-BsiK0DjS.d.mts} +2 -2
  36. package/dist/{execution-oqC6O8ES.d.mts.map → execution-BsiK0DjS.d.mts.map} +1 -1
  37. package/dist/{parse-SHpUIBnv-BvPsKLqw.d.mts → parse-DZRO_CK2-D8YAg23m.d.mts} +10 -18
  38. package/dist/{parse-SHpUIBnv-BvPsKLqw.d.mts.map → parse-DZRO_CK2-D8YAg23m.d.mts.map} +1 -1
  39. package/dist/{parse-DN-F4ASD-ClJdPlzj.mjs → parse-Km2Ne67K-CakfHP9f.mjs} +26 -29
  40. package/dist/parse-Km2Ne67K-CakfHP9f.mjs.map +1 -0
  41. package/dist/{psl-ast-BKF2fYgk-D6YxdCnP.d.mts → psl-ast-BePuKena-AYNqFKCE.d.mts} +8 -3
  42. package/dist/{psl-ast-BKF2fYgk-D6YxdCnP.d.mts.map → psl-ast-BePuKena-AYNqFKCE.d.mts.map} +1 -1
  43. package/dist/{psl-ast-Bu85Lu-k.d.mts → psl-ast-Cec7KbOn.d.mts} +2 -2
  44. package/dist/{psl-ast-Bu85Lu-k.d.mts.map → psl-ast-Cec7KbOn.d.mts.map} +1 -1
  45. package/dist/{psl-ast-DUCvVXbB.mjs → psl-ast-DYtFdynZ.mjs} +7 -2
  46. package/dist/psl-ast-DYtFdynZ.mjs.map +1 -0
  47. package/dist/psl-parser.d.mts +14 -7
  48. package/dist/psl-parser.d.mts.map +1 -1
  49. package/dist/psl-parser.mjs +10 -65
  50. package/dist/psl-parser.mjs.map +1 -1
  51. package/dist/psl-parser__format.mjs +23 -30
  52. package/dist/psl-parser__format.mjs.map +1 -1
  53. package/dist/psl-parser__interpret.d.mts +15 -7
  54. package/dist/psl-parser__interpret.d.mts.map +1 -1
  55. package/dist/psl-parser__interpret.mjs +24 -3
  56. package/dist/psl-parser__interpret.mjs.map +1 -1
  57. package/dist/psl-parser__syntax.d.mts +3 -3
  58. package/dist/psl-parser__syntax.mjs +3 -2
  59. package/dist/psl-parser__syntax.mjs.map +1 -1
  60. package/dist/psl-parser__tokenizer.d.mts +1 -1
  61. package/dist/psl-parser__tokenizer.mjs +1 -1
  62. package/dist/psl-printer.d.mts +8 -3
  63. package/dist/psl-printer.d.mts.map +1 -1
  64. package/dist/psl-printer.mjs +16 -9
  65. package/dist/psl-printer.mjs.map +1 -1
  66. package/dist/resolve-D_lZ54qh-DqOQkoMT.mjs +145 -0
  67. package/dist/resolve-D_lZ54qh-DqOQkoMT.mjs.map +1 -0
  68. package/dist/{symbol-table-DVPEY1fq-C5mC1wdG.d.mts → symbol-table-CRtoii4t-DubuO_5j.d.mts} +5 -5
  69. package/dist/{symbol-table-DVPEY1fq-C5mC1wdG.d.mts.map → symbol-table-CRtoii4t-DubuO_5j.d.mts.map} +1 -1
  70. package/dist/{tokenizer-CFsbtfFw-BnfUBepb.mjs → tokenizer-BMz7z2KR-J0yZ4im3.mjs} +11 -3
  71. package/dist/tokenizer-BMz7z2KR-J0yZ4im3.mjs.map +1 -0
  72. package/dist/{tokenizer-DcYI0Xrq-C-nNE9mE.d.mts → tokenizer-DW30uwhx-BHsWTwYk.d.mts} +8 -3
  73. package/dist/tokenizer-DW30uwhx-BHsWTwYk.d.mts.map +1 -0
  74. package/package.json +16 -15
  75. package/dist/authoring-D_Czkofy.mjs +0 -35
  76. package/dist/authoring-D_Czkofy.mjs.map +0 -1
  77. package/dist/authoring-DjeaZGzp.d.mts +0 -27
  78. package/dist/authoring-DjeaZGzp.d.mts.map +0 -1
  79. package/dist/config-types-BZjCZ4qx.mjs.map +0 -1
  80. package/dist/config-types-DgoEWkgA.d.mts.map +0 -1
  81. package/dist/control-BjK3Jrmp.mjs.map +0 -1
  82. package/dist/declarations-D79GooqC-CcAbqTsq.mjs.map +0 -1
  83. package/dist/diagnostic-Esyl8Qw1-Cd6SnWPN.mjs +0 -83
  84. package/dist/diagnostic-Esyl8Qw1-Cd6SnWPN.mjs.map +0 -1
  85. package/dist/parse-DN-F4ASD-ClJdPlzj.mjs.map +0 -1
  86. package/dist/psl-ast-DUCvVXbB.mjs.map +0 -1
  87. package/dist/tokenizer-CFsbtfFw-BnfUBepb.mjs.map +0 -1
  88. package/dist/tokenizer-DcYI0Xrq-C-nNE9mE.d.mts.map +0 -1
  89. package/dist/utils-DMAM0unR.mjs.map +0 -1
package/dist/errors.d.mts CHANGED
@@ -1,4 +1,4 @@
1
1
  import { C as errorTargetMigrationNotSupported, S as errorQueryRunnerFactoryRequired, _ as errorJsonFormatNotSupported, a as errorConfigFileNotFound, b as errorMigrationPlanningFailed, c as errorContractConfigMissing, d as errorDatabaseConnectionRequired, f as errorDriverRequired, g as errorInvalidOutputFormat, h as errorFileNotFound, i as errorConfigEvaluationFailed, l as errorContractMissingExtensions, m as errorFamilyReadMarkerSqlRequired, n as CliErrorEnvelope, o as errorConfigValidation, p as errorEnumCodecNotInPackStack, r as CliStructuredError, s as errorConfigVersionMarkerMissing, t as CliErrorConflict, u as errorContractValidationFailed, v as errorMigrationCliInvalidConfigArg, w as errorUnexpected, x as errorOutputFormatMutex, y as errorMigrationCliUnknownFlag } from "./control-DxiV2F-o-BYFWr0js.mjs";
2
- import { a as errorHashMismatch, c as errorMarkerRequired, d as errorRuntime, f as errorSchemaVerificationFailed, g as withMarkerReadErrorHandling, h as rethrowMarkerReadError, i as errorDestructiveChanges, l as errorMarkerRowCorrupt, m as parseMarkerRowSafely, n as ERROR_CODE_DESTRUCTIVE_CHANGES, o as errorMarkerMissing, p as errorTargetMismatch, r as errorConsentPlanMismatch, s as errorMarkerReadFailed, t as ERROR_CODE_CONSENT_PLAN_MISMATCH, u as errorRunnerFailed } from "./execution-oqC6O8ES.mjs";
2
+ import { a as errorHashMismatch, c as errorMarkerRequired, d as errorRuntime, f as errorSchemaVerificationFailed, g as withMarkerReadErrorHandling, h as rethrowMarkerReadError, i as errorDestructiveChanges, l as errorMarkerRowCorrupt, m as parseMarkerRowSafely, n as ERROR_CODE_DESTRUCTIVE_CHANGES, o as errorMarkerMissing, p as errorTargetMismatch, r as errorConsentPlanMismatch, s as errorMarkerReadFailed, t as ERROR_CODE_CONSENT_PLAN_MISMATCH, u as errorRunnerFailed } from "./execution-BsiK0DjS.mjs";
3
3
  import { a as errorMigrationTargetMismatch, i as errorMigrationPlanNotArray, n as errorMigrationFileMissing, o as errorUnfilledPlaceholder, r as errorMigrationInvalidDefaultExport, s as placeholder, t as errorDataTransformContractMismatch } from "./migration-D4svpE2x.mjs";
4
4
  export { type CliErrorConflict, type CliErrorEnvelope, CliStructuredError, ERROR_CODE_CONSENT_PLAN_MISMATCH, ERROR_CODE_DESTRUCTIVE_CHANGES, errorConfigEvaluationFailed, errorConfigFileNotFound, errorConfigValidation, errorConfigVersionMarkerMissing, errorConsentPlanMismatch, errorContractConfigMissing, errorContractMissingExtensions, errorContractValidationFailed, errorDataTransformContractMismatch, errorDatabaseConnectionRequired, errorDestructiveChanges, errorDriverRequired, errorEnumCodecNotInPackStack, errorFamilyReadMarkerSqlRequired, errorFileNotFound, errorHashMismatch, errorInvalidOutputFormat, errorJsonFormatNotSupported, errorMarkerMissing, errorMarkerReadFailed, errorMarkerRequired, errorMarkerRowCorrupt, errorMigrationCliInvalidConfigArg, errorMigrationCliUnknownFlag, errorMigrationFileMissing, errorMigrationInvalidDefaultExport, errorMigrationPlanNotArray, errorMigrationPlanningFailed, errorMigrationTargetMismatch, errorOutputFormatMutex, errorQueryRunnerFactoryRequired, errorRunnerFailed, errorRuntime, errorSchemaVerificationFailed, errorTargetMigrationNotSupported, errorTargetMismatch, errorUnexpected, errorUnfilledPlaceholder, parseMarkerRowSafely, placeholder, rethrowMarkerReadError, withMarkerReadErrorHandling };
@@ -1,2 +1,2 @@
1
- import { a as errorHashMismatch, c as errorMarkerRequired, d as errorRuntime, f as errorSchemaVerificationFailed, g as withMarkerReadErrorHandling, h as rethrowMarkerReadError, i as errorDestructiveChanges, l as errorMarkerRowCorrupt, m as parseMarkerRowSafely, n as ERROR_CODE_DESTRUCTIVE_CHANGES, o as errorMarkerMissing, p as errorTargetMismatch, r as errorConsentPlanMismatch, s as errorMarkerReadFailed, t as ERROR_CODE_CONSENT_PLAN_MISMATCH, u as errorRunnerFailed } from "./execution-oqC6O8ES.mjs";
1
+ import { a as errorHashMismatch, c as errorMarkerRequired, d as errorRuntime, f as errorSchemaVerificationFailed, g as withMarkerReadErrorHandling, h as rethrowMarkerReadError, i as errorDestructiveChanges, l as errorMarkerRowCorrupt, m as parseMarkerRowSafely, n as ERROR_CODE_DESTRUCTIVE_CHANGES, o as errorMarkerMissing, p as errorTargetMismatch, r as errorConsentPlanMismatch, s as errorMarkerReadFailed, t as ERROR_CODE_CONSENT_PLAN_MISMATCH, u as errorRunnerFailed } from "./execution-BsiK0DjS.mjs";
2
2
  export { ERROR_CODE_CONSENT_PLAN_MISMATCH, ERROR_CODE_DESTRUCTIVE_CHANGES, errorConsentPlanMismatch, errorDestructiveChanges, errorHashMismatch, errorMarkerMissing, errorMarkerReadFailed, errorMarkerRequired, errorMarkerRowCorrupt, errorRunnerFailed, errorRuntime, errorSchemaVerificationFailed, errorTargetMismatch, parseMarkerRowSafely, rethrowMarkerReadError, withMarkerReadErrorHandling };
@@ -1,4 +1,4 @@
1
- import { Tt as VerifyDatabaseSchemaResult, et as SchemaDiffIssue } from "./control-Bc_dos9-.mjs";
1
+ import { Ot as VerifyDatabaseSchemaResult, rt as SchemaDiffIssue } from "./control-BTo8rNKi.mjs";
2
2
  import { i as NextAction, r as Diagnostic } from "./structured-error-Cc7AIRsp.mjs";
3
3
  import { r as CliStructuredError } from "./control-DxiV2F-o-BYFWr0js.mjs";
4
4
  //#region ../../../1-framework/1-core/errors/dist/execution.d.mts
@@ -113,4 +113,4 @@ declare function errorRuntime(code: `${string}.${string}`, summary: string, opti
113
113
  }): CliStructuredError;
114
114
  //#endregion
115
115
  export { errorHashMismatch as a, errorMarkerRequired as c, errorRuntime as d, errorSchemaVerificationFailed as f, withMarkerReadErrorHandling as g, rethrowMarkerReadError as h, errorDestructiveChanges as i, errorMarkerRowCorrupt as l, parseMarkerRowSafely as m, ERROR_CODE_DESTRUCTIVE_CHANGES as n, errorMarkerMissing as o, errorTargetMismatch as p, errorConsentPlanMismatch as r, errorMarkerReadFailed as s, ERROR_CODE_CONSENT_PLAN_MISMATCH as t, errorRunnerFailed as u };
116
- //# sourceMappingURL=execution-oqC6O8ES.d.mts.map
116
+ //# sourceMappingURL=execution-BsiK0DjS.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"execution-oqC6O8ES.d.mts","names":[],"sources":["../../../../1-framework/1-core/errors/dist/execution.d.mts"],"mappings":";;;;;;;;iBAOiB,mBAAmB;WACzB;IACP;;;;iBAIa,kBAAkB;WACxB;WACA;WACA;IACP;;;;iBAIa,oBAAoB,kBAAkB,gBAAgB;WAC5D;IACP;;;;iBAIa,sBAAsB;WAC5B;WACA;WACA;WACA;IACP;;;;iBAIa,sBAAsB;WAC5B;WACA;WACA;WACA;IACP;iBACa,uBAAuB,cAAc;WAC3C;WACA;;iBAEM,4BAA4B,GAAG,iBAAiB,QAAQ,IAAI;WAClE;WACA;IACP,QAAQ;iBACK,qBAAqB,GAAG,cAAc,QAAQ,mBAAmB,GAAG;WAC1E;WACA;IACP;;;;;iBAKa,oBAAoB;WAC1B;WACA;WACA,uBAAuB;IAC9B;;;;;iBAKa,8BAA8B;WACpC;WACA,oBAAoB;WACpB,kBAAkB;IACzB;;;;iBAIa,kBAAkB,iBAAiB;WACzC;WACA;WACA,uBAAuB;WACvB,OAAO;WACP;IACP;;cAEU;;;;iBAIG,wBAAwB,iBAAiB;WAC/C;WACA;WACA,OAAO;IACd;cACU;;;;;iBAKG,yBAAyB;WAC/B;WACA;WACA;IACP;;;;iBAIa,aAAa,6BAA6B,iBAAiB;WACjE;WACA;WACA,uBAAuB;WACvB,OAAO;WACP;IACP"}
1
+ {"version":3,"file":"execution-BsiK0DjS.d.mts","names":[],"sources":["../../../../1-framework/1-core/errors/dist/execution.d.mts"],"mappings":";;;;;;;;iBAOiB,mBAAmB;WACzB;IACP;;;;iBAIa,kBAAkB;WACxB;WACA;WACA;IACP;;;;iBAIa,oBAAoB,kBAAkB,gBAAgB;WAC5D;IACP;;;;iBAIa,sBAAsB;WAC5B;WACA;WACA;WACA;IACP;;;;iBAIa,sBAAsB;WAC5B;WACA;WACA;WACA;IACP;iBACa,uBAAuB,cAAc;WAC3C;WACA;;iBAEM,4BAA4B,GAAG,iBAAiB,QAAQ,IAAI;WAClE;WACA;IACP,QAAQ;iBACK,qBAAqB,GAAG,cAAc,QAAQ,mBAAmB,GAAG;WAC1E;WACA;IACP;;;;;iBAKa,oBAAoB;WAC1B;WACA;WACA,uBAAuB;IAC9B;;;;;iBAKa,8BAA8B;WACpC;WACA,oBAAoB;WACpB,kBAAkB;IACzB;;;;iBAIa,kBAAkB,iBAAiB;WACzC;WACA;WACA,uBAAuB;WACvB,OAAO;WACP;IACP;;cAEU;;;;iBAIG,wBAAwB,iBAAiB;WAC/C;WACA;WACA,OAAO;IACd;cACU;;;;;iBAKG,yBAAyB;WAC/B;WACA;WACA;IACP;;;;iBAIa,aAAa,6BAA6B,iBAAiB;WACjE;WACA;WACA,uBAAuB;WACvB,OAAO;WACP;IACP"}
@@ -1,9 +1,9 @@
1
1
  import { ct as PslSpan } from "./framework-authoring-C9VTqnML-BXtBl2dJ.mjs";
2
- import { ht as TaggedLiteralCanonicalization } from "./control-Bc_dos9-.mjs";
3
- import "./psl-ast-Bu85Lu-k.mjs";
4
- import { r as ContractSourceDiagnostic } from "./config-types-DgoEWkgA.mjs";
5
- import { n as TokenKind, t as Token } from "./tokenizer-DcYI0Xrq-C-nNE9mE.mjs";
6
- //#region ../../../1-framework/2-authoring/psl-parser/dist/parse-SHpUIBnv.d.mts
2
+ import { vt as TaggedLiteralCanonicalization } from "./control-BTo8rNKi.mjs";
3
+ import "./psl-ast-Cec7KbOn.mjs";
4
+ import { r as ContractSourceDiagnostic } from "./config-types-CWeyMWBV.mjs";
5
+ import { n as TokenKind, t as Token } from "./tokenizer-DW30uwhx-BHsWTwYk.mjs";
6
+ //#region ../../../1-framework/2-authoring/psl-parser/dist/parse-DZRO_CK2.d.mts
7
7
  //#region src/syntax/syntax-kind.d.ts
8
8
  type SyntaxKind = 'Document' | 'ModelDeclaration' | 'CompositeTypeDeclaration' | 'Namespace' | 'TypesBlock' | 'GenericBlockDeclaration' | 'FieldDeclaration' | 'NamedTypeDeclaration' | 'KeyValuePair' | 'FieldAttribute' | 'ModelAttribute' | 'AttributeArgList' | 'AttributeArg' | 'TypeAnnotation' | 'Identifier' | 'QualifiedName' | 'FunctionCall' | 'ArrayLiteral' | 'StringLiteralExpr' | 'TaggedLiteral' | 'NumberLiteralExpr' | 'BooleanLiteralExpr' | 'ObjectLiteralExpr' | 'ObjectField';
9
9
  //#endregion
@@ -442,7 +442,7 @@ declare class GenericBlockDeclarationAst implements BracedBlock {
442
442
  lbrace(): SyntaxToken | undefined;
443
443
  rbrace(): SyntaxToken | undefined;
444
444
  entries(): Iterable<KeyValuePairAst>;
445
- /** Field lines of a block parsed with the model-member grammar (a Prisma 7 `view`). Empty for every other generic block. */
445
+ /** Field lines of a `view` body. Empty for every other generic block. */
446
446
  fields(): Iterable<FieldDeclarationAst>;
447
447
  attributes(): Iterable<ModelAttributeAst>;
448
448
  members(): Iterable<GenericBlockMemberAst>;
@@ -454,7 +454,7 @@ declare class KeyValuePairAst implements AstNode {
454
454
  key(): IdentifierAst | undefined;
455
455
  equals(): SyntaxToken | undefined;
456
456
  value(): ExpressionAst | undefined;
457
- /** `@` attributes after the key or value (a Prisma 7 enum member's `@map`). */
457
+ /** `@` attributes after the key or value, as in `USER @map("user")`. */
458
458
  attributes(): Iterable<FieldAttributeAst>;
459
459
  static cast(node: SyntaxNode): KeyValuePairAst | undefined;
460
460
  }
@@ -483,19 +483,11 @@ interface ParseResult {
483
483
  readonly diagnostics: readonly ParseDiagnostic[];
484
484
  readonly sources: PslSources;
485
485
  }
486
- type PslGrammar = 'psl' | 'prisma7';
487
- interface ParseOptions {
488
- /**
489
- * `prisma7` also reads two Prisma 7 constructs: `@` attributes after an `enum` member, and field
490
- * lines in a `view` body. Defaults to `psl`, which reads neither.
491
- */
492
- readonly grammar?: PslGrammar;
493
- }
494
486
  /**
495
487
  * Parses a full PSL document. Never throws — malformed input yields diagnostics
496
488
  * and a recovered tree, not an exception.
497
489
  */
498
- declare function parse(source: string, filename: string, options?: ParseOptions): ParseResult;
490
+ declare function parse(source: string, filename: string): ParseResult;
499
491
  //#endregion
500
- export { castExpression as $, ObjectFieldAst as A, Range as B, KeyValuePairAst as C, NamespaceDeclarationAst as D, NamedTypeDeclarationAst as E, Position as F, SyntaxKind as G, StringLiteralExprAst as H, PslDiagnostic as I, TaggedLiteralExprAst as J, SyntaxNode as K, PslDiagnosticCollector as L, ParseDiagnostic as M, ParseOptions as N, NamespaceMemberAst as O, ParseResult as P, any as Q, PslSources as R, IdentifierAst as S, ModelDeclarationAst as T, StringLiteralQuote as U, SourceFile as V, SyntaxElement as W, TypeAnnotationAst as X, TokenAtOffset as Y, TypesBlockAst as Z, GenericBlockDeclarationAst as _, AttributeAst as a, findChildToken as at, GreenNode as b, BracedBlock as c, greenToken as ct, DiagnosticSource as d, printSyntax as dt, createPslDiagnosticCollector as et, DocumentAst as f, FunctionCallAst as g, FieldDeclarationAst as h, AttributeArgListAst as i, filterChildren as it, ObjectLiteralExprAst as j, NumberLiteralExprAst as k, CompositeTypeDeclarationAst as l, mapPslDiagnostics as lt, FieldAttributeAst as m, AstNode as n, diagnosticFromSpan as nt, BlockMemberAst as o, findFirstChild as ot, ExpressionAst as p, SyntaxToken as q, AttributeArgAst as r, diagnosticSource as rt, BooleanLiteralExprAst as s, greenNode as st, ArrayLiteralAst as t, createSyntaxTree as tt, DeclarationAst as u, parse as ut, GenericBlockMemberAst as v, ModelAttributeAst as w, GreenToken as x, GreenElement as y, QualifiedNameAst as z };
501
- //# sourceMappingURL=parse-SHpUIBnv-BvPsKLqw.d.mts.map
492
+ export { createPslDiagnosticCollector as $, ObjectFieldAst as A, SourceFile as B, KeyValuePairAst as C, NamespaceDeclarationAst as D, NamedTypeDeclarationAst as E, PslDiagnostic as F, SyntaxNode as G, StringLiteralQuote as H, PslDiagnosticCollector as I, TokenAtOffset as J, SyntaxToken as K, PslSources as L, ParseDiagnostic as M, ParseResult as N, NamespaceMemberAst as O, Position as P, castExpression as Q, QualifiedNameAst as R, IdentifierAst as S, ModelDeclarationAst as T, SyntaxElement as U, StringLiteralExprAst as V, SyntaxKind as W, TypesBlockAst as X, TypeAnnotationAst as Y, any as Z, GenericBlockDeclarationAst as _, AttributeAst as a, findFirstChild as at, GreenNode as b, BracedBlock as c, mapPslDiagnostics as ct, DiagnosticSource as d, createSyntaxTree as et, DocumentAst as f, FunctionCallAst as g, FieldDeclarationAst as h, AttributeArgListAst as i, findChildToken as it, ObjectLiteralExprAst as j, NumberLiteralExprAst as k, CompositeTypeDeclarationAst as l, parse as lt, FieldAttributeAst as m, AstNode as n, diagnosticSource as nt, BlockMemberAst as o, greenNode as ot, ExpressionAst as p, TaggedLiteralExprAst as q, AttributeArgAst as r, filterChildren as rt, BooleanLiteralExprAst as s, greenToken as st, ArrayLiteralAst as t, diagnosticFromSpan as tt, DeclarationAst as u, printSyntax as ut, GenericBlockMemberAst as v, ModelAttributeAst as w, GreenToken as x, GreenElement as y, Range as z };
493
+ //# sourceMappingURL=parse-DZRO_CK2-D8YAg23m.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parse-SHpUIBnv-BvPsKLqw.d.mts","names":[],"sources":["../../../../1-framework/2-authoring/psl-parser/dist/parse-SHpUIBnv.d.mts"],"mappings":"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"}
1
+ {"version":3,"file":"parse-DZRO_CK2-D8YAg23m.d.mts","names":[],"sources":["../../../../1-framework/2-authoring/psl-parser/dist/parse-DZRO_CK2.d.mts"],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  import { t as InternalError } from "./internal-error-ChGYPVpq-DhUD05u0.mjs";
2
- import { n as UNSPECIFIED_PSL_NAMESPACE_ID } from "./psl-ast-DUCvVXbB.mjs";
3
- import { n as isTerminatedStringLiteral, t as Tokenizer } from "./tokenizer-CFsbtfFw-BnfUBepb.mjs";
4
- import { A as createSyntaxTree, o as DocumentAst } from "./declarations-D79GooqC-CcAbqTsq.mjs";
5
- //#region ../../../1-framework/2-authoring/psl-parser/dist/parse-DN-F4ASD.mjs
2
+ import { r as UNSPECIFIED_PSL_NAMESPACE_ID } from "./psl-ast-DYtFdynZ.mjs";
3
+ import { r as isTerminatedStringLiteral, t as Tokenizer } from "./tokenizer-BMz7z2KR-J0yZ4im3.mjs";
4
+ import { a as createSyntaxTree } from "./ast-helpers-2XRnkQEO-BxG5qx3Q.mjs";
5
+ import { o as DocumentAst } from "./declarations-43E1JFHg-DGBa0YH_.mjs";
6
+ //#region ../../../1-framework/2-authoring/psl-parser/dist/parse-Km2Ne67K.mjs
6
7
  const CARRIAGE_RETURN = 13;
7
8
  const LINE_FEED = 10;
8
9
  var SourceFile = class {
@@ -176,7 +177,7 @@ const TRIVIA_KINDS = /* @__PURE__ */ new Set([
176
177
  "Comment"
177
178
  ]);
178
179
  /**
179
- * The fault-tolerant parser substrate the grammars drive. Trivia is flushed
180
+ * The fault-tolerant parser substrate the parse functions below drive. Trivia is flushed
180
181
  * into the enclosing open node, so every child node spans exactly its first
181
182
  * through last significant token.
182
183
  */
@@ -519,9 +520,9 @@ function parseTypeAnnotation(cursor) {
519
520
  * Parses a full PSL document. Never throws — malformed input yields diagnostics
520
521
  * and a recovered tree, not an exception.
521
522
  */
522
- function parse(source, filename, options = {}) {
523
+ function parse(source, filename) {
523
524
  const cursor = new Cursor(filename, source);
524
- const root = createSyntaxTree(parseDocument(cursor, options.grammar ?? "psl"));
525
+ const root = createSyntaxTree(parseDocument(cursor));
525
526
  const document = DocumentAst.cast(root) ?? new DocumentAst(root);
526
527
  const sources = new PslSources([[document.syntax, cursor.sourceFile]]);
527
528
  return {
@@ -530,9 +531,9 @@ function parse(source, filename, options = {}) {
530
531
  sources
531
532
  };
532
533
  }
533
- function parseDocument(cursor, grammar) {
534
+ function parseDocument(cursor) {
534
535
  cursor.startNode("Document");
535
- while (cursor.peekKind() !== "Eof") parseDeclaration(cursor, false, grammar);
536
+ while (cursor.peekKind() !== "Eof") parseDeclaration(cursor, false);
536
537
  cursor.flushTrivia();
537
538
  return cursor.finishNode();
538
539
  }
@@ -551,12 +552,12 @@ function keywordIs(cursor, keyword) {
551
552
  * Recovery runs via the `if (!node)` tail rather than as a `??` arm, because it
552
553
  * appends raw tokens to the open parent instead of returning a child node.
553
554
  */
554
- function parseDeclaration(cursor, insideNamespace, grammar) {
555
+ function parseDeclaration(cursor, insideNamespace) {
555
556
  const name = cursor.peekKind(1) === "Ident" ? cursor.peekToken(1).text : "";
556
557
  if (insideNamespace && keywordIs(cursor, "namespace")) cursor.diagnostic("PSL_INVALID_NAMESPACE_BLOCK", `Recursive "namespace ${name}" block is not allowed; namespace blocks may not nest`, cursor.mark());
557
558
  else if (insideNamespace && keywordIs(cursor, "types")) cursor.diagnostic("PSL_INVALID_NAMESPACE_BLOCK", "`types` blocks must be declared at the document top level, not inside a namespace block", cursor.mark());
558
559
  else if (keywordIs(cursor, "namespace") && name === "__unspecified__") cursor.diagnostic("PSL_INVALID_NAMESPACE_BLOCK", `Namespace name "${UNSPECIFIED_PSL_NAMESPACE_ID}" is reserved for the parser-synthesised bucket for top-level declarations`, cursor.mark(1));
559
- if (!(parseModel(cursor) ?? parseNamespace(cursor, grammar) ?? parseCompositeType(cursor) ?? parseTypesBlock(cursor) ?? parseGenericBlock(cursor, grammar))) parseUnsupportedTopLevel(cursor);
560
+ if (!(parseModel(cursor) ?? parseNamespace(cursor) ?? parseCompositeType(cursor) ?? parseTypesBlock(cursor) ?? parseGenericBlock(cursor))) parseUnsupportedTopLevel(cursor);
560
561
  }
561
562
  /**
562
563
  * Reports only the first missing piece — a missing name suppresses the
@@ -584,12 +585,8 @@ function parseModel(cursor) {
584
585
  * {` with no name) routed to its dedicated parser. The generic keyword set is
585
586
  * open, so a bare identifier with no brace (e.g. `oops`) is read as an unfinished
586
587
  * custom declaration rather than unsupported content.
587
- *
588
- * With the `prisma7` grammar, a `view` block stays a generic block (so interpreters keep rejecting
589
- * the keyword), but its body is read like a model body, so the field lines parse as
590
- * `FieldDeclaration` nodes with spans instead of mangled entries.
591
588
  */
592
- function parseGenericBlock(cursor, grammar = "psl") {
589
+ function parseGenericBlock(cursor) {
593
590
  if (cursor.peekKind() !== "Ident") return void 0;
594
591
  const keyword = cursor.peekToken().text;
595
592
  if (RESERVED_BLOCK_KEYWORDS.has(keyword)) return void 0;
@@ -597,16 +594,16 @@ function parseGenericBlock(cursor, grammar = "psl") {
597
594
  cursor.startNode("GenericBlockDeclaration");
598
595
  cursor.bump();
599
596
  if (hasName) parseIdentifier(cursor);
600
- if (cursor.peekKind() === "LBrace") parseBlockBody(cursor, genericBlockMemberParser(keyword, grammar));
597
+ if (cursor.peekKind() === "LBrace") parseBlockBody(cursor, genericBlockMemberParser(keyword));
601
598
  else {
602
599
  cursor.diagnostic("PSL_INVALID_DECLARATION", `Expected "{" to open the "${keyword}" block`, cursor.markAfterLastToken());
603
600
  cursor.recoverToSyncPoint();
604
601
  }
605
602
  return cursor.finishNode();
606
603
  }
607
- function parseNamespace(cursor, grammar = "psl") {
604
+ function parseNamespace(cursor) {
608
605
  if (!keywordIs(cursor, "namespace")) return void 0;
609
- return parseBlock(cursor, "Namespace", true, (inner) => parseDeclaration(inner, true, grammar));
606
+ return parseBlock(cursor, "Namespace", true, (inner) => parseDeclaration(inner, true));
610
607
  }
611
608
  function parseCompositeType(cursor) {
612
609
  if (!keywordIs(cursor, "type")) return void 0;
@@ -651,13 +648,13 @@ function parseNamedTypeMember(cursor) {
651
648
  if (!parseNamedType(cursor)) invalidMember(cursor, "PSL_INVALID_TYPES_MEMBER", `Invalid types declaration "${cursor.peekToken().text}"`);
652
649
  }
653
650
  /**
654
- * With the `prisma7` grammar, a `view` body is read like a model body and an `enum` member may
655
- * carry `@` attributes (`USER @map("user")`). Every other generic block, and every generic block
656
- * with the `psl` grammar, reads plain `key = value` entries.
651
+ * A `view` body is read like a model body. Every other generic block reads `key = value` entries
652
+ * and bare keys, and in an `enum` block those may carry `@` attributes (`USER @map("user")`). Each
653
+ * interpreter decides whether it accepts the block and its members.
657
654
  */
658
- function genericBlockMemberParser(keyword, grammar) {
659
- if (grammar === "prisma7" && keyword === "view") return parseModelMember;
660
- if (grammar === "prisma7" && keyword === "enum") return parseEnumMember;
655
+ function genericBlockMemberParser(keyword) {
656
+ if (keyword === "view") return parseModelMember;
657
+ if (keyword === "enum") return parseEnumMember;
661
658
  return parseKeyValueMember;
662
659
  }
663
660
  /**
@@ -701,9 +698,9 @@ function parseNamedType(cursor) {
701
698
  }
702
699
  /**
703
700
  * A generic-block entry is either `key = value` or a bare `key` (committing a
704
- * `KeyValuePair` carrying only the key). With `memberAttributes` (enum blocks parsed with the
705
- * `prisma7` grammar) any number of `@` attributes may follow, as in `USER @map("user")`. A
706
- * `key =` with no following expression is flagged.
701
+ * `KeyValuePair` carrying only the key). With `memberAttributes` (enum blocks) any number of `@`
702
+ * attributes may follow, as in `USER @map("user")`. A `key =` with no following expression is
703
+ * flagged.
707
704
  */
708
705
  function parseKeyValue(cursor, options = { memberAttributes: false }) {
709
706
  if (cursor.peekKind() !== "Ident") return void 0;
@@ -719,4 +716,4 @@ function parseKeyValue(cursor, options = { memberAttributes: false }) {
719
716
  //#endregion
720
717
  export { greenToken as a, greenNode as i, PslSources as n, parse as o, SourceFile as r, GreenNodeBuilder as t };
721
718
 
722
- //# sourceMappingURL=parse-DN-F4ASD-ClJdPlzj.mjs.map
719
+ //# sourceMappingURL=parse-Km2Ne67K-CakfHP9f.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-Km2Ne67K-CakfHP9f.mjs","names":["#filename","#text","#lineStarts","#lineIndexAt","#lineStartAt","#lineEndAt","#sourcesByRoot","#stack","#tokenizer","#sourceFile","#diagnostics","#offset","#depth","#builder","#advance"],"sources":["../../../../1-framework/2-authoring/psl-parser/dist/parse-Km2Ne67K.mjs"],"sourcesContent":["import { r as isTerminatedStringLiteral, t as Tokenizer } from \"./tokenizer-BMz7z2KR.mjs\";\nimport { l as createSyntaxTree } from \"./ast-helpers-2XRnkQEO.mjs\";\nimport { n as DocumentAst } from \"./declarations-43E1JFHg.mjs\";\nimport { UNSPECIFIED_PSL_NAMESPACE_ID } from \"@internal/framework-components/psl-ast\";\nimport { InternalError } from \"@internal/utils/internal-error\";\n//#region src/source-file.ts\nconst CARRIAGE_RETURN = 13;\nconst LINE_FEED = 10;\nvar SourceFile = class {\n\t#filename;\n\t#text;\n\t#lineStarts;\n\tconstructor(filename, text) {\n\t\tthis.#filename = filename;\n\t\tthis.#text = text;\n\t\tconst lineStarts = [0];\n\t\tfor (let offset = 0; offset < text.length; offset++) if (text.charCodeAt(offset) === LINE_FEED) lineStarts.push(offset + 1);\n\t\tthis.#lineStarts = lineStarts;\n\t}\n\tget filename() {\n\t\treturn this.#filename;\n\t}\n\tget text() {\n\t\treturn this.#text;\n\t}\n\tget length() {\n\t\treturn this.#text.length;\n\t}\n\tget lineCount() {\n\t\treturn this.#lineStarts.length;\n\t}\n\tlineStartOffsets() {\n\t\treturn this.#lineStarts;\n\t}\n\tlineStartOffset(line) {\n\t\tif (line <= 0) return 0;\n\t\treturn this.#lineStarts[line] ?? this.#text.length;\n\t}\n\tlineEndOffset(line) {\n\t\tif (line < 0) return 0;\n\t\tconst nextLineStart = this.#lineStarts[line + 1];\n\t\tif (nextLineStart === void 0) return this.#text.length;\n\t\tconst lineFeedOffset = nextLineStart - 1;\n\t\tconst carriageReturnOffset = lineFeedOffset - 1;\n\t\treturn this.#text.charCodeAt(carriageReturnOffset) === CARRIAGE_RETURN ? carriageReturnOffset : lineFeedOffset;\n\t}\n\tpositionAt(offset) {\n\t\tconst clamped = clamp(offset, 0, this.#text.length);\n\t\tconst line = this.#lineIndexAt(clamped);\n\t\treturn {\n\t\t\tline,\n\t\t\tcharacter: clamped - this.#lineStartAt(line)\n\t\t};\n\t}\n\toffsetAt(position) {\n\t\tconst line = clamp(position.line, 0, this.#lineStarts.length - 1);\n\t\tconst lineStart = this.#lineStartAt(line);\n\t\tconst lineEnd = this.#lineEndAt(line);\n\t\treturn clamp(lineStart + position.character, lineStart, lineEnd);\n\t}\n\toffsetToPslPosition(offset) {\n\t\tconst position = this.positionAt(offset);\n\t\treturn {\n\t\t\toffset,\n\t\t\tline: position.line + 1,\n\t\t\tcolumn: position.character + 1\n\t\t};\n\t}\n\trangeToPslSpan(range) {\n\t\treturn {\n\t\t\tstart: this.offsetToPslPosition(this.offsetAt(range.start)),\n\t\t\tend: this.offsetToPslPosition(this.offsetAt(range.end))\n\t\t};\n\t}\n\tpslSpanToRange(span) {\n\t\treturn {\n\t\t\tstart: this.positionAt(span.start.offset),\n\t\t\tend: this.positionAt(span.end.offset)\n\t\t};\n\t}\n\t#lineStartAt(line) {\n\t\treturn this.#lineStarts[line] ?? 0;\n\t}\n\t#lineEndAt(line) {\n\t\treturn line + 1 < this.#lineStarts.length ? this.#lineStartAt(line + 1) - 1 : this.#text.length;\n\t}\n\t#lineIndexAt(offset) {\n\t\tconst lineStarts = this.#lineStarts;\n\t\tlet low = 0;\n\t\tlet high = lineStarts.length - 1;\n\t\twhile (low < high) {\n\t\t\tconst mid = low + high + 1 >>> 1;\n\t\t\tif ((lineStarts[mid] ?? 0) <= offset) low = mid;\n\t\t\telse high = mid - 1;\n\t\t}\n\t\treturn low;\n\t}\n};\nvar PslSources = class PslSources {\n\t#sourcesByRoot = /* @__PURE__ */ new Map();\n\tconstructor(entries) {\n\t\tfor (const [root, sourceFile] of entries) this.#sourcesByRoot.set(root, sourceFile);\n\t}\n\t/**\n\t* A new registry uniting this one with `others` — e.g. the per-document\n\t* `PslSources` registries `parse()` returns for each member of a\n\t* multi-file schema, united into the one registry `buildSymbolTable` and\n\t* the interpreters expect.\n\t*/\n\tmerge(...others) {\n\t\treturn new PslSources([...this.#sourcesByRoot, ...others.flatMap((other) => [...other.#sourcesByRoot])]);\n\t}\n\tsourceFileNamed(filename) {\n\t\tlet match;\n\t\tfor (const sourceFile of this.#sourcesByRoot.values()) {\n\t\t\tif (sourceFile.filename !== filename) continue;\n\t\t\tif (match !== void 0 && match.text !== sourceFile.text) throw new InternalError(`Ambiguous PSL diagnostic filename \"${filename}\": registered sources have different text`);\n\t\t\tmatch = sourceFile;\n\t\t}\n\t\tif (match === void 0) throw new InternalError(`No SourceFile registered for PSL diagnostic filename \"${filename}\"`);\n\t\treturn match;\n\t}\n\tsourceFileFor(node) {\n\t\tconst root = node.root();\n\t\tconst sourceFile = this.#sourcesByRoot.get(root);\n\t\tif (sourceFile === void 0) throw new InternalError(\"No SourceFile registered for PSL syntax root\");\n\t\treturn sourceFile;\n\t}\n};\nfunction clamp(value, min, max) {\n\tif (value < min) return min;\n\tif (value > max) return max;\n\treturn value;\n}\n//#endregion\n//#region src/syntax/green.ts\nfunction greenToken(kind, text) {\n\treturn {\n\t\ttype: \"token\",\n\t\tkind,\n\t\ttext\n\t};\n}\nfunction greenNode(kind, children) {\n\tlet textLength = 0;\n\tfor (const child of children) textLength += child.type === \"token\" ? child.text.length : child.textLength;\n\treturn {\n\t\ttype: \"node\",\n\t\tkind,\n\t\tchildren,\n\t\ttextLength\n\t};\n}\n//#endregion\n//#region src/syntax/green-builder.ts\nvar GreenNodeBuilder = class {\n\t#stack = [];\n\tstartNode(kind) {\n\t\tthis.#stack.push({\n\t\t\tkind,\n\t\t\tchildren: []\n\t\t});\n\t}\n\ttoken(kind, text) {\n\t\tconst current = this.#stack.at(-1);\n\t\tif (!current) throw new InternalError(\"GreenNodeBuilder: token() called with no open node\");\n\t\tcurrent.children.push(greenToken(kind, text));\n\t}\n\tfinishNode() {\n\t\tconst completed = this.#stack.pop();\n\t\tif (!completed) throw new InternalError(\"GreenNodeBuilder: finishNode() called with no open node\");\n\t\tconst node = greenNode(completed.kind, completed.children);\n\t\tconst parent = this.#stack.at(-1);\n\t\tif (parent) parent.children.push(node);\n\t\treturn node;\n\t}\n};\n//#endregion\n//#region src/parse.ts\nconst TRIVIA_KINDS = /* @__PURE__ */ new Set([\n\t\"Whitespace\",\n\t\"Newline\",\n\t\"Comment\"\n]);\n/**\n* The fault-tolerant parser substrate the parse functions below drive. Trivia is flushed\n* into the enclosing open node, so every child node spans exactly its first\n* through last significant token.\n*/\nvar Cursor = class {\n\t#tokenizer;\n\t#sourceFile;\n\t#builder = new GreenNodeBuilder();\n\t#diagnostics = [];\n\t#offset = 0;\n\t#depth = 0;\n\tconstructor(filename, source) {\n\t\tthis.#tokenizer = new Tokenizer(source);\n\t\tthis.#sourceFile = new SourceFile(filename, source);\n\t}\n\tget diagnostics() {\n\t\treturn this.#diagnostics;\n\t}\n\tget sourceFile() {\n\t\treturn this.#sourceFile;\n\t}\n\tpeekKind(ahead = 0) {\n\t\treturn this.peekToken(ahead).kind;\n\t}\n\tpeekToken(ahead = 0) {\n\t\tlet rawIndex = 0;\n\t\tlet remaining = ahead;\n\t\tfor (;;) {\n\t\t\tconst token = this.#tokenizer.peek(rawIndex);\n\t\t\tif (token.kind === \"Eof\") return token;\n\t\t\tif (TRIVIA_KINDS.has(token.kind)) {\n\t\t\t\trawIndex++;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (remaining === 0) return token;\n\t\t\tremaining--;\n\t\t\trawIndex++;\n\t\t}\n\t}\n\t/** Span of the significant token `lookahead` positions ahead (`mark(0)` = the next). */\n\tmark(lookahead = 0) {\n\t\tlet rawIndex = 0;\n\t\tlet offset = this.#offset;\n\t\tlet remaining = lookahead;\n\t\tfor (;;) {\n\t\t\tconst token = this.#tokenizer.peek(rawIndex);\n\t\t\tif (token.kind === \"Eof\") return {\n\t\t\t\toffset,\n\t\t\t\tlength: token.text.length\n\t\t\t};\n\t\t\tif (!TRIVIA_KINDS.has(token.kind) && remaining === 0) return {\n\t\t\t\toffset,\n\t\t\t\tlength: token.text.length\n\t\t\t};\n\t\t\tif (!TRIVIA_KINDS.has(token.kind)) remaining--;\n\t\t\toffset += token.text.length;\n\t\t\trawIndex++;\n\t\t}\n\t}\n\t/**\n\t* Zero-width mark just past the last consumed significant token — anchors an\n\t* \"expected here\" diagnostic, e.g. the `{` missing after a declaration's name.\n\t*/\n\tmarkAfterLastToken() {\n\t\treturn {\n\t\t\toffset: this.#offset,\n\t\t\tlength: 0\n\t\t};\n\t}\n\tstartNode(kind) {\n\t\tif (this.#depth > 0) this.flushTrivia();\n\t\tthis.#builder.startNode(kind);\n\t\tthis.#depth++;\n\t}\n\tfinishNode() {\n\t\tthis.#depth--;\n\t\treturn this.#builder.finishNode();\n\t}\n\tbump() {\n\t\tthis.flushTrivia();\n\t\tconst token = this.#tokenizer.peek();\n\t\tif (token.kind === \"Eof\") return token;\n\t\tthis.#builder.token(token.kind, token.text);\n\t\tthis.#advance();\n\t\treturn token;\n\t}\n\trecoverToSyncPoint() {\n\t\tfor (;;) {\n\t\t\tconst token = this.#tokenizer.peek();\n\t\t\tif (token.kind === \"Eof\" || token.kind === \"Newline\" || token.kind === \"RBrace\") return;\n\t\t\tthis.#builder.token(token.kind, token.text);\n\t\t\tthis.#advance();\n\t\t}\n\t}\n\tflushTrivia() {\n\t\tfor (;;) {\n\t\t\tconst token = this.#tokenizer.peek();\n\t\t\tif (!TRIVIA_KINDS.has(token.kind)) return;\n\t\t\tthis.#builder.token(token.kind, token.text);\n\t\t\tthis.#advance();\n\t\t}\n\t}\n\tdiagnostic(code, message, mark) {\n\t\tconst start = mark.offset;\n\t\tconst end = start + mark.length;\n\t\tthis.#diagnostics.push({\n\t\t\tfilename: this.#sourceFile.filename,\n\t\t\tcode,\n\t\t\tmessage,\n\t\t\trange: {\n\t\t\t\tstart: this.#sourceFile.positionAt(start),\n\t\t\t\tend: this.#sourceFile.positionAt(end)\n\t\t\t}\n\t\t});\n\t}\n\t#advance() {\n\t\tthis.#offset += this.#tokenizer.next().text.length;\n\t}\n};\nfunction parseIdentifier(cursor) {\n\tcursor.startNode(\"Identifier\");\n\tcursor.bump();\n\tcursor.finishNode();\n}\n/**\n* Returns `undefined` when the next significant token does not start a\n* recognised expression, leaving recovery to the caller.\n*/\nfunction parseExpression(cursor) {\n\treturn parseStringLiteralExpr(cursor) ?? parseNumberLiteralExpr(cursor) ?? parseArrayLiteral(cursor) ?? parseObjectLiteralExpr(cursor) ?? parseTaggedLiteral(cursor) ?? parseFunctionCall(cursor) ?? parseBooleanLiteralExpr(cursor) ?? parseIdentifierExpr(cursor);\n}\n/** A string literal outside a tagged literal, where a backtick string is refused. */\nfunction parseStringLiteralExpr(cursor) {\n\tif (cursor.peekKind() !== \"StringLiteral\") return void 0;\n\tif (cursor.peekToken().text.startsWith(\"`\")) cursor.diagnostic(\"PSL_BACKTICK_STRING_REQUIRES_TAG\", \"A backtick string must follow a tag, as in tag`...`.\", cursor.mark());\n\treturn parseStringLiteral(cursor);\n}\nfunction parseStringLiteral(cursor) {\n\tconst stringMark = cursor.mark();\n\tconst text = cursor.peekToken().text;\n\tcursor.startNode(\"StringLiteralExpr\");\n\tcursor.bump();\n\tif (!isTerminatedStringLiteral(text)) cursor.diagnostic(\"PSL_UNTERMINATED_STRING\", \"Unterminated string literal\", stringMark);\n\treturn cursor.finishNode();\n}\nfunction parseNumberLiteralExpr(cursor) {\n\tif (cursor.peekKind() !== \"NumberLiteral\") return void 0;\n\tcursor.startNode(\"NumberLiteralExpr\");\n\tcursor.bump();\n\treturn cursor.finishNode();\n}\n/**\n* Parses a namespace-qualified name `[space ':']? Ident ('.' Ident)*`. The\n* caller guarantees a leading `Ident`.\n*\n* Parsing the whole chain up front lets a position decide\n* constructor-vs-reference by peeking exactly one token for `(`, with no scan of\n* the dotted chain's length.\n*/\nfunction parseQualifiedName(cursor) {\n\tcursor.startNode(\"QualifiedName\");\n\tparseIdentifier(cursor);\n\tparseQualifiedSegments(cursor, \"Colon\");\n\tparseQualifiedSegments(cursor, \"Dot\");\n\tcursor.finishNode();\n}\n/**\n* A well-formed name carries at most one colon space and one dot namespace, so\n* each separator past the first of its kind reports `PSL_INVALID_QUALIFIED_NAME`.\n* The separator is consumed regardless, keeping the lossless round-trip intact.\n*/\nfunction parseQualifiedSegments(cursor, separator) {\n\tlet seen = 0;\n\twhile (cursor.peekKind() === separator) {\n\t\tseen++;\n\t\tconst separatorMark = cursor.mark();\n\t\tcursor.bump();\n\t\tif (seen > 1) cursor.diagnostic(\"PSL_INVALID_QUALIFIED_NAME\", \"Qualified name has too many segments\", separatorMark);\n\t\tif (cursor.peekKind() === \"Ident\") parseIdentifier(cursor);\n\t\telse cursor.diagnostic(\"PSL_INVALID_QUALIFIED_NAME\", \"Qualified name is missing a name after the separator\", cursor.mark());\n\t}\n}\n/**\n* Whether the next tokens open a tagged literal: a bare `Ident` or a\n* namespace-qualified `Ident.Ident`, then a string. Trivia may sit anywhere\n* between them. Bounded like {@link isCallAhead}.\n*/\nfunction isTaggedLiteralAhead(cursor) {\n\tif (cursor.peekKind() !== \"Ident\") return false;\n\tif (cursor.peekKind(1) === \"StringLiteral\") return true;\n\treturn cursor.peekKind(1) === \"Dot\" && cursor.peekKind(2) === \"Ident\" && cursor.peekKind(3) === \"StringLiteral\";\n}\n/** Parses `` tag`body` ``, `tag\"body\"`, or `tag'body'`: a qualified name, then a string literal. */\nfunction parseTaggedLiteral(cursor) {\n\tif (!isTaggedLiteralAhead(cursor)) return void 0;\n\tcursor.startNode(\"TaggedLiteral\");\n\tparseQualifiedName(cursor);\n\tparseStringLiteral(cursor);\n\treturn cursor.finishNode();\n}\nfunction parseBooleanLiteralExpr(cursor) {\n\tif (cursor.peekKind() !== \"Ident\") return void 0;\n\tconst text = cursor.peekToken().text;\n\tif (text !== \"true\" && text !== \"false\") return void 0;\n\tcursor.startNode(\"BooleanLiteralExpr\");\n\tcursor.bump();\n\treturn cursor.finishNode();\n}\nfunction parseIdentifierExpr(cursor) {\n\tif (cursor.peekKind() !== \"Ident\") return void 0;\n\tcursor.startNode(\"Identifier\");\n\tcursor.bump();\n\treturn cursor.finishNode();\n}\nfunction parseArrayLiteral(cursor) {\n\tif (cursor.peekKind() !== \"LBracket\") return void 0;\n\tcursor.startNode(\"ArrayLiteral\");\n\tcursor.bump();\n\twhile (cursor.peekKind() !== \"RBracket\" && cursor.peekKind() !== \"Eof\") {\n\t\tif (!parseExpression(cursor)) break;\n\t\tif (cursor.peekKind() === \"Comma\") cursor.bump();\n\t\telse break;\n\t}\n\tif (cursor.peekKind() === \"RBracket\") cursor.bump();\n\treturn cursor.finishNode();\n}\nfunction parseObjectLiteralExpr(cursor) {\n\tif (cursor.peekKind() !== \"LBrace\") return void 0;\n\tconst braceMark = cursor.mark();\n\tcursor.startNode(\"ObjectLiteralExpr\");\n\tcursor.bump();\n\twhile (cursor.peekKind() !== \"RBrace\" && cursor.peekKind() !== \"Eof\") {\n\t\tparseObjectField(cursor);\n\t\tif (cursor.peekKind() === \"Comma\") cursor.bump();\n\t\telse if (cursor.peekKind() === \"Ident\") cursor.diagnostic(\"PSL_INVALID_OBJECT_LITERAL\", \"Expected \\\",\\\" between object-literal fields\", cursor.markAfterLastToken());\n\t\telse break;\n\t}\n\tif (cursor.peekKind() === \"RBrace\") cursor.bump();\n\telse cursor.diagnostic(\"PSL_INVALID_OBJECT_LITERAL\", \"Unterminated object literal\", braceMark);\n\treturn cursor.finishNode();\n}\nfunction parseObjectField(cursor) {\n\tcursor.startNode(\"ObjectField\");\n\tconst keyMark = cursor.mark();\n\tconst keyText = cursor.peekToken().text;\n\tif (cursor.peekKind() === \"Ident\") parseIdentifier(cursor);\n\telse if (cursor.peekKind() === \"StringLiteral\") parseStringLiteralExpr(cursor);\n\tif (cursor.peekKind() === \"Colon\") {\n\t\tcursor.bump();\n\t\tif (!parseExpression(cursor)) cursor.diagnostic(\"PSL_INVALID_OBJECT_LITERAL\", \"Expected a value after \\\":\\\"\", cursor.mark());\n\t} else {\n\t\tcursor.diagnostic(\"PSL_INVALID_OBJECT_LITERAL\", `Expected \":\" after \"${keyText}\"`, keyMark);\n\t\tif (!(cursor.peekKind() === \"Ident\" && cursor.peekKind(1) === \"Colon\")) parseExpression(cursor);\n\t}\n\treturn cursor.finishNode();\n}\n/**\n* Whether the next tokens open a call: a bare `Ident(` or a namespace-qualified\n* `Ident.Ident(`. The lookahead is deliberately bounded so a bare dotted\n* reference like `a.b` is not mistaken for a call, rather than scanning an\n* unbounded dotted chain ahead to find the paren.\n*/\nfunction isCallAhead(cursor) {\n\tif (cursor.peekKind() !== \"Ident\") return false;\n\tif (cursor.peekKind(1) === \"LParen\") return true;\n\treturn cursor.peekKind(1) === \"Dot\" && cursor.peekKind(2) === \"Ident\" && cursor.peekKind(3) === \"LParen\";\n}\n/**\n* Parses a function/constructor call — bare `autoincrement()` or qualified\n* `temporal.updatedAt()`. Returns `undefined` unless {@link isCallAhead}\n* confirms a trailing `(`, so the `parseExpression` chain falls through to the\n* boolean and bare-identifier forms.\n*/\nfunction parseFunctionCall(cursor) {\n\tif (!isCallAhead(cursor)) return void 0;\n\tcursor.startNode(\"FunctionCall\");\n\tparseQualifiedName(cursor);\n\tif (cursor.peekKind() === \"LParen\") parseParenArgs(cursor);\n\treturn cursor.finishNode();\n}\n/** Parses a parenthesised, comma-separated `AttributeArg` list into the currently open node. */\nfunction parseParenArgs(cursor) {\n\tcursor.bump();\n\twhile (cursor.peekKind() !== \"RParen\" && cursor.peekKind() !== \"Eof\") {\n\t\tparseAttributeArg(cursor);\n\t\tif (cursor.peekKind() === \"Comma\") cursor.bump();\n\t\telse break;\n\t}\n\tif (cursor.peekKind() === \"RParen\") cursor.bump();\n}\nfunction parseAttributeArg(cursor) {\n\tconst kind = cursor.peekKind();\n\tif (kind !== \"Ident\" && kind !== \"StringLiteral\" && kind !== \"NumberLiteral\" && kind !== \"LBracket\" && kind !== \"LBrace\") return;\n\tcursor.startNode(\"AttributeArg\");\n\tif (cursor.peekKind() === \"Ident\" && cursor.peekKind(1) === \"Colon\") {\n\t\tparseIdentifier(cursor);\n\t\tcursor.bump();\n\t}\n\tparseArgValue(cursor);\n\tcursor.finishNode();\n}\nfunction parseArgValue(cursor) {\n\tparseExpression(cursor);\n}\nfunction parseAttributeArgList(cursor) {\n\tcursor.startNode(\"AttributeArgList\");\n\tparseParenArgs(cursor);\n\treturn cursor.finishNode();\n}\nfunction parseAttribute(cursor) {\n\tconst isBlockAttribute = cursor.peekKind() === \"DoubleAt\";\n\tconst attributeMark = cursor.mark();\n\tcursor.startNode(isBlockAttribute ? \"ModelAttribute\" : \"FieldAttribute\");\n\tcursor.bump();\n\tif (cursor.peekKind() === \"Ident\") parseQualifiedName(cursor);\n\telse cursor.diagnostic(\"PSL_INVALID_ATTRIBUTE_SYNTAX\", \"Attribute name expected\", attributeMark);\n\tif (cursor.peekKind() === \"LParen\") parseAttributeArgList(cursor);\n\treturn cursor.finishNode();\n}\n/**\n* A type annotation: `QualifiedName (argList)? ([])? (?)?`, e.g.\n* `pgvector.Vector(1536)[]?`. When the field has no type, no node is emitted —\n* a missing type is the absence of a `TypeAnnotation`, not a zero-width one.\n*/\nfunction parseTypeAnnotation(cursor) {\n\tconst kind = cursor.peekKind();\n\tif (kind !== \"Ident\" && kind !== \"LBracket\" && kind !== \"Question\") return;\n\tcursor.startNode(\"TypeAnnotation\");\n\tif (cursor.peekKind() === \"Ident\") {\n\t\tparseQualifiedName(cursor);\n\t\tif (cursor.peekKind() === \"LParen\") parseAttributeArgList(cursor);\n\t}\n\tif (cursor.peekKind() === \"LBracket\") {\n\t\tcursor.bump();\n\t\tif (cursor.peekKind() === \"RBracket\") cursor.bump();\n\t}\n\tif (cursor.peekKind() === \"Question\") cursor.bump();\n\tcursor.finishNode();\n}\n/**\n* Parses a full PSL document. Never throws — malformed input yields diagnostics\n* and a recovered tree, not an exception.\n*/\nfunction parse(source, filename) {\n\tconst cursor = new Cursor(filename, source);\n\tconst root = createSyntaxTree(parseDocument(cursor));\n\tconst document = DocumentAst.cast(root) ?? new DocumentAst(root);\n\tconst sources = new PslSources([[document.syntax, cursor.sourceFile]]);\n\treturn {\n\t\tdocument,\n\t\tdiagnostics: cursor.diagnostics,\n\t\tsources\n\t};\n}\nfunction parseDocument(cursor) {\n\tcursor.startNode(\"Document\");\n\twhile (cursor.peekKind() !== \"Eof\") parseDeclaration(cursor, false);\n\tcursor.flushTrivia();\n\treturn cursor.finishNode();\n}\nconst RESERVED_BLOCK_KEYWORDS = /* @__PURE__ */ new Set([\n\t\"model\",\n\t\"namespace\",\n\t\"type\",\n\t\"types\"\n]);\nfunction keywordIs(cursor, keyword) {\n\treturn cursor.peekKind() === \"Ident\" && cursor.peekToken().text === keyword;\n}\n/**\n* Each alternative is a no-op on non-match, consuming nothing, so the\n* forward-only cursor is never left half-consumed by a rejected alternative.\n* Recovery runs via the `if (!node)` tail rather than as a `??` arm, because it\n* appends raw tokens to the open parent instead of returning a child node.\n*/\nfunction parseDeclaration(cursor, insideNamespace) {\n\tconst name = cursor.peekKind(1) === \"Ident\" ? cursor.peekToken(1).text : \"\";\n\tif (insideNamespace && keywordIs(cursor, \"namespace\")) cursor.diagnostic(\"PSL_INVALID_NAMESPACE_BLOCK\", `Recursive \"namespace ${name}\" block is not allowed; namespace blocks may not nest`, cursor.mark());\n\telse if (insideNamespace && keywordIs(cursor, \"types\")) cursor.diagnostic(\"PSL_INVALID_NAMESPACE_BLOCK\", \"`types` blocks must be declared at the document top level, not inside a namespace block\", cursor.mark());\n\telse if (keywordIs(cursor, \"namespace\") && name === UNSPECIFIED_PSL_NAMESPACE_ID) cursor.diagnostic(\"PSL_INVALID_NAMESPACE_BLOCK\", `Namespace name \"${UNSPECIFIED_PSL_NAMESPACE_ID}\" is reserved for the parser-synthesised bucket for top-level declarations`, cursor.mark(1));\n\tif (!(parseModel(cursor) ?? parseNamespace(cursor) ?? parseCompositeType(cursor) ?? parseTypesBlock(cursor) ?? parseGenericBlock(cursor))) parseUnsupportedTopLevel(cursor);\n}\n/**\n* Reports only the first missing piece — a missing name suppresses the\n* missing-brace diagnostic. `nameRequired` is false only for the `types` block.\n*/\nfunction parseBlock(cursor, kind, nameRequired, parseMember) {\n\tconst keyword = cursor.peekToken().text;\n\tconst keywordMark = cursor.mark();\n\tcursor.startNode(kind);\n\tcursor.bump();\n\tconst hasName = nameRequired && cursor.peekKind() === \"Ident\";\n\tif (hasName) parseIdentifier(cursor);\n\tif (nameRequired && !hasName) cursor.diagnostic(\"PSL_INVALID_DECLARATION\", `Expected a name after \"${keyword}\"`, keywordMark);\n\telse if (cursor.peekKind() !== \"LBrace\") cursor.diagnostic(\"PSL_INVALID_DECLARATION\", `Expected \"{\" to open the \"${keyword}\" block`, cursor.markAfterLastToken());\n\tif (cursor.peekKind() === \"LBrace\") parseBlockBody(cursor, parseMember);\n\telse cursor.recoverToSyncPoint();\n\treturn cursor.finishNode();\n}\nfunction parseModel(cursor) {\n\tif (!keywordIs(cursor, \"model\")) return void 0;\n\treturn parseBlock(cursor, \"ModelDeclaration\", true, parseModelMember);\n}\n/**\n* Excluding the reserved keywords keeps a malformed reserved block (e.g. `model\n* {` with no name) routed to its dedicated parser. The generic keyword set is\n* open, so a bare identifier with no brace (e.g. `oops`) is read as an unfinished\n* custom declaration rather than unsupported content.\n*/\nfunction parseGenericBlock(cursor) {\n\tif (cursor.peekKind() !== \"Ident\") return void 0;\n\tconst keyword = cursor.peekToken().text;\n\tif (RESERVED_BLOCK_KEYWORDS.has(keyword)) return void 0;\n\tconst hasName = cursor.peekKind(1) === \"Ident\" && cursor.peekKind(2) === \"LBrace\";\n\tcursor.startNode(\"GenericBlockDeclaration\");\n\tcursor.bump();\n\tif (hasName) parseIdentifier(cursor);\n\tif (cursor.peekKind() === \"LBrace\") parseBlockBody(cursor, genericBlockMemberParser(keyword));\n\telse {\n\t\tcursor.diagnostic(\"PSL_INVALID_DECLARATION\", `Expected \"{\" to open the \"${keyword}\" block`, cursor.markAfterLastToken());\n\t\tcursor.recoverToSyncPoint();\n\t}\n\treturn cursor.finishNode();\n}\nfunction parseNamespace(cursor) {\n\tif (!keywordIs(cursor, \"namespace\")) return void 0;\n\treturn parseBlock(cursor, \"Namespace\", true, (inner) => parseDeclaration(inner, true));\n}\nfunction parseCompositeType(cursor) {\n\tif (!keywordIs(cursor, \"type\")) return void 0;\n\treturn parseBlock(cursor, \"CompositeTypeDeclaration\", true, parseModelMember);\n}\n/** `types` (plural) is the no-name types block; the singular `type` is the composite type above. */\nfunction parseTypesBlock(cursor) {\n\tif (!keywordIs(cursor, \"types\")) return void 0;\n\treturn parseBlock(cursor, \"TypesBlock\", false, parseNamedTypeMember);\n}\n/** Every `parseMember` consumes at least one significant token, so the loop always terminates. */\nfunction parseBlockBody(cursor, parseMember) {\n\tconst braceMark = cursor.mark();\n\tcursor.bump();\n\tfor (;;) {\n\t\tconst kind = cursor.peekKind();\n\t\tif (kind === \"RBrace\" || kind === \"Eof\") break;\n\t\tparseMember(cursor);\n\t}\n\tif (cursor.peekKind() === \"RBrace\") cursor.bump();\n\telse cursor.diagnostic(\"PSL_UNTERMINATED_BLOCK\", \"Unterminated block declaration\", braceMark);\n}\nfunction parseUnsupportedTopLevel(cursor) {\n\tconst offending = cursor.peekToken().text;\n\tconst message = cursor.peekKind(1) === \"LBrace\" ? `Unsupported top-level block \"${offending}\"` : `Unsupported top-level declaration \"${offending}\"`;\n\tcursor.diagnostic(\"PSL_UNSUPPORTED_TOP_LEVEL_BLOCK\", message, cursor.mark());\n\tcursor.bump();\n\tcursor.recoverToSyncPoint();\n}\n/**\n* Matches a leading `@@` block attribute, a no-op otherwise. Single-`@`\n* attributes belong to fields and are parsed inside `parseField`.\n*/\nfunction parseBlockAttribute(cursor) {\n\tif (cursor.peekKind() !== \"DoubleAt\") return void 0;\n\treturn parseAttribute(cursor);\n}\nfunction parseModelMember(cursor) {\n\tif (!(parseBlockAttribute(cursor) ?? parseField(cursor))) invalidMember(cursor, \"PSL_INVALID_MODEL_MEMBER\", `Invalid model member declaration \"${cursor.peekToken().text}\"`);\n}\nfunction parseNamedTypeMember(cursor) {\n\tif (!parseNamedType(cursor)) invalidMember(cursor, \"PSL_INVALID_TYPES_MEMBER\", `Invalid types declaration \"${cursor.peekToken().text}\"`);\n}\n/**\n* A `view` body is read like a model body. Every other generic block reads `key = value` entries\n* and bare keys, and in an `enum` block those may carry `@` attributes (`USER @map(\"user\")`). Each\n* interpreter decides whether it accepts the block and its members.\n*/\nfunction genericBlockMemberParser(keyword) {\n\tif (keyword === \"view\") return parseModelMember;\n\tif (keyword === \"enum\") return parseEnumMember;\n\treturn parseKeyValueMember;\n}\n/**\n* A generic-block member is either a `@@`-block attribute or a `key = value`\n* entry. The block-attribute alternative is purely syntactic — it does not judge\n* whether the attribute is valid for the block's kind.\n*/\nfunction parseKeyValueMember(cursor) {\n\tif (!(parseBlockAttribute(cursor) ?? parseKeyValue(cursor))) invalidMember(cursor, \"PSL_INVALID_EXTENSION_BLOCK_MEMBER\", \"Invalid block entry\");\n}\nfunction parseEnumMember(cursor) {\n\tif (!(parseBlockAttribute(cursor) ?? parseKeyValue(cursor, { memberAttributes: true }))) invalidMember(cursor, \"PSL_INVALID_EXTENSION_BLOCK_MEMBER\", \"Invalid block entry\");\n}\nfunction invalidMember(cursor, code, message) {\n\tcursor.diagnostic(code, message, cursor.mark());\n\tcursor.bump();\n\tcursor.recoverToSyncPoint();\n}\nfunction parseField(cursor) {\n\tif (cursor.peekKind() !== \"Ident\") return void 0;\n\tcursor.startNode(\"FieldDeclaration\");\n\tconst nameMark = cursor.mark();\n\tconst nameText = cursor.peekToken().text;\n\tparseIdentifier(cursor);\n\tif (cursor.peekKind() !== \"Ident\") cursor.diagnostic(\"PSL_INVALID_MODEL_MEMBER\", `Expected a type after field \"${nameText}\"`, nameMark);\n\tparseTypeAnnotation(cursor);\n\twhile (cursor.peekKind() === \"At\") parseAttribute(cursor);\n\treturn cursor.finishNode();\n}\nfunction parseNamedType(cursor) {\n\tif (cursor.peekKind() !== \"Ident\") return void 0;\n\tcursor.startNode(\"NamedTypeDeclaration\");\n\tconst nameMark = cursor.mark();\n\tconst nameText = cursor.peekToken().text;\n\tparseIdentifier(cursor);\n\tif (cursor.peekKind() === \"Equals\") cursor.bump();\n\telse cursor.diagnostic(\"PSL_INVALID_TYPES_MEMBER\", `Expected \"=\" after \"${nameText}\"`, nameMark);\n\tparseTypeAnnotation(cursor);\n\twhile (cursor.peekKind() === \"At\") parseAttribute(cursor);\n\treturn cursor.finishNode();\n}\n/**\n* A generic-block entry is either `key = value` or a bare `key` (committing a\n* `KeyValuePair` carrying only the key). With `memberAttributes` (enum blocks) any number of `@`\n* attributes may follow, as in `USER @map(\"user\")`. A `key =` with no following expression is\n* flagged.\n*/\nfunction parseKeyValue(cursor, options = { memberAttributes: false }) {\n\tif (cursor.peekKind() !== \"Ident\") return void 0;\n\tcursor.startNode(\"KeyValuePair\");\n\tparseIdentifier(cursor);\n\tif (cursor.peekKind() === \"Equals\") {\n\t\tcursor.bump();\n\t\tif (!parseExpression(cursor)) cursor.diagnostic(\"PSL_INVALID_EXTENSION_BLOCK_MEMBER\", \"Expected a value after \\\"=\\\"\", cursor.mark());\n\t}\n\twhile (options.memberAttributes && cursor.peekKind() === \"At\") parseAttribute(cursor);\n\treturn cursor.finishNode();\n}\n//#endregion\nexport { PslSources as a, greenToken as i, GreenNodeBuilder as n, SourceFile as o, greenNode as r, parse as t };\n\n//# sourceMappingURL=parse-Km2Ne67K.mjs.map"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { f as CodecLookup } from "./codec-types-C4Bx6jXr-C2MBP0-0.mjs";
2
2
  import { N as ContributedPslDiagnosticCode, X as PslDiagnosticCode, Z as PslExtensionBlock, ct as PslSpan, w as AuthoringPslBlockDescriptorNamespace } from "./framework-authoring-C9VTqnML-BXtBl2dJ.mjs";
3
- //#region ../../../1-framework/1-core/framework-components/dist/psl-ast-BKF2fYgk.d.mts
3
+ //#region ../../../1-framework/1-core/framework-components/dist/psl-ast-BePuKena.d.mts
4
4
  //#region src/control/psl-ast.d.ts
5
5
  interface PslDiagnostic {
6
6
  /**
@@ -147,6 +147,11 @@ interface PslTypesBlock {
147
147
  * (or whether) to map the PSL bucket to the IR sentinel.
148
148
  */
149
149
  declare const UNSPECIFIED_PSL_NAMESPACE_ID = "__unspecified__";
150
+ /**
151
+ * The name the unbound namespace is written under in PSL: `namespace unbound { … }`. Readers map it
152
+ * to the IR's `__unbound__` namespace id, and writers map that id back to it.
153
+ */
154
+ declare const UNBOUND_PSL_NAMESPACE_NAME = "unbound";
150
155
  /** A value in {@link PslNamespace.entries}: a built-in entity node or an extension-contributed {@link PslExtensionBlock}. */
151
156
  type PslNamespaceEntry = PslModel | PslCompositeType | PslExtensionBlock;
152
157
  /**
@@ -255,5 +260,5 @@ interface ParsePslDocumentResult {
255
260
  readonly ok: boolean;
256
261
  }
257
262
  //#endregion
258
- export { makePslNamespace as A, PslReferentialAction as C, UNSPECIFIED_PSL_NAMESPACE_ID as D, PslUniqueConstraint as E, namespacePslExtensionBlocks as M, flatPslCompositeTypes as O, PslNamespaceEntry as S, PslTypesBlock as T, PslIndexConstraint as _, PslAttributeArgument as a, PslNamedTypeDeclaration as b, PslAttributeTarget as c, PslDefaultLiteralValue as d, PslDefaultValue as f, PslFieldAttribute as g, PslField as h, PslAttribute as i, makePslNamespaceEntries as j, flatPslModels as k, PslCompositeType as l, PslDocumentAst as m, ParsePslDocumentInput as n, PslAttributeNamedArgument as o, PslDiagnostic as p, ParsePslDocumentResult as r, PslAttributePositionalArgument as s, BUILTIN_PSL_KIND_KEYS as t, PslDefaultFunctionValue as u, PslModel as v, PslTypeConstructorCall as w, PslNamespace as x, PslModelAttribute as y };
259
- //# sourceMappingURL=psl-ast-BKF2fYgk-D6YxdCnP.d.mts.map
263
+ export { flatPslModels as A, PslReferentialAction as C, UNBOUND_PSL_NAMESPACE_NAME as D, PslUniqueConstraint as E, makePslNamespaceEntries as M, namespacePslExtensionBlocks as N, UNSPECIFIED_PSL_NAMESPACE_ID as O, PslNamespaceEntry as S, PslTypesBlock as T, PslIndexConstraint as _, PslAttributeArgument as a, PslNamedTypeDeclaration as b, PslAttributeTarget as c, PslDefaultLiteralValue as d, PslDefaultValue as f, PslFieldAttribute as g, PslField as h, PslAttribute as i, makePslNamespace as j, flatPslCompositeTypes as k, PslCompositeType as l, PslDocumentAst as m, ParsePslDocumentInput as n, PslAttributeNamedArgument as o, PslDiagnostic as p, ParsePslDocumentResult as r, PslAttributePositionalArgument as s, BUILTIN_PSL_KIND_KEYS as t, PslDefaultFunctionValue as u, PslModel as v, PslTypeConstructorCall as w, PslNamespace as x, PslModelAttribute as y };
264
+ //# sourceMappingURL=psl-ast-BePuKena-AYNqFKCE.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"psl-ast-BKF2fYgk-D6YxdCnP.d.mts","names":[],"sources":["../../../../1-framework/1-core/framework-components/dist/psl-ast-BKF2fYgk.d.mts"],"mappings":";;;;UAGU;;;;;;;;;;;WAWC,MAAM,oBAAoB;WAC1B;WACA;WACA,MAAM;;UAEP;WACC;WACA;;UAED;WACC;WACA;;KAEN,kBAAkB,0BAA0B;KAC5C;UACK;WACC;WACA;WACA,MAAM;;UAEP;WACC;WACA;WACA;WACA,MAAM;;KAEZ,uBAAuB,iCAAiC;UACnD;WACC;WACA;WACA,eAAe;WACf,MAAM;;UAEP;WACC;WACA,QAAQ;WACR;WACA,eAAe;WACf,MAAM;;KAEZ;KACA,oBAAoB;UACf;WACC;WACA;;WAEA;;WAEA;;;;;;;;;WASA;WACA,kBAAkB;WAClB;WACA;WACA;WACA,qBAAqB;WACrB,MAAM;;UAEP;WACC;WACA;WACA,MAAM;;UAEP;WACC;WACA;WACA,MAAM;;KAEZ,oBAAoB;UACf;WACC;WACA;WACA,iBAAiB;WACjB,qBAAqB;WACrB,MAAM;;;;;;;;WAQN;;;;;;;UAOD;WACC;WACA;WACA,iBAAiB;WACjB,qBAAqB;WACrB,MAAM;;UAEP;WACC;WACA;;;;;;WAMA;WACA,kBAAkB;WAClB,qBAAqB;WACrB,MAAM;;UAEP;WACC;WACA,uBAAuB;WACvB,MAAM;;;;;;;;;;;;;;cAcH;;KAET,oBAAoB,WAAW,mBAAmB;;;;;;;;;;;;UAY7C;WACC;WACA;;WAEA,SAAS,SAAS,eAAe,SAAS,eAAe;;WAEzD,iBAAiB;;WAEjB,yBAAyB;WACzB,MAAM;;;iBAGA,iBAAiB;WACvB;WACA;WACA,SAAS,SAAS,eAAe,SAAS,eAAe;WACzD,MAAM;IACb;;;;;;iBAMa,wBAAwB,iBAAiB,YAAY,yBAAyB,oBAAoB,0BAA0B,sBAAsB,SAAS,eAAe,SAAS,eAAe;UACzM;WACC;WACA;WACA,qBAAqB;WACrB,QAAQ;WACR,MAAM;;;;;;iBAMA,cAAc,KAAK,0BAA0B;;;;iBAI7C,sBAAsB,KAAK,0BAA0B;;;;;;;;;;;cAWxD,uBAAuB;;;;;;;;;iBASpB,4BAA4B,IAAI,wBAAwB;UAC/D;WACC;WACA;;;;;;;;;;;;;;;;WAgBA,sBAAsB;;;;;;;;;WAStB,cAAc;;UAEf;WACC,KAAK;WACL,sBAAsB;WACtB"}
1
+ {"version":3,"file":"psl-ast-BePuKena-AYNqFKCE.d.mts","names":[],"sources":["../../../../1-framework/1-core/framework-components/dist/psl-ast-BePuKena.d.mts"],"mappings":";;;;UAGU;;;;;;;;;;;WAWC,MAAM,oBAAoB;WAC1B;WACA;WACA,MAAM;;UAEP;WACC;WACA;;UAED;WACC;WACA;;KAEN,kBAAkB,0BAA0B;KAC5C;UACK;WACC;WACA;WACA,MAAM;;UAEP;WACC;WACA;WACA;WACA,MAAM;;KAEZ,uBAAuB,iCAAiC;UACnD;WACC;WACA;WACA,eAAe;WACf,MAAM;;UAEP;WACC;WACA,QAAQ;WACR;WACA,eAAe;WACf,MAAM;;KAEZ;KACA,oBAAoB;UACf;WACC;WACA;;WAEA;;WAEA;;;;;;;;;WASA;WACA,kBAAkB;WAClB;WACA;WACA;WACA,qBAAqB;WACrB,MAAM;;UAEP;WACC;WACA;WACA,MAAM;;UAEP;WACC;WACA;WACA,MAAM;;KAEZ,oBAAoB;UACf;WACC;WACA;WACA,iBAAiB;WACjB,qBAAqB;WACrB,MAAM;;;;;;;;WAQN;;;;;;;UAOD;WACC;WACA;WACA,iBAAiB;WACjB,qBAAqB;WACrB,MAAM;;UAEP;WACC;WACA;;;;;;WAMA;WACA,kBAAkB;WAClB,qBAAqB;WACrB,MAAM;;UAEP;WACC;WACA,uBAAuB;WACvB,MAAM;;;;;;;;;;;;;;cAcH;;;;;cAKA;;KAET,oBAAoB,WAAW,mBAAmB;;;;;;;;;;;;UAY7C;WACC;WACA;;WAEA,SAAS,SAAS,eAAe,SAAS,eAAe;;WAEzD,iBAAiB;;WAEjB,yBAAyB;WACzB,MAAM;;;iBAGA,iBAAiB;WACvB;WACA;WACA,SAAS,SAAS,eAAe,SAAS,eAAe;WACzD,MAAM;IACb;;;;;;iBAMa,wBAAwB,iBAAiB,YAAY,yBAAyB,oBAAoB,0BAA0B,sBAAsB,SAAS,eAAe,SAAS,eAAe;UACzM;WACC;WACA;WACA,qBAAqB;WACrB,QAAQ;WACR,MAAM;;;;;;iBAMA,cAAc,KAAK,0BAA0B;;;;iBAI7C,sBAAsB,KAAK,0BAA0B;;;;;;;;;;;cAWxD,uBAAuB;;;;;;;;;iBASpB,4BAA4B,IAAI,wBAAwB;UAC/D;WACC;WACA;;;;;;;;;;;;;;;;WAgBA,sBAAsB;;;;;;;;;WAStB,cAAc;;UAEf;WACC,KAAK;WACL,sBAAsB;WACtB"}
@@ -1,6 +1,6 @@
1
1
  import { f as CodecLookup } from "./codec-types-C4Bx6jXr-C2MBP0-0.mjs";
2
2
  import { C as AuthoringPslBlockDescriptor, Z as PslExtensionBlock } from "./framework-authoring-C9VTqnML-BXtBl2dJ.mjs";
3
- import { p as PslDiagnostic, x as PslNamespace } from "./psl-ast-BKF2fYgk-D6YxdCnP.mjs";
3
+ import { p as PslDiagnostic, x as PslNamespace } from "./psl-ast-BePuKena-AYNqFKCE.mjs";
4
4
  //#region ../../../1-framework/1-core/framework-components/dist/psl-ast.d.mts
5
5
  //#region src/control/psl-extension-block-validator.d.ts
6
6
  /**
@@ -34,4 +34,4 @@ interface ExtensionBlockRefResolutionContext {
34
34
  declare function validateExtensionBlock(node: PslExtensionBlock, descriptor: AuthoringPslBlockDescriptor, sourceId: string, codecLookup: CodecLookup, refCtx?: ExtensionBlockRefResolutionContext): readonly PslDiagnostic[];
35
35
  //#endregion
36
36
  export { validateExtensionBlock as n, ExtensionBlockRefResolutionContext as t };
37
- //# sourceMappingURL=psl-ast-Bu85Lu-k.d.mts.map
37
+ //# sourceMappingURL=psl-ast-Cec7KbOn.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"psl-ast-Bu85Lu-k.d.mts","names":[],"sources":["../../../../1-framework/1-core/framework-components/dist/psl-ast.d.mts"],"mappings":";;;;;;;;;;;;;UAYU;WACC,gBAAgB;WAChB,wBAAwB;;;;;;;;;;;;;;;;;;iBAkBlB,uBAAuB,MAAM,mBAAmB,YAAY,6BAA6B,kBAAkB,aAAa,aAAa,SAAS,8CAA8C"}
1
+ {"version":3,"file":"psl-ast-Cec7KbOn.d.mts","names":[],"sources":["../../../../1-framework/1-core/framework-components/dist/psl-ast.d.mts"],"mappings":";;;;;;;;;;;;;UAYU;WACC,gBAAgB;WAChB,wBAAwB;;;;;;;;;;;;;;;;;;iBAkBlB,uBAAuB,MAAM,mBAAmB,YAAY,6BAA6B,kBAAkB,aAAa,aAAa,SAAS,8CAA8C"}
@@ -14,6 +14,11 @@ import { t as blindCast } from "./casts-DpaahrlC-Bd5n2coI.mjs";
14
14
  */
15
15
  const UNSPECIFIED_PSL_NAMESPACE_ID = "__unspecified__";
16
16
  /**
17
+ * The name the unbound namespace is written under in PSL: `namespace unbound { … }`. Readers map it
18
+ * to the IR's `__unbound__` namespace id, and writers map that id back to it.
19
+ */
20
+ const UNBOUND_PSL_NAMESPACE_NAME = "unbound";
21
+ /**
17
22
  * Stores `entries`; exposes `models`/`enums`/`compositeTypes` as getters over
18
23
  * it. The getters are prototype members (non-enumerable), so spreading or
19
24
  * `JSON.stringify`-ing a namespace copies only `entries`, never a duplicate view.
@@ -234,6 +239,6 @@ function resolveEntityInNamespaces(name, refKind, namespaces) {
234
239
  return false;
235
240
  }
236
241
  //#endregion
237
- export { makePslNamespace as a, validateExtensionBlock as c, flatPslModels as i, UNSPECIFIED_PSL_NAMESPACE_ID as n, makePslNamespaceEntries as o, flatPslCompositeTypes as r, namespacePslExtensionBlocks as s, BUILTIN_PSL_KIND_KEYS as t };
242
+ export { flatPslModels as a, namespacePslExtensionBlocks as c, flatPslCompositeTypes as i, validateExtensionBlock as l, UNBOUND_PSL_NAMESPACE_NAME as n, makePslNamespace as o, UNSPECIFIED_PSL_NAMESPACE_ID as r, makePslNamespaceEntries as s, BUILTIN_PSL_KIND_KEYS as t };
238
243
 
239
- //# sourceMappingURL=psl-ast-DUCvVXbB.mjs.map
244
+ //# sourceMappingURL=psl-ast-DYtFdynZ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"psl-ast-DYtFdynZ.mjs","names":[],"sources":["../../../../1-framework/1-core/framework-components/dist/psl-ast.mjs"],"sourcesContent":["import { blindCast } from \"@internal/utils/casts\";\n//#region src/control/psl-ast.ts\n/**\n* Name of the synthesised namespace bucket the framework parser uses for\n* top-level declarations that appear outside any `namespace { … }` block.\n* The double-underscore decoration signals that the identifier is parser-\n* synthesised and never appears in user-authored PSL source — writing\n* `namespace __unspecified__ { … }` is a parse error.\n*\n* Distinct from the IR sentinel `__unbound__`: the PSL bucket describes\n* syntactic absence at the parser layer; the IR sentinel describes a late-\n* bound storage slot at the IR layer. Per-target interpreters decide how\n* (or whether) to map the PSL bucket to the IR sentinel.\n*/\nconst UNSPECIFIED_PSL_NAMESPACE_ID = \"__unspecified__\";\n/**\n* The name the unbound namespace is written under in PSL: `namespace unbound { … }`. Readers map it\n* to the IR's `__unbound__` namespace id, and writers map that id back to it.\n*/\nconst UNBOUND_PSL_NAMESPACE_NAME = \"unbound\";\n/**\n* Stores `entries`; exposes `models`/`enums`/`compositeTypes` as getters over\n* it. The getters are prototype members (non-enumerable), so spreading or\n* `JSON.stringify`-ing a namespace copies only `entries`, never a duplicate view.\n*/\nvar PslNamespaceNode = class {\n\tkind = \"namespace\";\n\tname;\n\tentries;\n\tspan;\n\tconstructor(init) {\n\t\tthis.name = init.name;\n\t\tthis.entries = init.entries;\n\t\tthis.span = init.span;\n\t\tObject.freeze(this);\n\t}\n\tget models() {\n\t\treturn blindCast(Object.values(this.entries[\"model\"] ?? {}));\n\t}\n\tget compositeTypes() {\n\t\treturn blindCast(Object.values(this.entries[\"compositeType\"] ?? {}));\n\t}\n};\n/** Constructs a {@link PslNamespace}. Use this, never a namespace literal — the accessors must derive from `entries`. */\nfunction makePslNamespace(init) {\n\treturn new PslNamespaceNode(init);\n}\n/**\n* Builds the frozen `entries[kind][name]` container from per-kind arrays.\n* Built-ins key on their PSL keyword; extension blocks key on their `kind`\n* discriminator. Call this rather than hand-building the literal.\n*/\nfunction makePslNamespaceEntries(models, compositeTypes, extensionBlocks) {\n\tconst container = {};\n\tif (models.length > 0) {\n\t\tconst map = {};\n\t\tfor (const m of models) map[m.name] = m;\n\t\tcontainer[\"model\"] = Object.freeze(map);\n\t}\n\tif (compositeTypes.length > 0) {\n\t\tconst map = {};\n\t\tfor (const ct of compositeTypes) map[ct.name] = ct;\n\t\tcontainer[\"compositeType\"] = Object.freeze(map);\n\t}\n\tfor (const block of extensionBlocks) {\n\t\tconst existing = container[block.kind];\n\t\tconst newMap = existing ? blindCast({ ...existing }) : {};\n\t\tnewMap[block.name] = block;\n\t\tcontainer[block.kind] = Object.freeze(newMap);\n\t}\n\treturn Object.freeze(container);\n}\n/**\n* Returns all models from every namespace in document order. Convenience\n* for consumers that don't (yet) need namespace-awareness.\n*/\nfunction flatPslModels(ast) {\n\treturn ast.namespaces.flatMap((ns) => blindCast(Object.values(ns.entries[\"model\"] ?? {})));\n}\n/**\n* Returns all composite types from every namespace in document order.\n*/\nfunction flatPslCompositeTypes(ast) {\n\treturn ast.namespaces.flatMap((ns) => blindCast(Object.values(ns.entries[\"compositeType\"] ?? {})));\n}\n/**\n* The set of `entries` kind keys that the framework parser reserves for\n* built-in PSL entity kinds. Any own-enumerable key on `PslNamespace.entries`\n* that is **not** in this set was contributed by an extension-block descriptor.\n*\n* Built-in keys match the PSL keyword used on each block type:\n* `'model'`, `'compositeType'`. The `'enum'` keyword is claimed by the\n* extension-block grammar via a registered descriptor, so `entries['enum']`\n* holds `PslExtensionBlock` nodes and is returned by `namespacePslExtensionBlocks`.\n*/\nconst BUILTIN_PSL_KIND_KEYS = /* @__PURE__ */ new Set([\"model\", \"compositeType\"]);\n/**\n* Returns all extension-contributed blocks in the given namespace, in\n* insertion order (the order the parser encountered them in the source).\n*\n* Reads from `namespace.entries`, skipping the built-in kind keys\n* (`'model'`, `'compositeType'`). All remaining kind maps contain\n* only `PslExtensionBlock` nodes by construction (see `makePslNamespaceEntries`).\n*/\nfunction namespacePslExtensionBlocks(ns) {\n\tconst result = [];\n\tfor (const [kindKey, kindMap] of Object.entries(ns.entries)) {\n\t\tif (BUILTIN_PSL_KIND_KEYS.has(kindKey)) continue;\n\t\tfor (const entry of Object.values(kindMap)) result.push(blindCast(entry));\n\t}\n\treturn result;\n}\n//#endregion\n//#region src/control/psl-extension-block-validator.ts\n/**\n* Validate a single parsed extension block against its descriptor.\n*\n* Returns an array of {@link PslDiagnostic} objects (possibly empty). The\n* caller is responsible for threading `sourceId` into each returned diagnostic\n* — the returned objects already have `sourceId` set from the `sourceId`\n* parameter.\n*\n* @param node - The parsed block node produced by the generic framework parser.\n* @param descriptor - The descriptor that claims this block's keyword.\n* @param sourceId - The PSL source file identifier (threaded into diagnostics).\n* @param codecLookup - Used to validate `value`-kind parameter literals via\n* `codecLookup.get(codecId)?.decodeJson(JSON.parse(raw))`.\n* @param refCtx - Namespace context for `ref`-kind scope resolution. Required\n* when any descriptor parameter is `kind: 'ref'`; may be omitted if none are.\n*/\nfunction validateExtensionBlock(node, descriptor, sourceId, codecLookup, refCtx) {\n\tconst diagnostics = [];\n\tconst descriptorKeys = new Set(Object.keys(descriptor.parameters));\n\tconst nodeKeys = new Set(Object.keys(node.parameters));\n\tif (!descriptor.variadicParameters) {\n\t\tfor (const key of nodeKeys) if (!descriptorKeys.has(key)) {\n\t\t\tconst captured = node.parameters[key];\n\t\t\tdiagnostics.push({\n\t\t\t\tcode: \"PSL_EXTENSION_UNKNOWN_PARAMETER\",\n\t\t\t\tmessage: `Unknown parameter \"${key}\" in \"${descriptor.keyword}\" block \"${node.name}\". The descriptor does not declare this parameter.`,\n\t\t\t\tsourceId,\n\t\t\t\tspan: captured?.span ?? node.span\n\t\t\t});\n\t\t}\n\t}\n\tfor (const [key, param] of Object.entries(descriptor.parameters)) if (param.required === true && !nodeKeys.has(key)) diagnostics.push({\n\t\tcode: \"PSL_EXTENSION_MISSING_REQUIRED_PARAMETER\",\n\t\tmessage: `Required parameter \"${key}\" is missing from \"${descriptor.keyword}\" block \"${node.name}\".`,\n\t\tsourceId,\n\t\tspan: node.span\n\t});\n\tfor (const [key, param] of Object.entries(descriptor.parameters)) {\n\t\tconst captured = node.parameters[key];\n\t\tif (captured === void 0) continue;\n\t\tvalidateParam(node, descriptor, key, param, captured, sourceId, codecLookup, refCtx, diagnostics);\n\t}\n\treturn diagnostics;\n}\nfunction validateParam(node, descriptor, key, param, captured, sourceId, codecLookup, refCtx, diagnostics) {\n\tswitch (param.kind) {\n\t\tcase \"option\":\n\t\t\tif (captured.kind !== \"option\") return;\n\t\t\tif (!param.values.includes(captured.token)) diagnostics.push({\n\t\t\t\tcode: \"PSL_EXTENSION_OPTION_OUT_OF_SET\",\n\t\t\t\tmessage: `Parameter \"${key}\" in \"${descriptor.keyword}\" block \"${node.name}\" has value \"${captured.token}\" which is not one of the allowed values: ${param.values.map((v) => `\"${v}\"`).join(\", \")}.`,\n\t\t\t\tsourceId,\n\t\t\t\tspan: captured.span\n\t\t\t});\n\t\t\treturn;\n\t\tcase \"value\": {\n\t\t\tif (captured.kind !== \"value\") return;\n\t\t\tconst codec = codecLookup.get(param.codecId);\n\t\t\tif (codec === void 0) {\n\t\t\t\tdiagnostics.push({\n\t\t\t\t\tcode: \"PSL_EXTENSION_INVALID_VALUE\",\n\t\t\t\t\tmessage: `Parameter \"${key}\" in \"${descriptor.keyword}\" block \"${node.name}\" references unknown codec \"${param.codecId}\".`,\n\t\t\t\t\tsourceId,\n\t\t\t\t\tspan: captured.span\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tlet jsonValue;\n\t\t\ttry {\n\t\t\t\tjsonValue = JSON.parse(captured.raw);\n\t\t\t} catch {\n\t\t\t\tdiagnostics.push({\n\t\t\t\t\tcode: \"PSL_EXTENSION_INVALID_VALUE\",\n\t\t\t\t\tmessage: `Parameter \"${key}\" in \"${descriptor.keyword}\" block \"${node.name}\" is not a valid JSON literal (expected a JSON string, number, boolean, or null): ${captured.raw}`,\n\t\t\t\t\tsourceId,\n\t\t\t\t\tspan: captured.span\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\t\t\ttry {\n\t\t\t\tcodec.decodeJson(blindCast(jsonValue));\n\t\t\t} catch (err) {\n\t\t\t\tconst reason = err instanceof Error ? err.message : String(err);\n\t\t\t\tdiagnostics.push({\n\t\t\t\t\tcode: \"PSL_EXTENSION_INVALID_VALUE\",\n\t\t\t\t\tmessage: `Parameter \"${key}\" in \"${descriptor.keyword}\" block \"${node.name}\" was rejected by codec \"${param.codecId}\": ${reason}`,\n\t\t\t\t\tsourceId,\n\t\t\t\t\tspan: captured.span\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tcase \"ref\":\n\t\t\tif (captured.kind !== \"ref\") return;\n\t\t\tvalidateRef(node, descriptor, key, param, captured.identifier, captured.span, sourceId, refCtx, diagnostics);\n\t\t\treturn;\n\t\tcase \"list\":\n\t\t\tif (captured.kind !== \"list\") return;\n\t\t\tfor (const item of captured.items) validateParam(node, descriptor, key, param.of, item, sourceId, codecLookup, refCtx, diagnostics);\n\t\t\treturn;\n\t}\n}\nfunction validateRef(node, descriptor, key, param, identifier, span, sourceId, refCtx, diagnostics) {\n\tif (param.scope === \"cross-space\") return;\n\tif (refCtx === void 0) return;\n\tconst namespacesToSearch = param.scope === \"same-namespace\" ? [refCtx.ownerNamespace] : refCtx.allNamespaces;\n\tif (!resolveEntityInNamespaces(identifier, param.refKind, namespacesToSearch)) {\n\t\tconst scopeLabel = param.scope === \"same-namespace\" ? \"the same namespace\" : \"any namespace in the schema\";\n\t\tdiagnostics.push({\n\t\t\tcode: \"PSL_EXTENSION_UNRESOLVED_REF\",\n\t\t\tmessage: `Parameter \"${key}\" in \"${descriptor.keyword}\" block \"${node.name}\" refers to \"${identifier}\" (expected ${param.refKind}), but no entity with that name and kind was found in ${scopeLabel}.`,\n\t\t\tsourceId,\n\t\t\tspan\n\t\t});\n\t}\n}\n/**\n* True if an entity named `name` of kind `refKind` exists in any of the given\n* namespaces. Built-in and extension kinds resolve the same way, through\n* `entries[refKind]`.\n*/\nfunction resolveEntityInNamespaces(name, refKind, namespaces) {\n\tfor (const ns of namespaces) {\n\t\tconst kindMap = ns.entries[refKind];\n\t\tif (kindMap !== void 0 && Object.hasOwn(kindMap, name)) return true;\n\t}\n\treturn false;\n}\n//#endregion\nexport { BUILTIN_PSL_KIND_KEYS, UNBOUND_PSL_NAMESPACE_NAME, UNSPECIFIED_PSL_NAMESPACE_ID, flatPslCompositeTypes, flatPslModels, makePslNamespace, makePslNamespaceEntries, namespacePslExtensionBlocks, validateExtensionBlock };\n\n//# sourceMappingURL=psl-ast.mjs.map"],"mappings":"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"}
@@ -1,13 +1,14 @@
1
1
  import { f as CodecLookup } from "./codec-types-C4Bx6jXr-C2MBP0-0.mjs";
2
2
  import { $ as PslExtensionBlockAttributeArg, A as AuthoringTypeNamespace, C as AuthoringPslBlockDescriptor, O as AuthoringTypeConstructorDescriptor, P as ControlDefaultRegistries, Q as PslExtensionBlockAttribute, X as PslDiagnosticCode, Z as PslExtensionBlock, at as PslExtensionBlockParamValue, ct as PslSpan, et as PslExtensionBlockParamBare, it as PslExtensionBlockParamScalarValue, nt as PslExtensionBlockParamOption, rt as PslExtensionBlockParamRef, st as PslPosition, tt as PslExtensionBlockParamList, w as AuthoringPslBlockDescriptorNamespace } from "./framework-authoring-C9VTqnML-BXtBl2dJ.mjs";
3
- import "./authoring-DjeaZGzp.mjs";
3
+ import "./authoring-BffMNBO5.mjs";
4
4
  import "./codec-D5McQin0.mjs";
5
- import { M as namespacePslExtensionBlocks, T as PslTypesBlock, a as PslAttributeArgument, b as PslNamedTypeDeclaration, c as PslAttributeTarget, d as PslDefaultLiteralValue, f as PslDefaultValue, g as PslFieldAttribute, h as PslField, i as PslAttribute, k as flatPslModels, l as PslCompositeType, m as PslDocumentAst, o as PslAttributeNamedArgument, s as PslAttributePositionalArgument, u as PslDefaultFunctionValue, v as PslModel, w as PslTypeConstructorCall, x as PslNamespace, y as PslModelAttribute } from "./psl-ast-BKF2fYgk-D6YxdCnP.mjs";
5
+ import { A as flatPslModels, N as namespacePslExtensionBlocks, T as PslTypesBlock, a as PslAttributeArgument, b as PslNamedTypeDeclaration, c as PslAttributeTarget, d as PslDefaultLiteralValue, f as PslDefaultValue, g as PslFieldAttribute, h as PslField, i as PslAttribute, l as PslCompositeType, m as PslDocumentAst, o as PslAttributeNamedArgument, s as PslAttributePositionalArgument, u as PslDefaultFunctionValue, v as PslModel, w as PslTypeConstructorCall, x as PslNamespace, y as PslModelAttribute } from "./psl-ast-BePuKena-AYNqFKCE.mjs";
6
6
  import { r as Result } from "./result-BYCOANWy.mjs";
7
- import { ht as TaggedLiteralCanonicalization, n as AssembledAuthoringContributions } from "./control-Bc_dos9-.mjs";
8
- import "./psl-ast-Bu85Lu-k.mjs";
9
- import { I as PslDiagnostic, K as SyntaxNode, L as PslDiagnosticCollector, M as ParseDiagnostic, R as PslSources, d as DiagnosticSource, et as createPslDiagnosticCollector, lt as mapPslDiagnostics, m as FieldAttributeAst, n as AstNode, nt as diagnosticFromSpan, p as ExpressionAst, r as AttributeArgAst, rt as diagnosticSource, w as ModelAttributeAst } from "./parse-SHpUIBnv-BvPsKLqw.mjs";
10
- import { _ as nodePslSpan, a as ModelSymbol, b as readResolvedConstructorCall, c as ResolvedAttribute, d as ResolvedTypeConstructorCall, f as SymbolTable, g as keywordPslSpan, h as buildSymbolTable, i as FieldSymbol, l as ResolvedAttributeArg, m as TopLevelScope, n as BuildSymbolTableOptions, o as NamedTypeSymbol, p as SymbolTableResult, r as CompositeTypeSymbol, s as NamespaceSymbol, t as BlockSymbol, u as ResolvedNamedTypeBinding, v as readResolvedAttribute, y as readResolvedAttributes } from "./symbol-table-DVPEY1fq-C5mC1wdG.mjs";
7
+ import { n as AssembledAuthoringContributions, vt as TaggedLiteralCanonicalization } from "./control-BTo8rNKi.mjs";
8
+ import "./psl-ast-Cec7KbOn.mjs";
9
+ import { i as isPslIdentifier } from "./tokenizer-DW30uwhx-BHsWTwYk.mjs";
10
+ import { $ as createPslDiagnosticCollector, F as PslDiagnostic, G as SyntaxNode, I as PslDiagnosticCollector, L as PslSources, M as ParseDiagnostic, ct as mapPslDiagnostics, d as DiagnosticSource, m as FieldAttributeAst, n as AstNode, nt as diagnosticSource, p as ExpressionAst, r as AttributeArgAst, tt as diagnosticFromSpan, w as ModelAttributeAst } from "./parse-DZRO_CK2-D8YAg23m.mjs";
11
+ import { _ as nodePslSpan, a as ModelSymbol, b as readResolvedConstructorCall, c as ResolvedAttribute, d as ResolvedTypeConstructorCall, f as SymbolTable, g as keywordPslSpan, h as buildSymbolTable, i as FieldSymbol, l as ResolvedAttributeArg, m as TopLevelScope, n as BuildSymbolTableOptions, o as NamedTypeSymbol, p as SymbolTableResult, r as CompositeTypeSymbol, s as NamespaceSymbol, t as BlockSymbol, u as ResolvedNamedTypeBinding, v as readResolvedAttribute, y as readResolvedAttributes } from "./symbol-table-CRtoii4t-DubuO_5j.mjs";
11
12
  import { n as UnionToIntersection, t as Simplify } from "./types-DGxlljKG.mjs";
12
13
  //#region ../../../1-framework/2-authoring/psl-parser/dist/index.d.mts
13
14
  //#region src/attribute-helpers.d.ts
@@ -443,10 +444,16 @@ declare function validateExtensionBlockFromSymbol(input: {
443
444
  readonly codecLookup: CodecLookup;
444
445
  }): readonly PslDiagnostic[];
445
446
  //#endregion
447
+ //#region src/name-the-psl-source-loses.d.ts
448
+ /**
449
+ * A name that is lost when a PSL file is read. The parser keeps block members, and the PSL contract sources keep other names, as keys of plain objects, where assigning this key sets the object's prototype instead of adding a key. Code that writes PSL must not write this name anywhere a PSL source reads a name, including inside `@map` and `@@map`.
450
+ */
451
+ declare const NAME_THE_PSL_SOURCE_LOSES = "__proto__";
452
+ //#endregion
446
453
  //#region src/schema-directive.d.ts
447
454
  declare function isPrismaNextSchema(text: string): boolean;
448
455
  /** The document with the directive earlier releases wrote replaced by the current one. */
449
456
  declare function renameLegacyDirective(text: string): string;
450
457
  //#endregion
451
- export { type ArgBindingSpec, type ArgType, type ArgTypeKind, type AssembledAttributeSpecs, type AttributeCtx, type AttributeLevel, type AttributeOut, type AttributeSpec, type AttributeSpecContext, type AttributeSpecNamespace, type AttributeSymbol, type Binder, type BinderResult, type BlockAttributeSpecFactory, type BlockSymbol, type BoundSpec, type BuildSymbolTableOptions, type CompositeTypeSymbol, type ContributedMember, type ContributedNamespaceSymbol, type ContributedTypeScope, type ContributedTypeSymbol, type CreateBinderOptions, type DeclarationFor, type DescribeUnsupportedAttribute, type DiagnosticSource, type EntityDeclaration, type EntityRefArgType, type EntitySelector, type FieldAttributeCtx, type FieldAttributeSpecContext, type FieldAttributeSpecFactory, type FieldSymbol, type FixedIdentifierArgType, type FuncCallSig, type IdentifierArgType, type InferAttr, type InspectableArgType, type ListOptions, type ModelAttributeCtx, type ModelAttributeSpecFactory, type ModelSymbol, type NamedOut, type NamedTypeSymbol, type NamespaceSymbol, type NumLiteral, type OptionalArgType, type OutOf, PSL_UNRESOLVED_REFERENCE, type Param, type ParsedTaggedLiteral, type PosOut, type PositionalParam, type PslAttribute, type PslAttributeArgument, type PslAttributeNamedArgument, type PslAttributePositionalArgument, type PslAttributeTarget, type PslCompositeType, type PslDefaultFunctionValue, type PslDefaultLiteralValue, type PslDefaultValue, type PslDiagnostic, type PslDiagnosticCode, type PslDiagnosticCollector, type PslDocumentAst, type PslExtensionBlock, type PslExtensionBlockAttribute, type PslExtensionBlockAttributeArg, type PslExtensionBlockParamBare, type PslExtensionBlockParamList, type PslExtensionBlockParamOption, type PslExtensionBlockParamRef, type PslExtensionBlockParamScalarValue, type PslExtensionBlockParamValue, type PslField, type PslFieldAttribute, type PslModel, type PslModelAttribute, type PslNamedTypeDeclaration, type PslNamespace, type PslPosition, type PslSpan, type PslSymbol, type PslTypeConstructorCall, type PslTypesBlock, type RejectingArgType, type Resolution, type ResolvedAttribute, type ResolvedAttributeArg, type ResolvedEntityReference, type ResolvedNamedTypeBinding, type ResolvedTypeConstructorCall, type Scope, type ScopeResolution, type SymbolTable, type SymbolTableResult, type TaggedLiteralArgType, type TopLevelScope, type TypedFuncCall, type UnrestrictedIdentifierArgType, type UnsupportedAttribute, assembleAttributeSpecs, blockAttribute, bool, buildSymbolTable, createBinder, createPslDiagnosticCollector, diagnosticFromSpan, diagnosticSource, entityRef, fieldAttribute, fieldRef, findBlockDescriptor, flatPslModels, funcCall, getPositionalArgument, identifier, int, interpretArgs, interpretAttribute, isPrismaNextSchema, json, keywordPslSpan, leafDiagnostic, list, mapPslDiagnostics, modelAttribute, namespacePslExtensionBlocks, nodePslSpan, num, numLiteral, oneOf, optional, parseQuotedStringLiteral, readResolvedAttribute, readResolvedAttributes, readResolvedConstructorCall, record, referencedFieldRef, renameLegacyDirective, str, taggedLiteral, validateExtensionBlockFromSymbol };
458
+ export { type ArgBindingSpec, type ArgType, type ArgTypeKind, type AssembledAttributeSpecs, type AttributeCtx, type AttributeLevel, type AttributeOut, type AttributeSpec, type AttributeSpecContext, type AttributeSpecNamespace, type AttributeSymbol, type Binder, type BinderResult, type BlockAttributeSpecFactory, type BlockSymbol, type BoundSpec, type BuildSymbolTableOptions, type CompositeTypeSymbol, type ContributedMember, type ContributedNamespaceSymbol, type ContributedTypeScope, type ContributedTypeSymbol, type CreateBinderOptions, type DeclarationFor, type DescribeUnsupportedAttribute, type DiagnosticSource, type EntityDeclaration, type EntityRefArgType, type EntitySelector, type FieldAttributeCtx, type FieldAttributeSpecContext, type FieldAttributeSpecFactory, type FieldSymbol, type FixedIdentifierArgType, type FuncCallSig, type IdentifierArgType, type InferAttr, type InspectableArgType, type ListOptions, type ModelAttributeCtx, type ModelAttributeSpecFactory, type ModelSymbol, NAME_THE_PSL_SOURCE_LOSES, type NamedOut, type NamedTypeSymbol, type NamespaceSymbol, type NumLiteral, type OptionalArgType, type OutOf, PSL_UNRESOLVED_REFERENCE, type Param, type ParsedTaggedLiteral, type PosOut, type PositionalParam, type PslAttribute, type PslAttributeArgument, type PslAttributeNamedArgument, type PslAttributePositionalArgument, type PslAttributeTarget, type PslCompositeType, type PslDefaultFunctionValue, type PslDefaultLiteralValue, type PslDefaultValue, type PslDiagnostic, type PslDiagnosticCode, type PslDiagnosticCollector, type PslDocumentAst, type PslExtensionBlock, type PslExtensionBlockAttribute, type PslExtensionBlockAttributeArg, type PslExtensionBlockParamBare, type PslExtensionBlockParamList, type PslExtensionBlockParamOption, type PslExtensionBlockParamRef, type PslExtensionBlockParamScalarValue, type PslExtensionBlockParamValue, type PslField, type PslFieldAttribute, type PslModel, type PslModelAttribute, type PslNamedTypeDeclaration, type PslNamespace, type PslPosition, type PslSpan, type PslSymbol, type PslTypeConstructorCall, type PslTypesBlock, type RejectingArgType, type Resolution, type ResolvedAttribute, type ResolvedAttributeArg, type ResolvedEntityReference, type ResolvedNamedTypeBinding, type ResolvedTypeConstructorCall, type Scope, type ScopeResolution, type SymbolTable, type SymbolTableResult, type TaggedLiteralArgType, type TopLevelScope, type TypedFuncCall, type UnrestrictedIdentifierArgType, type UnsupportedAttribute, assembleAttributeSpecs, blockAttribute, bool, buildSymbolTable, createBinder, createPslDiagnosticCollector, diagnosticFromSpan, diagnosticSource, entityRef, fieldAttribute, fieldRef, findBlockDescriptor, flatPslModels, funcCall, getPositionalArgument, identifier, int, interpretArgs, interpretAttribute, isPrismaNextSchema, isPslIdentifier, json, keywordPslSpan, leafDiagnostic, list, mapPslDiagnostics, modelAttribute, namespacePslExtensionBlocks, nodePslSpan, num, numLiteral, oneOf, optional, parseQuotedStringLiteral, readResolvedAttribute, readResolvedAttributes, readResolvedConstructorCall, record, referencedFieldRef, renameLegacyDirective, str, taggedLiteral, validateExtensionBlockFromSymbol };
452
459
  //# sourceMappingURL=psl-parser.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"psl-parser.d.mts","names":[],"sources":["../../../../1-framework/2-authoring/psl-parser/dist/index.d.mts"],"mappings":"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"}
1
+ {"version":3,"file":"psl-parser.d.mts","names":[],"sources":["../../../../1-framework/2-authoring/psl-parser/dist/index.d.mts"],"mappings":"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"}