@jonloucks/contracts-ts 1.4.0 → 2.0.2

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 (181) hide show
  1. package/README.md +73 -22
  2. package/api/AutoClose.d.ts +7 -2
  3. package/api/AutoClose.d.ts.map +1 -1
  4. package/api/AutoClose.js +24 -23
  5. package/api/AutoClose.js.map +1 -1
  6. package/api/AutoCloseFactory.d.ts +3 -3
  7. package/api/AutoCloseFactory.d.ts.map +1 -1
  8. package/api/AutoCloseFactory.js +5 -9
  9. package/api/AutoCloseFactory.js.map +1 -1
  10. package/api/AutoOpen.js +3 -6
  11. package/api/AutoOpen.js.map +1 -1
  12. package/api/BasicContract.js +6 -11
  13. package/api/BasicContract.js.map +1 -1
  14. package/api/BindStrategy.js +4 -9
  15. package/api/BindStrategy.js.map +1 -1
  16. package/api/Contract.js +3 -6
  17. package/api/Contract.js.map +1 -1
  18. package/api/ContractException.js +5 -10
  19. package/api/ContractException.js.map +1 -1
  20. package/api/ContractFactory.js +3 -6
  21. package/api/ContractFactory.js.map +1 -1
  22. package/api/Contracts.d.ts +1 -1
  23. package/api/Contracts.d.ts.map +1 -1
  24. package/api/Contracts.js +4 -7
  25. package/api/Contracts.js.map +1 -1
  26. package/api/ContractsFactory.js +3 -6
  27. package/api/ContractsFactory.js.map +1 -1
  28. package/api/Convenience.d.ts +21 -16
  29. package/api/Convenience.d.ts.map +1 -1
  30. package/api/Convenience.js +17 -35
  31. package/api/Convenience.js.map +1 -1
  32. package/api/Open.d.ts.map +1 -1
  33. package/api/Open.js +9 -13
  34. package/api/Open.js.map +1 -1
  35. package/api/Promisor.d.ts +9 -5
  36. package/api/Promisor.d.ts.map +1 -1
  37. package/api/Promisor.js +18 -23
  38. package/api/Promisor.js.map +1 -1
  39. package/api/PromisorFactory.d.ts +3 -2
  40. package/api/PromisorFactory.d.ts.map +1 -1
  41. package/api/PromisorFactory.js +5 -9
  42. package/api/PromisorFactory.js.map +1 -1
  43. package/api/RatifiedContract.js +11 -16
  44. package/api/RatifiedContract.js.map +1 -1
  45. package/api/Repository.d.ts +2 -2
  46. package/api/Repository.d.ts.map +1 -1
  47. package/api/Repository.js +4 -7
  48. package/api/Repository.js.map +1 -1
  49. package/api/RepositoryFactory.js +5 -9
  50. package/api/RepositoryFactory.js.map +1 -1
  51. package/api/Types.d.ts +0 -24
  52. package/api/Types.d.ts.map +1 -1
  53. package/api/Types.js +13 -62
  54. package/api/Types.js.map +1 -1
  55. package/auxiliary/AtomicBoolean.js +3 -6
  56. package/auxiliary/AtomicBoolean.js.map +1 -1
  57. package/auxiliary/AtomicBooleanFactory.js +5 -9
  58. package/auxiliary/AtomicBooleanFactory.js.map +1 -1
  59. package/auxiliary/AtomicInteger.js +3 -6
  60. package/auxiliary/AtomicInteger.js.map +1 -1
  61. package/auxiliary/AtomicIntegerFactory.js +5 -9
  62. package/auxiliary/AtomicIntegerFactory.js.map +1 -1
  63. package/auxiliary/AtomicReference.js +3 -6
  64. package/auxiliary/AtomicReference.js.map +1 -1
  65. package/auxiliary/AtomicReferenceFactory.js +5 -9
  66. package/auxiliary/AtomicReferenceFactory.js.map +1 -1
  67. package/auxiliary/Checks.js +23 -36
  68. package/auxiliary/Checks.js.map +1 -1
  69. package/auxiliary/Consumer.js +7 -12
  70. package/auxiliary/Consumer.js.map +1 -1
  71. package/auxiliary/Convenience.d.ts +10 -6
  72. package/auxiliary/Convenience.d.ts.map +1 -1
  73. package/auxiliary/Convenience.js +17 -19
  74. package/auxiliary/Convenience.js.map +1 -1
  75. package/auxiliary/IdempotenState.d.ts +1 -1
  76. package/auxiliary/IdempotenState.d.ts.map +1 -1
  77. package/auxiliary/IdempotenState.js +2 -5
  78. package/auxiliary/IdempotenState.js.map +1 -1
  79. package/auxiliary/Idempotent.js +3 -6
  80. package/auxiliary/Idempotent.js.map +1 -1
  81. package/auxiliary/IdempotentFactory.js +5 -9
  82. package/auxiliary/IdempotentFactory.js.map +1 -1
  83. package/auxiliary/IllegalArgumentException.js +4 -8
  84. package/auxiliary/IllegalArgumentException.js.map +1 -1
  85. package/auxiliary/IllegalStateException.js +4 -8
  86. package/auxiliary/IllegalStateException.js.map +1 -1
  87. package/auxiliary/Predicate.js +9 -15
  88. package/auxiliary/Predicate.js.map +1 -1
  89. package/auxiliary/Supplier.js +10 -16
  90. package/auxiliary/Supplier.js.map +1 -1
  91. package/auxiliary/Transform.js +11 -18
  92. package/auxiliary/Transform.js.map +1 -1
  93. package/auxiliary/Validate.d.ts.map +1 -1
  94. package/auxiliary/Validate.js +17 -76
  95. package/auxiliary/Validate.js.map +1 -1
  96. package/impl/AtomicBoolean.impl.js +1 -4
  97. package/impl/AtomicBoolean.impl.js.map +1 -1
  98. package/impl/AtomicBooleanFactory.impl.js +3 -6
  99. package/impl/AtomicBooleanFactory.impl.js.map +1 -1
  100. package/impl/AtomicInteger.impl.js +1 -4
  101. package/impl/AtomicInteger.impl.js.map +1 -1
  102. package/impl/AtomicIntegerFactory.impl.js +3 -6
  103. package/impl/AtomicIntegerFactory.impl.js.map +1 -1
  104. package/impl/AtomicReference.impl.js +2 -7
  105. package/impl/AtomicReference.impl.js.map +1 -1
  106. package/impl/AtomicReferenceFactory.impl.js +3 -6
  107. package/impl/AtomicReferenceFactory.impl.js.map +1 -1
  108. package/impl/AutoCloseFactory.impl.d.ts +0 -3
  109. package/impl/AutoCloseFactory.impl.d.ts.map +1 -1
  110. package/impl/AutoCloseFactory.impl.js +7 -10
  111. package/impl/AutoCloseFactory.impl.js.map +1 -1
  112. package/impl/AutoCloseMany.impl.d.ts +0 -2
  113. package/impl/AutoCloseMany.impl.d.ts.map +1 -1
  114. package/impl/AutoCloseMany.impl.js +9 -9
  115. package/impl/AutoCloseMany.impl.js.map +1 -1
  116. package/impl/AutoCloseOne.impl.d.ts.map +1 -1
  117. package/impl/AutoCloseOne.impl.js +12 -12
  118. package/impl/AutoCloseOne.impl.js.map +1 -1
  119. package/impl/ContractFactory.impl.js +7 -11
  120. package/impl/ContractFactory.impl.js.map +1 -1
  121. package/impl/Contracts.impl.d.ts.map +1 -1
  122. package/impl/Contracts.impl.js +38 -41
  123. package/impl/Contracts.impl.js.map +1 -1
  124. package/impl/ContractsFactory.impl.js +28 -32
  125. package/impl/ContractsFactory.impl.js.map +1 -1
  126. package/impl/ContractsWrapper.impl.js +3 -6
  127. package/impl/ContractsWrapper.impl.js.map +1 -1
  128. package/impl/Events.d.ts +1 -2
  129. package/impl/Events.d.ts.map +1 -1
  130. package/impl/Events.impl.d.ts +1 -2
  131. package/impl/Events.impl.d.ts.map +1 -1
  132. package/impl/Events.impl.js +6 -9
  133. package/impl/Events.impl.js.map +1 -1
  134. package/impl/Events.js +1 -2
  135. package/impl/Events.js.map +1 -1
  136. package/impl/ExtractorPromisor.impl.d.ts +2 -1
  137. package/impl/ExtractorPromisor.impl.d.ts.map +1 -1
  138. package/impl/ExtractorPromisor.impl.js +6 -9
  139. package/impl/ExtractorPromisor.impl.js.map +1 -1
  140. package/impl/Idempotent.impl.js +10 -13
  141. package/impl/Idempotent.impl.js.map +1 -1
  142. package/impl/IdempotentFactory.impl.js +5 -8
  143. package/impl/IdempotentFactory.impl.js.map +1 -1
  144. package/impl/Internal.impl.js +5 -8
  145. package/impl/Internal.impl.js.map +1 -1
  146. package/impl/LifeCyclePromisor.impl.js +19 -22
  147. package/impl/LifeCyclePromisor.impl.js.map +1 -1
  148. package/impl/Policy.d.ts +0 -1
  149. package/impl/Policy.d.ts.map +1 -1
  150. package/impl/Policy.impl.d.ts +1 -3
  151. package/impl/Policy.impl.d.ts.map +1 -1
  152. package/impl/Policy.impl.js +7 -10
  153. package/impl/Policy.impl.js.map +1 -1
  154. package/impl/Policy.js +1 -2
  155. package/impl/PromisorFactory.impl.d.ts.map +1 -1
  156. package/impl/PromisorFactory.impl.js +11 -14
  157. package/impl/PromisorFactory.impl.js.map +1 -1
  158. package/impl/Repository.impl.d.ts.map +1 -1
  159. package/impl/Repository.impl.js +19 -22
  160. package/impl/Repository.impl.js.map +1 -1
  161. package/impl/RepositoryFactory.impl.js +3 -6
  162. package/impl/RepositoryFactory.impl.js.map +1 -1
  163. package/impl/SingletonPromisor.impl.js +7 -10
  164. package/impl/SingletonPromisor.impl.js.map +1 -1
  165. package/impl/Storage.impl.d.ts +2 -1
  166. package/impl/Storage.impl.d.ts.map +1 -1
  167. package/impl/Storage.impl.js +7 -7
  168. package/impl/Storage.impl.js.map +1 -1
  169. package/impl/ValuePromisor.impl.js +1 -4
  170. package/impl/ValuePromisor.impl.js.map +1 -1
  171. package/index.d.ts +8 -20
  172. package/index.d.ts.map +1 -1
  173. package/index.js +10 -38
  174. package/index.js.map +1 -1
  175. package/package.json +14 -13
  176. package/version.js +2 -5
  177. package/version.js.map +1 -1
  178. package/auxiliary/Functional.d.ts +0 -9
  179. package/auxiliary/Functional.d.ts.map +0 -1
  180. package/auxiliary/Functional.js +0 -23
  181. package/auxiliary/Functional.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Contracts.js","sourceRoot":"","sources":["../../src/api/Contracts.ts"],"names":[],"mappings":";;AA6FA,sBAEC;AA9FD,2DAA4E;AAI5E,6DAA+F;AAkF/F;;;;;GAKG;AACH,SAAgB,KAAK,CAAC,KAAc;IAClC,OAAO,IAAA,sBAAc,EAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,IAAA,YAAS,EAAC,KAAK,CAAC,CAAC;AAC1F,CAAC"}
