@intentius/chant-lexicon-docker 0.7.0 → 0.8.1

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.
Files changed (100) hide show
  1. package/dist/codegen/docs-cli.d.ts +6 -0
  2. package/dist/codegen/docs-cli.d.ts.map +1 -0
  3. package/dist/codegen/docs.d.ts +7 -0
  4. package/dist/codegen/docs.d.ts.map +1 -0
  5. package/dist/codegen/generate-cli.d.ts +6 -0
  6. package/dist/codegen/generate-cli.d.ts.map +1 -0
  7. package/dist/codegen/generate-compose.d.ts +12 -0
  8. package/dist/codegen/generate-compose.d.ts.map +1 -0
  9. package/dist/codegen/generate-dockerfile.d.ts +12 -0
  10. package/dist/codegen/generate-dockerfile.d.ts.map +1 -0
  11. package/dist/codegen/generate.d.ts +30 -0
  12. package/dist/codegen/generate.d.ts.map +1 -0
  13. package/dist/codegen/naming.d.ts +27 -0
  14. package/dist/codegen/naming.d.ts.map +1 -0
  15. package/dist/codegen/package.d.ts +10 -0
  16. package/dist/codegen/package.d.ts.map +1 -0
  17. package/dist/codegen/patches.d.ts +22 -0
  18. package/dist/codegen/patches.d.ts.map +1 -0
  19. package/dist/codegen/versions.d.ts +11 -0
  20. package/dist/codegen/versions.d.ts.map +1 -0
  21. package/dist/composites/index.d.ts +7 -0
  22. package/dist/composites/index.d.ts.map +1 -0
  23. package/dist/coverage.d.ts +15 -0
  24. package/dist/coverage.d.ts.map +1 -0
  25. package/dist/default-labels.d.ts +39 -0
  26. package/dist/default-labels.d.ts.map +1 -0
  27. package/dist/detect.d.ts +3 -0
  28. package/dist/detect.d.ts.map +1 -0
  29. package/dist/generated/index.d.ts +7 -0
  30. package/dist/generated/index.d.ts.map +1 -0
  31. package/dist/generated/runtime.d.ts +5 -0
  32. package/dist/generated/runtime.d.ts.map +1 -0
  33. package/dist/import/adapter.d.ts +29 -0
  34. package/dist/import/adapter.d.ts.map +1 -0
  35. package/dist/import/generator.d.ts +17 -0
  36. package/dist/import/generator.d.ts.map +1 -0
  37. package/dist/import/parser.d.ts +61 -0
  38. package/dist/import/parser.d.ts.map +1 -0
  39. package/dist/index.d.ts +14 -0
  40. package/dist/index.d.ts.map +1 -0
  41. package/dist/integrity.json +2 -2
  42. package/dist/interpolation.d.ts +51 -0
  43. package/dist/interpolation.d.ts.map +1 -0
  44. package/dist/lint/post-synth/apt-no-recommends.d.ts +9 -0
  45. package/dist/lint/post-synth/apt-no-recommends.d.ts.map +1 -0
  46. package/dist/lint/post-synth/docker-helpers.d.ts +32 -0
  47. package/dist/lint/post-synth/docker-helpers.d.ts.map +1 -0
  48. package/dist/lint/post-synth/index.d.ts +3 -0
  49. package/dist/lint/post-synth/index.d.ts.map +1 -0
  50. package/dist/lint/post-synth/no-latest-image.d.ts +8 -0
  51. package/dist/lint/post-synth/no-latest-image.d.ts.map +1 -0
  52. package/dist/lint/post-synth/no-root-user.d.ts +9 -0
  53. package/dist/lint/post-synth/no-root-user.d.ts.map +1 -0
  54. package/dist/lint/post-synth/prefer-copy.d.ts +9 -0
  55. package/dist/lint/post-synth/prefer-copy.d.ts.map +1 -0
  56. package/dist/lint/post-synth/ssh-port-exposed.d.ts +9 -0
  57. package/dist/lint/post-synth/ssh-port-exposed.d.ts.map +1 -0
  58. package/dist/lint/post-synth/unused-volume.d.ts +8 -0
  59. package/dist/lint/post-synth/unused-volume.d.ts.map +1 -0
  60. package/dist/lint/rules/data/deprecated-images.d.ts +13 -0
  61. package/dist/lint/rules/data/deprecated-images.d.ts.map +1 -0
  62. package/dist/lint/rules/data/known-base-images.d.ts +9 -0
  63. package/dist/lint/rules/data/known-base-images.d.ts.map +1 -0
  64. package/dist/lint/rules/index.d.ts +5 -0
  65. package/dist/lint/rules/index.d.ts.map +1 -0
  66. package/dist/lint/rules/no-latest-tag.d.ts +10 -0
  67. package/dist/lint/rules/no-latest-tag.d.ts.map +1 -0
  68. package/dist/list-artifacts.d.ts +25 -0
  69. package/dist/list-artifacts.d.ts.map +1 -0
  70. package/dist/lsp/completions.d.ts +6 -0
  71. package/dist/lsp/completions.d.ts.map +1 -0
  72. package/dist/lsp/hover.d.ts +6 -0
  73. package/dist/lsp/hover.d.ts.map +1 -0
  74. package/dist/manifest.json +1 -1
  75. package/dist/package-cli.d.ts +3 -0
  76. package/dist/package-cli.d.ts.map +1 -0
  77. package/dist/plugin.d.ts +9 -0
  78. package/dist/plugin.d.ts.map +1 -0
  79. package/dist/serializer.d.ts +13 -0
  80. package/dist/serializer.d.ts.map +1 -0
  81. package/dist/spec/fetch-compose.d.ts +13 -0
  82. package/dist/spec/fetch-compose.d.ts.map +1 -0
  83. package/dist/spec/fetch-engine.d.ts +9 -0
  84. package/dist/spec/fetch-engine.d.ts.map +1 -0
  85. package/dist/spec/parse-compose.d.ts +27 -0
  86. package/dist/spec/parse-compose.d.ts.map +1 -0
  87. package/dist/spec/parse-engine.d.ts +23 -0
  88. package/dist/spec/parse-engine.d.ts.map +1 -0
  89. package/dist/validate-cli.d.ts +3 -0
  90. package/dist/validate-cli.d.ts.map +1 -0
  91. package/dist/validate.d.ts +12 -0
  92. package/dist/validate.d.ts.map +1 -0
  93. package/dist/variables.d.ts +45 -0
  94. package/dist/variables.d.ts.map +1 -0
  95. package/package.json +24 -5
  96. package/src/detect.ts +7 -0
  97. package/src/import/adapter.ts +87 -0
  98. package/src/lint/post-synth/index.ts +17 -0
  99. package/src/plugin.ts +7 -13
  100. package/src/serializer.ts +1 -1
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env tsx
2
+ /**
3
+ * CLI entry for Docker lexicon docs generation.
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=docs-cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docs-cli.d.ts","sourceRoot":"","sources":["../../src/codegen/docs-cli.ts"],"names":[],"mappings":";AACA;;GAEG"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Docker lexicon docs generation.
3
+ */
4
+ export declare function generateDocs(opts?: {
5
+ verbose?: boolean;
6
+ }): Promise<void>;
7
+ //# sourceMappingURL=docs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../../src/codegen/docs.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,wBAAsB,YAAY,CAAC,IAAI,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAO9E"}
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env tsx
2
+ /**
3
+ * CLI entry point for Docker lexicon generation.
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=generate-cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-cli.d.ts","sourceRoot":"","sources":["../../src/codegen/generate-cli.ts"],"names":[],"mappings":";AACA;;GAEG"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Generate Compose entity types from the Compose Spec JSON Schema.
3
+ */
4
+ import { type ComposeParseResult } from "../spec/parse-compose.js";
5
+ export interface ComposeGenerateResult {
6
+ results: ComposeParseResult[];
7
+ }
8
+ export declare function generateComposePipeline(opts?: {
9
+ force?: boolean;
10
+ verbose?: boolean;
11
+ }): Promise<ComposeGenerateResult>;
12
+ //# sourceMappingURL=generate-compose.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-compose.d.ts","sourceRoot":"","sources":["../../src/codegen/generate-compose.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAoB,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAElF,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,kBAAkB,EAAE,CAAC;CAC/B;AAED,wBAAsB,uBAAuB,CAAC,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAS/H"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Generate Dockerfile entity types from the Docker Engine API OpenAPI spec.
3
+ */
4
+ import { type DockerfileParseResult } from "../spec/parse-engine.js";
5
+ export interface DockerfileGenerateResult {
6
+ result: DockerfileParseResult;
7
+ }
8
+ export declare function generateDockerfilePipeline(opts?: {
9
+ force?: boolean;
10
+ verbose?: boolean;
11
+ }): Promise<DockerfileGenerateResult>;
12
+ //# sourceMappingURL=generate-dockerfile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-dockerfile.d.ts","sourceRoot":"","sources":["../../src/codegen/generate-dockerfile.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAkB,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAElF,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,qBAAqB,CAAC;CAC/B;AAED,wBAAsB,0BAA0B,CAAC,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC,wBAAwB,CAAC,CASrI"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Docker lexicon generation pipeline.
3
+ *
4
+ * Orchestrates both Compose and Dockerfile type generation,
5
+ * then writes merged artifacts to src/generated/.
6
+ */
7
+ export interface DockerGenerateResult {
8
+ resources: number;
9
+ properties: number;
10
+ enums: number;
11
+ warnings: Array<{
12
+ file: string;
13
+ error: string;
14
+ }>;
15
+ lexiconJSON: string;
16
+ typesDTS: string;
17
+ indexTS: string;
18
+ }
19
+ /**
20
+ * Run the full Docker generation pipeline.
21
+ */
22
+ export declare function generate(opts?: {
23
+ verbose?: boolean;
24
+ force?: boolean;
25
+ }): Promise<DockerGenerateResult>;
26
+ /**
27
+ * Write generated artifacts to disk under baseDir/src/generated/.
28
+ */
29
+ export declare function writeGeneratedFiles(result: DockerGenerateResult, baseDir: string): void;
30
+ //# sourceMappingURL=generate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/codegen/generate.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAUH,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAwB/G;AA2FD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAWvF"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Naming strategy for Docker lexicon entities.
3
+ *
4
+ * Converts Docker/Compose entity type names to TypeScript class names.
5
+ */
6
+ /**
7
+ * Convert a Docker entity type name to a TypeScript class name.
8
+ * e.g. "Docker::Compose::Service" → "Service"
9
+ */
10
+ export declare function entityTypeToTsName(entityType: string): string;
11
+ /**
12
+ * Convert a TypeScript class name back to an entity type.
13
+ */
14
+ export declare function tsNameToEntityType(tsName: string): string | undefined;
15
+ /**
16
+ * All known Docker entity types, in declaration order.
17
+ */
18
+ export declare const ALL_ENTITY_TYPES: string[];
19
+ /**
20
+ * Check whether an entity type is a Compose resource.
21
+ */
22
+ export declare function isComposeType(entityType: string): boolean;
23
+ /**
24
+ * Check whether an entity type is the Dockerfile resource.
25
+ */
26
+ export declare function isDockerfileType(entityType: string): boolean;
27
+ //# sourceMappingURL=naming.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"naming.d.ts","sourceRoot":"","sources":["../../src/codegen/naming.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAiBH;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAErE;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,UAAsC,CAAC;AAEpE;;GAEG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE5D"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Docker lexicon packaging — delegates to core packagePipeline.
3
+ */
4
+ import { type PackageOptions, type PackageResult } from "@intentius/chant/codegen/package";
5
+ export type { PackageOptions, PackageResult };
6
+ /**
7
+ * Package the Docker lexicon into a distributable BundleSpec.
8
+ */
9
+ export declare function packageLexicon(opts?: PackageOptions): Promise<PackageResult>;
10
+ //# sourceMappingURL=package.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../../src/codegen/package.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,aAAa,EACnB,MAAM,kCAAkC,CAAC;AAG1C,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC;AAI9C;;GAEG;AACH,wBAAsB,cAAc,CAAC,IAAI,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC,CAqCtF"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Manual overrides for upstream Docker spec quirks.
3
+ *
4
+ * These patches adjust entity names, property types, or descriptions
5
+ * where the upstream spec is ambiguous, incorrect, or overly broad.
6
+ */
7
+ export interface EntityPatch {
8
+ /** Override entity description */
9
+ description?: string;
10
+ /** Override specific property types */
11
+ propertyOverrides?: Record<string, {
12
+ type?: string;
13
+ description?: string;
14
+ }>;
15
+ /** Properties to exclude from type generation */
16
+ excludeProperties?: string[];
17
+ }
18
+ /**
19
+ * Patches keyed by entity typeName.
20
+ */
21
+ export declare const ENTITY_PATCHES: Record<string, EntityPatch>;
22
+ //# sourceMappingURL=patches.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patches.d.ts","sourceRoot":"","sources":["../../src/codegen/patches.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,WAAW;IAC1B,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uCAAuC;IACvC,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5E,iDAAiD;IACjD,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAsBtD,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Pinned URLs and version tags for upstream Docker specs.
3
+ */
4
+ /** Compose Spec JSON Schema — master branch */
5
+ export declare const COMPOSE_SPEC_URL = "https://raw.githubusercontent.com/compose-spec/compose-spec/master/schema/compose-spec.json";
6
+ /** Docker Engine API OpenAPI spec (v1.45) */
7
+ export declare const ENGINE_API_URL = "https://raw.githubusercontent.com/moby/moby/v27.3.1/api/swagger.yaml";
8
+ /** Cache filenames under ~/.chant/ */
9
+ export declare const COMPOSE_SPEC_CACHE = "docker-compose-spec.json";
10
+ export declare const ENGINE_API_CACHE = "docker-engine-api.yaml";
11
+ //# sourceMappingURL=versions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"versions.d.ts","sourceRoot":"","sources":["../../src/codegen/versions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,+CAA+C;AAC/C,eAAO,MAAM,gBAAgB,gGACkE,CAAC;AAEhG,6CAA6C;AAC7C,eAAO,MAAM,cAAc,yEAC6C,CAAC;AAEzE,sCAAsC;AACtC,eAAO,MAAM,kBAAkB,6BAA6B,CAAC;AAC7D,eAAO,MAAM,gBAAgB,2BAA2B,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Docker lexicon composites.
3
+ *
4
+ * Composites are factory functions that return pre-configured
5
+ * multi-resource bundles. Docker composites will be added here.
6
+ */
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composites/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Coverage analysis for Docker lexicon.
3
+ */
4
+ import { computeCoverage, overallPct, formatSummary, formatVerbose, checkThresholds, type CoverageReport, type CoverageThresholds } from "@intentius/chant/codegen/coverage";
5
+ export type { CoverageReport, CoverageThresholds };
6
+ export { computeCoverage, overallPct, formatSummary, formatVerbose, checkThresholds };
7
+ /**
8
+ * Run coverage analysis for the Docker lexicon.
9
+ */
10
+ export declare function analyzeDockerCoverage(opts?: {
11
+ basePath?: string;
12
+ verbose?: boolean;
13
+ minOverall?: number;
14
+ }): Promise<CoverageReport>;
15
+ //# sourceMappingURL=coverage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coverage.d.ts","sourceRoot":"","sources":["../src/coverage.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,EACL,eAAe,EACf,UAAU,EACV,aAAa,EACb,aAAa,EACb,eAAe,EACf,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACxB,MAAM,mCAAmC,CAAC;AAE3C,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC;AAEtF;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,CAAC,EAAE;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,OAAO,CAAC,cAAc,CAAC,CA0B1B"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Default labels for Docker Compose services.
3
+ *
4
+ * Follows the K8s lexicon pattern for defaultLabels/defaultAnnotations.
5
+ * The serializer merges these into every Compose service's labels map.
6
+ */
7
+ import { type Declarable } from "@intentius/chant/declarable";
8
+ export declare const DEFAULT_LABELS_MARKER: unique symbol;
9
+ export declare const DEFAULT_ANNOTATIONS_MARKER: unique symbol;
10
+ export interface DefaultLabels extends Declarable {
11
+ readonly [DEFAULT_LABELS_MARKER]: true;
12
+ readonly props: {
13
+ labels: Record<string, string>;
14
+ };
15
+ }
16
+ export interface DefaultAnnotations extends Declarable {
17
+ readonly [DEFAULT_ANNOTATIONS_MARKER]: true;
18
+ readonly props: {
19
+ annotations: Record<string, string>;
20
+ };
21
+ }
22
+ export declare function isDefaultLabels(value: unknown): value is DefaultLabels;
23
+ export declare function isDefaultAnnotations(value: unknown): value is DefaultAnnotations;
24
+ /**
25
+ * Create a DefaultLabels entity that the serializer will merge into all services.
26
+ *
27
+ * @example
28
+ * export const labels = defaultLabels({
29
+ * "com.example.team": "platform",
30
+ * "com.example.managed-by": "chant",
31
+ * });
32
+ */
33
+ export declare function defaultLabels(labels: Record<string, string>): DefaultLabels;
34
+ /**
35
+ * Create a DefaultAnnotations entity.
36
+ * (Not used by Compose directly, but useful for Dockerfile LABEL instructions.)
37
+ */
38
+ export declare function defaultAnnotations(annotations: Record<string, string>): DefaultAnnotations;
39
+ //# sourceMappingURL=default-labels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-labels.d.ts","sourceRoot":"","sources":["../src/default-labels.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAqB,KAAK,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAEjF,eAAO,MAAM,qBAAqB,eAAqC,CAAC;AACxE,eAAO,MAAM,0BAA0B,eAA0C,CAAC;AAElF,MAAM,WAAW,aAAc,SAAQ,UAAU;IAC/C,QAAQ,CAAC,CAAC,qBAAqB,CAAC,EAAE,IAAI,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;CACpD;AAED,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,QAAQ,CAAC,CAAC,0BAA0B,CAAC,EAAE,IAAI,CAAC;IAC5C,QAAQ,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;CACzD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAMtE;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,kBAAkB,CAMhF;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,aAAa,CAS3E;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,kBAAkB,CAS1F"}
@@ -0,0 +1,3 @@
1
+ /** Edge-safe template detection for docker (Compose) — see #426. */
2
+ export declare function detectTemplate(data: unknown): boolean;
3
+ //# sourceMappingURL=detect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../src/detect.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAKrD"}
@@ -0,0 +1,7 @@
1
+ export declare const Service: new (props: Record<string, unknown>, attributes?: Record<string, unknown>) => import("packages/core/src/declarable").Declarable & Record<string, string>;
2
+ export declare const Volume: new (props: Record<string, unknown>, attributes?: Record<string, unknown>) => import("packages/core/src/declarable").Declarable & Record<string, string>;
3
+ export declare const Network: new (props: Record<string, unknown>, attributes?: Record<string, unknown>) => import("packages/core/src/declarable").Declarable & Record<string, string>;
4
+ export declare const DockerConfig: new (props: Record<string, unknown>, attributes?: Record<string, unknown>) => import("packages/core/src/declarable").Declarable & Record<string, string>;
5
+ export declare const DockerSecret: new (props: Record<string, unknown>, attributes?: Record<string, unknown>) => import("packages/core/src/declarable").Declarable & Record<string, string>;
6
+ export declare const Dockerfile: new (props: Record<string, unknown>, attributes?: Record<string, unknown>) => import("packages/core/src/declarable").Declarable & Record<string, string>;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generated/index.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,OAAO,0JAA2D,CAAC;AAChF,eAAO,MAAM,MAAM,0JAA0D,CAAC;AAC9E,eAAO,MAAM,OAAO,0JAA2D,CAAC;AAChF,eAAO,MAAM,YAAY,0JAA0D,CAAC;AACpF,eAAO,MAAM,YAAY,0JAA0D,CAAC;AAEpF,eAAO,MAAM,UAAU,0JAAqD,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Runtime factory constructors — re-exported from core.
3
+ */
4
+ export { createResource, createProperty } from "@intentius/chant/runtime";
5
+ //# sourceMappingURL=runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/generated/runtime.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Adapters bridging the docker-specific DockerParser/DockerGenerator
3
+ * (which speak DockerIR / ParseResult / GenerateResult) to the core
4
+ * TemplateParser / TypeScriptGenerator interfaces consumed by
5
+ * `chant import` (packages/core/src/cli/commands/import.ts).
6
+ *
7
+ * The core import pipeline parses content into a TemplateIR (a flat list of
8
+ * ResourceIR), optionally organizes resources into category files, then asks
9
+ * the generator to emit GeneratedFile[]. We map each DockerIR to a ResourceIR
10
+ * keyed by its `kind` (service/volume/network/config/secret/dockerfile) and
11
+ * reverse the mapping in the generator so DockerGenerator can do the real work.
12
+ */
13
+ import type { TemplateIR, TemplateParser } from "@intentius/chant/import/parser";
14
+ import type { GeneratedFile, TypeScriptGenerator } from "@intentius/chant/import/generator";
15
+ /**
16
+ * TemplateParser adapter — wraps DockerParser.parse and maps its DockerIR
17
+ * entities to a TemplateIR.
18
+ */
19
+ export declare class DockerTemplateParser implements TemplateParser {
20
+ parse(content: string): TemplateIR;
21
+ }
22
+ /**
23
+ * TypeScriptGenerator adapter — converts a TemplateIR back into DockerIR[]
24
+ * and delegates to DockerGenerator, returning a single generated file.
25
+ */
26
+ export declare class DockerTemplateGenerator implements TypeScriptGenerator {
27
+ generate(ir: TemplateIR): GeneratedFile[];
28
+ }
29
+ //# sourceMappingURL=adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/import/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAc,MAAM,gCAAgC,CAAC;AAC7F,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAgD5F;;;GAGG;AACH,qBAAa,oBAAqB,YAAW,cAAc;IACzD,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU;CAOnC;AAED;;;GAGG;AACH,qBAAa,uBAAwB,YAAW,mBAAmB;IACjE,QAAQ,CAAC,EAAE,EAAE,UAAU,GAAG,aAAa,EAAE;CAK1C"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Docker IR → TypeScript source generator.
3
+ *
4
+ * Converts parsed IR to valid chant TypeScript source code.
5
+ */
6
+ import type { DockerIR } from "./parser.js";
7
+ export interface GenerateResult {
8
+ source: string;
9
+ warnings: string[];
10
+ }
11
+ /**
12
+ * Generator for Docker entities — IR → TypeScript chant source.
13
+ */
14
+ export declare class DockerGenerator {
15
+ generate(entities: DockerIR[]): GenerateResult;
16
+ }
17
+ //# sourceMappingURL=generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../src/import/generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAoE,MAAM,UAAU,CAAC;AAE3G,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,eAAe;IAC1B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,cAAc;CAuC/C"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Docker Compose + Dockerfile parser — converts existing YAML/Dockerfiles
3
+ * to an intermediate representation (IR) for TypeScript code generation.
4
+ */
5
+ export interface ServiceIR {
6
+ kind: "service";
7
+ name: string;
8
+ props: Record<string, unknown>;
9
+ }
10
+ export interface VolumeIR {
11
+ kind: "volume";
12
+ name: string;
13
+ props: Record<string, unknown>;
14
+ }
15
+ export interface NetworkIR {
16
+ kind: "network";
17
+ name: string;
18
+ props: Record<string, unknown>;
19
+ }
20
+ export interface ConfigIR {
21
+ kind: "config";
22
+ name: string;
23
+ props: Record<string, unknown>;
24
+ }
25
+ export interface SecretIR {
26
+ kind: "secret";
27
+ name: string;
28
+ props: Record<string, unknown>;
29
+ }
30
+ export interface DockerfileStage {
31
+ from: string;
32
+ as?: string;
33
+ instructions: Array<{
34
+ instruction: string;
35
+ value: string;
36
+ }>;
37
+ }
38
+ export interface DockerfileIR {
39
+ kind: "dockerfile";
40
+ name: string;
41
+ stages: DockerfileStage[];
42
+ }
43
+ export type DockerIR = ServiceIR | VolumeIR | NetworkIR | ConfigIR | SecretIR | DockerfileIR;
44
+ export interface ParseResult {
45
+ entities: DockerIR[];
46
+ warnings: string[];
47
+ }
48
+ /**
49
+ * Parser for docker-compose.yml files.
50
+ * Converts YAML to an IR consumable by the TypeScript generator.
51
+ */
52
+ export declare class DockerParser {
53
+ parse(content: string): ParseResult;
54
+ }
55
+ /**
56
+ * Parser for Dockerfile content.
57
+ */
58
+ export declare class DockerfileParser {
59
+ parse(name: string, content: string): DockerfileIR;
60
+ }
61
+ //# sourceMappingURL=parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/import/parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,KAAK,CAAC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC7D;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAED,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,YAAY,CAAC;AAE7F,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,QAAQ,EAAE,CAAC;IACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AA0BD;;;GAGG;AACH,qBAAa,YAAY;IACvB,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW;CAqEpC;AAED;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,YAAY;CA6BnD"}
@@ -0,0 +1,14 @@
1
+ export { dockerSerializer } from "./serializer.js";
2
+ export { dockerPlugin } from "./plugin.js";
3
+ export { env } from "./interpolation.js";
4
+ export type { EnvOptions, EnvIntrinsic } from "./interpolation.js";
5
+ export { DOCKER_VARS, COMPOSE_VARS } from "./variables.js";
6
+ export type { DockerVar, ComposeVar } from "./variables.js";
7
+ export { defaultLabels, defaultAnnotations, isDefaultLabels, isDefaultAnnotations } from "./default-labels.js";
8
+ export { DEFAULT_LABELS_MARKER, DEFAULT_ANNOTATIONS_MARKER } from "./default-labels.js";
9
+ export type { DefaultLabels, DefaultAnnotations } from "./default-labels.js";
10
+ export * from "./generated/index.js";
11
+ export { generate, writeGeneratedFiles } from "./codegen/generate.js";
12
+ export { packageLexicon } from "./codegen/package.js";
13
+ export type { PackageOptions, PackageResult } from "./codegen/package.js";
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGhE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACxD,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzD,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC5G,OAAO,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AACrF,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAG1E,cAAc,mBAAmB,CAAC;AAMlC,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "algorithm": "sha256",
3
3
  "artifacts": {
4
- "manifest.json": "0e7ec357722dc7efcbb87d8fc73f79982552edaeb670c323e353520c4f708650",
4
+ "manifest.json": "c8d38440c8a60dd68d6e35da3004a92569521d2a636f4a9a93342b9d2fa3bcad",
5
5
  "meta.json": "ae27dc809e705d37a645ee83b9789c50051282f7891d21d6b9e6ce8d111624ff",
6
6
  "types/index.d.ts": "758f989ff86af54284d7f841a2db2259038d51ce1f3ed839a5d8e83fa20d95b8",
7
7
  "rules/no-latest-tag.ts": "efd060453d8ca3d5b85c3972906c6650b6f63eb5f67cb6cdb0f16a41cad91228",
@@ -15,5 +15,5 @@
15
15
  "skills/chant-docker.md": "3ff0708e3c76e245f202948949c768464563af2b60cc9aa2ca52f494ef8357f1",
16
16
  "skills/chant-docker-patterns.md": "ad1b0196d8150b2df579a699ff107f604340c799c04f3460ebf65003e287b12a"
17
17
  },
