@pipeline-builder/pipeline-core 4.1.14 → 4.1.16

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 (54) hide show
  1. package/lib/cdk.d.ts +1 -0
  2. package/lib/cdk.js +2 -1
  3. package/lib/config/app-config.d.ts +5 -8
  4. package/lib/config/app-config.js +36 -38
  5. package/lib/config/config-types.d.ts +9 -112
  6. package/lib/config/config-types.js +1 -1
  7. package/lib/config/handler-constants.d.ts +12 -3
  8. package/lib/config/handler-constants.js +9 -26
  9. package/lib/config/infrastructure-config.js +44 -43
  10. package/lib/config/server-config.d.ts +1 -1
  11. package/lib/config/server-config.js +33 -32
  12. package/lib/config/service-client.d.ts +3 -7
  13. package/lib/config/service-client.js +5 -11
  14. package/lib/core/artifact-manager.d.ts +0 -17
  15. package/lib/core/artifact-manager.js +1 -17
  16. package/lib/core/metadata-helpers.d.ts +16 -0
  17. package/lib/core/metadata-helpers.js +41 -1
  18. package/lib/core/pipeline-helpers.js +23 -58
  19. package/lib/core/plugin-contract.d.ts +126 -0
  20. package/lib/core/plugin-contract.js +217 -0
  21. package/lib/core/plugin-lookup-envelope.d.ts +14 -0
  22. package/lib/core/plugin-lookup-envelope.js +29 -0
  23. package/lib/core/step-manifest.d.ts +50 -0
  24. package/lib/core/step-manifest.js +47 -0
  25. package/lib/handlers/platform-credential.d.ts +47 -0
  26. package/lib/handlers/platform-credential.js +87 -0
  27. package/lib/handlers/plugin-lookup-handler.d.ts +1 -1
  28. package/lib/handlers/plugin-lookup-handler.js +48 -42
  29. package/lib/index.d.ts +8 -8
  30. package/lib/index.js +10 -9
  31. package/lib/pipeline/pipeline-builder.d.ts +7 -0
  32. package/lib/pipeline/pipeline-builder.js +25 -9
  33. package/lib/pipeline/pipeline-configuration.js +6 -5
  34. package/lib/pipeline/plugin-lookup.d.ts +0 -1
  35. package/lib/pipeline/plugin-lookup.js +55 -23
  36. package/lib/pipeline/plugin-spec.d.ts +41 -0
  37. package/lib/pipeline/plugin-spec.js +1 -1
  38. package/lib/pipeline/stage-builder.d.ts +11 -0
  39. package/lib/pipeline/stage-builder.js +31 -12
  40. package/lib/pipeline/step-manifest-recorder.d.ts +22 -0
  41. package/lib/pipeline/step-manifest-recorder.js +57 -0
  42. package/lib/pipeline/step-types.d.ts +16 -4
  43. package/lib/pipeline/step-types.js +1 -1
  44. package/lib/template/index.d.ts +4 -4
  45. package/lib/template/index.js +5 -5
  46. package/lib/template/plugin-resolver.js +5 -5
  47. package/lib/template/tokenizer.d.ts +4 -0
  48. package/lib/template/tokenizer.js +11 -7
  49. package/lib/testing/exports.json +72 -0
  50. package/package.json +36 -8
  51. package/lib/config/billing-config.d.ts +0 -27
  52. package/lib/config/billing-config.js +0 -534
  53. package/lib/config/entitlements.d.ts +0 -23
  54. package/lib/config/entitlements.js +0 -46
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "@stylistic/eslint-plugin": "^2",
12
12
  "@types/aws-lambda": "8.10.162",
13
13
  "@types/jsonwebtoken": "9.0.10",
14
- "@types/node": "26.1.2",
14
+ "@types/node": "^24",
15
15
  "@typescript-eslint/eslint-plugin": "^8",
16
16
  "@typescript-eslint/parser": "^8",
17
17
  "@typescript/native": "npm:typescript@^7.0.2",
@@ -33,8 +33,8 @@
33
33
  "dependencies": {
34
34
  "axios": "1.19.0",
35
35
  "jsonwebtoken": "9.0.3",
36
- "@pipeline-builder/api-core": "4.1.12",
37
- "@pipeline-builder/pipeline-data": "4.1.14"
36
+ "@pipeline-builder/api-core": "4.1.14",
37
+ "@pipeline-builder/pipeline-data": "4.1.16"
38
38
  },
39
39
  "keywords": [
40
40
  "ci-cd",
@@ -90,7 +90,14 @@
90
90
  "access": "public",
91
91
  "registry": "https://registry.npmjs.org/"
92
92
  },
