angular-toolbox 0.0.8 → 0.9.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 (231) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +14 -10
  3. package/{esm2020 → esm2022}/angular-toolbox.mjs +4 -4
  4. package/esm2022/lib/angular-toolbox.module.mjs +21 -0
  5. package/esm2022/lib/core/bridge/app-bridge.mjs +76 -0
  6. package/esm2022/lib/core/error/app-bridge-error.mjs +24 -0
  7. package/esm2022/lib/core/error/http-mock-service-error.mjs +26 -0
  8. package/esm2022/lib/core/error/index.mjs +5 -0
  9. package/esm2022/lib/core/error/integrity-error.mjs +26 -0
  10. package/esm2022/lib/core/error/subscription-error.mjs +26 -0
  11. package/esm2022/lib/core/impl/index.mjs +2 -0
  12. package/esm2022/lib/core/impl/lang/identifiable-component.mjs +31 -0
  13. package/esm2022/lib/core/impl/lang/index.mjs +2 -0
  14. package/esm2022/lib/core/impl/version/version.impl.mjs +34 -0
  15. package/esm2022/lib/core/index.mjs +3 -0
  16. package/esm2022/lib/directive/anchor-link.directive.mjs +62 -0
  17. package/esm2022/lib/directive/button-role.directive.mjs +102 -0
  18. package/esm2022/lib/directive/content-renderer.directive.mjs +61 -0
  19. package/esm2022/lib/directive/index.mjs +5 -0
  20. package/esm2022/lib/directive/navigate-to-url.directive.mjs +51 -0
  21. package/esm2022/lib/directive/navigation-directive-base.mjs +23 -0
  22. package/esm2022/lib/framework/index.mjs +2 -0
  23. package/esm2022/lib/framework/mock/http/config/http-mock-parameters.mjs +9 -0
  24. package/esm2022/lib/framework/mock/http/config/http-mock.decorator.mjs +48 -0
  25. package/esm2022/lib/framework/mock/http/config/index.mjs +3 -0
  26. package/esm2022/lib/framework/mock/http/config/route-mock-config.mjs +9 -0
  27. package/esm2022/lib/framework/mock/http/core/data-storage.mjs +9 -0
  28. package/esm2022/lib/framework/mock/http/event/event-target.impl.mjs +122 -0
  29. package/esm2022/lib/framework/mock/http/event/progress-event-mock.mjs +48 -0
  30. package/esm2022/lib/framework/mock/http/index.mjs +4 -0
  31. package/esm2022/lib/framework/mock/http/path-to-regexp/constants.mjs +111 -0
  32. package/esm2022/lib/framework/mock/http/path-to-regexp/escape-to-regexp-string.mjs +34 -0
  33. package/esm2022/lib/framework/mock/http/path-to-regexp/get-flags.mjs +28 -0
  34. package/esm2022/lib/framework/mock/http/path-to-regexp/iter.mjs +76 -0
  35. package/esm2022/lib/framework/mock/http/path-to-regexp/lexer.mjs +96 -0
  36. package/esm2022/lib/framework/mock/http/path-to-regexp/loose-replacer.mjs +28 -0
  37. package/esm2022/lib/framework/mock/http/path-to-regexp/model/decode-key-to-string.mjs +17 -0
  38. package/esm2022/lib/framework/mock/http/path-to-regexp/model/encode.mjs +17 -0
  39. package/esm2022/lib/framework/mock/http/path-to-regexp/model/key.mjs +17 -0
  40. package/esm2022/lib/framework/mock/http/path-to-regexp/model/lex-token.mjs +17 -0
  41. package/esm2022/lib/framework/mock/http/path-to-regexp/model/lexer-type.mjs +17 -0
  42. package/esm2022/lib/framework/mock/http/path-to-regexp/model/loose-replacer-provider.mjs +17 -0
  43. package/esm2022/lib/framework/mock/http/path-to-regexp/model/non-delimiter-encoder-provider.mjs +17 -0
  44. package/esm2022/lib/framework/mock/http/path-to-regexp/model/parse-options.mjs +17 -0
  45. package/esm2022/lib/framework/mock/http/path-to-regexp/model/path-to-regexp-options.mjs +17 -0
  46. package/esm2022/lib/framework/mock/http/path-to-regexp/model/route-string-tokenizer.mjs +17 -0
  47. package/esm2022/lib/framework/mock/http/path-to-regexp/model/simple-tokens.mjs +30 -0
  48. package/esm2022/lib/framework/mock/http/path-to-regexp/model/token-data-regexp-factory.mjs +17 -0
  49. package/esm2022/lib/framework/mock/http/path-to-regexp/model/token-type.mjs +17 -0
  50. package/esm2022/lib/framework/mock/http/path-to-regexp/model/token.mjs +17 -0
  51. package/esm2022/lib/framework/mock/http/path-to-regexp/string-to-token-data.mjs +87 -0
  52. package/esm2022/lib/framework/mock/http/path-to-regexp/to-key-regexp.mjs +41 -0
  53. package/esm2022/lib/framework/mock/http/path-to-regexp/to-stringify.mjs +29 -0
  54. package/esm2022/lib/framework/mock/http/path-to-regexp/token-data-to-regexp.mjs +49 -0
  55. package/esm2022/lib/framework/mock/http/path-to-regexp/token-data.mjs +33 -0
  56. package/esm2022/lib/framework/mock/http/util/data-storage.builder.mjs +35 -0
  57. package/esm2022/lib/framework/mock/http/util/http-headers-mock.builder.mjs +138 -0
  58. package/esm2022/lib/framework/mock/http/util/http-headers.util.mjs +56 -0
  59. package/esm2022/lib/framework/mock/http/util/http-method-ref.enum.mjs +60 -0
  60. package/esm2022/lib/framework/mock/http/util/http-mock-response.builder.mjs +117 -0
  61. package/esm2022/lib/framework/mock/http/util/index.mjs +3 -0
  62. package/esm2022/lib/framework/mock/http/xhr/delegate-xhr.mjs +316 -0
  63. package/esm2022/lib/framework/mock/http/xhr/http-mock-factory.impl.mjs +29 -0
  64. package/esm2022/lib/framework/mock/http/xhr/http-mock-factory.mjs +19 -0
  65. package/esm2022/lib/framework/mock/http/xhr/index.mjs +2 -0
  66. package/esm2022/lib/framework/mock/http/xhr/xhr-base.mjs +123 -0
  67. package/esm2022/lib/framework/mock/http/xhr/xhr-proxy-impl.mjs +177 -0
  68. package/esm2022/lib/model/business/index.mjs +5 -0
  69. package/esm2022/lib/model/business/lang/app-bridge-command.mjs +9 -0
  70. package/esm2022/lib/model/business/lang/destroyable.mjs +9 -0
  71. package/esm2022/lib/model/business/lang/identifiable.mjs +9 -0
  72. package/esm2022/lib/model/business/lang/index.mjs +5 -0
  73. package/esm2022/lib/model/business/lang/instantiable.mjs +9 -0
  74. package/esm2022/lib/model/business/mock/http/http-method-mock.mjs +9 -0
  75. package/esm2022/lib/model/business/mock/http/http-mock-config.mjs +9 -0
  76. package/esm2022/lib/model/business/mock/http/http-mock-endpoint.mjs +9 -0
  77. package/esm2022/lib/model/business/mock/http/http-mock-error.mjs +9 -0
  78. package/esm2022/lib/model/business/mock/http/http-mock-interceptor.mjs +9 -0
  79. package/esm2022/lib/model/business/mock/http/http-response-mock.mjs +9 -0
  80. package/esm2022/lib/model/business/mock/http/index.mjs +8 -0
  81. package/esm2022/lib/model/business/mock/http/xhr-proxy.mjs +9 -0
  82. package/esm2022/lib/model/business/ui/dark-mode-config.mjs +9 -0
  83. package/esm2022/lib/model/business/ui/dark-mode-config.provider.mjs +43 -0
  84. package/esm2022/lib/model/business/ui/dark-mode.constant.mjs +16 -0
  85. package/esm2022/lib/model/business/ui/index.mjs +5 -0
  86. package/esm2022/lib/model/business/ui/scroll-behavior.type.mjs +9 -0
  87. package/esm2022/lib/model/business/version/index.mjs +4 -0
  88. package/esm2022/lib/model/business/version/version-config.mjs +9 -0
  89. package/esm2022/lib/model/business/version/version-config.provider.mjs +40 -0
  90. package/esm2022/lib/model/business/version/version.mjs +10 -0
  91. package/esm2022/lib/model/index.mjs +3 -0
  92. package/esm2022/lib/model/service/index.mjs +5 -0
  93. package/esm2022/lib/model/service/mock/http/http-mock.service.mjs +239 -0
  94. package/esm2022/lib/model/service/subscription/subscription.service.mjs +122 -0
  95. package/esm2022/lib/model/service/ui/app-bridge.service.mjs +142 -0
  96. package/esm2022/lib/model/service/ui/dark-mode.service.mjs +183 -0
  97. package/esm2022/lib/model/service/ui/index.mjs +4 -0
  98. package/esm2022/lib/model/service/ui/scroll.service.mjs +93 -0
  99. package/esm2022/lib/model/service/version/version.service.mjs +51 -0
  100. package/{esm2020 → esm2022}/lib/pipe/index.mjs +1 -1
  101. package/esm2022/lib/pipe/safe/safe-html.pipe.mjs +34 -0
  102. package/esm2022/lib/util/aria-role.constant.mjs +16 -0
  103. package/esm2022/lib/util/default-scroll-behavior.mjs +13 -0
  104. package/esm2022/lib/util/empty-string.const.mjs +12 -0
  105. package/esm2022/lib/util/index.mjs +5 -0
  106. package/esm2022/lib/util/js-type.mjs +40 -0
  107. package/esm2022/lib/util/uuid.mjs +126 -0
  108. package/esm2022/public-api.mjs +18 -0
  109. package/fesm2022/angular-toolbox.mjs +3710 -0
  110. package/fesm2022/angular-toolbox.mjs.map +1 -0
  111. package/index.d.ts +5 -5
  112. package/lib/angular-toolbox.module.d.ts +9 -7
  113. package/lib/core/bridge/app-bridge.d.ts +59 -0
  114. package/lib/core/error/app-bridge-error.d.ts +16 -0
  115. package/lib/core/error/http-mock-service-error.d.ts +18 -0
  116. package/lib/core/error/index.d.ts +4 -0
  117. package/lib/core/error/integrity-error.d.ts +18 -0
  118. package/lib/core/error/subscription-error.d.ts +18 -0
  119. package/lib/core/impl/index.d.ts +1 -0
  120. package/lib/core/impl/lang/identifiable-component.d.ts +26 -0
  121. package/lib/core/impl/lang/index.d.ts +1 -0
  122. package/lib/core/impl/version/version.impl.d.ts +42 -0
  123. package/lib/core/index.d.ts +2 -0
  124. package/lib/directive/anchor-link.directive.d.ts +29 -0
  125. package/lib/directive/button-role.directive.d.ts +52 -0
  126. package/lib/directive/content-renderer.directive.d.ts +39 -0
  127. package/lib/directive/index.d.ts +4 -0
  128. package/lib/directive/navigate-to-url.directive.d.ts +23 -0
  129. package/lib/directive/navigation-directive-base.d.ts +19 -0
  130. package/lib/framework/index.d.ts +1 -0
  131. package/lib/framework/mock/http/config/http-mock-parameters.d.ts +13 -0
  132. package/lib/framework/mock/http/config/http-mock.decorator.d.ts +13 -0
  133. package/lib/framework/mock/http/config/index.d.ts +2 -0
  134. package/lib/framework/mock/http/config/route-mock-config.d.ts +30 -0
  135. package/lib/framework/mock/http/core/data-storage.d.ts +38 -0
  136. package/lib/framework/mock/http/event/event-target.impl.d.ts +70 -0
  137. package/lib/framework/mock/http/event/progress-event-mock.d.ts +36 -0
  138. package/lib/framework/mock/http/index.d.ts +3 -0
  139. package/lib/framework/mock/http/path-to-regexp/constants.d.ts +111 -0
  140. package/lib/framework/mock/http/path-to-regexp/escape-to-regexp-string.d.ts +24 -0
  141. package/lib/framework/mock/http/path-to-regexp/get-flags.d.ts +25 -0
  142. package/lib/framework/mock/http/path-to-regexp/iter.d.ts +50 -0
  143. package/lib/framework/mock/http/path-to-regexp/lexer.d.ts +24 -0
  144. package/lib/framework/mock/http/path-to-regexp/loose-replacer.d.ts +25 -0
  145. package/lib/framework/mock/http/path-to-regexp/model/decode-key-to-string.d.ts +21 -0
  146. package/lib/framework/mock/http/path-to-regexp/model/encode.d.ts +20 -0
  147. package/lib/framework/mock/http/path-to-regexp/model/key.d.ts +45 -0
  148. package/lib/framework/mock/http/path-to-regexp/model/lex-token.d.ts +34 -0
  149. package/lib/framework/mock/http/path-to-regexp/model/lexer-type.d.ts +21 -0
  150. package/lib/framework/mock/http/path-to-regexp/model/loose-replacer-provider.d.ts +20 -0
  151. package/lib/framework/mock/http/path-to-regexp/model/non-delimiter-encoder-provider.d.ts +21 -0
  152. package/lib/framework/mock/http/path-to-regexp/model/parse-options.d.ts +33 -0
  153. package/lib/framework/mock/http/path-to-regexp/model/path-to-regexp-options.d.ts +52 -0
  154. package/lib/framework/mock/http/path-to-regexp/model/route-string-tokenizer.d.ts +22 -0
  155. package/lib/framework/mock/http/path-to-regexp/model/simple-tokens.d.ts +21 -0
  156. package/lib/framework/mock/http/path-to-regexp/model/token-data-regexp-factory.d.ts +23 -0
  157. package/lib/framework/mock/http/path-to-regexp/model/token-type.d.ts +20 -0
  158. package/lib/framework/mock/http/path-to-regexp/model/token.d.ts +21 -0
  159. package/lib/framework/mock/http/path-to-regexp/string-to-token-data.d.ts +21 -0
  160. package/lib/framework/mock/http/path-to-regexp/to-key-regexp.d.ts +22 -0
  161. package/lib/framework/mock/http/path-to-regexp/to-stringify.d.ts +21 -0
  162. package/lib/framework/mock/http/path-to-regexp/token-data-to-regexp.d.ts +21 -0
  163. package/lib/framework/mock/http/path-to-regexp/token-data.d.ts +32 -0
  164. package/lib/framework/mock/http/util/data-storage.builder.d.ts +25 -0
  165. package/lib/framework/mock/http/util/http-headers-mock.builder.d.ts +106 -0
  166. package/lib/framework/mock/http/util/http-headers.util.d.ts +31 -0
  167. package/lib/framework/mock/http/util/http-method-ref.enum.d.ts +58 -0
  168. package/lib/framework/mock/http/util/http-mock-response.builder.d.ts +83 -0
  169. package/lib/framework/mock/http/util/index.d.ts +2 -0
  170. package/lib/framework/mock/http/xhr/delegate-xhr.d.ts +199 -0
  171. package/lib/framework/mock/http/xhr/http-mock-factory.d.ts +14 -0
  172. package/lib/framework/mock/http/xhr/http-mock-factory.impl.d.ts +24 -0
  173. package/lib/framework/mock/http/xhr/index.d.ts +1 -0
  174. package/lib/framework/mock/http/xhr/xhr-base.d.ts +123 -0
  175. package/lib/framework/mock/http/xhr/xhr-proxy-impl.d.ts +125 -0
  176. package/lib/model/business/index.d.ts +4 -0
  177. package/lib/model/business/lang/app-bridge-command.d.ts +11 -0
  178. package/lib/model/business/lang/destroyable.d.ts +16 -0
  179. package/lib/model/business/lang/identifiable.d.ts +19 -0
  180. package/lib/model/business/lang/index.d.ts +4 -0
  181. package/lib/model/business/lang/instantiable.d.ts +15 -0
  182. package/lib/model/business/mock/http/http-method-mock.d.ts +35 -0
  183. package/lib/model/business/mock/http/http-mock-config.d.ts +28 -0
  184. package/lib/model/business/mock/http/http-mock-endpoint.d.ts +41 -0
  185. package/lib/model/business/mock/http/http-mock-error.d.ts +21 -0
  186. package/lib/model/business/mock/http/http-mock-interceptor.d.ts +27 -0
  187. package/lib/model/business/mock/http/http-response-mock.d.ts +44 -0
  188. package/lib/model/business/mock/http/index.d.ts +7 -0
  189. package/lib/model/business/mock/http/xhr-proxy.d.ts +15 -0
  190. package/lib/model/business/ui/dark-mode-config.d.ts +29 -0
  191. package/lib/model/business/ui/dark-mode-config.provider.d.ts +21 -0
  192. package/lib/model/business/ui/dark-mode.constant.d.ts +15 -0
  193. package/lib/model/business/ui/index.d.ts +4 -0
  194. package/lib/model/business/ui/scroll-behavior.type.d.ts +11 -0
  195. package/lib/model/business/version/index.d.ts +3 -0
  196. package/lib/model/business/version/version-config.d.ts +28 -0
  197. package/lib/model/business/version/version-config.provider.d.ts +22 -0
  198. package/lib/model/business/version/version.d.ts +34 -0
  199. package/lib/model/index.d.ts +2 -0
  200. package/lib/model/service/index.d.ts +4 -0
  201. package/lib/model/service/mock/http/http-mock.service.d.ts +101 -0
  202. package/lib/model/service/subscription/subscription.service.d.ts +66 -0
  203. package/lib/model/service/ui/app-bridge.service.d.ts +80 -0
  204. package/lib/model/service/ui/dark-mode.service.d.ts +99 -0
  205. package/lib/model/service/ui/index.d.ts +3 -0
  206. package/lib/{service → model/service}/ui/scroll.service.d.ts +55 -52
  207. package/lib/model/service/version/version.service.d.ts +30 -0
  208. package/lib/pipe/index.d.ts +1 -1
  209. package/lib/pipe/safe/safe-html.pipe.d.ts +30 -10
  210. package/lib/util/aria-role.constant.d.ts +15 -0
  211. package/lib/util/default-scroll-behavior.d.ts +12 -0
  212. package/lib/util/empty-string.const.d.ts +11 -0
  213. package/lib/util/index.d.ts +4 -0
  214. package/lib/util/js-type.d.ts +39 -0
  215. package/lib/util/uuid.d.ts +89 -0
  216. package/package.json +10 -13
  217. package/public-api.d.ts +14 -3
  218. package/esm2020/lib/angular-toolbox.module.mjs +0 -26
  219. package/esm2020/lib/pipe/safe/safe-html.pipe.mjs +0 -18
  220. package/esm2020/lib/service/index.mjs +0 -4
  221. package/esm2020/lib/service/subscription/subscription.service.mjs +0 -60
  222. package/esm2020/lib/service/ui/dark-mode.service.mjs +0 -167
  223. package/esm2020/lib/service/ui/scroll.service.mjs +0 -79
  224. package/esm2020/public-api.mjs +0 -7
  225. package/fesm2015/angular-toolbox.mjs +0 -356
  226. package/fesm2015/angular-toolbox.mjs.map +0 -1
  227. package/fesm2020/angular-toolbox.mjs +0 -350
  228. package/fesm2020/angular-toolbox.mjs.map +0 -1
  229. package/lib/service/index.d.ts +0 -3
  230. package/lib/service/subscription/subscription.service.d.ts +0 -33
  231. package/lib/service/ui/dark-mode.service.d.ts +0 -92
