| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- import { entityKind } from "../entity.js";
- class IndexBuilderOn {
- constructor(name, unique) {
- this.name = name;
- this.unique = unique;
- }
- static [entityKind] = "SQLiteIndexBuilderOn";
- on(...columns) {
- return new IndexBuilder(this.name, columns, this.unique);
- }
- }
- class IndexBuilder {
- static [entityKind] = "SQLiteIndexBuilder";
- /** @internal */
- config;
- constructor(name, columns, unique) {
- this.config = {
- name,
- columns,
- unique,
- where: void 0
- };
- }
- /**
- * Condition for partial index.
- */
- where(condition) {
- this.config.where = condition;
- return this;
- }
- /** @internal */
- build(table) {
- return new Index(this.config, table);
- }
- }
- class Index {
- static [entityKind] = "SQLiteIndex";
- config;
- constructor(config, table) {
- this.config = { ...config, table };
- }
- }
- function index(name) {
- return new IndexBuilderOn(name, false);
- }
- function uniqueIndex(name) {
- return new IndexBuilderOn(name, true);
- }
- export {
- Index,
- IndexBuilder,
- IndexBuilderOn,
- index,
- uniqueIndex
- };
- //# sourceMappingURL=indexes.js.map
|