18
- "composite": "f4e999268c69c72c7bc6c888f577ec677a510d0ccb7809b1bb59dcf871321d52"
18
+ "composite": "6f92741bfbbb86ac2b4157183ca69820ace5c4e73b301d2d5fddc63d5cbb3ce0"
19
19
  }
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Docker Compose variable interpolation intrinsics.
3
+ *
4
+ * Docker Compose supports:
5
+ * ${VAR} — required variable (fails if unset)
6
+ * ${VAR:-default} — use default if VAR is unset or empty
7
+ * ${VAR:?error} — fail with error message if VAR is unset or empty
8
+ * ${VAR:+value} — use value if VAR is set
9
+ *
10
+ * @example
11
+ * import { env } from "@intentius/chant-lexicon-docker";
12
+ *
13
+ * export const api = new Service({
14
+ * image: env("APP_IMAGE", { default: "myapp:latest" }),
15
+ * environment: {
16
+ * DB_URL: env("DB_URL", { required: true }),
17
+ * },
18
+ * });
19
+ *
20
+ * // Serializes to:
21
+ * // services:
22
+ * // api:
23
+ * // image: ${APP_IMAGE:-myapp:latest}
24
+ * // environment:
25
+ * // DB_URL: ${DB_URL:?DB_URL is required}
26
+ */
27
+ import { INTRINSIC_MARKER } from "@intentius/chant/intrinsic";
28
+ export interface EnvOptions {
29
+ /** Default value if VAR is unset or empty: ${VAR:-default} */
30
+ default?: string;
31
+ /** If true and no default, emit ${VAR:?VAR is required}: fail on missing */
32
+ required?: boolean;
33
+ /** Error message for required variables: ${VAR:?errorMessage} */
34
+ errorMessage?: string;
35
+ /** Alternate value when VAR is set: ${VAR:+value} */
36
+ ifSet?: string;
37
+ }
38
+ export interface EnvIntrinsic {
39
+ readonly [INTRINSIC_MARKER]: true;
40
+ /** Emit the Docker Compose interpolation string */
41
+ toJSON(): string;
42
+ toString(): string;
43
+ }
44
+ /**
45
+ * Create a Docker Compose variable interpolation intrinsic.
46
+ *
47
+ * @param name - Environment variable name
48
+ * @param opts - Interpolation options
49
+ */
50
+ export declare function env(name: string, opts?: EnvOptions): EnvIntrinsic;
51
+ //# sourceMappingURL=interpolation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interpolation.d.ts","sourceRoot":"","sources":["../src/interpolation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D,MAAM,WAAW,UAAU;IACzB,8DAA8D;IAC9D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC;IAClC,mDAAmD;IACnD,MAAM,IAAI,MAAM,CAAC;IACjB,QAAQ,IAAI,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,UAAe,GAAG,YAAY,CAsBrE"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * DKRD010: apt-get install without --no-install-recommends
3
+ *
4
+ * Detects RUN instructions with apt-get install missing
5
+ * --no-install-recommends, which leads to bloated images.
6
+ */
7
+ import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
8
+ export declare const dkrd010: PostSynthCheck;
9
+ //# sourceMappingURL=apt-no-recommends.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apt-no-recommends.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/apt-no-recommends.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,OAAO,EAAE,cAgCrB,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Shared YAML traversal utilities for Docker post-synth checks.
3
+ */
4
+ export { getPrimaryOutput } from "@intentius/chant/lint/post-synth";
5
+ export interface ParsedService {
6
+ name: string;
7
+ image?: string;
8
+ ports?: string[];
9
+ volumes?: string[];
10
+ build?: {
11
+ dockerfile?: string;
12
+ context?: string;
13
+ };
14
+ depends_on?: string[];
15
+ }
16
+ /**
17
+ * Extract services section from serialized docker-compose.yml.
18
+ */
19
+ export declare function extractServices(yaml: string): Map<string, ParsedService>;
20
+ /**
21
+ * Extract named volumes from the top-level volumes: section.
22
+ */
23
+ export declare function extractNamedVolumes(yaml: string): Set<string>;
24
+ /**
25
+ * Check if an image tag represents :latest or is untagged.
26
+ */
27
+ export declare function isLatestOrUntagged(image: string): boolean;
28
+ /**
29
+ * Get Dockerfile content from SerializerResult files map.
30
+ */
31
+ export declare function extractDockerfiles(output: unknown): Map<string, string>;
32
+ //# sourceMappingURL=docker-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docker-helpers.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/docker-helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClD,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CA8CxE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAgB7D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAMzD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAYvE"}
@@ -0,0 +1,3 @@
1
+ import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
2
+ export declare const postSynthChecks: PostSynthCheck[];
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAQvE,eAAO,MAAM,eAAe,EAAE,cAAc,EAO3C,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * DKRD001: No Latest Image Tag
3
+ *
4
+ * Detects services using :latest or untagged images in docker-compose.yml.
5
+ */
6
+ import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
7
+ export declare const dkrd001: PostSynthCheck;
8
+ //# sourceMappingURL=no-latest-image.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-latest-image.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/no-latest-image.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,OAAO,EAAE,cA0BrB,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * DKRD012: No Root User
3
+ *
4
+ * Warns when a Dockerfile has no USER instruction,
5
+ * meaning the container runs as root by default.
6
+ */
7
+ import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
8
+ export declare const dkrd012: PostSynthCheck;
9
+ //# sourceMappingURL=no-root-user.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-root-user.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/no-root-user.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,OAAO,EAAE,cAyBrB,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * DKRD011: Prefer COPY over ADD
3
+ *
4
+ * ADD has surprising behavior (auto-extracts archives, fetches URLs).
5
+ * Use COPY when you just need to copy local files.
6
+ */
7
+ import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
8
+ export declare const dkrd011: PostSynthCheck;
9
+ //# sourceMappingURL=prefer-copy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prefer-copy.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/prefer-copy.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAW9G,eAAO,MAAM,OAAO,EAAE,cAkCrB,CAAC"}