gingersnap 0.22.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 (251) hide show
  1. package/_virtual/_tslib.cjs +102 -0
  2. package/_virtual/_tslib.mjs +93 -0
  3. package/data/AtomicValue.d.ts +15 -0
  4. package/data/bus.cjs +179 -0
  5. package/data/bus.d.ts +72 -0
  6. package/data/bus.mjs +177 -0
  7. package/data/decoders/index.d.ts +4 -0
  8. package/data/decoders/json.cjs +12 -0
  9. package/data/decoders/json.d.ts +7 -0
  10. package/data/decoders/json.mjs +10 -0
  11. package/data/decoders/msgpack.cjs +14 -0
  12. package/data/decoders/msgpack.d.ts +7 -0
  13. package/data/decoders/msgpack.mjs +12 -0
  14. package/data/decoders/protobuf.d.ts +13 -0
  15. package/data/decoders/string.cjs +12 -0
  16. package/data/decoders/string.d.ts +7 -0
  17. package/data/decoders/string.mjs +10 -0
  18. package/data/decoders/type.d.ts +7 -0
  19. package/data/decoders.cjs +11 -0
  20. package/data/decoders.mjs +3 -0
  21. package/data/model/credentials.cjs +114 -0
  22. package/data/model/credentials.d.ts +61 -0
  23. package/data/model/credentials.mjs +109 -0
  24. package/data/model/extra.cjs +88 -0
  25. package/data/model/extra.d.ts +5 -0
  26. package/data/model/extra.mjs +66 -0
  27. package/data/model/index.d.ts +6 -0
  28. package/data/model/model.cjs +541 -0
  29. package/data/model/model.d.ts +207 -0
  30. package/data/model/model.mjs +518 -0
  31. package/data/model/plugin.cjs +96 -0
  32. package/data/model/plugin.d.ts +38 -0
  33. package/data/model/plugin.mjs +72 -0
  34. package/data/model/property.cjs +310 -0
  35. package/data/model/property.d.ts +83 -0
  36. package/data/model/property.mjs +278 -0
  37. package/data/model/types.cjs +32 -0
  38. package/data/model/types.d.ts +28 -0
  39. package/data/model/types.mjs +32 -0
  40. package/data/model.cjs +43 -0
  41. package/data/model.mjs +6 -0
  42. package/data/signal.cjs +47 -0
  43. package/data/signal.d.ts +17 -0
  44. package/data/signal.mjs +45 -0
  45. package/data/store/index.d.ts +4 -0
  46. package/data/store/json.cjs +58 -0
  47. package/data/store/json.d.ts +18 -0
  48. package/data/store/json.mjs +56 -0
  49. package/data/store/manager.cjs +206 -0
  50. package/data/store/manager.d.ts +44 -0
  51. package/data/store/manager.mjs +203 -0
  52. package/data/store/web.cjs +92 -0
  53. package/data/store/web.d.ts +25 -0
  54. package/data/store/web.mjs +89 -0
  55. package/data/value.cjs +66 -0
  56. package/data/value.mjs +64 -0
  57. package/data-structures/array/CyclicalList.cjs +57 -0
  58. package/data-structures/array/CyclicalList.d.ts +12 -0
  59. package/data-structures/array/CyclicalList.mjs +55 -0
  60. package/data-structures/array/Pair.cjs +30 -0
  61. package/data-structures/array/Pair.d.ts +17 -0
  62. package/data-structures/array/Pair.mjs +27 -0
  63. package/data-structures/array/Stack.cjs +96 -0
  64. package/data-structures/array/Stack.d.ts +41 -0
  65. package/data-structures/array/Stack.mjs +94 -0
  66. package/data-structures/array/Triple.cjs +34 -0
  67. package/data-structures/array/Triple.d.ts +19 -0
  68. package/data-structures/array/Triple.mjs +31 -0
  69. package/data-structures/array/Tuple.d.ts +8 -0
  70. package/data-structures/array/index.d.ts +5 -0
  71. package/data-structures/array.cjs +15 -0
  72. package/data-structures/array.mjs +4 -0
  73. package/data-structures/object/BufferQueue.cjs +98 -0
  74. package/data-structures/object/BufferQueue.d.ts +21 -0
  75. package/data-structures/object/BufferQueue.mjs +77 -0
  76. package/data-structures/object/CyclicalObject.cjs +155 -0
  77. package/data-structures/object/CyclicalObject.d.ts +74 -0
  78. package/data-structures/object/CyclicalObject.mjs +134 -0
  79. package/data-structures/object/Queue.cjs +178 -0
  80. package/data-structures/object/Queue.d.ts +31 -0
  81. package/data-structures/object/Queue.mjs +176 -0
  82. package/data-structures/object/SimpleQueue.cjs +53 -0
  83. package/data-structures/object/SimpleQueue.d.ts +13 -0
  84. package/data-structures/object/SimpleQueue.mjs +51 -0
  85. package/data-structures/object/TimeableObject.cjs +73 -0
  86. package/data-structures/object/TimeableObject.d.ts +30 -0
  87. package/data-structures/object/TimeableObject.mjs +71 -0
  88. package/data-structures/object/WaitableObject.cjs +61 -0
  89. package/data-structures/object/WaitableObject.d.ts +29 -0
  90. package/data-structures/object/WaitableObject.mjs +59 -0
  91. package/data-structures/object/WatchableObject.cjs +251 -0
  92. package/data-structures/object/WatchableObject.d.ts +88 -0
  93. package/data-structures/object/WatchableObject.mjs +230 -0
  94. package/data-structures/object/index.d.ts +7 -0
  95. package/data-structures/object.cjs +23 -0
  96. package/data-structures/object.mjs +7 -0
  97. package/errors/AbortError.cjs +9 -0
  98. package/errors/AbortError.d.ts +5 -0
  99. package/errors/AbortError.mjs +7 -0
  100. package/errors/CallExecutionError.cjs +13 -0
  101. package/errors/CallExecutionError.d.ts +7 -0
  102. package/errors/CallExecutionError.mjs +11 -0
  103. package/errors/FutureCancelled.cjs +11 -0
  104. package/errors/FutureCancelled.d.ts +6 -0
  105. package/errors/FutureCancelled.mjs +9 -0
  106. package/errors/FutureError.cjs +11 -0
  107. package/errors/FutureError.d.ts +6 -0
  108. package/errors/FutureError.mjs +9 -0
  109. package/errors/IllegalArgumentsError.cjs +13 -0
  110. package/errors/IllegalArgumentsError.d.ts +7 -0
  111. package/errors/IllegalArgumentsError.mjs +11 -0
  112. package/errors/IllegalOperationError.cjs +6 -0
  113. package/errors/IllegalOperationError.d.ts +2 -0
  114. package/errors/IllegalOperationError.mjs +4 -0
  115. package/errors/InvalidType.cjs +6 -0
  116. package/errors/InvalidType.d.ts +2 -0
  117. package/errors/InvalidType.mjs +4 -0
  118. package/errors/InvalidValue.cjs +11 -0
  119. package/errors/InvalidValue.d.ts +4 -0
  120. package/errors/InvalidValue.mjs +9 -0
  121. package/errors/MissingArgumentsError.cjs +13 -0
  122. package/errors/MissingArgumentsError.d.ts +7 -0
  123. package/errors/MissingArgumentsError.mjs +11 -0
  124. package/errors/NetworkError.cjs +13 -0
  125. package/errors/NetworkError.d.ts +8 -0
  126. package/errors/NetworkError.mjs +11 -0
  127. package/errors/NoSuchElement.cjs +6 -0
  128. package/errors/NoSuchElement.d.ts +2 -0
  129. package/errors/NoSuchElement.mjs +4 -0
  130. package/errors/NotImplemented.cjs +9 -0
  131. package/errors/NotImplemented.d.ts +5 -0
  132. package/errors/NotImplemented.mjs +7 -0
  133. package/errors/ParsingError.cjs +10 -0
  134. package/errors/ParsingError.d.ts +5 -0
  135. package/errors/ParsingError.mjs +8 -0
  136. package/errors/QueueEmptyError.cjs +6 -0
  137. package/errors/QueueEmptyError.d.ts +2 -0
  138. package/errors/QueueEmptyError.mjs +4 -0
  139. package/errors/QueueFullError.cjs +6 -0
  140. package/errors/QueueFullError.d.ts +2 -0
  141. package/errors/QueueFullError.mjs +4 -0
  142. package/errors/StackEmptyError.cjs +6 -0
  143. package/errors/StackEmptyError.d.ts +2 -0
  144. package/errors/StackEmptyError.mjs +4 -0
  145. package/errors/StackFullError.cjs +6 -0
  146. package/errors/StackFullError.d.ts +2 -0
  147. package/errors/StackFullError.mjs +4 -0
  148. package/errors/StreamEnded.cjs +6 -0
  149. package/errors/StreamEnded.d.ts +2 -0
  150. package/errors/StreamEnded.mjs +4 -0
  151. package/errors/TimeoutError.cjs +11 -0
  152. package/errors/TimeoutError.d.ts +6 -0
  153. package/errors/TimeoutError.mjs +9 -0
  154. package/errors/ValueDestroyedError.cjs +6 -0
  155. package/errors/ValueDestroyedError.d.ts +2 -0
  156. package/errors/ValueDestroyedError.mjs +4 -0
  157. package/errors/VerificationError.cjs +9 -0
  158. package/errors/VerificationError.d.ts +5 -0
  159. package/errors/VerificationError.mjs +7 -0
  160. package/errors/index.d.ts +18 -0
  161. package/errors.cjs +41 -0
  162. package/errors.mjs +18 -0
  163. package/files.cjs +201 -0
  164. package/files.d.ts +31 -0
  165. package/files.mjs +180 -0
  166. package/functools/index.d.ts +31 -0
  167. package/functools.cjs +371 -0
  168. package/functools.mjs +334 -0
  169. package/future/future.cjs +570 -0
  170. package/future/future.d.ts +208 -0
  171. package/future/future.mjs +548 -0
  172. package/future/group.cjs +180 -0
  173. package/future/group.d.ts +82 -0
  174. package/future/group.mjs +159 -0
  175. package/future/index.d.ts +3 -0
  176. package/future/result.cjs +19 -0
  177. package/future/result.d.ts +18 -0
  178. package/future/result.mjs +17 -0
  179. package/future.cjs +11 -0
  180. package/future.mjs +3 -0
  181. package/managers/context.d.ts +8 -0
  182. package/managers/index.d.ts +1 -0
  183. package/managers.cjs +2 -0
  184. package/managers.mjs +1 -0
  185. package/mocks.cjs +301 -0
  186. package/mocks.d.ts +125 -0
  187. package/mocks.mjs +293 -0
  188. package/networking/EventSourceService.cjs +104 -0
  189. package/networking/EventSourceService.d.ts +11 -0
  190. package/networking/EventSourceService.mjs +83 -0
  191. package/networking/NetworkService.cjs +394 -0
  192. package/networking/NetworkService.d.ts +97 -0
  193. package/networking/NetworkService.mjs +373 -0
  194. package/networking/SocketService.cjs +218 -0
  195. package/networking/SocketService.d.ts +23 -0
  196. package/networking/SocketService.mjs +197 -0
  197. package/networking/decorators/index.d.ts +4 -0
  198. package/networking/decorators/options.cjs +289 -0
  199. package/networking/decorators/options.d.ts +148 -0
  200. package/networking/decorators/options.mjs +242 -0
  201. package/networking/decorators/requests.cjs +80 -0
  202. package/networking/decorators/requests.d.ts +34 -0
  203. package/networking/decorators/requests.mjs +52 -0
  204. package/networking/decorators/socket.cjs +81 -0
  205. package/networking/decorators/socket.d.ts +13 -0
  206. package/networking/decorators/socket.mjs +51 -0
  207. package/networking/http.cjs +69 -0
  208. package/networking/http.d.ts +66 -0
  209. package/networking/http.mjs +69 -0
  210. package/networking/index.d.ts +39 -0
  211. package/networking/request.cjs +18 -0
  212. package/networking/request.d.ts +9 -0
  213. package/networking/request.mjs +16 -0
  214. package/networking/types.cjs +37 -0
  215. package/networking/types.d.ts +132 -0
  216. package/networking/types.mjs +35 -0
  217. package/networking.cjs +91 -0
  218. package/networking.mjs +33 -0
  219. package/package.json +1 -0
  220. package/reflection/injector.cjs +43 -0
  221. package/reflection/injector.d.ts +3 -0
  222. package/reflection/injector.mjs +40 -0
  223. package/socket.cjs +239 -0
  224. package/socket.d.ts +65 -0
  225. package/socket.mjs +237 -0
  226. package/store.cjs +12 -0
  227. package/store.mjs +3 -0
  228. package/stream/call.cjs +157 -0
  229. package/stream/call.d.ts +66 -0
  230. package/stream/call.mjs +154 -0
  231. package/stream/collector.cjs +217 -0
  232. package/stream/collector.d.ts +14 -0
  233. package/stream/collector.mjs +215 -0
  234. package/stream/index.d.ts +257 -0
  235. package/stream/observable.cjs +110 -0
  236. package/stream/observable.d.ts +65 -0
  237. package/stream/observable.mjs +106 -0
  238. package/stream/state.cjs +10 -0
  239. package/stream/state.d.ts +5 -0
  240. package/stream/state.mjs +8 -0
  241. package/stream.cjs +1153 -0
  242. package/stream.mjs +1132 -0
  243. package/synchronize.cjs +106 -0
  244. package/synchronize.d.ts +54 -0
  245. package/synchronize.mjs +103 -0
  246. package/typing/types.d.ts +24 -0
  247. package/typing.cjs +2 -0
  248. package/typing.mjs +1 -0
  249. package/utils/parser.cjs +37 -0
  250. package/utils/parser.d.ts +7 -0
  251. package/utils/parser.mjs +16 -0
