xml-model 1.3.2 → 2.0.0-beta.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 (74) hide show
  1. package/README.md +39 -35
  2. package/dist/index.d.ts +3 -7
  3. package/dist/index.js +18 -17
  4. package/dist/model.d.ts +53 -0
  5. package/dist/model.js +69 -0
  6. package/dist/util/zod.d.ts +4 -0
  7. package/dist/util/zod.js +21 -0
  8. package/dist/xml/codec.d.ts +87 -0
  9. package/dist/xml/codec.js +385 -0
  10. package/dist/xml/examples.d.ts +188 -0
  11. package/dist/xml/index.d.ts +5 -32
  12. package/dist/xml/index.js +14 -54
  13. package/dist/xml/model.d.ts +18 -0
  14. package/dist/xml/model.js +37 -0
  15. package/dist/xml/schema-meta.d.ts +57 -0
  16. package/dist/xml/schema-meta.js +96 -0
  17. package/dist/xml/xml-js.d.ts +138 -3
  18. package/dist/xml/xml-js.js +89 -5
  19. package/package.json +10 -23
  20. package/dist/_virtual/Reflect.js +0 -8
  21. package/dist/_virtual/Reflect2.js +0 -5
  22. package/dist/_virtual/_commonjsHelpers.js +0 -47
  23. package/dist/defaults.d.ts +0 -15
  24. package/dist/defaults.js +0 -130
  25. package/dist/errors.d.ts +0 -24
  26. package/dist/errors.js +0 -45
  27. package/dist/middleware.d.ts +0 -10
  28. package/dist/middleware.js +0 -25
  29. package/dist/model/built-ins.d.ts +0 -3
  30. package/dist/model/built-ins.js +0 -43
  31. package/dist/model/index.d.ts +0 -21
  32. package/dist/model/index.js +0 -236
  33. package/dist/model/property.d.ts +0 -6
  34. package/dist/model/property.js +0 -67
  35. package/dist/model/registry.d.ts +0 -9
  36. package/dist/model/registry.js +0 -19
  37. package/dist/model/types.d.ts +0 -74
  38. package/dist/node_modules/reflect-metadata/Reflect.js +0 -806
  39. package/dist/types.d.ts +0 -17
  40. package/dist/util/is-regexp.d.ts +0 -12
  41. package/dist/util/is-regexp.js +0 -8
  42. package/dist/util/merge-maps.d.ts +0 -2
  43. package/dist/util/merge-maps.js +0 -23
  44. package/dist/vite/index.d.ts +0 -53
  45. package/dist/vite/index.js +0 -63
  46. package/dist/vite/node_modules/typescript-rtti/dist.esm/common/format.js +0 -105
  47. package/dist/vite/node_modules/typescript-rtti/dist.esm/common/index.js +0 -55
  48. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/api-call-transformer.js +0 -152
  49. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/common/class-analyzer.js +0 -83
  50. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/common/compile-error.js +0 -8
  51. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/common/import-analyzer.js +0 -89
  52. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/common/interface-analyzer.js +0 -58
  53. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/common/visitor-base.js +0 -93
  54. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/declarations-emitter.js +0 -31
  55. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/encode-parameter.js +0 -64
  56. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/find-relative-path.js +0 -41
  57. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/flags.js +0 -43
  58. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/forward-ref.js +0 -20
  59. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/get-exports-for-symbol.js +0 -64
  60. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/index.js +0 -130
  61. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/legacy-decorator.js +0 -10
  62. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/legacy-type-encoder.js +0 -82
  63. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/literal-node.js +0 -9
  64. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/metadata-collector.js +0 -56
  65. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/metadata-decorator.js +0 -80
  66. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/metadata-emitter.js +0 -425
  67. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/metadata-encoder.js +0 -212
  68. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/rt-helper.js +0 -96
  69. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/rtti-visitor-base.js +0 -28
  70. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/serialize.js +0 -31
  71. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/type-encoder.js +0 -76
  72. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/type-literal.js +0 -499
  73. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/utils.js +0 -906
  74. package/dist/vite/node_modules/typescript-rtti/dist.esm/transformer/workarounds.js +0 -7
