@metaobjectsdev/cli 1.0.13 → 1.1.0
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/README.md +32 -22
- package/dist/bin/meta.js +14 -2
- package/dist/bin/meta.js.map +1 -1
- package/dist/src/commands/docs.d.ts +1 -14
- package/dist/src/commands/docs.d.ts.map +1 -1
- package/dist/src/commands/docs.js +11 -835
- package/dist/src/commands/docs.js.map +1 -1
- package/dist/src/commands/eject.d.ts +24 -1
- package/dist/src/commands/eject.d.ts.map +1 -1
- package/dist/src/commands/eject.js +240 -69
- package/dist/src/commands/eject.js.map +1 -1
- package/dist/src/commands/gen.d.ts +7 -0
- package/dist/src/commands/gen.d.ts.map +1 -1
- package/dist/src/commands/gen.js +91 -21
- package/dist/src/commands/gen.js.map +1 -1
- package/dist/src/commands/generator.js +2 -2
- package/dist/src/commands/generator.js.map +1 -1
- package/dist/src/commands/init.d.ts +7 -0
- package/dist/src/commands/init.d.ts.map +1 -1
- package/dist/src/commands/init.js +71 -36
- package/dist/src/commands/init.js.map +1 -1
- package/dist/src/commands/migrate.d.ts +1 -1
- package/dist/src/commands/migrate.d.ts.map +1 -1
- package/dist/src/commands/migrate.js +224 -125
- package/dist/src/commands/migrate.js.map +1 -1
- package/dist/src/commands/types.d.ts.map +1 -1
- package/dist/src/commands/types.js +16 -2
- package/dist/src/commands/types.js.map +1 -1
- package/dist/src/commands/upgrade.d.ts.map +1 -1
- package/dist/src/commands/upgrade.js +4 -1
- package/dist/src/commands/upgrade.js.map +1 -1
- package/dist/src/commands/verify.d.ts.map +1 -1
- package/dist/src/commands/verify.js +189 -125
- package/dist/src/commands/verify.js.map +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +59 -72
- package/dist/src/index.js.map +1 -1
- package/dist/src/lib/agent-context-staleness.d.ts +8 -1
- package/dist/src/lib/agent-context-staleness.d.ts.map +1 -1
- package/dist/src/lib/agent-context-staleness.js +20 -5
- package/dist/src/lib/agent-context-staleness.js.map +1 -1
- package/dist/src/lib/agent-schema.d.ts +9 -0
- package/dist/src/lib/agent-schema.d.ts.map +1 -0
- package/dist/src/lib/agent-schema.js +61 -0
- package/dist/src/lib/agent-schema.js.map +1 -0
- package/dist/src/lib/allow.d.ts +6 -0
- package/dist/src/lib/allow.d.ts.map +1 -1
- package/dist/src/lib/allow.js +49 -5
- package/dist/src/lib/allow.js.map +1 -1
- package/dist/src/lib/anti-patterns.d.ts.map +1 -1
- package/dist/src/lib/anti-patterns.js +4 -2
- package/dist/src/lib/anti-patterns.js.map +1 -1
- package/dist/src/lib/args.d.ts +51 -10
- package/dist/src/lib/args.d.ts.map +1 -1
- package/dist/src/lib/args.js +44 -18
- package/dist/src/lib/args.js.map +1 -1
- package/dist/src/lib/catalog-listing.d.ts +21 -1
- package/dist/src/lib/catalog-listing.d.ts.map +1 -1
- package/dist/src/lib/catalog-listing.js +85 -16
- package/dist/src/lib/catalog-listing.js.map +1 -1
- package/dist/src/lib/catalog.d.ts +30 -0
- package/dist/src/lib/catalog.d.ts.map +1 -1
- package/dist/src/lib/catalog.js +40 -5
- package/dist/src/lib/catalog.js.map +1 -1
- package/dist/src/lib/codegen-drift.d.ts +31 -2
- package/dist/src/lib/codegen-drift.d.ts.map +1 -1
- package/dist/src/lib/codegen-drift.js +109 -4
- package/dist/src/lib/codegen-drift.js.map +1 -1
- package/dist/src/lib/collection-load-options.d.ts +1 -1
- package/dist/src/lib/collection-load-options.d.ts.map +1 -1
- package/dist/src/lib/collection-load-options.js +1 -0
- package/dist/src/lib/collection-load-options.js.map +1 -1
- package/dist/src/lib/config.d.ts +4 -2
- package/dist/src/lib/config.d.ts.map +1 -1
- package/dist/src/lib/config.js +4 -2
- package/dist/src/lib/config.js.map +1 -1
- package/dist/src/lib/decimal-precision-advisory.d.ts +10 -0
- package/dist/src/lib/decimal-precision-advisory.d.ts.map +1 -0
- package/dist/src/lib/decimal-precision-advisory.js +34 -0
- package/dist/src/lib/decimal-precision-advisory.js.map +1 -0
- package/dist/src/lib/deprecation-lint.d.ts.map +1 -1
- package/dist/src/lib/deprecation-lint.js +17 -26
- package/dist/src/lib/deprecation-lint.js.map +1 -1
- package/dist/src/lib/docs-removed.d.ts +13 -0
- package/dist/src/lib/docs-removed.d.ts.map +1 -0
- package/dist/src/lib/docs-removed.js +31 -0
- package/dist/src/lib/docs-removed.js.map +1 -0
- package/dist/src/lib/docs-site-eject.d.ts +13 -0
- package/dist/src/lib/docs-site-eject.d.ts.map +1 -0
- package/dist/src/lib/docs-site-eject.js +40 -0
- package/dist/src/lib/docs-site-eject.js.map +1 -0
- package/dist/src/lib/field-lint.d.ts +25 -0
- package/dist/src/lib/field-lint.d.ts.map +1 -0
- package/dist/src/lib/field-lint.js +102 -0
- package/dist/src/lib/field-lint.js.map +1 -0
- package/dist/src/lib/fk-index-advisory.d.ts +1 -2
- package/dist/src/lib/fk-index-advisory.d.ts.map +1 -1
- package/dist/src/lib/fk-index-advisory.js +4 -3
- package/dist/src/lib/fk-index-advisory.js.map +1 -1
- package/dist/src/lib/format.d.ts +7 -0
- package/dist/src/lib/format.d.ts.map +1 -1
- package/dist/src/lib/format.js +13 -0
- package/dist/src/lib/format.js.map +1 -1
- package/dist/src/lib/gen-migrate-advice.d.ts +3 -1
- package/dist/src/lib/gen-migrate-advice.d.ts.map +1 -1
- package/dist/src/lib/gen-migrate-advice.js +3 -4
- package/dist/src/lib/gen-migrate-advice.js.map +1 -1
- package/dist/src/lib/install-set.d.ts +10 -1
- package/dist/src/lib/install-set.d.ts.map +1 -1
- package/dist/src/lib/install-set.js +20 -2
- package/dist/src/lib/install-set.js.map +1 -1
- package/dist/src/lib/load-metaobjects-config.d.ts +13 -11
- package/dist/src/lib/load-metaobjects-config.d.ts.map +1 -1
- package/dist/src/lib/load-metaobjects-config.js +53 -75
- package/dist/src/lib/load-metaobjects-config.js.map +1 -1
- package/dist/src/lib/manifest-ignored-check.d.ts +4 -1
- package/dist/src/lib/manifest-ignored-check.d.ts.map +1 -1
- package/dist/src/lib/manifest-ignored-check.js +9 -4
- package/dist/src/lib/manifest-ignored-check.js.map +1 -1
- package/dist/src/lib/output.d.ts +15 -0
- package/dist/src/lib/output.d.ts.map +1 -1
- package/dist/src/lib/output.js +9 -1
- package/dist/src/lib/output.js.map +1 -1
- package/dist/src/lib/payload-field-tree.d.ts +4 -5
- package/dist/src/lib/payload-field-tree.d.ts.map +1 -1
- package/dist/src/lib/payload-field-tree.js +16 -31
- package/dist/src/lib/payload-field-tree.js.map +1 -1
- package/dist/src/lib/requirement-check.d.ts +7 -0
- package/dist/src/lib/requirement-check.d.ts.map +1 -1
- package/dist/src/lib/requirement-check.js +14 -7
- package/dist/src/lib/requirement-check.js.map +1 -1
- package/dist/src/lib/strict-args.d.ts +28 -0
- package/dist/src/lib/strict-args.d.ts.map +1 -0
- package/dist/src/lib/strict-args.js +49 -0
- package/dist/src/lib/strict-args.js.map +1 -0
- package/dist/src/lib/template-eject.d.ts +108 -0
- package/dist/src/lib/template-eject.d.ts.map +1 -0
- package/dist/src/lib/template-eject.js +438 -0
- package/dist/src/lib/template-eject.js.map +1 -0
- package/dist/src/lib/version.d.ts +9 -0
- package/dist/src/lib/version.d.ts.map +1 -1
- package/dist/src/lib/version.js +15 -0
- package/dist/src/lib/version.js.map +1 -1
- package/package.json +10 -10
- package/src/commands/docs.ts +11 -952
- package/src/commands/eject.ts +318 -73
- package/src/commands/gen.ts +94 -22
- package/src/commands/generator.ts +2 -2
- package/src/commands/init.ts +80 -38
- package/src/commands/migrate.ts +248 -117
- package/src/commands/types.ts +18 -2
- package/src/commands/upgrade.ts +5 -1
- package/src/commands/verify.ts +229 -136
- package/src/index.ts +59 -72
- package/src/lib/agent-context-staleness.ts +20 -5
- package/src/lib/agent-schema.ts +74 -0
- package/src/lib/allow.ts +57 -6
- package/src/lib/anti-patterns.ts +4 -2
- package/src/lib/args.ts +83 -28
- package/src/lib/catalog-listing.ts +105 -25
- package/src/lib/catalog.ts +51 -6
- package/src/lib/codegen-drift.ts +138 -3
- package/src/lib/collection-load-options.ts +2 -1
- package/src/lib/config.ts +5 -3
- package/src/lib/decimal-precision-advisory.ts +50 -0
- package/src/lib/deprecation-lint.ts +16 -24
- package/src/lib/docs-removed.ts +41 -0
- package/src/lib/docs-site-eject.ts +48 -0
- package/src/lib/field-lint.ts +122 -0
- package/src/lib/fk-index-advisory.ts +4 -4
- package/src/lib/format.ts +12 -0
- package/src/lib/gen-migrate-advice.ts +6 -4
- package/src/lib/install-set.ts +20 -1
- package/src/lib/load-metaobjects-config.ts +57 -78
- package/src/lib/manifest-ignored-check.ts +14 -10
- package/src/lib/output.ts +18 -1
- package/src/lib/payload-field-tree.ts +18 -35
- package/src/lib/requirement-check.ts +21 -6
- package/src/lib/strict-args.ts +52 -0
- package/src/lib/template-eject.ts +526 -0
- package/src/lib/version.ts +18 -0
- package/dist/src/lib/docs-drift.d.ts +0 -42
- package/dist/src/lib/docs-drift.d.ts.map +0 -1
- package/dist/src/lib/docs-drift.js +0 -264
- package/dist/src/lib/docs-drift.js.map +0 -1
- package/src/lib/docs-drift.ts +0 -312
|
@@ -6,13 +6,26 @@ import { join } from "node:path";
|
|
|
6
6
|
// star one, so the root barrel now hands out the dependency manifest under this
|
|
7
7
|
// name. `init.ts` already imports these from the subpath; this was the last site
|
|
8
8
|
// reading them from the root.
|
|
9
|
-
import { AGENT_CONTEXT_MANIFEST_PATH, agentContextStaleness } from "@metaobjectsdev/sdk/agent-context";
|
|
9
|
+
import { AGENT_CONTEXT_MANIFEST_PATH, agentContextStaleness, hashAgentContextRoot, resolveAgentContextRoot } from "@metaobjectsdev/sdk/agent-context";
|
|
10
|
+
import { docsRefForVersion } from "@metaobjectsdev/metadata";
|
|
10
11
|
import { cliVersion } from "./version.js";
|
|
11
12
|
import { log } from "./log.js";
|
|
13
|
+
/** The installed content's hash, or nothing when the content tree cannot be found (version compare then). */
|
|
14
|
+
export function currentContentHash() {
|
|
15
|
+
try {
|
|
16
|
+
return { currentContentHash: hashAgentContextRoot(resolveAgentContextRoot(), docsRefForVersion(cliVersion())) };
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
return {};
|
|
20
|
+
}
|
|
21
|
+
}
|
|
12
22
|
/**
|
|
13
23
|
* Advisory: if a scaffolded MetaObjects agent context predates this CLI version,
|
|
14
24
|
* print a one-line nudge to re-scaffold. Never throws, never blocks — an absent or
|
|
15
25
|
* corrupt manifest is silently ignored (this is a reminder, not a gate).
|
|
26
|
+
*
|
|
27
|
+
* Returns the line it printed, so a command with a structured result can carry it
|
|
28
|
+
* there too; undefined when it said nothing.
|
|
16
29
|
*/
|
|
17
30
|
export function warnIfAgentContextStale(cwd) {
|
|
18
31
|
const p = join(cwd, AGENT_CONTEXT_MANIFEST_PATH);
|
|
@@ -22,11 +35,13 @@ export function warnIfAgentContextStale(cwd) {
|
|
|
22
35
|
manifest = JSON.parse(readFileSync(p, "utf8"));
|
|
23
36
|
}
|
|
24
37
|
catch {
|
|
25
|
-
return; // unreadable/corrupt — say nothing
|
|
38
|
+
return undefined; // unreadable/corrupt — say nothing
|
|
26
39
|
}
|
|
27
40
|
}
|
|
28
|
-
const msg = agentContextStaleness({ manifest, currentVersion: cliVersion() });
|
|
29
|
-
if (msg
|
|
30
|
-
|
|
41
|
+
const msg = agentContextStaleness({ manifest, currentVersion: cliVersion(), ...currentContentHash() });
|
|
42
|
+
if (msg === null)
|
|
43
|
+
return undefined;
|
|
44
|
+
log.warn(msg);
|
|
45
|
+
return msg;
|
|
31
46
|
}
|
|
32
47
|
//# sourceMappingURL=agent-context-staleness.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-context-staleness.js","sourceRoot":"","sources":["../../../src/lib/agent-context-staleness.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,oFAAoF;AACpF,mFAAmF;AACnF,+EAA+E;AAC/E,gFAAgF;AAChF,iFAAiF;AACjF,8BAA8B;AAC9B,OAAO,EAAE,2BAA2B,EAAE,qBAAqB,EAAiB,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-context-staleness.js","sourceRoot":"","sources":["../../../src/lib/agent-context-staleness.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,oFAAoF;AACpF,mFAAmF;AACnF,+EAA+E;AAC/E,gFAAgF;AAChF,iFAAiF;AACjF,8BAA8B;AAC9B,OAAO,EAAE,2BAA2B,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,uBAAuB,EAAiB,MAAM,mCAAmC,CAAC;AACrK,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,6GAA6G;AAC7G,MAAM,UAAU,kBAAkB;IAChC,IAAI,CAAC;QACH,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,CAAC,uBAAuB,EAAE,EAAE,iBAAiB,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC;IAClH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CAAC,GAAW;IACjD,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,2BAA2B,CAAC,CAAC;IACjD,IAAI,QAA8B,CAAC;IACnC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC;YACH,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAa,CAAC;QAC7D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC,CAAC,mCAAmC;QACvD,CAAC;IACH,CAAC;IACD,MAAM,GAAG,GAAG,qBAAqB,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,GAAG,kBAAkB,EAAE,EAAE,CAAC,CAAC;IACvG,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IACnC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACd,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { AgentSchemaInput, Dialect } from "@metaobjectsdev/codegen-ts";
|
|
2
|
+
import type { MetaRoot } from "@metaobjectsdev/metadata";
|
|
3
|
+
/**
|
|
4
|
+
* The schema for `agent/schema.md`, or undefined, after saying why through `warn`, when the
|
|
5
|
+
* page is to be SKIPPED. A skipped page is not a silent pass: `meta verify --codegen` convicts
|
|
6
|
+
* a committed `agent/schema.md` that a fresh run no longer writes.
|
|
7
|
+
*/
|
|
8
|
+
export declare function buildAgentSchemaInput(root: MetaRoot, configured: Dialect | undefined, warn: (message: string) => void): AgentSchemaInput | undefined;
|
|
9
|
+
//# sourceMappingURL=agent-schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-schema.d.ts","sourceRoot":"","sources":["../../../src/lib/agent-schema.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAoB,MAAM,4BAA4B,CAAC;AAE9F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGzD;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,OAAO,GAAG,SAAS,EAC/B,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAC9B,gBAAgB,GAAG,SAAS,CA+C9B"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
// The physical schema `agent/schema.md` describes (the `agent-docs` generator), built by the
|
|
2
|
+
// package that owns it, `migrate-ts`, with its own resolvers handed across. codegen-ts
|
|
3
|
+
// deliberately computes none of it (see agent-schema-input.ts there), so `meta gen` and
|
|
4
|
+
// `meta verify --codegen` build it here and hand it to the run as `RunGenOpts.agentSchema`;
|
|
5
|
+
// the runner calls it only when a declared generator asks.
|
|
6
|
+
import { buildProjectionViews, dbEmittingObjects, DEFAULT_DIALECT, missingDialectMessage, } from "@metaobjectsdev/codegen-ts";
|
|
7
|
+
import { buildExpectedSchemaWithProvenance, columnTypeSql, qualifiedDbName } from "@metaobjectsdev/migrate-ts";
|
|
8
|
+
import { describeError } from "./error-text.js";
|
|
9
|
+
/**
|
|
10
|
+
* The schema for `agent/schema.md`, or undefined, after saying why through `warn`, when the
|
|
11
|
+
* page is to be SKIPPED. A skipped page is not a silent pass: `meta verify --codegen` convicts
|
|
12
|
+
* a committed `agent/schema.md` that a fresh run no longer writes.
|
|
13
|
+
*/
|
|
14
|
+
export function buildAgentSchemaInput(root, configured, warn) {
|
|
15
|
+
// THE RUNNER'S OWN GUARD DECIDES THIS, not a default applied here. `DEFAULT_DIALECT` is
|
|
16
|
+
// inert: `meta gen` refuses a model that emits database code with no dialect declared, so a
|
|
17
|
+
// persisted model with no dialect is not a sqlite project. Documenting it as one would state
|
|
18
|
+
// an answer the toolchain never gave. A model with no persisted object needs no dialect and
|
|
19
|
+
// renders an empty schema page anyway, so the inert default is right for exactly the
|
|
20
|
+
// projects the guard lets through.
|
|
21
|
+
const dbEmitting = dbEmittingObjects(root.objects());
|
|
22
|
+
if (dbEmitting.length > 0 && configured === undefined) {
|
|
23
|
+
warn(`agent/schema.md skipped — ${missingDialectMessage(dbEmitting)}`);
|
|
24
|
+
return undefined;
|
|
25
|
+
}
|
|
26
|
+
// MySQL: MetaObjects does not own the schema, so there is no migrate-built schema to
|
|
27
|
+
// describe. The generated Drizzle tables are the description.
|
|
28
|
+
if (configured === "mysql") {
|
|
29
|
+
warn("agent/schema.md skipped — MetaObjects does not own a MySQL schema (the generated Drizzle tables describe it).");
|
|
30
|
+
return undefined;
|
|
31
|
+
}
|
|
32
|
+
const dialect = configured ?? DEFAULT_DIALECT;
|
|
33
|
+
try {
|
|
34
|
+
const built = buildExpectedSchemaWithProvenance(root, {
|
|
35
|
+
dialect,
|
|
36
|
+
// Views come from codegen-ts (migrate-ts never generates view DDL), exactly as
|
|
37
|
+
// `verify --db` threads them.
|
|
38
|
+
views: buildProjectionViews(root, { dialect }),
|
|
39
|
+
});
|
|
40
|
+
return {
|
|
41
|
+
dialect,
|
|
42
|
+
tables: built.snapshot.tables,
|
|
43
|
+
views: built.snapshot.views,
|
|
44
|
+
provenance: built.provenance,
|
|
45
|
+
// The structural `SchemaColumnLike` is migrate-ts's own ColumnDescriptor, narrowed to
|
|
46
|
+
// what the page reads; the cast hands the full descriptor back to the renderer that
|
|
47
|
+
// produced it.
|
|
48
|
+
columnType: (c) => columnTypeSql(c, dialect),
|
|
49
|
+
qualify: qualifiedDbName,
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
catch (err) {
|
|
53
|
+
// A model the schema builder refuses is a real condition (a primary-key move, a duplicate
|
|
54
|
+
// physical name) that `meta migrate` reports properly. Documentation must not be the
|
|
55
|
+
// command that fails on it, so the schema page is skipped and the other pages still emit.
|
|
56
|
+
warn(`agent/schema.md skipped — the expected schema could not be built ` +
|
|
57
|
+
`(${describeError(err)}). Run 'meta migrate' for the full diagnosis.`);
|
|
58
|
+
return undefined;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=agent-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-schema.js","sourceRoot":"","sources":["../../../src/lib/agent-schema.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,uFAAuF;AACvF,wFAAwF;AACxF,4FAA4F;AAC5F,2DAA2D;AAE3D,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EACf,qBAAqB,GACtB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,iCAAiC,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE/G,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAc,EACd,UAA+B,EAC/B,IAA+B;IAE/B,wFAAwF;IACxF,4FAA4F;IAC5F,6FAA6F;IAC7F,4FAA4F;IAC5F,qFAAqF;IACrF,mCAAmC;IACnC,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IACrD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACtD,IAAI,CAAC,6BAA6B,qBAAqB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACvE,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,qFAAqF;IACrF,8DAA8D;IAC9D,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QAC3B,IAAI,CAAC,+GAA+G,CAAC,CAAC;QACtH,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,OAAO,GAAG,UAAU,IAAI,eAAe,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,iCAAiC,CAAC,IAAI,EAAE;YACpD,OAAO;YACP,+EAA+E;YAC/E,8BAA8B;YAC9B,KAAK,EAAE,oBAAoB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC;SAC/C,CAAC,CAAC;QACH,OAAO;YACL,OAAO;YACP,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM;YAC7B,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK;YAC3B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,sFAAsF;YACtF,oFAAoF;YACpF,eAAe;YACf,UAAU,EAAE,CAAC,CAAmB,EAAE,EAAE,CAAC,aAAa,CAAC,CAAU,EAAE,OAAO,CAAC;YACvE,OAAO,EAAE,eAAe;SACzB,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,0FAA0F;QAC1F,qFAAqF;QACrF,0FAA0F;QAC1F,IAAI,CACF,mEAAmE;YACjE,IAAI,aAAa,CAAC,GAAG,CAAC,+CAA+C,CACxE,CAAC;QACF,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
|
package/dist/src/lib/allow.d.ts
CHANGED
|
@@ -9,6 +9,12 @@ export declare function tokensToAllowOptions(tokens: string[]): AllowOptions;
|
|
|
9
9
|
* a +/-/~ glyph and a noun (`table`/`column`/…) on top.
|
|
10
10
|
*/
|
|
11
11
|
export declare function describeChange(c: Change): string;
|
|
12
|
+
/**
|
|
13
|
+
* One line naming the views a migration drops and recreates only because it alters a table
|
|
14
|
+
* they read. Their definitions match the metadata, and the migration needs the pair, but
|
|
15
|
+
* without this line the DROP VIEW / CREATE VIEW in the SQL reads like a view change (D3).
|
|
16
|
+
*/
|
|
17
|
+
export declare function viewRecreateNote(changes: readonly Change[]): string | undefined;
|
|
12
18
|
/** The `--allow` token that unblocks `c`. migrate-ts picks the permission by what blocked the
|
|
13
19
|
* change (a type change can be blocked by the auto-sequence default it carries), so this only
|
|
14
20
|
* maps that permission back to its CLI token. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"allow.d.ts","sourceRoot":"","sources":["../../../src/lib/allow.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,sBAAsB,
|
|
1
|
+
{"version":3,"file":"allow.d.ts","sourceRoot":"","sources":["../../../src/lib/allow.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,sBAAsB,EAAoB,MAAM,4BAA4B,CAAC;AACjH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAQhD,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,YAAY,CA2B9D,CAAC;AAEF,kFAAkF;AAClF,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,CASnE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAkChD;AAyCD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAK/E;AAED;;kDAEkD;AAClD,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAI9C;AAED,oFAAoF;AACpF,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,sBAAsB,GAAG,MAAM,CAElE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,YAAY,EAAE,CAcxG;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,EAAE,CAW1D"}
|
package/dist/src/lib/allow.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Shared destructive-change-permission parsing + change description, used by
|
|
2
2
|
// both `meta migrate` and `meta verify --db`. Keeping a single copy avoids the
|
|
3
3
|
// two commands drifting on which `--allow` tokens exist or how a change reads.
|
|
4
|
-
import { allowOptionFor, suggestColumnRenames } from "@metaobjectsdev/migrate-ts";
|
|
4
|
+
import { allowOptionFor, describeSqlType, isViewRecreateOnly, suggestColumnRenames } from "@metaobjectsdev/migrate-ts";
|
|
5
5
|
// Map CLI allow tokens → migrate-ts AllowOptions field names.
|
|
6
6
|
// Exported (not just module-local) so allow-tokens-pinned.test.ts can pin its
|
|
7
7
|
// key set against ALLOW_TOKENS (args.ts). ALLOW_TOKENS is the *validator* —
|
|
@@ -65,7 +65,7 @@ export function describeChange(c) {
|
|
|
65
65
|
const from = c.fromDefault?.value ?? "none";
|
|
66
66
|
const to = c.toDefault?.value ?? "none";
|
|
67
67
|
const dflt = from === to && c.fromDefault?.kind === c.toDefault?.kind ? "" : `, default ${from} → ${to}`;
|
|
68
|
-
return `${c.table}.${c.column} (${c.from
|
|
68
|
+
return `${c.table}.${c.column} (${describeSqlType(c.from)} → ${describeSqlType(c.to)}${dflt})`;
|
|
69
69
|
}
|
|
70
70
|
case "change-column-nullable": return `${c.table}.${c.column} (${c.from ? "NULL" : "NOT NULL"} → ${c.to ? "NULL" : "NOT NULL"})`;
|
|
71
71
|
case "change-column-default": return `${c.table}.${c.column}`;
|
|
@@ -78,15 +78,59 @@ export function describeChange(c) {
|
|
|
78
78
|
return c.restore !== undefined
|
|
79
79
|
? `${c.table} check ${c.check} (${c.restore.expression})`
|
|
80
80
|
: `${c.table} check ${c.check}`;
|
|
81
|
-
case "create-view": return c.view.name;
|
|
82
|
-
case "replace-view": return c.view.name;
|
|
83
|
-
case "drop-view": return c.view;
|
|
81
|
+
case "create-view": return withViewReason(c.view.name, c.reason);
|
|
82
|
+
case "replace-view": return withViewReason(c.view.name, c.reason);
|
|
83
|
+
case "drop-view": return withViewReason(c.view, c.reason);
|
|
84
84
|
}
|
|
85
85
|
// Exhaustive: a new Change kind fails to compile here rather than printing a JSON dump
|
|
86
86
|
// of the change object to a person (which is what a blocked drop-check used to do).
|
|
87
87
|
const unhandled = c;
|
|
88
88
|
return unhandled;
|
|
89
89
|
}
|
|
90
|
+
/**
|
|
91
|
+
* A view's name plus WHY the diff planned its change. A bare name was all a view change
|
|
92
|
+
* ever printed, so a view whose definition matched the metadata — dropped and recreated only
|
|
93
|
+
* because the migration alters a table it reads — read exactly like one that differed (D3).
|
|
94
|
+
*/
|
|
95
|
+
function withViewReason(name, reason) {
|
|
96
|
+
return reason === undefined ? name : `${name} (${viewReasonText(reason)})`;
|
|
97
|
+
}
|
|
98
|
+
function viewReasonText(r) {
|
|
99
|
+
switch (r.kind) {
|
|
100
|
+
case "missing": return "declared by the metadata, not in the database";
|
|
101
|
+
case "undeclared": return "in the database, declared by no metadata object";
|
|
102
|
+
case "definition": {
|
|
103
|
+
const what = r.compared === "fingerprint"
|
|
104
|
+
? "definition differs: the database view's fingerprint does not match the metadata's"
|
|
105
|
+
: r.firstDifference !== undefined
|
|
106
|
+
? `definition text differs: metadata «${r.firstDifference.expected}» vs database «${r.firstDifference.actual}»`
|
|
107
|
+
: "definition text differs";
|
|
108
|
+
return recreatedAround(what, r.tables);
|
|
109
|
+
}
|
|
110
|
+
case "unfingerprinted":
|
|
111
|
+
return recreatedAround("the database view carries no MetaObjects fingerprint, so its definition cannot be compared", r.tables);
|
|
112
|
+
case "unchanged":
|
|
113
|
+
return `definition matches the metadata; recreated because the migration alters ${tableList(r.tables)}`;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
function recreatedAround(what, tables) {
|
|
117
|
+
return tables === undefined ? what : `${what}; recreated around the change to ${tableList(tables)}`;
|
|
118
|
+
}
|
|
119
|
+
function tableList(tables) {
|
|
120
|
+
return `${tables.length === 1 ? "table" : "tables"} ${tables.join(", ")}`;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* One line naming the views a migration drops and recreates only because it alters a table
|
|
124
|
+
* they read. Their definitions match the metadata, and the migration needs the pair, but
|
|
125
|
+
* without this line the DROP VIEW / CREATE VIEW in the SQL reads like a view change (D3).
|
|
126
|
+
*/
|
|
127
|
+
export function viewRecreateNote(changes) {
|
|
128
|
+
const views = changes.flatMap((c) => c.kind === "create-view" && isViewRecreateOnly(c) ? [c.view.name] : []);
|
|
129
|
+
if (views.length === 0)
|
|
130
|
+
return undefined;
|
|
131
|
+
return `${views.length} view(s) match the metadata and are recreated only because the migration ` +
|
|
132
|
+
`alters a table they read: ${views.join(", ")}`;
|
|
133
|
+
}
|
|
90
134
|
/** The `--allow` token that unblocks `c`. migrate-ts picks the permission by what blocked the
|
|
91
135
|
* change (a type change can be blocked by the auto-sequence default it carries), so this only
|
|
92
136
|
* maps that permission back to its CLI token. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"allow.js","sourceRoot":"","sources":["../../../src/lib/allow.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,+EAA+E;AAC/E,+EAA+E;AAE/E,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"allow.js","sourceRoot":"","sources":["../../../src/lib/allow.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anti-patterns.d.ts","sourceRoot":"","sources":["../../../src/lib/anti-patterns.ts"],"names":[],"mappings":"AAsBA,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,uBAAuB,GAAG,aAAa,GAAG,YAAY,CAAC;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAgGD,qDAAqD;AACrD,MAAM,WAAW,sBAAsB;IACrC;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;
|
|
1
|
+
{"version":3,"file":"anti-patterns.d.ts","sourceRoot":"","sources":["../../../src/lib/anti-patterns.ts"],"names":[],"mappings":"AAsBA,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,uBAAuB,GAAG,aAAa,GAAG,YAAY,CAAC;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAgGD,qDAAqD;AACrD,MAAM,WAAW,sBAAsB;IACrC;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAkID;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,sBAAsB,GAC/B,kBAAkB,EAAE,CAMtB"}
|
|
@@ -164,8 +164,10 @@ function matchLine(line, isSql) {
|
|
|
164
164
|
return null;
|
|
165
165
|
}
|
|
166
166
|
const ADVICE = {
|
|
167
|
-
"hand-rolled-aggregate": "you're computing an aggregate by hand — MetaObjects derives it:
|
|
168
|
-
"
|
|
167
|
+
"hand-rolled-aggregate": "you're computing an aggregate by hand — MetaObjects derives it: for grouped, " +
|
|
168
|
+
"served or reported figures declare an object.report (dimensions + measures, a " +
|
|
169
|
+
"read-only list route); an object.projection with an origin.aggregate child still " +
|
|
170
|
+
"fits a per-row figure on one entity read through its generated query",
|
|
169
171
|
"money-float": "money handled as a float / hand-rolled minor units — MetaObjects has " +
|
|
170
172
|
"field.currency (integer minor units stored, formatted client-side)",
|
|
171
173
|
"enum-check": "a fixed value set enforced by a CHECK — MetaObjects has field.enum (generates " +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anti-patterns.js","sourceRoot":"","sources":["../../../src/lib/anti-patterns.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"anti-patterns.js","sourceRoot":"","sources":["../../../src/lib/anti-patterns.ts"],"names":[],"mappings":"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"}
|
package/dist/src/lib/args.d.ts
CHANGED
|
@@ -114,6 +114,12 @@ export interface GenFlags {
|
|
|
114
114
|
* a structured payload, which carries every finding.
|
|
115
115
|
*/
|
|
116
116
|
limit: number;
|
|
117
|
+
/**
|
|
118
|
+
* `--generators <names>`: narrow the run to these declared generators, by stable name
|
|
119
|
+
* (ADR-0034 Amendment 9). Undefined runs everything the config declares. A name the
|
|
120
|
+
* config does not declare is refused; a narrowing never adds a generator.
|
|
121
|
+
*/
|
|
122
|
+
generators?: string[];
|
|
117
123
|
}
|
|
118
124
|
/** The flag table `parseGenArgs` parses. Exported so the help text can be gated against it. */
|
|
119
125
|
export declare const GEN_OPTIONS: {
|
|
@@ -139,6 +145,9 @@ export declare const GEN_OPTIONS: {
|
|
|
139
145
|
readonly limit: {
|
|
140
146
|
readonly type: "string";
|
|
141
147
|
};
|
|
148
|
+
readonly generators: {
|
|
149
|
+
readonly type: "string";
|
|
150
|
+
};
|
|
142
151
|
};
|
|
143
152
|
export declare function parseGenArgs(argv: string[]): GenFlags;
|
|
144
153
|
export interface ExportFlags {
|
|
@@ -187,6 +196,12 @@ export interface VerifyFlags {
|
|
|
187
196
|
allow: AllowToken[];
|
|
188
197
|
/** Skip the schema-drift gate even when --db is present. */
|
|
189
198
|
skipSchema: boolean;
|
|
199
|
+
/**
|
|
200
|
+
* The migration file layout the project uses, spelled as `meta migrate` spells it and
|
|
201
|
+
* resolved with the same precedence (flag > `.metaobjects/config.json` > default). Under
|
|
202
|
+
* `flyway` the schema-drift gate leaves Flyway's own history table out of the comparison.
|
|
203
|
+
*/
|
|
204
|
+
migrationFormat: MigrateFormat | undefined;
|
|
190
205
|
/**
|
|
191
206
|
* #225 — D1 binding name from wrangler.toml, spelled/documented the same way
|
|
192
207
|
* `meta migrate --d1 <binding>` does. Gated on `--dialect d1` (D1 has no URL
|
|
@@ -209,16 +224,9 @@ export interface VerifyFlags {
|
|
|
209
224
|
*/
|
|
210
225
|
forbidHandEdits: boolean;
|
|
211
226
|
/**
|
|
212
|
-
*
|
|
213
|
-
*
|
|
214
|
-
*
|
|
215
|
-
* A SEPARATE subverb rather than part of `--codegen`, because they check different
|
|
216
|
-
* trees under different ownership rules: `--codegen` regenerates `outDir`/`targets` and
|
|
217
|
-
* must respect the hand edits `meta gen` preserves, while the docs tree has no merge,
|
|
218
|
-
* no manifest, and lives in a directory the adopter chose (`./docs/generated` by
|
|
219
|
-
* default) that may hold hand-written files it does not own. Folding them together
|
|
220
|
-
* would have to pick one of those rules
|
|
221
|
-
* for both.
|
|
227
|
+
* `--docs`, removed in 1.1.0 (ADR-0034 Amendment 9): `--codegen` checks documentation with
|
|
228
|
+
* everything else the generator list declares. Still parsed, so the command can say where
|
|
229
|
+
* it went (exit 2) rather than "unknown flag".
|
|
222
230
|
*/
|
|
223
231
|
docs: boolean;
|
|
224
232
|
/**
|
|
@@ -256,6 +264,21 @@ export interface VerifyFlags {
|
|
|
256
264
|
* the half that CAN fail a build switched on. Same shape as --no-antipatterns.
|
|
257
265
|
*/
|
|
258
266
|
noRequirementLint: boolean;
|
|
267
|
+
/**
|
|
268
|
+
* The requirement gate's strict switch (ADR-0057): report a live functional
|
|
269
|
+
* requirement that nothing implements (`WARN_REQUIREMENT_NOTHING_IMPLEMENTS`) at
|
|
270
|
+
* severity `error`, so it fails the build. The code is unchanged and no other
|
|
271
|
+
* diagnostic moves. Off by default because a ledger authored ahead of its links is
|
|
272
|
+
* the normal incremental state.
|
|
273
|
+
*
|
|
274
|
+
* Named for what it requires, not `--strict`: `--lax` below is a different axis
|
|
275
|
+
* (ADR-0023 attribute strictness), and a `--strict` beside it would read as that
|
|
276
|
+
* flag's opposite rather than as a requirement-gate setting — the same reason
|
|
277
|
+
* `--replay-snapshot` above is a subverb and not a `--strict` modifier. It is not
|
|
278
|
+
* an explicit subverb either: the requirement gate runs on every `verify`, so this
|
|
279
|
+
* flag modifies a gate that is already selected.
|
|
280
|
+
*/
|
|
281
|
+
requireImplementers: boolean;
|
|
259
282
|
/**
|
|
260
283
|
* Suppress the advisory overlay AUTHORING lint (FR-023 §11.1 item 4) — the
|
|
261
284
|
* finding that an unflagged cross-file redeclaration works today only
|
|
@@ -280,6 +303,13 @@ export interface VerifyFlags {
|
|
|
280
303
|
* and can never fail the build.
|
|
281
304
|
*/
|
|
282
305
|
noDeprecationLint: boolean;
|
|
306
|
+
/**
|
|
307
|
+
* Suppress the advisory FIELD authoring lint — a reference identity whose
|
|
308
|
+
* `@fields` names a field the object lacks, and a field name declared twice in
|
|
309
|
+
* one children list. Advisory only, like its siblings: it has no gate half and
|
|
310
|
+
* can never fail the build.
|
|
311
|
+
*/
|
|
312
|
+
noFieldLint: boolean;
|
|
283
313
|
/**
|
|
284
314
|
* ADR-0023 strict-attr load opt-OUT (#96). `verify` is strict-by-default — an
|
|
285
315
|
* undeclared/typo'd own `@attr` fails verify (ERR_UNKNOWN_ATTR). `--lax`
|
|
@@ -322,6 +352,9 @@ export declare const VERIFY_OPTIONS: {
|
|
|
322
352
|
readonly type: "boolean";
|
|
323
353
|
readonly default: false;
|
|
324
354
|
};
|
|
355
|
+
readonly "migration-format": {
|
|
356
|
+
readonly type: "string";
|
|
357
|
+
};
|
|
325
358
|
readonly templates: {
|
|
326
359
|
readonly type: "boolean";
|
|
327
360
|
readonly default: false;
|
|
@@ -358,6 +391,10 @@ export declare const VERIFY_OPTIONS: {
|
|
|
358
391
|
readonly type: "boolean";
|
|
359
392
|
readonly default: false;
|
|
360
393
|
};
|
|
394
|
+
readonly "require-implementers": {
|
|
395
|
+
readonly type: "boolean";
|
|
396
|
+
readonly default: false;
|
|
397
|
+
};
|
|
361
398
|
readonly "no-overlay-lint": {
|
|
362
399
|
readonly type: "boolean";
|
|
363
400
|
readonly default: false;
|
|
@@ -370,6 +407,10 @@ export declare const VERIFY_OPTIONS: {
|
|
|
370
407
|
readonly type: "boolean";
|
|
371
408
|
readonly default: false;
|
|
372
409
|
};
|
|
410
|
+
readonly "no-field-lint": {
|
|
411
|
+
readonly type: "boolean";
|
|
412
|
+
readonly default: false;
|
|
413
|
+
};
|
|
373
414
|
readonly lax: {
|
|
374
415
|
readonly type: "boolean";
|
|
375
416
|
readonly default: false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../src/lib/args.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAOjE,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,gGAAgG;AAChG,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAYf,CAAC;AAEX,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,SAAS,CAoBvD;AAMD,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,qGAAqG;AACrG,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;CAMrB,CAAC;AAEX,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,cAAc,CAcjE;AAMD,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB;;0EAEsE;IACtE,QAAQ,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;IACxC;2BACuB;IACvB,IAAI,EAAE,OAAO,CAAC;IACd;;;;OAIG;IACH,KAAK,EAAE,OAAO,CAAC;IACf,mEAAmE;IACnE,cAAc,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../src/lib/args.ts"],"names":[],"mappings":"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"}
|