93
- "version": "4.1.14",
93
+ "typesVersions": {
94
+ "*": {
95
+ "template": [
96
+ "lib/template/tokenizer.d.ts"
97
+ ]
98
+ }
99
+ },
100
+ "version": "4.1.16",
94
101
  "bugs": {
95
102
  "url": "https://github.com/mwashburn160/pipeline-builder/issues"
96
103
  },
@@ -155,12 +162,26 @@
155
162
  "<rootDir>/../../jest-env-guard.js"
156
163
  ],
157
164
  "maxWorkers": 1,
165
+ "collectCoverageFrom": [
166
+ "src/**/*.ts",
167
+ "!src/**/*.d.ts",
168
+ "!src/testing/**",
169
+ "!src/cdk.ts",
170
+ "!src/config/config-types.ts",
171
+ "!src/core/network-types.ts",
172
+ "!src/core/role-types.ts",
173
+ "!src/core/security-group-types.ts",
174
+ "!src/index.ts",
175
+ "!src/pipeline/plugin-spec.ts",
176
+ "!src/pipeline/source-types.ts",
177
+ "!src/pipeline/step-types.ts"
178
+ ],
158
179
  "coverageThreshold": {
159
180
  "global": {
160
- "statements": 94,
161
- "branches": 84,
162
- "functions": 90,
163
- "lines": 94
181
+ "statements": 95,
182
+ "branches": 86,
183
+ "functions": 92,
184
+ "lines": 95
164
185
  }
165
186
  }
166
187
  },
@@ -175,6 +196,10 @@
175
196
  "types": "./lib/cdk.d.ts",
176
197
  "default": "./lib/cdk.js"
177
198
  },
199
+ "./template": {
200
+ "types": "./lib/template/tokenizer.d.ts",
201
+ "default": "./lib/template/tokenizer.js"
202
+ },
178
203
  "./lib/*": "./lib/*",
179
204
  "./package.json": "./package.json"
180
205
  },
@@ -184,11 +209,14 @@
184
209
  "compile": "pnpm dlx projen compile",
185
210
  "default": "pnpm dlx projen default",
186
211
  "eslint": "pnpm dlx projen eslint",
212
+ "lint:fix": "pnpm dlx projen lint:fix",
187
213
  "package": "pnpm dlx projen package",
188
214
  "post-compile": "pnpm dlx projen post-compile",
189
215
  "pre-compile": "pnpm dlx projen pre-compile",
190
216
  "test": "pnpm dlx projen test",
217
+ "test:update": "pnpm dlx projen test:update",
191
218
  "test:watch": "pnpm dlx projen test:watch",
219
+ "typecheck:tests": "pnpm dlx projen typecheck:tests",
192
220
  "watch": "pnpm dlx projen watch",
193
221
  "projen": "pnpm dlx projen"
194
222
  }
@@ -1,27 +0,0 @@
1
- import type { BillingConfig, BundleConfig, ComboDiscountConfig } from './config-types.js';
2
- /**
3
- * Load billing plan configuration from environment variables.
4
- */
5
- export declare function loadBillingConfig(): BillingConfig;
6
- /**
7
- * Config-load guardrail for combos: every `bundleId` must resolve to an ACTIVE
8
- * bundle and every `minQuantities` key must be one of the combo's `bundleIds`.
9
- * A typo'd member or stray minQuantity key otherwise ships a permanently-inert
10
- * combo (missing bundle treated as unit price 0, or a min never satisfiable),
11
- * silently never applying. Throws so misconfig fails fast at boot.
12
- */
13
- export declare function assertCombosValid(combos: ComboDiscountConfig[], bundles: BundleConfig[]): void;
14
- /**
15
- * Config-load guardrail for the `requires` / `requiresFeatures` prerequisites. A
16
- * `requires` entry that doesn't resolve to an ACTIVE bundle — or that participates
17
- * in a cycle — silently makes the referencing bundle unpurchasable (the addon
18
- * route rejects with 400 forever because the prerequisite can never be
19
- * satisfied). Catch it at load with a clear error rather than shipping a dead SKU.
20
- *
21
- * - Every id in a bundle's `requires` MUST name an active bundle in the catalog.
22
- * - The `requires` graph MUST be acyclic (a → b → a can never be satisfied).
23
- * - Every `requiresFeatures` entry MUST be a real feature flag, attainable on
24
- * EVERY tier the bundle is sold to — either tier-included (`TIER_FEATURES`) or
25
- * granted by an active bundle offered on that same tier.
26
- */
27
- export declare function assertBundleRequiresValid(bundles: BundleConfig[]): void;