@@ -0,0 +1,66 @@
1
+ /**
2
+ * HTTP Status codes as ENUM values
3
+ */
4
+ export declare enum HTTPStatus {
5
+ OFFLINE = 0,
6
+ CONTINUE = 100,
7
+ SWITCHING_PROTOCOLS = 101,
8
+ PROCESSING = 102,
9
+ EARLY_HINTS = 103,
10
+ OK = 200,
11
+ CREATED = 201,
12
+ ACCEPTED = 202,
13
+ NON_AUTHORITATIVE_INFO = 203,
14
+ NO_CONTENT = 204,
15
+ RESET_CONTENT = 205,
16
+ PARTIAL_CONTENT = 206,
17
+ MULTI_STATUS = 207,
18
+ ALREADY_REPORTED = 208,
19
+ IM_USED = 209,
20
+ MULTIPLE_CHOICES = 300,
21
+ MOVED_PERMANENTLY = 301,
22
+ FOUND = 302,
23
+ SEE_OTHER = 303,
24
+ NOT_MODIFIED = 304,
25
+ USE_PROXY = 305,
26
+ SWITCH_PROXY = 306,
27
+ TEMPORARY_REDIRECT = 307,
28
+ PERMANENT_REDIRECT = 308,
29
+ BAD_REQUEST = 400,
30
+ UNAUTHORIZED = 401,
31
+ PAYMENT_REQUIRED = 402,
32
+ FORBIDDEN = 403,
33
+ NOT_FOUND = 404,
34
+ METHOD_NOT_ALLOWED = 405,
35
+ NOT_ACCEPTABLE = 406,
36
+ PROXY_AUTH_REQUIRED = 407,
37
+ REQUEST_TIMEOUT = 408,
38
+ CONFLICT = 409,
39
+ GONE = 410,
40
+ LENGTH_REQUIRED = 411,
41
+ PRECONDITION_FAILED = 412,
42
+ PAYLOAD_TOO_LARGE = 413,
43
+ URI_TOO_LONG = 414,
44
+ UNSUPPORTED_MEDIA_TYPE = 415,
45
+ RANGE_NOT_SATISFIABLE = 416,
46
+ EXPECTATION_FAILED = 417,
47
+ MISDIRECTED_REQUEST = 421,
48
+ UNPROCESSABLE_ENTITY = 422,
49
+ LOCKED = 423,
50
+ FAILED_DEPENDENCY = 424,
51
+ TOO_EARLY = 425,
52
+ UPGRADE_REQUIRED = 426,
53
+ PRECONDITION_FAILURE = 428,
54
+ TOO_MANY_REQUESTS = 429,
55
+ REQUEST_HEADER_FIELD_TOO_LARGE = 431,
56
+ INTERNAL_SERVER_ERROR = 500,
57
+ NOT_IMPLEMENTED = 501,
58
+ BAD_GATEWAY = 502,
59
+ SERVICE_UNAVAILABLE = 503,
60
+ GATEWAY_TIMEOUT = 504,
61
+ HTTP_VERSION_NOT_SUPPORTED = 505,
62
+ INSUFFICIENT_STORAGE = 507,
63
+ LOOP_DETECTED = 508,
64
+ NOT_EXTENDED = 510,
65
+ NETWORK_AUTH_REQUIRED = 511
66
+ }
@@ -0,0 +1,69 @@
1
+ /**
2
+ * HTTP Status codes as ENUM values
3
+ */
4
+ var HTTPStatus;
5
+ (function (HTTPStatus) {
6
+ HTTPStatus[HTTPStatus["OFFLINE"] = 0] = "OFFLINE";
7
+ HTTPStatus[HTTPStatus["CONTINUE"] = 100] = "CONTINUE";
8
+ HTTPStatus[HTTPStatus["SWITCHING_PROTOCOLS"] = 101] = "SWITCHING_PROTOCOLS";
9
+ HTTPStatus[HTTPStatus["PROCESSING"] = 102] = "PROCESSING";
10
+ HTTPStatus[HTTPStatus["EARLY_HINTS"] = 103] = "EARLY_HINTS";
11
+ HTTPStatus[HTTPStatus["OK"] = 200] = "OK";
12
+ HTTPStatus[HTTPStatus["CREATED"] = 201] = "CREATED";
13
+ HTTPStatus[HTTPStatus["ACCEPTED"] = 202] = "ACCEPTED";
14
+ HTTPStatus[HTTPStatus["NON_AUTHORITATIVE_INFO"] = 203] = "NON_AUTHORITATIVE_INFO";
15
+ HTTPStatus[HTTPStatus["NO_CONTENT"] = 204] = "NO_CONTENT";
16
+ HTTPStatus[HTTPStatus["RESET_CONTENT"] = 205] = "RESET_CONTENT";
17
+ HTTPStatus[HTTPStatus["PARTIAL_CONTENT"] = 206] = "PARTIAL_CONTENT";
18
+ HTTPStatus[HTTPStatus["MULTI_STATUS"] = 207] = "MULTI_STATUS";
19
+ HTTPStatus[HTTPStatus["ALREADY_REPORTED"] = 208] = "ALREADY_REPORTED";
20
+ HTTPStatus[HTTPStatus["IM_USED"] = 209] = "IM_USED";
21
+ HTTPStatus[HTTPStatus["MULTIPLE_CHOICES"] = 300] = "MULTIPLE_CHOICES";
22
+ HTTPStatus[HTTPStatus["MOVED_PERMANENTLY"] = 301] = "MOVED_PERMANENTLY";
23
+ HTTPStatus[HTTPStatus["FOUND"] = 302] = "FOUND";
24
+ HTTPStatus[HTTPStatus["SEE_OTHER"] = 303] = "SEE_OTHER";
25
+ HTTPStatus[HTTPStatus["NOT_MODIFIED"] = 304] = "NOT_MODIFIED";
26
+ HTTPStatus[HTTPStatus["USE_PROXY"] = 305] = "USE_PROXY";
27
+ HTTPStatus[HTTPStatus["SWITCH_PROXY"] = 306] = "SWITCH_PROXY";
28
+ HTTPStatus[HTTPStatus["TEMPORARY_REDIRECT"] = 307] = "TEMPORARY_REDIRECT";
29
+ HTTPStatus[HTTPStatus["PERMANENT_REDIRECT"] = 308] = "PERMANENT_REDIRECT";
30
+ HTTPStatus[HTTPStatus["BAD_REQUEST"] = 400] = "BAD_REQUEST";
31
+ HTTPStatus[HTTPStatus["UNAUTHORIZED"] = 401] = "UNAUTHORIZED";
32
+ HTTPStatus[HTTPStatus["PAYMENT_REQUIRED"] = 402] = "PAYMENT_REQUIRED";
33
+ HTTPStatus[HTTPStatus["FORBIDDEN"] = 403] = "FORBIDDEN";
34
+ HTTPStatus[HTTPStatus["NOT_FOUND"] = 404] = "NOT_FOUND";
35
+ HTTPStatus[HTTPStatus["METHOD_NOT_ALLOWED"] = 405] = "METHOD_NOT_ALLOWED";
36
+ HTTPStatus[HTTPStatus["NOT_ACCEPTABLE"] = 406] = "NOT_ACCEPTABLE";
37
+ HTTPStatus[HTTPStatus["PROXY_AUTH_REQUIRED"] = 407] = "PROXY_AUTH_REQUIRED";
38
+ HTTPStatus[HTTPStatus["REQUEST_TIMEOUT"] = 408] = "REQUEST_TIMEOUT";
39
+ HTTPStatus[HTTPStatus["CONFLICT"] = 409] = "CONFLICT";
40
+ HTTPStatus[HTTPStatus["GONE"] = 410] = "GONE";
41
+ HTTPStatus[HTTPStatus["LENGTH_REQUIRED"] = 411] = "LENGTH_REQUIRED";
42
+ HTTPStatus[HTTPStatus["PRECONDITION_FAILED"] = 412] = "PRECONDITION_FAILED";
43
+ HTTPStatus[HTTPStatus["PAYLOAD_TOO_LARGE"] = 413] = "PAYLOAD_TOO_LARGE";
44
+ HTTPStatus[HTTPStatus["URI_TOO_LONG"] = 414] = "URI_TOO_LONG";
45
+ HTTPStatus[HTTPStatus["UNSUPPORTED_MEDIA_TYPE"] = 415] = "UNSUPPORTED_MEDIA_TYPE";
46
+ HTTPStatus[HTTPStatus["RANGE_NOT_SATISFIABLE"] = 416] = "RANGE_NOT_SATISFIABLE";
47
+ HTTPStatus[HTTPStatus["EXPECTATION_FAILED"] = 417] = "EXPECTATION_FAILED";
48
+ HTTPStatus[HTTPStatus["MISDIRECTED_REQUEST"] = 421] = "MISDIRECTED_REQUEST";
49
+ HTTPStatus[HTTPStatus["UNPROCESSABLE_ENTITY"] = 422] = "UNPROCESSABLE_ENTITY";
50
+ HTTPStatus[HTTPStatus["LOCKED"] = 423] = "LOCKED";
51
+ HTTPStatus[HTTPStatus["FAILED_DEPENDENCY"] = 424] = "FAILED_DEPENDENCY";
52
+ HTTPStatus[HTTPStatus["TOO_EARLY"] = 425] = "TOO_EARLY";
53
+ HTTPStatus[HTTPStatus["UPGRADE_REQUIRED"] = 426] = "UPGRADE_REQUIRED";
54
+ HTTPStatus[HTTPStatus["PRECONDITION_FAILURE"] = 428] = "PRECONDITION_FAILURE";
55
+ HTTPStatus[HTTPStatus["TOO_MANY_REQUESTS"] = 429] = "TOO_MANY_REQUESTS";
56
+ HTTPStatus[HTTPStatus["REQUEST_HEADER_FIELD_TOO_LARGE"] = 431] = "REQUEST_HEADER_FIELD_TOO_LARGE";
57
+ HTTPStatus[HTTPStatus["INTERNAL_SERVER_ERROR"] = 500] = "INTERNAL_SERVER_ERROR";
58
+ HTTPStatus[HTTPStatus["NOT_IMPLEMENTED"] = 501] = "NOT_IMPLEMENTED";
59
+ HTTPStatus[HTTPStatus["BAD_GATEWAY"] = 502] = "BAD_GATEWAY";
60
+ HTTPStatus[HTTPStatus["SERVICE_UNAVAILABLE"] = 503] = "SERVICE_UNAVAILABLE";
61
+ HTTPStatus[HTTPStatus["GATEWAY_TIMEOUT"] = 504] = "GATEWAY_TIMEOUT";
62
+ HTTPStatus[HTTPStatus["HTTP_VERSION_NOT_SUPPORTED"] = 505] = "HTTP_VERSION_NOT_SUPPORTED";
63
+ HTTPStatus[HTTPStatus["INSUFFICIENT_STORAGE"] = 507] = "INSUFFICIENT_STORAGE";
64
+ HTTPStatus[HTTPStatus["LOOP_DETECTED"] = 508] = "LOOP_DETECTED";
65
+ HTTPStatus[HTTPStatus["NOT_EXTENDED"] = 510] = "NOT_EXTENDED";
66
+ HTTPStatus[HTTPStatus["NETWORK_AUTH_REQUIRED"] = 511] = "NETWORK_AUTH_REQUIRED";
67
+ })(HTTPStatus || (HTTPStatus = {}));
68
+
69
+ export { HTTPStatus };
@@ -0,0 +1,39 @@
1
+ import { Decoder } from "../data/decoders";
2
+ import { NetworkService } from "./NetworkService";
3
+ import { CacheManager } from "../data/store/manager";
4
+ export { NetworkService } from "./NetworkService";
5
+ export { WebSocketService } from "./SocketService";
6
+ export { EventSourceService } from "./EventSourceService";
7
+ export { request } from "./request";
8
+ export { GET, PUT, POST, DELETE, PATCH, OPTIONS, HEAD, DataDecoder, Take, Skip, IgnoreCache, ReplyableStream, WriteStream, MatcherValue, MatcherKey, ReadStream, NoAuth, HeaderMap, Header, Query, Path, QueryMap, StringBody, XMLBody, JSONBody, OptionalField, Field, Part, AuthRefresher, Authenticator, ThrottleBy, Throttle, Headers, FormUrlEncoded, Multipart, NoResponse, BinaryResponse, StringResponse, XMLResponse, JSONResponse, BaseUrl, Cached, RequestReply, } from "./decorators";
9
+ export { ReplyStreamDirection, MapOfHeaders, ParamHeaders, MapOfQueries, MapOfPath, NONE, PASS } from "./types";
10
+ export * from "./http";
11
+ export interface GingerSnapProps {
12
+ baseUrl?: string;
13
+ retryLimit?: number;
14
+ decoder?: Decoder<any>;
15
+ cacheManager?: CacheManager;
16
+ [string: string]: any;
17
+ }
18
+ /**
19
+ * Core Service for creating Snap Services - services that manage network requests
20
+ */
21
+ export declare class GingerSnap {
22
+ /**
23
+ * The baseUrl used by all snap services
24
+ * @private
25
+ */
26
+ private readonly baseUrl?;
27
+ /**
28
+ * The retry limit used by all snap services
29
+ * @private
30
+ */
31
+ private readonly retryLimit;
32
+ constructor({ baseUrl, retryLimit }?: GingerSnapProps);
33
+ /**
34
+ * Creates a new instance of the provided SnapService
35
+ * @param Class A SnapService class
36
+ * @param args
37
+ */
38
+ create<T extends NetworkService>(Class: new (v: GingerSnapProps) => T, args?: GingerSnapProps): T;
39
+ }
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+
3
+ var future = require('../future/future.cjs');
4
+ require('ramda');
5
+ require('../stream.cjs');
6
+
7
+ /**
8
+ * Wraps fetch() to return a future
9
+ * @param input
10
+ * @param init
11
+ */
12
+ const request = (input, init) => future.Future.of((resolve, reject, signal) => {
13
+ fetch(input, Object.assign({ signal }, (init !== null && init !== void 0 ? init : {})))
14
+ .then(resolve)
15
+ .catch(reject);
16
+ });
17
+
18
+ exports.request = request;
@@ -0,0 +1,9 @@
1
+ import { Future } from "../future";
2
+ type RequestInitDetails = Omit<RequestInit, "signal">;
3
+ /**
4
+ * Wraps fetch() to return a future
5
+ * @param input
6
+ * @param init
7
+ */
8
+ export declare const request: (input: RequestInfo | URL, init?: RequestInitDetails) => Future<Response>;
9
+ export {};
@@ -0,0 +1,16 @@
1
+ import { Future } from '../future/future.mjs';
2
+ import 'ramda';
3
+ import '../stream.mjs';
4
+
5
+ /**
6
+ * Wraps fetch() to return a future
7
+ * @param input
8
+ * @param init
9
+ */
10
+ const request = (input, init) => Future.of((resolve, reject, signal) => {
11
+ fetch(input, Object.assign({ signal }, (init !== null && init !== void 0 ? init : {})))
12
+ .then(resolve)
13
+ .catch(reject);
14
+ });
15
+
16
+ export { request };
@@ -0,0 +1,37 @@
1
+ 'use strict';
2
+
3
+ exports.RequestType = void 0;
4
+ (function (RequestType) {
5
+ RequestType["GET"] = "GET";
6
+ RequestType["PUT"] = "PUT";
7
+ RequestType["POST"] = "POST";
8
+ RequestType["DELETE"] = "DELETE";
9
+ RequestType["PATCH"] = "PATCH";
10
+ RequestType["OPTIONS"] = "OPTIONS";
11
+ RequestType["HEAD"] = "HEAD";
12
+ })(exports.RequestType || (exports.RequestType = {}));
13
+ exports.ReplyStreamDirection = void 0;
14
+ (function (ReplyStreamDirection) {
15
+ ReplyStreamDirection["TO"] = "TO";
16
+ ReplyStreamDirection["FROM"] = "FROM";
17
+ ReplyStreamDirection["BI_DIRECTIONAL"] = "BI_DIRECTIONAL";
18
+ })(exports.ReplyStreamDirection || (exports.ReplyStreamDirection = {}));
19
+ exports.ResponseType = void 0;
20
+ (function (ResponseType) {
21
+ ResponseType[ResponseType["STRING"] = 1] = "STRING";
22
+ ResponseType[ResponseType["XML"] = 2] = "XML";
23
+ ResponseType[ResponseType["JSON"] = 3] = "JSON";
24
+ ResponseType[ResponseType["BINARY"] = 4] = "BINARY";
25
+ ResponseType[ResponseType["NONE"] = 5] = "NONE";
26
+ })(exports.ResponseType || (exports.ResponseType = {}));
27
+ exports.BodyType = void 0;
28
+ (function (BodyType) {
29
+ BodyType[BodyType["STRING"] = 1] = "STRING";
30
+ BodyType[BodyType["XML"] = 2] = "XML";
31
+ BodyType[BodyType["JSON"] = 3] = "JSON";
32
+ BodyType[BodyType["MULTIPART"] = 4] = "MULTIPART";
33
+ BodyType[BodyType["FORMURLENCODED"] = 5] = "FORMURLENCODED";
34
+ })(exports.BodyType || (exports.BodyType = {}));
35
+ const PASS = null;
36
+
37
+ exports.PASS = PASS;
@@ -0,0 +1,132 @@
1
+ import { Credentials } from "../data/model/credentials";
2
+ import { DataFormat } from "../data/model";
3
+ import { WaitPeriod } from "../future";
4
+ import { CachingMethod } from "./decorators";
5
+ export declare enum RequestType {
6
+ GET = "GET",
7
+ PUT = "PUT",
8
+ POST = "POST",
9
+ DELETE = "DELETE",
10
+ PATCH = "PATCH",
11
+ OPTIONS = "OPTIONS",
12
+ HEAD = "HEAD"
13
+ }
14
+ export declare enum ReplyStreamDirection {
15
+ TO = "TO",
16
+ FROM = "FROM",
17
+ BI_DIRECTIONAL = "BI_DIRECTIONAL"
18
+ }
19
+ export declare enum ResponseType {
20
+ STRING = 1,
21
+ XML = 2,
22
+ JSON = 3,
23
+ BINARY = 4,
24
+ NONE = 5
25
+ }
26
+ export declare enum BodyType {
27
+ STRING = 1,
28
+ XML = 2,
29
+ JSON = 3,
30
+ MULTIPART = 4,
31
+ FORMURLENCODED = 5
32
+ }
33
+ export interface ThrottleByProps {
34
+ waitPeriodInMs?: number;
35
+ }
36
+ interface BodyProps<T extends BodyType> {
37
+ type: T;
38
+ }
39
+ interface MultiPartBodyProps extends BodyProps<BodyType.MULTIPART> {
40
+ parts: {
41
+ [string: string]: number;
42
+ };
43
+ }
44
+ interface FormURLEncodedBodyProps extends BodyProps<BodyType.FORMURLENCODED> {
45
+ fields?: {
46
+ [string: string]: number;
47
+ };
48
+ optionalFields?: {
49
+ [string: string]: number;
50
+ };
51
+ }
52
+ interface StringBodyProps extends BodyProps<BodyType.STRING> {
53
+ parameterIndex: number;
54
+ }
55
+ interface JSONBodyProps extends BodyProps<BodyType.JSON> {
56
+ parameterIndex: number;
57
+ fields?: {
58
+ [string: string]: number;
59
+ };
60
+ optionalFields?: {
61
+ [string: string]: number;
62
+ };
63
+ }
64
+ interface XMLBodyProps extends BodyProps<BodyType.XML> {
65
+ parameterIndex: number;
66
+ }
67
+ export interface MethodConfiguration {
68
+ cache: {
69
+ duration: WaitPeriod;
70
+ persist: boolean;
71
+ method: CachingMethod;
72
+ };
73
+ authenticator?: {
74
+ type: Credentials;
75
+ global?: boolean;
76
+ };
77
+ authRefresher?: {
78
+ type: Credentials;
79
+ global?: boolean;
80
+ };
81
+ noAuth?: boolean;
82
+ requestType?: RequestType;
83
+ apiPath?: string;
84
+ headers?: MapOfHeaders;
85
+ responseType?: ResponseType;
86
+ responseClass?: any;
87
+ responseArray?: boolean;
88
+ throttle?: ThrottleByProps;
89
+ dataFormat?: DataFormat;
90
+ socketReadStream?: {
91
+ value: string | RegExp;
92
+ model: any;
93
+ keyPath: string | Array<string | number>;
94
+ array: boolean;
95
+ take?: number;
96
+ skip?: number;
97
+ ignoreCache?: boolean;
98
+ };
99
+ socketWriteStream?: boolean;
100
+ socketRequestReply?: {
101
+ guidPath: Array<string | number>;
102
+ guidGen: () => any;
103
+ objectMaxSize?: number;
104
+ expiryPeriod?: WaitPeriod;
105
+ };
106
+ customTags?: Array<{
107
+ name: string;
108
+ [string: string]: any;
109
+ }>;
110
+ parameters?: {
111
+ body?: MultiPartBodyProps | FormURLEncodedBodyProps | StringBodyProps | JSONBodyProps | XMLBodyProps;
112
+ headers?: MapOfHeaders;
113
+ queries?: MapOfQueries;
114
+ pathVariables?: MapOfPath;
115
+ };
116
+ }
117
+ export interface ServiceInternalProps {
118
+ classConfig: {
119
+ baseUrl?: string;
120
+ Decoder?: any;
121
+ };
122
+ methodConfig: {
123
+ [string: string]: MethodConfiguration;
124
+ };
125
+ }
126
+ export type MapOfHeaders = Record<string, string>;
127
+ export type ParamHeaders = Record<string, number>;
128
+ export type MapOfQueries = Record<string, number>;
129
+ export type MapOfPath = Record<string, number>;
130
+ export type NONE = null;
131
+ export declare const PASS: any;
132
+ export {};
@@ -0,0 +1,35 @@
1
+ var RequestType;
2
+ (function (RequestType) {
3
+ RequestType["GET"] = "GET";
4
+ RequestType["PUT"] = "PUT";
5
+ RequestType["POST"] = "POST";
6
+ RequestType["DELETE"] = "DELETE";
7
+ RequestType["PATCH"] = "PATCH";
8
+ RequestType["OPTIONS"] = "OPTIONS";
9
+ RequestType["HEAD"] = "HEAD";
10
+ })(RequestType || (RequestType = {}));
11
+ var ReplyStreamDirection;
12
+ (function (ReplyStreamDirection) {
13
+ ReplyStreamDirection["TO"] = "TO";
14
+ ReplyStreamDirection["FROM"] = "FROM";
15
+ ReplyStreamDirection["BI_DIRECTIONAL"] = "BI_DIRECTIONAL";
16
+ })(ReplyStreamDirection || (ReplyStreamDirection = {}));
17
+ var ResponseType;
18
+ (function (ResponseType) {
19
+ ResponseType[ResponseType["STRING"] = 1] = "STRING";
20
+ ResponseType[ResponseType["XML"] = 2] = "XML";
21
+ ResponseType[ResponseType["JSON"] = 3] = "JSON";
22
+ ResponseType[ResponseType["BINARY"] = 4] = "BINARY";
23
+ ResponseType[ResponseType["NONE"] = 5] = "NONE";
24
+ })(ResponseType || (ResponseType = {}));
25
+ var BodyType;
26
+ (function (BodyType) {
27
+ BodyType[BodyType["STRING"] = 1] = "STRING";
28
+ BodyType[BodyType["XML"] = 2] = "XML";
29
+ BodyType[BodyType["JSON"] = 3] = "JSON";
30
+ BodyType[BodyType["MULTIPART"] = 4] = "MULTIPART";
31
+ BodyType[BodyType["FORMURLENCODED"] = 5] = "FORMURLENCODED";
32
+ })(BodyType || (BodyType = {}));
33
+ const PASS = null;
34
+
35
+ export { BodyType, PASS, ReplyStreamDirection, RequestType, ResponseType };
package/networking.cjs ADDED
@@ -0,0 +1,91 @@
1
+ 'use strict';
2
+
3
+ var NetworkService = require('./networking/NetworkService.cjs');
4
+ var SocketService = require('./networking/SocketService.cjs');
5
+ var EventSourceService = require('./networking/EventSourceService.cjs');
6
+ var request = require('./networking/request.cjs');
7
+ var options = require('./networking/decorators/options.cjs');
8
+ var requests = require('./networking/decorators/requests.cjs');
9
+ var http = require('./networking/http.cjs');
10
+ var socket = require('./networking/decorators/socket.cjs');
11
+ var types = require('./networking/types.cjs');
12
+
13
+ const DEFAULT_RETRY_LIMIT = 3;
14
+ /**
15
+ * Core Service for creating Snap Services - services that manage network requests
16
+ */
17
+ class GingerSnap {
18
+ constructor({ baseUrl, retryLimit = DEFAULT_RETRY_LIMIT } = {}) {
19
+ this.baseUrl = baseUrl;
20
+ this.retryLimit = retryLimit;
21
+ }
22
+ /**
23
+ * Creates a new instance of the provided SnapService
24
+ * @param Class A SnapService class
25
+ * @param args
26
+ */
27
+ create(Class, args) {
28
+ var _a, _b;
29
+ const instance = new Class(Object.assign(Object.assign({}, (args !== null && args !== void 0 ? args : {})), { baseUrl: (_a = args === null || args === void 0 ? void 0 : args.baseUrl) !== null && _a !== void 0 ? _a : this.baseUrl, retryLimit: (_b = args === null || args === void 0 ? void 0 : args.retryLimit) !== null && _b !== void 0 ? _b : this.retryLimit }));
30
+ instance.__setup__();
31
+ return instance;
32
+ }
33
+ }
34
+
35
+ exports.NetworkService = NetworkService.NetworkService;
36
+ exports.WebSocketService = SocketService.WebSocketService;
37
+ exports.EventSourceService = EventSourceService.EventSourceService;
38
+ exports.request = request.request;
39
+ exports.AuthRefresher = options.AuthRefresher;
40
+ exports.Authenticator = options.Authenticator;
41
+ exports.BaseUrl = options.BaseUrl;
42
+ exports.BinaryResponse = options.BinaryResponse;
43
+ exports.Field = options.Field;
44
+ exports.FormUrlEncoded = options.FormUrlEncoded;
45
+ exports.Header = options.Header;
46
+ exports.HeaderMap = options.HeaderMap;
47
+ exports.Headers = options.Headers;
48
+ exports.JSONBody = options.JSONBody;
49
+ exports.JSONResponse = options.JSONResponse;
50
+ exports.Multipart = options.Multipart;
51
+ exports.NoAuth = options.NoAuth;
52
+ exports.NoResponse = options.NoResponse;
53
+ exports.OptionalField = options.OptionalField;
54
+ exports.Part = options.Part;
55
+ exports.Path = options.Path;
56
+ exports.Query = options.Query;
57
+ exports.QueryMap = options.QueryMap;
58
+ exports.StringBody = options.StringBody;
59
+ exports.StringResponse = options.StringResponse;
60
+ exports.Throttle = options.Throttle;
61
+ exports.ThrottleBy = options.ThrottleBy;
62
+ exports.XMLBody = options.XMLBody;
63
+ exports.XMLResponse = options.XMLResponse;
64
+ exports.Cached = requests.Cached;
65
+ exports.DELETE = requests.DELETE;
66
+ exports.GET = requests.GET;
67
+ exports.HEAD = requests.HEAD;
68
+ exports.OPTIONS = requests.OPTIONS;
69
+ exports.PATCH = requests.PATCH;
70
+ exports.POST = requests.POST;
71
+ exports.PUT = requests.PUT;
72
+ Object.defineProperty(exports, 'HTTPStatus', {
73
+ enumerable: true,
74
+ get: function () { return http.HTTPStatus; }
75
+ });
76
+ exports.DataDecoder = socket.DataDecoder;
77
+ exports.IgnoreCache = socket.IgnoreCache;
78
+ exports.MatcherKey = socket.MatcherKey;
79
+ exports.MatcherValue = socket.MatcherValue;
80
+ exports.ReadStream = socket.ReadStream;
81
+ exports.ReplyableStream = socket.ReplyableStream;
82
+ exports.RequestReply = socket.RequestReply;
83
+ exports.Skip = socket.Skip;
84
+ exports.Take = socket.Take;
85
+ exports.WriteStream = socket.WriteStream;
86
+ exports.PASS = types.PASS;
87
+ Object.defineProperty(exports, 'ReplyStreamDirection', {
88
+ enumerable: true,
89
+ get: function () { return types.ReplyStreamDirection; }
90
+ });
91
+ exports.GingerSnap = GingerSnap;
package/networking.mjs ADDED
@@ -0,0 +1,33 @@
1
+ export { NetworkService } from './networking/NetworkService.mjs';
2
+ export { WebSocketService } from './networking/SocketService.mjs';
3
+ export { EventSourceService } from './networking/EventSourceService.mjs';
4
+ export { request } from './networking/request.mjs';
5
+ export { AuthRefresher, Authenticator, BaseUrl, BinaryResponse, Field, FormUrlEncoded, Header, HeaderMap, Headers, JSONBody, JSONResponse, Multipart, NoAuth, NoResponse, OptionalField, Part, Path, Query, QueryMap, StringBody, StringResponse, Throttle, ThrottleBy, XMLBody, XMLResponse } from './networking/decorators/options.mjs';
6
+ export { Cached, DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT } from './networking/decorators/requests.mjs';
7
+ export { HTTPStatus } from './networking/http.mjs';
8
+ export { DataDecoder, IgnoreCache, MatcherKey, MatcherValue, ReadStream, ReplyableStream, RequestReply, Skip, Take, WriteStream } from './networking/decorators/socket.mjs';
9
+ export { PASS, ReplyStreamDirection } from './networking/types.mjs';
10
+
11
+ const DEFAULT_RETRY_LIMIT = 3;
12
+ /**
13
+ * Core Service for creating Snap Services - services that manage network requests
14
+ */
15
+ class GingerSnap {
16
+ constructor({ baseUrl, retryLimit = DEFAULT_RETRY_LIMIT } = {}) {
17
+ this.baseUrl = baseUrl;
18
+ this.retryLimit = retryLimit;
19
+ }
20
+ /**
21
+ * Creates a new instance of the provided SnapService
22
+ * @param Class A SnapService class
23
+ * @param args
24
+ */
25
+ create(Class, args) {
26
+ var _a, _b;
27
+ const instance = new Class(Object.assign(Object.assign({}, (args !== null && args !== void 0 ? args : {})), { baseUrl: (_a = args === null || args === void 0 ? void 0 : args.baseUrl) !== null && _a !== void 0 ? _a : this.baseUrl, retryLimit: (_b = args === null || args === void 0 ? void 0 : args.retryLimit) !== null && _b !== void 0 ? _b : this.retryLimit }));
28
+ instance.__setup__();
29
+ return instance;
30
+ }
31
+ }
32
+
33
+ export { GingerSnap };
package/package.json ADDED
@@ -0,0 +1 @@
1
+ {"name":"gingersnap","version":"0.22.0","description":"A general purpose library built with the aim of filling the gaps of javascript shortcomings","dependencies":{"@msgpack/msgpack":"^3.0.0-beta2","browser-or-node":"^3.0.0-pre.0","modern-isomorphic-ws":"^1.0.5","object-hash":"^3.0.0","papaparse":"^5.4.1","protobufjs":"^7.2.6","ramda":"^0.30.1","reflect-metadata":"^0.2.2","tslib":"^2.6.3","uuid":"^9.0.1","ws":"^8.16.0","x2js":"^3.4.4"},"author":"CookieNerds LLC","exports":{"./synchronize":{"import":{"types":"./synchronize.d.ts","default":"./synchronize.mjs"},"require":{"types":"./synchronize.d.ts","default":"./synchronize.cjs"}},"./mocks":{"import":{"types":"./mocks.d.ts","default":"./mocks.mjs"},"require":{"types":"./mocks.d.ts","default":"./mocks.cjs"}},"./socket":{"import":{"types":"./socket.d.ts","default":"./socket.mjs"},"require":{"types":"./socket.d.ts","default":"./socket.cjs"}},"./typing":{"import":{"types":"./typing.d.ts","default":"./typing.mjs"},"require":{"types":"./typing.d.ts","default":"./typing.cjs"}},"./stream":{"import":{"types":"./stream.d.ts","default":"./stream.mjs"},"require":{"types":"./stream.d.ts","default":"./stream.cjs"}},"./reflection/injector":{"import":{"types":"./reflection/injector.d.ts","default":"./reflection/injector.mjs"},"require":{"types":"./reflection/injector.d.ts","default":"./reflection/injector.cjs"}},"./stream/call":{"import":{"types":"./stream/call.d.ts","default":"./stream/call.mjs"},"require":{"types":"./stream/call.d.ts","default":"./stream/call.cjs"}},"./stream/state":{"import":{"types":"./stream/state.d.ts","default":"./stream/state.mjs"},"require":{"types":"./stream/state.d.ts","default":"./stream/state.cjs"}},"./stream/collector":{"import":{"types":"./stream/collector.d.ts","default":"./stream/collector.mjs"},"require":{"types":"./stream/collector.d.ts","default":"./stream/collector.cjs"}},"./stream/observable":{"import":{"types":"./stream/observable.d.ts","default":"./stream/observable.mjs"},"require":{"types":"./stream/observable.d.ts","default":"./stream/observable.cjs"}},"./networking":{"import":{"types":"./networking.d.ts","default":"./networking.mjs"},"require":{"types":"./networking.d.ts","default":"./networking.cjs"}},"./managers":{"import":{"types":"./managers.d.ts","default":"./managers.mjs"},"require":{"types":"./managers.d.ts","default":"./managers.cjs"}},"./future":{"import":{"types":"./future.d.ts","default":"./future.mjs"},"require":{"types":"./future.d.ts","default":"./future.cjs"}},"./errors":{"import":{"types":"./errors.d.ts","default":"./errors.mjs"},"require":{"types":"./errors.d.ts","default":"./errors.cjs"}},"./data-structures/array":{"import":{"types":"./data-structures/array.d.ts","default":"./data-structures/array.mjs"},"require":{"types":"./data-structures/array.d.ts","default":"./data-structures/array.cjs"}},"./data-structures/object":{"import":{"types":"./data-structures/object.d.ts","default":"./data-structures/object.mjs"},"require":{"types":"./data-structures/object.d.ts","default":"./data-structures/object.cjs"}},"./data/decoders":{"import":{"types":"./data/decoders.d.ts","default":"./data/decoders.mjs"},"require":{"types":"./data/decoders.d.ts","default":"./data/decoders.cjs"}},"./data/model":{"import":{"types":"./data/model.d.ts","default":"./data/model.mjs"},"require":{"types":"./data/model.d.ts","default":"./data/model.cjs"}},"./data/bus":{"import":{"types":"./data/bus.d.ts","default":"./data/bus.mjs"},"require":{"types":"./data/bus.d.ts","default":"./data/bus.cjs"}},"./data/value":{"import":{"types":"./data/value.d.ts","default":"./data/value.mjs"},"require":{"types":"./data/value.d.ts","default":"./data/value.cjs"}},"./store":{"import":{"types":"./store.d.ts","default":"./store.mjs"},"require":{"types":"./store.d.ts","default":"./store.cjs"}},"./functools":{"import":{"types":"./functools.d.ts","default":"./functools.mjs"},"require":{"types":"./functools.d.ts","default":"./functools.cjs"}}}}
@@ -0,0 +1,43 @@
1
+ 'use strict';
2
+
3
+ require('reflect-metadata');
4
+
5
+ function Inject(target, name) {
6
+ let value;
7
+ const descriptor = {
8
+ get() {
9
+ if (value === undefined) {
10
+ value = new (Reflect.getMetadata("design:type", target, name))();
11
+ }
12
+ return value;
13
+ },
14
+ set(val) {
15
+ value = val;
16
+ },
17
+ enumerable: true,
18
+ configurable: true,
19
+ };
20
+ Object.defineProperty(target, name, descriptor);
21
+ }
22
+ function InjectWithArgs(...args) {
23
+ return (target, name) => {
24
+ let value;
25
+ const descriptor = {
26
+ get() {
27
+ if (value === undefined) {
28
+ value = new (Reflect.getMetadata("design:type", target, name))(...args);
29
+ }
30
+ return value;
31
+ },
32
+ set(val) {
33
+ value = val;
34
+ },
35
+ enumerable: true,
36
+ configurable: true,
37
+ };
38
+ Object.defineProperty(target, name, descriptor);
39
+ };
40
+ }
41
+
42
+ exports.Inject = Inject;
43
+ exports.InjectWithArgs = InjectWithArgs;
@@ -0,0 +1,3 @@
1
+ import "reflect-metadata";
2
+ export declare function Inject(target: any, name: string): void;
3
+ export declare function InjectWithArgs(...args: any[]): (target: any, name: string) => void;
@@ -0,0 +1,40 @@
1
+ import 'reflect-metadata';
2
+
3
+ function Inject(target, name) {
4
+ let value;
5
+ const descriptor = {
6
+ get() {
7
+ if (value === undefined) {
8
+ value = new (Reflect.getMetadata("design:type", target, name))();
9
+ }
10
+ return value;
11
+ },
12
+ set(val) {
13
+ value = val;
14
+ },
15
+ enumerable: true,
16
+ configurable: true,
17
+ };
18
+ Object.defineProperty(target, name, descriptor);
19
+ }
20
+ function InjectWithArgs(...args) {
21
+ return (target, name) => {
22
+ let value;
23
+ const descriptor = {
24
+ get() {
25
+ if (value === undefined) {
26
+ value = new (Reflect.getMetadata("design:type", target, name))(...args);
27
+ }
28
+ return value;
29
+ },
30
+ set(val) {
31
+ value = val;
32
+ },
33
+ enumerable: true,
34
+ configurable: true,
35
+ };
36
+ Object.defineProperty(target, name, descriptor);
37
+ };
38
+ }
39
+
40
+ export { Inject, InjectWithArgs };