@@ -1,74 +0,0 @@
1
- import { ReflectedProperty } from 'typescript-rtti';
2
- import { XMLRoot, XMLElement } from '../types';
3
- import { Middleware } from '../middleware';
4
- import { XMLModel } from './index';
5
- export type XMLModelProperty<T> = Extract<keyof T, string>;
6
- export type PropertiesRecord<T> = {
7
- [key in keyof T]?: T[key];
8
- };
9
- export type XMLPropertiesRecord<T> = {
10
- [key in keyof T]?: XMLRoot;
11
- };
12
- export interface PropertyToXMLContext<T> extends Omit<toXMLContext<T>, "properties"> {
13
- property: XMLModelPropertyOptions<T>;
14
- value: T[keyof T];
15
- }
16
- export interface PropertyFromXMLContext<T> extends Omit<fromXMLContext<T>, "properties"> {
17
- property: XMLModelPropertyOptions<T>;
18
- elements: XMLElement[];
19
- }
20
- export interface XMLModelPropertyOptions<T> {
21
- name: keyof T;
22
- reflected: ReflectedProperty;
23
- tagname: string;
24
- ignored: boolean;
25
- inline: boolean;
26
- model?: XMLModel<any>;
27
- isSourceElement: (element: XMLElement, context: Omit<PropertyFromXMLContext<T>, "elements">) => boolean;
28
- resolveElements: (context: Omit<PropertyFromXMLContext<T>, "elements">) => XMLElement[];
29
- fromXML: (context: PropertyFromXMLContext<T>) => T[keyof T];
30
- toXML: (context: PropertyToXMLContext<T>) => XMLRoot;
31
- }
32
- export interface CreateXMLModelPropertyOptions<T> {
33
- tagname?: string;
34
- sourceElements?: string | RegExp | XMLModelPropertyOptions<T>["isSourceElement"];
35
- resolveElements?: XMLModelPropertyOptions<T>["resolveElements"];
36
- toXML?: XMLModelPropertyOptions<T>["toXML"];
37
- fromXML?: XMLModelPropertyOptions<T>["fromXML"];
38
- inline?: boolean;
39
- ignore?: boolean;
40
- model?: XMLModelPropertyOptions<T>["model"];
41
- }
42
- interface ConversionOptions<C, T> {
43
- parent: ConversionOptions<C, T> | null;
44
- middlewares: Middleware<C, T>[];
45
- }
46
- export interface fromXMLContext<T> {
47
- xml: XMLRoot;
48
- properties: PropertiesRecord<T>;
49
- model: XMLModel<T>;
50
- }
51
- export interface toXMLContext<T> {
52
- object: T;
53
- properties: XMLPropertiesRecord<T>;
54
- model: XMLModel<T>;
55
- }
56
- export interface XMLModelOptions<T> {
57
- parent?: XMLModel<T>;
58
- properties: {
59
- fromXML: ConversionOptions<Omit<fromXMLContext<T>, "properties">, PropertiesRecord<T>>;
60
- toXML: ConversionOptions<Omit<toXMLContext<T>, "properties">, XMLPropertiesRecord<T>>;
61
- options: Map<XMLModelProperty<T>, XMLModelPropertyOptions<T>>;
62
- };
63
- fromXML: ConversionOptions<fromXMLContext<T>, T>;
64
- toXML: ConversionOptions<toXMLContext<T>, XMLRoot>;
65
- tagname: string;
66
- }
67
- export interface CreateXMLModelOptions<T> {
68
- parent?: XMLModelOptions<T>["parent"];
69
- fromXML?: XMLModelOptions<T>["fromXML"]["middlewares"][number];
70
- toXML?: XMLModelOptions<T>["toXML"]["middlewares"][number];
71
- tagname?: XMLModelOptions<T>["tagname"];
72
- }
73
- export { XMLModel };
74
- //# sourceMappingURL=types.d.ts.map