@contember/schema 2.0.2 → 2.1.0-alpha.10

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.
@@ -1 +1 @@
1
- {"version":3,"file":"acl.cjs","sources":["../../../../../packages/schema/src/schema/acl.ts"],"sourcesContent":["import { Input } from './input'\nimport { JSONValue } from './json'\n\nexport namespace Acl {\n\texport enum VariableType {\n\t\tentity = 'entity',\n\t\tpredefined = 'predefined',\n\t\tcondition = 'condition',\n\n\t\t// currently unsupported\n\t\t// enum = 'enum',\n\t\t// column = 'column',\n\t}\n\n\texport type Variable =\n\t\t| EntityVariable\n\t\t| PredefinedVariable\n\t\t| ConditionVariable\n\t\t// | EnumVariable | ColumnValueVariable\n\n\n\n\texport type EntityVariable = {\n\t\treadonly type: VariableType.entity\n\t\treadonly entityName: string\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\texport type PredefinedVariableValue = 'identityID' | 'personID'\n\texport type PredefinedVariable = {\n\t\treadonly type: VariableType.predefined\n\t\treadonly value: PredefinedVariableValue\n\t}\n\n\n\texport type ConditionVariable = {\n\t\treadonly type: VariableType.condition\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\t// export interface EnumVariable {\n\t// \ttype: VariableType.enum\n\t// \tenumName: string\n\t// }\n\n\t// export interface ColumnValueVariable {\n\t// \ttype: VariableType.column\n\t// \tentityName: string\n\t// \tfieldName: string\n\t// }\n\n\texport type PredicateVariable = string //{ name: string }\n\texport type PredicateDefinition<E = never> = Input.Where<PredicateVariable | Input.Condition | E>\n\n\texport type PredicateMap = { readonly [name: string]: PredicateDefinition }\n\n\texport type EntityPermissions = {\n\t\treadonly predicates: PredicateMap\n\t\treadonly operations: EntityOperations\n\t}\n\n\texport enum Operation {\n\t\tread = 'read',\n\t\tcreate = 'create',\n\t\tupdate = 'update',\n\t\tdelete = 'delete',\n\t}\n\n\texport type EntityOperations = {\n\t\treadonly read?: FieldPermissions\n\t\treadonly create?: FieldPermissions\n\t\treadonly customPrimary?: boolean\n\t\treadonly update?: FieldPermissions\n\t\treadonly delete?: Predicate\n\t\treadonly noRoot?: readonly `${Operation}`[]\n\t}\n\n\texport type FieldPermissions = { readonly [field: string]: Predicate }\n\n\texport type PredicateReference = string\n\texport type Predicate = PredicateReference | boolean\n\n\texport type AnyStage = '*'\n\texport type StagesDefinition = AnyStage | readonly string[]\n\n\texport type MembershipVariableMatchRule = true | string\n\n\texport type MembershipVariablesMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly [targetVariable: string]: MembershipVariableMatchRule\n\t\t}\n\n\texport type MembershipRoleMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly variables?: MembershipVariablesMatchRule\n\t\t}\n\n\texport type MembershipMatchRule = {\n\t\treadonly [role: string]: MembershipRoleMatchRule\n\t}\n\n\texport type TenantPermissions = {\n\t\treadonly invite?: boolean | MembershipMatchRule\n\t\treadonly unmanagedInvite?: boolean | MembershipMatchRule\n\t\treadonly view?: MembershipMatchRule\n\t\treadonly manage?: MembershipMatchRule\n\t}\n\n\texport enum SystemPermissionsLevel {\n\t\tnone = 'none',\n\t\tany = 'any',\n\t\tsome = 'some',\n\t}\n\n\t/**\n\t * @deprecated\n\t */\n\texport type LimitedSystemPermissionsLevel = 'any' | 'none'\n\n\texport type SystemPermissions = {\n\t\treadonly history?: boolean | LimitedSystemPermissionsLevel\n\t\treadonly migrate?: boolean\n\t\treadonly assumeIdentity?: boolean\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t}\n\n\texport type ContentPermissions = {\n\t\treadonly assumeMembership?: MembershipMatchRule\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t}\n\n\texport interface BaseRolePermissions {\n\t\treadonly inherits?: readonly string[]\n\t\treadonly implicit?: boolean\n\t\treadonly tenant?: TenantPermissions\n\t\treadonly system?: SystemPermissions\n\t\treadonly content?: ContentPermissions\n\t\treadonly variables: Acl.Variables\n\t\treadonly stages?: StagesDefinition\n\t\treadonly entities: Permissions\n\t\treadonly debug?: boolean\n\t}\n\n\texport type RolePermissions =\n\t\t& BaseRolePermissions\n\t\t& {\n\t\t\treadonly [key: string] : JSONValue\n\t\t}\n\texport type Permissions = {\n\t\treadonly [entity: string]: EntityPermissions\n\t}\n\n\texport type Roles = { readonly [role: string]: RolePermissions }\n\texport type Variables = { readonly [name: string]: Variable }\n\n\texport type Schema = {\n\t\treadonly customPrimary?: boolean\n\t\treadonly roles: Acl.Roles\n\t}\n\n\texport type VariablesMap = {\n\t\treadonly [name: string]: Input.Condition\n\t}\n\n\texport interface MembershipVariable {\n\t\treadonly name: string\n\t\treadonly values: readonly string[]\n\t}\n\n\texport interface Membership {\n\t\treadonly role: string\n\t\treadonly variables: readonly MembershipVariable[]\n\t}\n}\n"],"names":["Acl","VariableType","Operation","SystemPermissionsLevel"],"mappings":";;AAGiBA,QAAAA,MAAAA;AAAAA,CAAV,CAAUA,SAAV;AACC,GAAA,CAAKC,kBAAL;AACNA,kBAAA,QAAS,IAAA;AACTA,kBAAA,YAAa,IAAA;AACbA,kBAAA,WAAY,IAAA;AAAA,EAHD,GAAAD,KAAA,iBAAAA,KAAA,eAAA,CAAA,EAAA;AAyDL,GAAA,CAAKE,eAAL;AACNA,eAAA,MAAO,IAAA;AACPA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AAAA,EAJE,GAAAF,KAAA,cAAAA,KAAA,YAAA,CAAA,EAAA;AAiDL,GAAA,CAAKG,4BAAL;AACNA,4BAAA,MAAO,IAAA;AACPA,4BAAA,KAAM,IAAA;AACNA,4BAAA,MAAO,IAAA;AAAA,EAHI,GAAAH,KAAA,2BAAAA,KAAA,yBAAA,CAAA,EAAA;AAAA,GA3GIA,QAAA,QAAAA,cAAA,CAAA,EAAA;"}
1
+ {"version":3,"file":"acl.cjs","sources":["../../../../../packages/schema/src/schema/acl.ts"],"sourcesContent":["import { Input } from './input'\nimport { JSONValue } from './json'\n\nexport namespace Acl {\n\texport enum VariableType {\n\t\tentity = 'entity',\n\t\tpredefined = 'predefined',\n\t\tcondition = 'condition',\n\n\t\t// currently unsupported\n\t\t// enum = 'enum',\n\t\t// column = 'column',\n\t}\n\n\texport type Variable =\n\t\t| EntityVariable\n\t\t| PredefinedVariable\n\t\t| ConditionVariable\n\t\t// | EnumVariable | ColumnValueVariable\n\n\n\n\texport type EntityVariable = {\n\t\treadonly type: VariableType.entity\n\t\treadonly entityName: string\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\texport type PredefinedVariableValue = 'identityID' | 'personID'\n\texport type PredefinedVariable = {\n\t\treadonly type: VariableType.predefined\n\t\treadonly value: PredefinedVariableValue\n\t}\n\n\n\texport type ConditionVariable = {\n\t\treadonly type: VariableType.condition\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\t// export interface EnumVariable {\n\t// \ttype: VariableType.enum\n\t// \tenumName: string\n\t// }\n\n\t// export interface ColumnValueVariable {\n\t// \ttype: VariableType.column\n\t// \tentityName: string\n\t// \tfieldName: string\n\t// }\n\n\texport type PredicateVariable = string //{ name: string }\n\texport type PredicateDefinition<E = never> = Input.Where<PredicateVariable | Input.Condition | E>\n\n\texport type PredicateMap = { readonly [name: string]: PredicateDefinition }\n\n\texport type EntityPermissions = {\n\t\treadonly predicates: PredicateMap\n\t\treadonly operations: EntityOperations\n\t}\n\n\texport enum Operation {\n\t\tread = 'read',\n\t\tcreate = 'create',\n\t\tupdate = 'update',\n\t\tdelete = 'delete',\n\t}\n\n\texport type EntityOperations = {\n\t\treadonly read?: FieldPermissions\n\t\treadonly create?: FieldPermissions\n\t\treadonly update?: FieldPermissions\n\t\treadonly delete?: Predicate\n\t\treadonly noRoot?: readonly `${Operation}`[]\n\n\t\treadonly customPrimary?: boolean\n\t\treadonly refreshMaterializedView?: boolean\n\t}\n\n\texport type FieldPermissions = { readonly [field: string]: Predicate }\n\n\texport type PredicateReference = string\n\texport type Predicate = PredicateReference | boolean\n\n\texport type AnyStage = '*'\n\texport type StagesDefinition = AnyStage | readonly string[]\n\n\texport type MembershipVariableMatchRule = true | string\n\n\texport type MembershipVariablesMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly [targetVariable: string]: MembershipVariableMatchRule\n\t\t}\n\n\texport type MembershipRoleMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly variables?: MembershipVariablesMatchRule\n\t\t}\n\n\texport type MembershipMatchRule = {\n\t\treadonly [role: string]: MembershipRoleMatchRule\n\t}\n\n\texport type TenantPermissions = {\n\t\treadonly invite?: boolean | MembershipMatchRule\n\t\treadonly unmanagedInvite?: boolean | MembershipMatchRule\n\t\treadonly view?: MembershipMatchRule\n\t\treadonly manage?: MembershipMatchRule\n\t}\n\n\texport enum SystemPermissionsLevel {\n\t\tnone = 'none',\n\t\tany = 'any',\n\t\tsome = 'some',\n\t}\n\n\t/**\n\t * @deprecated\n\t */\n\texport type LimitedSystemPermissionsLevel = 'any' | 'none'\n\n\texport type SystemPermissions = {\n\t\treadonly history?: boolean | LimitedSystemPermissionsLevel\n\t\treadonly migrate?: boolean\n\t\treadonly assumeIdentity?: boolean\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t}\n\n\texport type ContentPermissions = {\n\t\treadonly assumeMembership?: MembershipMatchRule\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t\treadonly refreshMaterializedView?: boolean\n\t}\n\n\texport interface BaseRolePermissions {\n\t\treadonly inherits?: readonly string[]\n\t\treadonly implicit?: boolean\n\t\treadonly tenant?: TenantPermissions\n\t\treadonly system?: SystemPermissions\n\t\treadonly content?: ContentPermissions\n\t\treadonly variables: Acl.Variables\n\t\treadonly stages?: StagesDefinition\n\t\treadonly entities: Permissions\n\t\treadonly debug?: boolean\n\t}\n\n\texport type RolePermissions =\n\t\t& BaseRolePermissions\n\t\t& {\n\t\t\treadonly [key: string] : JSONValue\n\t\t}\n\texport type Permissions = {\n\t\treadonly [entity: string]: EntityPermissions\n\t}\n\n\texport type Roles = { readonly [role: string]: RolePermissions }\n\texport type Variables = { readonly [name: string]: Variable }\n\n\texport type Schema = {\n\t\treadonly customPrimary?: boolean\n\t\treadonly roles: Acl.Roles\n\t}\n\n\texport type VariablesMap = {\n\t\treadonly [name: string]: Input.Condition\n\t}\n\n\texport interface MembershipVariable {\n\t\treadonly name: string\n\t\treadonly values: readonly string[]\n\t}\n\n\texport interface Membership {\n\t\treadonly role: string\n\t\treadonly variables: readonly MembershipVariable[]\n\t}\n}\n"],"names":["Acl","VariableType","Operation","SystemPermissionsLevel"],"mappings":";;AAGiBA,QAAAA,MAAAA;AAAAA,CAAV,CAAUA,SAAV;AACC,GAAA,CAAKC,kBAAL;AACNA,kBAAA,QAAS,IAAA;AACTA,kBAAA,YAAa,IAAA;AACbA,kBAAA,WAAY,IAAA;AAAA,EAHD,GAAAD,KAAA,iBAAAA,KAAA,eAAA,CAAA,EAAA;AAyDL,GAAA,CAAKE,eAAL;AACNA,eAAA,MAAO,IAAA;AACPA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AAAA,EAJE,GAAAF,KAAA,cAAAA,KAAA,YAAA,CAAA,EAAA;AAmDL,GAAA,CAAKG,4BAAL;AACNA,4BAAA,MAAO,IAAA;AACPA,4BAAA,KAAM,IAAA;AACNA,4BAAA,MAAO,IAAA;AAAA,EAHI,GAAAH,KAAA,2BAAAA,KAAA,yBAAA,CAAA,EAAA;AAAA,GA7GIA,QAAA,QAAAA,cAAA,CAAA,EAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"acl.js","sources":["../../../../../packages/schema/src/schema/acl.ts"],"sourcesContent":["import { Input } from './input'\nimport { JSONValue } from './json'\n\nexport namespace Acl {\n\texport enum VariableType {\n\t\tentity = 'entity',\n\t\tpredefined = 'predefined',\n\t\tcondition = 'condition',\n\n\t\t// currently unsupported\n\t\t// enum = 'enum',\n\t\t// column = 'column',\n\t}\n\n\texport type Variable =\n\t\t| EntityVariable\n\t\t| PredefinedVariable\n\t\t| ConditionVariable\n\t\t// | EnumVariable | ColumnValueVariable\n\n\n\n\texport type EntityVariable = {\n\t\treadonly type: VariableType.entity\n\t\treadonly entityName: string\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\texport type PredefinedVariableValue = 'identityID' | 'personID'\n\texport type PredefinedVariable = {\n\t\treadonly type: VariableType.predefined\n\t\treadonly value: PredefinedVariableValue\n\t}\n\n\n\texport type ConditionVariable = {\n\t\treadonly type: VariableType.condition\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\t// export interface EnumVariable {\n\t// \ttype: VariableType.enum\n\t// \tenumName: string\n\t// }\n\n\t// export interface ColumnValueVariable {\n\t// \ttype: VariableType.column\n\t// \tentityName: string\n\t// \tfieldName: string\n\t// }\n\n\texport type PredicateVariable = string //{ name: string }\n\texport type PredicateDefinition<E = never> = Input.Where<PredicateVariable | Input.Condition | E>\n\n\texport type PredicateMap = { readonly [name: string]: PredicateDefinition }\n\n\texport type EntityPermissions = {\n\t\treadonly predicates: PredicateMap\n\t\treadonly operations: EntityOperations\n\t}\n\n\texport enum Operation {\n\t\tread = 'read',\n\t\tcreate = 'create',\n\t\tupdate = 'update',\n\t\tdelete = 'delete',\n\t}\n\n\texport type EntityOperations = {\n\t\treadonly read?: FieldPermissions\n\t\treadonly create?: FieldPermissions\n\t\treadonly customPrimary?: boolean\n\t\treadonly update?: FieldPermissions\n\t\treadonly delete?: Predicate\n\t\treadonly noRoot?: readonly `${Operation}`[]\n\t}\n\n\texport type FieldPermissions = { readonly [field: string]: Predicate }\n\n\texport type PredicateReference = string\n\texport type Predicate = PredicateReference | boolean\n\n\texport type AnyStage = '*'\n\texport type StagesDefinition = AnyStage | readonly string[]\n\n\texport type MembershipVariableMatchRule = true | string\n\n\texport type MembershipVariablesMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly [targetVariable: string]: MembershipVariableMatchRule\n\t\t}\n\n\texport type MembershipRoleMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly variables?: MembershipVariablesMatchRule\n\t\t}\n\n\texport type MembershipMatchRule = {\n\t\treadonly [role: string]: MembershipRoleMatchRule\n\t}\n\n\texport type TenantPermissions = {\n\t\treadonly invite?: boolean | MembershipMatchRule\n\t\treadonly unmanagedInvite?: boolean | MembershipMatchRule\n\t\treadonly view?: MembershipMatchRule\n\t\treadonly manage?: MembershipMatchRule\n\t}\n\n\texport enum SystemPermissionsLevel {\n\t\tnone = 'none',\n\t\tany = 'any',\n\t\tsome = 'some',\n\t}\n\n\t/**\n\t * @deprecated\n\t */\n\texport type LimitedSystemPermissionsLevel = 'any' | 'none'\n\n\texport type SystemPermissions = {\n\t\treadonly history?: boolean | LimitedSystemPermissionsLevel\n\t\treadonly migrate?: boolean\n\t\treadonly assumeIdentity?: boolean\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t}\n\n\texport type ContentPermissions = {\n\t\treadonly assumeMembership?: MembershipMatchRule\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t}\n\n\texport interface BaseRolePermissions {\n\t\treadonly inherits?: readonly string[]\n\t\treadonly implicit?: boolean\n\t\treadonly tenant?: TenantPermissions\n\t\treadonly system?: SystemPermissions\n\t\treadonly content?: ContentPermissions\n\t\treadonly variables: Acl.Variables\n\t\treadonly stages?: StagesDefinition\n\t\treadonly entities: Permissions\n\t\treadonly debug?: boolean\n\t}\n\n\texport type RolePermissions =\n\t\t& BaseRolePermissions\n\t\t& {\n\t\t\treadonly [key: string] : JSONValue\n\t\t}\n\texport type Permissions = {\n\t\treadonly [entity: string]: EntityPermissions\n\t}\n\n\texport type Roles = { readonly [role: string]: RolePermissions }\n\texport type Variables = { readonly [name: string]: Variable }\n\n\texport type Schema = {\n\t\treadonly customPrimary?: boolean\n\t\treadonly roles: Acl.Roles\n\t}\n\n\texport type VariablesMap = {\n\t\treadonly [name: string]: Input.Condition\n\t}\n\n\texport interface MembershipVariable {\n\t\treadonly name: string\n\t\treadonly values: readonly string[]\n\t}\n\n\texport interface Membership {\n\t\treadonly role: string\n\t\treadonly variables: readonly MembershipVariable[]\n\t}\n}\n"],"names":["Acl","VariableType","Operation","SystemPermissionsLevel"],"mappings":"AAGiB,IAAA;AAAA,CAAV,CAAUA,SAAV;AACC,GAAA,CAAKC,kBAAL;AACNA,kBAAA,QAAS,IAAA;AACTA,kBAAA,YAAa,IAAA;AACbA,kBAAA,WAAY,IAAA;AAAA,EAHD,GAAAD,KAAA,iBAAAA,KAAA,eAAA,CAAA,EAAA;AAyDL,GAAA,CAAKE,eAAL;AACNA,eAAA,MAAO,IAAA;AACPA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AAAA,EAJE,GAAAF,KAAA,cAAAA,KAAA,YAAA,CAAA,EAAA;AAiDL,GAAA,CAAKG,4BAAL;AACNA,4BAAA,MAAO,IAAA;AACPA,4BAAA,KAAM,IAAA;AACNA,4BAAA,MAAO,IAAA;AAAA,EAHI,GAAAH,KAAA,2BAAAA,KAAA,yBAAA,CAAA,EAAA;AAAA,GA3GI,QAAA,MAAA,CAAA,EAAA;"}
1
+ {"version":3,"file":"acl.js","sources":["../../../../../packages/schema/src/schema/acl.ts"],"sourcesContent":["import { Input } from './input'\nimport { JSONValue } from './json'\n\nexport namespace Acl {\n\texport enum VariableType {\n\t\tentity = 'entity',\n\t\tpredefined = 'predefined',\n\t\tcondition = 'condition',\n\n\t\t// currently unsupported\n\t\t// enum = 'enum',\n\t\t// column = 'column',\n\t}\n\n\texport type Variable =\n\t\t| EntityVariable\n\t\t| PredefinedVariable\n\t\t| ConditionVariable\n\t\t// | EnumVariable | ColumnValueVariable\n\n\n\n\texport type EntityVariable = {\n\t\treadonly type: VariableType.entity\n\t\treadonly entityName: string\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\texport type PredefinedVariableValue = 'identityID' | 'personID'\n\texport type PredefinedVariable = {\n\t\treadonly type: VariableType.predefined\n\t\treadonly value: PredefinedVariableValue\n\t}\n\n\n\texport type ConditionVariable = {\n\t\treadonly type: VariableType.condition\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\t// export interface EnumVariable {\n\t// \ttype: VariableType.enum\n\t// \tenumName: string\n\t// }\n\n\t// export interface ColumnValueVariable {\n\t// \ttype: VariableType.column\n\t// \tentityName: string\n\t// \tfieldName: string\n\t// }\n\n\texport type PredicateVariable = string //{ name: string }\n\texport type PredicateDefinition<E = never> = Input.Where<PredicateVariable | Input.Condition | E>\n\n\texport type PredicateMap = { readonly [name: string]: PredicateDefinition }\n\n\texport type EntityPermissions = {\n\t\treadonly predicates: PredicateMap\n\t\treadonly operations: EntityOperations\n\t}\n\n\texport enum Operation {\n\t\tread = 'read',\n\t\tcreate = 'create',\n\t\tupdate = 'update',\n\t\tdelete = 'delete',\n\t}\n\n\texport type EntityOperations = {\n\t\treadonly read?: FieldPermissions\n\t\treadonly create?: FieldPermissions\n\t\treadonly update?: FieldPermissions\n\t\treadonly delete?: Predicate\n\t\treadonly noRoot?: readonly `${Operation}`[]\n\n\t\treadonly customPrimary?: boolean\n\t\treadonly refreshMaterializedView?: boolean\n\t}\n\n\texport type FieldPermissions = { readonly [field: string]: Predicate }\n\n\texport type PredicateReference = string\n\texport type Predicate = PredicateReference | boolean\n\n\texport type AnyStage = '*'\n\texport type StagesDefinition = AnyStage | readonly string[]\n\n\texport type MembershipVariableMatchRule = true | string\n\n\texport type MembershipVariablesMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly [targetVariable: string]: MembershipVariableMatchRule\n\t\t}\n\n\texport type MembershipRoleMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly variables?: MembershipVariablesMatchRule\n\t\t}\n\n\texport type MembershipMatchRule = {\n\t\treadonly [role: string]: MembershipRoleMatchRule\n\t}\n\n\texport type TenantPermissions = {\n\t\treadonly invite?: boolean | MembershipMatchRule\n\t\treadonly unmanagedInvite?: boolean | MembershipMatchRule\n\t\treadonly view?: MembershipMatchRule\n\t\treadonly manage?: MembershipMatchRule\n\t}\n\n\texport enum SystemPermissionsLevel {\n\t\tnone = 'none',\n\t\tany = 'any',\n\t\tsome = 'some',\n\t}\n\n\t/**\n\t * @deprecated\n\t */\n\texport type LimitedSystemPermissionsLevel = 'any' | 'none'\n\n\texport type SystemPermissions = {\n\t\treadonly history?: boolean | LimitedSystemPermissionsLevel\n\t\treadonly migrate?: boolean\n\t\treadonly assumeIdentity?: boolean\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t}\n\n\texport type ContentPermissions = {\n\t\treadonly assumeMembership?: MembershipMatchRule\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t\treadonly refreshMaterializedView?: boolean\n\t}\n\n\texport interface BaseRolePermissions {\n\t\treadonly inherits?: readonly string[]\n\t\treadonly implicit?: boolean\n\t\treadonly tenant?: TenantPermissions\n\t\treadonly system?: SystemPermissions\n\t\treadonly content?: ContentPermissions\n\t\treadonly variables: Acl.Variables\n\t\treadonly stages?: StagesDefinition\n\t\treadonly entities: Permissions\n\t\treadonly debug?: boolean\n\t}\n\n\texport type RolePermissions =\n\t\t& BaseRolePermissions\n\t\t& {\n\t\t\treadonly [key: string] : JSONValue\n\t\t}\n\texport type Permissions = {\n\t\treadonly [entity: string]: EntityPermissions\n\t}\n\n\texport type Roles = { readonly [role: string]: RolePermissions }\n\texport type Variables = { readonly [name: string]: Variable }\n\n\texport type Schema = {\n\t\treadonly customPrimary?: boolean\n\t\treadonly roles: Acl.Roles\n\t}\n\n\texport type VariablesMap = {\n\t\treadonly [name: string]: Input.Condition\n\t}\n\n\texport interface MembershipVariable {\n\t\treadonly name: string\n\t\treadonly values: readonly string[]\n\t}\n\n\texport interface Membership {\n\t\treadonly role: string\n\t\treadonly variables: readonly MembershipVariable[]\n\t}\n}\n"],"names":["Acl","VariableType","Operation","SystemPermissionsLevel"],"mappings":"AAGiB,IAAA;AAAA,CAAV,CAAUA,SAAV;AACC,GAAA,CAAKC,kBAAL;AACNA,kBAAA,QAAS,IAAA;AACTA,kBAAA,YAAa,IAAA;AACbA,kBAAA,WAAY,IAAA;AAAA,EAHD,GAAAD,KAAA,iBAAAA,KAAA,eAAA,CAAA,EAAA;AAyDL,GAAA,CAAKE,eAAL;AACNA,eAAA,MAAO,IAAA;AACPA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AAAA,EAJE,GAAAF,KAAA,cAAAA,KAAA,YAAA,CAAA,EAAA;AAmDL,GAAA,CAAKG,4BAAL;AACNA,4BAAA,MAAO,IAAA;AACPA,4BAAA,KAAM,IAAA;AACNA,4BAAA,MAAO,IAAA;AAAA,EAHI,GAAAH,KAAA,2BAAAA,KAAA,yBAAA,CAAA,EAAA;AAAA,GA7GI,QAAA,MAAA,CAAA,EAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"input.cjs","sources":["../../../../../packages/schema/src/schema/input.ts"],"sourcesContent":["import { Value } from './value'\n\nexport namespace Input {\n\texport type PrimaryValue<E = never> = Value.PrimaryValue<E>\n\texport type ColumnValue<E = never> = Value.FieldValue<E>\n\n\texport enum UpdateRelationOperation {\n\t\tconnect = 'connect',\n\t\tdisconnect = 'disconnect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t\tupdate = 'update',\n\t\tupsert = 'upsert',\n\t\tdelete = 'delete',\n\t}\n\n\texport enum CreateRelationOperation {\n\t\tconnect = 'connect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t}\n\n\texport interface ConnectRelationInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t}\n\n\texport interface CreateRelationInput<E = never> {\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateRelationInput<E = never> {\n\t\tconnectOrCreate: ConnectOrCreateInput<E>\n\t}\n\n\texport interface DisconnectSpecifiedRelationInput<E = never> {\n\t\tdisconnect: UniqueWhere<E>\n\t}\n\n\texport interface DeleteSpecifiedRelationInput<E = never> {\n\t\tdelete: UniqueWhere<E>\n\t}\n\n\texport interface UpdateSpecifiedRelationInput<E = never> {\n\t\tupdate: { by: UniqueWhere<E>; data: UpdateDataInput<E> }\n\t}\n\n\texport interface UpsertSpecifiedRelationInput<E = never> {\n\t\tupsert: { by: UniqueWhere<E>; update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface DisconnectRelationInput {\n\t\tdisconnect: true\n\t}\n\n\texport interface UpdateRelationInput<E = never> {\n\t\tupdate: UpdateDataInput<E>\n\t}\n\n\texport interface DeleteRelationInput {\n\t\tdelete: true\n\t}\n\n\texport interface UpsertRelationInput<E = never> {\n\t\tupsert: { update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface CreateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | CreateOneRelationInput<E> | CreateManyRelationInput<E>\n\t}\n\n\texport type CreateOneRelationInput<E = never> = { alias?: string } & (\n\t\t| ConnectRelationInput<E>\n\t\t| CreateRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t)\n\n\texport type CreateManyRelationInput<E = never> = Array<CreateOneRelationInput<E>>\n\n\texport interface UpdateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | UpdateOneRelationInput<E> | UpdateManyRelationInput<E>\n\t}\n\n\texport interface UpdateInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tdata: UpdateDataInput<E>\n\t}\n\n\texport interface UpsertInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tupdate: UpdateDataInput<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface CreateInput<E = never> {\n\t\tdata: CreateDataInput<E>\n\t}\n\n\texport interface DeleteInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface UniqueQueryInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface ListQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\toffset?: number\n\t\tlimit?: number\n\t}\n\n\texport interface PaginationQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\tskip?: number\n\t\tfirst?: number\n\t}\n\n\t/** @deprecated */\n\texport type SelectQueryInput<E = never> = PaginationQueryInput<E>\n\n\texport type UpdateOneRelationInput<E = never> =\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteRelationInput\n\t\t| DisconnectRelationInput\n\t\t| UpdateRelationInput<E>\n\t\t| UpsertRelationInput<E>\n\n\texport type UpdateManyRelationInputItem<E = never> = { alias?: string } & (\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteSpecifiedRelationInput<E>\n\t\t| DisconnectSpecifiedRelationInput<E>\n\t\t| UpdateSpecifiedRelationInput<E>\n\t\t| UpsertSpecifiedRelationInput<E>\n\t)\n\n\texport type UpdateManyRelationInput<E = never> = Array<UpdateManyRelationInputItem<E>>\n\n\texport enum OrderDirection {\n\t\tasc = 'asc',\n\t\tascNullsFirst = 'ascNullsFirst',\n\t\tdesc = 'desc',\n\t\tdescNullsLast = 'descNullsLast',\n\n\t\t/* eslint-disable @typescript-eslint/no-duplicate-enum-values */\n\t\t/** @deprecated use ascNullsFirst*/\n\t\tascNullFirst = 'ascNullsFirst',\n\t\t/* eslint-enable @typescript-eslint/no-duplicate-enum-values */\n\t}\n\n\t// generics required by admin\n\texport type FieldOrderBy<T = OrderDirection> = T | OrderBy<T>\n\n\texport interface OrderByFields<T = OrderDirection> {\n\t\t[fieldName: string]: FieldOrderBy<T>\n\t}\n\n\texport type OrderBy<T = OrderDirection> = OrderByFields<T> & { _random?: boolean; _randomSeeded?: number }\n\n\texport type Condition<T = Value.FieldValue> = {\n\t\treadonly and?: readonly Condition<T>[]\n\t\treadonly or?: readonly Condition<T>[]\n\t\treadonly not?: Condition<T>\n\t\treadonly eq?: T\n\t\treadonly notEq?: T\n\t\treadonly null?: boolean // deprecated\n\t\treadonly isNull?: boolean\n\t\treadonly in?: readonly T[]\n\t\treadonly notIn?: readonly T[]\n\t\treadonly lt?: T\n\t\treadonly lte?: T\n\t\treadonly gt?: T\n\t\treadonly gte?: T\n\t\treadonly never?: true\n\t\treadonly always?: true\n\t\treadonly contains?: string\n\t\treadonly startsWith?: string\n\t\treadonly endsWith?: string\n\t\treadonly containsCI?: string\n\t\treadonly startsWithCI?: string\n\t\treadonly endsWithCI?: string\n\t}\n\n\texport type UniqueWhere<E = never> = {\n\t\treadonly [field: string]: Value.PrimaryValue<E> | UniqueWhere<E>\n\t}\n\n\texport type ComposedWhere<C, Opt = never> = {\n\t\treadonly and?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly or?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly not?: Where<C, Opt> | Opt\n\t}\n\n\texport interface FieldWhere<C = Condition, Opt = never> {\n\t\treadonly [name: string]: Opt | C | Where<C, Opt> | readonly (Where<C, Opt> | Opt)[] //last one if for ComposedWhere\n\t}\n\n\texport type Where<C = Condition, Opt = never> = ComposedWhere<C, Opt> & FieldWhere<C, Opt>\n\n\texport type OptionalWhere<E = never> = Where<Condition<Value.FieldValue<E>>, null | undefined>\n\texport type OptionalFieldWhere<E = never> = FieldWhere<Condition<Value.FieldValue<E>>, null | undefined>\n\n\texport enum FieldMeta {\n\t\treadable = 'readable',\n\t\tupdatable = 'updatable',\n\t}\n}\n"],"names":["Input","UpdateRelationOperation","CreateRelationOperation","OrderDirection","FieldMeta"],"mappings":";;AAEiBA,QAAAA,QAAAA;AAAAA,CAAV,CAAUA,WAAV;AAIC,GAAA,CAAKC,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,YAAa,IAAA;AACbA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAClBA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AAAA,EAPE,GAAAD,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAUL,GAAA,CAAKE,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAAA,EAHP,GAAAF,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAwIL,GAAA,CAAKG,oBAAL;AACNA,oBAAA,KAAM,IAAA;AACNA,oBAAA,eAAgB,IAAA;AAChBA,oBAAA,MAAO,IAAA;AACPA,oBAAA,eAAgB,IAAA;AAIhBA,oBAAA,cAAe,IAAA;AAAA,EARJ,GAAAH,OAAA,mBAAAA,OAAA,iBAAA,CAAA,EAAA;AAgEL,GAAA,CAAKI,eAAL;AACNA,eAAA,UAAW,IAAA;AACXA,eAAA,WAAY,IAAA;AAAA,EAFD,GAAAJ,OAAA,cAAAA,OAAA,YAAA,CAAA,EAAA;AAAA,GAtNIA,QAAA,UAAAA,gBAAA,CAAA,EAAA;"}
1
+ {"version":3,"file":"input.cjs","sources":["../../../../../packages/schema/src/schema/input.ts"],"sourcesContent":["import { Value } from './value'\n\nexport namespace Input {\n\texport type PrimaryValue<E = never> = Value.PrimaryValue<E>\n\texport type ColumnValue<E = never> = Value.FieldValue<E>\n\n\texport enum UpdateRelationOperation {\n\t\tconnect = 'connect',\n\t\tdisconnect = 'disconnect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t\tupdate = 'update',\n\t\tupsert = 'upsert',\n\t\tdelete = 'delete',\n\t}\n\n\texport enum CreateRelationOperation {\n\t\tconnect = 'connect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t}\n\n\texport interface ConnectRelationInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t}\n\n\texport interface CreateRelationInput<E = never> {\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateRelationInput<E = never> {\n\t\tconnectOrCreate: ConnectOrCreateInput<E>\n\t}\n\n\texport interface DisconnectSpecifiedRelationInput<E = never> {\n\t\tdisconnect: UniqueWhere<E>\n\t}\n\n\texport interface DeleteSpecifiedRelationInput<E = never> {\n\t\tdelete: UniqueWhere<E>\n\t}\n\n\texport interface UpdateSpecifiedRelationInput<E = never> {\n\t\tupdate: { by: UniqueWhere<E>; data: UpdateDataInput<E> }\n\t}\n\n\texport interface UpsertSpecifiedRelationInput<E = never> {\n\t\tupsert: { by: UniqueWhere<E>; update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface DisconnectRelationInput {\n\t\tdisconnect: true\n\t}\n\n\texport interface UpdateRelationInput<E = never> {\n\t\tupdate: UpdateDataInput<E>\n\t}\n\n\texport interface DeleteRelationInput {\n\t\tdelete: true\n\t}\n\n\texport interface UpsertRelationInput<E = never> {\n\t\tupsert: { update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface CreateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | CreateOneRelationInput<E> | CreateManyRelationInput<E>\n\t}\n\n\texport type CreateOneRelationInput<E = never> = { alias?: string } & (\n\t\t| ConnectRelationInput<E>\n\t\t| CreateRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t)\n\n\texport type CreateManyRelationInput<E = never> = Array<CreateOneRelationInput<E>>\n\n\texport interface UpdateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | UpdateOneRelationInput<E> | UpdateManyRelationInput<E>\n\t}\n\n\texport interface UpdateInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tdata: UpdateDataInput<E>\n\t}\n\n\texport interface UpsertInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tupdate: UpdateDataInput<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface CreateInput<E = never> {\n\t\tdata: CreateDataInput<E>\n\t}\n\n\texport interface DeleteInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface UniqueQueryInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface ListQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\toffset?: number\n\t\tlimit?: number\n\t}\n\n\texport interface PaginationQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\tskip?: number\n\t\tfirst?: number\n\t}\n\n\t/** @deprecated */\n\texport type SelectQueryInput<E = never> = PaginationQueryInput<E>\n\n\texport type UpdateOneRelationInput<E = never> =\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteRelationInput\n\t\t| DisconnectRelationInput\n\t\t| UpdateRelationInput<E>\n\t\t| UpsertRelationInput<E>\n\n\texport type UpdateManyRelationInputItem<E = never> = { alias?: string } & (\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteSpecifiedRelationInput<E>\n\t\t| DisconnectSpecifiedRelationInput<E>\n\t\t| UpdateSpecifiedRelationInput<E>\n\t\t| UpsertSpecifiedRelationInput<E>\n\t)\n\n\texport type UpdateManyRelationInput<E = never> = Array<UpdateManyRelationInputItem<E>>\n\n\texport enum OrderDirection {\n\t\tasc = 'asc',\n\t\tascNullsFirst = 'ascNullsFirst',\n\t\tdesc = 'desc',\n\t\tdescNullsLast = 'descNullsLast',\n\n\t\t/* eslint-disable @typescript-eslint/no-duplicate-enum-values */\n\t\t/** @deprecated use ascNullsFirst*/\n\t\tascNullFirst = 'ascNullsFirst',\n\t\t/* eslint-enable @typescript-eslint/no-duplicate-enum-values */\n\t}\n\n\t// generics required by admin\n\texport type FieldOrderBy<T = OrderDirection> = T | OrderBy<T>\n\n\texport interface OrderByFields<T = OrderDirection> {\n\t\t[fieldName: string]: FieldOrderBy<T>\n\t}\n\n\texport type OrderBy<T = OrderDirection> = OrderByFields<T> & { _random?: boolean; _randomSeeded?: number }\n\n\texport type Condition<T = Value.FieldValue> = {\n\t\t// boolean\n\t\treadonly and?: readonly Condition<T>[]\n\t\treadonly or?: readonly Condition<T>[]\n\t\treadonly not?: Condition<T>\n\n\t\t// null\n\t\treadonly isNull?: boolean\n\n\t\t// basic\n\t\treadonly eq?: T\n\t\treadonly notEq?: T\n\t\treadonly in?: readonly T[]\n\t\treadonly notIn?: readonly T[]\n\t\treadonly lt?: T\n\t\treadonly lte?: T\n\t\treadonly gt?: T\n\t\treadonly gte?: T\n\n\t\t// array\n\t\treadonly minLength?: number\n\t\treadonly maxLength?: number\n\t\treadonly includes?: T\n\n\t\t// string only\n\t\treadonly contains?: string\n\t\treadonly startsWith?: string\n\t\treadonly endsWith?: string\n\t\treadonly containsCI?: string\n\t\treadonly startsWithCI?: string\n\t\treadonly endsWithCI?: string\n\n\t\t// special\n\t\treadonly never?: true\n\t\treadonly always?: true\n\n\t\t// deprecated\n\t\treadonly null?: boolean\n\t}\n\n\texport type UniqueWhere<E = never> = {\n\t\treadonly [field: string]: Value.PrimaryValue<E> | UniqueWhere<E>\n\t}\n\n\texport type ComposedWhere<C, Opt = never> = {\n\t\treadonly and?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly or?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly not?: Where<C, Opt> | Opt\n\t}\n\n\texport interface FieldWhere<C = Condition, Opt = never> {\n\t\treadonly [name: string]: Opt | C | Where<C, Opt> | readonly (Where<C, Opt> | Opt)[] //last one if for ComposedWhere\n\t}\n\n\texport type Where<C = Condition, Opt = never> = ComposedWhere<C, Opt> & FieldWhere<C, Opt>\n\n\texport type OptionalWhere<E = never> = Where<Condition<Value.FieldValue<E>>, null | undefined>\n\texport type OptionalFieldWhere<E = never> = FieldWhere<Condition<Value.FieldValue<E>>, null | undefined>\n\n\texport enum FieldMeta {\n\t\treadable = 'readable',\n\t\tupdatable = 'updatable',\n\t}\n}\n"],"names":["Input","UpdateRelationOperation","CreateRelationOperation","OrderDirection","FieldMeta"],"mappings":";;AAEiBA,QAAAA,QAAAA;AAAAA,CAAV,CAAUA,WAAV;AAIC,GAAA,CAAKC,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,YAAa,IAAA;AACbA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAClBA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AAAA,EAPE,GAAAD,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAUL,GAAA,CAAKE,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAAA,EAHP,GAAAF,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAwIL,GAAA,CAAKG,oBAAL;AACNA,oBAAA,KAAM,IAAA;AACNA,oBAAA,eAAgB,IAAA;AAChBA,oBAAA,MAAO,IAAA;AACPA,oBAAA,eAAgB,IAAA;AAIhBA,oBAAA,cAAe,IAAA;AAAA,EARJ,GAAAH,OAAA,mBAAAA,OAAA,iBAAA,CAAA,EAAA;AAgFL,GAAA,CAAKI,eAAL;AACNA,eAAA,UAAW,IAAA;AACXA,eAAA,WAAY,IAAA;AAAA,EAFD,GAAAJ,OAAA,cAAAA,OAAA,YAAA,CAAA,EAAA;AAAA,GAtOIA,QAAA,UAAAA,gBAAA,CAAA,EAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"input.js","sources":["../../../../../packages/schema/src/schema/input.ts"],"sourcesContent":["import { Value } from './value'\n\nexport namespace Input {\n\texport type PrimaryValue<E = never> = Value.PrimaryValue<E>\n\texport type ColumnValue<E = never> = Value.FieldValue<E>\n\n\texport enum UpdateRelationOperation {\n\t\tconnect = 'connect',\n\t\tdisconnect = 'disconnect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t\tupdate = 'update',\n\t\tupsert = 'upsert',\n\t\tdelete = 'delete',\n\t}\n\n\texport enum CreateRelationOperation {\n\t\tconnect = 'connect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t}\n\n\texport interface ConnectRelationInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t}\n\n\texport interface CreateRelationInput<E = never> {\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateRelationInput<E = never> {\n\t\tconnectOrCreate: ConnectOrCreateInput<E>\n\t}\n\n\texport interface DisconnectSpecifiedRelationInput<E = never> {\n\t\tdisconnect: UniqueWhere<E>\n\t}\n\n\texport interface DeleteSpecifiedRelationInput<E = never> {\n\t\tdelete: UniqueWhere<E>\n\t}\n\n\texport interface UpdateSpecifiedRelationInput<E = never> {\n\t\tupdate: { by: UniqueWhere<E>; data: UpdateDataInput<E> }\n\t}\n\n\texport interface UpsertSpecifiedRelationInput<E = never> {\n\t\tupsert: { by: UniqueWhere<E>; update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface DisconnectRelationInput {\n\t\tdisconnect: true\n\t}\n\n\texport interface UpdateRelationInput<E = never> {\n\t\tupdate: UpdateDataInput<E>\n\t}\n\n\texport interface DeleteRelationInput {\n\t\tdelete: true\n\t}\n\n\texport interface UpsertRelationInput<E = never> {\n\t\tupsert: { update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface CreateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | CreateOneRelationInput<E> | CreateManyRelationInput<E>\n\t}\n\n\texport type CreateOneRelationInput<E = never> = { alias?: string } & (\n\t\t| ConnectRelationInput<E>\n\t\t| CreateRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t)\n\n\texport type CreateManyRelationInput<E = never> = Array<CreateOneRelationInput<E>>\n\n\texport interface UpdateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | UpdateOneRelationInput<E> | UpdateManyRelationInput<E>\n\t}\n\n\texport interface UpdateInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tdata: UpdateDataInput<E>\n\t}\n\n\texport interface UpsertInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tupdate: UpdateDataInput<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface CreateInput<E = never> {\n\t\tdata: CreateDataInput<E>\n\t}\n\n\texport interface DeleteInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface UniqueQueryInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface ListQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\toffset?: number\n\t\tlimit?: number\n\t}\n\n\texport interface PaginationQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\tskip?: number\n\t\tfirst?: number\n\t}\n\n\t/** @deprecated */\n\texport type SelectQueryInput<E = never> = PaginationQueryInput<E>\n\n\texport type UpdateOneRelationInput<E = never> =\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteRelationInput\n\t\t| DisconnectRelationInput\n\t\t| UpdateRelationInput<E>\n\t\t| UpsertRelationInput<E>\n\n\texport type UpdateManyRelationInputItem<E = never> = { alias?: string } & (\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteSpecifiedRelationInput<E>\n\t\t| DisconnectSpecifiedRelationInput<E>\n\t\t| UpdateSpecifiedRelationInput<E>\n\t\t| UpsertSpecifiedRelationInput<E>\n\t)\n\n\texport type UpdateManyRelationInput<E = never> = Array<UpdateManyRelationInputItem<E>>\n\n\texport enum OrderDirection {\n\t\tasc = 'asc',\n\t\tascNullsFirst = 'ascNullsFirst',\n\t\tdesc = 'desc',\n\t\tdescNullsLast = 'descNullsLast',\n\n\t\t/* eslint-disable @typescript-eslint/no-duplicate-enum-values */\n\t\t/** @deprecated use ascNullsFirst*/\n\t\tascNullFirst = 'ascNullsFirst',\n\t\t/* eslint-enable @typescript-eslint/no-duplicate-enum-values */\n\t}\n\n\t// generics required by admin\n\texport type FieldOrderBy<T = OrderDirection> = T | OrderBy<T>\n\n\texport interface OrderByFields<T = OrderDirection> {\n\t\t[fieldName: string]: FieldOrderBy<T>\n\t}\n\n\texport type OrderBy<T = OrderDirection> = OrderByFields<T> & { _random?: boolean; _randomSeeded?: number }\n\n\texport type Condition<T = Value.FieldValue> = {\n\t\treadonly and?: readonly Condition<T>[]\n\t\treadonly or?: readonly Condition<T>[]\n\t\treadonly not?: Condition<T>\n\t\treadonly eq?: T\n\t\treadonly notEq?: T\n\t\treadonly null?: boolean // deprecated\n\t\treadonly isNull?: boolean\n\t\treadonly in?: readonly T[]\n\t\treadonly notIn?: readonly T[]\n\t\treadonly lt?: T\n\t\treadonly lte?: T\n\t\treadonly gt?: T\n\t\treadonly gte?: T\n\t\treadonly never?: true\n\t\treadonly always?: true\n\t\treadonly contains?: string\n\t\treadonly startsWith?: string\n\t\treadonly endsWith?: string\n\t\treadonly containsCI?: string\n\t\treadonly startsWithCI?: string\n\t\treadonly endsWithCI?: string\n\t}\n\n\texport type UniqueWhere<E = never> = {\n\t\treadonly [field: string]: Value.PrimaryValue<E> | UniqueWhere<E>\n\t}\n\n\texport type ComposedWhere<C, Opt = never> = {\n\t\treadonly and?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly or?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly not?: Where<C, Opt> | Opt\n\t}\n\n\texport interface FieldWhere<C = Condition, Opt = never> {\n\t\treadonly [name: string]: Opt | C | Where<C, Opt> | readonly (Where<C, Opt> | Opt)[] //last one if for ComposedWhere\n\t}\n\n\texport type Where<C = Condition, Opt = never> = ComposedWhere<C, Opt> & FieldWhere<C, Opt>\n\n\texport type OptionalWhere<E = never> = Where<Condition<Value.FieldValue<E>>, null | undefined>\n\texport type OptionalFieldWhere<E = never> = FieldWhere<Condition<Value.FieldValue<E>>, null | undefined>\n\n\texport enum FieldMeta {\n\t\treadable = 'readable',\n\t\tupdatable = 'updatable',\n\t}\n}\n"],"names":["Input","UpdateRelationOperation","CreateRelationOperation","OrderDirection","FieldMeta"],"mappings":"AAEiB,IAAA;AAAA,CAAV,CAAUA,WAAV;AAIC,GAAA,CAAKC,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,YAAa,IAAA;AACbA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAClBA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AAAA,EAPE,GAAAD,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAUL,GAAA,CAAKE,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAAA,EAHP,GAAAF,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAwIL,GAAA,CAAKG,oBAAL;AACNA,oBAAA,KAAM,IAAA;AACNA,oBAAA,eAAgB,IAAA;AAChBA,oBAAA,MAAO,IAAA;AACPA,oBAAA,eAAgB,IAAA;AAIhBA,oBAAA,cAAe,IAAA;AAAA,EARJ,GAAAH,OAAA,mBAAAA,OAAA,iBAAA,CAAA,EAAA;AAgEL,GAAA,CAAKI,eAAL;AACNA,eAAA,UAAW,IAAA;AACXA,eAAA,WAAY,IAAA;AAAA,EAFD,GAAAJ,OAAA,cAAAA,OAAA,YAAA,CAAA,EAAA;AAAA,GAtNI,UAAA,QAAA,CAAA,EAAA;"}
1
+ {"version":3,"file":"input.js","sources":["../../../../../packages/schema/src/schema/input.ts"],"sourcesContent":["import { Value } from './value'\n\nexport namespace Input {\n\texport type PrimaryValue<E = never> = Value.PrimaryValue<E>\n\texport type ColumnValue<E = never> = Value.FieldValue<E>\n\n\texport enum UpdateRelationOperation {\n\t\tconnect = 'connect',\n\t\tdisconnect = 'disconnect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t\tupdate = 'update',\n\t\tupsert = 'upsert',\n\t\tdelete = 'delete',\n\t}\n\n\texport enum CreateRelationOperation {\n\t\tconnect = 'connect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t}\n\n\texport interface ConnectRelationInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t}\n\n\texport interface CreateRelationInput<E = never> {\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateRelationInput<E = never> {\n\t\tconnectOrCreate: ConnectOrCreateInput<E>\n\t}\n\n\texport interface DisconnectSpecifiedRelationInput<E = never> {\n\t\tdisconnect: UniqueWhere<E>\n\t}\n\n\texport interface DeleteSpecifiedRelationInput<E = never> {\n\t\tdelete: UniqueWhere<E>\n\t}\n\n\texport interface UpdateSpecifiedRelationInput<E = never> {\n\t\tupdate: { by: UniqueWhere<E>; data: UpdateDataInput<E> }\n\t}\n\n\texport interface UpsertSpecifiedRelationInput<E = never> {\n\t\tupsert: { by: UniqueWhere<E>; update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface DisconnectRelationInput {\n\t\tdisconnect: true\n\t}\n\n\texport interface UpdateRelationInput<E = never> {\n\t\tupdate: UpdateDataInput<E>\n\t}\n\n\texport interface DeleteRelationInput {\n\t\tdelete: true\n\t}\n\n\texport interface UpsertRelationInput<E = never> {\n\t\tupsert: { update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface CreateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | CreateOneRelationInput<E> | CreateManyRelationInput<E>\n\t}\n\n\texport type CreateOneRelationInput<E = never> = { alias?: string } & (\n\t\t| ConnectRelationInput<E>\n\t\t| CreateRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t)\n\n\texport type CreateManyRelationInput<E = never> = Array<CreateOneRelationInput<E>>\n\n\texport interface UpdateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | UpdateOneRelationInput<E> | UpdateManyRelationInput<E>\n\t}\n\n\texport interface UpdateInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tdata: UpdateDataInput<E>\n\t}\n\n\texport interface UpsertInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tupdate: UpdateDataInput<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface CreateInput<E = never> {\n\t\tdata: CreateDataInput<E>\n\t}\n\n\texport interface DeleteInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface UniqueQueryInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface ListQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\toffset?: number\n\t\tlimit?: number\n\t}\n\n\texport interface PaginationQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\tskip?: number\n\t\tfirst?: number\n\t}\n\n\t/** @deprecated */\n\texport type SelectQueryInput<E = never> = PaginationQueryInput<E>\n\n\texport type UpdateOneRelationInput<E = never> =\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteRelationInput\n\t\t| DisconnectRelationInput\n\t\t| UpdateRelationInput<E>\n\t\t| UpsertRelationInput<E>\n\n\texport type UpdateManyRelationInputItem<E = never> = { alias?: string } & (\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteSpecifiedRelationInput<E>\n\t\t| DisconnectSpecifiedRelationInput<E>\n\t\t| UpdateSpecifiedRelationInput<E>\n\t\t| UpsertSpecifiedRelationInput<E>\n\t)\n\n\texport type UpdateManyRelationInput<E = never> = Array<UpdateManyRelationInputItem<E>>\n\n\texport enum OrderDirection {\n\t\tasc = 'asc',\n\t\tascNullsFirst = 'ascNullsFirst',\n\t\tdesc = 'desc',\n\t\tdescNullsLast = 'descNullsLast',\n\n\t\t/* eslint-disable @typescript-eslint/no-duplicate-enum-values */\n\t\t/** @deprecated use ascNullsFirst*/\n\t\tascNullFirst = 'ascNullsFirst',\n\t\t/* eslint-enable @typescript-eslint/no-duplicate-enum-values */\n\t}\n\n\t// generics required by admin\n\texport type FieldOrderBy<T = OrderDirection> = T | OrderBy<T>\n\n\texport interface OrderByFields<T = OrderDirection> {\n\t\t[fieldName: string]: FieldOrderBy<T>\n\t}\n\n\texport type OrderBy<T = OrderDirection> = OrderByFields<T> & { _random?: boolean; _randomSeeded?: number }\n\n\texport type Condition<T = Value.FieldValue> = {\n\t\t// boolean\n\t\treadonly and?: readonly Condition<T>[]\n\t\treadonly or?: readonly Condition<T>[]\n\t\treadonly not?: Condition<T>\n\n\t\t// null\n\t\treadonly isNull?: boolean\n\n\t\t// basic\n\t\treadonly eq?: T\n\t\treadonly notEq?: T\n\t\treadonly in?: readonly T[]\n\t\treadonly notIn?: readonly T[]\n\t\treadonly lt?: T\n\t\treadonly lte?: T\n\t\treadonly gt?: T\n\t\treadonly gte?: T\n\n\t\t// array\n\t\treadonly minLength?: number\n\t\treadonly maxLength?: number\n\t\treadonly includes?: T\n\n\t\t// string only\n\t\treadonly contains?: string\n\t\treadonly startsWith?: string\n\t\treadonly endsWith?: string\n\t\treadonly containsCI?: string\n\t\treadonly startsWithCI?: string\n\t\treadonly endsWithCI?: string\n\n\t\t// special\n\t\treadonly never?: true\n\t\treadonly always?: true\n\n\t\t// deprecated\n\t\treadonly null?: boolean\n\t}\n\n\texport type UniqueWhere<E = never> = {\n\t\treadonly [field: string]: Value.PrimaryValue<E> | UniqueWhere<E>\n\t}\n\n\texport type ComposedWhere<C, Opt = never> = {\n\t\treadonly and?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly or?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly not?: Where<C, Opt> | Opt\n\t}\n\n\texport interface FieldWhere<C = Condition, Opt = never> {\n\t\treadonly [name: string]: Opt | C | Where<C, Opt> | readonly (Where<C, Opt> | Opt)[] //last one if for ComposedWhere\n\t}\n\n\texport type Where<C = Condition, Opt = never> = ComposedWhere<C, Opt> & FieldWhere<C, Opt>\n\n\texport type OptionalWhere<E = never> = Where<Condition<Value.FieldValue<E>>, null | undefined>\n\texport type OptionalFieldWhere<E = never> = FieldWhere<Condition<Value.FieldValue<E>>, null | undefined>\n\n\texport enum FieldMeta {\n\t\treadable = 'readable',\n\t\tupdatable = 'updatable',\n\t}\n}\n"],"names":["Input","UpdateRelationOperation","CreateRelationOperation","OrderDirection","FieldMeta"],"mappings":"AAEiB,IAAA;AAAA,CAAV,CAAUA,WAAV;AAIC,GAAA,CAAKC,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,YAAa,IAAA;AACbA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAClBA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AAAA,EAPE,GAAAD,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAUL,GAAA,CAAKE,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAAA,EAHP,GAAAF,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAwIL,GAAA,CAAKG,oBAAL;AACNA,oBAAA,KAAM,IAAA;AACNA,oBAAA,eAAgB,IAAA;AAChBA,oBAAA,MAAO,IAAA;AACPA,oBAAA,eAAgB,IAAA;AAIhBA,oBAAA,cAAe,IAAA;AAAA,EARJ,GAAAH,OAAA,mBAAAA,OAAA,iBAAA,CAAA,EAAA;AAgFL,GAAA,CAAKI,eAAL;AACNA,eAAA,UAAW,IAAA;AACXA,eAAA,WAAY,IAAA;AAAA,EAFD,GAAAJ,OAAA,cAAAA,OAAA,YAAA,CAAA,EAAA;AAAA,GAtOI,UAAA,QAAA,CAAA,EAAA;"}
@@ -12,6 +12,7 @@ exports.Model = void 0;
12
12
  ColumnType2["Enum"] = "Enum";
13
13
  ColumnType2["DateTime"] = "DateTime";
14
14
  ColumnType2["Date"] = "Date";
15
+ ColumnType2["Time"] = "Time";
15
16
  ColumnType2["Json"] = "Json";
16
17
  })(Model2.ColumnType || (Model2.ColumnType = {}));
17
18
  ((RelationType2) => {
@@ -1 +1 @@
1
- {"version":3,"file":"model.cjs","sources":["../../../../../packages/schema/src/schema/model.ts"],"sourcesContent":["import { Input } from './input'\n\nexport namespace Model {\n\n\texport type Entity = {\n\t\treadonly name: string\n\t\treadonly primary: string\n\t\treadonly primaryColumn: string\n\t\treadonly tableName: string\n\t\treadonly fields: { readonly [name: string]: AnyField }\n\t\treadonly unique: UniqueConstraints\n\t\treadonly indexes: Indexes\n\t\treadonly view?: View\n\t\treadonly eventLog: EventLogConfig\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type View = {\n\t\treadonly sql: string\n\t\treadonly dependencies?: readonly string[]\n\t}\n\n\texport type EventLogConfig = {\n\t\treadonly enabled: boolean\n\t}\n\n\texport type FieldType = RelationType | ColumnType\n\texport type Field<T extends FieldType> = {\n\t\treadonly type: T\n\t}\n\n\texport type AnyField = AnyColumn | AnyRelation\n\texport type AnyColumn<T extends ColumnType = ColumnType> = Column<T>\n\n\texport enum ColumnType {\n\t\tUuid = 'Uuid',\n\t\tString = 'String',\n\t\tInt = 'Integer',\n\t\tDouble = 'Double',\n\t\tBool = 'Bool',\n\t\tEnum = 'Enum',\n\t\tDateTime = 'DateTime',\n\t\tDate = 'Date',\n\t\tJson = 'Json',\n\t}\n\n\texport type Column<T extends ColumnType> = ColumnTypeDefinition<T> & {\n\t\treadonly name: string\n\t\treadonly columnName: string\n\t}\n\n\texport type ColumnTypeDefinition<T extends ColumnType = ColumnType> =\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly columnType: string\n\t\t\treadonly typeAlias?: string\n\t\t\treadonly nullable: boolean\n\t\t\treadonly default?: string | number | boolean | null\n\t\t\treadonly sequence?: {\n\t\t\t\treadonly precedence: 'ALWAYS' | 'BY DEFAULT'\n\t\t\t\treadonly start?: number\n\t\t\t}\n\t\t}\n\n\n\texport enum RelationType {\n\t\tOneHasOne = 'OneHasOne',\n\t\tOneHasMany = 'OneHasMany',\n\t\tManyHasOne = 'ManyHasOne',\n\t\tManyHasMany = 'ManyHasMany',\n\t}\n\n\texport type AnyInverseRelation =\n\t\t| OneHasManyRelation\n\t\t| OneHasOneInverseRelation\n\t\t| ManyHasManyInverseRelation\n\n\t/** @deprecated */\n\texport type AnyInversedRelation = AnyInverseRelation\n\n\texport type AnyOwningRelation =\n\t\t| ManyHasOneRelation\n\t\t| OneHasOneOwningRelation\n\t\t| ManyHasManyOwningRelation\n\n\texport type AnyRelation = AnyInverseRelation | AnyOwningRelation\n\n\texport type Relation<T extends RelationType = RelationType>=\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly name: string\n\t\t\treadonly type: T\n\t\t\treadonly target: string\n\t\t}\n\n\texport type InverseRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly ownedBy: string\n\t\t}\n\n\t/** @deprecated */\n\texport type InversedRelation = InverseRelation\n\n\texport type OwningRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly inversedBy?: string\n\t\t}\n\n\t/** @deprecated */\n\texport type OwnerRelation = OwningRelation\n\n\texport enum OnDelete {\n\t\tcascade = 'cascade',\n\t\trestrict = 'restrict',\n\t\tsetNull = 'set null',\n\t}\n\n\texport type JoiningColumn = {\n\t\treadonly columnName: string\n\t\treadonly onDelete: OnDelete\n\t}\n\n\texport type JoiningColumnRelation = {\n\t\treadonly joiningColumn: JoiningColumn\n\t}\n\n\texport type NullableRelation = {\n\t\treadonly nullable: boolean\n\t}\n\n\texport type JoiningTable = {\n\t\treadonly tableName: string\n\t\treadonly joiningColumn: JoiningColumn\n\t\treadonly inverseJoiningColumn: JoiningColumn\n\t\treadonly eventLog: EventLogConfig\n\t}\n\n\texport type JoiningTableRelation = {\n\t\treadonly joiningTable: JoiningTable\n\t}\n\n\texport import OrderDirection = Input.OrderDirection\n\texport type OrderBy = {\n\t\treadonly path: readonly string[]\n\t\treadonly direction: OrderDirection\n\t}\n\n\texport type OrderableRelation = {\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type OneHasManyRelation =\n\t\t& Relation<RelationType.OneHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\n\texport type ManyHasOneRelation =\n\t\t& Relation<RelationType.ManyHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\n\texport type OneHasOneInverseRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& InverseRelation\n\t\t& NullableRelation\n\t/** @deprecated */\n\texport type OneHasOneInversedRelation = OneHasOneInverseRelation\n\n\texport type OneHasOneOwningRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\t\t& {\n\t\t\treadonly orphanRemoval?: true\n\t\t}\n\t/** @deprecated */\n\texport type OneHasOneOwnerRelation = OneHasOneOwningRelation\n\n\texport type ManyHasManyInverseRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyInversedRelation = ManyHasManyInverseRelation\n\n\texport type ManyHasManyOwningRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& OwningRelation\n\t\t& JoiningTableRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyOwnerRelation = ManyHasManyOwningRelation\n\n\texport type Schema = {\n\t\treadonly enums: { readonly [name: string]: readonly string[] }\n\t\treadonly entities: { readonly [name: string]: Entity }\n\t}\n\n\texport type UniqueConstraints = readonly UniqueConstraint[]\n\n\texport type ConstraintTiming = 'deferrable' | 'deferred'\n\texport type UniqueConstraint = {\n\t\treadonly fields: readonly string[]\n\t\treadonly timing?: ConstraintTiming // empty means not deferrable\n\t\treadonly name?: string\n\t}\n\n\texport type Indexes = readonly Index[]\n\n\texport type Index = {\n\t\treadonly fields: readonly string[]\n\t\treadonly name?: string\n\t}\n\n\n\texport interface ColumnContext {\n\t\tentity: Model.Entity\n\t\tcolumn: Model.AnyColumn\n\t}\n\n\texport type AnyHasManyRelationContext =\n\t\t| ManyHasManyInverseContext\n\t\t| ManyHasManyOwningContext\n\t\t| OneHasManyContext\n\n\texport type AnyHasOneRelationContext =\n\t\t| ManyHasOneContext\n\t\t| OneHasOneOwningContext\n\t\t| OneHasOneInverseContext\n\n\texport type AnyRelationContext =\n\t\t| AnyHasManyRelationContext\n\t\t| AnyHasOneRelationContext\n\n\texport type AnyFieldContext =\n\t\t| ColumnContext\n\t\t| AnyRelationContext\n\n\texport interface ManyHasManyInverseContext {\n\t\ttype: 'manyHasManyInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyOwningRelation\n\t}\n\n\texport interface ManyHasManyOwningContext {\n\t\ttype: 'manyHasManyOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyInverseRelation | null\n\t}\n\n\texport interface ManyHasOneContext {\n\t\ttype: 'manyHasOne'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasOneRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasManyRelation | null\n\t}\n\n\texport interface OneHasManyContext {\n\t\ttype: 'oneHasMany'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasManyRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasOneRelation\n\t}\n\n\texport interface OneHasOneInverseContext {\n\t\ttype: 'oneHasOneInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneOwningRelation\n\t}\n\n\texport interface OneHasOneOwningContext {\n\t\ttype: 'oneHasOneOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneInverseRelation | null\n\t}\n\n\n\texport interface ColumnVisitor<T> {\n\t\tvisitColumn(context: ColumnContext): T\n\t}\n\n\texport interface RelationVisitor<T> {\n\t\tvisitRelation(context: AnyRelationContext): T\n\t}\n\n\texport type FieldVisitor<T> =\n\t\t& ColumnVisitor<T>\n\t\t& (\n\t\t\t| RelationVisitor<T>\n\t\t\t| RelationByTypeVisitor<T>\n\t\t\t| RelationByGenericTypeVisitor<T>\n\t\t)\n\n\texport interface RelationByTypeVisitor<T> {\n\t\tvisitManyHasOne(context: ManyHasOneContext): T\n\n\t\tvisitOneHasMany(context: OneHasManyContext): T\n\n\t\tvisitOneHasOneOwning(context: OneHasOneOwningContext): T\n\n\t\tvisitOneHasOneInverse(context: OneHasOneInverseContext): T\n\n\t\tvisitManyHasManyOwning(context: ManyHasManyOwningContext): T\n\n\t\tvisitManyHasManyInverse(context: ManyHasManyInverseContext): T\n\t}\n\n\texport interface RelationByGenericTypeVisitor<T> {\n\t\tvisitHasMany(context: AnyHasManyRelationContext): T\n\n\t\tvisitHasOne(context: AnyHasOneRelationContext): T\n\t}\n}\n"],"names":["Model","ColumnType","RelationType","OnDelete","Input"],"mappings":";;;AAEiBA,QAAAA,QAAAA;AAAAA,CAAV,CAAUA,WAAV;AAgCC,GAAA,CAAKC,gBAAL;AACNA,gBAAA,MAAO,IAAA;AACPA,gBAAA,QAAS,IAAA;AACTA,gBAAA,KAAM,IAAA;AACNA,gBAAA,QAAS,IAAA;AACTA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AACPA,gBAAA,UAAW,IAAA;AACXA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AAAA,EATI,GAAAD,OAAA,eAAAA,OAAA,aAAA,CAAA,EAAA;AA+BL,GAAA,CAAKE,kBAAL;AACNA,kBAAA,WAAY,IAAA;AACZA,kBAAA,YAAa,IAAA;AACbA,kBAAA,YAAa,IAAA;AACbA,kBAAA,aAAc,IAAA;AAAA,EAJH,GAAAF,OAAA,iBAAAA,OAAA,eAAA,CAAA,EAAA;AAgDL,GAAA,CAAKG,cAAL;AACNA,cAAA,SAAU,IAAA;AACVA,cAAA,UAAW,IAAA;AACXA,cAAA,SAAU,IAAA;AAAA,EAHC,GAAAH,OAAA,aAAAA,OAAA,WAAA,CAAA,EAAA;AA8BEA,SAAA,iBAAiBI,MAAAA,MAAM;AAAA,GA7IrBJ,QAAA,UAAAA,gBAAA,CAAA,EAAA;"}
1
+ {"version":3,"file":"model.cjs","sources":["../../../../../packages/schema/src/schema/model.ts"],"sourcesContent":["import { Input } from './input'\nimport { JSONValue } from './json'\n\nexport namespace Model {\n\n\texport type Entity = {\n\t\treadonly name: string\n\t\treadonly primary: string\n\t\treadonly primaryColumn: string\n\t\treadonly tableName: string\n\t\treadonly fields: { readonly [name: string]: AnyField }\n\t\treadonly unique: Uniques\n\t\treadonly indexes: Indexes\n\t\treadonly view?: View\n\t\treadonly eventLog: EventLogConfig\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type View = {\n\t\treadonly sql: string\n\t\treadonly dependencies?: readonly string[]\n\t\treadonly idSource?: readonly string[]\n\t\treadonly materialized?: boolean\n\t}\n\n\texport type EventLogConfig = {\n\t\treadonly enabled: boolean\n\t}\n\n\texport type FieldType = RelationType | ColumnType\n\texport type Field<T extends FieldType> = {\n\t\treadonly type: T\n\t}\n\n\texport type AnyField = AnyColumn | AnyRelation\n\texport type AnyColumn<T extends ColumnType = ColumnType> = Column<T>\n\n\texport enum ColumnType {\n\t\tUuid = 'Uuid',\n\t\tString = 'String',\n\t\tInt = 'Integer',\n\t\tDouble = 'Double',\n\t\tBool = 'Bool',\n\t\tEnum = 'Enum',\n\t\tDateTime = 'DateTime',\n\t\tDate = 'Date',\n\t\tTime = 'Time',\n\t\tJson = 'Json',\n\t}\n\n\texport type Column<T extends ColumnType> = ColumnTypeDefinition<T> & {\n\t\treadonly name: string\n\t\treadonly columnName: string\n\t}\n\n\texport type ColumnTypeDefinition<T extends ColumnType = ColumnType> =\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly columnType: string\n\t\t\treadonly list?: boolean\n\t\t\treadonly typeAlias?: string\n\t\t\treadonly nullable: boolean\n\t\t\treadonly default?: JSONValue\n\t\t\treadonly sequence?: {\n\t\t\t\treadonly precedence: 'ALWAYS' | 'BY DEFAULT'\n\t\t\t\treadonly start?: number\n\t\t\t}\n\t\t\treadonly collation?: Collation\n\t\t}\n\n\texport type Collation =\n\t\t// generic\n\t\t| 'und-x-icu' | 'C' | 'ucs_basic' | 'unicode' | 'POSIX' | 'default'\n\t\t// some languages\n\t\t| 'cs-x-icu' | 'sk-x-icu' | 'da-x-icu' | 'de-x-icu' | 'en-x-icu' | 'es-x-icu' | 'fr-x-icu' | 'it-x-icu' | 'ja-x-icu' | 'ko-x-icu' | 'nl-x-icu' | 'pl-x-icu' | 'pt-x-icu' | 'ru-x-icu' | 'sv-x-icu' | 'tr-x-icu' | 'zh-x-icu' | 'hu-x-icu' | 'fi-x-icu' | 'el-x-icu' | 'bg-x-icu' | 'hr-x-icu' | 'ro-x-icu' | 'sl-x-icu' | 'sr-x-icu' | 'uk-x-icu' | 'vi-x-icu' | 'th-x-icu' | 'ar-x-icu' | 'he-x-icu' | 'hi-x-icu' | 'id-x-icu' | 'ms-x-icu' | 'fil-x-icu' | 'sw-x-icu' | 'ta-x-icu' | 'te-x-icu' | 'ml-x-icu' | 'bn-x-icu' | 'gu-x-icu' | 'kn-x-icu' | 'mr-x-icu' | 'pa-x-icu' | 'ur-x-icu' | 'or-x-icu' | 'si-x-icu' | 'th-x-icu' | 'lo-x-icu' | 'my-x-icu' | 'ka-x-icu' | 'am-x-icu' | 'ti-x-icu' | 'ne-x-icu' | 'dz-x-icu' | 'kok-x-icu' | 'syr-x-icu' | 'sd-x-icu' | 'bo-x-icu' | 'km-x-icu' | 'mn-x-icu' | 'lo-x-icu' | 'gl-x-icu' | 'eu-x-icu' | 'ca-x-icu' | 'af-x-icu' | 'is-x-icu' | 'mk-x-icu' | 'sq-x-icu' | 'hy-x-icu' | 'mt-x-icu' | 'cy-x-icu' | 'et-x-icu' | 'lv-x-icu' | 'lt-x-icu' | 'tg-x-icu' | 'fa-x-icu' | 'ps-x-icu' | 'ks-x-icu' | 'sd-x'\n\t\t// fallback\n\t\t| string & {}\n\n\n\texport enum RelationType {\n\t\tOneHasOne = 'OneHasOne',\n\t\tOneHasMany = 'OneHasMany',\n\t\tManyHasOne = 'ManyHasOne',\n\t\tManyHasMany = 'ManyHasMany',\n\t}\n\n\texport type AnyInverseRelation =\n\t\t| OneHasManyRelation\n\t\t| OneHasOneInverseRelation\n\t\t| ManyHasManyInverseRelation\n\n\t/** @deprecated */\n\texport type AnyInversedRelation = AnyInverseRelation\n\n\texport type AnyOwningRelation =\n\t\t| ManyHasOneRelation\n\t\t| OneHasOneOwningRelation\n\t\t| ManyHasManyOwningRelation\n\n\texport type AnyRelation = AnyInverseRelation | AnyOwningRelation\n\n\texport type Relation<T extends RelationType = RelationType>=\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly name: string\n\t\t\treadonly type: T\n\t\t\treadonly target: string\n\t\t}\n\n\texport type InverseRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly ownedBy: string\n\t\t}\n\n\t/** @deprecated */\n\texport type InversedRelation = InverseRelation\n\n\texport type OwningRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly inversedBy?: string\n\t\t}\n\n\t/** @deprecated */\n\texport type OwnerRelation = OwningRelation\n\n\texport enum OnDelete {\n\t\tcascade = 'cascade',\n\t\trestrict = 'restrict',\n\t\tsetNull = 'set null',\n\t}\n\n\texport type JoiningColumn = {\n\t\treadonly columnName: string\n\t\treadonly onDelete: OnDelete\n\t}\n\n\texport type JoiningColumnRelation = {\n\t\treadonly joiningColumn: JoiningColumn\n\t}\n\n\texport type NullableRelation = {\n\t\treadonly nullable: boolean\n\t}\n\n\texport type JoiningTable = {\n\t\treadonly tableName: string\n\t\treadonly joiningColumn: JoiningColumn\n\t\treadonly inverseJoiningColumn: JoiningColumn\n\t\treadonly eventLog: EventLogConfig\n\t}\n\n\texport type JoiningTableRelation = {\n\t\treadonly joiningTable: JoiningTable\n\t}\n\n\texport import OrderDirection = Input.OrderDirection\n\texport type OrderBy = {\n\t\treadonly path: readonly string[]\n\t\treadonly direction: OrderDirection\n\t}\n\n\texport type OrderableRelation = {\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type OneHasManyRelation =\n\t\t& Relation<RelationType.OneHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\n\texport type ManyHasOneRelation =\n\t\t& Relation<RelationType.ManyHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\n\texport type OneHasOneInverseRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& InverseRelation\n\t\t& NullableRelation\n\t/** @deprecated */\n\texport type OneHasOneInversedRelation = OneHasOneInverseRelation\n\n\texport type OneHasOneOwningRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\t\t& {\n\t\t\treadonly orphanRemoval?: true\n\t\t}\n\t/** @deprecated */\n\texport type OneHasOneOwnerRelation = OneHasOneOwningRelation\n\n\texport type ManyHasManyInverseRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyInversedRelation = ManyHasManyInverseRelation\n\n\texport type ManyHasManyOwningRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& OwningRelation\n\t\t& JoiningTableRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyOwnerRelation = ManyHasManyOwningRelation\n\n\texport type Schema = {\n\t\treadonly enums: { readonly [name: string]: readonly string[] }\n\t\treadonly entities: { readonly [name: string]: Entity }\n\t}\n\n\texport type Unique = UniqueIndex | UniqueConstraint\n\texport type Uniques = readonly (Unique)[]\n\n\texport type ConstraintTiming = 'deferrable' | 'deferred'\n\n\texport type UniqueConstraint = {\n\t\treadonly fields: readonly string[]\n\t\treadonly timing?: ConstraintTiming // empty means not deferrable\n\t\treadonly name?: string\n\t\treadonly index?: false\n\t}\n\texport type NullsDistinctBehaviour = 'distinct' | 'not distinct'\n\texport type UniqueIndex = {\n\t\treadonly fields: readonly string[]\n\t\treadonly index: true\n\t\treadonly nulls?: NullsDistinctBehaviour // empty means distinct\n\t}\n\n\texport type Indexes = readonly Index[]\n\n\texport type Index = {\n\t\treadonly fields: readonly string[]\n\t\treadonly name?: string\n\t}\n\n\n\texport interface ColumnContext {\n\t\tentity: Model.Entity\n\t\tcolumn: Model.AnyColumn\n\t}\n\n\texport type AnyHasManyRelationContext =\n\t\t| ManyHasManyInverseContext\n\t\t| ManyHasManyOwningContext\n\t\t| OneHasManyContext\n\n\texport type AnyHasOneRelationContext =\n\t\t| ManyHasOneContext\n\t\t| OneHasOneOwningContext\n\t\t| OneHasOneInverseContext\n\n\texport type AnyRelationContext =\n\t\t| AnyHasManyRelationContext\n\t\t| AnyHasOneRelationContext\n\n\texport type AnyFieldContext =\n\t\t| ColumnContext\n\t\t| AnyRelationContext\n\n\texport interface ManyHasManyInverseContext {\n\t\ttype: 'manyHasManyInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyOwningRelation\n\t}\n\n\texport interface ManyHasManyOwningContext {\n\t\ttype: 'manyHasManyOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyInverseRelation | null\n\t}\n\n\texport interface ManyHasOneContext {\n\t\ttype: 'manyHasOne'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasOneRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasManyRelation | null\n\t}\n\n\texport interface OneHasManyContext {\n\t\ttype: 'oneHasMany'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasManyRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasOneRelation\n\t}\n\n\texport interface OneHasOneInverseContext {\n\t\ttype: 'oneHasOneInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneOwningRelation\n\t}\n\n\texport interface OneHasOneOwningContext {\n\t\ttype: 'oneHasOneOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneInverseRelation | null\n\t}\n\n\n\texport interface ColumnVisitor<T> {\n\t\tvisitColumn(context: ColumnContext): T\n\t}\n\n\texport interface RelationVisitor<T> {\n\t\tvisitRelation(context: AnyRelationContext): T\n\t}\n\n\texport type FieldVisitor<T> =\n\t\t& ColumnVisitor<T>\n\t\t& (\n\t\t\t| RelationVisitor<T>\n\t\t\t| RelationByTypeVisitor<T>\n\t\t\t| RelationByGenericTypeVisitor<T>\n\t\t)\n\n\texport interface RelationByTypeVisitor<T> {\n\t\tvisitManyHasOne(context: ManyHasOneContext): T\n\n\t\tvisitOneHasMany(context: OneHasManyContext): T\n\n\t\tvisitOneHasOneOwning(context: OneHasOneOwningContext): T\n\n\t\tvisitOneHasOneInverse(context: OneHasOneInverseContext): T\n\n\t\tvisitManyHasManyOwning(context: ManyHasManyOwningContext): T\n\n\t\tvisitManyHasManyInverse(context: ManyHasManyInverseContext): T\n\t}\n\n\texport interface RelationByGenericTypeVisitor<T> {\n\t\tvisitHasMany(context: AnyHasManyRelationContext): T\n\n\t\tvisitHasOne(context: AnyHasOneRelationContext): T\n\t}\n}\n"],"names":["Model","ColumnType","RelationType","OnDelete","Input"],"mappings":";;;AAGiBA,QAAAA,QAAAA;AAAAA,CAAV,CAAUA,WAAV;AAkCC,GAAA,CAAKC,gBAAL;AACNA,gBAAA,MAAO,IAAA;AACPA,gBAAA,QAAS,IAAA;AACTA,gBAAA,KAAM,IAAA;AACNA,gBAAA,QAAS,IAAA;AACTA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AACPA,gBAAA,UAAW,IAAA;AACXA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AAAA,EAVI,GAAAD,OAAA,eAAAA,OAAA,aAAA,CAAA,EAAA;AA0CL,GAAA,CAAKE,kBAAL;AACNA,kBAAA,WAAY,IAAA;AACZA,kBAAA,YAAa,IAAA;AACbA,kBAAA,YAAa,IAAA;AACbA,kBAAA,aAAc,IAAA;AAAA,EAJH,GAAAF,OAAA,iBAAAA,OAAA,eAAA,CAAA,EAAA;AAgDL,GAAA,CAAKG,cAAL;AACNA,cAAA,SAAU,IAAA;AACVA,cAAA,UAAW,IAAA;AACXA,cAAA,SAAU,IAAA;AAAA,EAHC,GAAAH,OAAA,aAAAA,OAAA,WAAA,CAAA,EAAA;AA8BEA,SAAA,iBAAiBI,MAAAA,MAAM;AAAA,GA1JrBJ,QAAA,UAAAA,gBAAA,CAAA,EAAA;"}
@@ -10,6 +10,7 @@ var Model;
10
10
  ColumnType2["Enum"] = "Enum";
11
11
  ColumnType2["DateTime"] = "DateTime";
12
12
  ColumnType2["Date"] = "Date";
13
+ ColumnType2["Time"] = "Time";
13
14
  ColumnType2["Json"] = "Json";
14
15
  })(Model2.ColumnType || (Model2.ColumnType = {}));
15
16
  ((RelationType2) => {
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sources":["../../../../../packages/schema/src/schema/model.ts"],"sourcesContent":["import { Input } from './input'\n\nexport namespace Model {\n\n\texport type Entity = {\n\t\treadonly name: string\n\t\treadonly primary: string\n\t\treadonly primaryColumn: string\n\t\treadonly tableName: string\n\t\treadonly fields: { readonly [name: string]: AnyField }\n\t\treadonly unique: UniqueConstraints\n\t\treadonly indexes: Indexes\n\t\treadonly view?: View\n\t\treadonly eventLog: EventLogConfig\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type View = {\n\t\treadonly sql: string\n\t\treadonly dependencies?: readonly string[]\n\t}\n\n\texport type EventLogConfig = {\n\t\treadonly enabled: boolean\n\t}\n\n\texport type FieldType = RelationType | ColumnType\n\texport type Field<T extends FieldType> = {\n\t\treadonly type: T\n\t}\n\n\texport type AnyField = AnyColumn | AnyRelation\n\texport type AnyColumn<T extends ColumnType = ColumnType> = Column<T>\n\n\texport enum ColumnType {\n\t\tUuid = 'Uuid',\n\t\tString = 'String',\n\t\tInt = 'Integer',\n\t\tDouble = 'Double',\n\t\tBool = 'Bool',\n\t\tEnum = 'Enum',\n\t\tDateTime = 'DateTime',\n\t\tDate = 'Date',\n\t\tJson = 'Json',\n\t}\n\n\texport type Column<T extends ColumnType> = ColumnTypeDefinition<T> & {\n\t\treadonly name: string\n\t\treadonly columnName: string\n\t}\n\n\texport type ColumnTypeDefinition<T extends ColumnType = ColumnType> =\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly columnType: string\n\t\t\treadonly typeAlias?: string\n\t\t\treadonly nullable: boolean\n\t\t\treadonly default?: string | number | boolean | null\n\t\t\treadonly sequence?: {\n\t\t\t\treadonly precedence: 'ALWAYS' | 'BY DEFAULT'\n\t\t\t\treadonly start?: number\n\t\t\t}\n\t\t}\n\n\n\texport enum RelationType {\n\t\tOneHasOne = 'OneHasOne',\n\t\tOneHasMany = 'OneHasMany',\n\t\tManyHasOne = 'ManyHasOne',\n\t\tManyHasMany = 'ManyHasMany',\n\t}\n\n\texport type AnyInverseRelation =\n\t\t| OneHasManyRelation\n\t\t| OneHasOneInverseRelation\n\t\t| ManyHasManyInverseRelation\n\n\t/** @deprecated */\n\texport type AnyInversedRelation = AnyInverseRelation\n\n\texport type AnyOwningRelation =\n\t\t| ManyHasOneRelation\n\t\t| OneHasOneOwningRelation\n\t\t| ManyHasManyOwningRelation\n\n\texport type AnyRelation = AnyInverseRelation | AnyOwningRelation\n\n\texport type Relation<T extends RelationType = RelationType>=\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly name: string\n\t\t\treadonly type: T\n\t\t\treadonly target: string\n\t\t}\n\n\texport type InverseRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly ownedBy: string\n\t\t}\n\n\t/** @deprecated */\n\texport type InversedRelation = InverseRelation\n\n\texport type OwningRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly inversedBy?: string\n\t\t}\n\n\t/** @deprecated */\n\texport type OwnerRelation = OwningRelation\n\n\texport enum OnDelete {\n\t\tcascade = 'cascade',\n\t\trestrict = 'restrict',\n\t\tsetNull = 'set null',\n\t}\n\n\texport type JoiningColumn = {\n\t\treadonly columnName: string\n\t\treadonly onDelete: OnDelete\n\t}\n\n\texport type JoiningColumnRelation = {\n\t\treadonly joiningColumn: JoiningColumn\n\t}\n\n\texport type NullableRelation = {\n\t\treadonly nullable: boolean\n\t}\n\n\texport type JoiningTable = {\n\t\treadonly tableName: string\n\t\treadonly joiningColumn: JoiningColumn\n\t\treadonly inverseJoiningColumn: JoiningColumn\n\t\treadonly eventLog: EventLogConfig\n\t}\n\n\texport type JoiningTableRelation = {\n\t\treadonly joiningTable: JoiningTable\n\t}\n\n\texport import OrderDirection = Input.OrderDirection\n\texport type OrderBy = {\n\t\treadonly path: readonly string[]\n\t\treadonly direction: OrderDirection\n\t}\n\n\texport type OrderableRelation = {\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type OneHasManyRelation =\n\t\t& Relation<RelationType.OneHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\n\texport type ManyHasOneRelation =\n\t\t& Relation<RelationType.ManyHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\n\texport type OneHasOneInverseRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& InverseRelation\n\t\t& NullableRelation\n\t/** @deprecated */\n\texport type OneHasOneInversedRelation = OneHasOneInverseRelation\n\n\texport type OneHasOneOwningRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\t\t& {\n\t\t\treadonly orphanRemoval?: true\n\t\t}\n\t/** @deprecated */\n\texport type OneHasOneOwnerRelation = OneHasOneOwningRelation\n\n\texport type ManyHasManyInverseRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyInversedRelation = ManyHasManyInverseRelation\n\n\texport type ManyHasManyOwningRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& OwningRelation\n\t\t& JoiningTableRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyOwnerRelation = ManyHasManyOwningRelation\n\n\texport type Schema = {\n\t\treadonly enums: { readonly [name: string]: readonly string[] }\n\t\treadonly entities: { readonly [name: string]: Entity }\n\t}\n\n\texport type UniqueConstraints = readonly UniqueConstraint[]\n\n\texport type ConstraintTiming = 'deferrable' | 'deferred'\n\texport type UniqueConstraint = {\n\t\treadonly fields: readonly string[]\n\t\treadonly timing?: ConstraintTiming // empty means not deferrable\n\t\treadonly name?: string\n\t}\n\n\texport type Indexes = readonly Index[]\n\n\texport type Index = {\n\t\treadonly fields: readonly string[]\n\t\treadonly name?: string\n\t}\n\n\n\texport interface ColumnContext {\n\t\tentity: Model.Entity\n\t\tcolumn: Model.AnyColumn\n\t}\n\n\texport type AnyHasManyRelationContext =\n\t\t| ManyHasManyInverseContext\n\t\t| ManyHasManyOwningContext\n\t\t| OneHasManyContext\n\n\texport type AnyHasOneRelationContext =\n\t\t| ManyHasOneContext\n\t\t| OneHasOneOwningContext\n\t\t| OneHasOneInverseContext\n\n\texport type AnyRelationContext =\n\t\t| AnyHasManyRelationContext\n\t\t| AnyHasOneRelationContext\n\n\texport type AnyFieldContext =\n\t\t| ColumnContext\n\t\t| AnyRelationContext\n\n\texport interface ManyHasManyInverseContext {\n\t\ttype: 'manyHasManyInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyOwningRelation\n\t}\n\n\texport interface ManyHasManyOwningContext {\n\t\ttype: 'manyHasManyOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyInverseRelation | null\n\t}\n\n\texport interface ManyHasOneContext {\n\t\ttype: 'manyHasOne'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasOneRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasManyRelation | null\n\t}\n\n\texport interface OneHasManyContext {\n\t\ttype: 'oneHasMany'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasManyRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasOneRelation\n\t}\n\n\texport interface OneHasOneInverseContext {\n\t\ttype: 'oneHasOneInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneOwningRelation\n\t}\n\n\texport interface OneHasOneOwningContext {\n\t\ttype: 'oneHasOneOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneInverseRelation | null\n\t}\n\n\n\texport interface ColumnVisitor<T> {\n\t\tvisitColumn(context: ColumnContext): T\n\t}\n\n\texport interface RelationVisitor<T> {\n\t\tvisitRelation(context: AnyRelationContext): T\n\t}\n\n\texport type FieldVisitor<T> =\n\t\t& ColumnVisitor<T>\n\t\t& (\n\t\t\t| RelationVisitor<T>\n\t\t\t| RelationByTypeVisitor<T>\n\t\t\t| RelationByGenericTypeVisitor<T>\n\t\t)\n\n\texport interface RelationByTypeVisitor<T> {\n\t\tvisitManyHasOne(context: ManyHasOneContext): T\n\n\t\tvisitOneHasMany(context: OneHasManyContext): T\n\n\t\tvisitOneHasOneOwning(context: OneHasOneOwningContext): T\n\n\t\tvisitOneHasOneInverse(context: OneHasOneInverseContext): T\n\n\t\tvisitManyHasManyOwning(context: ManyHasManyOwningContext): T\n\n\t\tvisitManyHasManyInverse(context: ManyHasManyInverseContext): T\n\t}\n\n\texport interface RelationByGenericTypeVisitor<T> {\n\t\tvisitHasMany(context: AnyHasManyRelationContext): T\n\n\t\tvisitHasOne(context: AnyHasOneRelationContext): T\n\t}\n}\n"],"names":["Model","ColumnType","RelationType","OnDelete"],"mappings":";AAEiB,IAAA;AAAA,CAAV,CAAUA,WAAV;AAgCC,GAAA,CAAKC,gBAAL;AACNA,gBAAA,MAAO,IAAA;AACPA,gBAAA,QAAS,IAAA;AACTA,gBAAA,KAAM,IAAA;AACNA,gBAAA,QAAS,IAAA;AACTA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AACPA,gBAAA,UAAW,IAAA;AACXA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AAAA,EATI,GAAAD,OAAA,eAAAA,OAAA,aAAA,CAAA,EAAA;AA+BL,GAAA,CAAKE,kBAAL;AACNA,kBAAA,WAAY,IAAA;AACZA,kBAAA,YAAa,IAAA;AACbA,kBAAA,YAAa,IAAA;AACbA,kBAAA,aAAc,IAAA;AAAA,EAJH,GAAAF,OAAA,iBAAAA,OAAA,eAAA,CAAA,EAAA;AAgDL,GAAA,CAAKG,cAAL;AACNA,cAAA,SAAU,IAAA;AACVA,cAAA,UAAW,IAAA;AACXA,cAAA,SAAU,IAAA;AAAA,EAHC,GAAAH,OAAA,aAAAA,OAAA,WAAA,CAAA,EAAA;AA8BEA,SAAA,iBAAiB,MAAM;AAAA,GA7IrB,UAAA,QAAA,CAAA,EAAA;"}
1
+ {"version":3,"file":"model.js","sources":["../../../../../packages/schema/src/schema/model.ts"],"sourcesContent":["import { Input } from './input'\nimport { JSONValue } from './json'\n\nexport namespace Model {\n\n\texport type Entity = {\n\t\treadonly name: string\n\t\treadonly primary: string\n\t\treadonly primaryColumn: string\n\t\treadonly tableName: string\n\t\treadonly fields: { readonly [name: string]: AnyField }\n\t\treadonly unique: Uniques\n\t\treadonly indexes: Indexes\n\t\treadonly view?: View\n\t\treadonly eventLog: EventLogConfig\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type View = {\n\t\treadonly sql: string\n\t\treadonly dependencies?: readonly string[]\n\t\treadonly idSource?: readonly string[]\n\t\treadonly materialized?: boolean\n\t}\n\n\texport type EventLogConfig = {\n\t\treadonly enabled: boolean\n\t}\n\n\texport type FieldType = RelationType | ColumnType\n\texport type Field<T extends FieldType> = {\n\t\treadonly type: T\n\t}\n\n\texport type AnyField = AnyColumn | AnyRelation\n\texport type AnyColumn<T extends ColumnType = ColumnType> = Column<T>\n\n\texport enum ColumnType {\n\t\tUuid = 'Uuid',\n\t\tString = 'String',\n\t\tInt = 'Integer',\n\t\tDouble = 'Double',\n\t\tBool = 'Bool',\n\t\tEnum = 'Enum',\n\t\tDateTime = 'DateTime',\n\t\tDate = 'Date',\n\t\tTime = 'Time',\n\t\tJson = 'Json',\n\t}\n\n\texport type Column<T extends ColumnType> = ColumnTypeDefinition<T> & {\n\t\treadonly name: string\n\t\treadonly columnName: string\n\t}\n\n\texport type ColumnTypeDefinition<T extends ColumnType = ColumnType> =\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly columnType: string\n\t\t\treadonly list?: boolean\n\t\t\treadonly typeAlias?: string\n\t\t\treadonly nullable: boolean\n\t\t\treadonly default?: JSONValue\n\t\t\treadonly sequence?: {\n\t\t\t\treadonly precedence: 'ALWAYS' | 'BY DEFAULT'\n\t\t\t\treadonly start?: number\n\t\t\t}\n\t\t\treadonly collation?: Collation\n\t\t}\n\n\texport type Collation =\n\t\t// generic\n\t\t| 'und-x-icu' | 'C' | 'ucs_basic' | 'unicode' | 'POSIX' | 'default'\n\t\t// some languages\n\t\t| 'cs-x-icu' | 'sk-x-icu' | 'da-x-icu' | 'de-x-icu' | 'en-x-icu' | 'es-x-icu' | 'fr-x-icu' | 'it-x-icu' | 'ja-x-icu' | 'ko-x-icu' | 'nl-x-icu' | 'pl-x-icu' | 'pt-x-icu' | 'ru-x-icu' | 'sv-x-icu' | 'tr-x-icu' | 'zh-x-icu' | 'hu-x-icu' | 'fi-x-icu' | 'el-x-icu' | 'bg-x-icu' | 'hr-x-icu' | 'ro-x-icu' | 'sl-x-icu' | 'sr-x-icu' | 'uk-x-icu' | 'vi-x-icu' | 'th-x-icu' | 'ar-x-icu' | 'he-x-icu' | 'hi-x-icu' | 'id-x-icu' | 'ms-x-icu' | 'fil-x-icu' | 'sw-x-icu' | 'ta-x-icu' | 'te-x-icu' | 'ml-x-icu' | 'bn-x-icu' | 'gu-x-icu' | 'kn-x-icu' | 'mr-x-icu' | 'pa-x-icu' | 'ur-x-icu' | 'or-x-icu' | 'si-x-icu' | 'th-x-icu' | 'lo-x-icu' | 'my-x-icu' | 'ka-x-icu' | 'am-x-icu' | 'ti-x-icu' | 'ne-x-icu' | 'dz-x-icu' | 'kok-x-icu' | 'syr-x-icu' | 'sd-x-icu' | 'bo-x-icu' | 'km-x-icu' | 'mn-x-icu' | 'lo-x-icu' | 'gl-x-icu' | 'eu-x-icu' | 'ca-x-icu' | 'af-x-icu' | 'is-x-icu' | 'mk-x-icu' | 'sq-x-icu' | 'hy-x-icu' | 'mt-x-icu' | 'cy-x-icu' | 'et-x-icu' | 'lv-x-icu' | 'lt-x-icu' | 'tg-x-icu' | 'fa-x-icu' | 'ps-x-icu' | 'ks-x-icu' | 'sd-x'\n\t\t// fallback\n\t\t| string & {}\n\n\n\texport enum RelationType {\n\t\tOneHasOne = 'OneHasOne',\n\t\tOneHasMany = 'OneHasMany',\n\t\tManyHasOne = 'ManyHasOne',\n\t\tManyHasMany = 'ManyHasMany',\n\t}\n\n\texport type AnyInverseRelation =\n\t\t| OneHasManyRelation\n\t\t| OneHasOneInverseRelation\n\t\t| ManyHasManyInverseRelation\n\n\t/** @deprecated */\n\texport type AnyInversedRelation = AnyInverseRelation\n\n\texport type AnyOwningRelation =\n\t\t| ManyHasOneRelation\n\t\t| OneHasOneOwningRelation\n\t\t| ManyHasManyOwningRelation\n\n\texport type AnyRelation = AnyInverseRelation | AnyOwningRelation\n\n\texport type Relation<T extends RelationType = RelationType>=\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly name: string\n\t\t\treadonly type: T\n\t\t\treadonly target: string\n\t\t}\n\n\texport type InverseRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly ownedBy: string\n\t\t}\n\n\t/** @deprecated */\n\texport type InversedRelation = InverseRelation\n\n\texport type OwningRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly inversedBy?: string\n\t\t}\n\n\t/** @deprecated */\n\texport type OwnerRelation = OwningRelation\n\n\texport enum OnDelete {\n\t\tcascade = 'cascade',\n\t\trestrict = 'restrict',\n\t\tsetNull = 'set null',\n\t}\n\n\texport type JoiningColumn = {\n\t\treadonly columnName: string\n\t\treadonly onDelete: OnDelete\n\t}\n\n\texport type JoiningColumnRelation = {\n\t\treadonly joiningColumn: JoiningColumn\n\t}\n\n\texport type NullableRelation = {\n\t\treadonly nullable: boolean\n\t}\n\n\texport type JoiningTable = {\n\t\treadonly tableName: string\n\t\treadonly joiningColumn: JoiningColumn\n\t\treadonly inverseJoiningColumn: JoiningColumn\n\t\treadonly eventLog: EventLogConfig\n\t}\n\n\texport type JoiningTableRelation = {\n\t\treadonly joiningTable: JoiningTable\n\t}\n\n\texport import OrderDirection = Input.OrderDirection\n\texport type OrderBy = {\n\t\treadonly path: readonly string[]\n\t\treadonly direction: OrderDirection\n\t}\n\n\texport type OrderableRelation = {\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type OneHasManyRelation =\n\t\t& Relation<RelationType.OneHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\n\texport type ManyHasOneRelation =\n\t\t& Relation<RelationType.ManyHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\n\texport type OneHasOneInverseRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& InverseRelation\n\t\t& NullableRelation\n\t/** @deprecated */\n\texport type OneHasOneInversedRelation = OneHasOneInverseRelation\n\n\texport type OneHasOneOwningRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\t\t& {\n\t\t\treadonly orphanRemoval?: true\n\t\t}\n\t/** @deprecated */\n\texport type OneHasOneOwnerRelation = OneHasOneOwningRelation\n\n\texport type ManyHasManyInverseRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyInversedRelation = ManyHasManyInverseRelation\n\n\texport type ManyHasManyOwningRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& OwningRelation\n\t\t& JoiningTableRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyOwnerRelation = ManyHasManyOwningRelation\n\n\texport type Schema = {\n\t\treadonly enums: { readonly [name: string]: readonly string[] }\n\t\treadonly entities: { readonly [name: string]: Entity }\n\t}\n\n\texport type Unique = UniqueIndex | UniqueConstraint\n\texport type Uniques = readonly (Unique)[]\n\n\texport type ConstraintTiming = 'deferrable' | 'deferred'\n\n\texport type UniqueConstraint = {\n\t\treadonly fields: readonly string[]\n\t\treadonly timing?: ConstraintTiming // empty means not deferrable\n\t\treadonly name?: string\n\t\treadonly index?: false\n\t}\n\texport type NullsDistinctBehaviour = 'distinct' | 'not distinct'\n\texport type UniqueIndex = {\n\t\treadonly fields: readonly string[]\n\t\treadonly index: true\n\t\treadonly nulls?: NullsDistinctBehaviour // empty means distinct\n\t}\n\n\texport type Indexes = readonly Index[]\n\n\texport type Index = {\n\t\treadonly fields: readonly string[]\n\t\treadonly name?: string\n\t}\n\n\n\texport interface ColumnContext {\n\t\tentity: Model.Entity\n\t\tcolumn: Model.AnyColumn\n\t}\n\n\texport type AnyHasManyRelationContext =\n\t\t| ManyHasManyInverseContext\n\t\t| ManyHasManyOwningContext\n\t\t| OneHasManyContext\n\n\texport type AnyHasOneRelationContext =\n\t\t| ManyHasOneContext\n\t\t| OneHasOneOwningContext\n\t\t| OneHasOneInverseContext\n\n\texport type AnyRelationContext =\n\t\t| AnyHasManyRelationContext\n\t\t| AnyHasOneRelationContext\n\n\texport type AnyFieldContext =\n\t\t| ColumnContext\n\t\t| AnyRelationContext\n\n\texport interface ManyHasManyInverseContext {\n\t\ttype: 'manyHasManyInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyOwningRelation\n\t}\n\n\texport interface ManyHasManyOwningContext {\n\t\ttype: 'manyHasManyOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyInverseRelation | null\n\t}\n\n\texport interface ManyHasOneContext {\n\t\ttype: 'manyHasOne'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasOneRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasManyRelation | null\n\t}\n\n\texport interface OneHasManyContext {\n\t\ttype: 'oneHasMany'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasManyRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasOneRelation\n\t}\n\n\texport interface OneHasOneInverseContext {\n\t\ttype: 'oneHasOneInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneOwningRelation\n\t}\n\n\texport interface OneHasOneOwningContext {\n\t\ttype: 'oneHasOneOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneInverseRelation | null\n\t}\n\n\n\texport interface ColumnVisitor<T> {\n\t\tvisitColumn(context: ColumnContext): T\n\t}\n\n\texport interface RelationVisitor<T> {\n\t\tvisitRelation(context: AnyRelationContext): T\n\t}\n\n\texport type FieldVisitor<T> =\n\t\t& ColumnVisitor<T>\n\t\t& (\n\t\t\t| RelationVisitor<T>\n\t\t\t| RelationByTypeVisitor<T>\n\t\t\t| RelationByGenericTypeVisitor<T>\n\t\t)\n\n\texport interface RelationByTypeVisitor<T> {\n\t\tvisitManyHasOne(context: ManyHasOneContext): T\n\n\t\tvisitOneHasMany(context: OneHasManyContext): T\n\n\t\tvisitOneHasOneOwning(context: OneHasOneOwningContext): T\n\n\t\tvisitOneHasOneInverse(context: OneHasOneInverseContext): T\n\n\t\tvisitManyHasManyOwning(context: ManyHasManyOwningContext): T\n\n\t\tvisitManyHasManyInverse(context: ManyHasManyInverseContext): T\n\t}\n\n\texport interface RelationByGenericTypeVisitor<T> {\n\t\tvisitHasMany(context: AnyHasManyRelationContext): T\n\n\t\tvisitHasOne(context: AnyHasOneRelationContext): T\n\t}\n}\n"],"names":["Model","ColumnType","RelationType","OnDelete"],"mappings":";AAGiB,IAAA;AAAA,CAAV,CAAUA,WAAV;AAkCC,GAAA,CAAKC,gBAAL;AACNA,gBAAA,MAAO,IAAA;AACPA,gBAAA,QAAS,IAAA;AACTA,gBAAA,KAAM,IAAA;AACNA,gBAAA,QAAS,IAAA;AACTA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AACPA,gBAAA,UAAW,IAAA;AACXA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AAAA,EAVI,GAAAD,OAAA,eAAAA,OAAA,aAAA,CAAA,EAAA;AA0CL,GAAA,CAAKE,kBAAL;AACNA,kBAAA,WAAY,IAAA;AACZA,kBAAA,YAAa,IAAA;AACbA,kBAAA,YAAa,IAAA;AACbA,kBAAA,aAAc,IAAA;AAAA,EAJH,GAAAF,OAAA,iBAAAA,OAAA,eAAA,CAAA,EAAA;AAgDL,GAAA,CAAKG,cAAL;AACNA,cAAA,SAAU,IAAA;AACVA,cAAA,UAAW,IAAA;AACXA,cAAA,SAAU,IAAA;AAAA,EAHC,GAAAH,OAAA,aAAAA,OAAA,WAAA,CAAA,EAAA;AA8BEA,SAAA,iBAAiB,MAAM;AAAA,GA1JrB,UAAA,QAAA,CAAA,EAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"acl.cjs","sources":["../../../../../packages/schema/src/schema/acl.ts"],"sourcesContent":["import { Input } from './input'\nimport { JSONValue } from './json'\n\nexport namespace Acl {\n\texport enum VariableType {\n\t\tentity = 'entity',\n\t\tpredefined = 'predefined',\n\t\tcondition = 'condition',\n\n\t\t// currently unsupported\n\t\t// enum = 'enum',\n\t\t// column = 'column',\n\t}\n\n\texport type Variable =\n\t\t| EntityVariable\n\t\t| PredefinedVariable\n\t\t| ConditionVariable\n\t\t// | EnumVariable | ColumnValueVariable\n\n\n\n\texport type EntityVariable = {\n\t\treadonly type: VariableType.entity\n\t\treadonly entityName: string\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\texport type PredefinedVariableValue = 'identityID' | 'personID'\n\texport type PredefinedVariable = {\n\t\treadonly type: VariableType.predefined\n\t\treadonly value: PredefinedVariableValue\n\t}\n\n\n\texport type ConditionVariable = {\n\t\treadonly type: VariableType.condition\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\t// export interface EnumVariable {\n\t// \ttype: VariableType.enum\n\t// \tenumName: string\n\t// }\n\n\t// export interface ColumnValueVariable {\n\t// \ttype: VariableType.column\n\t// \tentityName: string\n\t// \tfieldName: string\n\t// }\n\n\texport type PredicateVariable = string //{ name: string }\n\texport type PredicateDefinition<E = never> = Input.Where<PredicateVariable | Input.Condition | E>\n\n\texport type PredicateMap = { readonly [name: string]: PredicateDefinition }\n\n\texport type EntityPermissions = {\n\t\treadonly predicates: PredicateMap\n\t\treadonly operations: EntityOperations\n\t}\n\n\texport enum Operation {\n\t\tread = 'read',\n\t\tcreate = 'create',\n\t\tupdate = 'update',\n\t\tdelete = 'delete',\n\t}\n\n\texport type EntityOperations = {\n\t\treadonly read?: FieldPermissions\n\t\treadonly create?: FieldPermissions\n\t\treadonly customPrimary?: boolean\n\t\treadonly update?: FieldPermissions\n\t\treadonly delete?: Predicate\n\t\treadonly noRoot?: readonly `${Operation}`[]\n\t}\n\n\texport type FieldPermissions = { readonly [field: string]: Predicate }\n\n\texport type PredicateReference = string\n\texport type Predicate = PredicateReference | boolean\n\n\texport type AnyStage = '*'\n\texport type StagesDefinition = AnyStage | readonly string[]\n\n\texport type MembershipVariableMatchRule = true | string\n\n\texport type MembershipVariablesMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly [targetVariable: string]: MembershipVariableMatchRule\n\t\t}\n\n\texport type MembershipRoleMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly variables?: MembershipVariablesMatchRule\n\t\t}\n\n\texport type MembershipMatchRule = {\n\t\treadonly [role: string]: MembershipRoleMatchRule\n\t}\n\n\texport type TenantPermissions = {\n\t\treadonly invite?: boolean | MembershipMatchRule\n\t\treadonly unmanagedInvite?: boolean | MembershipMatchRule\n\t\treadonly view?: MembershipMatchRule\n\t\treadonly manage?: MembershipMatchRule\n\t}\n\n\texport enum SystemPermissionsLevel {\n\t\tnone = 'none',\n\t\tany = 'any',\n\t\tsome = 'some',\n\t}\n\n\t/**\n\t * @deprecated\n\t */\n\texport type LimitedSystemPermissionsLevel = 'any' | 'none'\n\n\texport type SystemPermissions = {\n\t\treadonly history?: boolean | LimitedSystemPermissionsLevel\n\t\treadonly migrate?: boolean\n\t\treadonly assumeIdentity?: boolean\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t}\n\n\texport type ContentPermissions = {\n\t\treadonly assumeMembership?: MembershipMatchRule\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t}\n\n\texport interface BaseRolePermissions {\n\t\treadonly inherits?: readonly string[]\n\t\treadonly implicit?: boolean\n\t\treadonly tenant?: TenantPermissions\n\t\treadonly system?: SystemPermissions\n\t\treadonly content?: ContentPermissions\n\t\treadonly variables: Acl.Variables\n\t\treadonly stages?: StagesDefinition\n\t\treadonly entities: Permissions\n\t\treadonly debug?: boolean\n\t}\n\n\texport type RolePermissions =\n\t\t& BaseRolePermissions\n\t\t& {\n\t\t\treadonly [key: string] : JSONValue\n\t\t}\n\texport type Permissions = {\n\t\treadonly [entity: string]: EntityPermissions\n\t}\n\n\texport type Roles = { readonly [role: string]: RolePermissions }\n\texport type Variables = { readonly [name: string]: Variable }\n\n\texport type Schema = {\n\t\treadonly customPrimary?: boolean\n\t\treadonly roles: Acl.Roles\n\t}\n\n\texport type VariablesMap = {\n\t\treadonly [name: string]: Input.Condition\n\t}\n\n\texport interface MembershipVariable {\n\t\treadonly name: string\n\t\treadonly values: readonly string[]\n\t}\n\n\texport interface Membership {\n\t\treadonly role: string\n\t\treadonly variables: readonly MembershipVariable[]\n\t}\n}\n"],"names":["Acl","VariableType","Operation","SystemPermissionsLevel"],"mappings":";;AAGiBA,QAAAA,MAAAA;AAAAA,CAAV,CAAUA,SAAV;AACC,GAAA,CAAKC,kBAAL;AACNA,kBAAA,QAAS,IAAA;AACTA,kBAAA,YAAa,IAAA;AACbA,kBAAA,WAAY,IAAA;AAAA,EAHD,GAAAD,KAAA,iBAAAA,KAAA,eAAA,CAAA,EAAA;AAyDL,GAAA,CAAKE,eAAL;AACNA,eAAA,MAAO,IAAA;AACPA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AAAA,EAJE,GAAAF,KAAA,cAAAA,KAAA,YAAA,CAAA,EAAA;AAiDL,GAAA,CAAKG,4BAAL;AACNA,4BAAA,MAAO,IAAA;AACPA,4BAAA,KAAM,IAAA;AACNA,4BAAA,MAAO,IAAA;AAAA,EAHI,GAAAH,KAAA,2BAAAA,KAAA,yBAAA,CAAA,EAAA;AAAA,GA3GIA,QAAA,QAAAA,cAAA,CAAA,EAAA;"}
1
+ {"version":3,"file":"acl.cjs","sources":["../../../../../packages/schema/src/schema/acl.ts"],"sourcesContent":["import { Input } from './input'\nimport { JSONValue } from './json'\n\nexport namespace Acl {\n\texport enum VariableType {\n\t\tentity = 'entity',\n\t\tpredefined = 'predefined',\n\t\tcondition = 'condition',\n\n\t\t// currently unsupported\n\t\t// enum = 'enum',\n\t\t// column = 'column',\n\t}\n\n\texport type Variable =\n\t\t| EntityVariable\n\t\t| PredefinedVariable\n\t\t| ConditionVariable\n\t\t// | EnumVariable | ColumnValueVariable\n\n\n\n\texport type EntityVariable = {\n\t\treadonly type: VariableType.entity\n\t\treadonly entityName: string\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\texport type PredefinedVariableValue = 'identityID' | 'personID'\n\texport type PredefinedVariable = {\n\t\treadonly type: VariableType.predefined\n\t\treadonly value: PredefinedVariableValue\n\t}\n\n\n\texport type ConditionVariable = {\n\t\treadonly type: VariableType.condition\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\t// export interface EnumVariable {\n\t// \ttype: VariableType.enum\n\t// \tenumName: string\n\t// }\n\n\t// export interface ColumnValueVariable {\n\t// \ttype: VariableType.column\n\t// \tentityName: string\n\t// \tfieldName: string\n\t// }\n\n\texport type PredicateVariable = string //{ name: string }\n\texport type PredicateDefinition<E = never> = Input.Where<PredicateVariable | Input.Condition | E>\n\n\texport type PredicateMap = { readonly [name: string]: PredicateDefinition }\n\n\texport type EntityPermissions = {\n\t\treadonly predicates: PredicateMap\n\t\treadonly operations: EntityOperations\n\t}\n\n\texport enum Operation {\n\t\tread = 'read',\n\t\tcreate = 'create',\n\t\tupdate = 'update',\n\t\tdelete = 'delete',\n\t}\n\n\texport type EntityOperations = {\n\t\treadonly read?: FieldPermissions\n\t\treadonly create?: FieldPermissions\n\t\treadonly update?: FieldPermissions\n\t\treadonly delete?: Predicate\n\t\treadonly noRoot?: readonly `${Operation}`[]\n\n\t\treadonly customPrimary?: boolean\n\t\treadonly refreshMaterializedView?: boolean\n\t}\n\n\texport type FieldPermissions = { readonly [field: string]: Predicate }\n\n\texport type PredicateReference = string\n\texport type Predicate = PredicateReference | boolean\n\n\texport type AnyStage = '*'\n\texport type StagesDefinition = AnyStage | readonly string[]\n\n\texport type MembershipVariableMatchRule = true | string\n\n\texport type MembershipVariablesMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly [targetVariable: string]: MembershipVariableMatchRule\n\t\t}\n\n\texport type MembershipRoleMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly variables?: MembershipVariablesMatchRule\n\t\t}\n\n\texport type MembershipMatchRule = {\n\t\treadonly [role: string]: MembershipRoleMatchRule\n\t}\n\n\texport type TenantPermissions = {\n\t\treadonly invite?: boolean | MembershipMatchRule\n\t\treadonly unmanagedInvite?: boolean | MembershipMatchRule\n\t\treadonly view?: MembershipMatchRule\n\t\treadonly manage?: MembershipMatchRule\n\t}\n\n\texport enum SystemPermissionsLevel {\n\t\tnone = 'none',\n\t\tany = 'any',\n\t\tsome = 'some',\n\t}\n\n\t/**\n\t * @deprecated\n\t */\n\texport type LimitedSystemPermissionsLevel = 'any' | 'none'\n\n\texport type SystemPermissions = {\n\t\treadonly history?: boolean | LimitedSystemPermissionsLevel\n\t\treadonly migrate?: boolean\n\t\treadonly assumeIdentity?: boolean\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t}\n\n\texport type ContentPermissions = {\n\t\treadonly assumeMembership?: MembershipMatchRule\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t\treadonly refreshMaterializedView?: boolean\n\t}\n\n\texport interface BaseRolePermissions {\n\t\treadonly inherits?: readonly string[]\n\t\treadonly implicit?: boolean\n\t\treadonly tenant?: TenantPermissions\n\t\treadonly system?: SystemPermissions\n\t\treadonly content?: ContentPermissions\n\t\treadonly variables: Acl.Variables\n\t\treadonly stages?: StagesDefinition\n\t\treadonly entities: Permissions\n\t\treadonly debug?: boolean\n\t}\n\n\texport type RolePermissions =\n\t\t& BaseRolePermissions\n\t\t& {\n\t\t\treadonly [key: string] : JSONValue\n\t\t}\n\texport type Permissions = {\n\t\treadonly [entity: string]: EntityPermissions\n\t}\n\n\texport type Roles = { readonly [role: string]: RolePermissions }\n\texport type Variables = { readonly [name: string]: Variable }\n\n\texport type Schema = {\n\t\treadonly customPrimary?: boolean\n\t\treadonly roles: Acl.Roles\n\t}\n\n\texport type VariablesMap = {\n\t\treadonly [name: string]: Input.Condition\n\t}\n\n\texport interface MembershipVariable {\n\t\treadonly name: string\n\t\treadonly values: readonly string[]\n\t}\n\n\texport interface Membership {\n\t\treadonly role: string\n\t\treadonly variables: readonly MembershipVariable[]\n\t}\n}\n"],"names":["Acl","VariableType","Operation","SystemPermissionsLevel"],"mappings":";;AAGiBA,QAAAA,MAAAA;AAAAA,CAAV,CAAUA,SAAV;AACC,GAAA,CAAKC,kBAAL;AACNA,kBAAA,QAAS,IAAA;AACTA,kBAAA,YAAa,IAAA;AACbA,kBAAA,WAAY,IAAA;AAAA,EAHD,GAAAD,KAAA,iBAAAA,KAAA,eAAA,CAAA,EAAA;AAyDL,GAAA,CAAKE,eAAL;AACNA,eAAA,MAAO,IAAA;AACPA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AAAA,EAJE,GAAAF,KAAA,cAAAA,KAAA,YAAA,CAAA,EAAA;AAmDL,GAAA,CAAKG,4BAAL;AACNA,4BAAA,MAAO,IAAA;AACPA,4BAAA,KAAM,IAAA;AACNA,4BAAA,MAAO,IAAA;AAAA,EAHI,GAAAH,KAAA,2BAAAA,KAAA,yBAAA,CAAA,EAAA;AAAA,GA7GIA,QAAA,QAAAA,cAAA,CAAA,EAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"acl.js","sources":["../../../../../packages/schema/src/schema/acl.ts"],"sourcesContent":["import { Input } from './input'\nimport { JSONValue } from './json'\n\nexport namespace Acl {\n\texport enum VariableType {\n\t\tentity = 'entity',\n\t\tpredefined = 'predefined',\n\t\tcondition = 'condition',\n\n\t\t// currently unsupported\n\t\t// enum = 'enum',\n\t\t// column = 'column',\n\t}\n\n\texport type Variable =\n\t\t| EntityVariable\n\t\t| PredefinedVariable\n\t\t| ConditionVariable\n\t\t// | EnumVariable | ColumnValueVariable\n\n\n\n\texport type EntityVariable = {\n\t\treadonly type: VariableType.entity\n\t\treadonly entityName: string\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\texport type PredefinedVariableValue = 'identityID' | 'personID'\n\texport type PredefinedVariable = {\n\t\treadonly type: VariableType.predefined\n\t\treadonly value: PredefinedVariableValue\n\t}\n\n\n\texport type ConditionVariable = {\n\t\treadonly type: VariableType.condition\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\t// export interface EnumVariable {\n\t// \ttype: VariableType.enum\n\t// \tenumName: string\n\t// }\n\n\t// export interface ColumnValueVariable {\n\t// \ttype: VariableType.column\n\t// \tentityName: string\n\t// \tfieldName: string\n\t// }\n\n\texport type PredicateVariable = string //{ name: string }\n\texport type PredicateDefinition<E = never> = Input.Where<PredicateVariable | Input.Condition | E>\n\n\texport type PredicateMap = { readonly [name: string]: PredicateDefinition }\n\n\texport type EntityPermissions = {\n\t\treadonly predicates: PredicateMap\n\t\treadonly operations: EntityOperations\n\t}\n\n\texport enum Operation {\n\t\tread = 'read',\n\t\tcreate = 'create',\n\t\tupdate = 'update',\n\t\tdelete = 'delete',\n\t}\n\n\texport type EntityOperations = {\n\t\treadonly read?: FieldPermissions\n\t\treadonly create?: FieldPermissions\n\t\treadonly customPrimary?: boolean\n\t\treadonly update?: FieldPermissions\n\t\treadonly delete?: Predicate\n\t\treadonly noRoot?: readonly `${Operation}`[]\n\t}\n\n\texport type FieldPermissions = { readonly [field: string]: Predicate }\n\n\texport type PredicateReference = string\n\texport type Predicate = PredicateReference | boolean\n\n\texport type AnyStage = '*'\n\texport type StagesDefinition = AnyStage | readonly string[]\n\n\texport type MembershipVariableMatchRule = true | string\n\n\texport type MembershipVariablesMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly [targetVariable: string]: MembershipVariableMatchRule\n\t\t}\n\n\texport type MembershipRoleMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly variables?: MembershipVariablesMatchRule\n\t\t}\n\n\texport type MembershipMatchRule = {\n\t\treadonly [role: string]: MembershipRoleMatchRule\n\t}\n\n\texport type TenantPermissions = {\n\t\treadonly invite?: boolean | MembershipMatchRule\n\t\treadonly unmanagedInvite?: boolean | MembershipMatchRule\n\t\treadonly view?: MembershipMatchRule\n\t\treadonly manage?: MembershipMatchRule\n\t}\n\n\texport enum SystemPermissionsLevel {\n\t\tnone = 'none',\n\t\tany = 'any',\n\t\tsome = 'some',\n\t}\n\n\t/**\n\t * @deprecated\n\t */\n\texport type LimitedSystemPermissionsLevel = 'any' | 'none'\n\n\texport type SystemPermissions = {\n\t\treadonly history?: boolean | LimitedSystemPermissionsLevel\n\t\treadonly migrate?: boolean\n\t\treadonly assumeIdentity?: boolean\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t}\n\n\texport type ContentPermissions = {\n\t\treadonly assumeMembership?: MembershipMatchRule\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t}\n\n\texport interface BaseRolePermissions {\n\t\treadonly inherits?: readonly string[]\n\t\treadonly implicit?: boolean\n\t\treadonly tenant?: TenantPermissions\n\t\treadonly system?: SystemPermissions\n\t\treadonly content?: ContentPermissions\n\t\treadonly variables: Acl.Variables\n\t\treadonly stages?: StagesDefinition\n\t\treadonly entities: Permissions\n\t\treadonly debug?: boolean\n\t}\n\n\texport type RolePermissions =\n\t\t& BaseRolePermissions\n\t\t& {\n\t\t\treadonly [key: string] : JSONValue\n\t\t}\n\texport type Permissions = {\n\t\treadonly [entity: string]: EntityPermissions\n\t}\n\n\texport type Roles = { readonly [role: string]: RolePermissions }\n\texport type Variables = { readonly [name: string]: Variable }\n\n\texport type Schema = {\n\t\treadonly customPrimary?: boolean\n\t\treadonly roles: Acl.Roles\n\t}\n\n\texport type VariablesMap = {\n\t\treadonly [name: string]: Input.Condition\n\t}\n\n\texport interface MembershipVariable {\n\t\treadonly name: string\n\t\treadonly values: readonly string[]\n\t}\n\n\texport interface Membership {\n\t\treadonly role: string\n\t\treadonly variables: readonly MembershipVariable[]\n\t}\n}\n"],"names":["Acl","VariableType","Operation","SystemPermissionsLevel"],"mappings":"AAGiB,IAAA;AAAA,CAAV,CAAUA,SAAV;AACC,GAAA,CAAKC,kBAAL;AACNA,kBAAA,QAAS,IAAA;AACTA,kBAAA,YAAa,IAAA;AACbA,kBAAA,WAAY,IAAA;AAAA,EAHD,GAAAD,KAAA,iBAAAA,KAAA,eAAA,CAAA,EAAA;AAyDL,GAAA,CAAKE,eAAL;AACNA,eAAA,MAAO,IAAA;AACPA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AAAA,EAJE,GAAAF,KAAA,cAAAA,KAAA,YAAA,CAAA,EAAA;AAiDL,GAAA,CAAKG,4BAAL;AACNA,4BAAA,MAAO,IAAA;AACPA,4BAAA,KAAM,IAAA;AACNA,4BAAA,MAAO,IAAA;AAAA,EAHI,GAAAH,KAAA,2BAAAA,KAAA,yBAAA,CAAA,EAAA;AAAA,GA3GI,QAAA,MAAA,CAAA,EAAA;"}
1
+ {"version":3,"file":"acl.js","sources":["../../../../../packages/schema/src/schema/acl.ts"],"sourcesContent":["import { Input } from './input'\nimport { JSONValue } from './json'\n\nexport namespace Acl {\n\texport enum VariableType {\n\t\tentity = 'entity',\n\t\tpredefined = 'predefined',\n\t\tcondition = 'condition',\n\n\t\t// currently unsupported\n\t\t// enum = 'enum',\n\t\t// column = 'column',\n\t}\n\n\texport type Variable =\n\t\t| EntityVariable\n\t\t| PredefinedVariable\n\t\t| ConditionVariable\n\t\t// | EnumVariable | ColumnValueVariable\n\n\n\n\texport type EntityVariable = {\n\t\treadonly type: VariableType.entity\n\t\treadonly entityName: string\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\texport type PredefinedVariableValue = 'identityID' | 'personID'\n\texport type PredefinedVariable = {\n\t\treadonly type: VariableType.predefined\n\t\treadonly value: PredefinedVariableValue\n\t}\n\n\n\texport type ConditionVariable = {\n\t\treadonly type: VariableType.condition\n\t\treadonly fallback?: Input.Condition\n\t}\n\n\t// export interface EnumVariable {\n\t// \ttype: VariableType.enum\n\t// \tenumName: string\n\t// }\n\n\t// export interface ColumnValueVariable {\n\t// \ttype: VariableType.column\n\t// \tentityName: string\n\t// \tfieldName: string\n\t// }\n\n\texport type PredicateVariable = string //{ name: string }\n\texport type PredicateDefinition<E = never> = Input.Where<PredicateVariable | Input.Condition | E>\n\n\texport type PredicateMap = { readonly [name: string]: PredicateDefinition }\n\n\texport type EntityPermissions = {\n\t\treadonly predicates: PredicateMap\n\t\treadonly operations: EntityOperations\n\t}\n\n\texport enum Operation {\n\t\tread = 'read',\n\t\tcreate = 'create',\n\t\tupdate = 'update',\n\t\tdelete = 'delete',\n\t}\n\n\texport type EntityOperations = {\n\t\treadonly read?: FieldPermissions\n\t\treadonly create?: FieldPermissions\n\t\treadonly update?: FieldPermissions\n\t\treadonly delete?: Predicate\n\t\treadonly noRoot?: readonly `${Operation}`[]\n\n\t\treadonly customPrimary?: boolean\n\t\treadonly refreshMaterializedView?: boolean\n\t}\n\n\texport type FieldPermissions = { readonly [field: string]: Predicate }\n\n\texport type PredicateReference = string\n\texport type Predicate = PredicateReference | boolean\n\n\texport type AnyStage = '*'\n\texport type StagesDefinition = AnyStage | readonly string[]\n\n\texport type MembershipVariableMatchRule = true | string\n\n\texport type MembershipVariablesMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly [targetVariable: string]: MembershipVariableMatchRule\n\t\t}\n\n\texport type MembershipRoleMatchRule =\n\t\t| true\n\t\t| {\n\t\t\treadonly variables?: MembershipVariablesMatchRule\n\t\t}\n\n\texport type MembershipMatchRule = {\n\t\treadonly [role: string]: MembershipRoleMatchRule\n\t}\n\n\texport type TenantPermissions = {\n\t\treadonly invite?: boolean | MembershipMatchRule\n\t\treadonly unmanagedInvite?: boolean | MembershipMatchRule\n\t\treadonly view?: MembershipMatchRule\n\t\treadonly manage?: MembershipMatchRule\n\t}\n\n\texport enum SystemPermissionsLevel {\n\t\tnone = 'none',\n\t\tany = 'any',\n\t\tsome = 'some',\n\t}\n\n\t/**\n\t * @deprecated\n\t */\n\texport type LimitedSystemPermissionsLevel = 'any' | 'none'\n\n\texport type SystemPermissions = {\n\t\treadonly history?: boolean | LimitedSystemPermissionsLevel\n\t\treadonly migrate?: boolean\n\t\treadonly assumeIdentity?: boolean\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t}\n\n\texport type ContentPermissions = {\n\t\treadonly assumeMembership?: MembershipMatchRule\n\t\treadonly export?: boolean\n\t\treadonly import?: boolean\n\t\treadonly refreshMaterializedView?: boolean\n\t}\n\n\texport interface BaseRolePermissions {\n\t\treadonly inherits?: readonly string[]\n\t\treadonly implicit?: boolean\n\t\treadonly tenant?: TenantPermissions\n\t\treadonly system?: SystemPermissions\n\t\treadonly content?: ContentPermissions\n\t\treadonly variables: Acl.Variables\n\t\treadonly stages?: StagesDefinition\n\t\treadonly entities: Permissions\n\t\treadonly debug?: boolean\n\t}\n\n\texport type RolePermissions =\n\t\t& BaseRolePermissions\n\t\t& {\n\t\t\treadonly [key: string] : JSONValue\n\t\t}\n\texport type Permissions = {\n\t\treadonly [entity: string]: EntityPermissions\n\t}\n\n\texport type Roles = { readonly [role: string]: RolePermissions }\n\texport type Variables = { readonly [name: string]: Variable }\n\n\texport type Schema = {\n\t\treadonly customPrimary?: boolean\n\t\treadonly roles: Acl.Roles\n\t}\n\n\texport type VariablesMap = {\n\t\treadonly [name: string]: Input.Condition\n\t}\n\n\texport interface MembershipVariable {\n\t\treadonly name: string\n\t\treadonly values: readonly string[]\n\t}\n\n\texport interface Membership {\n\t\treadonly role: string\n\t\treadonly variables: readonly MembershipVariable[]\n\t}\n}\n"],"names":["Acl","VariableType","Operation","SystemPermissionsLevel"],"mappings":"AAGiB,IAAA;AAAA,CAAV,CAAUA,SAAV;AACC,GAAA,CAAKC,kBAAL;AACNA,kBAAA,QAAS,IAAA;AACTA,kBAAA,YAAa,IAAA;AACbA,kBAAA,WAAY,IAAA;AAAA,EAHD,GAAAD,KAAA,iBAAAA,KAAA,eAAA,CAAA,EAAA;AAyDL,GAAA,CAAKE,eAAL;AACNA,eAAA,MAAO,IAAA;AACPA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AACTA,eAAA,QAAS,IAAA;AAAA,EAJE,GAAAF,KAAA,cAAAA,KAAA,YAAA,CAAA,EAAA;AAmDL,GAAA,CAAKG,4BAAL;AACNA,4BAAA,MAAO,IAAA;AACPA,4BAAA,KAAM,IAAA;AACNA,4BAAA,MAAO,IAAA;AAAA,EAHI,GAAAH,KAAA,2BAAAA,KAAA,yBAAA,CAAA,EAAA;AAAA,GA7GI,QAAA,MAAA,CAAA,EAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"input.cjs","sources":["../../../../../packages/schema/src/schema/input.ts"],"sourcesContent":["import { Value } from './value'\n\nexport namespace Input {\n\texport type PrimaryValue<E = never> = Value.PrimaryValue<E>\n\texport type ColumnValue<E = never> = Value.FieldValue<E>\n\n\texport enum UpdateRelationOperation {\n\t\tconnect = 'connect',\n\t\tdisconnect = 'disconnect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t\tupdate = 'update',\n\t\tupsert = 'upsert',\n\t\tdelete = 'delete',\n\t}\n\n\texport enum CreateRelationOperation {\n\t\tconnect = 'connect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t}\n\n\texport interface ConnectRelationInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t}\n\n\texport interface CreateRelationInput<E = never> {\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateRelationInput<E = never> {\n\t\tconnectOrCreate: ConnectOrCreateInput<E>\n\t}\n\n\texport interface DisconnectSpecifiedRelationInput<E = never> {\n\t\tdisconnect: UniqueWhere<E>\n\t}\n\n\texport interface DeleteSpecifiedRelationInput<E = never> {\n\t\tdelete: UniqueWhere<E>\n\t}\n\n\texport interface UpdateSpecifiedRelationInput<E = never> {\n\t\tupdate: { by: UniqueWhere<E>; data: UpdateDataInput<E> }\n\t}\n\n\texport interface UpsertSpecifiedRelationInput<E = never> {\n\t\tupsert: { by: UniqueWhere<E>; update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface DisconnectRelationInput {\n\t\tdisconnect: true\n\t}\n\n\texport interface UpdateRelationInput<E = never> {\n\t\tupdate: UpdateDataInput<E>\n\t}\n\n\texport interface DeleteRelationInput {\n\t\tdelete: true\n\t}\n\n\texport interface UpsertRelationInput<E = never> {\n\t\tupsert: { update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface CreateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | CreateOneRelationInput<E> | CreateManyRelationInput<E>\n\t}\n\n\texport type CreateOneRelationInput<E = never> = { alias?: string } & (\n\t\t| ConnectRelationInput<E>\n\t\t| CreateRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t)\n\n\texport type CreateManyRelationInput<E = never> = Array<CreateOneRelationInput<E>>\n\n\texport interface UpdateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | UpdateOneRelationInput<E> | UpdateManyRelationInput<E>\n\t}\n\n\texport interface UpdateInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tdata: UpdateDataInput<E>\n\t}\n\n\texport interface UpsertInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tupdate: UpdateDataInput<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface CreateInput<E = never> {\n\t\tdata: CreateDataInput<E>\n\t}\n\n\texport interface DeleteInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface UniqueQueryInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface ListQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\toffset?: number\n\t\tlimit?: number\n\t}\n\n\texport interface PaginationQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\tskip?: number\n\t\tfirst?: number\n\t}\n\n\t/** @deprecated */\n\texport type SelectQueryInput<E = never> = PaginationQueryInput<E>\n\n\texport type UpdateOneRelationInput<E = never> =\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteRelationInput\n\t\t| DisconnectRelationInput\n\t\t| UpdateRelationInput<E>\n\t\t| UpsertRelationInput<E>\n\n\texport type UpdateManyRelationInputItem<E = never> = { alias?: string } & (\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteSpecifiedRelationInput<E>\n\t\t| DisconnectSpecifiedRelationInput<E>\n\t\t| UpdateSpecifiedRelationInput<E>\n\t\t| UpsertSpecifiedRelationInput<E>\n\t)\n\n\texport type UpdateManyRelationInput<E = never> = Array<UpdateManyRelationInputItem<E>>\n\n\texport enum OrderDirection {\n\t\tasc = 'asc',\n\t\tascNullsFirst = 'ascNullsFirst',\n\t\tdesc = 'desc',\n\t\tdescNullsLast = 'descNullsLast',\n\n\t\t/* eslint-disable @typescript-eslint/no-duplicate-enum-values */\n\t\t/** @deprecated use ascNullsFirst*/\n\t\tascNullFirst = 'ascNullsFirst',\n\t\t/* eslint-enable @typescript-eslint/no-duplicate-enum-values */\n\t}\n\n\t// generics required by admin\n\texport type FieldOrderBy<T = OrderDirection> = T | OrderBy<T>\n\n\texport interface OrderByFields<T = OrderDirection> {\n\t\t[fieldName: string]: FieldOrderBy<T>\n\t}\n\n\texport type OrderBy<T = OrderDirection> = OrderByFields<T> & { _random?: boolean; _randomSeeded?: number }\n\n\texport type Condition<T = Value.FieldValue> = {\n\t\treadonly and?: readonly Condition<T>[]\n\t\treadonly or?: readonly Condition<T>[]\n\t\treadonly not?: Condition<T>\n\t\treadonly eq?: T\n\t\treadonly notEq?: T\n\t\treadonly null?: boolean // deprecated\n\t\treadonly isNull?: boolean\n\t\treadonly in?: readonly T[]\n\t\treadonly notIn?: readonly T[]\n\t\treadonly lt?: T\n\t\treadonly lte?: T\n\t\treadonly gt?: T\n\t\treadonly gte?: T\n\t\treadonly never?: true\n\t\treadonly always?: true\n\t\treadonly contains?: string\n\t\treadonly startsWith?: string\n\t\treadonly endsWith?: string\n\t\treadonly containsCI?: string\n\t\treadonly startsWithCI?: string\n\t\treadonly endsWithCI?: string\n\t}\n\n\texport type UniqueWhere<E = never> = {\n\t\treadonly [field: string]: Value.PrimaryValue<E> | UniqueWhere<E>\n\t}\n\n\texport type ComposedWhere<C, Opt = never> = {\n\t\treadonly and?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly or?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly not?: Where<C, Opt> | Opt\n\t}\n\n\texport interface FieldWhere<C = Condition, Opt = never> {\n\t\treadonly [name: string]: Opt | C | Where<C, Opt> | readonly (Where<C, Opt> | Opt)[] //last one if for ComposedWhere\n\t}\n\n\texport type Where<C = Condition, Opt = never> = ComposedWhere<C, Opt> & FieldWhere<C, Opt>\n\n\texport type OptionalWhere<E = never> = Where<Condition<Value.FieldValue<E>>, null | undefined>\n\texport type OptionalFieldWhere<E = never> = FieldWhere<Condition<Value.FieldValue<E>>, null | undefined>\n\n\texport enum FieldMeta {\n\t\treadable = 'readable',\n\t\tupdatable = 'updatable',\n\t}\n}\n"],"names":["Input","UpdateRelationOperation","CreateRelationOperation","OrderDirection","FieldMeta"],"mappings":";;AAEiBA,QAAAA,QAAAA;AAAAA,CAAV,CAAUA,WAAV;AAIC,GAAA,CAAKC,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,YAAa,IAAA;AACbA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAClBA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AAAA,EAPE,GAAAD,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAUL,GAAA,CAAKE,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAAA,EAHP,GAAAF,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAwIL,GAAA,CAAKG,oBAAL;AACNA,oBAAA,KAAM,IAAA;AACNA,oBAAA,eAAgB,IAAA;AAChBA,oBAAA,MAAO,IAAA;AACPA,oBAAA,eAAgB,IAAA;AAIhBA,oBAAA,cAAe,IAAA;AAAA,EARJ,GAAAH,OAAA,mBAAAA,OAAA,iBAAA,CAAA,EAAA;AAgEL,GAAA,CAAKI,eAAL;AACNA,eAAA,UAAW,IAAA;AACXA,eAAA,WAAY,IAAA;AAAA,EAFD,GAAAJ,OAAA,cAAAA,OAAA,YAAA,CAAA,EAAA;AAAA,GAtNIA,QAAA,UAAAA,gBAAA,CAAA,EAAA;"}
1
+ {"version":3,"file":"input.cjs","sources":["../../../../../packages/schema/src/schema/input.ts"],"sourcesContent":["import { Value } from './value'\n\nexport namespace Input {\n\texport type PrimaryValue<E = never> = Value.PrimaryValue<E>\n\texport type ColumnValue<E = never> = Value.FieldValue<E>\n\n\texport enum UpdateRelationOperation {\n\t\tconnect = 'connect',\n\t\tdisconnect = 'disconnect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t\tupdate = 'update',\n\t\tupsert = 'upsert',\n\t\tdelete = 'delete',\n\t}\n\n\texport enum CreateRelationOperation {\n\t\tconnect = 'connect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t}\n\n\texport interface ConnectRelationInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t}\n\n\texport interface CreateRelationInput<E = never> {\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateRelationInput<E = never> {\n\t\tconnectOrCreate: ConnectOrCreateInput<E>\n\t}\n\n\texport interface DisconnectSpecifiedRelationInput<E = never> {\n\t\tdisconnect: UniqueWhere<E>\n\t}\n\n\texport interface DeleteSpecifiedRelationInput<E = never> {\n\t\tdelete: UniqueWhere<E>\n\t}\n\n\texport interface UpdateSpecifiedRelationInput<E = never> {\n\t\tupdate: { by: UniqueWhere<E>; data: UpdateDataInput<E> }\n\t}\n\n\texport interface UpsertSpecifiedRelationInput<E = never> {\n\t\tupsert: { by: UniqueWhere<E>; update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface DisconnectRelationInput {\n\t\tdisconnect: true\n\t}\n\n\texport interface UpdateRelationInput<E = never> {\n\t\tupdate: UpdateDataInput<E>\n\t}\n\n\texport interface DeleteRelationInput {\n\t\tdelete: true\n\t}\n\n\texport interface UpsertRelationInput<E = never> {\n\t\tupsert: { update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface CreateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | CreateOneRelationInput<E> | CreateManyRelationInput<E>\n\t}\n\n\texport type CreateOneRelationInput<E = never> = { alias?: string } & (\n\t\t| ConnectRelationInput<E>\n\t\t| CreateRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t)\n\n\texport type CreateManyRelationInput<E = never> = Array<CreateOneRelationInput<E>>\n\n\texport interface UpdateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | UpdateOneRelationInput<E> | UpdateManyRelationInput<E>\n\t}\n\n\texport interface UpdateInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tdata: UpdateDataInput<E>\n\t}\n\n\texport interface UpsertInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tupdate: UpdateDataInput<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface CreateInput<E = never> {\n\t\tdata: CreateDataInput<E>\n\t}\n\n\texport interface DeleteInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface UniqueQueryInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface ListQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\toffset?: number\n\t\tlimit?: number\n\t}\n\n\texport interface PaginationQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\tskip?: number\n\t\tfirst?: number\n\t}\n\n\t/** @deprecated */\n\texport type SelectQueryInput<E = never> = PaginationQueryInput<E>\n\n\texport type UpdateOneRelationInput<E = never> =\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteRelationInput\n\t\t| DisconnectRelationInput\n\t\t| UpdateRelationInput<E>\n\t\t| UpsertRelationInput<E>\n\n\texport type UpdateManyRelationInputItem<E = never> = { alias?: string } & (\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteSpecifiedRelationInput<E>\n\t\t| DisconnectSpecifiedRelationInput<E>\n\t\t| UpdateSpecifiedRelationInput<E>\n\t\t| UpsertSpecifiedRelationInput<E>\n\t)\n\n\texport type UpdateManyRelationInput<E = never> = Array<UpdateManyRelationInputItem<E>>\n\n\texport enum OrderDirection {\n\t\tasc = 'asc',\n\t\tascNullsFirst = 'ascNullsFirst',\n\t\tdesc = 'desc',\n\t\tdescNullsLast = 'descNullsLast',\n\n\t\t/* eslint-disable @typescript-eslint/no-duplicate-enum-values */\n\t\t/** @deprecated use ascNullsFirst*/\n\t\tascNullFirst = 'ascNullsFirst',\n\t\t/* eslint-enable @typescript-eslint/no-duplicate-enum-values */\n\t}\n\n\t// generics required by admin\n\texport type FieldOrderBy<T = OrderDirection> = T | OrderBy<T>\n\n\texport interface OrderByFields<T = OrderDirection> {\n\t\t[fieldName: string]: FieldOrderBy<T>\n\t}\n\n\texport type OrderBy<T = OrderDirection> = OrderByFields<T> & { _random?: boolean; _randomSeeded?: number }\n\n\texport type Condition<T = Value.FieldValue> = {\n\t\t// boolean\n\t\treadonly and?: readonly Condition<T>[]\n\t\treadonly or?: readonly Condition<T>[]\n\t\treadonly not?: Condition<T>\n\n\t\t// null\n\t\treadonly isNull?: boolean\n\n\t\t// basic\n\t\treadonly eq?: T\n\t\treadonly notEq?: T\n\t\treadonly in?: readonly T[]\n\t\treadonly notIn?: readonly T[]\n\t\treadonly lt?: T\n\t\treadonly lte?: T\n\t\treadonly gt?: T\n\t\treadonly gte?: T\n\n\t\t// array\n\t\treadonly minLength?: number\n\t\treadonly maxLength?: number\n\t\treadonly includes?: T\n\n\t\t// string only\n\t\treadonly contains?: string\n\t\treadonly startsWith?: string\n\t\treadonly endsWith?: string\n\t\treadonly containsCI?: string\n\t\treadonly startsWithCI?: string\n\t\treadonly endsWithCI?: string\n\n\t\t// special\n\t\treadonly never?: true\n\t\treadonly always?: true\n\n\t\t// deprecated\n\t\treadonly null?: boolean\n\t}\n\n\texport type UniqueWhere<E = never> = {\n\t\treadonly [field: string]: Value.PrimaryValue<E> | UniqueWhere<E>\n\t}\n\n\texport type ComposedWhere<C, Opt = never> = {\n\t\treadonly and?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly or?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly not?: Where<C, Opt> | Opt\n\t}\n\n\texport interface FieldWhere<C = Condition, Opt = never> {\n\t\treadonly [name: string]: Opt | C | Where<C, Opt> | readonly (Where<C, Opt> | Opt)[] //last one if for ComposedWhere\n\t}\n\n\texport type Where<C = Condition, Opt = never> = ComposedWhere<C, Opt> & FieldWhere<C, Opt>\n\n\texport type OptionalWhere<E = never> = Where<Condition<Value.FieldValue<E>>, null | undefined>\n\texport type OptionalFieldWhere<E = never> = FieldWhere<Condition<Value.FieldValue<E>>, null | undefined>\n\n\texport enum FieldMeta {\n\t\treadable = 'readable',\n\t\tupdatable = 'updatable',\n\t}\n}\n"],"names":["Input","UpdateRelationOperation","CreateRelationOperation","OrderDirection","FieldMeta"],"mappings":";;AAEiBA,QAAAA,QAAAA;AAAAA,CAAV,CAAUA,WAAV;AAIC,GAAA,CAAKC,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,YAAa,IAAA;AACbA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAClBA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AAAA,EAPE,GAAAD,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAUL,GAAA,CAAKE,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAAA,EAHP,GAAAF,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAwIL,GAAA,CAAKG,oBAAL;AACNA,oBAAA,KAAM,IAAA;AACNA,oBAAA,eAAgB,IAAA;AAChBA,oBAAA,MAAO,IAAA;AACPA,oBAAA,eAAgB,IAAA;AAIhBA,oBAAA,cAAe,IAAA;AAAA,EARJ,GAAAH,OAAA,mBAAAA,OAAA,iBAAA,CAAA,EAAA;AAgFL,GAAA,CAAKI,eAAL;AACNA,eAAA,UAAW,IAAA;AACXA,eAAA,WAAY,IAAA;AAAA,EAFD,GAAAJ,OAAA,cAAAA,OAAA,YAAA,CAAA,EAAA;AAAA,GAtOIA,QAAA,UAAAA,gBAAA,CAAA,EAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"input.js","sources":["../../../../../packages/schema/src/schema/input.ts"],"sourcesContent":["import { Value } from './value'\n\nexport namespace Input {\n\texport type PrimaryValue<E = never> = Value.PrimaryValue<E>\n\texport type ColumnValue<E = never> = Value.FieldValue<E>\n\n\texport enum UpdateRelationOperation {\n\t\tconnect = 'connect',\n\t\tdisconnect = 'disconnect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t\tupdate = 'update',\n\t\tupsert = 'upsert',\n\t\tdelete = 'delete',\n\t}\n\n\texport enum CreateRelationOperation {\n\t\tconnect = 'connect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t}\n\n\texport interface ConnectRelationInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t}\n\n\texport interface CreateRelationInput<E = never> {\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateRelationInput<E = never> {\n\t\tconnectOrCreate: ConnectOrCreateInput<E>\n\t}\n\n\texport interface DisconnectSpecifiedRelationInput<E = never> {\n\t\tdisconnect: UniqueWhere<E>\n\t}\n\n\texport interface DeleteSpecifiedRelationInput<E = never> {\n\t\tdelete: UniqueWhere<E>\n\t}\n\n\texport interface UpdateSpecifiedRelationInput<E = never> {\n\t\tupdate: { by: UniqueWhere<E>; data: UpdateDataInput<E> }\n\t}\n\n\texport interface UpsertSpecifiedRelationInput<E = never> {\n\t\tupsert: { by: UniqueWhere<E>; update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface DisconnectRelationInput {\n\t\tdisconnect: true\n\t}\n\n\texport interface UpdateRelationInput<E = never> {\n\t\tupdate: UpdateDataInput<E>\n\t}\n\n\texport interface DeleteRelationInput {\n\t\tdelete: true\n\t}\n\n\texport interface UpsertRelationInput<E = never> {\n\t\tupsert: { update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface CreateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | CreateOneRelationInput<E> | CreateManyRelationInput<E>\n\t}\n\n\texport type CreateOneRelationInput<E = never> = { alias?: string } & (\n\t\t| ConnectRelationInput<E>\n\t\t| CreateRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t)\n\n\texport type CreateManyRelationInput<E = never> = Array<CreateOneRelationInput<E>>\n\n\texport interface UpdateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | UpdateOneRelationInput<E> | UpdateManyRelationInput<E>\n\t}\n\n\texport interface UpdateInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tdata: UpdateDataInput<E>\n\t}\n\n\texport interface UpsertInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tupdate: UpdateDataInput<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface CreateInput<E = never> {\n\t\tdata: CreateDataInput<E>\n\t}\n\n\texport interface DeleteInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface UniqueQueryInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface ListQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\toffset?: number\n\t\tlimit?: number\n\t}\n\n\texport interface PaginationQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\tskip?: number\n\t\tfirst?: number\n\t}\n\n\t/** @deprecated */\n\texport type SelectQueryInput<E = never> = PaginationQueryInput<E>\n\n\texport type UpdateOneRelationInput<E = never> =\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteRelationInput\n\t\t| DisconnectRelationInput\n\t\t| UpdateRelationInput<E>\n\t\t| UpsertRelationInput<E>\n\n\texport type UpdateManyRelationInputItem<E = never> = { alias?: string } & (\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteSpecifiedRelationInput<E>\n\t\t| DisconnectSpecifiedRelationInput<E>\n\t\t| UpdateSpecifiedRelationInput<E>\n\t\t| UpsertSpecifiedRelationInput<E>\n\t)\n\n\texport type UpdateManyRelationInput<E = never> = Array<UpdateManyRelationInputItem<E>>\n\n\texport enum OrderDirection {\n\t\tasc = 'asc',\n\t\tascNullsFirst = 'ascNullsFirst',\n\t\tdesc = 'desc',\n\t\tdescNullsLast = 'descNullsLast',\n\n\t\t/* eslint-disable @typescript-eslint/no-duplicate-enum-values */\n\t\t/** @deprecated use ascNullsFirst*/\n\t\tascNullFirst = 'ascNullsFirst',\n\t\t/* eslint-enable @typescript-eslint/no-duplicate-enum-values */\n\t}\n\n\t// generics required by admin\n\texport type FieldOrderBy<T = OrderDirection> = T | OrderBy<T>\n\n\texport interface OrderByFields<T = OrderDirection> {\n\t\t[fieldName: string]: FieldOrderBy<T>\n\t}\n\n\texport type OrderBy<T = OrderDirection> = OrderByFields<T> & { _random?: boolean; _randomSeeded?: number }\n\n\texport type Condition<T = Value.FieldValue> = {\n\t\treadonly and?: readonly Condition<T>[]\n\t\treadonly or?: readonly Condition<T>[]\n\t\treadonly not?: Condition<T>\n\t\treadonly eq?: T\n\t\treadonly notEq?: T\n\t\treadonly null?: boolean // deprecated\n\t\treadonly isNull?: boolean\n\t\treadonly in?: readonly T[]\n\t\treadonly notIn?: readonly T[]\n\t\treadonly lt?: T\n\t\treadonly lte?: T\n\t\treadonly gt?: T\n\t\treadonly gte?: T\n\t\treadonly never?: true\n\t\treadonly always?: true\n\t\treadonly contains?: string\n\t\treadonly startsWith?: string\n\t\treadonly endsWith?: string\n\t\treadonly containsCI?: string\n\t\treadonly startsWithCI?: string\n\t\treadonly endsWithCI?: string\n\t}\n\n\texport type UniqueWhere<E = never> = {\n\t\treadonly [field: string]: Value.PrimaryValue<E> | UniqueWhere<E>\n\t}\n\n\texport type ComposedWhere<C, Opt = never> = {\n\t\treadonly and?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly or?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly not?: Where<C, Opt> | Opt\n\t}\n\n\texport interface FieldWhere<C = Condition, Opt = never> {\n\t\treadonly [name: string]: Opt | C | Where<C, Opt> | readonly (Where<C, Opt> | Opt)[] //last one if for ComposedWhere\n\t}\n\n\texport type Where<C = Condition, Opt = never> = ComposedWhere<C, Opt> & FieldWhere<C, Opt>\n\n\texport type OptionalWhere<E = never> = Where<Condition<Value.FieldValue<E>>, null | undefined>\n\texport type OptionalFieldWhere<E = never> = FieldWhere<Condition<Value.FieldValue<E>>, null | undefined>\n\n\texport enum FieldMeta {\n\t\treadable = 'readable',\n\t\tupdatable = 'updatable',\n\t}\n}\n"],"names":["Input","UpdateRelationOperation","CreateRelationOperation","OrderDirection","FieldMeta"],"mappings":"AAEiB,IAAA;AAAA,CAAV,CAAUA,WAAV;AAIC,GAAA,CAAKC,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,YAAa,IAAA;AACbA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAClBA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AAAA,EAPE,GAAAD,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAUL,GAAA,CAAKE,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAAA,EAHP,GAAAF,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAwIL,GAAA,CAAKG,oBAAL;AACNA,oBAAA,KAAM,IAAA;AACNA,oBAAA,eAAgB,IAAA;AAChBA,oBAAA,MAAO,IAAA;AACPA,oBAAA,eAAgB,IAAA;AAIhBA,oBAAA,cAAe,IAAA;AAAA,EARJ,GAAAH,OAAA,mBAAAA,OAAA,iBAAA,CAAA,EAAA;AAgEL,GAAA,CAAKI,eAAL;AACNA,eAAA,UAAW,IAAA;AACXA,eAAA,WAAY,IAAA;AAAA,EAFD,GAAAJ,OAAA,cAAAA,OAAA,YAAA,CAAA,EAAA;AAAA,GAtNI,UAAA,QAAA,CAAA,EAAA;"}
1
+ {"version":3,"file":"input.js","sources":["../../../../../packages/schema/src/schema/input.ts"],"sourcesContent":["import { Value } from './value'\n\nexport namespace Input {\n\texport type PrimaryValue<E = never> = Value.PrimaryValue<E>\n\texport type ColumnValue<E = never> = Value.FieldValue<E>\n\n\texport enum UpdateRelationOperation {\n\t\tconnect = 'connect',\n\t\tdisconnect = 'disconnect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t\tupdate = 'update',\n\t\tupsert = 'upsert',\n\t\tdelete = 'delete',\n\t}\n\n\texport enum CreateRelationOperation {\n\t\tconnect = 'connect',\n\t\tcreate = 'create',\n\t\tconnectOrCreate = 'connectOrCreate',\n\t}\n\n\texport interface ConnectRelationInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t}\n\n\texport interface CreateRelationInput<E = never> {\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateInput<E = never> {\n\t\tconnect: UniqueWhere<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface ConnectOrCreateRelationInput<E = never> {\n\t\tconnectOrCreate: ConnectOrCreateInput<E>\n\t}\n\n\texport interface DisconnectSpecifiedRelationInput<E = never> {\n\t\tdisconnect: UniqueWhere<E>\n\t}\n\n\texport interface DeleteSpecifiedRelationInput<E = never> {\n\t\tdelete: UniqueWhere<E>\n\t}\n\n\texport interface UpdateSpecifiedRelationInput<E = never> {\n\t\tupdate: { by: UniqueWhere<E>; data: UpdateDataInput<E> }\n\t}\n\n\texport interface UpsertSpecifiedRelationInput<E = never> {\n\t\tupsert: { by: UniqueWhere<E>; update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface DisconnectRelationInput {\n\t\tdisconnect: true\n\t}\n\n\texport interface UpdateRelationInput<E = never> {\n\t\tupdate: UpdateDataInput<E>\n\t}\n\n\texport interface DeleteRelationInput {\n\t\tdelete: true\n\t}\n\n\texport interface UpsertRelationInput<E = never> {\n\t\tupsert: { update: UpdateDataInput<E>; create: CreateDataInput<E> }\n\t}\n\n\texport interface CreateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | CreateOneRelationInput<E> | CreateManyRelationInput<E>\n\t}\n\n\texport type CreateOneRelationInput<E = never> = { alias?: string } & (\n\t\t| ConnectRelationInput<E>\n\t\t| CreateRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t)\n\n\texport type CreateManyRelationInput<E = never> = Array<CreateOneRelationInput<E>>\n\n\texport interface UpdateDataInput<E = never> {\n\t\t[column: string]: Value.FieldValue<E> | UpdateOneRelationInput<E> | UpdateManyRelationInput<E>\n\t}\n\n\texport interface UpdateInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tdata: UpdateDataInput<E>\n\t}\n\n\texport interface UpsertInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t\tupdate: UpdateDataInput<E>\n\t\tcreate: CreateDataInput<E>\n\t}\n\n\texport interface CreateInput<E = never> {\n\t\tdata: CreateDataInput<E>\n\t}\n\n\texport interface DeleteInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface UniqueQueryInput<E = never> {\n\t\tby: UniqueWhere<E>\n\t\tfilter?: OptionalWhere<E>\n\t}\n\n\texport interface ListQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\toffset?: number\n\t\tlimit?: number\n\t}\n\n\texport interface PaginationQueryInput<E = never> {\n\t\tfilter?: OptionalWhere<E>\n\t\torderBy?: OrderBy[]\n\t\tskip?: number\n\t\tfirst?: number\n\t}\n\n\t/** @deprecated */\n\texport type SelectQueryInput<E = never> = PaginationQueryInput<E>\n\n\texport type UpdateOneRelationInput<E = never> =\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteRelationInput\n\t\t| DisconnectRelationInput\n\t\t| UpdateRelationInput<E>\n\t\t| UpsertRelationInput<E>\n\n\texport type UpdateManyRelationInputItem<E = never> = { alias?: string } & (\n\t\t| CreateRelationInput<E>\n\t\t| ConnectRelationInput<E>\n\t\t| ConnectOrCreateRelationInput<E>\n\t\t| DeleteSpecifiedRelationInput<E>\n\t\t| DisconnectSpecifiedRelationInput<E>\n\t\t| UpdateSpecifiedRelationInput<E>\n\t\t| UpsertSpecifiedRelationInput<E>\n\t)\n\n\texport type UpdateManyRelationInput<E = never> = Array<UpdateManyRelationInputItem<E>>\n\n\texport enum OrderDirection {\n\t\tasc = 'asc',\n\t\tascNullsFirst = 'ascNullsFirst',\n\t\tdesc = 'desc',\n\t\tdescNullsLast = 'descNullsLast',\n\n\t\t/* eslint-disable @typescript-eslint/no-duplicate-enum-values */\n\t\t/** @deprecated use ascNullsFirst*/\n\t\tascNullFirst = 'ascNullsFirst',\n\t\t/* eslint-enable @typescript-eslint/no-duplicate-enum-values */\n\t}\n\n\t// generics required by admin\n\texport type FieldOrderBy<T = OrderDirection> = T | OrderBy<T>\n\n\texport interface OrderByFields<T = OrderDirection> {\n\t\t[fieldName: string]: FieldOrderBy<T>\n\t}\n\n\texport type OrderBy<T = OrderDirection> = OrderByFields<T> & { _random?: boolean; _randomSeeded?: number }\n\n\texport type Condition<T = Value.FieldValue> = {\n\t\t// boolean\n\t\treadonly and?: readonly Condition<T>[]\n\t\treadonly or?: readonly Condition<T>[]\n\t\treadonly not?: Condition<T>\n\n\t\t// null\n\t\treadonly isNull?: boolean\n\n\t\t// basic\n\t\treadonly eq?: T\n\t\treadonly notEq?: T\n\t\treadonly in?: readonly T[]\n\t\treadonly notIn?: readonly T[]\n\t\treadonly lt?: T\n\t\treadonly lte?: T\n\t\treadonly gt?: T\n\t\treadonly gte?: T\n\n\t\t// array\n\t\treadonly minLength?: number\n\t\treadonly maxLength?: number\n\t\treadonly includes?: T\n\n\t\t// string only\n\t\treadonly contains?: string\n\t\treadonly startsWith?: string\n\t\treadonly endsWith?: string\n\t\treadonly containsCI?: string\n\t\treadonly startsWithCI?: string\n\t\treadonly endsWithCI?: string\n\n\t\t// special\n\t\treadonly never?: true\n\t\treadonly always?: true\n\n\t\t// deprecated\n\t\treadonly null?: boolean\n\t}\n\n\texport type UniqueWhere<E = never> = {\n\t\treadonly [field: string]: Value.PrimaryValue<E> | UniqueWhere<E>\n\t}\n\n\texport type ComposedWhere<C, Opt = never> = {\n\t\treadonly and?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly or?: (readonly (Where<C, Opt> | Opt)[]) | Opt\n\t\treadonly not?: Where<C, Opt> | Opt\n\t}\n\n\texport interface FieldWhere<C = Condition, Opt = never> {\n\t\treadonly [name: string]: Opt | C | Where<C, Opt> | readonly (Where<C, Opt> | Opt)[] //last one if for ComposedWhere\n\t}\n\n\texport type Where<C = Condition, Opt = never> = ComposedWhere<C, Opt> & FieldWhere<C, Opt>\n\n\texport type OptionalWhere<E = never> = Where<Condition<Value.FieldValue<E>>, null | undefined>\n\texport type OptionalFieldWhere<E = never> = FieldWhere<Condition<Value.FieldValue<E>>, null | undefined>\n\n\texport enum FieldMeta {\n\t\treadable = 'readable',\n\t\tupdatable = 'updatable',\n\t}\n}\n"],"names":["Input","UpdateRelationOperation","CreateRelationOperation","OrderDirection","FieldMeta"],"mappings":"AAEiB,IAAA;AAAA,CAAV,CAAUA,WAAV;AAIC,GAAA,CAAKC,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,YAAa,IAAA;AACbA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAClBA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AACTA,6BAAA,QAAS,IAAA;AAAA,EAPE,GAAAD,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAUL,GAAA,CAAKE,6BAAL;AACNA,6BAAA,SAAU,IAAA;AACVA,6BAAA,QAAS,IAAA;AACTA,6BAAA,iBAAkB,IAAA;AAAA,EAHP,GAAAF,OAAA,4BAAAA,OAAA,0BAAA,CAAA,EAAA;AAwIL,GAAA,CAAKG,oBAAL;AACNA,oBAAA,KAAM,IAAA;AACNA,oBAAA,eAAgB,IAAA;AAChBA,oBAAA,MAAO,IAAA;AACPA,oBAAA,eAAgB,IAAA;AAIhBA,oBAAA,cAAe,IAAA;AAAA,EARJ,GAAAH,OAAA,mBAAAA,OAAA,iBAAA,CAAA,EAAA;AAgFL,GAAA,CAAKI,eAAL;AACNA,eAAA,UAAW,IAAA;AACXA,eAAA,WAAY,IAAA;AAAA,EAFD,GAAAJ,OAAA,cAAAA,OAAA,YAAA,CAAA,EAAA;AAAA,GAtOI,UAAA,QAAA,CAAA,EAAA;"}
@@ -12,6 +12,7 @@ exports.Model = void 0;
12
12
  ColumnType2["Enum"] = "Enum";
13
13
  ColumnType2["DateTime"] = "DateTime";
14
14
  ColumnType2["Date"] = "Date";
15
+ ColumnType2["Time"] = "Time";
15
16
  ColumnType2["Json"] = "Json";
16
17
  })(Model2.ColumnType || (Model2.ColumnType = {}));
17
18
  ((RelationType2) => {
@@ -1 +1 @@
1
- {"version":3,"file":"model.cjs","sources":["../../../../../packages/schema/src/schema/model.ts"],"sourcesContent":["import { Input } from './input'\n\nexport namespace Model {\n\n\texport type Entity = {\n\t\treadonly name: string\n\t\treadonly primary: string\n\t\treadonly primaryColumn: string\n\t\treadonly tableName: string\n\t\treadonly fields: { readonly [name: string]: AnyField }\n\t\treadonly unique: UniqueConstraints\n\t\treadonly indexes: Indexes\n\t\treadonly view?: View\n\t\treadonly eventLog: EventLogConfig\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type View = {\n\t\treadonly sql: string\n\t\treadonly dependencies?: readonly string[]\n\t}\n\n\texport type EventLogConfig = {\n\t\treadonly enabled: boolean\n\t}\n\n\texport type FieldType = RelationType | ColumnType\n\texport type Field<T extends FieldType> = {\n\t\treadonly type: T\n\t}\n\n\texport type AnyField = AnyColumn | AnyRelation\n\texport type AnyColumn<T extends ColumnType = ColumnType> = Column<T>\n\n\texport enum ColumnType {\n\t\tUuid = 'Uuid',\n\t\tString = 'String',\n\t\tInt = 'Integer',\n\t\tDouble = 'Double',\n\t\tBool = 'Bool',\n\t\tEnum = 'Enum',\n\t\tDateTime = 'DateTime',\n\t\tDate = 'Date',\n\t\tJson = 'Json',\n\t}\n\n\texport type Column<T extends ColumnType> = ColumnTypeDefinition<T> & {\n\t\treadonly name: string\n\t\treadonly columnName: string\n\t}\n\n\texport type ColumnTypeDefinition<T extends ColumnType = ColumnType> =\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly columnType: string\n\t\t\treadonly typeAlias?: string\n\t\t\treadonly nullable: boolean\n\t\t\treadonly default?: string | number | boolean | null\n\t\t\treadonly sequence?: {\n\t\t\t\treadonly precedence: 'ALWAYS' | 'BY DEFAULT'\n\t\t\t\treadonly start?: number\n\t\t\t}\n\t\t}\n\n\n\texport enum RelationType {\n\t\tOneHasOne = 'OneHasOne',\n\t\tOneHasMany = 'OneHasMany',\n\t\tManyHasOne = 'ManyHasOne',\n\t\tManyHasMany = 'ManyHasMany',\n\t}\n\n\texport type AnyInverseRelation =\n\t\t| OneHasManyRelation\n\t\t| OneHasOneInverseRelation\n\t\t| ManyHasManyInverseRelation\n\n\t/** @deprecated */\n\texport type AnyInversedRelation = AnyInverseRelation\n\n\texport type AnyOwningRelation =\n\t\t| ManyHasOneRelation\n\t\t| OneHasOneOwningRelation\n\t\t| ManyHasManyOwningRelation\n\n\texport type AnyRelation = AnyInverseRelation | AnyOwningRelation\n\n\texport type Relation<T extends RelationType = RelationType>=\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly name: string\n\t\t\treadonly type: T\n\t\t\treadonly target: string\n\t\t}\n\n\texport type InverseRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly ownedBy: string\n\t\t}\n\n\t/** @deprecated */\n\texport type InversedRelation = InverseRelation\n\n\texport type OwningRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly inversedBy?: string\n\t\t}\n\n\t/** @deprecated */\n\texport type OwnerRelation = OwningRelation\n\n\texport enum OnDelete {\n\t\tcascade = 'cascade',\n\t\trestrict = 'restrict',\n\t\tsetNull = 'set null',\n\t}\n\n\texport type JoiningColumn = {\n\t\treadonly columnName: string\n\t\treadonly onDelete: OnDelete\n\t}\n\n\texport type JoiningColumnRelation = {\n\t\treadonly joiningColumn: JoiningColumn\n\t}\n\n\texport type NullableRelation = {\n\t\treadonly nullable: boolean\n\t}\n\n\texport type JoiningTable = {\n\t\treadonly tableName: string\n\t\treadonly joiningColumn: JoiningColumn\n\t\treadonly inverseJoiningColumn: JoiningColumn\n\t\treadonly eventLog: EventLogConfig\n\t}\n\n\texport type JoiningTableRelation = {\n\t\treadonly joiningTable: JoiningTable\n\t}\n\n\texport import OrderDirection = Input.OrderDirection\n\texport type OrderBy = {\n\t\treadonly path: readonly string[]\n\t\treadonly direction: OrderDirection\n\t}\n\n\texport type OrderableRelation = {\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type OneHasManyRelation =\n\t\t& Relation<RelationType.OneHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\n\texport type ManyHasOneRelation =\n\t\t& Relation<RelationType.ManyHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\n\texport type OneHasOneInverseRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& InverseRelation\n\t\t& NullableRelation\n\t/** @deprecated */\n\texport type OneHasOneInversedRelation = OneHasOneInverseRelation\n\n\texport type OneHasOneOwningRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\t\t& {\n\t\t\treadonly orphanRemoval?: true\n\t\t}\n\t/** @deprecated */\n\texport type OneHasOneOwnerRelation = OneHasOneOwningRelation\n\n\texport type ManyHasManyInverseRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyInversedRelation = ManyHasManyInverseRelation\n\n\texport type ManyHasManyOwningRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& OwningRelation\n\t\t& JoiningTableRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyOwnerRelation = ManyHasManyOwningRelation\n\n\texport type Schema = {\n\t\treadonly enums: { readonly [name: string]: readonly string[] }\n\t\treadonly entities: { readonly [name: string]: Entity }\n\t}\n\n\texport type UniqueConstraints = readonly UniqueConstraint[]\n\n\texport type ConstraintTiming = 'deferrable' | 'deferred'\n\texport type UniqueConstraint = {\n\t\treadonly fields: readonly string[]\n\t\treadonly timing?: ConstraintTiming // empty means not deferrable\n\t\treadonly name?: string\n\t}\n\n\texport type Indexes = readonly Index[]\n\n\texport type Index = {\n\t\treadonly fields: readonly string[]\n\t\treadonly name?: string\n\t}\n\n\n\texport interface ColumnContext {\n\t\tentity: Model.Entity\n\t\tcolumn: Model.AnyColumn\n\t}\n\n\texport type AnyHasManyRelationContext =\n\t\t| ManyHasManyInverseContext\n\t\t| ManyHasManyOwningContext\n\t\t| OneHasManyContext\n\n\texport type AnyHasOneRelationContext =\n\t\t| ManyHasOneContext\n\t\t| OneHasOneOwningContext\n\t\t| OneHasOneInverseContext\n\n\texport type AnyRelationContext =\n\t\t| AnyHasManyRelationContext\n\t\t| AnyHasOneRelationContext\n\n\texport type AnyFieldContext =\n\t\t| ColumnContext\n\t\t| AnyRelationContext\n\n\texport interface ManyHasManyInverseContext {\n\t\ttype: 'manyHasManyInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyOwningRelation\n\t}\n\n\texport interface ManyHasManyOwningContext {\n\t\ttype: 'manyHasManyOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyInverseRelation | null\n\t}\n\n\texport interface ManyHasOneContext {\n\t\ttype: 'manyHasOne'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasOneRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasManyRelation | null\n\t}\n\n\texport interface OneHasManyContext {\n\t\ttype: 'oneHasMany'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasManyRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasOneRelation\n\t}\n\n\texport interface OneHasOneInverseContext {\n\t\ttype: 'oneHasOneInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneOwningRelation\n\t}\n\n\texport interface OneHasOneOwningContext {\n\t\ttype: 'oneHasOneOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneInverseRelation | null\n\t}\n\n\n\texport interface ColumnVisitor<T> {\n\t\tvisitColumn(context: ColumnContext): T\n\t}\n\n\texport interface RelationVisitor<T> {\n\t\tvisitRelation(context: AnyRelationContext): T\n\t}\n\n\texport type FieldVisitor<T> =\n\t\t& ColumnVisitor<T>\n\t\t& (\n\t\t\t| RelationVisitor<T>\n\t\t\t| RelationByTypeVisitor<T>\n\t\t\t| RelationByGenericTypeVisitor<T>\n\t\t)\n\n\texport interface RelationByTypeVisitor<T> {\n\t\tvisitManyHasOne(context: ManyHasOneContext): T\n\n\t\tvisitOneHasMany(context: OneHasManyContext): T\n\n\t\tvisitOneHasOneOwning(context: OneHasOneOwningContext): T\n\n\t\tvisitOneHasOneInverse(context: OneHasOneInverseContext): T\n\n\t\tvisitManyHasManyOwning(context: ManyHasManyOwningContext): T\n\n\t\tvisitManyHasManyInverse(context: ManyHasManyInverseContext): T\n\t}\n\n\texport interface RelationByGenericTypeVisitor<T> {\n\t\tvisitHasMany(context: AnyHasManyRelationContext): T\n\n\t\tvisitHasOne(context: AnyHasOneRelationContext): T\n\t}\n}\n"],"names":["Model","ColumnType","RelationType","OnDelete","Input"],"mappings":";;;AAEiBA,QAAAA,QAAAA;AAAAA,CAAV,CAAUA,WAAV;AAgCC,GAAA,CAAKC,gBAAL;AACNA,gBAAA,MAAO,IAAA;AACPA,gBAAA,QAAS,IAAA;AACTA,gBAAA,KAAM,IAAA;AACNA,gBAAA,QAAS,IAAA;AACTA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AACPA,gBAAA,UAAW,IAAA;AACXA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AAAA,EATI,GAAAD,OAAA,eAAAA,OAAA,aAAA,CAAA,EAAA;AA+BL,GAAA,CAAKE,kBAAL;AACNA,kBAAA,WAAY,IAAA;AACZA,kBAAA,YAAa,IAAA;AACbA,kBAAA,YAAa,IAAA;AACbA,kBAAA,aAAc,IAAA;AAAA,EAJH,GAAAF,OAAA,iBAAAA,OAAA,eAAA,CAAA,EAAA;AAgDL,GAAA,CAAKG,cAAL;AACNA,cAAA,SAAU,IAAA;AACVA,cAAA,UAAW,IAAA;AACXA,cAAA,SAAU,IAAA;AAAA,EAHC,GAAAH,OAAA,aAAAA,OAAA,WAAA,CAAA,EAAA;AA8BEA,SAAA,iBAAiBI,MAAAA,MAAM;AAAA,GA7IrBJ,QAAA,UAAAA,gBAAA,CAAA,EAAA;"}
1
+ {"version":3,"file":"model.cjs","sources":["../../../../../packages/schema/src/schema/model.ts"],"sourcesContent":["import { Input } from './input'\nimport { JSONValue } from './json'\n\nexport namespace Model {\n\n\texport type Entity = {\n\t\treadonly name: string\n\t\treadonly primary: string\n\t\treadonly primaryColumn: string\n\t\treadonly tableName: string\n\t\treadonly fields: { readonly [name: string]: AnyField }\n\t\treadonly unique: Uniques\n\t\treadonly indexes: Indexes\n\t\treadonly view?: View\n\t\treadonly eventLog: EventLogConfig\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type View = {\n\t\treadonly sql: string\n\t\treadonly dependencies?: readonly string[]\n\t\treadonly idSource?: readonly string[]\n\t\treadonly materialized?: boolean\n\t}\n\n\texport type EventLogConfig = {\n\t\treadonly enabled: boolean\n\t}\n\n\texport type FieldType = RelationType | ColumnType\n\texport type Field<T extends FieldType> = {\n\t\treadonly type: T\n\t}\n\n\texport type AnyField = AnyColumn | AnyRelation\n\texport type AnyColumn<T extends ColumnType = ColumnType> = Column<T>\n\n\texport enum ColumnType {\n\t\tUuid = 'Uuid',\n\t\tString = 'String',\n\t\tInt = 'Integer',\n\t\tDouble = 'Double',\n\t\tBool = 'Bool',\n\t\tEnum = 'Enum',\n\t\tDateTime = 'DateTime',\n\t\tDate = 'Date',\n\t\tTime = 'Time',\n\t\tJson = 'Json',\n\t}\n\n\texport type Column<T extends ColumnType> = ColumnTypeDefinition<T> & {\n\t\treadonly name: string\n\t\treadonly columnName: string\n\t}\n\n\texport type ColumnTypeDefinition<T extends ColumnType = ColumnType> =\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly columnType: string\n\t\t\treadonly list?: boolean\n\t\t\treadonly typeAlias?: string\n\t\t\treadonly nullable: boolean\n\t\t\treadonly default?: JSONValue\n\t\t\treadonly sequence?: {\n\t\t\t\treadonly precedence: 'ALWAYS' | 'BY DEFAULT'\n\t\t\t\treadonly start?: number\n\t\t\t}\n\t\t\treadonly collation?: Collation\n\t\t}\n\n\texport type Collation =\n\t\t// generic\n\t\t| 'und-x-icu' | 'C' | 'ucs_basic' | 'unicode' | 'POSIX' | 'default'\n\t\t// some languages\n\t\t| 'cs-x-icu' | 'sk-x-icu' | 'da-x-icu' | 'de-x-icu' | 'en-x-icu' | 'es-x-icu' | 'fr-x-icu' | 'it-x-icu' | 'ja-x-icu' | 'ko-x-icu' | 'nl-x-icu' | 'pl-x-icu' | 'pt-x-icu' | 'ru-x-icu' | 'sv-x-icu' | 'tr-x-icu' | 'zh-x-icu' | 'hu-x-icu' | 'fi-x-icu' | 'el-x-icu' | 'bg-x-icu' | 'hr-x-icu' | 'ro-x-icu' | 'sl-x-icu' | 'sr-x-icu' | 'uk-x-icu' | 'vi-x-icu' | 'th-x-icu' | 'ar-x-icu' | 'he-x-icu' | 'hi-x-icu' | 'id-x-icu' | 'ms-x-icu' | 'fil-x-icu' | 'sw-x-icu' | 'ta-x-icu' | 'te-x-icu' | 'ml-x-icu' | 'bn-x-icu' | 'gu-x-icu' | 'kn-x-icu' | 'mr-x-icu' | 'pa-x-icu' | 'ur-x-icu' | 'or-x-icu' | 'si-x-icu' | 'th-x-icu' | 'lo-x-icu' | 'my-x-icu' | 'ka-x-icu' | 'am-x-icu' | 'ti-x-icu' | 'ne-x-icu' | 'dz-x-icu' | 'kok-x-icu' | 'syr-x-icu' | 'sd-x-icu' | 'bo-x-icu' | 'km-x-icu' | 'mn-x-icu' | 'lo-x-icu' | 'gl-x-icu' | 'eu-x-icu' | 'ca-x-icu' | 'af-x-icu' | 'is-x-icu' | 'mk-x-icu' | 'sq-x-icu' | 'hy-x-icu' | 'mt-x-icu' | 'cy-x-icu' | 'et-x-icu' | 'lv-x-icu' | 'lt-x-icu' | 'tg-x-icu' | 'fa-x-icu' | 'ps-x-icu' | 'ks-x-icu' | 'sd-x'\n\t\t// fallback\n\t\t| string & {}\n\n\n\texport enum RelationType {\n\t\tOneHasOne = 'OneHasOne',\n\t\tOneHasMany = 'OneHasMany',\n\t\tManyHasOne = 'ManyHasOne',\n\t\tManyHasMany = 'ManyHasMany',\n\t}\n\n\texport type AnyInverseRelation =\n\t\t| OneHasManyRelation\n\t\t| OneHasOneInverseRelation\n\t\t| ManyHasManyInverseRelation\n\n\t/** @deprecated */\n\texport type AnyInversedRelation = AnyInverseRelation\n\n\texport type AnyOwningRelation =\n\t\t| ManyHasOneRelation\n\t\t| OneHasOneOwningRelation\n\t\t| ManyHasManyOwningRelation\n\n\texport type AnyRelation = AnyInverseRelation | AnyOwningRelation\n\n\texport type Relation<T extends RelationType = RelationType>=\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly name: string\n\t\t\treadonly type: T\n\t\t\treadonly target: string\n\t\t}\n\n\texport type InverseRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly ownedBy: string\n\t\t}\n\n\t/** @deprecated */\n\texport type InversedRelation = InverseRelation\n\n\texport type OwningRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly inversedBy?: string\n\t\t}\n\n\t/** @deprecated */\n\texport type OwnerRelation = OwningRelation\n\n\texport enum OnDelete {\n\t\tcascade = 'cascade',\n\t\trestrict = 'restrict',\n\t\tsetNull = 'set null',\n\t}\n\n\texport type JoiningColumn = {\n\t\treadonly columnName: string\n\t\treadonly onDelete: OnDelete\n\t}\n\n\texport type JoiningColumnRelation = {\n\t\treadonly joiningColumn: JoiningColumn\n\t}\n\n\texport type NullableRelation = {\n\t\treadonly nullable: boolean\n\t}\n\n\texport type JoiningTable = {\n\t\treadonly tableName: string\n\t\treadonly joiningColumn: JoiningColumn\n\t\treadonly inverseJoiningColumn: JoiningColumn\n\t\treadonly eventLog: EventLogConfig\n\t}\n\n\texport type JoiningTableRelation = {\n\t\treadonly joiningTable: JoiningTable\n\t}\n\n\texport import OrderDirection = Input.OrderDirection\n\texport type OrderBy = {\n\t\treadonly path: readonly string[]\n\t\treadonly direction: OrderDirection\n\t}\n\n\texport type OrderableRelation = {\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type OneHasManyRelation =\n\t\t& Relation<RelationType.OneHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\n\texport type ManyHasOneRelation =\n\t\t& Relation<RelationType.ManyHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\n\texport type OneHasOneInverseRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& InverseRelation\n\t\t& NullableRelation\n\t/** @deprecated */\n\texport type OneHasOneInversedRelation = OneHasOneInverseRelation\n\n\texport type OneHasOneOwningRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\t\t& {\n\t\t\treadonly orphanRemoval?: true\n\t\t}\n\t/** @deprecated */\n\texport type OneHasOneOwnerRelation = OneHasOneOwningRelation\n\n\texport type ManyHasManyInverseRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyInversedRelation = ManyHasManyInverseRelation\n\n\texport type ManyHasManyOwningRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& OwningRelation\n\t\t& JoiningTableRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyOwnerRelation = ManyHasManyOwningRelation\n\n\texport type Schema = {\n\t\treadonly enums: { readonly [name: string]: readonly string[] }\n\t\treadonly entities: { readonly [name: string]: Entity }\n\t}\n\n\texport type Unique = UniqueIndex | UniqueConstraint\n\texport type Uniques = readonly (Unique)[]\n\n\texport type ConstraintTiming = 'deferrable' | 'deferred'\n\n\texport type UniqueConstraint = {\n\t\treadonly fields: readonly string[]\n\t\treadonly timing?: ConstraintTiming // empty means not deferrable\n\t\treadonly name?: string\n\t\treadonly index?: false\n\t}\n\texport type NullsDistinctBehaviour = 'distinct' | 'not distinct'\n\texport type UniqueIndex = {\n\t\treadonly fields: readonly string[]\n\t\treadonly index: true\n\t\treadonly nulls?: NullsDistinctBehaviour // empty means distinct\n\t}\n\n\texport type Indexes = readonly Index[]\n\n\texport type Index = {\n\t\treadonly fields: readonly string[]\n\t\treadonly name?: string\n\t}\n\n\n\texport interface ColumnContext {\n\t\tentity: Model.Entity\n\t\tcolumn: Model.AnyColumn\n\t}\n\n\texport type AnyHasManyRelationContext =\n\t\t| ManyHasManyInverseContext\n\t\t| ManyHasManyOwningContext\n\t\t| OneHasManyContext\n\n\texport type AnyHasOneRelationContext =\n\t\t| ManyHasOneContext\n\t\t| OneHasOneOwningContext\n\t\t| OneHasOneInverseContext\n\n\texport type AnyRelationContext =\n\t\t| AnyHasManyRelationContext\n\t\t| AnyHasOneRelationContext\n\n\texport type AnyFieldContext =\n\t\t| ColumnContext\n\t\t| AnyRelationContext\n\n\texport interface ManyHasManyInverseContext {\n\t\ttype: 'manyHasManyInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyOwningRelation\n\t}\n\n\texport interface ManyHasManyOwningContext {\n\t\ttype: 'manyHasManyOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyInverseRelation | null\n\t}\n\n\texport interface ManyHasOneContext {\n\t\ttype: 'manyHasOne'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasOneRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasManyRelation | null\n\t}\n\n\texport interface OneHasManyContext {\n\t\ttype: 'oneHasMany'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasManyRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasOneRelation\n\t}\n\n\texport interface OneHasOneInverseContext {\n\t\ttype: 'oneHasOneInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneOwningRelation\n\t}\n\n\texport interface OneHasOneOwningContext {\n\t\ttype: 'oneHasOneOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneInverseRelation | null\n\t}\n\n\n\texport interface ColumnVisitor<T> {\n\t\tvisitColumn(context: ColumnContext): T\n\t}\n\n\texport interface RelationVisitor<T> {\n\t\tvisitRelation(context: AnyRelationContext): T\n\t}\n\n\texport type FieldVisitor<T> =\n\t\t& ColumnVisitor<T>\n\t\t& (\n\t\t\t| RelationVisitor<T>\n\t\t\t| RelationByTypeVisitor<T>\n\t\t\t| RelationByGenericTypeVisitor<T>\n\t\t)\n\n\texport interface RelationByTypeVisitor<T> {\n\t\tvisitManyHasOne(context: ManyHasOneContext): T\n\n\t\tvisitOneHasMany(context: OneHasManyContext): T\n\n\t\tvisitOneHasOneOwning(context: OneHasOneOwningContext): T\n\n\t\tvisitOneHasOneInverse(context: OneHasOneInverseContext): T\n\n\t\tvisitManyHasManyOwning(context: ManyHasManyOwningContext): T\n\n\t\tvisitManyHasManyInverse(context: ManyHasManyInverseContext): T\n\t}\n\n\texport interface RelationByGenericTypeVisitor<T> {\n\t\tvisitHasMany(context: AnyHasManyRelationContext): T\n\n\t\tvisitHasOne(context: AnyHasOneRelationContext): T\n\t}\n}\n"],"names":["Model","ColumnType","RelationType","OnDelete","Input"],"mappings":";;;AAGiBA,QAAAA,QAAAA;AAAAA,CAAV,CAAUA,WAAV;AAkCC,GAAA,CAAKC,gBAAL;AACNA,gBAAA,MAAO,IAAA;AACPA,gBAAA,QAAS,IAAA;AACTA,gBAAA,KAAM,IAAA;AACNA,gBAAA,QAAS,IAAA;AACTA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AACPA,gBAAA,UAAW,IAAA;AACXA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AAAA,EAVI,GAAAD,OAAA,eAAAA,OAAA,aAAA,CAAA,EAAA;AA0CL,GAAA,CAAKE,kBAAL;AACNA,kBAAA,WAAY,IAAA;AACZA,kBAAA,YAAa,IAAA;AACbA,kBAAA,YAAa,IAAA;AACbA,kBAAA,aAAc,IAAA;AAAA,EAJH,GAAAF,OAAA,iBAAAA,OAAA,eAAA,CAAA,EAAA;AAgDL,GAAA,CAAKG,cAAL;AACNA,cAAA,SAAU,IAAA;AACVA,cAAA,UAAW,IAAA;AACXA,cAAA,SAAU,IAAA;AAAA,EAHC,GAAAH,OAAA,aAAAA,OAAA,WAAA,CAAA,EAAA;AA8BEA,SAAA,iBAAiBI,MAAAA,MAAM;AAAA,GA1JrBJ,QAAA,UAAAA,gBAAA,CAAA,EAAA;"}
@@ -10,6 +10,7 @@ var Model;
10
10
  ColumnType2["Enum"] = "Enum";
11
11
  ColumnType2["DateTime"] = "DateTime";
12
12
  ColumnType2["Date"] = "Date";
13
+ ColumnType2["Time"] = "Time";
13
14
  ColumnType2["Json"] = "Json";
14
15
  })(Model2.ColumnType || (Model2.ColumnType = {}));
15
16
  ((RelationType2) => {
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sources":["../../../../../packages/schema/src/schema/model.ts"],"sourcesContent":["import { Input } from './input'\n\nexport namespace Model {\n\n\texport type Entity = {\n\t\treadonly name: string\n\t\treadonly primary: string\n\t\treadonly primaryColumn: string\n\t\treadonly tableName: string\n\t\treadonly fields: { readonly [name: string]: AnyField }\n\t\treadonly unique: UniqueConstraints\n\t\treadonly indexes: Indexes\n\t\treadonly view?: View\n\t\treadonly eventLog: EventLogConfig\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type View = {\n\t\treadonly sql: string\n\t\treadonly dependencies?: readonly string[]\n\t}\n\n\texport type EventLogConfig = {\n\t\treadonly enabled: boolean\n\t}\n\n\texport type FieldType = RelationType | ColumnType\n\texport type Field<T extends FieldType> = {\n\t\treadonly type: T\n\t}\n\n\texport type AnyField = AnyColumn | AnyRelation\n\texport type AnyColumn<T extends ColumnType = ColumnType> = Column<T>\n\n\texport enum ColumnType {\n\t\tUuid = 'Uuid',\n\t\tString = 'String',\n\t\tInt = 'Integer',\n\t\tDouble = 'Double',\n\t\tBool = 'Bool',\n\t\tEnum = 'Enum',\n\t\tDateTime = 'DateTime',\n\t\tDate = 'Date',\n\t\tJson = 'Json',\n\t}\n\n\texport type Column<T extends ColumnType> = ColumnTypeDefinition<T> & {\n\t\treadonly name: string\n\t\treadonly columnName: string\n\t}\n\n\texport type ColumnTypeDefinition<T extends ColumnType = ColumnType> =\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly columnType: string\n\t\t\treadonly typeAlias?: string\n\t\t\treadonly nullable: boolean\n\t\t\treadonly default?: string | number | boolean | null\n\t\t\treadonly sequence?: {\n\t\t\t\treadonly precedence: 'ALWAYS' | 'BY DEFAULT'\n\t\t\t\treadonly start?: number\n\t\t\t}\n\t\t}\n\n\n\texport enum RelationType {\n\t\tOneHasOne = 'OneHasOne',\n\t\tOneHasMany = 'OneHasMany',\n\t\tManyHasOne = 'ManyHasOne',\n\t\tManyHasMany = 'ManyHasMany',\n\t}\n\n\texport type AnyInverseRelation =\n\t\t| OneHasManyRelation\n\t\t| OneHasOneInverseRelation\n\t\t| ManyHasManyInverseRelation\n\n\t/** @deprecated */\n\texport type AnyInversedRelation = AnyInverseRelation\n\n\texport type AnyOwningRelation =\n\t\t| ManyHasOneRelation\n\t\t| OneHasOneOwningRelation\n\t\t| ManyHasManyOwningRelation\n\n\texport type AnyRelation = AnyInverseRelation | AnyOwningRelation\n\n\texport type Relation<T extends RelationType = RelationType>=\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly name: string\n\t\t\treadonly type: T\n\t\t\treadonly target: string\n\t\t}\n\n\texport type InverseRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly ownedBy: string\n\t\t}\n\n\t/** @deprecated */\n\texport type InversedRelation = InverseRelation\n\n\texport type OwningRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly inversedBy?: string\n\t\t}\n\n\t/** @deprecated */\n\texport type OwnerRelation = OwningRelation\n\n\texport enum OnDelete {\n\t\tcascade = 'cascade',\n\t\trestrict = 'restrict',\n\t\tsetNull = 'set null',\n\t}\n\n\texport type JoiningColumn = {\n\t\treadonly columnName: string\n\t\treadonly onDelete: OnDelete\n\t}\n\n\texport type JoiningColumnRelation = {\n\t\treadonly joiningColumn: JoiningColumn\n\t}\n\n\texport type NullableRelation = {\n\t\treadonly nullable: boolean\n\t}\n\n\texport type JoiningTable = {\n\t\treadonly tableName: string\n\t\treadonly joiningColumn: JoiningColumn\n\t\treadonly inverseJoiningColumn: JoiningColumn\n\t\treadonly eventLog: EventLogConfig\n\t}\n\n\texport type JoiningTableRelation = {\n\t\treadonly joiningTable: JoiningTable\n\t}\n\n\texport import OrderDirection = Input.OrderDirection\n\texport type OrderBy = {\n\t\treadonly path: readonly string[]\n\t\treadonly direction: OrderDirection\n\t}\n\n\texport type OrderableRelation = {\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type OneHasManyRelation =\n\t\t& Relation<RelationType.OneHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\n\texport type ManyHasOneRelation =\n\t\t& Relation<RelationType.ManyHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\n\texport type OneHasOneInverseRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& InverseRelation\n\t\t& NullableRelation\n\t/** @deprecated */\n\texport type OneHasOneInversedRelation = OneHasOneInverseRelation\n\n\texport type OneHasOneOwningRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\t\t& {\n\t\t\treadonly orphanRemoval?: true\n\t\t}\n\t/** @deprecated */\n\texport type OneHasOneOwnerRelation = OneHasOneOwningRelation\n\n\texport type ManyHasManyInverseRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyInversedRelation = ManyHasManyInverseRelation\n\n\texport type ManyHasManyOwningRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& OwningRelation\n\t\t& JoiningTableRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyOwnerRelation = ManyHasManyOwningRelation\n\n\texport type Schema = {\n\t\treadonly enums: { readonly [name: string]: readonly string[] }\n\t\treadonly entities: { readonly [name: string]: Entity }\n\t}\n\n\texport type UniqueConstraints = readonly UniqueConstraint[]\n\n\texport type ConstraintTiming = 'deferrable' | 'deferred'\n\texport type UniqueConstraint = {\n\t\treadonly fields: readonly string[]\n\t\treadonly timing?: ConstraintTiming // empty means not deferrable\n\t\treadonly name?: string\n\t}\n\n\texport type Indexes = readonly Index[]\n\n\texport type Index = {\n\t\treadonly fields: readonly string[]\n\t\treadonly name?: string\n\t}\n\n\n\texport interface ColumnContext {\n\t\tentity: Model.Entity\n\t\tcolumn: Model.AnyColumn\n\t}\n\n\texport type AnyHasManyRelationContext =\n\t\t| ManyHasManyInverseContext\n\t\t| ManyHasManyOwningContext\n\t\t| OneHasManyContext\n\n\texport type AnyHasOneRelationContext =\n\t\t| ManyHasOneContext\n\t\t| OneHasOneOwningContext\n\t\t| OneHasOneInverseContext\n\n\texport type AnyRelationContext =\n\t\t| AnyHasManyRelationContext\n\t\t| AnyHasOneRelationContext\n\n\texport type AnyFieldContext =\n\t\t| ColumnContext\n\t\t| AnyRelationContext\n\n\texport interface ManyHasManyInverseContext {\n\t\ttype: 'manyHasManyInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyOwningRelation\n\t}\n\n\texport interface ManyHasManyOwningContext {\n\t\ttype: 'manyHasManyOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyInverseRelation | null\n\t}\n\n\texport interface ManyHasOneContext {\n\t\ttype: 'manyHasOne'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasOneRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasManyRelation | null\n\t}\n\n\texport interface OneHasManyContext {\n\t\ttype: 'oneHasMany'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasManyRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasOneRelation\n\t}\n\n\texport interface OneHasOneInverseContext {\n\t\ttype: 'oneHasOneInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneOwningRelation\n\t}\n\n\texport interface OneHasOneOwningContext {\n\t\ttype: 'oneHasOneOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneInverseRelation | null\n\t}\n\n\n\texport interface ColumnVisitor<T> {\n\t\tvisitColumn(context: ColumnContext): T\n\t}\n\n\texport interface RelationVisitor<T> {\n\t\tvisitRelation(context: AnyRelationContext): T\n\t}\n\n\texport type FieldVisitor<T> =\n\t\t& ColumnVisitor<T>\n\t\t& (\n\t\t\t| RelationVisitor<T>\n\t\t\t| RelationByTypeVisitor<T>\n\t\t\t| RelationByGenericTypeVisitor<T>\n\t\t)\n\n\texport interface RelationByTypeVisitor<T> {\n\t\tvisitManyHasOne(context: ManyHasOneContext): T\n\n\t\tvisitOneHasMany(context: OneHasManyContext): T\n\n\t\tvisitOneHasOneOwning(context: OneHasOneOwningContext): T\n\n\t\tvisitOneHasOneInverse(context: OneHasOneInverseContext): T\n\n\t\tvisitManyHasManyOwning(context: ManyHasManyOwningContext): T\n\n\t\tvisitManyHasManyInverse(context: ManyHasManyInverseContext): T\n\t}\n\n\texport interface RelationByGenericTypeVisitor<T> {\n\t\tvisitHasMany(context: AnyHasManyRelationContext): T\n\n\t\tvisitHasOne(context: AnyHasOneRelationContext): T\n\t}\n}\n"],"names":["Model","ColumnType","RelationType","OnDelete"],"mappings":";AAEiB,IAAA;AAAA,CAAV,CAAUA,WAAV;AAgCC,GAAA,CAAKC,gBAAL;AACNA,gBAAA,MAAO,IAAA;AACPA,gBAAA,QAAS,IAAA;AACTA,gBAAA,KAAM,IAAA;AACNA,gBAAA,QAAS,IAAA;AACTA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AACPA,gBAAA,UAAW,IAAA;AACXA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AAAA,EATI,GAAAD,OAAA,eAAAA,OAAA,aAAA,CAAA,EAAA;AA+BL,GAAA,CAAKE,kBAAL;AACNA,kBAAA,WAAY,IAAA;AACZA,kBAAA,YAAa,IAAA;AACbA,kBAAA,YAAa,IAAA;AACbA,kBAAA,aAAc,IAAA;AAAA,EAJH,GAAAF,OAAA,iBAAAA,OAAA,eAAA,CAAA,EAAA;AAgDL,GAAA,CAAKG,cAAL;AACNA,cAAA,SAAU,IAAA;AACVA,cAAA,UAAW,IAAA;AACXA,cAAA,SAAU,IAAA;AAAA,EAHC,GAAAH,OAAA,aAAAA,OAAA,WAAA,CAAA,EAAA;AA8BEA,SAAA,iBAAiB,MAAM;AAAA,GA7IrB,UAAA,QAAA,CAAA,EAAA;"}
1
+ {"version":3,"file":"model.js","sources":["../../../../../packages/schema/src/schema/model.ts"],"sourcesContent":["import { Input } from './input'\nimport { JSONValue } from './json'\n\nexport namespace Model {\n\n\texport type Entity = {\n\t\treadonly name: string\n\t\treadonly primary: string\n\t\treadonly primaryColumn: string\n\t\treadonly tableName: string\n\t\treadonly fields: { readonly [name: string]: AnyField }\n\t\treadonly unique: Uniques\n\t\treadonly indexes: Indexes\n\t\treadonly view?: View\n\t\treadonly eventLog: EventLogConfig\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type View = {\n\t\treadonly sql: string\n\t\treadonly dependencies?: readonly string[]\n\t\treadonly idSource?: readonly string[]\n\t\treadonly materialized?: boolean\n\t}\n\n\texport type EventLogConfig = {\n\t\treadonly enabled: boolean\n\t}\n\n\texport type FieldType = RelationType | ColumnType\n\texport type Field<T extends FieldType> = {\n\t\treadonly type: T\n\t}\n\n\texport type AnyField = AnyColumn | AnyRelation\n\texport type AnyColumn<T extends ColumnType = ColumnType> = Column<T>\n\n\texport enum ColumnType {\n\t\tUuid = 'Uuid',\n\t\tString = 'String',\n\t\tInt = 'Integer',\n\t\tDouble = 'Double',\n\t\tBool = 'Bool',\n\t\tEnum = 'Enum',\n\t\tDateTime = 'DateTime',\n\t\tDate = 'Date',\n\t\tTime = 'Time',\n\t\tJson = 'Json',\n\t}\n\n\texport type Column<T extends ColumnType> = ColumnTypeDefinition<T> & {\n\t\treadonly name: string\n\t\treadonly columnName: string\n\t}\n\n\texport type ColumnTypeDefinition<T extends ColumnType = ColumnType> =\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly columnType: string\n\t\t\treadonly list?: boolean\n\t\t\treadonly typeAlias?: string\n\t\t\treadonly nullable: boolean\n\t\t\treadonly default?: JSONValue\n\t\t\treadonly sequence?: {\n\t\t\t\treadonly precedence: 'ALWAYS' | 'BY DEFAULT'\n\t\t\t\treadonly start?: number\n\t\t\t}\n\t\t\treadonly collation?: Collation\n\t\t}\n\n\texport type Collation =\n\t\t// generic\n\t\t| 'und-x-icu' | 'C' | 'ucs_basic' | 'unicode' | 'POSIX' | 'default'\n\t\t// some languages\n\t\t| 'cs-x-icu' | 'sk-x-icu' | 'da-x-icu' | 'de-x-icu' | 'en-x-icu' | 'es-x-icu' | 'fr-x-icu' | 'it-x-icu' | 'ja-x-icu' | 'ko-x-icu' | 'nl-x-icu' | 'pl-x-icu' | 'pt-x-icu' | 'ru-x-icu' | 'sv-x-icu' | 'tr-x-icu' | 'zh-x-icu' | 'hu-x-icu' | 'fi-x-icu' | 'el-x-icu' | 'bg-x-icu' | 'hr-x-icu' | 'ro-x-icu' | 'sl-x-icu' | 'sr-x-icu' | 'uk-x-icu' | 'vi-x-icu' | 'th-x-icu' | 'ar-x-icu' | 'he-x-icu' | 'hi-x-icu' | 'id-x-icu' | 'ms-x-icu' | 'fil-x-icu' | 'sw-x-icu' | 'ta-x-icu' | 'te-x-icu' | 'ml-x-icu' | 'bn-x-icu' | 'gu-x-icu' | 'kn-x-icu' | 'mr-x-icu' | 'pa-x-icu' | 'ur-x-icu' | 'or-x-icu' | 'si-x-icu' | 'th-x-icu' | 'lo-x-icu' | 'my-x-icu' | 'ka-x-icu' | 'am-x-icu' | 'ti-x-icu' | 'ne-x-icu' | 'dz-x-icu' | 'kok-x-icu' | 'syr-x-icu' | 'sd-x-icu' | 'bo-x-icu' | 'km-x-icu' | 'mn-x-icu' | 'lo-x-icu' | 'gl-x-icu' | 'eu-x-icu' | 'ca-x-icu' | 'af-x-icu' | 'is-x-icu' | 'mk-x-icu' | 'sq-x-icu' | 'hy-x-icu' | 'mt-x-icu' | 'cy-x-icu' | 'et-x-icu' | 'lv-x-icu' | 'lt-x-icu' | 'tg-x-icu' | 'fa-x-icu' | 'ps-x-icu' | 'ks-x-icu' | 'sd-x'\n\t\t// fallback\n\t\t| string & {}\n\n\n\texport enum RelationType {\n\t\tOneHasOne = 'OneHasOne',\n\t\tOneHasMany = 'OneHasMany',\n\t\tManyHasOne = 'ManyHasOne',\n\t\tManyHasMany = 'ManyHasMany',\n\t}\n\n\texport type AnyInverseRelation =\n\t\t| OneHasManyRelation\n\t\t| OneHasOneInverseRelation\n\t\t| ManyHasManyInverseRelation\n\n\t/** @deprecated */\n\texport type AnyInversedRelation = AnyInverseRelation\n\n\texport type AnyOwningRelation =\n\t\t| ManyHasOneRelation\n\t\t| OneHasOneOwningRelation\n\t\t| ManyHasManyOwningRelation\n\n\texport type AnyRelation = AnyInverseRelation | AnyOwningRelation\n\n\texport type Relation<T extends RelationType = RelationType>=\n\t\t& Field<T>\n\t\t& {\n\t\t\treadonly name: string\n\t\t\treadonly type: T\n\t\t\treadonly target: string\n\t\t}\n\n\texport type InverseRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly ownedBy: string\n\t\t}\n\n\t/** @deprecated */\n\texport type InversedRelation = InverseRelation\n\n\texport type OwningRelation =\n\t\t& Relation\n\t\t& {\n\t\t\treadonly inversedBy?: string\n\t\t}\n\n\t/** @deprecated */\n\texport type OwnerRelation = OwningRelation\n\n\texport enum OnDelete {\n\t\tcascade = 'cascade',\n\t\trestrict = 'restrict',\n\t\tsetNull = 'set null',\n\t}\n\n\texport type JoiningColumn = {\n\t\treadonly columnName: string\n\t\treadonly onDelete: OnDelete\n\t}\n\n\texport type JoiningColumnRelation = {\n\t\treadonly joiningColumn: JoiningColumn\n\t}\n\n\texport type NullableRelation = {\n\t\treadonly nullable: boolean\n\t}\n\n\texport type JoiningTable = {\n\t\treadonly tableName: string\n\t\treadonly joiningColumn: JoiningColumn\n\t\treadonly inverseJoiningColumn: JoiningColumn\n\t\treadonly eventLog: EventLogConfig\n\t}\n\n\texport type JoiningTableRelation = {\n\t\treadonly joiningTable: JoiningTable\n\t}\n\n\texport import OrderDirection = Input.OrderDirection\n\texport type OrderBy = {\n\t\treadonly path: readonly string[]\n\t\treadonly direction: OrderDirection\n\t}\n\n\texport type OrderableRelation = {\n\t\treadonly orderBy?: readonly OrderBy[]\n\t}\n\n\texport type OneHasManyRelation =\n\t\t& Relation<RelationType.OneHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\n\texport type ManyHasOneRelation =\n\t\t& Relation<RelationType.ManyHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\n\texport type OneHasOneInverseRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& InverseRelation\n\t\t& NullableRelation\n\t/** @deprecated */\n\texport type OneHasOneInversedRelation = OneHasOneInverseRelation\n\n\texport type OneHasOneOwningRelation =\n\t\t& Relation<RelationType.OneHasOne>\n\t\t& OwningRelation\n\t\t& JoiningColumnRelation\n\t\t& NullableRelation\n\t\t& {\n\t\t\treadonly orphanRemoval?: true\n\t\t}\n\t/** @deprecated */\n\texport type OneHasOneOwnerRelation = OneHasOneOwningRelation\n\n\texport type ManyHasManyInverseRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& InverseRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyInversedRelation = ManyHasManyInverseRelation\n\n\texport type ManyHasManyOwningRelation =\n\t\t& Relation<RelationType.ManyHasMany>\n\t\t& OwningRelation\n\t\t& JoiningTableRelation\n\t\t& OrderableRelation\n\t/** @deprecated */\n\texport type ManyHasManyOwnerRelation = ManyHasManyOwningRelation\n\n\texport type Schema = {\n\t\treadonly enums: { readonly [name: string]: readonly string[] }\n\t\treadonly entities: { readonly [name: string]: Entity }\n\t}\n\n\texport type Unique = UniqueIndex | UniqueConstraint\n\texport type Uniques = readonly (Unique)[]\n\n\texport type ConstraintTiming = 'deferrable' | 'deferred'\n\n\texport type UniqueConstraint = {\n\t\treadonly fields: readonly string[]\n\t\treadonly timing?: ConstraintTiming // empty means not deferrable\n\t\treadonly name?: string\n\t\treadonly index?: false\n\t}\n\texport type NullsDistinctBehaviour = 'distinct' | 'not distinct'\n\texport type UniqueIndex = {\n\t\treadonly fields: readonly string[]\n\t\treadonly index: true\n\t\treadonly nulls?: NullsDistinctBehaviour // empty means distinct\n\t}\n\n\texport type Indexes = readonly Index[]\n\n\texport type Index = {\n\t\treadonly fields: readonly string[]\n\t\treadonly name?: string\n\t}\n\n\n\texport interface ColumnContext {\n\t\tentity: Model.Entity\n\t\tcolumn: Model.AnyColumn\n\t}\n\n\texport type AnyHasManyRelationContext =\n\t\t| ManyHasManyInverseContext\n\t\t| ManyHasManyOwningContext\n\t\t| OneHasManyContext\n\n\texport type AnyHasOneRelationContext =\n\t\t| ManyHasOneContext\n\t\t| OneHasOneOwningContext\n\t\t| OneHasOneInverseContext\n\n\texport type AnyRelationContext =\n\t\t| AnyHasManyRelationContext\n\t\t| AnyHasOneRelationContext\n\n\texport type AnyFieldContext =\n\t\t| ColumnContext\n\t\t| AnyRelationContext\n\n\texport interface ManyHasManyInverseContext {\n\t\ttype: 'manyHasManyInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyOwningRelation\n\t}\n\n\texport interface ManyHasManyOwningContext {\n\t\ttype: 'manyHasManyOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasManyOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasManyInverseRelation | null\n\t}\n\n\texport interface ManyHasOneContext {\n\t\ttype: 'manyHasOne'\n\t\tentity: Model.Entity\n\t\trelation: Model.ManyHasOneRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasManyRelation | null\n\t}\n\n\texport interface OneHasManyContext {\n\t\ttype: 'oneHasMany'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasManyRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.ManyHasOneRelation\n\t}\n\n\texport interface OneHasOneInverseContext {\n\t\ttype: 'oneHasOneInverse'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneInverseRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneOwningRelation\n\t}\n\n\texport interface OneHasOneOwningContext {\n\t\ttype: 'oneHasOneOwning'\n\t\tentity: Model.Entity\n\t\trelation: Model.OneHasOneOwningRelation\n\t\ttargetEntity: Model.Entity\n\t\ttargetRelation: Model.OneHasOneInverseRelation | null\n\t}\n\n\n\texport interface ColumnVisitor<T> {\n\t\tvisitColumn(context: ColumnContext): T\n\t}\n\n\texport interface RelationVisitor<T> {\n\t\tvisitRelation(context: AnyRelationContext): T\n\t}\n\n\texport type FieldVisitor<T> =\n\t\t& ColumnVisitor<T>\n\t\t& (\n\t\t\t| RelationVisitor<T>\n\t\t\t| RelationByTypeVisitor<T>\n\t\t\t| RelationByGenericTypeVisitor<T>\n\t\t)\n\n\texport interface RelationByTypeVisitor<T> {\n\t\tvisitManyHasOne(context: ManyHasOneContext): T\n\n\t\tvisitOneHasMany(context: OneHasManyContext): T\n\n\t\tvisitOneHasOneOwning(context: OneHasOneOwningContext): T\n\n\t\tvisitOneHasOneInverse(context: OneHasOneInverseContext): T\n\n\t\tvisitManyHasManyOwning(context: ManyHasManyOwningContext): T\n\n\t\tvisitManyHasManyInverse(context: ManyHasManyInverseContext): T\n\t}\n\n\texport interface RelationByGenericTypeVisitor<T> {\n\t\tvisitHasMany(context: AnyHasManyRelationContext): T\n\n\t\tvisitHasOne(context: AnyHasOneRelationContext): T\n\t}\n}\n"],"names":["Model","ColumnType","RelationType","OnDelete"],"mappings":";AAGiB,IAAA;AAAA,CAAV,CAAUA,WAAV;AAkCC,GAAA,CAAKC,gBAAL;AACNA,gBAAA,MAAO,IAAA;AACPA,gBAAA,QAAS,IAAA;AACTA,gBAAA,KAAM,IAAA;AACNA,gBAAA,QAAS,IAAA;AACTA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AACPA,gBAAA,UAAW,IAAA;AACXA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AACPA,gBAAA,MAAO,IAAA;AAAA,EAVI,GAAAD,OAAA,eAAAA,OAAA,aAAA,CAAA,EAAA;AA0CL,GAAA,CAAKE,kBAAL;AACNA,kBAAA,WAAY,IAAA;AACZA,kBAAA,YAAa,IAAA;AACbA,kBAAA,YAAa,IAAA;AACbA,kBAAA,aAAc,IAAA;AAAA,EAJH,GAAAF,OAAA,iBAAAA,OAAA,eAAA,CAAA,EAAA;AAgDL,GAAA,CAAKG,cAAL;AACNA,cAAA,SAAU,IAAA;AACVA,cAAA,UAAW,IAAA;AACXA,cAAA,SAAU,IAAA;AAAA,EAHC,GAAAH,OAAA,aAAAA,OAAA,WAAA,CAAA,EAAA;AA8BEA,SAAA,iBAAiB,MAAM;AAAA,GA1JrB,UAAA,QAAA,CAAA,EAAA;"}
@@ -39,10 +39,11 @@ export declare namespace Acl {
39
39
  type EntityOperations = {
40
40
  readonly read?: FieldPermissions;
41
41
  readonly create?: FieldPermissions;
42
- readonly customPrimary?: boolean;
43
42
  readonly update?: FieldPermissions;
44
43
  readonly delete?: Predicate;
45
44
  readonly noRoot?: readonly `${Operation}`[];
45
+ readonly customPrimary?: boolean;
46
+ readonly refreshMaterializedView?: boolean;
46
47
  };
47
48
  type FieldPermissions = {
48
49
  readonly [field: string]: Predicate;
@@ -87,6 +88,7 @@ export declare namespace Acl {
87
88
  readonly assumeMembership?: MembershipMatchRule;
88
89
  readonly export?: boolean;
89
90
  readonly import?: boolean;
91
+ readonly refreshMaterializedView?: boolean;
90
92
  };
91
93
  interface BaseRolePermissions {
92
94
  readonly inherits?: readonly string[];