@b2bc-devkit/sheetorm 1.0.2 → 1.0.3
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":"Registry.d.ts","sourceRoot":"","sources":["../../../src/core/Registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAE1E,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAIpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"Registry.d.ts","sourceRoot":"","sources":["../../../src/core/Registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAE1E,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAIpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAItD;;;;;GAKG;AACH,qBAAa,QAAQ;IACnB,6CAA6C;IAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAyB;IAEhD,qEAAqE;IACrE,OAAO,CAAC,OAAO,CAAoC;IACnD,4DAA4D;IAC5D,OAAO,CAAC,KAAK,CAA+B;IAC5C,sCAAsC;IACtC,OAAO,CAAC,UAAU,CAA2B;IAC7C,yCAAyC;IACzC,OAAO,CAAC,KAAK,CAA8C;IAC3D,mEAAmE;IACnE,OAAO,CAAC,cAAc,CAAmC;IACzD,yEAAyE;IACzE,OAAO,CAAC,aAAa,CAAmC;IAExD,0DAA0D;IAC1D,MAAM,CAAC,WAAW,IAAI,QAAQ;IAO9B,+EAA+E;IAC/E,MAAM,CAAC,KAAK,IAAI,IAAI;IAIpB;;;OAGG;IACH,SAAS,CAAC,OAAO,EAAE;QAAE,OAAO,CAAC,EAAE,mBAAmB,CAAC;QAAC,KAAK,CAAC,EAAE,cAAc,CAAA;KAAE,GAAG,IAAI;IAUnF;;;OAGG;IACH,OAAO,CAAC,UAAU;IAOlB;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAWxB;;;;;;;OAOG;IACH,OAAO,CAAC,WAAW;IA0DnB;;;OAGG;IACH,aAAa,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IASvC;;;;;;;;;;;OAWG;IACH,gBAAgB,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,eAAe,CAAC,CAAC,CAAC;IAkD1E;;;OAGG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAItD,2DAA2D;IAC3D,aAAa,IAAI,UAAU;IAI3B,mEAAmE;IACnE,UAAU,IAAI,IAAI;CAInB"}
|
|
@@ -15,6 +15,7 @@ import { IndexStore } from "../index/IndexStore.js";
|
|
|
15
15
|
import { MemoryCache } from "./cache/MemoryCache.js";
|
|
16
16
|
import { GoogleSpreadsheetAdapter } from "../storage/GoogleSpreadsheetAdapter.js";
|
|
17
17
|
import { Decorators } from "./Decorators.js";
|
|
18
|
+
import { SystemColumns } from "./types/SystemColumns.js";
|
|
18
19
|
import { SheetOrmLogger } from "../utils/SheetOrmLogger.js";
|
|
19
20
|
/**
|
|
20
21
|
* Central registry for SheetORM.
|
|
@@ -106,10 +107,23 @@ export class Registry {
|
|
|
106
107
|
created = true;
|
|
107
108
|
}
|
|
108
109
|
SheetOrmLogger.log(`[Registry] ensureTable "${schema.tableName}" → ${created ? "insertSheet (G4 new)" : "existing sheet"}`);
|
|
109
|
-
//
|
|
110
|
-
//
|
|
111
|
-
|
|
112
|
-
|
|
110
|
+
// Always ensure headers are present on the sheet.
|
|
111
|
+
// Previously headers for new sheets were deferred to the first data write
|
|
112
|
+
// (L1 optimisation), but this caused a bug: if a read-only operation
|
|
113
|
+
// (e.g. findOne) triggered ensureTable, the GAS execution could end
|
|
114
|
+
// before any write flushed the deferred headers, leaving the sheet
|
|
115
|
+
// without headers for all subsequent executions.
|
|
116
|
+
const expectedHeaders = [
|
|
117
|
+
SystemColumns.ID,
|
|
118
|
+
SystemColumns.CREATED_AT,
|
|
119
|
+
SystemColumns.UPDATED_AT,
|
|
120
|
+
...schema.fields.map((f) => f.name),
|
|
121
|
+
];
|
|
122
|
+
const existingHeaders = sheet.getHeaders();
|
|
123
|
+
const hasValidHeaders = existingHeaders.length > 0 && existingHeaders.some((h) => h !== "");
|
|
124
|
+
if (!hasValidHeaders) {
|
|
125
|
+
sheet.setHeaders(expectedHeaders);
|
|
126
|
+
SheetOrmLogger.log(`[Registry] ensureTable "${schema.tableName}" → wrote ${expectedHeaders.length} headers`);
|
|
113
127
|
}
|
|
114
128
|
// If no indexes are defined, skip index table creation
|
|
115
129
|
if (schema.indexes.length === 0)
|
|
@@ -177,7 +191,7 @@ export class Registry {
|
|
|
177
191
|
// - sheet: pre-resolved ISheetAdapter (avoids getSheetByName call)
|
|
178
192
|
// - created ? 0 : undefined: known row count (0 for new sheets, avoids getLastRow call)
|
|
179
193
|
// - created: defer header write to first data flush
|
|
180
|
-
const repo = new SheetRepository(this.getAdapter(), schema, indexStore, this.cache, undefined, sheet, created ? 0 : undefined,
|
|
194
|
+
const repo = new SheetRepository(this.getAdapter(), schema, indexStore, this.cache, undefined, sheet, created ? 0 : undefined, false);
|
|
181
195
|
this.repos.set(tableName, repo);
|
|
182
196
|
return repo;
|
|
183
197
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Registry.js","sourceRoot":"","sources":["../../../src/core/Registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAOH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,OAAO,QAAQ;IAArB;QAIE,qEAAqE;QAC7D,YAAO,GAA+B,IAAI,CAAC;QACnD,4DAA4D;QACpD,UAAK,GAA0B,IAAI,CAAC;QAC5C,sCAAsC;QAC9B,eAAU,GAAsB,IAAI,CAAC;QAC7C,yCAAyC;QACjC,UAAK,GAAG,IAAI,GAAG,EAAmC,CAAC;QAC3D,mEAAmE;QAC3D,mBAAc,GAAG,IAAI,GAAG,EAAwB,CAAC;QACzD,yEAAyE;QACjE,kBAAa,GAAG,IAAI,GAAG,EAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"Registry.js","sourceRoot":"","sources":["../../../src/core/Registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAOH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,OAAO,QAAQ;IAArB;QAIE,qEAAqE;QAC7D,YAAO,GAA+B,IAAI,CAAC;QACnD,4DAA4D;QACpD,UAAK,GAA0B,IAAI,CAAC;QAC5C,sCAAsC;QAC9B,eAAU,GAAsB,IAAI,CAAC;QAC7C,yCAAyC;QACjC,UAAK,GAAG,IAAI,GAAG,EAAmC,CAAC;QAC3D,mEAAmE;QAC3D,mBAAc,GAAG,IAAI,GAAG,EAAwB,CAAC;QACzD,yEAAyE;QACjE,kBAAa,GAAG,IAAI,GAAG,EAAwB,CAAC;IAuN1D,CAAC;IArNC,0DAA0D;IAC1D,MAAM,CAAC,WAAW;QAChB,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACvB,QAAQ,CAAC,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;QACrC,CAAC;QACD,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC3B,CAAC;IAED,+EAA+E;IAC/E,MAAM,CAAC,KAAK;QACV,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,SAAS,CAAC,OAAkE;QAC1E,cAAc,CAAC,GAAG,CAAC,iCAAiC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,IAAI,SAAS,GAAG,CAAC,CAAC;QACvG,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC;QACvC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC;QACnC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAC5B,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACK,UAAU;QAChB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,OAAO,GAAG,IAAI,wBAAwB,EAAE,CAAC;QAChD,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACK,gBAAgB;QACtB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,KAAK;gBAAE,IAAI,CAAC,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC;YAChD,mFAAmF;YACnF,sEAAsE;YACtE,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,WAAW,EAAE,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;;;;;;;OAOG;IACK,WAAW,CACjB,MAAmB,EACnB,UAAsB;QAEtB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,cAAc,CAAC,GAAG,CAAC,2BAA2B,MAAM,CAAC,SAAS,cAAc,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QAEtG,wCAAwC;QACxC,IAAI,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACrD,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC9C,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;QACD,cAAc,CAAC,GAAG,CAChB,2BAA2B,MAAM,CAAC,SAAS,OAAO,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,gBAAgB,EAAE,CACxG,CAAC;QACF,kDAAkD;QAClD,0EAA0E;QAC1E,qEAAqE;QACrE,oEAAoE;QACpE,mEAAmE;QACnE,iDAAiD;QACjD,MAAM,eAAe,GAAG;YACtB,aAAa,CAAC,EAAE;YAChB,aAAa,CAAC,UAAU;YACxB,aAAa,CAAC,UAAU;YACxB,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;SACpC,CAAC;QACF,MAAM,eAAe,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC;QAC3C,MAAM,eAAe,GACnB,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;YAClC,cAAc,CAAC,GAAG,CAChB,2BAA2B,MAAM,CAAC,SAAS,aAAa,eAAe,CAAC,MAAM,UAAU,CACzF,CAAC;QACJ,CAAC;QAED,uDAAuD;QACvD,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAE3D,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,iBAAiB,MAAM,CAAC,SAAS,+CAA+C;gBAC9E,qGAAqG,CACxG,CAAC;QACJ,CAAC;QAED,gEAAgE;QAChE,UAAU,CAAC,mBAAmB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACtD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACjC,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,cAAc,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC;QAClF,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,IAAkB;QAC9B,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACH,gBAAgB,CAAmB,IAAkB;QACnD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAEjC,0CAA0C;QAC1C,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,cAAc,CAAC,GAAG,CAAC,gCAAgC,SAAS,eAAe,CAAC,CAAC;YAC7E,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAkC,CAAC;QACpE,CAAC;QAED,cAAc,CAAC,GAAG,CAAC,gCAAgC,SAAS,cAAc,CAAC,CAAC;QAE5E,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAEzB,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAE3C,uCAAuC;QACvC,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAgB;YAC1B,SAAS;YACT,mEAAmE;YACnE,mFAAmF;YACnF,gFAAgF;YAChF,0DAA0D;YAC1D,cAAc,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;YACpE,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC;YAClC,OAAO;SACR,CAAC;QAEF,8DAA8D;QAC9D,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAEhE,wEAAwE;QACxE,mFAAmF;QACnF,yFAAyF;QACzF,kEAAkE;QAClE,MAAM,IAAI,GAAG,IAAI,eAAe,CAC9B,IAAI,CAAC,UAAU,EAAE,EACjB,MAAM,EACN,UAAU,EACV,IAAI,CAAC,KAAM,EACX,SAAS,EACT,KAAK,EACL,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EACvB,KAAK,CACN,CAAC;QAEF,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,IAA0C,CAAC,CAAC;QACtE,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,IAAY;QACzB,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACvE,CAAC;IAED,2DAA2D;IAC3D,aAAa;QACX,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC;IACjC,CAAC;IAED,mEAAmE;IACnE,UAAU;QACR,IAAI,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnC,IAAI,IAAI,CAAC,UAAU;YAAE,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;IACxD,CAAC;;AApOD,6CAA6C;AAC9B,iBAAQ,GAAoB,IAAI,AAAxB,CAAyB"}
|