@jonloucks/contracts-ts 1.0.4 → 1.2.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 (70) hide show
  1. package/README.md +35 -18
  2. package/api/Convenience.d.ts +13 -4
  3. package/api/Convenience.d.ts.map +1 -1
  4. package/api/Convenience.js +23 -0
  5. package/api/Convenience.js.map +1 -1
  6. package/api/Open.d.ts +14 -2
  7. package/api/Open.d.ts.map +1 -1
  8. package/api/Open.js +28 -1
  9. package/api/Open.js.map +1 -1
  10. package/api/Repository.d.ts +14 -0
  11. package/api/Repository.d.ts.map +1 -1
  12. package/api/Repository.js.map +1 -1
  13. package/api/RepositoryFactory.d.ts +2 -2
  14. package/api/RepositoryFactory.d.ts.map +1 -1
  15. package/api/Types.d.ts.map +1 -1
  16. package/api/Types.js +5 -2
  17. package/api/Types.js.map +1 -1
  18. package/auxiliary/Convenience.d.ts +9 -3
  19. package/auxiliary/Convenience.d.ts.map +1 -1
  20. package/auxiliary/Convenience.js +11 -0
  21. package/auxiliary/Convenience.js.map +1 -1
  22. package/auxiliary/IdempotenState.d.ts +11 -0
  23. package/auxiliary/IdempotenState.d.ts.map +1 -0
  24. package/auxiliary/IdempotenState.js +10 -0
  25. package/auxiliary/IdempotenState.js.map +1 -0
  26. package/auxiliary/Idempotent.d.ts +38 -0
  27. package/auxiliary/Idempotent.d.ts.map +1 -0
  28. package/auxiliary/Idempotent.js +14 -0
  29. package/auxiliary/Idempotent.js.map +1 -0
  30. package/auxiliary/IdempotentFactory.d.ts +28 -0
  31. package/auxiliary/IdempotentFactory.d.ts.map +1 -0
  32. package/auxiliary/IdempotentFactory.js +23 -0
  33. package/auxiliary/IdempotentFactory.js.map +1 -0
  34. package/impl/Contracts.impl.d.ts.map +1 -1
  35. package/impl/Contracts.impl.js +16 -18
  36. package/impl/Contracts.impl.js.map +1 -1
  37. package/impl/ContractsFactory.impl.d.ts.map +1 -1
  38. package/impl/ContractsFactory.impl.js +3 -0
  39. package/impl/ContractsFactory.impl.js.map +1 -1
  40. package/impl/ContractsWrapper.impl.d.ts.map +1 -1
  41. package/impl/ContractsWrapper.impl.js +20 -26
  42. package/impl/ContractsWrapper.impl.js.map +1 -1
  43. package/impl/Events.impl.d.ts +1 -1
  44. package/impl/Events.impl.d.ts.map +1 -1
  45. package/impl/Events.impl.js +4 -15
  46. package/impl/Events.impl.js.map +1 -1
  47. package/impl/Idempotent.impl.d.ts +5 -5
  48. package/impl/Idempotent.impl.d.ts.map +1 -1
  49. package/impl/Idempotent.impl.js +62 -17
  50. package/impl/Idempotent.impl.js.map +1 -1
  51. package/impl/IdempotentFactory.impl.d.ts +12 -0
  52. package/impl/IdempotentFactory.impl.d.ts.map +1 -0
  53. package/impl/IdempotentFactory.impl.js +25 -0
  54. package/impl/IdempotentFactory.impl.js.map +1 -0
  55. package/impl/Repository.impl.d.ts +2 -3
  56. package/impl/Repository.impl.d.ts.map +1 -1
  57. package/impl/Repository.impl.js +16 -16
  58. package/impl/Repository.impl.js.map +1 -1
  59. package/impl/RepositoryFactory.impl.js +6 -2
  60. package/impl/RepositoryFactory.impl.js.map +1 -1
  61. package/index.d.ts +2 -1
  62. package/index.d.ts.map +1 -1
  63. package/index.js +4 -5
  64. package/index.js.map +1 -1
  65. package/package.json +4 -4
  66. package/version.js +1 -1
  67. package/impl/Idempotent.d.ts +0 -26
  68. package/impl/Idempotent.d.ts.map +0 -1
  69. package/impl/Idempotent.js +0 -3
  70. package/impl/Idempotent.js.map +0 -1
