orchid-orm 1.72.2 → 1.72.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -313,6 +313,7 @@ var BelongsToVirtualColumn = class extends VirtualColumn {
313
313
  this.nestedUpdate = nestedUpdate$2(this.state);
314
314
  }
315
315
  create(q, ctx, items) {
316
+ const queryForCreate = q;
316
317
  const { key, state: { query, primaryKeys, foreignKeys } } = this;
317
318
  let nestedCreateItems;
318
319
  items.forEach((item) => {
@@ -331,7 +332,7 @@ var BelongsToVirtualColumn = class extends VirtualColumn {
331
332
  if (!nestedCreateItems) return;
332
333
  for (const key of foreignKeys) if (!ctx.columns.has(key)) ctx.columns.set(key, ctx.columns.size);
333
334
  const { create, connect, connectOrCreate } = nestedCreateItems;
334
- if (create) _prependWith(q, (as) => {
335
+ if (create) _prependWith(queryForCreate, (as) => {
335
336
  const count = create.items.length;
336
337
  foreignKeys.forEach((foreignKey, i) => {
337
338
  const primaryKey = primaryKeys[i];
@@ -341,20 +342,21 @@ var BelongsToVirtualColumn = class extends VirtualColumn {
341
342
  });
342
343
  }, _queryInsertMany(query.select(...primaryKeys), create.values));
343
344
  if (connect) connect.values.forEach((value, itemI) => {
344
- const as = getFreeAlias(q.q.withShapes, "q");
345
- _prependWith(q, as, query.select(...primaryKeys).findBy(value));
345
+ const as = getFreeAlias(queryForCreate.q.withShapes, "q");
346
+ _prependWith(queryForCreate, as, query.select(...primaryKeys).findBy(value));
346
347
  foreignKeys.map((foreignKey, i) => {
347
348
  connect.items[itemI][foreignKey] = new RawSql(selectCteColumnMustExistSql(i, as, primaryKeys[i]));
348
349
  });
349
350
  });
350
351
  if (connectOrCreate) connectOrCreate.values.forEach((value, itemI) => {
351
- _prependWith(q, setForeignKeysFromCte(connectOrCreate.items[itemI], primaryKeys, foreignKeys), _orCreate(_queryWhere(query.select(...primaryKeys), [value.where]), value.create));
352
+ _prependWith(queryForCreate, setForeignKeysFromCte(connectOrCreate.items[itemI], primaryKeys, foreignKeys), _orCreate(_queryWhere(query.select(...primaryKeys), [value.where]), value.create));
352
353
  });
353
354
  }
354
355
  update(q, set) {
355
- q.q.wrapInTransaction = true;
356
+ const queryForUpdate = q;
357
+ queryForUpdate.q.wrapInTransaction = true;
356
358
  const data = set[this.key];
357
- this.nestedUpdate(q, set, data);
359
+ this.nestedUpdate(queryForUpdate, set, data);
358
360
  }
359
361
  };
360
362
  const makeBelongsToMethod = (tableConfig, table, relation, relationName, query) => {
@@ -486,7 +488,8 @@ var HasOneVirtualColumn = class extends VirtualColumn {
486
488
  for (const foreignKey of state.foreignKeys) this.setNulls[foreignKey] = null;
487
489
  }
488
490
  create(self, ctx, items, rowIndexes, count) {
489
- if (count <= self.qb.internal.nestedCreateBatchMax) {
491
+ const querySelf = self;
492
+ if (count <= querySelf.qb.internal.nestedCreateBatchMax) {
490
493
  const { query: rel, primaryKeys, foreignKeys } = this.state;
491
494
  let nestedCreateItems;
492
495
  items.forEach((item, i) => {
@@ -509,7 +512,7 @@ var HasOneVirtualColumn = class extends VirtualColumn {
509
512
  let createAs;
510
513
  let connectAs;
511
514
  let connectOrCreateAs;
512
- _hookSelectColumns(self, primaryKeys, (aliasedPrimaryKeys) => {
515
+ _hookSelectColumns(querySelf, primaryKeys, (aliasedPrimaryKeys) => {
513
516
  foreignKeys.forEach((key, keyI) => {
514
517
  const primaryKey = aliasedPrimaryKeys[keyI];
515
518
  if (create && createAs) for (let i = 0; i < create.items.length; i++) create.items[i][key]._sql = selectCteColumnFromManySql(createAs, primaryKey, create.indexes[i], count);
@@ -518,14 +521,14 @@ var HasOneVirtualColumn = class extends VirtualColumn {
518
521
  });
519
522
  });
520
523
  const { create, connect, connectOrCreate } = nestedCreateItems;
521
- if (create) _appendQuery(self, _queryInsertMany(_clone(rel), create.items), (as) => createAs = as);
524
+ if (create) _appendQuery(querySelf, _queryInsertMany(_clone(rel), create.items), (as) => createAs = as);
522
525
  if (connect) connect.values.forEach((value, i) => {
523
526
  const query = _queryUpdateOrThrow(rel.where(value), connect.items[i]);
524
527
  query.q.ensureCount = 1;
525
- _appendQuery(self, query, (as) => connectAs = as);
528
+ _appendQuery(querySelf, query, (as) => connectAs = as);
526
529
  });
527
530
  if (connectOrCreate) connectOrCreate.values.forEach((value, i) => {
528
- _appendQuery(self, _queryUpsert(rel.where(value.where), {
531
+ _appendQuery(querySelf, _queryUpsert(rel.where(value.where), {
529
532
  update: connectOrCreate.items[i],
530
533
  create: {
531
534
  ...value.create,
@@ -533,18 +536,19 @@ var HasOneVirtualColumn = class extends VirtualColumn {
533
536
  }
534
537
  }), (as) => connectOrCreateAs = as);
535
538
  });
536
- } else hasRelationHandleCreate(self, ctx, items, rowIndexes, this.key, this.state.primaryKeys, this.nestedInsert);
539
+ } else hasRelationHandleCreate(querySelf, ctx, items, rowIndexes, this.key, this.state.primaryKeys, this.nestedInsert);
537
540
  }
538
541
  update(self, set) {
542
+ const querySelf = self;
539
543
  const params = set[this.key];
540
- if ((params.set || params.create || params.upsert) && isQueryReturnsAll(self)) {
544
+ if ((params.set || params.create || params.upsert) && isQueryReturnsAll(querySelf)) {
541
545
  const key = params.set ? "set" : params.create ? "create" : "upsert";
542
546
  throw new Error(`\`${key}\` option is not allowed in a batch update`);
543
547
  }
544
548
  const { primaryKeys, foreignKeys, query: relQuery } = this.state;
545
549
  if (params.create || params.update || params.upsert || params.disconnect || params.set || params.delete) {
546
550
  let appendedAs;
547
- _hookSelectColumns(self, primaryKeys, (aliasedPrimaryKeys) => {
551
+ _hookSelectColumns(querySelf, primaryKeys, (aliasedPrimaryKeys) => {
548
552
  selectIdsSql._sql = selectCteColumnsSql(appendedAs, aliasedPrimaryKeys);
549
553
  if (params.create || params.set || params.upsert) foreignKeys.forEach((foreignKey, i) => {
550
554
  setIds[foreignKey]._sql = selectCteColumnSql(appendedAs, aliasedPrimaryKeys[i]);
@@ -567,15 +571,15 @@ var HasOneVirtualColumn = class extends VirtualColumn {
567
571
  }
568
572
  }) : params.delete ? _queryDelete(existingRelQuery) : _queryUpdate(existingRelQuery, this.setNulls);
569
573
  nullifyOrDeleteQuery.q.returnType = "void";
570
- _appendQuery(self, nullifyOrDeleteQuery, (as) => appendedAs = as);
571
- if (params.create) _appendQuery(self, _queryInsert(_clone(relQuery), {
574
+ _appendQuery(querySelf, nullifyOrDeleteQuery, (as) => appendedAs = as);
575
+ if (params.create) _appendQuery(querySelf, _queryInsert(_clone(relQuery), {
572
576
  ...params.create,
573
577
  ...setIds
574
578
  }), noop);
575
579
  else if (params.set) {
576
580
  const setQuery = _queryUpdate(_queryWhere(_clone(relQuery), [params.set]), setIds);
577
581
  setQuery.q.returnType = "void";
578
- _appendQuery(self, setQuery, noop);
582
+ _appendQuery(querySelf, setQuery, noop);
579
583
  }
580
584
  }
581
585
  }
@@ -689,7 +693,8 @@ var HasManyVirtualColumn = class extends VirtualColumn {
689
693
  this.nestedUpdate = nestedUpdate$1(state);
690
694
  }
691
695
  create(self, ctx, items, rowIndexes, count) {
692
- if (count <= self.qb.internal.nestedCreateBatchMax) {
696
+ const querySelf = self;
697
+ if (count <= querySelf.qb.internal.nestedCreateBatchMax) {
693
698
  const { query: rel, primaryKeys, foreignKeys } = this.state;
694
699
  let nestedCreateItems;
695
700
  items.forEach((item, i) => {
@@ -726,7 +731,7 @@ var HasManyVirtualColumn = class extends VirtualColumn {
726
731
  let createAs;
727
732
  let connectAs;
728
733
  let connectOrCreateAs;
729
- _hookSelectColumns(self, primaryKeys, (aliasedPrimaryKeys) => {
734
+ _hookSelectColumns(querySelf, primaryKeys, (aliasedPrimaryKeys) => {
730
735
  foreignKeys.forEach((key, keyI) => {
731
736
  const primaryKey = aliasedPrimaryKeys[keyI];
732
737
  if (create && createAs) for (let i = 0; i < create.items.length; i++) {
@@ -738,15 +743,15 @@ var HasManyVirtualColumn = class extends VirtualColumn {
738
743
  });
739
744
  });
740
745
  const { create, connect, connectOrCreate } = nestedCreateItems;
741
- if (create) _appendQuery(self, _queryInsertMany(_clone(rel), create.items.flat()), (as) => createAs = as);
746
+ if (create) _appendQuery(querySelf, _queryInsertMany(_clone(rel), create.items.flat()), (as) => createAs = as);
742
747
  if (connect) connect.values.forEach((value, i) => {
743
748
  const query = _queryUpdateOrThrow(rel.whereOneOf(...value), connect.items[i]);
744
749
  query.q.ensureCount = value.length;
745
- _appendQuery(self, query, (as) => connectAs = as);
750
+ _appendQuery(querySelf, query, (as) => connectAs = as);
746
751
  });
747
752
  if (connectOrCreate) connectOrCreate.values.forEach((array, i) => {
748
753
  const foreignKeyValues = connectOrCreate.items[i];
749
- for (const value of array) _appendQuery(self, _queryUpsert(rel.where(value.where), {
754
+ for (const value of array) _appendQuery(querySelf, _queryUpsert(rel.where(value.where), {
750
755
  update: foreignKeyValues,
751
756
  create: {
752
757
  ...value.create,
@@ -754,15 +759,16 @@ var HasManyVirtualColumn = class extends VirtualColumn {
754
759
  }
755
760
  }), (as) => connectOrCreateAs = as);
756
761
  });
757
- } else hasRelationHandleCreate(self, ctx, items, rowIndexes, this.key, this.state.primaryKeys, this.nestedInsert);
762
+ } else hasRelationHandleCreate(querySelf, ctx, items, rowIndexes, this.key, this.state.primaryKeys, this.nestedInsert);
758
763
  }
759
764
  update(q, set) {
765
+ const query = q;
760
766
  const params = set[this.key];
761
- if ((params.set || params.create) && isQueryReturnsAll(q)) {
767
+ if ((params.set || params.create) && isQueryReturnsAll(query)) {
762
768
  const key = params.set ? "set" : "create";
763
769
  throw new Error(`\`${key}\` option is not allowed in a batch update`);
764
770
  }
765
- hasRelationHandleUpdate(q, set, this.key, this.state.primaryKeys, this.nestedUpdate);
771
+ hasRelationHandleUpdate(query, set, this.key, this.state.primaryKeys, this.nestedUpdate);
766
772
  }
767
773
  };
768
774
  const makeHasManyMethod = (tableConfig, table, relation, relationName, query) => {
@@ -1401,6 +1407,7 @@ const assignTablesToOrm = (tables, result, adapter, qb, asyncStorage, commonOpti
1401
1407
  softDelete: table.softDelete,
1402
1408
  snakeCase: table.snakeCase,
1403
1409
  comment: table.comment,
1410
+ readOnly: table.readOnly,
1404
1411
  noPrimaryKey: table.noPrimaryKey ? "ignore" : void 0,
1405
1412
  computed: table.computed,
1406
1413
  nowSQL: tableClass.nowSQL