{"version":3,"file":"unique-constraint.cjs","names":["entityKind"],"sources":["../../src/mssql-core/unique-constraint.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { MsSqlColumn } from './columns/index.ts';\nimport type { MsSqlTable } from './table.ts';\n\nexport function unique(name?: string): UniqueOnConstraintBuilder {\n\treturn new UniqueOnConstraintBuilder(name);\n}\n\nexport class UniqueConstraintBuilder {\n\tstatic readonly [entityKind]: string = 'MsSqlUniqueConstraintBuilder';\n\n\t/** @internal */\n\tcolumns: MsSqlColumn[];\n\n\tconstructor(\n\t\tcolumns: MsSqlColumn[],\n\t\tprivate name?: string,\n\t) {\n\t\tthis.columns = columns;\n\t}\n\n\t/** @internal */\n\tbuild(table: MsSqlTable): UniqueConstraint {\n\t\treturn new UniqueConstraint(table, this.columns, this.name);\n\t}\n}\n\nexport class UniqueOnConstraintBuilder {\n\tstatic readonly [entityKind]: string = 'MsSqlUniqueOnConstraintBuilder';\n\n\t/** @internal */\n\tname?: string;\n\n\tconstructor(\n\t\tname?: string,\n\t) {\n\t\tthis.name = name;\n\t}\n\n\ton(...columns: [MsSqlColumn, ...MsSqlColumn[]]) {\n\t\treturn new UniqueConstraintBuilder(columns, this.name);\n\t}\n}\n\nexport class UniqueConstraint {\n\tstatic readonly [entityKind]: string = 'MsSqlUniqueConstraint';\n\n\treadonly columns: MsSqlColumn[];\n\treadonly name?: string;\n\treadonly nullsNotDistinct: boolean = false;\n\treadonly isNameExplicit: boolean;\n\n\tconstructor(readonly table: MsSqlTable, columns: MsSqlColumn[], name?: string) {\n\t\tthis.columns = columns;\n\t\tthis.name = name;\n\t\tthis.isNameExplicit = !!name;\n\t}\n\n\tgetName() {\n\t\treturn this.name;\n\t}\n}\n"],"mappings":";;;;;AAIA,SAAgB,OAAO,MAA0C;AAChE,QAAO,IAAI,0BAA0B,KAAK;;AAG3C,IAAa,0BAAb,MAAqC;CACpC,QAAiBA,0BAAsB;;CAGvC;CAEA,YACC,SACA,AAAQ,MACP;EADO;AAER,OAAK,UAAU;;;CAIhB,MAAM,OAAqC;AAC1C,SAAO,IAAI,iBAAiB,OAAO,KAAK,SAAS,KAAK,KAAK;;;AAI7D,IAAa,4BAAb,MAAuC;CACtC,QAAiBA,0BAAsB;;CAGvC;CAEA,YACC,MACC;AACD,OAAK,OAAO;;CAGb,GAAG,GAAG,SAA0C;AAC/C,SAAO,IAAI,wBAAwB,SAAS,KAAK,KAAK;;;AAIxD,IAAa,mBAAb,MAA8B;CAC7B,QAAiBA,0BAAsB;CAEvC,AAAS;CACT,AAAS;CACT,AAAS,mBAA4B;CACrC,AAAS;CAET,YAAY,AAAS,OAAmB,SAAwB,MAAe;EAA1D;AACpB,OAAK,UAAU;AACf,OAAK,OAAO;AACZ,OAAK,iBAAiB,CAAC,CAAC;;CAGzB,UAAU;AACT,SAAO,KAAK"}