@mnaoumov/typescript-lib 0.0.0 → 1.0.1

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 (182) hide show
  1. package/@types/debug/package.json +4 -0
  2. package/LICENSE +21 -0
  3. package/README.md +15 -1
  4. package/dist/lib/cjs/@types/debug.d.cts +21 -0
  5. package/dist/lib/cjs/abort-controller.cjs +144 -0
  6. package/dist/lib/cjs/abort-controller.d.cts +136 -0
  7. package/dist/lib/cjs/aggregate-error.cjs +40 -0
  8. package/dist/lib/cjs/aggregate-error.d.cts +24 -0
  9. package/dist/lib/cjs/array-buffer.cjs +38 -0
  10. package/dist/lib/cjs/array-buffer.d.cts +16 -0
  11. package/dist/lib/cjs/array.cjs +76 -0
  12. package/dist/lib/cjs/array.d.cts +46 -0
  13. package/dist/lib/cjs/async-events.cjs +408 -0
  14. package/dist/lib/cjs/async-events.d.cts +456 -0
  15. package/dist/lib/cjs/async-operation-hook.cjs +55 -0
  16. package/dist/lib/cjs/async-operation-hook.d.cts +59 -0
  17. package/dist/lib/cjs/async.cjs +463 -0
  18. package/dist/lib/cjs/async.d.cts +415 -0
  19. package/dist/lib/cjs/beeper.cjs +68 -0
  20. package/dist/lib/cjs/beeper.d.cts +21 -0
  21. package/dist/lib/cjs/blob.cjs +102 -0
  22. package/dist/lib/cjs/blob.d.cts +60 -0
  23. package/dist/lib/cjs/bytes.cjs +56 -0
  24. package/dist/lib/cjs/bytes.d.cts +17 -0
  25. package/dist/lib/cjs/debug-controller.cjs +22 -0
  26. package/dist/lib/cjs/debug-controller.d.cts +87 -0
  27. package/dist/lib/cjs/debug.cjs +204 -0
  28. package/dist/lib/cjs/debug.d.cts +66 -0
  29. package/dist/lib/cjs/desktop-zip-extractor.cjs +157 -0
  30. package/dist/lib/cjs/desktop-zip-extractor.d.cts +96 -0
  31. package/dist/lib/cjs/disposable.cjs +364 -0
  32. package/dist/lib/cjs/disposable.d.cts +387 -0
  33. package/dist/lib/cjs/enum.cjs +42 -0
  34. package/dist/lib/cjs/enum.d.cts +24 -0
  35. package/dist/lib/cjs/error.cjs +239 -0
  36. package/dist/lib/cjs/error.d.cts +182 -0
  37. package/dist/lib/cjs/function.cjs +83 -0
  38. package/dist/lib/cjs/function.d.cts +128 -0
  39. package/dist/lib/cjs/html-element.cjs +283 -0
  40. package/dist/lib/cjs/html-element.d.cts +200 -0
  41. package/dist/lib/cjs/index.cjs +137 -0
  42. package/dist/lib/cjs/index.d.cts +33 -0
  43. package/dist/lib/cjs/jpeg-metadata.cjs +170 -0
  44. package/dist/lib/cjs/jpeg-metadata.d.cts +42 -0
  45. package/dist/lib/cjs/library-references.d.cts +2 -0
  46. package/dist/lib/cjs/library.cjs +100 -0
  47. package/dist/lib/cjs/library.d.cts +96 -0
  48. package/dist/lib/cjs/object-utils.cjs +559 -0
  49. package/dist/lib/cjs/object-utils.d.cts +298 -0
  50. package/dist/lib/cjs/path.cjs +171 -0
  51. package/dist/lib/cjs/path.d.cts +155 -0
  52. package/dist/lib/cjs/reg-exp.cjs +196 -0
  53. package/dist/lib/cjs/reg-exp.d.cts +87 -0
  54. package/dist/lib/cjs/string.cjs +268 -0
  55. package/dist/lib/cjs/string.d.cts +362 -0
  56. package/dist/lib/cjs/transformers/date-transformer.cjs +71 -0
  57. package/dist/lib/cjs/transformers/date-transformer.d.cts +39 -0
  58. package/dist/lib/cjs/transformers/group-transformer.cjs +115 -0
  59. package/dist/lib/cjs/transformers/group-transformer.d.cts +70 -0
  60. package/dist/lib/cjs/transformers/index.cjs +65 -0
  61. package/dist/lib/cjs/transformers/index.d.cts +9 -0
  62. package/dist/lib/cjs/transformers/map-transformer.cjs +71 -0
  63. package/dist/lib/cjs/transformers/map-transformer.d.cts +41 -0
  64. package/dist/lib/cjs/transformers/set-transformer.cjs +71 -0
  65. package/dist/lib/cjs/transformers/set-transformer.d.cts +39 -0
  66. package/dist/lib/cjs/transformers/skip-private-property-transformer.cjs +69 -0
  67. package/dist/lib/cjs/transformers/skip-private-property-transformer.d.cts +36 -0
  68. package/dist/lib/cjs/transformers/transformer.cjs +112 -0
  69. package/dist/lib/cjs/transformers/transformer.d.cts +70 -0
  70. package/dist/lib/cjs/transformers/two-way-map-transformer.cjs +72 -0
  71. package/dist/lib/cjs/transformers/two-way-map-transformer.d.cts +42 -0
  72. package/dist/lib/cjs/transformers/typed-transformer.cjs +36 -0
  73. package/dist/lib/cjs/transformers/typed-transformer.d.cts +39 -0
  74. package/dist/lib/cjs/two-way-map.cjs +150 -0
  75. package/dist/lib/cjs/two-way-map.d.cts +101 -0
  76. package/dist/lib/cjs/type-guards.cjs +70 -0
  77. package/dist/lib/cjs/type-guards.d.cts +84 -0
  78. package/dist/lib/cjs/type.cjs +63 -0
  79. package/dist/lib/cjs/type.d.cts +122 -0
  80. package/dist/lib/cjs/typescript-lib-state.cjs +68 -0
  81. package/dist/lib/cjs/typescript-lib-state.d.cts +56 -0
  82. package/dist/lib/cjs/url.cjs +78 -0
  83. package/dist/lib/cjs/url.d.cts +74 -0
  84. package/dist/lib/cjs/value-provider.cjs +42 -0
  85. package/dist/lib/cjs/value-provider.d.cts +29 -0
  86. package/dist/lib/cjs/value-wrapper.cjs +86 -0
  87. package/dist/lib/cjs/value-wrapper.d.cts +47 -0
  88. package/dist/lib/esm/@types/debug.d.mts +21 -0
  89. package/dist/lib/esm/abort-controller.d.mts +136 -0
  90. package/dist/lib/esm/abort-controller.mjs +115 -0
  91. package/dist/lib/esm/aggregate-error.d.mts +24 -0
  92. package/dist/lib/esm/aggregate-error.mjs +16 -0
  93. package/dist/lib/esm/array-buffer.d.mts +16 -0
  94. package/dist/lib/esm/array-buffer.mjs +14 -0
  95. package/dist/lib/esm/array.d.mts +46 -0
  96. package/dist/lib/esm/array.mjs +49 -0
  97. package/dist/lib/esm/async-events.d.mts +456 -0
  98. package/dist/lib/esm/async-events.mjs +383 -0
  99. package/dist/lib/esm/async-operation-hook.d.mts +59 -0
  100. package/dist/lib/esm/async-operation-hook.mjs +27 -0
  101. package/dist/lib/esm/async.d.mts +415 -0
  102. package/dist/lib/esm/async.mjs +435 -0
  103. package/dist/lib/esm/beeper.d.mts +21 -0
  104. package/dist/lib/esm/beeper.mjs +44 -0
  105. package/dist/lib/esm/blob.d.mts +60 -0
  106. package/dist/lib/esm/blob.mjs +77 -0
  107. package/dist/lib/esm/bytes.d.mts +17 -0
  108. package/dist/lib/esm/bytes.mjs +32 -0
  109. package/dist/lib/esm/debug-controller.d.mts +87 -0
  110. package/dist/lib/esm/debug-controller.mjs +6 -0
  111. package/dist/lib/esm/debug.d.mts +66 -0
  112. package/dist/lib/esm/debug.mjs +168 -0
  113. package/dist/lib/esm/desktop-zip-extractor.d.mts +96 -0
  114. package/dist/lib/esm/desktop-zip-extractor.mjs +136 -0
  115. package/dist/lib/esm/disposable.d.mts +387 -0
  116. package/dist/lib/esm/disposable.mjs +324 -0
  117. package/dist/lib/esm/enum.d.mts +24 -0
  118. package/dist/lib/esm/enum.mjs +17 -0
  119. package/dist/lib/esm/error.d.mts +182 -0
  120. package/dist/lib/esm/error.mjs +204 -0
  121. package/dist/lib/esm/function.d.mts +128 -0
  122. package/dist/lib/esm/function.mjs +52 -0
  123. package/dist/lib/esm/html-element.d.mts +200 -0
  124. package/dist/lib/esm/html-element.mjs +247 -0
  125. package/dist/lib/esm/index.d.mts +33 -0
  126. package/dist/lib/esm/index.mjs +72 -0
  127. package/dist/lib/esm/jpeg-metadata.d.mts +42 -0
  128. package/dist/lib/esm/jpeg-metadata.mjs +145 -0
  129. package/dist/lib/esm/library-references.d.mts +2 -0
  130. package/dist/lib/esm/library.d.mts +96 -0
  131. package/dist/lib/esm/library.mjs +74 -0
  132. package/dist/lib/esm/object-utils.d.mts +298 -0
  133. package/dist/lib/esm/object-utils.mjs +523 -0
  134. package/dist/lib/esm/path.d.mts +155 -0
  135. package/dist/lib/esm/path.mjs +122 -0
  136. package/dist/lib/esm/reg-exp.d.mts +87 -0
  137. package/dist/lib/esm/reg-exp.mjs +169 -0
  138. package/dist/lib/esm/string.d.mts +362 -0
  139. package/dist/lib/esm/string.mjs +230 -0
  140. package/dist/lib/esm/transformers/date-transformer.d.mts +39 -0
  141. package/dist/lib/esm/transformers/date-transformer.mjs +47 -0
  142. package/dist/lib/esm/transformers/group-transformer.d.mts +70 -0
  143. package/dist/lib/esm/transformers/group-transformer.mjs +94 -0
  144. package/dist/lib/esm/transformers/index.d.mts +9 -0
  145. package/dist/lib/esm/transformers/index.mjs +24 -0
  146. package/dist/lib/esm/transformers/map-transformer.d.mts +41 -0
  147. package/dist/lib/esm/transformers/map-transformer.mjs +47 -0
  148. package/dist/lib/esm/transformers/set-transformer.d.mts +39 -0
  149. package/dist/lib/esm/transformers/set-transformer.mjs +47 -0
  150. package/dist/lib/esm/transformers/skip-private-property-transformer.d.mts +36 -0
  151. package/dist/lib/esm/transformers/skip-private-property-transformer.mjs +45 -0
  152. package/dist/lib/esm/transformers/transformer.d.mts +70 -0
  153. package/dist/lib/esm/transformers/transformer.mjs +88 -0
  154. package/dist/lib/esm/transformers/two-way-map-transformer.d.mts +42 -0
  155. package/dist/lib/esm/transformers/two-way-map-transformer.mjs +48 -0
  156. package/dist/lib/esm/transformers/typed-transformer.d.mts +39 -0
  157. package/dist/lib/esm/transformers/typed-transformer.mjs +12 -0
  158. package/dist/lib/esm/two-way-map.d.mts +101 -0
  159. package/dist/lib/esm/two-way-map.mjs +126 -0
  160. package/dist/lib/esm/type-guards.d.mts +84 -0
  161. package/dist/lib/esm/type-guards.mjs +41 -0
  162. package/dist/lib/esm/type.d.mts +122 -0
  163. package/dist/lib/esm/type.mjs +39 -0
  164. package/dist/lib/esm/typescript-lib-state.d.mts +56 -0
  165. package/dist/lib/esm/typescript-lib-state.mjs +40 -0
  166. package/dist/lib/esm/url.d.mts +74 -0
  167. package/dist/lib/esm/url.mjs +50 -0
  168. package/dist/lib/esm/value-provider.d.mts +29 -0
  169. package/dist/lib/esm/value-provider.mjs +18 -0
  170. package/dist/lib/esm/value-wrapper.d.mts +47 -0
  171. package/dist/lib/esm/value-wrapper.mjs +62 -0
  172. package/package.json +153 -13
  173. package/transformers/date-transformer/package.json +6 -0
  174. package/transformers/group-transformer/package.json +6 -0
  175. package/transformers/index/package.json +6 -0
  176. package/transformers/map-transformer/package.json +6 -0
  177. package/transformers/package.json +6 -0
  178. package/transformers/set-transformer/package.json +6 -0
  179. package/transformers/skip-private-property-transformer/package.json +6 -0
  180. package/transformers/transformer/package.json +6 -0
  181. package/transformers/two-way-map-transformer/package.json +6 -0
  182. package/transformers/typed-transformer/package.json +6 -0