@@ -0,0 +1,123 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be found in
6
+ * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ import { EventTargetImpl } from "../event/event-target.impl";
9
+ /**
10
+ * @private
11
+ *
12
+ * Elemenets marked as "Useless" are never invoked by the Angular framework.
13
+ */
14
+ export declare class XhrBase extends EventTargetImpl {
15
+ /**
16
+ * @private
17
+ *
18
+ * XMLHTTPRequest API
19
+ */
20
+ readonly UNSENT = 0;
21
+ /**
22
+ * @private
23
+ *
24
+ * XMLHTTPRequest API
25
+ */
26
+ readonly OPENED = 1;
27
+ /**
28
+ * @private
29
+ *
30
+ * XMLHTTPRequest API
31
+ */
32
+ readonly HEADERS_RECEIVED = 2;
33
+ /**
34
+ * @private
35
+ *
36
+ * XMLHTTPRequest API
37
+ */
38
+ readonly LOADING = 3;
39
+ /**
40
+ * @private
41
+ *
42
+ * XMLHTTPRequest API
43
+ */
44
+ readonly DONE = 4;
45
+ /**
46
+ * @private
47
+ *
48
+ * XMLHTTPRequest API - Useless
49
+ */
50
+ get responseXML(): Document | null;
51
+ /**
52
+ * @private
53
+ *
54
+ * XMLHTTPRequest API
55
+ */
56
+ withCredentials: boolean;
57
+ /**
58
+ * @private
59
+ *
60
+ * XMLHTTPRequest API
61
+ */
62
+ timeout: number;
63
+ /**
64
+ * @private
65
+ *
66
+ * XMLHTTPRequest API - Useless
67
+ */
68
+ onabort: ((this: XMLHttpRequest, ev: ProgressEvent<EventTarget>) => any) | null;
69
+ /**
70
+ * @private
71
+ *
72
+ * XMLHTTPRequest API - Useless
73
+ */
74
+ onerror: ((this: XMLHttpRequest, ev: ProgressEvent<EventTarget>) => any) | null;
75
+ /**
76
+ * @private
77
+ *
78
+ * XMLHTTPRequest API - Useless
79
+ */
80
+ onload: ((this: XMLHttpRequest, ev: ProgressEvent<EventTarget>) => any) | null;
81
+ /**
82
+ * @private
83
+ *
84
+ * XMLHTTPRequest API - Useless
85
+ */
86
+ onloadend: ((this: XMLHttpRequest, ev: ProgressEvent<EventTarget>) => any) | null;
87
+ /**
88
+ * @private
89
+ *
90
+ * XMLHTTPRequest API - Useless
91
+ */
92
+ onloadstart: ((this: XMLHttpRequest, ev: ProgressEvent<EventTarget>) => any) | null;
93
+ /**
94
+ * @private
95
+ *
96
+ * XMLHTTPRequest API - Useless
97
+ */
98
+ onprogress: ((this: XMLHttpRequest, ev: ProgressEvent<EventTarget>) => any) | null;
99
+ /**
100
+ * @private
101
+ *
102
+ * XMLHTTPRequest API - Useless
103
+ */
104
+ onreadystatechange: ((this: XMLHttpRequest, ev: Event) => any) | null;
105
+ /**
106
+ * @private
107
+ *
108
+ * XMLHTTPRequest API - Useless
109
+ */
110
+ ontimeout: ((this: XMLHttpRequest, ev: ProgressEvent<EventTarget>) => any) | null;
111
+ /**
112
+ * @private
113
+ *
114
+ * XMLHTTPRequest API - Useless
115
+ */
116
+ overrideMimeType(mime: string): void;
117
+ /**
118
+ * @private
119
+ *
120
+ * XMLHTTPRequest API - Useless
121
+ */
122
+ getResponseHeader(name: string): string | null;
123
+ }
@@ -0,0 +1,125 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be ound in
6
+ * fthe LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ import { HttpMockService } from "../../../../model/service/mock/http/http-mock.service";
9
+ import { XhrProxy } from "../../../../model";
10
+ import { XhrBase } from "./xhr-base";
11
+ /**
12
+ * @private
13
+ * A XHR proxy that is used by the Mocking Framework to apply HTTP call strategies.
14
+ */
15
+ export declare class XhrProxyImpl extends XhrBase implements XhrProxy {
16
+ private _httpMockService;
17
+ /**
18
+ * @private
19
+ * Stores an internal XMLHttpRequestobject used as delegate,
20
+ * depending on the testing strategy defined by the config file.
21
+ */
22
+ private XHR;
23
+ /**
24
+ * @private
25
+ *
26
+ * XMLHTTPRequest API
27
+ */
28
+ get response(): any;
29
+ /**
30
+ * @private
31
+ *
32
+ * XMLHTTPRequest API
33
+ */
34
+ get status(): number;
35
+ /**
36
+ * @private
37
+ *
38
+ * XMLHTTPRequest API
39
+ */
40
+ get statusText(): string;
41
+ /**
42
+ * @private
43
+ *
44
+ * XMLHTTPRequest API
45
+ */
46
+ get readyState(): number;
47
+ /**
48
+ * @private
49
+ *
50
+ * XMLHTTPRequest API
51
+ */
52
+ get responseURL(): string;
53
+ /**
54
+ * @private
55
+ *
56
+ * XMLHTTPRequest API
57
+ */
58
+ get responseText(): string;
59
+ /**
60
+ * @private
61
+ *
62
+ * XMLHTTPRequest API
63
+ */
64
+ get responseType(): XMLHttpRequestResponseType;
65
+ /**
66
+ * @private
67
+ *
68
+ * XMLHTTPRequest API
69
+ */
70
+ set responseType(value: XMLHttpRequestResponseType);
71
+ get upload(): XMLHttpRequestUpload;
72
+ /**
73
+ * @private
74
+ *
75
+ * XMLHTTPRequest API
76
+ */
77
+ open(method: string, url: string | URL): void;
78
+ open(method: string, url: string | URL, async: boolean, username?: string | null | undefined, password?: string | null | undefined): void;
79
+ /**
80
+ * @private
81
+ *
82
+ * XMLHTTPRequest API
83
+ */
84
+ abort(): void;
85
+ /**
86
+ * @private
87
+ *
88
+ * XMLHTTPRequest API
89
+ */
90
+ getAllResponseHeaders(): string;
91
+ /**
92
+ * @private
93
+ *
94
+ * XMLHTTPRequest API
95
+ */
96
+ addEventListener(type: unknown, listener: unknown, options?: unknown): void;
97
+ /**
98
+ * @private
99
+ *
100
+ * XMLHTTPRequest API
101
+ */
102
+ removeEventListener(type: unknown, listener: unknown, options?: unknown): void;
103
+ /**
104
+ * @private
105
+ *
106
+ * XMLHTTPRequest API
107
+ */
108
+ send(body?: Document | XMLHttpRequestBodyInit | null | undefined): void;
109
+ /**
110
+ * @private
111
+ *
112
+ * XMLHTTPRequest API
113
+ */
114
+ setRequestHeader(name: string, value: string): void;
115
+ /**
116
+ * @private
117
+ *
118
+ * For Unit Testing only.
119
+ */
120
+ instanceOf(classRef: any): boolean;
121
+ /**
122
+ * @private
123
+ */
124
+ constructor(_httpMockService: HttpMockService);
125
+ }
@@ -0,0 +1,4 @@
1
+ export * from './version';
2
+ export * from './ui';
3
+ export * from './lang';
4
+ export * from './mock/http';
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be ound in
6
+ * fthe LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ /**
9
+ * The `Destroyable` interface provides a global interface for creating object that might be destroyed by the system.
10
+ */
11
+ export type AppBridgeCommand = (...rest: any[]) => void;
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be ound in
6
+ * fthe LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ /**
9
+ * The `Destroyable` interface provides a global interface for creating object that might be destroyed by the system.
10
+ */
11
+ export interface Destroyable {
12
+ /**
13
+ * Makes an object elligible for garbage collection.
14
+ */
15
+ destroy(): void | any;
16
+ }
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be ound in
6
+ * fthe LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ import { Uuid } from "../../../util";
9
+ /**
10
+ * `Identifiable` objects are Angular components that can be identified by a unique UUID identifier.
11
+ */
12
+ export interface Identifiable {
13
+ /**
14
+ * Returns the unique identifier for this object.
15
+ *
16
+ * @returns An instance of the `Uuid` class.
17
+ */
18
+ getID(): Uuid;
19
+ }
@@ -0,0 +1,4 @@
1
+ export * from './instantiable';
2
+ export * from './destroyable';
3
+ export * from './app-bridge-command';
4
+ export * from './identifiable';
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be found in
6
+ * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ /**
9
+ * A markup interface that defines instantiable objects.
10
+ */
11
+ export type Instantiable = {
12
+ constructor: {
13
+ name: string;
14
+ };
15
+ };
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be found in
6
+ * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ import { HttpRequest } from "@angular/common/http";
9
+ import { HttpResponseMock } from "./http-response-mock";
10
+ import { HttpMockParameters } from "../../../../framework";
11
+ /**
12
+ * The `HttpMethodMock` interface defines the behavior of actions invoked each time an Angular
13
+ * `HttpClient` instance sends requests to a specific API endpoint.
14
+ */
15
+ export interface HttpMethodMock {
16
+ /**
17
+ * @private
18
+ * Current progressive download mechanism will be replaced by a more efficient process.
19
+ * Indicates whether to emulate progressive download (`true`), or not (`false`).
20
+ */
21
+ progressive?: boolean;
22
+ /**
23
+ * An enumerated string value specifying the type of data contained in the response.
24
+ */
25
+ responseType?: XMLHttpRequestResponseType;
26
+ /**
27
+ * This method emulates a successful HTTP call response.
28
+ *
29
+ * @param request The request associated with a HTTP call.
30
+ * @param parameters The list of parameters associated with the HTTP request.
31
+ *
32
+ * @returns A user-defined `HttpResponse` mock object.
33
+ */
34
+ data: (request: HttpRequest<any>, parameters?: HttpMockParameters) => HttpResponseMock;
35
+ }
@@ -0,0 +1,28 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be found in
6
+ * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ import { Uuid } from "../../../../util";
9
+ import { HttpMockInterceptor } from "./http-mock-interceptor";
10
+ /**
11
+ * An interface that let Developer define mocking strategies for Angular HTTP calls.
12
+ */
13
+ export interface HttpMockConfig {
14
+ /**
15
+ * The main URL origin for this mock, as defined by the URL standard.
16
+ *
17
+ * @see https://url.spec.whatwg.org/#concept-url-origin
18
+ */
19
+ origin?: string;
20
+ /**
21
+ * The unique identifier for this HTTP mock config.
22
+ */
23
+ id?: Uuid;
24
+ /**
25
+ * The configuration of mocking strategies for each specific API.
26
+ */
27
+ interceptors: HttpMockInterceptor[];
28
+ }
@@ -0,0 +1,41 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be found in
6
+ * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ import { HttpMethodMock } from "./http-method-mock";
9
+ /**
10
+ * Provides the API to define mocking strategies for a specific endpoint.
11
+ */
12
+ export interface HttpMockEndpoint {
13
+ /**
14
+ * The route part of the endpoint to mock.
15
+ */
16
+ route: string;
17
+ /**
18
+ * The mock configuration of HTTP `GET` method calls for the specified route.
19
+ */
20
+ get?: HttpMethodMock;
21
+ /**
22
+ * The mock configuration of HTTP `POST` method calls for the specified route.
23
+ */
24
+ post?: HttpMethodMock;
25
+ /**
26
+ * The mock configuration of HTTP `PUT` method calls for the specified route.
27
+ */
28
+ put?: HttpMethodMock;
29
+ /**
30
+ * The mock configuration of HTTP `DELETE` method calls for the specified route.
31
+ */
32
+ delete?: HttpMethodMock;
33
+ /**
34
+ * The mock configuration of HTTP `PATCH` method calls for the specified route.
35
+ */
36
+ patch?: HttpMethodMock;
37
+ /**
38
+ * The mock configuration of HTTP `HEAD` method calls for the specified route.
39
+ */
40
+ head?: HttpMethodMock;
41
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be found in
6
+ * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ import { HttpStatusCode } from "@angular/common/http";
9
+ /**
10
+ * The `HttpMockError` interface provides the API that must be implemented by HTTP mock errors.
11
+ */
12
+ export interface HttpMockError {
13
+ /**
14
+ * Error status code.
15
+ */
16
+ status: HttpStatusCode;
17
+ /**
18
+ * Textual description of error status code.
19
+ */
20
+ statusText: string;
21
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be found in
6
+ * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ import { HttpMockEndpoint } from "./http-mock-endpoint";
9
+ /**
10
+ * Provides the API to define mocking strategies for a specific API.
11
+ */
12
+ export interface HttpMockInterceptor {
13
+ /**
14
+ * The ID of this interceptor.
15
+ */
16
+ id: string;
17
+ /**
18
+ * The URL origin for this interceptor, as defined by the URL standard.
19
+ *
20
+ * @see https://url.spec.whatwg.org/#url
21
+ */
22
+ origin?: string;
23
+ /**
24
+ * A list of endpoints that must be intercepted by the HTTP Mocking Framework.
25
+ */
26
+ endpoints: HttpMockEndpoint[];
27
+ }
@@ -0,0 +1,44 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be found in
6
+ * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ import { HttpHeaders } from "@angular/common/http";
9
+ import { Observable } from "rxjs";
10
+ import { HttpMockError } from "./http-mock-error";
11
+ /**
12
+ * Defines the config of a HTTP response mock object.
13
+ */
14
+ export interface HttpResponseMock {
15
+ /**
16
+ * The response body. Can be either an object, or an `Observable` instance.
17
+ */
18
+ body?: any | Observable<any>;
19
+ /**
20
+ * All response headers.
21
+ */
22
+ headers?: HttpHeaders;
23
+ /**
24
+ * Response status code.
25
+ */
26
+ status: number;
27
+ /**
28
+ * Textual description of response status code, defaults to `OK`.
29
+ */
30
+ statusText: string;
31
+ /**
32
+ * URL of the resource retrieved, or `null` if not available.
33
+ */
34
+ url: string | null;
35
+ /**
36
+ * The optional error for this HTTP request.
37
+ */
38
+ error: HttpMockError | null;
39
+ /**
40
+ * Returns a delayed response, in miliseconds.
41
+ * Maximum value is `10000` miliseconds (10 seconds).
42
+ */
43
+ delay?: number;
44
+ }
@@ -0,0 +1,7 @@
1
+ export * from './http-response-mock';
2
+ export * from './http-method-mock';
3
+ export * from './http-mock-config';
4
+ export * from './http-mock-endpoint';
5
+ export * from './http-mock-interceptor';
6
+ export * from './http-mock-error';
7
+ export * from './xhr-proxy';
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be found in
6
+ * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ /**
9
+ * @Private
10
+ * The markup interface for XMLHttpRequest proxy implementations.
11
+ *
12
+ * @see https://xhr.spec.whatwg.org/#the-open()-method
13
+ */
14
+ export interface XhrProxy extends XMLHttpRequest {
15
+ }
@@ -0,0 +1,29 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be found in
6
+ * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ /**
9
+ * Defines properties for the `DarkModeService` configuration.
10
+ */
11
+ export interface DarkModeConfig {
12
+ /**
13
+ * Indicates whether the dark mode is activated by default (`true`), or not (`false`).
14
+ */
15
+ darkModeEnabled?: boolean;
16
+ /**
17
+ * Indicates whether the dark mode uses browser settings (`true`), or not (`false`).
18
+ * When `true`, this property overrides the `darkModeEnabled` property.
19
+ */
20
+ detectBrowserSettings?: boolean;
21
+ /**
22
+ * CSS property name used to set the dark mode look and feel.
23
+ */
24
+ cssProperty?: string;
25
+ /**
26
+ * Reference to the key value used to persist the dark mode state to local storage.
27
+ */
28
+ storageKey?: string;
29
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be found in
6
+ * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ import { DarkModeConfig } from "./dark-mode-config";
9
+ /**
10
+ * The default provider for the `DarkModeService` configuration. You typically define
11
+ * the custom properties in the main NgModule declaration to initialize the app dark mode:
12
+ *
13
+ * @NgModule({
14
+ * ...
15
+ * providers: [
16
+ * { provide: DARK_MODE_CONFIG, useValue: { enableDarkMode: true } }
17
+ * ],
18
+ * ...
19
+ * });
20
+ */
21
+ export declare const DARK_MODE_CONFIG: DarkModeConfig;
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be found in
6
+ * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ /**
9
+ * Reference to the dark mode default storage key.
10
+ */
11
+ export declare const STORAGE_KEY: string;
12
+ /**
13
+ * Reference to the dark mode default css property.
14
+ */
15
+ export declare const CSS_PROP: string;
@@ -0,0 +1,4 @@
1
+ export * from './dark-mode-config';
2
+ export * from './dark-mode.constant';
3
+ export * from './dark-mode-config.provider';
4
+ export * from './scroll-behavior.type';
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be found in
6
+ * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ /**
9
+ * Workaround for the typescript `ScrollBehavior` declaration.
10
+ */
11
+ export type ScrollBehavior = "auto" | "instant" | "smooth";
@@ -0,0 +1,3 @@
1
+ export * from './version';
2
+ export * from './version-config';
3
+ export * from './version-config.provider';
@@ -0,0 +1,28 @@
1
+ /**
2
+ * @license
3
+ * Copyright Pascal ECHEMANN. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be found in
6
+ * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
7
+ */
8
+ /**
9
+ * The `VersionConfig` interface provides the basic API that defines a version config token.
10
+ */
11
+ export interface VersionConfig {
12
+ /**
13
+ * Specifies the major number for this config.
14
+ */
15
+ major: number;
16
+ /**
17
+ * Specifies the minor number for this config.
18
+ */
19
+ minor: number;
20
+ /**
21
+ * Specifies the patch number for this config.
22
+ */
23
+ patch: number;
24
+ /**
25
+ * Specifies the timestamp that corresponds to the build date for this config.
26
+ */
27
+ buildTimestamp: number;
28
+ }