kalup 0.2.0 → 0.4.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.
Files changed (40) hide show
  1. package/README.md +5 -5
  2. package/dist/{commands-Bk1w1oup.mjs → commands-CHucC_PV.mjs} +3458 -1065
  3. package/dist/commands.d.mts +1 -1
  4. package/dist/commands.mjs +1 -1
  5. package/dist/{context-8pARDYRR.d.mts → context-B7bI9BjL.d.mts} +52 -0
  6. package/dist/{host-BoqS00po.mjs → host-D1HtgrVd.mjs} +1 -1
  7. package/dist/host.d.mts +1 -1
  8. package/dist/host.mjs +1 -1
  9. package/dist/index.mjs +1 -1
  10. package/dist/schemas/ir-1.schema.json +41 -1
  11. package/dist/schemas/plan-1.schema.json +18 -0
  12. package/docs/apply.md +6 -4
  13. package/docs/config.md +38 -9
  14. package/docs/dictionary.md +3 -3
  15. package/docs/errors/E_BLUEPRINT_SCHEMA.md +2 -2
  16. package/docs/errors/E_DEFINITION_FIELD.md +1 -1
  17. package/docs/errors/E_DIR_AMBIGUOUS.md +4 -4
  18. package/docs/errors/E_DUPLICATE_LABEL.md +24 -0
  19. package/docs/errors/E_HS_PREFIX.md +3 -3
  20. package/docs/errors/E_HTTP.md +1 -1
  21. package/docs/errors/E_MISSING_EXPORT.md +2 -2
  22. package/docs/errors/E_PIPELINE_FIELD.md +23 -0
  23. package/docs/errors/E_PIPELINE_ID.md +17 -0
  24. package/docs/errors/E_PIPELINE_STAGES.md +17 -0
  25. package/docs/errors/E_PULL_INVALID.md +2 -2
  26. package/docs/errors/E_TOMBSTONE_ADDRESS.md +3 -3
  27. package/docs/errors/E_UNSUPPORTED_FILE.md +3 -3
  28. package/docs/errors/E_WRITE_IN_READ_MODE.md +1 -1
  29. package/docs/errors/E_WRITE_NOT_ALLOWED.md +1 -1
  30. package/docs/errors/W_LEGACY_DIR.md +2 -2
  31. package/docs/errors/W_LIMIT_UNREADABLE.md +2 -2
  32. package/docs/errors/W_RATE_HEADERS.md +1 -1
  33. package/docs/errors/W_RATE_LIMIT.md +1 -1
  34. package/docs/errors/W_WRITE_SCOPE.md +17 -0
  35. package/docs/plan.md +22 -9
  36. package/docs/pull.md +10 -6
  37. package/docs/rm.md +6 -4
  38. package/docs/snapshot.md +2 -2
  39. package/docs/targets.md +3 -3
  40. package/package.json +3 -3
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Kalup: configuration as code for HubSpot. This is the CLI, bin `kalup`.
4
4
 
5
- Kalup keeps a HubSpot portal's properties, property groups and custom object schemas in TypeScript files in your repository. It reads a portal into those files, shows every change as a plan, and applies the plan you approve to any portal you name. Edits made in the HubSpot UI are held, not reverted. The tool parses the files and never executes them; your app imports the same files for its types through [`@kalup/core`](https://www.npmjs.com/package/@kalup/core).
5
+ Kalup keeps a HubSpot portal's properties, property groups, custom object schemas and pipelines in TypeScript files in your repository. It reads a portal into those files, shows every change as a plan, and applies the plan you approve to any portal you name. Edits made in the HubSpot UI are held, not reverted. The tool parses the files and never executes them; your app imports the same files for its types through [`@kalup/core`](https://www.npmjs.com/package/@kalup/core).
6
6
 
7
7
  ## Install
8
8
 
@@ -45,7 +45,7 @@ Commit `kalup.config.ts` and `hubspot/`. Keep `.kalup/`, plan files and `.env` o
45
45
  | `kalup snapshot` | Save a read of a target as a snapshot file. |
46
46
  | `kalup docs` | Write a Markdown data dictionary of the config or a snapshot. |
47
47
  | `kalup apply` | Apply a saved plan, or plan a target and apply it in one run after a person at a terminal confirms it. |
48
- | `kalup rm` | Take a property or group out of config and write its tombstone in removed.ts. |
48
+ | `kalup rm` | Take a resource out of config and write its tombstone in removed.ts. |
49
49
  | `kalup state rebuild` | Report what a target's portal holds against its state; --write replaces the state file. |
50
50
  | `kalup target rebind` | Point a target at a recreated test portal or sandbox. A terminal only. |
51
51
  | `kalup add` | Write a blueprint from a JSON file or https URL into the config files. Never touches a portal. |
@@ -53,15 +53,15 @@ Commit `kalup.config.ts` and `hubspot/`. Keep `.kalup/`, plan files and `.env` o
53
53
 
54
54
  `kalup <command> --help` lists each command's flags.
55
55
 
56
- ## What 0.2 covers
56
+ ## What it covers
57
57
 
58
- - Reads and writes properties and property groups on standard and custom objects. Custom object schemas are read and compared, not written.
58
+ - Reads and writes properties and property groups on standard and custom objects, and the pipelines and stages of deals, tickets and custom objects. Custom object schemas are read and compared, not written.
59
59
  - Every property definition field HubSpot lets you write, such as display hints, `hidden`, `displayOrder` and calculation formulas, checked against a live developer test account.
60
60
  - Takeover mode, `exclude`, `adopt: 'overwrite'` and `yesLimit` per target, lenient enums, blueprints and per-target overrides.
61
61
  - State local to your machine by default, or committed with `state: 'repo'`. Monorepos and git worktrees.
62
62
  - Every command takes `--json` and prints one `envelope/1` document with stable issue codes and exit codes. The JSON Schemas ship as `kalup/schemas/<file>`.
63
63
 
64
- The pull, plan, apply and drift workflow passed [live runs](https://github.com/scopiousdigital/kalup/blob/main/docs/hubspot.md#live-runs) on a HubSpot developer test account; other account types are not verified yet. Pipelines, custom object schema writes and association labels are next. Before 1.0, a minor release may change the config grammar or the JSON output, and its release notes say so.
64
+ The pull, plan, apply and drift workflow passed [live runs](https://github.com/scopiousdigital/kalup/blob/main/docs/hubspot.md#live-runs) on a HubSpot developer test account. Start on a test account or sandbox. Custom object schema writes and association labels are next. Before 1.0, a minor release may change the config grammar or the JSON output, and its release notes say so.
65
65
 
66
66
  ## Docs
67
67