@@ -0,0 +1,47 @@
1
+ /*
2
+ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
+ if you want to view the source, please visit the github repository of this plugin
4
+ */
5
+
6
+ import { TypedTransformer } from "./typed-transformer.mjs";
7
+ class DateTransformer extends TypedTransformer {
8
+ /**
9
+ * An id of the transformer.
10
+ *
11
+ * @returns `date`.
12
+ */
13
+ get id() {
14
+ return "date";
15
+ }
16
+ /**
17
+ * Determines if the value is a Date.
18
+ *
19
+ * @param value - The value to check.
20
+ * @returns A boolean indicating if the value is a Date.
21
+ */
22
+ canTransform(value) {
23
+ return value instanceof Date;
24
+ }
25
+ /**
26
+ * Restores the value from a string.
27
+ *
28
+ * @param transformedValue - The transformed value.
29
+ * @returns The restored value.
30
+ */
31
+ restoreValue(transformedValue) {
32
+ return new Date(transformedValue);
33
+ }
34
+ /**
35
+ * Transforms the value to a string.
36
+ *
37
+ * @param value - The value to transform.
38
+ * @returns The transformed value.
39
+ */
40
+ transformValue(value) {
41
+ return value.toISOString();
42
+ }
43
+ }
44
+ export {
45
+ DateTransformer
46
+ };
47
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9kYXRlLXRyYW5zZm9ybWVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogQSB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gRGF0ZSB0byBhbiBJU08gc3RyaW5nIGFuZCBiYWNrLlxuICovXG5cbmltcG9ydCB7IFR5cGVkVHJhbnNmb3JtZXIgfSBmcm9tICcuL3R5cGVkLXRyYW5zZm9ybWVyLnRzJztcblxuLyoqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSBEYXRlIHRvIGFuIElTTyBzdHJpbmcgYW5kIGJhY2suXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRlVHJhbnNmb3JtZXIgZXh0ZW5kcyBUeXBlZFRyYW5zZm9ybWVyPERhdGUsIHN0cmluZz4ge1xuICAvKipcbiAgICogQW4gaWQgb2YgdGhlIHRyYW5zZm9ybWVyLlxuICAgKlxuICAgKiBAcmV0dXJucyBgZGF0ZWAuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdkYXRlJztcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIHRoZSB2YWx1ZSBpcyBhIERhdGUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAgICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgaWYgdGhlIHZhbHVlIGlzIGEgRGF0ZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBjYW5UcmFuc2Zvcm0odmFsdWU6IHVua25vd24pOiB2YWx1ZSBpcyBEYXRlIHtcbiAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBEYXRlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc3RvcmVzIHRoZSB2YWx1ZSBmcm9tIGEgc3RyaW5nLlxuICAgKlxuICAgKiBAcGFyYW0gdHJhbnNmb3JtZWRWYWx1ZSAtIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZS5cbiAgICogQHJldHVybnMgVGhlIHJlc3RvcmVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHJlc3RvcmVWYWx1ZSh0cmFuc2Zvcm1lZFZhbHVlOiBzdHJpbmcpOiBEYXRlIHtcbiAgICByZXR1cm4gbmV3IERhdGUodHJhbnNmb3JtZWRWYWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNmb3JtcyB0aGUgdmFsdWUgdG8gYSBzdHJpbmcuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byB0cmFuc2Zvcm0uXG4gICAqIEByZXR1cm5zIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSB0cmFuc2Zvcm1WYWx1ZSh2YWx1ZTogRGF0ZSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlLnRvSVNPU3RyaW5nKCk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7O0FBTUEsU0FBUyx3QkFBd0I7QUFLMUIsTUFBTSx3QkFBd0IsaUJBQStCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTWxFLElBQW9CLEtBQWE7QUFDL0IsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixhQUFhLE9BQStCO0FBQzFELFdBQU8saUJBQWlCO0FBQUEsRUFDMUI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixhQUFhLGtCQUFnQztBQUMzRCxXQUFPLElBQUksS0FBSyxnQkFBZ0I7QUFBQSxFQUNsQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGVBQWUsT0FBcUI7QUFDbEQsV0FBTyxNQUFNLFlBQVk7QUFBQSxFQUMzQjtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -0,0 +1,70 @@
1
+ /// <reference path="../library-references.d.mts" />
2
+ /**
3
+ * @file
4
+ *
5
+ * A transformer that combines multiple transformers.
6
+ */
7
+ import { Transformer } from './transformer.mjs';
8
+ /**
9
+ * A transformer that combines multiple transformers.
10
+ */
11
+ export declare class GroupTransformer extends Transformer {
12
+ protected readonly transformers: Transformer[];
13
+ /**
14
+ * An id of the transformer.
15
+ *
16
+ * @returns `group`.
17
+ */
18
+ get id(): string;
19
+ /**
20
+ * Transformers to combine.
21
+ *
22
+ * @param transformers - The transformers to combine.
23
+ */
24
+ constructor(transformers: Transformer[]);
25
+ /**
26
+ * Determines if the value can be transformed by any of the transformers.
27
+ *
28
+ * @param value - The value to check.
29
+ * @param key - The key of the value to check.
30
+ * @returns A boolean indicating if the value can be transformed.
31
+ */
32
+ canTransform(value: unknown, key: string): boolean;
33
+ /**
34
+ * Gets the transformer with the given id.
35
+ *
36
+ * @param transformerId - The id of the transformer to get.
37
+ * @returns The transformer with the given id.
38
+ */
39
+ getTransformer(transformerId: string): Transformer;
40
+ /**
41
+ * Transforms the value using the first transformer that can transform it.
42
+ *
43
+ * @param value - The value to transform.
44
+ * @param key - The key of the value to transform.
45
+ * @returns The transformed value.
46
+ */
47
+ transformValue(value: unknown, key: string): unknown;
48
+ /**
49
+ * Gets the id of the transformer that can transform the given value.
50
+ *
51
+ * @param value - The value to get the transformer id for.
52
+ * @param key - The key of the value to get the transformer id for.
53
+ * @returns The id of the transformer that can transform the given value.
54
+ */
55
+ protected getTransformerId(value: unknown, key: string): null | string;
56
+ /**
57
+ * This transformer does not support restoring values.
58
+ *
59
+ * @throws
60
+ */
61
+ protected restoreValue(): never;
62
+ /**
63
+ * Gets the first transformer that can transform the given value.
64
+ *
65
+ * @param value - The value to get the first transformer for.
66
+ * @param key - The key of the value to get the first transformer for.
67
+ * @returns The first transformer that can transform the given value.
68
+ */
69
+ private getFirstTransformerThatCanTransform;
70
+ }
@@ -0,0 +1,94 @@
1
+ /*
2
+ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
+ if you want to view the source, please visit the github repository of this plugin
4
+ */
5
+
6
+ import {
7
+ assertNonNullable,
8
+ ensureNonNullable
9
+ } from "../type-guards.mjs";
10
+ import { Transformer } from "./transformer.mjs";
11
+ class GroupTransformer extends Transformer {
12
+ /**
13
+ * Transformers to combine.
14
+ *
15
+ * @param transformers - The transformers to combine.
16
+ */
17
+ constructor(transformers) {
18
+ super();
19
+ this.transformers = transformers;
20
+ }
21
+ transformers;
22
+ /**
23
+ * An id of the transformer.
24
+ *
25
+ * @returns `group`.
26
+ */
27
+ get id() {
28
+ return "group";
29
+ }
30
+ /**
31
+ * Determines if the value can be transformed by any of the transformers.
32
+ *
33
+ * @param value - The value to check.
34
+ * @param key - The key of the value to check.
35
+ * @returns A boolean indicating if the value can be transformed.
36
+ */
37
+ canTransform(value, key) {
38
+ return this.getFirstTransformerThatCanTransform(value, key) !== null;
39
+ }
40
+ /**
41
+ * Gets the transformer with the given id.
42
+ *
43
+ * @param transformerId - The id of the transformer to get.
44
+ * @returns The transformer with the given id.
45
+ */
46
+ getTransformer(transformerId) {
47
+ return ensureNonNullable(this.transformers.find((t) => t.id === transformerId), `No transformer with id ${transformerId} found`);
48
+ }
49
+ /**
50
+ * Transforms the value using the first transformer that can transform it.
51
+ *
52
+ * @param value - The value to transform.
53
+ * @param key - The key of the value to transform.
54
+ * @returns The transformed value.
55
+ */
56
+ transformValue(value, key) {
57
+ const transformer = this.getFirstTransformerThatCanTransform(value, key);
58
+ assertNonNullable(transformer, "No transformer can transform the value");
59
+ return transformer.transformValue(value, key);
60
+ }
61
+ /**
62
+ * Gets the id of the transformer that can transform the given value.
63
+ *
64
+ * @param value - The value to get the transformer id for.
65
+ * @param key - The key of the value to get the transformer id for.
66
+ * @returns The id of the transformer that can transform the given value.
67
+ */
68
+ getTransformerId(value, key) {
69
+ const transformer = this.getFirstTransformerThatCanTransform(value, key);
70
+ return transformer === null ? null : transformer.id;
71
+ }
72
+ /**
73
+ * This transformer does not support restoring values.
74
+ *
75
+ * @throws
76
+ */
77
+ restoreValue() {
78
+ throw new Error("GroupTransformer does not support restoring values");
79
+ }
80
+ /**
81
+ * Gets the first transformer that can transform the given value.
82
+ *
83
+ * @param value - The value to get the first transformer for.
84
+ * @param key - The key of the value to get the first transformer for.
85
+ * @returns The first transformer that can transform the given value.
86
+ */
87
+ getFirstTransformerThatCanTransform(value, key) {
88
+ return this.transformers.find((t) => t.canTransform(value, key)) ?? null;
89
+ }
90
+ }
91
+ export {
92
+ GroupTransformer
93
+ };
94
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9ncm91cC10cmFuc2Zvcm1lci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIEEgdHJhbnNmb3JtZXIgdGhhdCBjb21iaW5lcyBtdWx0aXBsZSB0cmFuc2Zvcm1lcnMuXG4gKi9cblxuaW1wb3J0IHtcbiAgYXNzZXJ0Tm9uTnVsbGFibGUsXG4gIGVuc3VyZU5vbk51bGxhYmxlXG59IGZyb20gJy4uL3R5cGUtZ3VhcmRzLnRzJztcbmltcG9ydCB7IFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90cmFuc2Zvcm1lci50cyc7XG5cbi8qKlxuICogQSB0cmFuc2Zvcm1lciB0aGF0IGNvbWJpbmVzIG11bHRpcGxlIHRyYW5zZm9ybWVycy5cbiAqL1xuZXhwb3J0IGNsYXNzIEdyb3VwVHJhbnNmb3JtZXIgZXh0ZW5kcyBUcmFuc2Zvcm1lciB7XG4gIC8qKlxuICAgKiBBbiBpZCBvZiB0aGUgdHJhbnNmb3JtZXIuXG4gICAqXG4gICAqIEByZXR1cm5zIGBncm91cGAuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdncm91cCc7XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNmb3JtZXJzIHRvIGNvbWJpbmUuXG4gICAqXG4gICAqIEBwYXJhbSB0cmFuc2Zvcm1lcnMgLSBUaGUgdHJhbnNmb3JtZXJzIHRvIGNvbWJpbmUuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IocHJvdGVjdGVkIHJlYWRvbmx5IHRyYW5zZm9ybWVyczogVHJhbnNmb3JtZXJbXSkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiB0aGUgdmFsdWUgY2FuIGJlIHRyYW5zZm9ybWVkIGJ5IGFueSBvZiB0aGUgdHJhbnNmb3JtZXJzLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gY2hlY2suXG4gICAqIEBwYXJhbSBrZXkgLSBUaGUga2V5IG9mIHRoZSB2YWx1ZSB0byBjaGVjay5cbiAgICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgaWYgdGhlIHZhbHVlIGNhbiBiZSB0cmFuc2Zvcm1lZC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBjYW5UcmFuc2Zvcm0odmFsdWU6IHVua25vd24sIGtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0Rmlyc3RUcmFuc2Zvcm1lclRoYXRDYW5UcmFuc2Zvcm0odmFsdWUsIGtleSkgIT09IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdHJhbnNmb3JtZXIgd2l0aCB0aGUgZ2l2ZW4gaWQuXG4gICAqXG4gICAqIEBwYXJhbSB0cmFuc2Zvcm1lcklkIC0gVGhlIGlkIG9mIHRoZSB0cmFuc2Zvcm1lciB0byBnZXQuXG4gICAqIEByZXR1cm5zIFRoZSB0cmFuc2Zvcm1lciB3aXRoIHRoZSBnaXZlbiBpZC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBnZXRUcmFuc2Zvcm1lcih0cmFuc2Zvcm1lcklkOiBzdHJpbmcpOiBUcmFuc2Zvcm1lciB7XG4gICAgcmV0dXJuIGVuc3VyZU5vbk51bGxhYmxlKHRoaXMudHJhbnNmb3JtZXJzLmZpbmQoKHQpID0+IHQuaWQgPT09IHRyYW5zZm9ybWVySWQpLCBgTm8gdHJhbnNmb3JtZXIgd2l0aCBpZCAke3RyYW5zZm9ybWVySWR9IGZvdW5kYCk7XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNmb3JtcyB0aGUgdmFsdWUgdXNpbmcgdGhlIGZpcnN0IHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSBpdC5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHRyYW5zZm9ybS5cbiAgICogQHBhcmFtIGtleSAtIFRoZSBrZXkgb2YgdGhlIHZhbHVlIHRvIHRyYW5zZm9ybS5cbiAgICogQHJldHVybnMgVGhlIHRyYW5zZm9ybWVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHRyYW5zZm9ybVZhbHVlKHZhbHVlOiB1bmtub3duLCBrZXk6IHN0cmluZyk6IHVua25vd24ge1xuICAgIGNvbnN0IHRyYW5zZm9ybWVyID0gdGhpcy5nZXRGaXJzdFRyYW5zZm9ybWVyVGhhdENhblRyYW5zZm9ybSh2YWx1ZSwga2V5KTtcbiAgICBhc3NlcnROb25OdWxsYWJsZSh0cmFuc2Zvcm1lciwgJ05vIHRyYW5zZm9ybWVyIGNhbiB0cmFuc2Zvcm0gdGhlIHZhbHVlJyk7XG5cbiAgICByZXR1cm4gdHJhbnNmb3JtZXIudHJhbnNmb3JtVmFsdWUodmFsdWUsIGtleSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgaWQgb2YgdGhlIHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSB0aGUgZ2l2ZW4gdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBnZXQgdGhlIHRyYW5zZm9ybWVyIGlkIGZvci5cbiAgICogQHBhcmFtIGtleSAtIFRoZSBrZXkgb2YgdGhlIHZhbHVlIHRvIGdldCB0aGUgdHJhbnNmb3JtZXIgaWQgZm9yLlxuICAgKiBAcmV0dXJucyBUaGUgaWQgb2YgdGhlIHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSB0aGUgZ2l2ZW4gdmFsdWUuXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZ2V0VHJhbnNmb3JtZXJJZCh2YWx1ZTogdW5rbm93biwga2V5OiBzdHJpbmcpOiBudWxsIHwgc3RyaW5nIHtcbiAgICBjb25zdCB0cmFuc2Zvcm1lciA9IHRoaXMuZ2V0Rmlyc3RUcmFuc2Zvcm1lclRoYXRDYW5UcmFuc2Zvcm0odmFsdWUsIGtleSk7XG4gICAgcmV0dXJuIHRyYW5zZm9ybWVyID09PSBudWxsID8gbnVsbCA6IHRyYW5zZm9ybWVyLmlkO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgdHJhbnNmb3JtZXIgZG9lcyBub3Qgc3VwcG9ydCByZXN0b3JpbmcgdmFsdWVzLlxuICAgKlxuICAgKiBAdGhyb3dzXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVzdG9yZVZhbHVlKCk6IG5ldmVyIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0dyb3VwVHJhbnNmb3JtZXIgZG9lcyBub3Qgc3VwcG9ydCByZXN0b3JpbmcgdmFsdWVzJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgZmlyc3QgdHJhbnNmb3JtZXIgdGhhdCBjYW4gdHJhbnNmb3JtIHRoZSBnaXZlbiB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGdldCB0aGUgZmlyc3QgdHJhbnNmb3JtZXIgZm9yLlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsdWUgdG8gZ2V0IHRoZSBmaXJzdCB0cmFuc2Zvcm1lciBmb3IuXG4gICAqIEByZXR1cm5zIFRoZSBmaXJzdCB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gdGhlIGdpdmVuIHZhbHVlLlxuICAgKi9cbiAgcHJpdmF0ZSBnZXRGaXJzdFRyYW5zZm9ybWVyVGhhdENhblRyYW5zZm9ybSh2YWx1ZTogdW5rbm93biwga2V5OiBzdHJpbmcpOiBudWxsIHwgVHJhbnNmb3JtZXIge1xuICAgIHJldHVybiB0aGlzLnRyYW5zZm9ybWVycy5maW5kKCh0KSA9PiB0LmNhblRyYW5zZm9ybSh2YWx1ZSwga2V5KSkgPz8gbnVsbDtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7QUFNQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQLFNBQVMsbUJBQW1CO0FBS3JCLE1BQU0seUJBQXlCLFlBQVk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFlekMsWUFBK0IsY0FBNkI7QUFDakUsVUFBTTtBQUQ4QjtBQUFBLEVBRXRDO0FBQUEsRUFGc0M7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFUdEMsSUFBb0IsS0FBYTtBQUMvQixXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFrQmdCLGFBQWEsT0FBZ0IsS0FBc0I7QUFDakUsV0FBTyxLQUFLLG9DQUFvQyxPQUFPLEdBQUcsTUFBTTtBQUFBLEVBQ2xFO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsZUFBZSxlQUFvQztBQUNqRSxXQUFPLGtCQUFrQixLQUFLLGFBQWEsS0FBSyxDQUFDLE1BQU0sRUFBRSxPQUFPLGFBQWEsR0FBRywwQkFBMEIsYUFBYSxRQUFRO0FBQUEsRUFDakk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU2dCLGVBQWUsT0FBZ0IsS0FBc0I7QUFDbkUsVUFBTSxjQUFjLEtBQUssb0NBQW9DLE9BQU8sR0FBRztBQUN2RSxzQkFBa0IsYUFBYSx3Q0FBd0M7QUFFdkUsV0FBTyxZQUFZLGVBQWUsT0FBTyxHQUFHO0FBQUEsRUFDOUM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU21CLGlCQUFpQixPQUFnQixLQUE0QjtBQUM5RSxVQUFNLGNBQWMsS0FBSyxvQ0FBb0MsT0FBTyxHQUFHO0FBQ3ZFLFdBQU8sZ0JBQWdCLE9BQU8sT0FBTyxZQUFZO0FBQUEsRUFDbkQ7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPbUIsZUFBc0I7QUFDdkMsVUFBTSxJQUFJLE1BQU0sb0RBQW9EO0FBQUEsRUFDdEU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU1Esb0NBQW9DLE9BQWdCLEtBQWlDO0FBQzNGLFdBQU8sS0FBSyxhQUFhLEtBQUssQ0FBQyxNQUFNLEVBQUUsYUFBYSxPQUFPLEdBQUcsQ0FBQyxLQUFLO0FBQUEsRUFDdEU7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -0,0 +1,9 @@
1
+ /// <reference path="../library-references.d.mts" />
2
+ export * as 'date-transformer' from './date-transformer.mjs';
3
+ export * as 'group-transformer' from './group-transformer.mjs';
4
+ export * as 'map-transformer' from './map-transformer.mjs';
5
+ export * as 'set-transformer' from './set-transformer.mjs';
6
+ export * as 'skip-private-property-transformer' from './skip-private-property-transformer.mjs';
7
+ export * as 'transformer' from './transformer.mjs';
8
+ export * as 'two-way-map-transformer' from './two-way-map-transformer.mjs';
9
+ export * as 'typed-transformer' from './typed-transformer.mjs';
@@ -0,0 +1,24 @@
1
+ /*
2
+ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
+ if you want to view the source, please visit the github repository of this plugin
4
+ */
5
+
6
+ import * as date_transformer from "./date-transformer.mjs";
7
+ import * as group_transformer from "./group-transformer.mjs";
8
+ import * as map_transformer from "./map-transformer.mjs";
9
+ import * as set_transformer from "./set-transformer.mjs";
10
+ import * as skip_private_property_transformer from "./skip-private-property-transformer.mjs";
11
+ import * as transformer from "./transformer.mjs";
12
+ import * as two_way_map_transformer from "./two-way-map-transformer.mjs";
13
+ import * as typed_transformer from "./typed-transformer.mjs";
14
+ export {
15
+ date_transformer as "date-transformer",
16
+ group_transformer as "group-transformer",
17
+ map_transformer as "map-transformer",
18
+ set_transformer as "set-transformer",
19
+ skip_private_property_transformer as "skip-private-property-transformer",
20
+ transformer,
21
+ two_way_map_transformer as "two-way-map-transformer",
22
+ typed_transformer as "typed-transformer"
23
+ };
24
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9pbmRleC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyogVEhJUyBJUyBBIEdFTkVSQVRFRC9CVU5ETEVEIEZJTEUgQlkgQlVJTEQgU0NSSVBUICovXG5cbmV4cG9ydCAqIGFzICdkYXRlLXRyYW5zZm9ybWVyJyBmcm9tICcuL2RhdGUtdHJhbnNmb3JtZXIudHMnO1xuZXhwb3J0ICogYXMgJ2dyb3VwLXRyYW5zZm9ybWVyJyBmcm9tICcuL2dyb3VwLXRyYW5zZm9ybWVyLnRzJztcbmV4cG9ydCAqIGFzICdtYXAtdHJhbnNmb3JtZXInIGZyb20gJy4vbWFwLXRyYW5zZm9ybWVyLnRzJztcbmV4cG9ydCAqIGFzICdzZXQtdHJhbnNmb3JtZXInIGZyb20gJy4vc2V0LXRyYW5zZm9ybWVyLnRzJztcbmV4cG9ydCAqIGFzICdza2lwLXByaXZhdGUtcHJvcGVydHktdHJhbnNmb3JtZXInIGZyb20gJy4vc2tpcC1wcml2YXRlLXByb3BlcnR5LXRyYW5zZm9ybWVyLnRzJztcbmV4cG9ydCAqIGFzICd0cmFuc2Zvcm1lcicgZnJvbSAnLi90cmFuc2Zvcm1lci50cyc7XG5leHBvcnQgKiBhcyAndHdvLXdheS1tYXAtdHJhbnNmb3JtZXInIGZyb20gJy4vdHdvLXdheS1tYXAtdHJhbnNmb3JtZXIudHMnO1xuZXhwb3J0ICogYXMgJ3R5cGVkLXRyYW5zZm9ybWVyJyBmcm9tICcuL3R5cGVkLXRyYW5zZm9ybWVyLnRzJztcbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7O0FBRUEsWUFBWUEsc0JBQXdCO0FBQ3BDLFlBQVlDLHVCQUF5QjtBQUNyQyxZQUFZQyxxQkFBdUI7QUFDbkMsWUFBWUMscUJBQXVCO0FBQ25DLFlBQVlDLHVDQUF5QztBQUNyRCxZQUFZLGlCQUFtQjtBQUMvQixZQUFZQyw2QkFBK0I7QUFDM0MsWUFBWUMsdUJBQXlCOyIsCiAgIm5hbWVzIjogWyJkYXRlLXRyYW5zZm9ybWVyIiwgImdyb3VwLXRyYW5zZm9ybWVyIiwgIm1hcC10cmFuc2Zvcm1lciIsICJzZXQtdHJhbnNmb3JtZXIiLCAic2tpcC1wcml2YXRlLXByb3BlcnR5LXRyYW5zZm9ybWVyIiwgInR3by13YXktbWFwLXRyYW5zZm9ybWVyIiwgInR5cGVkLXRyYW5zZm9ybWVyIl0KfQo=
@@ -0,0 +1,41 @@
1
+ /// <reference path="../library-references.d.mts" />
2
+ /**
3
+ * @file
4
+ *
5
+ * A transformer that can transform a Map to an array of entries and back.
6
+ */
7
+ import { TypedTransformer } from './typed-transformer.mjs';
8
+ type MapEntry = readonly [key: unknown, value: unknown];
9
+ /**
10
+ * A transformer that can transform a Map to an array of entries and back.
11
+ */
12
+ export declare class MapTransformer extends TypedTransformer<Map<unknown, unknown>, MapEntry[]> {
13
+ /**
14
+ * An id of the transformer.
15
+ *
16
+ * @returns The ID of the transformer.
17
+ */
18
+ get id(): string;
19
+ /**
20
+ * Checks if the value is a Map.
21
+ *
22
+ * @param value - The value to check.
23
+ * @returns `true` if the value is a Map, `false` otherwise.
24
+ */
25
+ canTransform(value: unknown): value is Map<unknown, unknown>;
26
+ /**
27
+ * Restores the value from an array of entries.
28
+ *
29
+ * @param transformedValue - The array of entries to restore the value from.
30
+ * @returns The restored value.
31
+ */
32
+ restoreValue(transformedValue: MapEntry[]): Map<unknown, unknown>;
33
+ /**
34
+ * Transforms the value to an array of entries.
35
+ *
36
+ * @param value - The value to transform.
37
+ * @returns The transformed value.
38
+ */
39
+ transformValue(value: Map<unknown, unknown>): MapEntry[];
40
+ }
41
+ export {};
@@ -0,0 +1,47 @@
1
+ /*
2
+ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
+ if you want to view the source, please visit the github repository of this plugin
4
+ */
5
+
6
+ import { TypedTransformer } from "./typed-transformer.mjs";
7
+ class MapTransformer extends TypedTransformer {
8
+ /**
9
+ * An id of the transformer.
10
+ *
11
+ * @returns The ID of the transformer.
12
+ */
13
+ get id() {
14
+ return "map";
15
+ }
16
+ /**
17
+ * Checks if the value is a Map.
18
+ *
19
+ * @param value - The value to check.
20
+ * @returns `true` if the value is a Map, `false` otherwise.
21
+ */
22
+ canTransform(value) {
23
+ return value instanceof Map;
24
+ }
25
+ /**
26
+ * Restores the value from an array of entries.
27
+ *
28
+ * @param transformedValue - The array of entries to restore the value from.
29
+ * @returns The restored value.
30
+ */
31
+ restoreValue(transformedValue) {
32
+ return new Map(transformedValue);
33
+ }
34
+ /**
35
+ * Transforms the value to an array of entries.
36
+ *
37
+ * @param value - The value to transform.
38
+ * @returns The transformed value.
39
+ */
40
+ transformValue(value) {
41
+ return [...value];
42
+ }
43
+ }
44
+ export {
45
+ MapTransformer
46
+ };
47
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9tYXAtdHJhbnNmb3JtZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSBhIE1hcCB0byBhbiBhcnJheSBvZiBlbnRyaWVzIGFuZCBiYWNrLlxuICovXG5cbmltcG9ydCB7IFR5cGVkVHJhbnNmb3JtZXIgfSBmcm9tICcuL3R5cGVkLXRyYW5zZm9ybWVyLnRzJztcblxudHlwZSBNYXBFbnRyeSA9IHJlYWRvbmx5IFtrZXk6IHVua25vd24sIHZhbHVlOiB1bmtub3duXTtcblxuLyoqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSBhIE1hcCB0byBhbiBhcnJheSBvZiBlbnRyaWVzIGFuZCBiYWNrLlxuICovXG5leHBvcnQgY2xhc3MgTWFwVHJhbnNmb3JtZXIgZXh0ZW5kcyBUeXBlZFRyYW5zZm9ybWVyPE1hcDx1bmtub3duLCB1bmtub3duPiwgTWFwRW50cnlbXT4ge1xuICAvKipcbiAgICogQW4gaWQgb2YgdGhlIHRyYW5zZm9ybWVyLlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgSUQgb2YgdGhlIHRyYW5zZm9ybWVyLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnbWFwJztcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIHZhbHVlIGlzIGEgTWFwLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gY2hlY2suXG4gICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgdmFsdWUgaXMgYSBNYXAsIGBmYWxzZWAgb3RoZXJ3aXNlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGNhblRyYW5zZm9ybSh2YWx1ZTogdW5rbm93bik6IHZhbHVlIGlzIE1hcDx1bmtub3duLCB1bmtub3duPiB7XG4gICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgTWFwO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc3RvcmVzIHRoZSB2YWx1ZSBmcm9tIGFuIGFycmF5IG9mIGVudHJpZXMuXG4gICAqXG4gICAqIEBwYXJhbSB0cmFuc2Zvcm1lZFZhbHVlIC0gVGhlIGFycmF5IG9mIGVudHJpZXMgdG8gcmVzdG9yZSB0aGUgdmFsdWUgZnJvbS5cbiAgICogQHJldHVybnMgVGhlIHJlc3RvcmVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHJlc3RvcmVWYWx1ZSh0cmFuc2Zvcm1lZFZhbHVlOiBNYXBFbnRyeVtdKTogTWFwPHVua25vd24sIHVua25vd24+IHtcbiAgICByZXR1cm4gbmV3IE1hcDx1bmtub3duLCB1bmtub3duPih0cmFuc2Zvcm1lZFZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm1zIHRoZSB2YWx1ZSB0byBhbiBhcnJheSBvZiBlbnRyaWVzLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gdHJhbnNmb3JtLlxuICAgKiBAcmV0dXJucyBUaGUgdHJhbnNmb3JtZWQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdHJhbnNmb3JtVmFsdWUodmFsdWU6IE1hcDx1bmtub3duLCB1bmtub3duPik6IE1hcEVudHJ5W10ge1xuICAgIHJldHVybiBbLi4udmFsdWVdO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7OztBQU1BLFNBQVMsd0JBQXdCO0FBTzFCLE1BQU0sdUJBQXVCLGlCQUFvRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU10RixJQUFvQixLQUFhO0FBQy9CLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsYUFBYSxPQUFnRDtBQUMzRSxXQUFPLGlCQUFpQjtBQUFBLEVBQzFCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsYUFBYSxrQkFBcUQ7QUFDaEYsV0FBTyxJQUFJLElBQXNCLGdCQUFnQjtBQUFBLEVBQ25EO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsZUFBZSxPQUEwQztBQUN2RSxXQUFPLENBQUMsR0FBRyxLQUFLO0FBQUEsRUFDbEI7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -0,0 +1,39 @@
1
+ /// <reference path="../library-references.d.mts" />
2
+ /**
3
+ * @file
4
+ *
5
+ * A transformer that can transform a Set to an array and back.
6
+ */
7
+ import { TypedTransformer } from './typed-transformer.mjs';
8
+ /**
9
+ * A transformer that can transform a Set to an array and back.
10
+ */
11
+ export declare class SetTransformer extends TypedTransformer<Set<unknown>, unknown[]> {
12
+ /**
13
+ * An id of the transformer.
14
+ *
15
+ * @returns The ID of the transformer.
16
+ */
17
+ get id(): string;
18
+ /**
19
+ * Checks if the value is a Set.
20
+ *
21
+ * @param value - The value to check.
22
+ * @returns `true` if the value is a Set, `false` otherwise.
23
+ */
24
+ canTransform(value: unknown): value is Set<unknown>;
25
+ /**
26
+ * Restores the value from an array.
27
+ *
28
+ * @param transformedValue - The array to restore the value from.
29
+ * @returns The restored value.
30
+ */
31
+ restoreValue(transformedValue: unknown[]): Set<unknown>;
32
+ /**
33
+ * Transforms the value to an array.
34
+ *
35
+ * @param value - The value to transform.
36
+ * @returns The transformed value.
37
+ */
38
+ transformValue(value: Set<unknown>): unknown[];
39
+ }
@@ -0,0 +1,47 @@
1
+ /*
2
+ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
+ if you want to view the source, please visit the github repository of this plugin
4
+ */
5
+
6
+ import { TypedTransformer } from "./typed-transformer.mjs";
7
+ class SetTransformer extends TypedTransformer {
8
+ /**
9
+ * An id of the transformer.
10
+ *
11
+ * @returns The ID of the transformer.
12
+ */
13
+ get id() {
14
+ return "set";
15
+ }
16
+ /**
17
+ * Checks if the value is a Set.
18
+ *
19
+ * @param value - The value to check.
20
+ * @returns `true` if the value is a Set, `false` otherwise.
21
+ */
22
+ canTransform(value) {
23
+ return value instanceof Set;
24
+ }
25
+ /**
26
+ * Restores the value from an array.
27
+ *
28
+ * @param transformedValue - The array to restore the value from.
29
+ * @returns The restored value.
30
+ */
31
+ restoreValue(transformedValue) {
32
+ return new Set(transformedValue);
33
+ }
34
+ /**
35
+ * Transforms the value to an array.
36
+ *
37
+ * @param value - The value to transform.
38
+ * @returns The transformed value.
39
+ */
40
+ transformValue(value) {
41
+ return [...value];
42
+ }
43
+ }
44
+ export {
45
+ SetTransformer
46
+ };
47
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9zZXQtdHJhbnNmb3JtZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSBhIFNldCB0byBhbiBhcnJheSBhbmQgYmFjay5cbiAqL1xuXG5pbXBvcnQgeyBUeXBlZFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90eXBlZC10cmFuc2Zvcm1lci50cyc7XG5cbi8qKlxuICogQSB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gYSBTZXQgdG8gYW4gYXJyYXkgYW5kIGJhY2suXG4gKi9cbmV4cG9ydCBjbGFzcyBTZXRUcmFuc2Zvcm1lciBleHRlbmRzIFR5cGVkVHJhbnNmb3JtZXI8U2V0PHVua25vd24+LCB1bmtub3duW10+IHtcbiAgLyoqXG4gICAqIEFuIGlkIG9mIHRoZSB0cmFuc2Zvcm1lci5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIElEIG9mIHRoZSB0cmFuc2Zvcm1lci5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgaWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ3NldCc7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSB2YWx1ZSBpcyBhIFNldC5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGNoZWNrLlxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHZhbHVlIGlzIGEgU2V0LCBgZmFsc2VgIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBjYW5UcmFuc2Zvcm0odmFsdWU6IHVua25vd24pOiB2YWx1ZSBpcyBTZXQ8dW5rbm93bj4ge1xuICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFNldDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXN0b3JlcyB0aGUgdmFsdWUgZnJvbSBhbiBhcnJheS5cbiAgICpcbiAgICogQHBhcmFtIHRyYW5zZm9ybWVkVmFsdWUgLSBUaGUgYXJyYXkgdG8gcmVzdG9yZSB0aGUgdmFsdWUgZnJvbS5cbiAgICogQHJldHVybnMgVGhlIHJlc3RvcmVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHJlc3RvcmVWYWx1ZSh0cmFuc2Zvcm1lZFZhbHVlOiB1bmtub3duW10pOiBTZXQ8dW5rbm93bj4ge1xuICAgIHJldHVybiBuZXcgU2V0KHRyYW5zZm9ybWVkVmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyYW5zZm9ybXMgdGhlIHZhbHVlIHRvIGFuIGFycmF5LlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gdHJhbnNmb3JtLlxuICAgKiBAcmV0dXJucyBUaGUgdHJhbnNmb3JtZWQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdHJhbnNmb3JtVmFsdWUodmFsdWU6IFNldDx1bmtub3duPik6IHVua25vd25bXSB7XG4gICAgcmV0dXJuIFsuLi52YWx1ZV07XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7O0FBTUEsU0FBUyx3QkFBd0I7QUFLMUIsTUFBTSx1QkFBdUIsaUJBQTBDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTTVFLElBQW9CLEtBQWE7QUFDL0IsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixhQUFhLE9BQXVDO0FBQ2xFLFdBQU8saUJBQWlCO0FBQUEsRUFDMUI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixhQUFhLGtCQUEyQztBQUN0RSxXQUFPLElBQUksSUFBSSxnQkFBZ0I7QUFBQSxFQUNqQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGVBQWUsT0FBZ0M7QUFDN0QsV0FBTyxDQUFDLEdBQUcsS0FBSztBQUFBLEVBQ2xCO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -0,0 +1,36 @@
1
+ /// <reference path="../library-references.d.mts" />
2
+ /**
3
+ * @file
4
+ *
5
+ * A transformer that skips private properties.
6
+ */
7
+ import { Transformer } from './transformer.mjs';
8
+ /**
9
+ * A transformer that skips private properties.
10
+ */
11
+ export declare class SkipPrivatePropertyTransformer extends Transformer {
12
+ /**
13
+ * An id of the transformer.
14
+ *
15
+ * @returns `skip-private-property`.
16
+ */
17
+ get id(): string;
18
+ /**
19
+ * Determines if the transformer can transform the given value.
20
+ *
21
+ * @param _value - The value to check.
22
+ * @param key - The key of the value to check.
23
+ * @returns A boolean indicating if the transformer can transform the value.
24
+ */
25
+ canTransform(_value: unknown, key: string): boolean;
26
+ /**
27
+ * Transforms the given value.
28
+ *
29
+ * @returns The transformed value.
30
+ */
31
+ transformValue(): unknown;
32
+ /**
33
+ * Restores the given value.
34
+ */
35
+ protected restoreValue(): unknown;
36
+ }
@@ -0,0 +1,45 @@
1
+ /*
2
+ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
+ if you want to view the source, please visit the github repository of this plugin
4
+ */
5
+
6
+ import { Transformer } from "./transformer.mjs";
7
+ const PRIVATE_PROPERTY_PREFIX = "_";
8
+ class SkipPrivatePropertyTransformer extends Transformer {
9
+ /**
10
+ * An id of the transformer.
11
+ *
12
+ * @returns `skip-private-property`.
13
+ */
14
+ get id() {
15
+ return "skip-private-property";
16
+ }
17
+ /**
18
+ * Determines if the transformer can transform the given value.
19
+ *
20
+ * @param _value - The value to check.
21
+ * @param key - The key of the value to check.
22
+ * @returns A boolean indicating if the transformer can transform the value.
23
+ */
24
+ canTransform(_value, key) {
25
+ return key.startsWith(PRIVATE_PROPERTY_PREFIX);
26
+ }
27
+ /**
28
+ * Transforms the given value.
29
+ *
30
+ * @returns The transformed value.
31
+ */
32
+ transformValue() {
33
+ return void 0;
34
+ }
35
+ /**
36
+ * Restores the given value.
37
+ */
38
+ restoreValue() {
39
+ throw new Error("SkipPrivatePropertyTransformer does not support restoring values");
40
+ }
41
+ }
42
+ export {
43
+ SkipPrivatePropertyTransformer
44
+ };
45
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9za2lwLXByaXZhdGUtcHJvcGVydHktdHJhbnNmb3JtZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgc2tpcHMgcHJpdmF0ZSBwcm9wZXJ0aWVzLlxuICovXG5cbmltcG9ydCB7IFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90cmFuc2Zvcm1lci50cyc7XG5cbmNvbnN0IFBSSVZBVEVfUFJPUEVSVFlfUFJFRklYID0gJ18nO1xuXG4vKipcbiAqIEEgdHJhbnNmb3JtZXIgdGhhdCBza2lwcyBwcml2YXRlIHByb3BlcnRpZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTa2lwUHJpdmF0ZVByb3BlcnR5VHJhbnNmb3JtZXIgZXh0ZW5kcyBUcmFuc2Zvcm1lciB7XG4gIC8qKlxuICAgKiBBbiBpZCBvZiB0aGUgdHJhbnNmb3JtZXIuXG4gICAqXG4gICAqIEByZXR1cm5zIGBza2lwLXByaXZhdGUtcHJvcGVydHlgLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnc2tpcC1wcml2YXRlLXByb3BlcnR5JztcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIHRoZSB0cmFuc2Zvcm1lciBjYW4gdHJhbnNmb3JtIHRoZSBnaXZlbiB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIF92YWx1ZSAtIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAgICogQHBhcmFtIGtleSAtIFRoZSBrZXkgb2YgdGhlIHZhbHVlIHRvIGNoZWNrLlxuICAgKiBAcmV0dXJucyBBIGJvb2xlYW4gaW5kaWNhdGluZyBpZiB0aGUgdHJhbnNmb3JtZXIgY2FuIHRyYW5zZm9ybSB0aGUgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgY2FuVHJhbnNmb3JtKF92YWx1ZTogdW5rbm93biwga2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4ga2V5LnN0YXJ0c1dpdGgoUFJJVkFURV9QUk9QRVJUWV9QUkVGSVgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyYW5zZm9ybXMgdGhlIGdpdmVuIHZhbHVlLlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdHJhbnNmb3JtZWQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdHJhbnNmb3JtVmFsdWUoKTogdW5rbm93biB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXN0b3JlcyB0aGUgZ2l2ZW4gdmFsdWUuXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVzdG9yZVZhbHVlKCk6IHVua25vd24ge1xuICAgIHRocm93IG5ldyBFcnJvcignU2tpcFByaXZhdGVQcm9wZXJ0eVRyYW5zZm9ybWVyIGRvZXMgbm90IHN1cHBvcnQgcmVzdG9yaW5nIHZhbHVlcycpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7OztBQU1BLFNBQVMsbUJBQW1CO0FBRTVCLE1BQU0sMEJBQTBCO0FBS3pCLE1BQU0sdUNBQXVDLFlBQVk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNOUQsSUFBb0IsS0FBYTtBQUMvQixXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTZ0IsYUFBYSxRQUFpQixLQUFzQjtBQUNsRSxXQUFPLElBQUksV0FBVyx1QkFBdUI7QUFBQSxFQUMvQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9nQixpQkFBMEI7QUFDeEMsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUttQixlQUF3QjtBQUN6QyxVQUFNLElBQUksTUFBTSxrRUFBa0U7QUFBQSxFQUNwRjtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -0,0 +1,70 @@
1
+ /// <reference path="../library-references.d.mts" />
2
+ /**
3
+ * @file
4
+ *
5
+ * A base class for transformers.
6
+ */
7
+ import type { GenericObject } from '../type-guards.mjs';
8
+ /**
9
+ * A base class for transformers.
10
+ */
11
+ export declare abstract class Transformer {
12
+ /**
13
+ * An id of the transformer.
14
+ */
15
+ abstract get id(): string;
16
+ /**
17
+ * Determines if the transformer can transform the given value.
18
+ *
19
+ * @param value - The value to check.
20
+ * @param key - The key of the value to check.
21
+ * @returns A boolean indicating if the transformer can transform the value.
22
+ */
23
+ abstract canTransform(value: unknown, key: string): boolean;
24
+ /**
25
+ * Gets the transformer with the given id.
26
+ *
27
+ * @param transformerId - The id of the transformer to get.
28
+ * @returns The transformer with the given id.
29
+ */
30
+ getTransformer(transformerId: string): Transformer;
31
+ /**
32
+ * Transforms the given object recursively.
33
+ *
34
+ * @param value - The value to transform.
35
+ * @returns The transformed value.
36
+ */
37
+ transformObjectRecursively(value: object): GenericObject;
38
+ /**
39
+ * Transforms the given value.
40
+ *
41
+ * @param value - The value to transform.
42
+ * @param key - The key of the value to transform.
43
+ * @returns The transformed value.
44
+ */
45
+ abstract transformValue(value: unknown, key: string): unknown;
46
+ /**
47
+ * Gets the id of the transformer that can transform the given value.
48
+ *
49
+ * @param value - The value to get the transformer id for.
50
+ * @param key - The key of the value to get the transformer id for.
51
+ * @returns The id of the transformer that can transform the given value.
52
+ */
53
+ protected getTransformerId(value: unknown, key: string): null | string;
54
+ /**
55
+ * Restores the given value.
56
+ *
57
+ * @param transformedValue - The value to restore.
58
+ * @param key - The key of the value to restore.
59
+ * @returns The restored value.
60
+ */
61
+ protected abstract restoreValue(transformedValue: unknown, key: string): unknown;
62
+ /**
63
+ * Transforms the given value recursively.
64
+ *
65
+ * @param value - The value to transform.
66
+ * @param key - The key of the value to transform.
67
+ * @returns The transformed value.
68
+ */
69
+ private transformValueRecursively;
70
+ }