declastruct 1.1.4 → 1.1.5

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.
@@ -1,9 +1,5 @@
1
1
  import { DomainEntity } from 'domain-objects';
2
2
  import { DeclastructChange } from '../../domain.objects/DeclastructChange';
3
- export declare const withHelpfulError: <TLogic extends (...args: any[]) => any>(logic: TLogic, options: {
4
- message: string;
5
- metadata: Record<string, any>;
6
- }) => (...args: Parameters<TLogic>) => ReturnType<TLogic>;
7
3
  /**
8
4
  * .what = computes a single change by comparing desired vs remote state
9
5
  * .why = determines the action needed to achieve desired state for one resource
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.computeChange = exports.withHelpfulError = void 0;
3
+ exports.computeChange = void 0;
4
4
  const domain_objects_1 = require("domain-objects");
5
5
  const helpful_errors_1 = require("helpful-errors");
6
6
  const jest_diff_1 = require("jest-diff");
@@ -35,23 +35,6 @@ const computeDiff = ({ from, into, }) => {
35
35
  });
36
36
  return difference;
37
37
  };
38
- // todo: lift this into `helpful-errors`
39
- const withHelpfulError = (logic, options) => {
40
- return (...args) => {
41
- try {
42
- return logic(...args);
43
- }
44
- catch (error) {
45
- if (!(error instanceof Error))
46
- throw error;
47
- throw new helpful_errors_1.HelpfulError(options.message, {
48
- ...options.metadata,
49
- cause: error,
50
- });
51
- }
52
- };
53
- };
54
- exports.withHelpfulError = withHelpfulError;
55
38
  /**
56
39
  * .what = computes a single change by comparing desired vs remote state
57
40
  * .why = determines the action needed to achieve desired state for one resource
@@ -82,9 +65,15 @@ const computeChange = ({ desired, remote, }) => {
82
65
  return new DeclastructChange_1.DeclastructChange({
83
66
  forResource: {
84
67
  class: resourceForChange.constructor.name,
85
- slug: (0, exports.withHelpfulError)(() => (0, domain_objects_1.getUniqueIdentifierSlug)(resourceForChange), {
68
+ slug: helpful_errors_1.UnexpectedCodePathError.wrap(() => (0, domain_objects_1.getUniqueIdentifierSlug)(resourceForChange), {
86
69
  message: 'failed to getUniqueIdentifierSlug',
87
- metadata: { input: { desired, remote } },
70
+ metadata: {
71
+ input: { desired, remote },
72
+ ctors: {
73
+ desired: desired?.constructor.name,
74
+ remote: remote?.constructor.name,
75
+ },
76
+ },
88
77
  })(),
89
78
  },
90
79
  action,
@@ -1 +1 @@
1
- {"version":3,"file":"computeChange.js","sourceRoot":"","sources":["../../../src/domain.operations/plan/computeChange.ts"],"names":[],"mappings":";;;AAAA,mDAAuE;AACvE,mDAA8C;AAC9C,yCAAiC;AAEjC,8EAGgD;AAEhD;;;;GAIG;AACH,MAAM,sBAAsB,GAAG,CAC7B,MAAyB,EACzB,OAA0B,EACjB,EAAE;IACX,6CAA6C;IAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAE5C,OAAO,UAAU,KAAK,WAAW,CAAC;AACpC,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,GAAG,CAAC,EACnB,IAAI,EACJ,IAAI,GAIL,EAAiB,EAAE;IAClB,2BAA2B;IAC3B,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAEhD,6DAA6D;IAC7D,MAAM,SAAS,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C,MAAM,SAAS,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAE5C,+BAA+B;IAC/B,MAAM,UAAU,GAAG,IAAA,gBAAI,EAAC,SAAS,EAAE,SAAS,EAAE;QAC5C,WAAW,EAAE,QAAQ;QACrB,WAAW,EAAE,SAAS;KACvB,CAAC,CAAC;IAEH,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,wCAAwC;AACjC,MAAM,gBAAgB,GAAG,CAC9B,KAAa,EACb,OAGC,EACD,EAAE;IACF,OAAO,CAAC,GAAG,IAA8B,EAA4B,EAAE;QACrE,IAAI,CAAC;YACH,OAAO,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACxB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC;gBAAE,MAAM,KAAK,CAAC;YAC3C,MAAM,IAAI,6BAAY,CAAC,OAAO,CAAC,OAAO,EAAE;gBACtC,GAAG,OAAO,CAAC,QAAQ;gBACnB,KAAK,EAAE,KAAK;aACb,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;AACJ,CAAC,CAAC;AAlBW,QAAA,gBAAgB,oBAkB3B;AAEF;;;;GAIG;AACI,MAAM,aAAa,GAAG,CAAC,EAC5B,OAAO,EACP,MAAM,GAIP,EAAqB,EAAE;IACtB,6CAA6C;IAC7C,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE;QACnB,kCAAkC;QAClC,IAAI,CAAC,MAAM;YAAE,OAAO,2CAAuB,CAAC,MAAM,CAAC;QAEnD,wCAAwC;QACxC,IAAI,CAAC,OAAO;YAAE,OAAO,2CAAuB,CAAC,OAAO,CAAC;QAErD,oBAAoB;QACpB,IAAI,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC;YACzC,OAAO,2CAAuB,CAAC,IAAI,CAAC;QAEtC,qCAAqC;QACrC,OAAO,2CAAuB,CAAC,MAAM,CAAC;IACxC,CAAC,CAAC,EAAE,CAAC;IAEL,iCAAiC;IACjC,MAAM,UAAU,GACd,MAAM,KAAK,2CAAuB,CAAC,IAAI;QACrC,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAEnD,sCAAsC;IACtC,MAAM,iBAAiB,GAAG,OAAO,IAAI,MAAO,CAAC;IAE7C,gBAAgB;IAChB,OAAO,IAAI,qCAAiB,CAAC;QAC3B,WAAW,EAAE;YACX,KAAK,EAAE,iBAAiB,CAAC,WAAW,CAAC,IAAI;YACzC,IAAI,EAAE,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,IAAA,wCAAuB,EAAC,iBAAiB,CAAC,EAAE;gBACvE,OAAO,EAAE,mCAAmC;gBAC5C,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;aACzC,CAAC,EAAE;SACL;QACD,MAAM;QACN,KAAK,EAAE;YACL,OAAO;YACP,MAAM;YACN,UAAU;SACX;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAhDW,QAAA,aAAa,iBAgDxB"}
1
+ {"version":3,"file":"computeChange.js","sourceRoot":"","sources":["../../../src/domain.operations/plan/computeChange.ts"],"names":[],"mappings":";;;AAAA,mDAAuE;AACvE,mDAAyD;AACzD,yCAAiC;AAEjC,8EAGgD;AAEhD;;;;GAIG;AACH,MAAM,sBAAsB,GAAG,CAC7B,MAAyB,EACzB,OAA0B,EACjB,EAAE;IACX,6CAA6C;IAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAE5C,OAAO,UAAU,KAAK,WAAW,CAAC;AACpC,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,GAAG,CAAC,EACnB,IAAI,EACJ,IAAI,GAIL,EAAiB,EAAE;IAClB,2BAA2B;IAC3B,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAEhD,6DAA6D;IAC7D,MAAM,SAAS,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C,MAAM,SAAS,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAE5C,+BAA+B;IAC/B,MAAM,UAAU,GAAG,IAAA,gBAAI,EAAC,SAAS,EAAE,SAAS,EAAE;QAC5C,WAAW,EAAE,QAAQ;QACrB,WAAW,EAAE,SAAS;KACvB,CAAC,CAAC;IAEH,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF;;;;GAIG;AACI,MAAM,aAAa,GAAG,CAAC,EAC5B,OAAO,EACP,MAAM,GAIP,EAAqB,EAAE;IACtB,6CAA6C;IAC7C,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE;QACnB,kCAAkC;QAClC,IAAI,CAAC,MAAM;YAAE,OAAO,2CAAuB,CAAC,MAAM,CAAC;QAEnD,wCAAwC;QACxC,IAAI,CAAC,OAAO;YAAE,OAAO,2CAAuB,CAAC,OAAO,CAAC;QAErD,oBAAoB;QACpB,IAAI,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC;YACzC,OAAO,2CAAuB,CAAC,IAAI,CAAC;QAEtC,qCAAqC;QACrC,OAAO,2CAAuB,CAAC,MAAM,CAAC;IACxC,CAAC,CAAC,EAAE,CAAC;IAEL,iCAAiC;IACjC,MAAM,UAAU,GACd,MAAM,KAAK,2CAAuB,CAAC,IAAI;QACrC,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAEnD,sCAAsC;IACtC,MAAM,iBAAiB,GAAG,OAAO,IAAI,MAAO,CAAC;IAE7C,gBAAgB;IAChB,OAAO,IAAI,qCAAiB,CAAC;QAC3B,WAAW,EAAE;YACX,KAAK,EAAE,iBAAiB,CAAC,WAAW,CAAC,IAAI;YACzC,IAAI,EAAE,wCAAuB,CAAC,IAAI,CAChC,GAAG,EAAE,CAAC,IAAA,wCAAuB,EAAC,iBAAiB,CAAC,EAChD;gBACE,OAAO,EAAE,mCAAmC;gBAC5C,QAAQ,EAAE;oBACR,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;oBAC1B,KAAK,EAAE;wBACL,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,IAAI;wBAClC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI;qBACjC;iBACF;aACF,CACF,EAAE;SACJ;QACD,MAAM;QACN,KAAK,EAAE;YACL,OAAO;YACP,MAAM;YACN,UAAU;SACX;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAzDW,QAAA,aAAa,iBAyDxB"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "declastruct",
3
3
  "author": "ehmpathy",
4
4
  "description": "Add declarative control to any resource constructs. Declare, plan, and apply within an observable pit-of-success.",
5
- "version": "1.1.4",
5
+ "version": "1.1.5",
6
6
  "repository": "ehmpathy/declastruct",
7
7
  "homepage": "https://github.com/ehmpathy/declastruct",
8
8
  "keywords": [
@@ -56,13 +56,15 @@
56
56
  "dependencies": {
57
57
  "bottleneck": "2.19.5",
58
58
  "commander": "14.0.2",
59
- "domain-objects": "0.28.1",
60
- "helpful-errors": "1.4.0",
59
+ "helpful-errors": "1.5.3",
61
60
  "jest-diff": "30.0.2",
62
61
  "simple-log-methods": "0.6.1",
63
62
  "type-fns": "1.19.0",
64
63
  "uuid-fns": "1.0.2"
65
64
  },
65
+ "peerDependencies": {
66
+ "domain-objects": ">=0.29.0"
67
+ },
66
68
  "devDependencies": {
67
69
  "@commitlint/cli": "19.3.0",
68
70
  "@commitlint/config-conventional": "13.1.0",