package/index.d.ts CHANGED
@@ -13,9 +13,10 @@ export { Repository } from "@jonloucks/contracts-ts/api/Repository";
13
13
  export { CONTRACT as REPOSITORY_FACTORY, RepositoryFactory } from "@jonloucks/contracts-ts/api/RepositoryFactory";
14
14
  export { guardFunctions as hasFunctions, isNotPresent, isNumber, isPresent, isString, OptionalType, RequiredType } from "@jonloucks/contracts-ts/api/Types";
15
15
  export { validateContracts } from "@jonloucks/contracts-ts/auxiliary/Validate";
16
+ import { createContracts, create as createContractsFactory } from "./impl/ContractsFactory.impl";
16
17
  export { createContract, create as createContractFactory } from "./impl/ContractFactory.impl";
17
- export { createContracts, create as createContractsFactory } from "./impl/ContractsFactory.impl";
18
18
  export { VERSION } from "./version";
19
+ export { createContracts, createContractsFactory };
19
20
  /**
20
21
  * A shared global Contracts instance.
21
22
  *
package/index.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA6B,MAAM,uCAAuC,CAAC;AAI7F,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAC/H,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAChH,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAC/F,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAC1F,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,EAAE,QAAQ,IAAI,gBAAgB,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC5G,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AAClH,OAAO,EAAE,cAAc,IAAI,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAC5J,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAG/E,OAAO,EAAE,cAAc,EAAE,MAAM,IAAI,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,IAAI,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACjG,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC;;;;;;;;GAQG;AACH,eAAO,MAAM,SAAS,EAAG,SASrB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA6B,MAAM,uCAAuC,CAAC;AAG7F,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAC/H,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAChH,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAC/F,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAC1F,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,EAAE,QAAQ,IAAI,gBAAgB,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC5G,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AAClH,OAAO,EAAE,cAAc,IAAI,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAC5J,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAG/E,OAAO,EAAE,eAAe,EAAE,MAAM,IAAI,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACjG,OAAO,EAAE,cAAc,EAAE,MAAM,IAAI,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAC9F,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,CAAC;AAGnD;;;;;;;;GAQG;AACH,eAAO,MAAM,SAAS,EAAG,SASrB,CAAC"}
package/index.js CHANGED
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CONTRACTS = exports.VERSION = exports.createContractsFactory = exports.createContracts = exports.createContractFactory = exports.createContract = exports.validateContracts = exports.isString = exports.isPresent = exports.isNumber = exports.isNotPresent = exports.hasFunctions = exports.REPOSITORY_FACTORY = exports.PROMISOR_FACTORY = exports.typeToPromisor = exports.ContractException = exports.DEFAULT_BIND_STRATEGY = exports.AUTO_CLOSE_FACTORY = exports.typeToAutoClose = void 0;
3
+ exports.CONTRACTS = exports.createContractsFactory = exports.createContracts = exports.VERSION = exports.createContractFactory = exports.createContract = exports.validateContracts = exports.isString = exports.isPresent = exports.isNumber = exports.isNotPresent = exports.hasFunctions = exports.REPOSITORY_FACTORY = exports.PROMISOR_FACTORY = exports.typeToPromisor = exports.ContractException = exports.DEFAULT_BIND_STRATEGY = exports.AUTO_CLOSE_FACTORY = exports.typeToAutoClose = void 0;
4
4
  const Validate_1 = require("@jonloucks/contracts-ts/auxiliary/Validate");
5
- const ContractsFactory_impl_1 = require("./impl/ContractsFactory.impl");
6
5
  var AutoClose_1 = require("@jonloucks/contracts-ts/api/AutoClose");
7
6
  Object.defineProperty(exports, "typeToAutoClose", { enumerable: true, get: function () { return AutoClose_1.typeToAutoClose; } });
8
7
  var AutoCloseFactory_1 = require("@jonloucks/contracts-ts/api/AutoCloseFactory");
@@ -26,12 +25,12 @@ Object.defineProperty(exports, "isString", { enumerable: true, get: function ()
26
25
  var Validate_2 = require("@jonloucks/contracts-ts/auxiliary/Validate");
27
26
  Object.defineProperty(exports, "validateContracts", { enumerable: true, get: function () { return Validate_2.validateContracts; } });
28
27
  // no qualified paths for things not exposed publicly
28
+ const ContractsFactory_impl_1 = require("./impl/ContractsFactory.impl");
29
+ Object.defineProperty(exports, "createContracts", { enumerable: true, get: function () { return ContractsFactory_impl_1.createContracts; } });
30
+ Object.defineProperty(exports, "createContractsFactory", { enumerable: true, get: function () { return ContractsFactory_impl_1.create; } });
29
31
  var ContractFactory_impl_1 = require("./impl/ContractFactory.impl");
30
32
  Object.defineProperty(exports, "createContract", { enumerable: true, get: function () { return ContractFactory_impl_1.createContract; } });
31
33
  Object.defineProperty(exports, "createContractFactory", { enumerable: true, get: function () { return ContractFactory_impl_1.create; } });
32
- var ContractsFactory_impl_2 = require("./impl/ContractsFactory.impl");
33
- Object.defineProperty(exports, "createContracts", { enumerable: true, get: function () { return ContractsFactory_impl_2.createContracts; } });
34
- Object.defineProperty(exports, "createContractsFactory", { enumerable: true, get: function () { return ContractsFactory_impl_2.create; } });
35
34
  var version_1 = require("./version");
36
35
  Object.defineProperty(exports, "VERSION", { enumerable: true, get: function () { return version_1.VERSION; } });
37
36
  /**
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,yEAA+E;AAC/E,wEAA+D;AAE/D,mEAA+H;AAA/D,4GAAA,eAAe,OAAA;AAC/E,iFAAgH;AAAvG,sHAAA,QAAQ,OAAsB;AAEvC,yEAA+F;AAAxE,qHAAA,qBAAqB,OAAA;AAE5C,mFAAkF;AAAzE,sHAAA,iBAAiB,OAAA;AAG1B,iEAAgF;AAA7D,0GAAA,cAAc,OAAA;AACjC,+EAA4G;AAAnG,mHAAA,QAAQ,OAAoB;AAErC,mFAAkH;AAAzG,uHAAA,QAAQ,OAAsB;AACvC,2DAA4J;AAAnJ,qGAAA,cAAc,OAAgB;AAAE,qGAAA,YAAY,OAAA;AAAE,iGAAA,QAAQ,OAAA;AAAE,kGAAA,SAAS,OAAA;AAAE,iGAAA,QAAQ,OAAA;AACpF,uEAA+E;AAAtE,6GAAA,iBAAiB,OAAA;AAE1B,sDAAsD;AACtD,oEAA8F;AAArF,sHAAA,cAAc,OAAA;AAAE,6HAAA,MAAM,OAAyB;AACxD,sEAAiG;AAAxF,wHAAA,eAAe,OAAA;AAAE,+HAAA,MAAM,OAA0B;AAC1D,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAEhB;;;;;;;;GAQG;AACU,QAAA,SAAS,GAAe,CAAC,GAAe,EAAE;IACnD,MAAM,YAAY,GAAqB;QACrC,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,CAAC,MAAM,CAAC;KACzB,CAAC;IACF,MAAM,SAAS,GAAG,IAAA,uCAAe,EAAC,YAAY,CAAC,CAAC;IAChD,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,iBAAiB;IACnC,IAAA,4BAAiB,EAAC,SAAS,CAAC,CAAC;IAC7B,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,yEAA+E;AAE/E,mEAA+H;AAA/D,4GAAA,eAAe,OAAA;AAC/E,iFAAgH;AAAvG,sHAAA,QAAQ,OAAsB;AAEvC,yEAA+F;AAAxE,qHAAA,qBAAqB,OAAA;AAE5C,mFAAkF;AAAzE,sHAAA,iBAAiB,OAAA;AAG1B,iEAAgF;AAA7D,0GAAA,cAAc,OAAA;AACjC,+EAA4G;AAAnG,mHAAA,QAAQ,OAAoB;AAErC,mFAAkH;AAAzG,uHAAA,QAAQ,OAAsB;AACvC,2DAA4J;AAAnJ,qGAAA,cAAc,OAAgB;AAAE,qGAAA,YAAY,OAAA;AAAE,iGAAA,QAAQ,OAAA;AAAE,kGAAA,SAAS,OAAA;AAAE,iGAAA,QAAQ,OAAA;AACpF,uEAA+E;AAAtE,6GAAA,iBAAiB,OAAA;AAE1B,sDAAsD;AACtD,wEAAiG;AAIxF,gGAJA,uCAAe,OAIA;AAAE,uGAJU,8BAAsB,OAIV;AAHhD,oEAA8F;AAArF,sHAAA,cAAc,OAAA;AAAE,6HAAA,MAAM,OAAyB;AACxD,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAKhB;;;;;;;;GAQG;AACU,QAAA,SAAS,GAAe,CAAC,GAAe,EAAE;IACnD,MAAM,YAAY,GAAqB;QACrC,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,CAAC,MAAM,CAAC;KACzB,CAAC;IACF,MAAM,SAAS,GAAG,IAAA,uCAAe,EAAC,YAAY,CAAC,CAAC;IAChD,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,iBAAiB;IACnC,IAAA,4BAAiB,EAAC,SAAS,CAAC,CAAC;IAC7B,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jonloucks/contracts-ts",
3
- "version": "1.0.4",
3
+ "version": "1.2.0",
4
4
  "description": "Typescript Dependency Contracts for dependency inversion",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
@@ -33,7 +33,7 @@
33
33
  "scripts": {
34
34
  "build": "tsc",
35
35
  "test": "jest",
36
- "test:watch": "jest --watch --watchAll --verbose",
36
+ "test:watch": "jest --watch --watchAll",
37
37
  "test:coverage": "jest --coverage",
38
38
  "test:diagnostics": "jest --detectOpenHandles",
39
39
  "lint": "eslint . --ext .ts",
@@ -67,8 +67,8 @@
67
67
  },
68
68
  "devDependencies": {
69
69
  "@types/jest": "^30.0.0",
70
- "@types/node": "^25.0.10",
71
- "@typescript-eslint/eslint-plugin": "^8.51.0",
70
+ "@types/node": "^25.1.0",
71
+ "@typescript-eslint/eslint-plugin": "^8.54.0",
72
72
  "@typescript-eslint/parser": "^8.53.1",
73
73
  "eslint": "^9.39.2",
74
74
  "jest": "^30.2.0",
package/version.js CHANGED
@@ -3,5 +3,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = exports.NAME = void 0;
4
4
  // generated file - do not edit
5
5
  exports.NAME = "@jonloucks/contracts-ts";
6
- exports.VERSION = "1.0.4";
6
+ exports.VERSION = "1.2.0";
7
7
  //# sourceMappingURL=version.js.map
@@ -1,26 +0,0 @@
1
- /**
2
- * Idempotent state transition management interface.
3
- *
4
- * Implementations manage idempotent transitions between open and closed states.
5
- */
6
- export interface Idempotent {
7
- /**
8
- * Transition to open state.
9
- *
10
- * @returns true if the state was changed to open, false if it was already open
11
- */
12
- transitionToOpen(): boolean;
13
- /**
14
- * Transition to closed state.
15
- *
16
- * @returns true if the state was changed to closed, false if it was already closed
17
- */
18
- transitionToClosed(): boolean;
19
- /**
20
- * Check if the state is open.
21
- *
22
- * @returns true if the state is open, false otherwise
23
- */
24
- isOpen(): boolean;
25
- }
26
- //# sourceMappingURL=Idempotent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Idempotent.d.ts","sourceRoot":"","sources":["../../src/impl/Idempotent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB;;;;OAIG;IACH,gBAAgB,IAAI,OAAO,CAAC;IAE5B;;;;OAIG;IACH,kBAAkB,IAAI,OAAO,CAAC;IAE9B;;;;OAIG;IACH,MAAM,IAAI,OAAO,CAAC;CACnB"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=Idempotent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Idempotent.js","sourceRoot":"","sources":["../../src/impl/Idempotent.ts"],"names":[],"mappings":""}