hikoutei 0.10.23-dev → 0.10.25-dev
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/api/Hikoutei.d.ts.map +1 -1
- package/dist/api/Hikoutei.js +8 -4
- package/dist/api/Hikoutei.js.map +1 -1
- package/dist/api/index.d.ts +2 -2
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +1 -1
- package/dist/api/index.js.map +1 -1
- package/dist/api/syncRuntime.d.ts +8 -1
- package/dist/api/syncRuntime.d.ts.map +1 -1
- package/dist/api/syncRuntime.js +5 -0
- package/dist/api/syncRuntime.js.map +1 -1
- package/dist/cli/adoptArgs.d.ts +8 -0
- package/dist/cli/adoptArgs.d.ts.map +1 -1
- package/dist/cli/adoptArgs.js +40 -12
- package/dist/cli/adoptArgs.js.map +1 -1
- package/dist/cli/adoptMain.d.ts +17 -0
- package/dist/cli/adoptMain.d.ts.map +1 -1
- package/dist/cli/adoptMain.js +76 -5
- package/dist/cli/adoptMain.js.map +1 -1
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +5 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/infer.d.ts +118 -0
- package/dist/cli/infer.d.ts.map +1 -0
- package/dist/cli/infer.js +319 -0
- package/dist/cli/infer.js.map +1 -0
- package/dist/cli/inferArgs.d.ts +54 -0
- package/dist/cli/inferArgs.d.ts.map +1 -0
- package/dist/cli/inferArgs.js +123 -0
- package/dist/cli/inferArgs.js.map +1 -0
- package/dist/cli/inferMain.d.ts +66 -0
- package/dist/cli/inferMain.d.ts.map +1 -0
- package/dist/cli/inferMain.js +281 -0
- package/dist/cli/inferMain.js.map +1 -0
- package/dist/composition/localRuntime.d.ts.map +1 -1
- package/dist/composition/localRuntime.js +3 -1
- package/dist/composition/localRuntime.js.map +1 -1
- package/dist/contracts/api/descriptorFile.d.ts +116 -0
- package/dist/contracts/api/descriptorFile.d.ts.map +1 -0
- package/dist/contracts/api/descriptorFile.js +179 -0
- package/dist/contracts/api/descriptorFile.js.map +1 -0
- package/dist/sync-engine/api/entity.d.ts +1 -0
- package/dist/sync-engine/api/entity.d.ts.map +1 -1
- package/dist/sync-engine/api/entity.js +1 -0
- package/dist/sync-engine/api/entity.js.map +1 -1
- package/dist/sync-engine/api/hikouteiCore.d.ts +31 -1
- package/dist/sync-engine/api/hikouteiCore.d.ts.map +1 -1
- package/dist/sync-engine/api/hikouteiCore.js +29 -0
- package/dist/sync-engine/api/hikouteiCore.js.map +1 -1
- package/dist/sync-engine/sync/service/syncAutoStart.d.ts +8 -1
- package/dist/sync-engine/sync/service/syncAutoStart.d.ts.map +1 -1
- package/dist/sync-engine/sync/service/syncAutoStart.js +13 -6
- package/dist/sync-engine/sync/service/syncAutoStart.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Hikoutei.d.ts","sourceRoot":"","sources":["../../src/api/Hikoutei.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,
|
|
1
|
+
{"version":3,"file":"Hikoutei.d.ts","sourceRoot":"","sources":["../../src/api/Hikoutei.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EAEL,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,QAAQ,EACd,MAAM,2CAA2C,CAAC;AAMnD,OAAO,gCAAgC,CAAC;AAExC,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,0BAA0B,EAC1B,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,QAAQ,GACd,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,QAAQ,CAAC,CAqDnB"}
|
package/dist/api/Hikoutei.js
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
*/
|
|
16
16
|
import { HIKOUTEI_ERROR_CODES, HikouteiError } from "./errors.js";
|
|
17
17
|
import { getRegisteredEntityTokens } from "./entity.js";
|
|
18
|
-
import { resolveDefaultDbPath, validateTypedSheetsOptions, createInternalHikoutei, } from "../sync-engine/api/hikouteiCore.js";
|
|
18
|
+
import { mergeEntitiesAndDescriptors, resolveDefaultDbPath, validateTypedSheetsOptions, createInternalHikoutei, } from "../sync-engine/api/hikouteiCore.js";
|
|
19
19
|
// P8-C composition carrier: the public API layer loads the composition root,
|
|
20
20
|
// which registers (lazily) the concrete sync-engine port wiring. The heavy
|
|
21
21
|
// adapter module graphs (MikroORM, Google SDK) still load only when a runtime
|
|
@@ -40,9 +40,13 @@ export { createInternalHikoutei, resolveDefaultDbPath, validateTypedSheetsOption
|
|
|
40
40
|
export async function createTypedSheets(options = {}) {
|
|
41
41
|
validateTypedSheetsOptions(options);
|
|
42
42
|
const dbName = options.dbName ?? resolveDefaultDbPath();
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
43
|
+
// File-form descriptors run through the same builder and are appended
|
|
44
|
+
// after `entities`; the shared registry validation rejects collisions.
|
|
45
|
+
const entities = mergeEntitiesAndDescriptors(options.entities ?? getRegisteredEntityTokens(), options.descriptors);
|
|
46
|
+
if (options.entities === undefined
|
|
47
|
+
&& options.descriptors === undefined
|
|
48
|
+
&& entities.length === 0) {
|
|
49
|
+
throw new HikouteiError(HIKOUTEI_ERROR_CODES.INVALID_ENTITY_DESCRIPTOR, "createTypedSheets() requires at least one entity; pass `entities`/`descriptors` or call defineTypedSheetsEntity() before opening the runtime.");
|
|
46
50
|
}
|
|
47
51
|
const spreadsheetUrl = process.env.HIKOUTEI_SYNC_SPREADSHEET_URL;
|
|
48
52
|
if (spreadsheetUrl === undefined || spreadsheetUrl.trim() === "") {
|
package/dist/api/Hikoutei.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Hikoutei.js","sourceRoot":"","sources":["../../src/api/Hikoutei.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,GAIvB,MAAM,2CAA2C,CAAC;AAEnD,6EAA6E;AAC7E,2EAA2E;AAC3E,8EAA8E;AAC9E,6EAA6E;AAC7E,OAAO,gCAAgC,CAAC;AAExC,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,0BAA0B,GAI3B,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,UAAoC,EAAE;IAEtC,0BAA0B,CAAC,OAAO,CAAC,CAAC;IAEpC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,oBAAoB,EAAE,CAAC;IACxD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,yBAAyB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"Hikoutei.js","sourceRoot":"","sources":["../../src/api/Hikoutei.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EACL,2BAA2B,EAC3B,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,GAIvB,MAAM,2CAA2C,CAAC;AAEnD,6EAA6E;AAC7E,2EAA2E;AAC3E,8EAA8E;AAC9E,6EAA6E;AAC7E,OAAO,gCAAgC,CAAC;AAExC,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,0BAA0B,GAI3B,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,UAAoC,EAAE;IAEtC,0BAA0B,CAAC,OAAO,CAAC,CAAC;IAEpC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,oBAAoB,EAAE,CAAC;IACxD,sEAAsE;IACtE,uEAAuE;IACvE,MAAM,QAAQ,GAAG,2BAA2B,CAC1C,OAAO,CAAC,QAAQ,IAAI,yBAAyB,EAAE,EAC/C,OAAO,CAAC,WAAW,CACpB,CAAC;IACF,IACE,OAAO,CAAC,QAAQ,KAAK,SAAS;WAC3B,OAAO,CAAC,WAAW,KAAK,SAAS;WACjC,QAAQ,CAAC,MAAM,KAAK,CAAC,EACxB,CAAC;QACD,MAAM,IAAI,aAAa,CACrB,oBAAoB,CAAC,yBAAyB,EAC9C,+IAA+I,CAChJ,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;IACjE,IAAI,cAAc,KAAK,SAAS,IAAI,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACjE,yEAAyE;QACzE,8CAA8C;QAC9C,MAAM,EAAE,6BAA6B,EAAE,GAAG,MAAM,MAAM,CACpD,uCAAuC,CACxC,CAAC;QACF,OAAO,6BAA6B,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,4EAA4E;IAC5E,4DAA4D;IAC5D,MAAM,EAAE,yBAAyB,EAAE,GAAG,MAAM,MAAM,CAChD,wCAAwC,CACzC,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC;QAC7C,MAAM;QACN,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC;QACvB,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,GAAG,CAAC,OAAO,CAAC,eAAe,KAAK,SAAS;YACvC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE,CAAC;KAClD,CAAC,CAAC;IACH,uEAAuE;IACvE,qDAAqD;IACrD,IAAI,MAAM,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;QACpC,MAAM,IAAI,aAAa,CACrB,oBAAoB,CAAC,mBAAmB,EACxC,gEAAgE,CACjE,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC,QAAQ,CAAC;AACzB,CAAC"}
|
package/dist/api/index.d.ts
CHANGED
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
* adoption support (result union + read-only adoption report types; the sync
|
|
9
9
|
* service graph itself stays lazy-loaded and internal).
|
|
10
10
|
*/
|
|
11
|
-
export { defineTypedSheetsEntity, HIKOUTEI_SCALAR_TYPES, } from "./entity.js";
|
|
12
|
-
export type { HikouteiEntity, HikouteiEntityDescriptorInput, HikouteiPropertyOptions, HikouteiPropertyDescriptorMap, HikouteiScalarType, HikouteiScalarValueType, HikouteiPropertyValueType, HikouteiEntityInstance, } from "./entity.js";
|
|
11
|
+
export { defineTypedSheetsEntity, HIKOUTEI_SCALAR_TYPES, HIKOUTEI_DESCRIPTOR_FILE_VERSION, buildDescriptorFile, serializeDescriptorFile, parseDescriptorFile, descriptorFileToEntityInput, descriptorFileColumnMap, defineTypedSheetsEntityFromDescriptorFile, } from "./entity.js";
|
|
12
|
+
export type { HikouteiEntity, HikouteiEntityDescriptorInput, HikouteiPropertyOptions, HikouteiPropertyDescriptorMap, HikouteiScalarType, HikouteiScalarValueType, HikouteiPropertyValueType, HikouteiEntityInstance, HikouteiDescriptorFile, HikouteiDescriptorFileProperty, HikouteiDescriptorColumn, } from "./entity.js";
|
|
13
13
|
export { createTypedSheets } from "./Hikoutei.js";
|
|
14
14
|
export type { CreateTypedSheetsOptions, HikouteiProviderOptions, Hikoutei } from "./Hikoutei.js";
|
|
15
15
|
export { createTypedSheetsWithSync } from "./syncRuntime.js";
|
package/dist/api/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,uBAAuB,EACvB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,gCAAgC,EAChC,mBAAmB,EACnB,uBAAuB,EACvB,mBAAmB,EACnB,2BAA2B,EAC3B,uBAAuB,EACvB,yCAAyC,GAC1C,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,cAAc,EACd,6BAA6B,EAC7B,uBAAuB,EACvB,6BAA6B,EAC7B,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,sBAAsB,EACtB,sBAAsB,EACtB,8BAA8B,EAC9B,wBAAwB,GACzB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,YAAY,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACjG,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,YAAY,EACV,gCAAgC,EAChC,SAAS,EACT,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,eAAe,EACf,sBAAsB,EACtB,wBAAwB,EACxB,iBAAiB,EACjB,yBAAyB,GAC1B,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,aAAa,EACb,cAAc,EACd,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,eAAe,EACf,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAClE,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/api/index.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* adoption support (result union + read-only adoption report types; the sync
|
|
9
9
|
* service graph itself stays lazy-loaded and internal).
|
|
10
10
|
*/
|
|
11
|
-
export { defineTypedSheetsEntity, HIKOUTEI_SCALAR_TYPES, } from "./entity.js";
|
|
11
|
+
export { defineTypedSheetsEntity, HIKOUTEI_SCALAR_TYPES, HIKOUTEI_DESCRIPTOR_FILE_VERSION, buildDescriptorFile, serializeDescriptorFile, parseDescriptorFile, descriptorFileToEntityInput, descriptorFileColumnMap, defineTypedSheetsEntityFromDescriptorFile, } from "./entity.js";
|
|
12
12
|
export { createTypedSheets } from "./Hikoutei.js";
|
|
13
13
|
export { createTypedSheetsWithSync } from "./syncRuntime.js";
|
|
14
14
|
export { HIKOUTEI_ERROR_CODES, HikouteiError } from "./errors.js";
|
package/dist/api/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,uBAAuB,EACvB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,gCAAgC,EAChC,mBAAmB,EACnB,uBAAuB,EACvB,mBAAmB,EACnB,2BAA2B,EAC3B,uBAAuB,EACvB,yCAAyC,GAC1C,MAAM,aAAa,CAAC;AAcrB,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAuB7D,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
* sync supervisors start.
|
|
26
26
|
*/
|
|
27
27
|
import type { Hikoutei } from "./Hikoutei.js";
|
|
28
|
-
import type { HikouteiEntity } from "./entity.js";
|
|
28
|
+
import type { HikouteiDescriptorFile, HikouteiEntity } from "./entity.js";
|
|
29
29
|
/** One entity's existing-sheet adoption request (design D1/D4). */
|
|
30
30
|
export interface AdoptEntitySpec {
|
|
31
31
|
/** The existing tab that becomes this entity's User_Input route (D1). */
|
|
@@ -144,6 +144,13 @@ export type TypedSheetsWithSyncResult = LocalSyncRuntimeResult | RunningSyncServ
|
|
|
144
144
|
export interface CreateTypedSheetsWithSyncOptions {
|
|
145
145
|
readonly dbName: string;
|
|
146
146
|
readonly entities: readonly HikouteiEntity[];
|
|
147
|
+
/**
|
|
148
|
+
* File-form entity descriptors (e.g. from `infer --emit desc.json`),
|
|
149
|
+
* built through the same `defineTypedSheetsEntity` builder and appended
|
|
150
|
+
* after `entities`. Shares the `CreateTypedSheetsOptions.descriptors`
|
|
151
|
+
* contract.
|
|
152
|
+
*/
|
|
153
|
+
readonly descriptors?: readonly HikouteiDescriptorFile[];
|
|
147
154
|
readonly env?: Readonly<Record<string, string | undefined>>;
|
|
148
155
|
readonly onDiagnostic?: (level: "info" | "error", message: string) => void;
|
|
149
156
|
readonly adopt?: AdoptSpec;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncRuntime.d.ts","sourceRoot":"","sources":["../../src/api/syncRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"syncRuntime.d.ts","sourceRoot":"","sources":["../../src/api/syncRuntime.ts"],"names":[],"mappings":"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"}
|
package/dist/api/syncRuntime.js
CHANGED
|
@@ -36,10 +36,15 @@
|
|
|
36
36
|
export async function createTypedSheetsWithSync(options) {
|
|
37
37
|
// Lazy import: the sync module graph loads only when sync actually starts.
|
|
38
38
|
// P8-C: routed through the composition root (see packages/library/core/composition/src/index.ts).
|
|
39
|
+
// Lazy import: the sync module graph loads only when sync actually starts.
|
|
40
|
+
// P8-C: routed through the composition root (see packages/library/core/composition/src/index.ts).
|
|
41
|
+
// File-form descriptors ride through to the bridge, which builds them via
|
|
42
|
+
// the same `defineTypedSheetsEntity` builder as `createTypedSheets()`.
|
|
39
43
|
const { createTypedSheetsWithSync: bridge } = await import("../composition/syncAutoStart.js");
|
|
40
44
|
const result = await bridge({
|
|
41
45
|
dbName: options.dbName,
|
|
42
46
|
entities: [...options.entities],
|
|
47
|
+
...(options.descriptors === undefined ? {} : { descriptors: [...options.descriptors] }),
|
|
43
48
|
// Contract (see CreateTypedSheetsWithSyncOptions): env defaults to
|
|
44
49
|
// `process.env`, read at call time — exactly like `createTypedSheets()`
|
|
45
50
|
// in Hikoutei.ts. Omitting the forward would starve the autostart bridge
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncRuntime.js","sourceRoot":"","sources":["../../src/api/syncRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;
|
|
1
|
+
{"version":3,"file":"syncRuntime.js","sourceRoot":"","sources":["../../src/api/syncRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAqJH;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,OAAyC;IAEzC,2EAA2E;IAC3E,kGAAkG;IAClG,2EAA2E;IAC3E,kGAAkG;IAClG,0EAA0E;IAC1E,uEAAuE;IACvE,MAAM,EAAE,yBAAyB,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CACxD,wCAAwC,CACzC,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC;QAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC/B,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACvF,mEAAmE;QACnE,wEAAwE;QACxE,yEAAyE;QACzE,wEAAwE;QACxE,kEAAkE;QAClE,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS;YAC3B,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAmD,EAAE;YACtE,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;QACzB,GAAG,CAAC,OAAO,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC;QACrF,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;QAChE,GAAG,CAAC,OAAO,CAAC,eAAe,KAAK,SAAS;YACvC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE,CAAC;KAClD,CAAC,CAAC;IACH,uEAAuE;IACvE,6CAA6C;IAC7C,OAAO,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;AACvF,CAAC"}
|
package/dist/cli/adoptArgs.d.ts
CHANGED
|
@@ -29,6 +29,14 @@ export interface AdoptOptions {
|
|
|
29
29
|
* `entityName`/`tabName`/`columnMap` fields are absent.
|
|
30
30
|
*/
|
|
31
31
|
readonly adopts?: readonly AdoptCliEntitySpec[];
|
|
32
|
+
/**
|
|
33
|
+
* Descriptor-file path (`--descriptor`), an alternative to `--entity` for
|
|
34
|
+
* the legacy single-entity path. The entity name and the header→property
|
|
35
|
+
* columnMap come from the file; the CLI registers the file through the
|
|
36
|
+
* same `defineTypedSheetsEntity` builder adopt requires. Mutually
|
|
37
|
+
* exclusive with `--entity` and `--adopt`.
|
|
38
|
+
*/
|
|
39
|
+
readonly descriptorPath?: string;
|
|
32
40
|
/** Entity name to adopt (legacy single-entity path; absent with `--adopt`). */
|
|
33
41
|
readonly entityName?: string;
|
|
34
42
|
/** The existing spreadsheet tab that becomes the User_Input route. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adoptArgs.d.ts","sourceRoot":"","sources":["../../../../../../src/adoptArgs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAK9D,wEAAwE;AACxE,MAAM,WAAW,kBAAkB;IACjC,sEAAsE;IACtE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,sEAAsE;IACtE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,0FAA0F;IAC1F,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACvD;AAED,sEAAsE;AACtE,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAChD,+EAA+E;IAC/E,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,sEAAsE;IACtE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,wDAAwD;IACxD,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC;IACvC,2DAA2D;IAC3D,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,gEAAgE;IAChE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,8EAA8E;IAC9E,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC;IACnC,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,sEAAsE;IACtE,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,gFAAgF;IAChF,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,gEAAgE;IAChE,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,6EAA6E;IAC7E,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD,uDAAuD;IACvD,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,4DAA4D;IAC5D,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB;AAED,gDAAgD;AAChD,MAAM,MAAM,oBAAoB,GAC5B;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACtD;IAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAA;CAAE,GAC5D;IAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAA;CAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"adoptArgs.d.ts","sourceRoot":"","sources":["../../../../../../src/adoptArgs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAK9D,wEAAwE;AACxE,MAAM,WAAW,kBAAkB;IACjC,sEAAsE;IACtE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,sEAAsE;IACtE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,0FAA0F;IAC1F,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACvD;AAED,sEAAsE;AACtE,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAChD;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,+EAA+E;IAC/E,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,sEAAsE;IACtE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,wDAAwD;IACxD,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC;IACvC,2DAA2D;IAC3D,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,gEAAgE;IAChE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,8EAA8E;IAC9E,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC;IACnC,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,sEAAsE;IACtE,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,gFAAgF;IAChF,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,gEAAgE;IAChE,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,6EAA6E;IAC7E,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD,uDAAuD;IACvD,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,4DAA4D;IAC5D,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB;AAED,gDAAgD;AAChD,MAAM,MAAM,oBAAoB,GAC5B;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACtD;IAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAA;CAAE,GAC5D;IAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAA;CAAE,CAAC;AA+BnE,eAAO,MAAM,eAAe,QA4DhB,CAAC;AAEb,sDAAsD;AACtD,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,oBAAoB,CAyJ5E"}
|
package/dist/cli/adoptArgs.js
CHANGED
|
@@ -19,6 +19,7 @@ const ADOPT_FLAGS = {
|
|
|
19
19
|
HELP_SHORT: "-h",
|
|
20
20
|
ADOPT: "--adopt",
|
|
21
21
|
ENTITY: "--entity",
|
|
22
|
+
DESCRIPTOR: "--descriptor",
|
|
22
23
|
TAB: "--tab",
|
|
23
24
|
IDENTITY_FROM: "--identity-from",
|
|
24
25
|
SYSTEM_TAB: "--system-tab",
|
|
@@ -34,7 +35,7 @@ const ADOPT_FLAGS = {
|
|
|
34
35
|
};
|
|
35
36
|
const KNOWN_FLAGS = new Set(Object.values(ADOPT_FLAGS));
|
|
36
37
|
const VALUE_FLAGS = new Set([
|
|
37
|
-
ADOPT_FLAGS.ADOPT, ADOPT_FLAGS.ENTITY, ADOPT_FLAGS.TAB,
|
|
38
|
+
ADOPT_FLAGS.ADOPT, ADOPT_FLAGS.ENTITY, ADOPT_FLAGS.DESCRIPTOR, ADOPT_FLAGS.TAB,
|
|
38
39
|
ADOPT_FLAGS.IDENTITY_FROM, ADOPT_FLAGS.SYSTEM_TAB,
|
|
39
40
|
ADOPT_FLAGS.CONFLICTS_TAB, ADOPT_FLAGS.MODE, ADOPT_FLAGS.DB,
|
|
40
41
|
ADOPT_FLAGS.SPREADSHEET_URL, ADOPT_FLAGS.CREDENTIALS,
|
|
@@ -54,8 +55,13 @@ export const ADOPT_HELP_TEXT = [
|
|
|
54
55
|
"",
|
|
55
56
|
"Required:",
|
|
56
57
|
" --entity <Name> Entity name (must match a registered descriptor).",
|
|
58
|
+
" --descriptor <path> Descriptor JSON file (e.g. from `infer --emit`);",
|
|
59
|
+
" alternative to --entity. The entity name and",
|
|
60
|
+
" the header→property columnMap come from the",
|
|
61
|
+
" file, so no --map flags are needed.",
|
|
57
62
|
" --tab <TabName> Existing tab to adopt (never modified in-place",
|
|
58
63
|
" beyond appending the row-id system column).",
|
|
64
|
+
" Required with --entity or --descriptor.",
|
|
59
65
|
"",
|
|
60
66
|
"Multi-entity (repeat --adopt once per entity; mutually exclusive with",
|
|
61
67
|
"--entity/--tab):",
|
|
@@ -150,8 +156,14 @@ export function parseAdoptArgs(argv) {
|
|
|
150
156
|
// The `--adopt` path is mutually exclusive with the legacy single-entity
|
|
151
157
|
// `--entity`/`--tab` flags: mixing two adoption styles is an argument error.
|
|
152
158
|
const multi = adoptEntries.length > 0;
|
|
153
|
-
if (multi && (values.has(ADOPT_FLAGS.ENTITY) || values.has(ADOPT_FLAGS.TAB))) {
|
|
154
|
-
return { status: "invalid", failure: setupFailure(SETUP_ERROR_CODES_INVALID_ARGS, "mixing --adopt with --entity/--tab is not supported — use one adoption style only") };
|
|
159
|
+
if (multi && (values.has(ADOPT_FLAGS.ENTITY) || values.has(ADOPT_FLAGS.TAB) || values.has(ADOPT_FLAGS.DESCRIPTOR))) {
|
|
160
|
+
return { status: "invalid", failure: setupFailure(SETUP_ERROR_CODES_INVALID_ARGS, "mixing --adopt with --entity/--descriptor/--tab is not supported — use one adoption style only") };
|
|
161
|
+
}
|
|
162
|
+
// `--descriptor` is the file alternative to `--entity`: exactly one of
|
|
163
|
+
// them must be present, and `--tab` stays required either way.
|
|
164
|
+
const hasDescriptor = values.has(ADOPT_FLAGS.DESCRIPTOR);
|
|
165
|
+
if (hasDescriptor && values.has(ADOPT_FLAGS.ENTITY)) {
|
|
166
|
+
return { status: "invalid", failure: setupFailure(SETUP_ERROR_CODES_INVALID_ARGS, "--descriptor and --entity are mutually exclusive — the entity name comes from the descriptor file") };
|
|
155
167
|
}
|
|
156
168
|
// Legacy per-run flags only make sense for a SINGLE entity. With multiple
|
|
157
169
|
// --adopt entries they cannot be scoped, so reject them and require the
|
|
@@ -166,7 +178,10 @@ export function parseAdoptArgs(argv) {
|
|
|
166
178
|
}
|
|
167
179
|
}
|
|
168
180
|
if (!multi) {
|
|
169
|
-
const missing = [
|
|
181
|
+
const missing = [
|
|
182
|
+
...(!values.has(ADOPT_FLAGS.ENTITY) && !hasDescriptor ? [ADOPT_FLAGS.ENTITY + " or " + ADOPT_FLAGS.DESCRIPTOR] : []),
|
|
183
|
+
...(values.has(ADOPT_FLAGS.TAB) ? [] : [ADOPT_FLAGS.TAB]),
|
|
184
|
+
];
|
|
170
185
|
if (missing.length > 0) {
|
|
171
186
|
return { status: "invalid", failure: setupFailure(SETUP_ERROR_CODES_INVALID_ARGS, `missing required flag(s): ${missing.join(", ")}`) };
|
|
172
187
|
}
|
|
@@ -175,8 +190,10 @@ export function parseAdoptArgs(argv) {
|
|
|
175
190
|
if (rawMode !== "dry-run" && rawMode !== "adopt") {
|
|
176
191
|
return { status: "invalid", failure: setupFailure(SETUP_ERROR_CODES_INVALID_ARGS, `--mode must be "dry-run" or "adopt", received "${rawMode}"`) };
|
|
177
192
|
}
|
|
178
|
-
|
|
179
|
-
|
|
193
|
+
// Adopt mode mutates state, so the entity definitions must be reachable:
|
|
194
|
+
// either the application module or the descriptor file supplies them.
|
|
195
|
+
if (rawMode === "adopt" && !values.has(ADOPT_FLAGS.ENTITIES) && !hasDescriptor) {
|
|
196
|
+
return { status: "invalid", failure: setupFailure(SETUP_ERROR_CODES_INVALID_ARGS, "adopt mode requires --entities <module> (the entity definitions live in application code) or --descriptor <file>") };
|
|
180
197
|
}
|
|
181
198
|
const identityFrom = values.get(ADOPT_FLAGS.IDENTITY_FROM) ?? "auto";
|
|
182
199
|
if (identityFrom.trim() === "") {
|
|
@@ -191,6 +208,10 @@ export function parseAdoptArgs(argv) {
|
|
|
191
208
|
const entitiesModule = optional(ADOPT_FLAGS.ENTITIES);
|
|
192
209
|
const systemTabName = optional(ADOPT_FLAGS.SYSTEM_TAB);
|
|
193
210
|
const conflictsTabName = optional(ADOPT_FLAGS.CONFLICTS_TAB);
|
|
211
|
+
const rawDescriptor = values.get(ADOPT_FLAGS.DESCRIPTOR);
|
|
212
|
+
if (rawDescriptor !== undefined && rawDescriptor.trim() === "") {
|
|
213
|
+
return { status: "invalid", failure: setupFailure(SETUP_ERROR_CODES_INVALID_ARGS, "flag --descriptor requires a non-empty path") };
|
|
214
|
+
}
|
|
194
215
|
// Shared options for both paths (identityFrom/systemTabName/conflictsTabName
|
|
195
216
|
// are consumed by the flow only for a SINGLE --adopt entry or the legacy
|
|
196
217
|
// path).
|
|
@@ -215,12 +236,19 @@ export function parseAdoptArgs(argv) {
|
|
|
215
236
|
? (adoptEntries.length === 1
|
|
216
237
|
? { ...commonOptions, adopts: adoptEntries, ...(columnMap === undefined ? {} : { columnMap }) }
|
|
217
238
|
: { ...commonOptions, adopts: adoptEntries })
|
|
218
|
-
:
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
239
|
+
: hasDescriptor
|
|
240
|
+
? {
|
|
241
|
+
...commonOptions,
|
|
242
|
+
descriptorPath: rawDescriptor,
|
|
243
|
+
tabName: values.get(ADOPT_FLAGS.TAB),
|
|
244
|
+
...(columnMap === undefined ? {} : { columnMap }),
|
|
245
|
+
}
|
|
246
|
+
: {
|
|
247
|
+
...commonOptions,
|
|
248
|
+
entityName: values.get(ADOPT_FLAGS.ENTITY),
|
|
249
|
+
tabName: values.get(ADOPT_FLAGS.TAB),
|
|
250
|
+
...(columnMap === undefined ? {} : { columnMap }),
|
|
251
|
+
},
|
|
224
252
|
};
|
|
225
253
|
}
|
|
226
254
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adoptArgs.js","sourceRoot":"","sources":["../../../../../../src/adoptArgs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,YAAY,EAAqB,MAAM,aAAa,CAAC;AAE9D,gFAAgF;AAChF,MAAM,8BAA8B,GAAG,cAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"adoptArgs.js","sourceRoot":"","sources":["../../../../../../src/adoptArgs.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/adoptMain.d.ts
CHANGED
|
@@ -9,6 +9,23 @@
|
|
|
9
9
|
* a successful adopt so the CLI process can exit (adoption is a one-shot
|
|
10
10
|
* migration, not a long-lived service host).
|
|
11
11
|
*/
|
|
12
|
+
import type { HikouteiEntity } from "../sync-engine/api/entity.js";
|
|
13
|
+
import { type AdoptOptions } from "./adoptArgs.js";
|
|
14
|
+
/**
|
|
15
|
+
* Resolves a `--descriptor` adoption: reads the JSON file, validates it
|
|
16
|
+
* with the same rules `defineTypedSheetsEntity` enforces (version mismatch
|
|
17
|
+
* and malformed fields fail with `invalid_entity_descriptor`), rejects an
|
|
18
|
+
* already-registered entity name with `duplicate_entity`, and registers the
|
|
19
|
+
* file through the same builder adopt requires. The header→property
|
|
20
|
+
* columnMap comes from the file's `header` fields; an explicit `--map` wins
|
|
21
|
+
* on a conflict. File content is never echoed (redaction); only the reason
|
|
22
|
+
* and the descriptor path are reported.
|
|
23
|
+
*/
|
|
24
|
+
export declare function loadDescriptorAdoption(options: AdoptOptions): Promise<{
|
|
25
|
+
readonly entityName: string;
|
|
26
|
+
readonly columnMap: Record<string, string>;
|
|
27
|
+
readonly entities: readonly HikouteiEntity[];
|
|
28
|
+
}>;
|
|
12
29
|
/**
|
|
13
30
|
* Runs the `hikoutei adopt` CLI with the given argument vector (without the
|
|
14
31
|
* leading "adopt" subcommand). Exported so the bin router can delegate and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adoptMain.d.ts","sourceRoot":"","sources":["../../../../../../src/adoptMain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;
|
|
1
|
+
{"version":3,"file":"adoptMain.d.ts","sourceRoot":"","sources":["../../../../../../src/adoptMain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAMH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAS1E,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AA6EnE;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,cAAc,EAAE,CAAA;CAAE,CAAC,CAkCpI;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CA2D3E"}
|
package/dist/cli/adoptMain.js
CHANGED
|
@@ -9,10 +9,11 @@
|
|
|
9
9
|
* a successful adopt so the CLI process can exit (adoption is a one-shot
|
|
10
10
|
* migration, not a long-lived service host).
|
|
11
11
|
*/
|
|
12
|
+
import { readFile } from "node:fs/promises";
|
|
12
13
|
import { pathToFileURL } from "node:url";
|
|
13
14
|
import { createTypedSheetsWithSync } from "hikoutei";
|
|
14
|
-
import { getEntityDescriptor, getRegisteredEntityTokens } from "../sync-engine/api/entity.js";
|
|
15
|
-
import { HikouteiError } from "../sync-engine/api/errors.js";
|
|
15
|
+
import { defineTypedSheetsEntityFromDescriptorFile, descriptorFileColumnMap, getEntityDescriptor, getRegisteredEntityTokens, parseDescriptorFile, } from "../sync-engine/api/entity.js";
|
|
16
|
+
import { HIKOUTEI_ERROR_CODES, HikouteiError } from "../sync-engine/api/errors.js";
|
|
16
17
|
import { parseAdoptArgs } from "./adoptArgs.js";
|
|
17
18
|
import { ADOPT_ERROR_PREFIX, runAdoptCli, } from "./adoptFlow.js";
|
|
18
19
|
import { SETUP_ARG_ERROR_EXIT_CODE, SETUP_RUNTIME_ERROR_EXIT_CODE, } from "./errors.js";
|
|
@@ -20,6 +21,17 @@ import { createStdinFinalizer, isModuleMainEntry } from "./setup.js";
|
|
|
20
21
|
// The adopt-specific stable error code (api/errors.ts owns the real taxonomy;
|
|
21
22
|
// this alias keeps the machine-readable surface identical).
|
|
22
23
|
const HIKOUTEI_ERROR_CODES_ADOPT_ENTITY_UNKNOWN = "sync_startup_failed";
|
|
24
|
+
/**
|
|
25
|
+
* Loads the ambient/module entity registry: imports the `--entities` module
|
|
26
|
+
* once (whose import side effect registers the descriptors) and snapshots
|
|
27
|
+
* the tokens, or falls back to entities already registered in this process.
|
|
28
|
+
*/
|
|
29
|
+
async function registeredTokens(entitiesModule) {
|
|
30
|
+
if (entitiesModule !== undefined) {
|
|
31
|
+
await import(pathToFileURL(entitiesModule).href);
|
|
32
|
+
}
|
|
33
|
+
return getRegisteredEntityTokens();
|
|
34
|
+
}
|
|
23
35
|
/**
|
|
24
36
|
* Resolves every requested entity token. Loads the `--entities` module once
|
|
25
37
|
* (whose import side effect registers the descriptors), then resolves each
|
|
@@ -30,9 +42,7 @@ async function loadAdoptEntities(options) {
|
|
|
30
42
|
const names = options.adopts !== undefined
|
|
31
43
|
? options.adopts.map((entry) => entry.entityName)
|
|
32
44
|
: [options.entityName];
|
|
33
|
-
const registered = options.entitiesModule
|
|
34
|
-
? (await import(pathToFileURL(options.entitiesModule).href), getRegisteredEntityTokens())
|
|
35
|
-
: getRegisteredEntityTokens();
|
|
45
|
+
const registered = await registeredTokens(options.entitiesModule);
|
|
36
46
|
const tokens = [];
|
|
37
47
|
for (const name of names) {
|
|
38
48
|
const token = registered.find((candidate) => getEntityDescriptor(candidate).name === name);
|
|
@@ -63,6 +73,44 @@ const productionRunner = async (input) => {
|
|
|
63
73
|
}
|
|
64
74
|
return result;
|
|
65
75
|
};
|
|
76
|
+
/**
|
|
77
|
+
* Resolves a `--descriptor` adoption: reads the JSON file, validates it
|
|
78
|
+
* with the same rules `defineTypedSheetsEntity` enforces (version mismatch
|
|
79
|
+
* and malformed fields fail with `invalid_entity_descriptor`), rejects an
|
|
80
|
+
* already-registered entity name with `duplicate_entity`, and registers the
|
|
81
|
+
* file through the same builder adopt requires. The header→property
|
|
82
|
+
* columnMap comes from the file's `header` fields; an explicit `--map` wins
|
|
83
|
+
* on a conflict. File content is never echoed (redaction); only the reason
|
|
84
|
+
* and the descriptor path are reported.
|
|
85
|
+
*/
|
|
86
|
+
export async function loadDescriptorAdoption(options) {
|
|
87
|
+
const descriptorPath = options.descriptorPath;
|
|
88
|
+
let raw;
|
|
89
|
+
try {
|
|
90
|
+
raw = await readFile(descriptorPath, "utf8");
|
|
91
|
+
}
|
|
92
|
+
catch {
|
|
93
|
+
throw new HikouteiError(HIKOUTEI_ERROR_CODES.INVALID_ENTITY_DESCRIPTOR, `could not read the descriptor file "${descriptorPath}".`);
|
|
94
|
+
}
|
|
95
|
+
let json;
|
|
96
|
+
try {
|
|
97
|
+
json = JSON.parse(raw);
|
|
98
|
+
}
|
|
99
|
+
catch {
|
|
100
|
+
throw new HikouteiError(HIKOUTEI_ERROR_CODES.INVALID_ENTITY_DESCRIPTOR, `descriptor file "${descriptorPath}" is not valid JSON.`);
|
|
101
|
+
}
|
|
102
|
+
const file = parseDescriptorFile(json);
|
|
103
|
+
const registered = await registeredTokens(options.entitiesModule);
|
|
104
|
+
if (registered.some((candidate) => getEntityDescriptor(candidate).name === file.name)) {
|
|
105
|
+
throw new HikouteiError(HIKOUTEI_ERROR_CODES.DUPLICATE_ENTITY, `entity "${file.name}" from descriptor file "${descriptorPath}" is already registered.`);
|
|
106
|
+
}
|
|
107
|
+
return {
|
|
108
|
+
entityName: file.name,
|
|
109
|
+
// Explicit `--map` bindings win over the file-derived headers.
|
|
110
|
+
columnMap: { ...descriptorFileColumnMap(file), ...(options.columnMap ?? {}) },
|
|
111
|
+
entities: [defineTypedSheetsEntityFromDescriptorFile(file)],
|
|
112
|
+
};
|
|
113
|
+
}
|
|
66
114
|
/**
|
|
67
115
|
* Runs the `hikoutei adopt` CLI with the given argument vector (without the
|
|
68
116
|
* leading "adopt" subcommand). Exported so the bin router can delegate and
|
|
@@ -83,6 +131,29 @@ export async function runAdoptMain(argv) {
|
|
|
83
131
|
}
|
|
84
132
|
const options = parsed.options;
|
|
85
133
|
try {
|
|
134
|
+
// `--descriptor` (file alternative to `--entity`): the entity name and
|
|
135
|
+
// the header→property columnMap come from the file, so `--map` flags
|
|
136
|
+
// are unnecessary; an explicit `--map` still wins on a conflict.
|
|
137
|
+
if (options.descriptorPath !== undefined) {
|
|
138
|
+
const resolved = await loadDescriptorAdoption(options);
|
|
139
|
+
const { descriptorPath: _dropped, ...rest } = options;
|
|
140
|
+
void _dropped;
|
|
141
|
+
return await runAdoptCli({
|
|
142
|
+
options: {
|
|
143
|
+
...rest,
|
|
144
|
+
entityName: resolved.entityName,
|
|
145
|
+
...(resolved.columnMap === undefined ? {} : { columnMap: resolved.columnMap }),
|
|
146
|
+
},
|
|
147
|
+
entities: resolved.entities,
|
|
148
|
+
runner: productionRunner,
|
|
149
|
+
input: process.stdin,
|
|
150
|
+
output: process.stdout,
|
|
151
|
+
error: process.stderr,
|
|
152
|
+
// The confirmation prompt reads one stdin chunk and leaves the shared
|
|
153
|
+
// iterator open; destroy the stream so the process can exit (Terra S1).
|
|
154
|
+
finalizeStdin: createStdinFinalizer(),
|
|
155
|
+
});
|
|
156
|
+
}
|
|
86
157
|
const entities = await loadAdoptEntities(options);
|
|
87
158
|
return await runAdoptCli({
|
|
88
159
|
options,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adoptMain.js","sourceRoot":"","sources":["../../../../../../src/adoptMain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAErD,OAAO,
|
|
1
|
+
{"version":3,"file":"adoptMain.js","sourceRoot":"","sources":["../../../../../../src/adoptMain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAErD,OAAO,EACL,yCAAyC,EACzC,uBAAuB,EACvB,mBAAmB,EACnB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAC1F,OAAO,EAAE,cAAc,EAAqB,MAAM,gBAAgB,CAAC;AACnE,OAAO,EACL,kBAAkB,EAClB,WAAW,GAGZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,yBAAyB,EACzB,6BAA6B,GAC9B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAErE,8EAA8E;AAC9E,4DAA4D;AAC5D,MAAM,yCAAyC,GAAG,qBAA8B,CAAC;AAEjF;;;;GAIG;AACH,KAAK,UAAU,gBAAgB,CAAC,cAAkC;IAChE,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,yBAAyB,EAAE,CAAC;AACrC,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,iBAAiB,CAAC,OAAqB;IACpD,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,KAAK,SAAS;QACxC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC;QACjD,CAAC,CAAC,CAAC,OAAO,CAAC,UAAW,CAAC,CAAC;IAE1B,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAElE,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QAC3F,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,KAAK,SAAS;gBAChD,CAAC,CAAC,WAAW,OAAO,CAAC,cAAc,GAAG;gBACtC,CAAC,CAAC,cAAc,CAAC;YACnB,MAAM,IAAI,aAAa,CACrB,yCAAyC,EACzC,WAAW,IAAI,2BAA2B,KAAK,yGAAyG;gBACtJ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,IAAI,CACjG,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,2EAA2E;AAC3E,MAAM,gBAAgB,GAAgB,KAAK,EAAE,KAAuB,EAAE,EAAE;IACtE,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC;QAC7C,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC;QAC7B,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,KAAK,EAAE,KAAK,CAAC,IAAI;KAClB,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC3B,wEAAwE;QACxE,iEAAiE;QACjE,mDAAmD;QACnD,MAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,OAAqB;IAErB,MAAM,cAAc,GAAG,OAAO,CAAC,cAAe,CAAC;IAC/C,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,aAAa,CACrB,oBAAoB,CAAC,yBAAyB,EAC9C,uCAAuC,cAAc,IAAI,CAC1D,CAAC;IACJ,CAAC;IACD,IAAI,IAAa,CAAC;IAClB,IAAI,CAAC;QACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,aAAa,CACrB,oBAAoB,CAAC,yBAAyB,EAC9C,oBAAoB,cAAc,sBAAsB,CACzD,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAClE,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACtF,MAAM,IAAI,aAAa,CACrB,oBAAoB,CAAC,gBAAgB,EACrC,WAAW,IAAI,CAAC,IAAI,2BAA2B,cAAc,0BAA0B,CACxF,CAAC;IACJ,CAAC;IACD,OAAO;QACL,UAAU,EAAE,IAAI,CAAC,IAAI;QACrB,+DAA+D;QAC/D,SAAS,EAAE,EAAE,GAAG,uBAAuB,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,EAAE;QAC7E,QAAQ,EAAE,CAAC,yCAAyC,CAAC,IAAI,CAAC,CAAC;KAC5D,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAuB;IACxD,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC;QAC7C,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,kBAAkB,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;QAClG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;QACjE,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,cAAc;YAC3C,CAAC,CAAC,yBAAyB;YAC3B,CAAC,CAAC,6BAA6B,CAAC;IACpC,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC/B,IAAI,CAAC;QACH,uEAAuE;QACvE,qEAAqE;QACrE,iEAAiE;QACjE,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,OAAO,CAAC,CAAC;YACvD,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;YACtD,KAAK,QAAQ,CAAC;YACd,OAAO,MAAM,WAAW,CAAC;gBACvB,OAAO,EAAE;oBACP,GAAG,IAAI;oBACP,UAAU,EAAE,QAAQ,CAAC,UAAU;oBAC/B,GAAG,CAAC,QAAQ,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC;iBAC/E;gBACD,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,MAAM,EAAE,gBAAgB;gBACxB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,OAAO,CAAC,MAAM;gBACrB,sEAAsE;gBACtE,wEAAwE;gBACxE,aAAa,EAAE,oBAAoB,EAAE;aACtC,CAAC,CAAC;QACL,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAClD,OAAO,MAAM,WAAW,CAAC;YACvB,OAAO;YACP,QAAQ;YACR,MAAM,EAAE,gBAAgB;YACxB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,OAAO,CAAC,MAAM;YACrB,sEAAsE;YACtE,wEAAwE;YACxE,aAAa,EAAE,oBAAoB,EAAE;SACtC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,OAAQ,KAA4B,EAAE,IAAI,KAAK,QAAQ;YAClE,CAAC,CAAE,KAA0B,CAAC,IAAI;YAClC,CAAC,CAAC,YAAY,CAAC;QACjB,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC;QAC7D,OAAO,6BAA6B,CAAC;IACvC,CAAC;AACH,CAAC;AAED,6EAA6E;AAC7E,kEAAkE;AAClE,IAAI,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IACxD,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAChC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QACb,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC1B,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QACxB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,kBAAkB,gBAAgB,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjF,OAAO,CAAC,QAAQ,GAAG,6BAA6B,CAAC;IACnD,CAAC,CAAC,CAAC;AACP,CAAC;AAED,oEAAoE;AACpE,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACpF,CAAC"}
|
package/dist/cli/index.d.ts
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* Routes:
|
|
6
6
|
* hikoutei setup [flags...] → the setup bootstrap flow (src/cli/setup.ts)
|
|
7
7
|
* hikoutei adopt [flags...] → the existing-sheet adoption flow (src/cli/adoptMain.ts)
|
|
8
|
+
* hikoutei infer [flags...] → the read-only sheet-to-entity sampler (src/cli/inferMain.ts)
|
|
8
9
|
* hikoutei [flags...] → legacy spelling of `hikoutei setup` (the bin
|
|
9
10
|
* predates subcommands; bare-flag invocations
|
|
10
11
|
* stay on the setup flow for compatibility)
|
package/dist/cli/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/index.ts"],"names":[],"mappings":";AACA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;GAaG"}
|
package/dist/cli/index.js
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* Routes:
|
|
6
6
|
* hikoutei setup [flags...] → the setup bootstrap flow (src/cli/setup.ts)
|
|
7
7
|
* hikoutei adopt [flags...] → the existing-sheet adoption flow (src/cli/adoptMain.ts)
|
|
8
|
+
* hikoutei infer [flags...] → the read-only sheet-to-entity sampler (src/cli/inferMain.ts)
|
|
8
9
|
* hikoutei [flags...] → legacy spelling of `hikoutei setup` (the bin
|
|
9
10
|
* predates subcommands; bare-flag invocations
|
|
10
11
|
* stay on the setup flow for compatibility)
|
|
@@ -13,6 +14,7 @@
|
|
|
13
14
|
* them from this router never triggers their side effects.
|
|
14
15
|
*/
|
|
15
16
|
import { runAdoptMain } from "./adoptMain.js";
|
|
17
|
+
import { runInferMain } from "./inferMain.js";
|
|
16
18
|
import { runSetupMain } from "./setup.js";
|
|
17
19
|
import { SETUP_RUNTIME_ERROR_EXIT_CODE } from "./errors.js";
|
|
18
20
|
async function route(argv) {
|
|
@@ -23,6 +25,9 @@ async function route(argv) {
|
|
|
23
25
|
if (head === "setup") {
|
|
24
26
|
return runSetupMain(argv.slice(1));
|
|
25
27
|
}
|
|
28
|
+
if (head === "infer") {
|
|
29
|
+
return runInferMain(argv.slice(1));
|
|
30
|
+
}
|
|
26
31
|
// Legacy: the bin used to BE the setup CLI, so bare-flag invocations keep
|
|
27
32
|
// working unchanged.
|
|
28
33
|
return runSetupMain(argv);
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/index.ts"],"names":[],"mappings":";AACA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,6BAA6B,EAAE,MAAM,aAAa,CAAC;AAE5D,KAAK,UAAU,KAAK,CAAC,IAAuB;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACrB,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IACD,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IACD,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IACD,0EAA0E;IAC1E,qBAAqB;IACrB,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACzB,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;IACb,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;AAC1B,CAAC,CAAC;KACD,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;IACxB,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1F,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,MAAM,IAAI,CAAC,CAAC;IACzD,OAAO,CAAC,QAAQ,GAAG,6BAA6B,CAAC;AACnD,CAAC,CAAC,CAAC"}
|