1
+ {"version":3,"file":"Contracts.js","sourceRoot":"","sources":["../../src/api/Contracts.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,KAAK,IAAI,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAI5E,OAAO,EAAE,cAAc,EAA8B,MAAM,mCAAmC,CAAC;AAkF/F;;;;;GAKG;AACH,MAAM,UAAU,KAAK,CAAC,KAAc;IAClC,OAAO,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC;AAC1F,CAAC"}
@@ -1,14 +1,11 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.guard = guard;
4
- const Types_1 = require("@jonloucks/contracts-ts/api/Types");
1
+ import { guardFunctions } from "@jonloucks/contracts-ts/api/Types";
5
2
  /**
6
3
  * Type guard for ContractsFactory
7
4
  *
8
5
  * @param value the value to check
9
6
  * @return true if value is ContractsFactory, false otherwise
10
7
  */
11
- function guard(value) {
12
- return (0, Types_1.guardFunctions)(value, 'createContracts');
8
+ export function guard(value) {
9
+ return guardFunctions(value, 'createContracts');
13
10
  }
14
11
  //# sourceMappingURL=ContractsFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ContractsFactory.js","sourceRoot":"","sources":["../../src/api/ContractsFactory.ts"],"names":[],"mappings":";;AAyBA,sBAEC;AA1BD,6DAAiF;AAkBjF;;;;;GAKG;AACH,SAAgB,KAAK,CAAC,KAAc;IAClC,OAAO,IAAA,sBAAc,EAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;AAClD,CAAC"}
1
+ {"version":3,"file":"ContractsFactory.js","sourceRoot":"","sources":["../../src/api/ContractsFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAgB,MAAM,mCAAmC,CAAC;AAkBjF;;;;;GAKG;AACH,MAAM,UAAU,KAAK,CAAC,KAAc;IAClC,OAAO,cAAc,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;AAClD,CAAC"}
@@ -1,10 +1,14 @@
1
- import { Contract, ContractConfig, CONTRACTS, createContract } from "@jonloucks/contracts-ts";
2
- import { Promisor, PromisorType } from "@jonloucks/contracts-ts/api/Promisor";
3
- import { AutoClose, inlineAutoClose } from "@jonloucks/contracts-ts/api/AutoClose";
4
- import { BindStrategyType } from "@jonloucks/contracts-ts/api/BindStrategy";
5
- import { Repository, Config as RepositoryConfig } from "@jonloucks/contracts-ts/api/Repository";
6
- import { OptionalType, RequiredType, Transform, TransformType, isNumber, isFunction, isString, isBoolean, isObject, guardFunctions } from "@jonloucks/contracts-ts/api/Types";
7
- export { AutoClose, BindStrategyType, Contract, ContractConfig, CONTRACTS, createContract, guardFunctions, inlineAutoClose, isBoolean, isFunction, isNumber, isObject, isString, OptionalType, Promisor, PromisorType, Repository, RepositoryConfig, RequiredType, Transform, TransformType, };
1
+ import { VERSION, type Contract, type ContractConfig, CONTRACTS, createContract } from "@jonloucks/contracts-ts";
2
+ import { AutoOpen } from "@jonloucks/contracts-ts/api/AutoOpen";
3
+ import { ContractException } from "@jonloucks/contracts-ts/api/ContractException";
4
+ import { type Contracts, type Config as ContractsConfig } from "@jonloucks/contracts-ts/api/Contracts";
5
+ import { type Promisor, type Type as PromisorType } from "@jonloucks/contracts-ts/api/Promisor";
6
+ import { type AutoClose, type AutoCloseType, inlineAutoClose } from "@jonloucks/contracts-ts/api/AutoClose";
7
+ import { type BindStrategyType } from "@jonloucks/contracts-ts/api/BindStrategy";
8
+ import { type Repository, type Config as RepositoryConfig } from "@jonloucks/contracts-ts/api/Repository";
9
+ import { type OptionalType, type RequiredType, type UndefinedType, isNumber, isFunction, isString, isBoolean, isObject, guardFunctions } from "@jonloucks/contracts-ts/api/Types";
10
+ import { type Transform, type Type as TransformType } from "@jonloucks/contracts-ts/auxiliary/Transform";
11
+ import { validateContracts } from "@jonloucks/contracts-ts/auxiliary/Validate";
8
12
  /**
9
13
  * @module Convenience
10
14
  * @description
@@ -24,14 +28,14 @@ export { AutoClose, BindStrategyType, Contract, ContractConfig, CONTRACTS, creat
24
28
  * @param contract the Contract to claim from
25
29
  * @returns the deliverable
26
30
  */
27
- export declare function claim<T>(contract: RequiredType<Contract<T>>): OptionalType<T>;
31
+ declare function claim<T>(contract: RequiredType<Contract<T>>): OptionalType<T>;
28
32
  /**
29
33
  * Enforce a deliverable from a Contract via the shared global CONTRACTS instance.
30
34
  *
31
35
  * @param contract the Contract to enforce from
32
36
  * @returns the deliverable
33
37
  */
34
- export declare function enforce<T>(contract: RequiredType<Contract<T>>): RequiredType<T>;
38
+ declare function enforce<T>(contract: RequiredType<Contract<T>>): RequiredType<T>;
35
39
  /**
36
40
  * Bind a Promisor to a Contract via the shared global CONTRACTS instance.
37
41
  *
@@ -40,14 +44,14 @@ export declare function enforce<T>(contract: RequiredType<Contract<T>>): Require
40
44
  * @param bindStrategy optional BindStrategyType
41
45
  * @returns an AutoClose to manage the binding lifecycle
42
46
  */
43
- export declare function bind<T>(contract: RequiredType<Contract<T>>, promisor: PromisorType<T>, bindStrategy?: BindStrategyType): RequiredType<AutoClose>;
47
+ declare function bind<T>(contract: RequiredType<Contract<T>>, promisor: PromisorType<T>, bindStrategy?: BindStrategyType): RequiredType<AutoClose>;
44
48
  /**
45
49
  * Check if a Contract is bound via the shared global CONTRACTS instance.
46
50
  *
47
51
  * @param contract the Contract to check
48
52
  * @returns true if the Contract is bound, false otherwise
49
53
  */
50
- export declare function isBound<T>(contract: RequiredType<Contract<T>>): boolean;
54
+ declare function isBound<T>(contract: RequiredType<Contract<T>>): boolean;
51
55
  /**
52
56
  * Creates a Promisor that returns the given value every time it is claimed.
53
57
  *
@@ -55,7 +59,7 @@ export declare function isBound<T>(contract: RequiredType<Contract<T>>): boolean
55
59
  * @return The new Promisor
56
60
  * @param <T> the type of deliverable
57
61
  */
58
- export declare function createValue<T>(deliverable: OptionalType<T>): RequiredType<Promisor<T>>;
62
+ declare function createValue<T>(deliverable: OptionalType<T>): RequiredType<Promisor<T>>;
59
63
  /**
60
64
  * Creates a Promisor that only calls the source Promisor once and then always
61
65
  * returns that value.
@@ -65,7 +69,7 @@ export declare function createValue<T>(deliverable: OptionalType<T>): RequiredTy
65
69
  * @return The new Promisor
66
70
  * @param <T> the type of deliverable
67
71
  */
68
- export declare function createSingleton<T>(promisor: PromisorType<T>): RequiredType<Promisor<T>>;
72
+ declare function createSingleton<T>(promisor: PromisorType<T>): RequiredType<Promisor<T>>;
69
73
  /**
70
74
  * Reference counted, lazy loaded, with opt-in 'open' and 'close' invoked on deliverable.
71
75
  * Note: increment and decrementUsage are relayed to the source promisor.
@@ -74,7 +78,7 @@ export declare function createSingleton<T>(promisor: PromisorType<T>): RequiredT
74
78
  * @return the new Promisor
75
79
  * @param <T> the type of deliverable
76
80
  */
77
- export declare function createLifeCycle<T>(promisor: PromisorType<T>): RequiredType<Promisor<T>>;
81
+ declare function createLifeCycle<T>(promisor: PromisorType<T>): RequiredType<Promisor<T>>;
78
82
  /**
79
83
  * Extract values from the deliverable of a source Promisor.
80
84
  * Note: increment and decrementUsage are relayed to the source promisor.
@@ -85,12 +89,13 @@ export declare function createLifeCycle<T>(promisor: PromisorType<T>): RequiredT
85
89
  * @param <T> the type of deliverable
86
90
  * @param <R> the new Promisor deliverable type
87
91
  */
88
- export declare function createExtractor<T, R>(promisor: PromisorType<T>, extractor: TransformType<T, R>): RequiredType<Promisor<R>>;
92
+ declare function createExtractor<T, R>(promisor: PromisorType<T>, extractor: TransformType<T, R>): RequiredType<Promisor<R>>;
89
93
  /**
90
94
  * Factory method to create a Repository via the shared global REPOSITORY_FACTORY instance.
91
95
  *
92
96
  * @param config optional configuration for the Repository
93
97
  * @returns the Repository implementation
94
98
  */
95
- export declare function createRepository(config?: RepositoryConfig): RequiredType<Repository>;
99
+ declare function createRepository(config?: RepositoryConfig): RequiredType<Repository>;
100
+ export { type AutoClose, type AutoCloseType, type AutoOpen, bind, type BindStrategyType, claim, createExtractor, createLifeCycle, createRepository, createSingleton, createValue, type Contract, type ContractConfig, ContractException, type Contracts, type ContractsConfig, CONTRACTS, createContract, enforce, guardFunctions, inlineAutoClose, isBound, isBoolean, isFunction, isNumber, isObject, isString, type OptionalType, type Promisor, type PromisorType, type Repository, type RepositoryConfig, type RequiredType, type Transform, type TransformType, type UndefinedType, validateContracts, VERSION };
96
101
  //# sourceMappingURL=Convenience.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Convenience.d.ts","sourceRoot":"","sources":["../../src/api/Convenience.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9F,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAG5E,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAChG,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAE9K,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,QAAQ,EACR,cAAc,EACd,SAAS,EACT,cAAc,EACd,cAAc,EACd,eAAe,EACf,SAAS,EACT,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,SAAS,EACT,aAAa,GACd,CAAC;AAEF;;;;;;;;;;;;GAYG;AAEH;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAE7E;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAE/E;AAED;;;;;;;GAOG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,gBAAgB,GAAG,YAAY,CAAC,SAAS,CAAC,CAEhJ;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAEvE;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAEtF;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAEvF;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAEvF;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAE1H;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,YAAY,CAAC,UAAU,CAAC,CAEpF"}
1
+ {"version":3,"file":"Convenience.d.ts","sourceRoot":"","sources":["../../src/api/Convenience.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,cAAc,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEjH,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AAClF,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,MAAM,IAAI,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACvG,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,IAAI,IAAI,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAChG,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAC5G,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAGjF,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,MAAM,IAAI,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1G,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAClL,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,IAAI,IAAI,aAAa,EAAE,MAAM,6CAA6C,CAAC;AACzG,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAE/E;;;;;;;;;;;;GAYG;AAEH;;;;;GAKG;AACH,iBAAS,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAEtE;AAED;;;;;GAKG;AACH,iBAAS,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAExE;AAED;;;;;;;GAOG;AACH,iBAAS,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,gBAAgB,GAAG,YAAY,CAAC,SAAS,CAAC,CAEzI;AAED;;;;;GAKG;AACH,iBAAS,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAEhE;AAED;;;;;;GAMG;AACH,iBAAS,WAAW,CAAC,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAE/E;AAED;;;;;;;;GAQG;AACH,iBAAS,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAEhF;AAED;;;;;;;GAOG;AACH,iBAAS,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAEhF;AAED;;;;;;;;;GASG;AACH,iBAAS,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAEnH;AAED;;;;;GAKG;AACH,iBAAS,gBAAgB,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,YAAY,CAAC,UAAU,CAAC,CAE7E;AAED,OAAO,EACL,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,IAAI,EACJ,KAAK,gBAAgB,EACrB,KAAK,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,iBAAiB,EACjB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,SAAS,EACT,cAAc,EACd,OAAO,EACP,cAAc,EACd,eAAe,EACf,OAAO,EACP,SAAS,EACT,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,iBAAiB,EACjB,OAAO,EACR,CAAC"}
@@ -1,29 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isString = exports.isObject = exports.isNumber = exports.isFunction = exports.isBoolean = exports.inlineAutoClose = exports.guardFunctions = exports.createContract = exports.CONTRACTS = void 0;
4
- exports.claim = claim;
5
- exports.enforce = enforce;
6
- exports.bind = bind;
7
- exports.isBound = isBound;
8
- exports.createValue = createValue;
9
- exports.createSingleton = createSingleton;
10
- exports.createLifeCycle = createLifeCycle;
11
- exports.createExtractor = createExtractor;
12
- exports.createRepository = createRepository;
13
- const contracts_ts_1 = require("@jonloucks/contracts-ts");
14
- Object.defineProperty(exports, "CONTRACTS", { enumerable: true, get: function () { return contracts_ts_1.CONTRACTS; } });
15
- Object.defineProperty(exports, "createContract", { enumerable: true, get: function () { return contracts_ts_1.createContract; } });
16
- const AutoClose_1 = require("@jonloucks/contracts-ts/api/AutoClose");
17
- Object.defineProperty(exports, "inlineAutoClose", { enumerable: true, get: function () { return AutoClose_1.inlineAutoClose; } });
18
- const PromisorFactory_1 = require("@jonloucks/contracts-ts/api/PromisorFactory");
19
- const RepositoryFactory_1 = require("@jonloucks/contracts-ts/api/RepositoryFactory");
20
- const Types_1 = require("@jonloucks/contracts-ts/api/Types");
21
- Object.defineProperty(exports, "isNumber", { enumerable: true, get: function () { return Types_1.isNumber; } });
22
- Object.defineProperty(exports, "isFunction", { enumerable: true, get: function () { return Types_1.isFunction; } });
23
- Object.defineProperty(exports, "isString", { enumerable: true, get: function () { return Types_1.isString; } });
24
- Object.defineProperty(exports, "isBoolean", { enumerable: true, get: function () { return Types_1.isBoolean; } });
25
- Object.defineProperty(exports, "isObject", { enumerable: true, get: function () { return Types_1.isObject; } });
26
- Object.defineProperty(exports, "guardFunctions", { enumerable: true, get: function () { return Types_1.guardFunctions; } });
1
+ import { VERSION, CONTRACTS, createContract } from "@jonloucks/contracts-ts";
2
+ import { ContractException } from "@jonloucks/contracts-ts/api/ContractException";
3
+ import { inlineAutoClose } from "@jonloucks/contracts-ts/api/AutoClose";
4
+ import { CONTRACT as PROMISOR_FACTORY } from "@jonloucks/contracts-ts/api/PromisorFactory";
5
+ import { CONTRACT as REPOSITORY_FACTORY } from "@jonloucks/contracts-ts/api/RepositoryFactory";
6
+ import { isNumber, isFunction, isString, isBoolean, isObject, guardFunctions } from "@jonloucks/contracts-ts/api/Types";
7
+ import { validateContracts } from "@jonloucks/contracts-ts/auxiliary/Validate";
27
8
  /**
28
9
  * @module Convenience
29
10
  * @description
@@ -44,7 +25,7 @@ Object.defineProperty(exports, "guardFunctions", { enumerable: true, get: functi
44
25
  * @returns the deliverable
45
26
  */
46
27
  function claim(contract) {
47
- return contracts_ts_1.CONTRACTS.claim(contract);
28
+ return CONTRACTS.claim(contract);
48
29
  }
49
30
  /**
50
31
  * Enforce a deliverable from a Contract via the shared global CONTRACTS instance.
@@ -53,7 +34,7 @@ function claim(contract) {
53
34
  * @returns the deliverable
54
35
  */
55
36
  function enforce(contract) {
56
- return contracts_ts_1.CONTRACTS.enforce(contract);
37
+ return CONTRACTS.enforce(contract);
57
38
  }
58
39
  /**
59
40
  * Bind a Promisor to a Contract via the shared global CONTRACTS instance.
@@ -64,7 +45,7 @@ function enforce(contract) {
64
45
  * @returns an AutoClose to manage the binding lifecycle
65
46
  */
66
47
  function bind(contract, promisor, bindStrategy) {
67
- return contracts_ts_1.CONTRACTS.bind(contract, promisor, bindStrategy);
48
+ return CONTRACTS.bind(contract, promisor, bindStrategy);
68
49
  }
69
50
  /**
70
51
  * Check if a Contract is bound via the shared global CONTRACTS instance.
@@ -73,7 +54,7 @@ function bind(contract, promisor, bindStrategy) {
73
54
  * @returns true if the Contract is bound, false otherwise
74
55
  */
75
56
  function isBound(contract) {
76
- return contracts_ts_1.CONTRACTS.isBound(contract);
57
+ return CONTRACTS.isBound(contract);
77
58
  }
78
59
  /**
79
60
  * Creates a Promisor that returns the given value every time it is claimed.
@@ -83,7 +64,7 @@ function isBound(contract) {
83
64
  * @param <T> the type of deliverable
84
65
  */
85
66
  function createValue(deliverable) {
86
- return enforce(PromisorFactory_1.CONTRACT).createValue(deliverable);
67
+ return enforce(PROMISOR_FACTORY).createValue(deliverable);
87
68
  }
88
69
  /**
89
70
  * Creates a Promisor that only calls the source Promisor once and then always
@@ -95,7 +76,7 @@ function createValue(deliverable) {
95
76
  * @param <T> the type of deliverable
96
77
  */
97
78
  function createSingleton(promisor) {
98
- return enforce(PromisorFactory_1.CONTRACT).createSingleton(promisor);
79
+ return enforce(PROMISOR_FACTORY).createSingleton(promisor);
99
80
  }
100
81
  /**
101
82
  * Reference counted, lazy loaded, with opt-in 'open' and 'close' invoked on deliverable.
@@ -106,7 +87,7 @@ function createSingleton(promisor) {
106
87
  * @param <T> the type of deliverable
107
88
  */
108
89
  function createLifeCycle(promisor) {
109
- return enforce(PromisorFactory_1.CONTRACT).createLifeCycle(promisor);
90
+ return enforce(PROMISOR_FACTORY).createLifeCycle(promisor);
110
91
  }
111
92
  /**
112
93
  * Extract values from the deliverable of a source Promisor.
@@ -119,7 +100,7 @@ function createLifeCycle(promisor) {
119
100
  * @param <R> the new Promisor deliverable type
120
101
  */
121
102
  function createExtractor(promisor, extractor) {
122
- return enforce(PromisorFactory_1.CONTRACT).createExtractor(promisor, extractor);
103
+ return enforce(PROMISOR_FACTORY).createExtractor(promisor, extractor);
123
104
  }
124
105
  /**
125
106
  * Factory method to create a Repository via the shared global REPOSITORY_FACTORY instance.
@@ -128,6 +109,7 @@ function createExtractor(promisor, extractor) {
128
109
  * @returns the Repository implementation
129
110
  */
130
111
  function createRepository(config) {
131
- return enforce(RepositoryFactory_1.CONTRACT).createRepository(config);
112
+ return enforce(REPOSITORY_FACTORY).createRepository(config);
132
113
  }
114
+ export { bind, claim, createExtractor, createLifeCycle, createRepository, createSingleton, createValue, ContractException, CONTRACTS, createContract, enforce, guardFunctions, inlineAutoClose, isBound, isBoolean, isFunction, isNumber, isObject, isString, validateContracts, VERSION };
133
115
  //# sourceMappingURL=Convenience.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Convenience.js","sourceRoot":"","sources":["../../src/api/Convenience.ts"],"names":[],"mappings":";;;AAqDA,sBAEC;AAQD,0BAEC;AAUD,oBAEC;AAQD,0BAEC;AASD,kCAEC;AAWD,0CAEC;AAUD,0CAEC;AAYD,0CAEC;AAQD,4CAEC;AAnJD,0DAA8F;AAc5F,0FAdiC,wBAAS,OAcjC;AACT,+FAf4C,6BAAc,OAe5C;AAbhB,qEAAmF;AAejF,gGAfkB,2BAAe,OAelB;AAbjB,iFAA2F;AAC3F,qFAA+F;AAE/F,6DAA8K;AAa5K,yFAb6D,gBAAQ,OAa7D;AADR,2FAZuE,kBAAU,OAYvE;AAGV,yFAfmF,gBAAQ,OAenF;AAJR,0FAX6F,iBAAS,OAW7F;AAGT,yFAdwG,gBAAQ,OAcxG;AALR,+FATkH,sBAAc,OASlH;AAiBhB;;;;;;;;;;;;GAYG;AAEH;;;;;GAKG;AACH,SAAgB,KAAK,CAAI,QAAmC;IAC1D,OAAO,wBAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,OAAO,CAAI,QAAmC;IAC5D,OAAO,wBAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,IAAI,CAAI,QAAmC,EAAE,QAAyB,EAAE,YAA+B;IACrH,OAAO,wBAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;GAKG;AACH,SAAgB,OAAO,CAAI,QAAmC;IAC5D,OAAO,wBAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,WAAW,CAAI,WAA4B;IACzD,OAAO,OAAO,CAAC,0BAAgB,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,eAAe,CAAI,QAAyB;IAC1D,OAAO,OAAO,CAAC,0BAAgB,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,eAAe,CAAI,QAAyB;IAC1D,OAAO,OAAO,CAAC,0BAAgB,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,eAAe,CAAO,QAAyB,EAAE,SAA8B;IAC7F,OAAO,OAAO,CAAC,0BAAgB,CAAC,CAAC,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AACxE,CAAC;AAED;;;;;GAKG;AACH,SAAgB,gBAAgB,CAAC,MAAyB;IACxD,OAAO,OAAO,CAAC,4BAAkB,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAC9D,CAAC"}
1
+ {"version":3,"file":"Convenience.js","sourceRoot":"","sources":["../../src/api/Convenience.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAsC,SAAS,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAGjH,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AAGlF,OAAO,EAAsC,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAE5G,OAAO,EAAE,QAAQ,IAAI,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AAE/F,OAAO,EAA4D,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAElL,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAE/E;;;;;;;;;;;;GAYG;AAEH;;;;;GAKG;AACH,SAAS,KAAK,CAAI,QAAmC;IACnD,OAAO,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,SAAS,OAAO,CAAI,QAAmC;IACrD,OAAO,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,IAAI,CAAI,QAAmC,EAAE,QAAyB,EAAE,YAA+B;IAC9G,OAAO,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;GAKG;AACH,SAAS,OAAO,CAAI,QAAmC;IACrD,OAAO,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;GAMG;AACH,SAAS,WAAW,CAAI,WAA4B;IAClD,OAAO,OAAO,CAAC,gBAAgB,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,eAAe,CAAI,QAAyB;IACnD,OAAO,OAAO,CAAC,gBAAgB,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,eAAe,CAAI,QAAyB;IACnD,OAAO,OAAO,CAAC,gBAAgB,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,eAAe,CAAO,QAAyB,EAAE,SAA8B;IACtF,OAAO,OAAO,CAAC,gBAAgB,CAAC,CAAC,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AACxE,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,MAAyB;IACjD,OAAO,OAAO,CAAC,kBAAkB,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAC9D,CAAC;AAED,OAAO,EAIL,IAAI,EAEJ,KAAK,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,WAAW,EAGX,iBAAiB,EAGjB,SAAS,EACT,cAAc,EACd,OAAO,EACP,cAAc,EACd,eAAe,EACf,OAAO,EACP,SAAS,EACT,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,QAAQ,EAUR,iBAAiB,EACjB,OAAO,EACR,CAAC"}
package/api/Open.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Open.d.ts","sourceRoot":"","sources":["../../src/api/Open.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAmB,MAAM,uCAAuC,CAAC;AAClG,OAAO,EAAE,QAAQ,EAA0B,MAAM,sCAAsC,CAAC;AAExF,OAAO,EAAE,YAAY,EAAE,MAAM,8CAA8C,CAAC;AAE5E;;GAEG;AACH,MAAM,WAAW,IAAI;IAEnB;;;OAGG;IACH,IAAI,IAAI,SAAS,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,aAAa,CAAC,CAAC;AAE/D;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY,CAAC,IAAI,CAAC,CAEjE;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,CAc/C"}
1
+ {"version":3,"file":"Open.d.ts","sourceRoot":"","sources":["../../src/api/Open.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAA+B,MAAM,uCAAuC,CAAC;AAC9G,OAAO,EAAE,QAAQ,EAA0B,MAAM,sCAAsC,CAAC;AAExF,OAAO,EAAE,YAAY,EAAE,MAAM,8CAA8C,CAAC;AAE5E;;GAEG;AACH,MAAM,WAAW,IAAI;IAEnB;;;OAGG;IACH,IAAI,IAAI,SAAS,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,aAAa,CAAC,CAAC;AAE/D;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY,CAAC,IAAI,CAAC,CAEjE;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,CAc/C"}
package/api/Open.js CHANGED
@@ -1,18 +1,14 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.guard = guard;
4
- exports.typeToOpen = typeToOpen;
5
- const AutoClose_1 = require("@jonloucks/contracts-ts/api/AutoClose");
6
- const AutoOpen_1 = require("@jonloucks/contracts-ts/api/AutoOpen");
7
- const Types_1 = require("@jonloucks/contracts-ts/api/Types");
1
+ import { fromType as typeToAutoClose } from "@jonloucks/contracts-ts/api/AutoClose";
2
+ import { guard as guardAutoOpen } from "@jonloucks/contracts-ts/api/AutoOpen";
3
+ import { guardFunctions, isFunction } from "@jonloucks/contracts-ts/api/Types";
8
4
  /**
9
5
  * Duck-typing check for Open interface.
10
6
  *
11
7
  * @param value the value to check
12
8
  * @returns true if the value implements Open, false otherwise
13
9
  */
14
- function guard(value) {
15
- return (0, Types_1.guardFunctions)(value, 'open');
10
+ export function guard(value) {
11
+ return guardFunctions(value, 'open');
16
12
  }
17
13
  /**
18
14
  * Convert an OpenType to an Open instance.
@@ -20,8 +16,8 @@ function guard(value) {
20
16
  * @param type the OpenType to convert
21
17
  * @return the Open instance
22
18
  */
23
- function typeToOpen(type) {
24
- if ((0, AutoOpen_1.guard)(type)) {
19
+ export function typeToOpen(type) {
20
+ if (guardAutoOpen(type)) {
25
21
  return {
26
22
  open: () => type.autoOpen()
27
23
  };
@@ -29,9 +25,9 @@ function typeToOpen(type) {
29
25
  else if (guard(type)) {
30
26
  return type;
31
27
  }
32
- else if ((0, Types_1.isFunction)(type)) {
28
+ else if (isFunction(type)) {
33
29
  return {
34
- open: () => (0, AutoClose_1.typeToAutoClose)(type())
30
+ open: () => typeToAutoClose(type())
35
31
  };
36
32
  }
37
33
  else {
package/api/Open.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Open.js","sourceRoot":"","sources":["../../src/api/Open.ts"],"names":[],"mappings":";;AA4BA,sBAEC;AAQD,gCAcC;AApDD,qEAAkG;AAClG,mEAAwF;AACxF,6DAA+E;AAoB/E;;;;;GAKG;AACH,SAAgB,KAAK,CAAC,KAAc;IAClC,OAAO,IAAA,sBAAc,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACvC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,UAAU,CAAC,IAAc;IACvC,IAAI,IAAA,gBAAa,EAAC,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO;YACL,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE;SAC5B,CAAA;IACH,CAAC;SAAM,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;SAAM,IAAI,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,OAAO;YACL,IAAI,EAAE,GAAG,EAAE,CAAC,IAAA,2BAAe,EAAC,IAAI,EAAE,CAAC;SACpC,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"Open.js","sourceRoot":"","sources":["../../src/api/Open.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,QAAQ,IAAI,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAC9G,OAAO,EAAY,KAAK,IAAI,aAAa,EAAE,MAAM,sCAAsC,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAoB/E;;;;;GAKG;AACH,MAAM,UAAU,KAAK,CAAC,KAAc;IAClC,OAAO,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACvC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,IAAc;IACvC,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO;YACL,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE;SAC5B,CAAA;IACH,CAAC;SAAM,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;SAAM,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,OAAO;YACL,IAAI,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;SACpC,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;AACH,CAAC"}
package/api/Promisor.d.ts CHANGED
@@ -32,22 +32,26 @@ export interface Promisor<T> {
32
32
  * @returns true if the instance is a Promisor, false otherwise
33
33
  */
34
34
  export declare function guard<T>(instance: unknown): instance is RequiredType<Promisor<T>>;
35
+ /**
36
+ * A Function that can be converted to a Promisor
37
+ */
38
+ export type Method<T> = (() => OptionalType<T>);
35
39
  /**
36
40
  * A type that can be converted to a Promisor
37
41
  */
38
- export type PromisorType<T> = (new () => T) | Promisor<T> | (() => OptionalType<T>) | (() => () => T) | T | null | undefined;
42
+ export type Type<T> = (new () => T) | Promisor<T> | Method<T> | T | null | undefined;
39
43
  /**
40
- * Convert a PromisorType to a Promisor
44
+ * Convert a Type to a Promisor
41
45
  *
42
46
  * @param type the type to convert
43
47
  * @returns the Promisor
44
48
  */
45
- export declare function typeToPromisor<T>(type: PromisorType<T>): RequiredType<Promisor<T>>;
49
+ export declare function fromType<T>(type: Type<T>): RequiredType<Promisor<T>>;
46
50
  /**
47
51
  * Unwrap a Promisor to get the original type.
48
52
  *
49
53
  * @param promisor the Promisor to unwrap
50
- * @returns the original PromisorType
54
+ * @returns the original Promisor Type
51
55
  */
52
- export declare function unwrapPromisorType<T>(promisor: OptionalType<Promisor<T>>): OptionalType<PromisorType<T>>;
56
+ export declare function unwrap<T>(promisor: OptionalType<Promisor<T>>): OptionalType<Type<T>>;
53
57
  //# sourceMappingURL=Promisor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Promisor.d.ts","sourceRoot":"","sources":["../../src/api/Promisor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAA+C,MAAM,mCAAmC,CAAC;AAG5H;;;;;GAKG;AACH,MAAM,WAAW,QAAQ,CAAC,CAAC;IAEzB;;;OAGG;IACH,MAAM,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IAE1B;;;;;OAKG;IACH,cAAc,IAAI,MAAM,CAAC;IAEzB;;;;;OAKG;IACH,cAAc,IAAI,MAAM,CAAC;CAC1B;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,GAAG,QAAQ,IAAI,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAEjF;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;AAE7H;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAYlF;AA+BD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAQxG"}
1
+ {"version":3,"file":"Promisor.d.ts","sourceRoot":"","sources":["../../src/api/Promisor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAA+C,MAAM,mCAAmC,CAAC;AAG5H;;;;;GAKG;AACH,MAAM,WAAW,QAAQ,CAAC,CAAC;IAEzB;;;OAGG;IACH,MAAM,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IAE1B;;;;;OAKG;IACH,cAAc,IAAI,MAAM,CAAC;IAEzB;;;;;OAKG;IACH,cAAc,IAAI,MAAM,CAAC;CAC1B;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,GAAG,QAAQ,IAAI,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAEjF;AAED;;GAEG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AAEhD;;GAEG;AACH,MAAM,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;AAErF;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAYpE;AA+BD;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAQpF"}
package/api/Promisor.js CHANGED
@@ -1,50 +1,45 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.guard = guard;
4
- exports.typeToPromisor = typeToPromisor;
5
- exports.unwrapPromisorType = unwrapPromisorType;
6
- const Types_1 = require("@jonloucks/contracts-ts/api/Types");
7
- const Checks_1 = require("@jonloucks/contracts-ts/auxiliary/Checks");
1
+ import { guardFunctions, isConstructor, isNotPresent } from "@jonloucks/contracts-ts/api/Types";
2
+ import { presentCheck } from "@jonloucks/contracts-ts/auxiliary/Checks";
8
3
  /**
9
4
  * Check if an instance is a Promisor
10
5
  * @param instance the instance to check
11
6
  * @returns true if the instance is a Promisor, false otherwise
12
7
  */
13
- function guard(instance) {
14
- return (0, Types_1.guardFunctions)(instance, 'demand', 'incrementUsage', 'decrementUsage');
8
+ export function guard(instance) {
9
+ return guardFunctions(instance, 'demand', 'incrementUsage', 'decrementUsage');
15
10
  }
16
11
  /**
17
- * Convert a PromisorType to a Promisor
12
+ * Convert a Type to a Promisor
18
13
  *
19
14
  * @param type the type to convert
20
15
  * @returns the Promisor
21
16
  */
22
- function typeToPromisor(type) {
23
- if ((0, Types_1.isNotPresent)(type)) {
24
- return wrapPromisor(type, () => type); // supplier of null or undefined
17
+ export function fromType(type) {
18
+ if (isNotPresent(type)) {
19
+ return wrap(type, () => type); // supplier of null or undefined
25
20
  }
26
- else if ((0, Types_1.isConstructor)(type)) {
27
- return wrapPromisor(type, () => new type()); // supplier of new instance
21
+ else if (isConstructor(type)) {
22
+ return wrap(type, () => new type()); // supplier of new instance
28
23
  }
29
24
  else if (guard(type)) {
30
25
  return type; // already a Promisor
31
26
  }
32
27
  else if (typeof type === 'function') {
33
- return wrapPromisor(type, type);
28
+ return wrap(type, type); // supplier function
34
29
  }
35
30
  else {
36
- return wrapPromisor(type, () => type); // instance of T, runtime type-guard happens in demand
31
+ return wrap(type, () => type); // instance of T, runtime type-guard happens in demand
37
32
  }
38
33
  }
39
34
  /**
40
35
  * Create a simple inline Promisor from a demand function
41
36
  *
42
- * @param type the PromisorType
37
+ * @param type the promisor type
43
38
  * @param demand the demand function
44
39
  * @returns the Promisor
45
40
  */
46
- function wrapPromisor(type, demand) {
47
- const validDemand = (0, Checks_1.presentCheck)(demand, "Promisor demand function must be present.");
41
+ function wrap(type, demand) {
42
+ const validDemand = presentCheck(demand, "Promisor demand function must be present.");
48
43
  let usageCount = 0;
49
44
  return {
50
45
  demand: validDemand,
@@ -57,10 +52,10 @@ function wrapPromisor(type, demand) {
57
52
  * Unwrap a Promisor to get the original type.
58
53
  *
59
54
  * @param promisor the Promisor to unwrap
60
- * @returns the original PromisorType
55
+ * @returns the original Promisor Type
61
56
  */
62
- function unwrapPromisorType(promisor) {
63
- if ((0, Types_1.isNotPresent)(promisor)) {
57
+ export function unwrap(promisor) {
58
+ if (isNotPresent(promisor)) {
64
59
  return promisor;
65
60
  }
66
61
  if ('unwrapPromisorType' in promisor && typeof promisor.unwrapPromisorType === 'function') {
@@ -1 +1 @@
1
- {"version":3,"file":"Promisor.js","sourceRoot":"","sources":["../../src/api/Promisor.ts"],"names":[],"mappings":";;AAuCA,sBAEC;AAaD,wCAYC;AAqCD,gDAQC;AA/GD,6DAA4H;AAC5H,qEAAwE;AAiCxE;;;;GAIG;AACH,SAAgB,KAAK,CAAI,QAAiB;IACxC,OAAO,IAAA,sBAAc,EAAC,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;AAChF,CAAC;AAOD;;;;;GAKG;AACH,SAAgB,cAAc,CAAI,IAAqB;IACrD,IAAI,IAAA,oBAAY,EAAC,IAAI,CAAC,EAAE,CAAC;QACvB,OAAO,YAAY,CAAI,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,gCAAgC;IAC5E,CAAC;SAAM,IAAI,IAAA,qBAAa,EAAI,IAAI,CAAC,EAAE,CAAC;QAClC,OAAO,YAAY,CAAI,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,2BAA2B;IAC7E,CAAC;SAAM,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,CAAC,qBAAqB;IACpC,CAAC;SAAM,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE,CAAC;QACtC,OAAO,YAAY,CAAI,IAAI,EAAE,IAAe,CAAC,CAAC;IAChD,CAAC;SAAM,CAAC;QACN,OAAO,YAAY,CAAI,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,sDAAsD;IAClG,CAAC;AACH,CAAC;AAaD;;;;;;GAMG;AACH,SAAS,YAAY,CAAI,IAAqB,EAAE,MAA6B;IAC3E,MAAM,WAAW,GAAG,IAAA,qBAAY,EAAC,MAAM,EAAE,2CAA2C,CAAC,CAAC;IACtF,IAAI,UAAU,GAAW,CAAC,CAAC;IAC3B,OAAO;QACL,MAAM,EAAE,WAAW;QACnB,cAAc,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU;QAClC,cAAc,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU;QAClC,kBAAkB,EAAE,GAAG,EAAE,CAAC,IAAI;KAC/B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAI,QAAmC;IACrE,IAAI,IAAA,oBAAY,EAAC,QAAQ,CAAC,EAAE,CAAC;QACzB,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,IAAI,oBAAoB,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,kBAAkB,KAAK,UAAU,EAAE,CAAC;QACxF,OAAO,QAAQ,CAAC,kBAAkB,EAAE,CAAC;IACzC,CAAC;IACD,OAAO,QAAQ,CAAA;AACnB,CAAC"}
1
+ {"version":3,"file":"Promisor.js","sourceRoot":"","sources":["../../src/api/Promisor.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAC5H,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AAiCxE;;;;GAIG;AACH,MAAM,UAAU,KAAK,CAAI,QAAiB;IACxC,OAAO,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;AAChF,CAAC;AAYD;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CAAI,IAAa;IACvC,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAI,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,gCAAgC;IACpE,CAAC;SAAM,IAAI,aAAa,CAAI,IAAI,CAAC,EAAE,CAAC;QAClC,OAAO,IAAI,CAAI,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,2BAA2B;IACrE,CAAC;SAAM,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,CAAC,qBAAqB;IACpC,CAAC;SAAM,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE,CAAC;QACtC,OAAO,IAAI,CAAI,IAAI,EAAE,IAAiB,CAAC,CAAC,CAAC,oBAAoB;IAC/D,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,CAAI,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,sDAAsD;IAC1F,CAAC;AACH,CAAC;AAaD;;;;;;GAMG;AACH,SAAS,IAAI,CAAI,IAAa,EAAE,MAA6B;IAC3D,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,EAAE,2CAA2C,CAAC,CAAC;IACtF,IAAI,UAAU,GAAW,CAAC,CAAC;IAC3B,OAAO;QACL,MAAM,EAAE,WAAW;QACnB,cAAc,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU;QAClC,cAAc,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU;QAClC,kBAAkB,EAAE,GAAG,EAAE,CAAC,IAAI;KAC/B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,MAAM,CAAI,QAAmC;IAC3D,IAAI,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,IAAI,oBAAoB,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,kBAAkB,KAAK,UAAU,EAAE,CAAC;QAC1F,OAAO,QAAQ,CAAC,kBAAkB,EAAE,CAAC;IACvC,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { Contract } from "@jonloucks/contracts-ts/api/Contract";
2
- import { Promisor, PromisorType } from "@jonloucks/contracts-ts/api/Promisor";
3
- import { OptionalType, RequiredType, TransformType } from "@jonloucks/contracts-ts/api/Types";
2
+ import { Promisor, Type as PromisorType } from "@jonloucks/contracts-ts/api/Promisor";
3
+ import { OptionalType, RequiredType } from "@jonloucks/contracts-ts/api/Types";
4
+ import { Type as TransformType } from "@jonloucks/contracts-ts/auxiliary/Transform";
4
5
  /**
5
6
  * Helper methods for creating and chaining Promisors used for Contracts.bind().
6
7
  */
@@ -1 +1 @@
1
- {"version":3,"file":"PromisorFactory.d.ts","sourceRoot":"","sources":["../../src/api/PromisorFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAE9E,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAkB,MAAM,mCAAmC,CAAC;AAE9G;;GAEG;AACH,MAAM,WAAW,eAAe;IAE9B;;;;;;OAMG;IACH,WAAW,CAAC,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAExE;;;;;;;;OAQG;IACH,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzE;;;;;;;OAOG;IACH,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzE;;;;;;;;;OASG;IACH,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;CAC7G;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,QAAQ,EAAE,OAAO,GAAG,QAAQ,IAAI,YAAY,CAAC,eAAe,CAAC,CAElF;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,eAAe,CAI7C,CAAC"}
1
+ {"version":3,"file":"PromisorFactory.d.ts","sourceRoot":"","sources":["../../src/api/PromisorFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,IAAI,IAAI,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAEtF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAkB,MAAM,mCAAmC,CAAC;AAC/F,OAAO,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,6CAA6C,CAAC;AACpF;;GAEG;AACH,MAAM,WAAW,eAAe;IAE9B;;;;;;OAMG;IACH,WAAW,CAAC,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAExE;;;;;;;;OAQG;IACH,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzE;;;;;;;OAOG;IACH,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzE;;;;;;;;;OASG;IACH,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;CAC7G;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,QAAQ,EAAE,OAAO,GAAG,QAAQ,IAAI,YAAY,CAAC,eAAe,CAAC,CAElF;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,eAAe,CAI7C,CAAC"}
@@ -1,22 +1,18 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CONTRACT = void 0;
4
- exports.guard = guard;
5
- const RatifiedContract_1 = require("@jonloucks/contracts-ts/api/RatifiedContract");
6
- const Types_1 = require("@jonloucks/contracts-ts/api/Types");
1
+ import { create as createContract } from "@jonloucks/contracts-ts/api/RatifiedContract";
2
+ import { guardFunctions } from "@jonloucks/contracts-ts/api/Types";
7
3
  /**
8
4
  * Type guard for PromisorFactory
9
5
  *
10
6
  * @param value the value to check
11
7
  * @return true if value is PromisorFactory, false otherwise
12
8
  */
13
- function guard(instance) {
14
- return (0, Types_1.guardFunctions)(instance, 'createExtractor', 'createLifeCycle', 'createSingleton', 'createValue');
9
+ export function guard(instance) {
10
+ return guardFunctions(instance, 'createExtractor', 'createLifeCycle', 'createSingleton', 'createValue');
15
11
  }
16
12
  /**
17
13
  * The Contract for PromisorFactory implementation.
18
14
  */
19
- exports.CONTRACT = (0, RatifiedContract_1.create)({
15
+ export const CONTRACT = createContract({
20
16
  test: guard,
21
17
  name: "PromisorFactory",
22
18
  typeName: "PromisorFactory"
@@ -1 +1 @@
1
- {"version":3,"file":"PromisorFactory.js","sourceRoot":"","sources":["../../src/api/PromisorFactory.ts"],"names":[],"mappings":";;;AA2DA,sBAEC;AA3DD,mFAAwF;AACxF,6DAA8G;AAkD9G;;;;;GAKG;AACH,SAAgB,KAAK,CAAC,QAAiB;IACrC,OAAO,IAAA,sBAAc,EAAC,QAAQ,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,aAAa,CAAC,CAAC;AAC1G,CAAC;AAED;;GAEG;AACU,QAAA,QAAQ,GAA8B,IAAA,yBAAc,EAAC;IAChE,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,iBAAiB;IACvB,QAAQ,EAAE,iBAAiB;CAC5B,CAAC,CAAC"}
1
+ {"version":3,"file":"PromisorFactory.js","sourceRoot":"","sources":["../../src/api/PromisorFactory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,EAA8B,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAkD/F;;;;;GAKG;AACH,MAAM,UAAU,KAAK,CAAC,QAAiB;IACrC,OAAO,cAAc,CAAC,QAAQ,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,aAAa,CAAC,CAAC;AAC1G,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAA8B,cAAc,CAAC;IAChE,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,iBAAiB;IACvB,QAAQ,EAAE,iBAAiB;CAC5B,CAAC,CAAC"}
@@ -1,17 +1,12 @@
1
- "use strict";
2
1
  var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
2
  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
3
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
5
4
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
5
  };
7
6
  var _a, _RatifiedContract_SECRET, _RatifiedContract_secret;
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.create = create;
10
- exports.isRatifiedContract = isRatifiedContract;
11
- exports.isRatifiableConfig = isRatifiableConfig;
12
- const BasicContract_1 = require("@jonloucks/contracts-ts/api/BasicContract");
13
- const ContractException_1 = require("@jonloucks/contracts-ts/api/ContractException");
14
- const Types_1 = require("@jonloucks/contracts-ts/api/Types");
7
+ import { BasicContract } from "@jonloucks/contracts-ts/api/BasicContract";
8
+ import { ContractException } from "@jonloucks/contracts-ts/api/ContractException";
9
+ import { isNotPresent, isPresent } from "@jonloucks/contracts-ts/api/Types";
15
10
  /**
16
11
  * A RatifiedContract is a Contract that has been verified to have either a test or cast function.
17
12
  * This ensures that the contract can actually perform some form of validation or transformation.
@@ -21,7 +16,7 @@ const Types_1 = require("@jonloucks/contracts-ts/api/Types");
21
16
  * @param config the configuration for the RatifiedContract
22
17
  * @returns the created RatifiedContract
23
18
  */
24
- function create(config) {
19
+ export function create(config) {
25
20
  return RatifiedContract.create(config);
26
21
  }
27
22
  /**
@@ -29,7 +24,7 @@ function create(config) {
29
24
  * @param instance the instance to check
30
25
  * @returns true if the instance is a RatifiedContract, false otherwise
31
26
  */
32
- function isRatifiedContract(instance) {
27
+ export function isRatifiedContract(instance) {
33
28
  return RatifiedContract.isRatifiedContract(instance);
34
29
  }
35
30
  /**
@@ -38,8 +33,8 @@ function isRatifiedContract(instance) {
38
33
  * @param config the configuration to check
39
34
  * @returns true if the configuration is ratifiable, false otherwise
40
35
  */
41
- function isRatifiableConfig(config) {
42
- return (0, Types_1.isPresent)(config) && (0, Types_1.isPresent)(config.test);
36
+ export function isRatifiableConfig(config) {
37
+ return isPresent(config) && isPresent(config.test);
43
38
  }
44
39
  /**
45
40
  * A RatifiedContract is a Contract that has been verified to have either a test or cast function.
@@ -47,7 +42,7 @@ function isRatifiableConfig(config) {
47
42
  *
48
43
  * @param <T> the type of deliverable for this Contract
49
44
  */
50
- class RatifiedContract extends BasicContract_1.BasicContract {
45
+ class RatifiedContract extends BasicContract {
51
46
  /**
52
47
  * Create a contract derived from the given configuration
53
48
  *
@@ -59,7 +54,7 @@ class RatifiedContract extends BasicContract_1.BasicContract {
59
54
  return new _a(config);
60
55
  }
61
56
  static isRatifiedContract(instance) {
62
- if ((0, Types_1.isNotPresent)(instance)) {
57
+ if (isNotPresent(instance)) {
63
58
  return false;
64
59
  }
65
60
  try {
@@ -82,7 +77,7 @@ class RatifiedContract extends BasicContract_1.BasicContract {
82
77
  */
83
78
  integrityCheck() {
84
79
  if (__classPrivateFieldGet(this, _RatifiedContract_secret, "f") !== __classPrivateFieldGet(_a, _a, "f", _RatifiedContract_SECRET)) {
85
- throw new ContractException_1.ContractException('Integrity violation detected. This is not permitted.');
80
+ throw new ContractException('Integrity violation detected. This is not permitted.');
86
81
  }
87
82
  }
88
83
  constructor(config) {
@@ -95,7 +90,7 @@ class RatifiedContract extends BasicContract_1.BasicContract {
95
90
  if (isRatifiableConfig(config)) {
96
91
  return config;
97
92
  }
98
- throw new ContractException_1.ContractException("RatifiedContract requires either a test or cast function must be present.");
93
+ throw new ContractException("RatifiedContract requires either a test or cast function must be present.");
99
94
  }
100
95
  }
101
96
  _a = RatifiedContract, _RatifiedContract_secret = new WeakMap();
@@ -1 +1 @@
1
- {"version":3,"file":"RatifiedContract.js","sourceRoot":"","sources":["../../src/api/RatifiedContract.ts"],"names":[],"mappings":";;;;;;;;AAcA,wBAEC;AAOD,gDAEC;AAQD,gDAEC;AAnCD,6EAA0E;AAE1E,qFAAkF;AAClF,6DAAwG;AAExG;;;;;;;;GAQG;AACH,SAAgB,MAAM,CAAI,MAA8B;IACtD,OAAO,gBAAgB,CAAC,MAAM,CAAI,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC,QAAiB;IAClD,OAAO,gBAAgB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;AACvD,CAAC;AAED;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAI,MAAgC;IACpE,OAAO,IAAA,iBAAS,EAAC,MAAM,CAAC,IAAI,IAAA,iBAAS,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACrD,CAAC;AAED;;;;;GAKG;AACH,MAAM,gBAAoB,SAAQ,6BAAgB;IAEhD;;;;;;QAMI;IACJ,MAAM,CAAC,MAAM,CAAI,MAA8B;QAC7C,OAAO,IAAI,EAAgB,CAAI,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,QAAiB;QACzC,IAAI,IAAA,oBAAY,EAAC,QAAQ,CAAC,EAAE,CAAC;YAC3B,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,QAAqC,CAAC;YACxD,OAAO,uBAAA,SAAS,gCAAQ,KAAK,uBAAA,EAAgB,oCAAQ,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACK,cAAc;QACpB,IAAI,uBAAA,IAAI,gCAAQ,KAAK,uBAAA,EAAgB,oCAAQ,EAAE,CAAC;YAC9C,MAAM,IAAI,qCAAiB,CAAC,sDAAsD,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IAED,YAAoB,MAAgC;QAClD,KAAK,CAAC,EAAgB,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;QAaxC,mCAAkB,uBAAA,EAAgB,oCAAQ,EAAC;QAZlD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpB,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAEO,MAAM,CAAC,cAAc,CAAI,MAAgC;QAC/D,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/B,OAAO,MAAiC,CAAC;QAC3C,CAAC;QACD,MAAM,IAAI,qCAAiB,CAAC,2EAA2E,CAAC,CAAC;IAC3G,CAAC;;;AAEe,oCAAkB,MAAM,CAAC,UAAU,CAAC,EAA7B,CAA8B"}
1
+ {"version":3,"file":"RatifiedContract.js","sourceRoot":"","sources":["../../src/api/RatifiedContract.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAE1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AAClF,OAAO,EAA8B,YAAY,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAExG;;;;;;;;GAQG;AACH,MAAM,UAAU,MAAM,CAAI,MAA8B;IACtD,OAAO,gBAAgB,CAAC,MAAM,CAAI,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAiB;IAClD,OAAO,gBAAgB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;AACvD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAI,MAAgC;IACpE,OAAO,SAAS,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACrD,CAAC;AAED;;;;;GAKG;AACH,MAAM,gBAAoB,SAAQ,aAAgB;IAEhD;;;;;;QAMI;IACJ,MAAM,CAAC,MAAM,CAAI,MAA8B;QAC7C,OAAO,IAAI,EAAgB,CAAI,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,QAAiB;QACzC,IAAI,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3B,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,QAAqC,CAAC;YACxD,OAAO,uBAAA,SAAS,gCAAQ,KAAK,uBAAA,EAAgB,oCAAQ,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACK,cAAc;QACpB,IAAI,uBAAA,IAAI,gCAAQ,KAAK,uBAAA,EAAgB,oCAAQ,EAAE,CAAC;YAC9C,MAAM,IAAI,iBAAiB,CAAC,sDAAsD,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IAED,YAAoB,MAAgC;QAClD,KAAK,CAAC,EAAgB,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;QAaxC,mCAAkB,uBAAA,EAAgB,oCAAQ,EAAC;QAZlD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpB,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAEO,MAAM,CAAC,cAAc,CAAI,MAAgC;QAC/D,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/B,OAAO,MAAiC,CAAC;QAC3C,CAAC;QACD,MAAM,IAAI,iBAAiB,CAAC,2EAA2E,CAAC,CAAC;IAC3G,CAAC;;;AAEe,oCAAkB,MAAM,CAAC,UAAU,CAAC,EAA7B,CAA8B"}