@seidor-cloud-produtos/tax-core 0.0.5 → 0.0.6-beta1
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.
- package/dist/CounterRegister.d.mts +1 -0
- package/dist/CounterRegister.d.ts +1 -0
- package/dist/CounterRegister.js +7 -4
- package/dist/CounterRegister.js.map +1 -1
- package/dist/CounterRegister.mjs +7 -4
- package/dist/CounterRegister.mjs.map +1 -1
- package/dist/{Decorators-BUUn8PHd.d.mts → Decorators-B-IYFkTI.d.mts} +8 -8
- package/dist/{Decorators-BUUn8PHd.d.ts → Decorators-B-IYFkTI.d.ts} +8 -8
- package/dist/Decorators.d.mts +1 -1
- package/dist/Decorators.d.ts +1 -1
- package/dist/Decorators.js +5 -5
- package/dist/Decorators.js.map +1 -1
- package/dist/Decorators.mjs +4 -4
- package/dist/Decorators.mjs.map +1 -1
- package/dist/Register.js +4 -4
- package/dist/Register.js.map +1 -1
- package/dist/Register.mjs +4 -4
- package/dist/Register.mjs.map +1 -1
- package/dist/ReportGenerator.js +8 -5
- package/dist/ReportGenerator.js.map +1 -1
- package/dist/ReportGenerator.mjs +8 -5
- package/dist/ReportGenerator.mjs.map +1 -1
- package/dist/implementations/TaxRegisterGenerator.js +2 -2
- package/dist/implementations/TaxRegisterGenerator.js.map +1 -1
- package/dist/implementations/TaxRegisterGenerator.mjs +2 -2
- package/dist/implementations/TaxRegisterGenerator.mjs.map +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +9 -6
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +9 -6
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/CounterRegister.js
CHANGED
|
@@ -35,7 +35,7 @@ module.exports = __toCommonJS(CounterRegister_exports);
|
|
|
35
35
|
|
|
36
36
|
// lib/taxReport/Decorators.ts
|
|
37
37
|
var import_reflect_metadata = require("reflect-metadata");
|
|
38
|
-
var
|
|
38
|
+
var keyCompositionMetadata = Symbol("key");
|
|
39
39
|
var maximumNumericLength = 19;
|
|
40
40
|
var defaultAlphanumericLength = 255;
|
|
41
41
|
function numericField(required, maximumLength, valueProvider, fillEntireLength = false, maximumDecimalsLength = 0) {
|
|
@@ -100,7 +100,7 @@ function keyFieldDefinition(fieldName, valueProvider) {
|
|
|
100
100
|
function Key() {
|
|
101
101
|
return function(target, propertyKey, other) {
|
|
102
102
|
let keyComposition;
|
|
103
|
-
keyComposition = Reflect.getMetadata(
|
|
103
|
+
keyComposition = Reflect.getMetadata(keyCompositionMetadata, target);
|
|
104
104
|
if (!keyComposition) {
|
|
105
105
|
keyComposition = key();
|
|
106
106
|
}
|
|
@@ -110,7 +110,7 @@ function Key() {
|
|
|
110
110
|
other ? 1 /* method */ : 0 /* property */
|
|
111
111
|
)
|
|
112
112
|
);
|
|
113
|
-
Reflect.defineMetadata(
|
|
113
|
+
Reflect.defineMetadata(keyCompositionMetadata, keyComposition, target);
|
|
114
114
|
};
|
|
115
115
|
}
|
|
116
116
|
|
|
@@ -145,7 +145,7 @@ var Register = class {
|
|
|
145
145
|
}
|
|
146
146
|
getKeyValue() {
|
|
147
147
|
const keyComposition = Reflect.getMetadata(
|
|
148
|
-
|
|
148
|
+
keyCompositionMetadata,
|
|
149
149
|
this
|
|
150
150
|
);
|
|
151
151
|
let result = "";
|
|
@@ -166,6 +166,9 @@ var CounterRegister = class extends Register {
|
|
|
166
166
|
__publicField(this, "reg_blc", "");
|
|
167
167
|
__publicField(this, "qtd_reg_blc", 0);
|
|
168
168
|
}
|
|
169
|
+
getKeyValue() {
|
|
170
|
+
return `${(/* @__PURE__ */ new Date()).toISOString()}`;
|
|
171
|
+
}
|
|
169
172
|
};
|
|
170
173
|
__decorateClass([
|
|
171
174
|
Alphanumeric()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../lib/taxReport/CounterRegister.ts","../lib/taxReport/Decorators.ts","../lib/taxReport/interfaces/RegisterEventNotifier.ts","../lib/taxReport/Register.ts"],"sourcesContent":["import {Register} from \"./Register\";\nimport {Alphanumeric, Numeric} from \"./Decorators\";\n\nexport default class CounterRegister extends Register {\n\n // @ts-ignore\n @Alphanumeric()\n reg_blc: string = \"\";\n\n // @ts-ignore\n @Numeric()\n qtd_reg_blc: number = 0;\n\n constructor(qtd_reg_blc: number = 0, register: string = \"9900\") {\n super(register, null);\n }\n\n}\n","import \"reflect-metadata\";\n\nexport const
|
|
1
|
+
{"version":3,"sources":["../lib/taxReport/CounterRegister.ts","../lib/taxReport/Decorators.ts","../lib/taxReport/interfaces/RegisterEventNotifier.ts","../lib/taxReport/Register.ts"],"sourcesContent":["import { Register } from \"./Register\";\nimport { Alphanumeric, Numeric } from \"./Decorators\";\n\nexport default class CounterRegister extends Register {\n\n // @ts-ignore\n @Alphanumeric()\n reg_blc: string = \"\";\n\n // @ts-ignore\n @Numeric()\n qtd_reg_blc: number = 0;\n\n constructor(qtd_reg_blc: number = 0, register: string = \"9900\") {\n super(register, null);\n }\n\n override getKeyValue(): string {\n return `${new Date().toISOString()}`\n }\n}\n","import \"reflect-metadata\";\n\nexport const keyCompositionMetadata = Symbol(\"key\");\n\nexport const maximumNumericLength = 19;\nexport const defaultAlphanumericLength = 255;\n\nexport enum FieldDataType {\n alphanumeric,\n numeric,\n}\n\nexport enum valueProviderType {\n property,\n method,\n}\n\nexport interface FieldFormat {\n required: boolean;\n dataType: FieldDataType;\n maximumLength: number;\n maximumDecimalsLength: number;\n fillEntireLength: boolean;\n valueProvider: valueProviderType;\n}\n\nfunction numericField(\n required: boolean,\n maximumLength: number,\n valueProvider: valueProviderType,\n fillEntireLength: boolean = false,\n maximumDecimalsLength: number = 0,\n): FieldFormat {\n return {\n required: required,\n dataType: FieldDataType.numeric,\n maximumLength: maximumLength,\n maximumDecimalsLength: maximumDecimalsLength,\n fillEntireLength: fillEntireLength,\n valueProvider: valueProvider,\n } as FieldFormat;\n}\n\nfunction alphanumericField(\n required: boolean,\n maximumLength: number,\n valueProvider: valueProviderType,\n fillEntireLength: boolean = false,\n maximumDecimalsLength: number = 0,\n): FieldFormat {\n return {\n required: required,\n dataType: FieldDataType.alphanumeric,\n maximumLength: maximumLength,\n maximumDecimalsLength: maximumDecimalsLength,\n fillEntireLength: fillEntireLength,\n valueProvider: valueProvider,\n } as FieldFormat;\n}\n\nexport function Numeric(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = maximumNumericLength,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n numericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n ),\n target,\n );\n };\n}\n\nexport function Decimal(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = maximumNumericLength,\n maximumDecimalsLength: number = 2,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n numericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n maximumDecimalsLength,\n ),\n target,\n );\n };\n}\n\nexport function Alphanumeric(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = defaultAlphanumericLength,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n alphanumericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n ),\n target,\n );\n };\n}\n\nexport interface KeyComposition {\n fields: KeyFieldDefinition[];\n}\n\nexport interface KeyFieldDefinition {\n fieldName: string;\n valueProvider: valueProviderType;\n}\n\nfunction key() {\n return {\n fields: [],\n } as KeyComposition;\n}\n\nfunction keyFieldDefinition(\n fieldName: string,\n valueProvider: valueProviderType,\n) {\n return {\n fieldName: fieldName,\n valueProvider: valueProvider,\n } as KeyFieldDefinition;\n}\n\nexport function Key(): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n let keyComposition: KeyComposition;\n keyComposition = Reflect.getMetadata(keyCompositionMetadata, target);\n if (!keyComposition) {\n keyComposition = key();\n }\n keyComposition.fields.push(\n keyFieldDefinition(\n propertyKey,\n other ? valueProviderType.method : valueProviderType.property,\n ),\n );\n Reflect.defineMetadata(keyCompositionMetadata, keyComposition, target);\n };\n}\n","import {Register} from \"../Register\";\r\nimport RegisterSubscriber from \"./RegisterSubscriber\";\r\n\r\nexport enum Event {\r\n REGISTER_CREATED = \"register_created\",\r\n}\r\n\r\nexport interface RegisterEventData {\r\n event: Event\r\n dataTypeName: string\r\n data: Register\r\n}\r\n\r\nfunction newRegisterEvent(event: Event, register: Register): RegisterEventData {\r\n return {\r\n event: event,\r\n dataTypeName: register.constructor.name,\r\n data: register\r\n }\r\n}\r\n\r\nexport function newRegisterEventData(register: Register): RegisterEventData {\r\n return newRegisterEvent(Event.REGISTER_CREATED, register)\r\n}\r\n\r\n\r\nexport default interface RegisterEventNotifier {\r\n addSubscriber(subscriber: RegisterSubscriber):void\r\n notifyEvent(eventData: RegisterEventData): void\r\n}\r\n","import { Key, KeyComposition, keyCompositionMetadata } from \"./Decorators\";\nimport RegisterEventNotifier, {\n newRegisterEventData,\n} from \"./interfaces/RegisterEventNotifier\";\n\nexport abstract class Register {\n private _registerNotifier: RegisterEventNotifier;\n private readonly _children: Register[];\n\n // @ts-ignore\n @Key()\n reg: string = \"\";\n constructor(registerTag: string, notifier: RegisterEventNotifier) {\n this._children = [];\n this.reg = registerTag;\n this._registerNotifier = notifier;\n }\n\n protected addChild(child: Register) {\n this._children.push(child);\n this._registerNotifier!!.notifyEvent(newRegisterEventData(child));\n }\n\n public getChildren(): Register[] {\n return this._children;\n }\n\n public getKeyValue(): string {\n const keyComposition: KeyComposition = Reflect.getMetadata(\n keyCompositionMetadata,\n this,\n );\n let result = \"\";\n for (const keyFieldData of keyComposition.fields) {\n result = result.concat(this[keyFieldData.fieldName]);\n }\n return result;\n }\n}\n"],"mappings":"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","names":[]}
|
package/dist/CounterRegister.mjs
CHANGED
|
@@ -13,7 +13,7 @@ var __publicField = (obj, key2, value) => __defNormalProp(obj, typeof key2 !== "
|
|
|
13
13
|
|
|
14
14
|
// lib/taxReport/Decorators.ts
|
|
15
15
|
import "reflect-metadata";
|
|
16
|
-
var
|
|
16
|
+
var keyCompositionMetadata = Symbol("key");
|
|
17
17
|
var maximumNumericLength = 19;
|
|
18
18
|
var defaultAlphanumericLength = 255;
|
|
19
19
|
function numericField(required, maximumLength, valueProvider, fillEntireLength = false, maximumDecimalsLength = 0) {
|
|
@@ -78,7 +78,7 @@ function keyFieldDefinition(fieldName, valueProvider) {
|
|
|
78
78
|
function Key() {
|
|
79
79
|
return function(target, propertyKey, other) {
|
|
80
80
|
let keyComposition;
|
|
81
|
-
keyComposition = Reflect.getMetadata(
|
|
81
|
+
keyComposition = Reflect.getMetadata(keyCompositionMetadata, target);
|
|
82
82
|
if (!keyComposition) {
|
|
83
83
|
keyComposition = key();
|
|
84
84
|
}
|
|
@@ -88,7 +88,7 @@ function Key() {
|
|
|
88
88
|
other ? 1 /* method */ : 0 /* property */
|
|
89
89
|
)
|
|
90
90
|
);
|
|
91
|
-
Reflect.defineMetadata(
|
|
91
|
+
Reflect.defineMetadata(keyCompositionMetadata, keyComposition, target);
|
|
92
92
|
};
|
|
93
93
|
}
|
|
94
94
|
|
|
@@ -123,7 +123,7 @@ var Register = class {
|
|
|
123
123
|
}
|
|
124
124
|
getKeyValue() {
|
|
125
125
|
const keyComposition = Reflect.getMetadata(
|
|
126
|
-
|
|
126
|
+
keyCompositionMetadata,
|
|
127
127
|
this
|
|
128
128
|
);
|
|
129
129
|
let result = "";
|
|
@@ -144,6 +144,9 @@ var CounterRegister = class extends Register {
|
|
|
144
144
|
__publicField(this, "reg_blc", "");
|
|
145
145
|
__publicField(this, "qtd_reg_blc", 0);
|
|
146
146
|
}
|
|
147
|
+
getKeyValue() {
|
|
148
|
+
return `${(/* @__PURE__ */ new Date()).toISOString()}`;
|
|
149
|
+
}
|
|
147
150
|
};
|
|
148
151
|
__decorateClass([
|
|
149
152
|
Alphanumeric()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../lib/taxReport/Decorators.ts","../lib/taxReport/interfaces/RegisterEventNotifier.ts","../lib/taxReport/Register.ts","../lib/taxReport/CounterRegister.ts"],"sourcesContent":["import \"reflect-metadata\";\n\nexport const
|
|
1
|
+
{"version":3,"sources":["../lib/taxReport/Decorators.ts","../lib/taxReport/interfaces/RegisterEventNotifier.ts","../lib/taxReport/Register.ts","../lib/taxReport/CounterRegister.ts"],"sourcesContent":["import \"reflect-metadata\";\n\nexport const keyCompositionMetadata = Symbol(\"key\");\n\nexport const maximumNumericLength = 19;\nexport const defaultAlphanumericLength = 255;\n\nexport enum FieldDataType {\n alphanumeric,\n numeric,\n}\n\nexport enum valueProviderType {\n property,\n method,\n}\n\nexport interface FieldFormat {\n required: boolean;\n dataType: FieldDataType;\n maximumLength: number;\n maximumDecimalsLength: number;\n fillEntireLength: boolean;\n valueProvider: valueProviderType;\n}\n\nfunction numericField(\n required: boolean,\n maximumLength: number,\n valueProvider: valueProviderType,\n fillEntireLength: boolean = false,\n maximumDecimalsLength: number = 0,\n): FieldFormat {\n return {\n required: required,\n dataType: FieldDataType.numeric,\n maximumLength: maximumLength,\n maximumDecimalsLength: maximumDecimalsLength,\n fillEntireLength: fillEntireLength,\n valueProvider: valueProvider,\n } as FieldFormat;\n}\n\nfunction alphanumericField(\n required: boolean,\n maximumLength: number,\n valueProvider: valueProviderType,\n fillEntireLength: boolean = false,\n maximumDecimalsLength: number = 0,\n): FieldFormat {\n return {\n required: required,\n dataType: FieldDataType.alphanumeric,\n maximumLength: maximumLength,\n maximumDecimalsLength: maximumDecimalsLength,\n fillEntireLength: fillEntireLength,\n valueProvider: valueProvider,\n } as FieldFormat;\n}\n\nexport function Numeric(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = maximumNumericLength,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n numericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n ),\n target,\n );\n };\n}\n\nexport function Decimal(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = maximumNumericLength,\n maximumDecimalsLength: number = 2,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n numericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n maximumDecimalsLength,\n ),\n target,\n );\n };\n}\n\nexport function Alphanumeric(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = defaultAlphanumericLength,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n alphanumericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n ),\n target,\n );\n };\n}\n\nexport interface KeyComposition {\n fields: KeyFieldDefinition[];\n}\n\nexport interface KeyFieldDefinition {\n fieldName: string;\n valueProvider: valueProviderType;\n}\n\nfunction key() {\n return {\n fields: [],\n } as KeyComposition;\n}\n\nfunction keyFieldDefinition(\n fieldName: string,\n valueProvider: valueProviderType,\n) {\n return {\n fieldName: fieldName,\n valueProvider: valueProvider,\n } as KeyFieldDefinition;\n}\n\nexport function Key(): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n let keyComposition: KeyComposition;\n keyComposition = Reflect.getMetadata(keyCompositionMetadata, target);\n if (!keyComposition) {\n keyComposition = key();\n }\n keyComposition.fields.push(\n keyFieldDefinition(\n propertyKey,\n other ? valueProviderType.method : valueProviderType.property,\n ),\n );\n Reflect.defineMetadata(keyCompositionMetadata, keyComposition, target);\n };\n}\n","import {Register} from \"../Register\";\r\nimport RegisterSubscriber from \"./RegisterSubscriber\";\r\n\r\nexport enum Event {\r\n REGISTER_CREATED = \"register_created\",\r\n}\r\n\r\nexport interface RegisterEventData {\r\n event: Event\r\n dataTypeName: string\r\n data: Register\r\n}\r\n\r\nfunction newRegisterEvent(event: Event, register: Register): RegisterEventData {\r\n return {\r\n event: event,\r\n dataTypeName: register.constructor.name,\r\n data: register\r\n }\r\n}\r\n\r\nexport function newRegisterEventData(register: Register): RegisterEventData {\r\n return newRegisterEvent(Event.REGISTER_CREATED, register)\r\n}\r\n\r\n\r\nexport default interface RegisterEventNotifier {\r\n addSubscriber(subscriber: RegisterSubscriber):void\r\n notifyEvent(eventData: RegisterEventData): void\r\n}\r\n","import { Key, KeyComposition, keyCompositionMetadata } from \"./Decorators\";\nimport RegisterEventNotifier, {\n newRegisterEventData,\n} from \"./interfaces/RegisterEventNotifier\";\n\nexport abstract class Register {\n private _registerNotifier: RegisterEventNotifier;\n private readonly _children: Register[];\n\n // @ts-ignore\n @Key()\n reg: string = \"\";\n constructor(registerTag: string, notifier: RegisterEventNotifier) {\n this._children = [];\n this.reg = registerTag;\n this._registerNotifier = notifier;\n }\n\n protected addChild(child: Register) {\n this._children.push(child);\n this._registerNotifier!!.notifyEvent(newRegisterEventData(child));\n }\n\n public getChildren(): Register[] {\n return this._children;\n }\n\n public getKeyValue(): string {\n const keyComposition: KeyComposition = Reflect.getMetadata(\n keyCompositionMetadata,\n this,\n );\n let result = \"\";\n for (const keyFieldData of keyComposition.fields) {\n result = result.concat(this[keyFieldData.fieldName]);\n }\n return result;\n }\n}\n","import { Register } from \"./Register\";\nimport { Alphanumeric, Numeric } from \"./Decorators\";\n\nexport default class CounterRegister extends Register {\n\n // @ts-ignore\n @Alphanumeric()\n reg_blc: string = \"\";\n\n // @ts-ignore\n @Numeric()\n qtd_reg_blc: number = 0;\n\n constructor(qtd_reg_blc: number = 0, register: string = \"9900\") {\n super(register, null);\n }\n\n override getKeyValue(): string {\n return `${new Date().toISOString()}`\n }\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
declare const
|
|
1
|
+
declare const keyCompositionMetadata: unique symbol;
|
|
2
2
|
declare const maximumNumericLength = 19;
|
|
3
3
|
declare const defaultAlphanumericLength = 255;
|
|
4
4
|
declare enum FieldDataType {
|
|
@@ -17,9 +17,9 @@ interface FieldFormat {
|
|
|
17
17
|
fillEntireLength: boolean;
|
|
18
18
|
valueProvider: valueProviderType;
|
|
19
19
|
}
|
|
20
|
-
declare function Numeric(required?: boolean, fillEntireLength?: boolean, maximumLength?: number):
|
|
21
|
-
declare function Decimal(required?: boolean, fillEntireLength?: boolean, maximumLength?: number, maximumDecimalsLength?: number):
|
|
22
|
-
declare function Alphanumeric(required?: boolean, fillEntireLength?: boolean, maximumLength?: number):
|
|
20
|
+
declare function Numeric(required?: boolean, fillEntireLength?: boolean, maximumLength?: number): PropertyDecorator | MethodDecorator;
|
|
21
|
+
declare function Decimal(required?: boolean, fillEntireLength?: boolean, maximumLength?: number, maximumDecimalsLength?: number): PropertyDecorator | MethodDecorator;
|
|
22
|
+
declare function Alphanumeric(required?: boolean, fillEntireLength?: boolean, maximumLength?: number): PropertyDecorator | MethodDecorator;
|
|
23
23
|
interface KeyComposition {
|
|
24
24
|
fields: KeyFieldDefinition[];
|
|
25
25
|
}
|
|
@@ -27,7 +27,7 @@ interface KeyFieldDefinition {
|
|
|
27
27
|
fieldName: string;
|
|
28
28
|
valueProvider: valueProviderType;
|
|
29
29
|
}
|
|
30
|
-
declare function Key():
|
|
30
|
+
declare function Key(): PropertyDecorator | MethodDecorator;
|
|
31
31
|
|
|
32
32
|
declare const Decorators_Alphanumeric: typeof Alphanumeric;
|
|
33
33
|
declare const Decorators_Decimal: typeof Decimal;
|
|
@@ -39,12 +39,12 @@ type Decorators_KeyComposition = KeyComposition;
|
|
|
39
39
|
type Decorators_KeyFieldDefinition = KeyFieldDefinition;
|
|
40
40
|
declare const Decorators_Numeric: typeof Numeric;
|
|
41
41
|
declare const Decorators_defaultAlphanumericLength: typeof defaultAlphanumericLength;
|
|
42
|
-
declare const
|
|
42
|
+
declare const Decorators_keyCompositionMetadata: typeof keyCompositionMetadata;
|
|
43
43
|
declare const Decorators_maximumNumericLength: typeof maximumNumericLength;
|
|
44
44
|
type Decorators_valueProviderType = valueProviderType;
|
|
45
45
|
declare const Decorators_valueProviderType: typeof valueProviderType;
|
|
46
46
|
declare namespace Decorators {
|
|
47
|
-
export { Decorators_Alphanumeric as Alphanumeric, Decorators_Decimal as Decimal, Decorators_FieldDataType as FieldDataType, type Decorators_FieldFormat as FieldFormat, Decorators_Key as Key, type Decorators_KeyComposition as KeyComposition, type Decorators_KeyFieldDefinition as KeyFieldDefinition, Decorators_Numeric as Numeric, Decorators_defaultAlphanumericLength as defaultAlphanumericLength,
|
|
47
|
+
export { Decorators_Alphanumeric as Alphanumeric, Decorators_Decimal as Decimal, Decorators_FieldDataType as FieldDataType, type Decorators_FieldFormat as FieldFormat, Decorators_Key as Key, type Decorators_KeyComposition as KeyComposition, type Decorators_KeyFieldDefinition as KeyFieldDefinition, Decorators_Numeric as Numeric, Decorators_defaultAlphanumericLength as defaultAlphanumericLength, Decorators_keyCompositionMetadata as keyCompositionMetadata, Decorators_maximumNumericLength as maximumNumericLength, Decorators_valueProviderType as valueProviderType };
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
-
export { Alphanumeric as A, Decorators as D, FieldDataType as F, type KeyComposition as K, Numeric as N, type FieldFormat as a, Decimal as b, type KeyFieldDefinition as c, defaultAlphanumericLength as d, Key as e,
|
|
50
|
+
export { Alphanumeric as A, Decorators as D, FieldDataType as F, type KeyComposition as K, Numeric as N, type FieldFormat as a, Decimal as b, type KeyFieldDefinition as c, defaultAlphanumericLength as d, Key as e, keyCompositionMetadata as k, maximumNumericLength as m, valueProviderType as v };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
declare const
|
|
1
|
+
declare const keyCompositionMetadata: unique symbol;
|
|
2
2
|
declare const maximumNumericLength = 19;
|
|
3
3
|
declare const defaultAlphanumericLength = 255;
|
|
4
4
|
declare enum FieldDataType {
|
|
@@ -17,9 +17,9 @@ interface FieldFormat {
|
|
|
17
17
|
fillEntireLength: boolean;
|
|
18
18
|
valueProvider: valueProviderType;
|
|
19
19
|
}
|
|
20
|
-
declare function Numeric(required?: boolean, fillEntireLength?: boolean, maximumLength?: number):
|
|
21
|
-
declare function Decimal(required?: boolean, fillEntireLength?: boolean, maximumLength?: number, maximumDecimalsLength?: number):
|
|
22
|
-
declare function Alphanumeric(required?: boolean, fillEntireLength?: boolean, maximumLength?: number):
|
|
20
|
+
declare function Numeric(required?: boolean, fillEntireLength?: boolean, maximumLength?: number): PropertyDecorator | MethodDecorator;
|
|
21
|
+
declare function Decimal(required?: boolean, fillEntireLength?: boolean, maximumLength?: number, maximumDecimalsLength?: number): PropertyDecorator | MethodDecorator;
|
|
22
|
+
declare function Alphanumeric(required?: boolean, fillEntireLength?: boolean, maximumLength?: number): PropertyDecorator | MethodDecorator;
|
|
23
23
|
interface KeyComposition {
|
|
24
24
|
fields: KeyFieldDefinition[];
|
|
25
25
|
}
|
|
@@ -27,7 +27,7 @@ interface KeyFieldDefinition {
|
|
|
27
27
|
fieldName: string;
|
|
28
28
|
valueProvider: valueProviderType;
|
|
29
29
|
}
|
|
30
|
-
declare function Key():
|
|
30
|
+
declare function Key(): PropertyDecorator | MethodDecorator;
|
|
31
31
|
|
|
32
32
|
declare const Decorators_Alphanumeric: typeof Alphanumeric;
|
|
33
33
|
declare const Decorators_Decimal: typeof Decimal;
|
|
@@ -39,12 +39,12 @@ type Decorators_KeyComposition = KeyComposition;
|
|
|
39
39
|
type Decorators_KeyFieldDefinition = KeyFieldDefinition;
|
|
40
40
|
declare const Decorators_Numeric: typeof Numeric;
|
|
41
41
|
declare const Decorators_defaultAlphanumericLength: typeof defaultAlphanumericLength;
|
|
42
|
-
declare const
|
|
42
|
+
declare const Decorators_keyCompositionMetadata: typeof keyCompositionMetadata;
|
|
43
43
|
declare const Decorators_maximumNumericLength: typeof maximumNumericLength;
|
|
44
44
|
type Decorators_valueProviderType = valueProviderType;
|
|
45
45
|
declare const Decorators_valueProviderType: typeof valueProviderType;
|
|
46
46
|
declare namespace Decorators {
|
|
47
|
-
export { Decorators_Alphanumeric as Alphanumeric, Decorators_Decimal as Decimal, Decorators_FieldDataType as FieldDataType, type Decorators_FieldFormat as FieldFormat, Decorators_Key as Key, type Decorators_KeyComposition as KeyComposition, type Decorators_KeyFieldDefinition as KeyFieldDefinition, Decorators_Numeric as Numeric, Decorators_defaultAlphanumericLength as defaultAlphanumericLength,
|
|
47
|
+
export { Decorators_Alphanumeric as Alphanumeric, Decorators_Decimal as Decimal, Decorators_FieldDataType as FieldDataType, type Decorators_FieldFormat as FieldFormat, Decorators_Key as Key, type Decorators_KeyComposition as KeyComposition, type Decorators_KeyFieldDefinition as KeyFieldDefinition, Decorators_Numeric as Numeric, Decorators_defaultAlphanumericLength as defaultAlphanumericLength, Decorators_keyCompositionMetadata as keyCompositionMetadata, Decorators_maximumNumericLength as maximumNumericLength, Decorators_valueProviderType as valueProviderType };
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
-
export { Alphanumeric as A, Decorators as D, FieldDataType as F, type KeyComposition as K, Numeric as N, type FieldFormat as a, Decimal as b, type KeyFieldDefinition as c, defaultAlphanumericLength as d, Key as e,
|
|
50
|
+
export { Alphanumeric as A, Decorators as D, FieldDataType as F, type KeyComposition as K, Numeric as N, type FieldFormat as a, Decimal as b, type KeyFieldDefinition as c, defaultAlphanumericLength as d, Key as e, keyCompositionMetadata as k, maximumNumericLength as m, valueProviderType as v };
|
package/dist/Decorators.d.mts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { A as Alphanumeric, b as Decimal, F as FieldDataType, a as FieldFormat, e as Key, K as KeyComposition, c as KeyFieldDefinition, N as Numeric, d as defaultAlphanumericLength, k as
|
|
1
|
+
export { A as Alphanumeric, b as Decimal, F as FieldDataType, a as FieldFormat, e as Key, K as KeyComposition, c as KeyFieldDefinition, N as Numeric, d as defaultAlphanumericLength, k as keyCompositionMetadata, m as maximumNumericLength, v as valueProviderType } from './Decorators-B-IYFkTI.mjs';
|
package/dist/Decorators.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { A as Alphanumeric, b as Decimal, F as FieldDataType, a as FieldFormat, e as Key, K as KeyComposition, c as KeyFieldDefinition, N as Numeric, d as defaultAlphanumericLength, k as
|
|
1
|
+
export { A as Alphanumeric, b as Decimal, F as FieldDataType, a as FieldFormat, e as Key, K as KeyComposition, c as KeyFieldDefinition, N as Numeric, d as defaultAlphanumericLength, k as keyCompositionMetadata, m as maximumNumericLength, v as valueProviderType } from './Decorators-B-IYFkTI.js';
|
package/dist/Decorators.js
CHANGED
|
@@ -25,13 +25,13 @@ __export(Decorators_exports, {
|
|
|
25
25
|
Key: () => Key,
|
|
26
26
|
Numeric: () => Numeric,
|
|
27
27
|
defaultAlphanumericLength: () => defaultAlphanumericLength,
|
|
28
|
-
|
|
28
|
+
keyCompositionMetadata: () => keyCompositionMetadata,
|
|
29
29
|
maximumNumericLength: () => maximumNumericLength,
|
|
30
30
|
valueProviderType: () => valueProviderType
|
|
31
31
|
});
|
|
32
32
|
module.exports = __toCommonJS(Decorators_exports);
|
|
33
33
|
var import_reflect_metadata = require("reflect-metadata");
|
|
34
|
-
var
|
|
34
|
+
var keyCompositionMetadata = Symbol("key");
|
|
35
35
|
var maximumNumericLength = 19;
|
|
36
36
|
var defaultAlphanumericLength = 255;
|
|
37
37
|
var FieldDataType = /* @__PURE__ */ ((FieldDataType2) => {
|
|
@@ -121,7 +121,7 @@ function keyFieldDefinition(fieldName, valueProvider) {
|
|
|
121
121
|
function Key() {
|
|
122
122
|
return function(target, propertyKey, other) {
|
|
123
123
|
let keyComposition;
|
|
124
|
-
keyComposition = Reflect.getMetadata(
|
|
124
|
+
keyComposition = Reflect.getMetadata(keyCompositionMetadata, target);
|
|
125
125
|
if (!keyComposition) {
|
|
126
126
|
keyComposition = key();
|
|
127
127
|
}
|
|
@@ -131,7 +131,7 @@ function Key() {
|
|
|
131
131
|
other ? 1 /* method */ : 0 /* property */
|
|
132
132
|
)
|
|
133
133
|
);
|
|
134
|
-
Reflect.defineMetadata(
|
|
134
|
+
Reflect.defineMetadata(keyCompositionMetadata, keyComposition, target);
|
|
135
135
|
};
|
|
136
136
|
}
|
|
137
137
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -142,7 +142,7 @@ function Key() {
|
|
|
142
142
|
Key,
|
|
143
143
|
Numeric,
|
|
144
144
|
defaultAlphanumericLength,
|
|
145
|
-
|
|
145
|
+
keyCompositionMetadata,
|
|
146
146
|
maximumNumericLength,
|
|
147
147
|
valueProviderType
|
|
148
148
|
});
|
package/dist/Decorators.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../lib/taxReport/Decorators.ts"],"sourcesContent":["import \"reflect-metadata\";\n\nexport const
|
|
1
|
+
{"version":3,"sources":["../lib/taxReport/Decorators.ts"],"sourcesContent":["import \"reflect-metadata\";\n\nexport const keyCompositionMetadata = Symbol(\"key\");\n\nexport const maximumNumericLength = 19;\nexport const defaultAlphanumericLength = 255;\n\nexport enum FieldDataType {\n alphanumeric,\n numeric,\n}\n\nexport enum valueProviderType {\n property,\n method,\n}\n\nexport interface FieldFormat {\n required: boolean;\n dataType: FieldDataType;\n maximumLength: number;\n maximumDecimalsLength: number;\n fillEntireLength: boolean;\n valueProvider: valueProviderType;\n}\n\nfunction numericField(\n required: boolean,\n maximumLength: number,\n valueProvider: valueProviderType,\n fillEntireLength: boolean = false,\n maximumDecimalsLength: number = 0,\n): FieldFormat {\n return {\n required: required,\n dataType: FieldDataType.numeric,\n maximumLength: maximumLength,\n maximumDecimalsLength: maximumDecimalsLength,\n fillEntireLength: fillEntireLength,\n valueProvider: valueProvider,\n } as FieldFormat;\n}\n\nfunction alphanumericField(\n required: boolean,\n maximumLength: number,\n valueProvider: valueProviderType,\n fillEntireLength: boolean = false,\n maximumDecimalsLength: number = 0,\n): FieldFormat {\n return {\n required: required,\n dataType: FieldDataType.alphanumeric,\n maximumLength: maximumLength,\n maximumDecimalsLength: maximumDecimalsLength,\n fillEntireLength: fillEntireLength,\n valueProvider: valueProvider,\n } as FieldFormat;\n}\n\nexport function Numeric(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = maximumNumericLength,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n numericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n ),\n target,\n );\n };\n}\n\nexport function Decimal(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = maximumNumericLength,\n maximumDecimalsLength: number = 2,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n numericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n maximumDecimalsLength,\n ),\n target,\n );\n };\n}\n\nexport function Alphanumeric(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = defaultAlphanumericLength,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n alphanumericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n ),\n target,\n );\n };\n}\n\nexport interface KeyComposition {\n fields: KeyFieldDefinition[];\n}\n\nexport interface KeyFieldDefinition {\n fieldName: string;\n valueProvider: valueProviderType;\n}\n\nfunction key() {\n return {\n fields: [],\n } as KeyComposition;\n}\n\nfunction keyFieldDefinition(\n fieldName: string,\n valueProvider: valueProviderType,\n) {\n return {\n fieldName: fieldName,\n valueProvider: valueProvider,\n } as KeyFieldDefinition;\n}\n\nexport function Key(): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n let keyComposition: KeyComposition;\n keyComposition = Reflect.getMetadata(keyCompositionMetadata, target);\n if (!keyComposition) {\n keyComposition = key();\n }\n keyComposition.fields.push(\n keyFieldDefinition(\n propertyKey,\n other ? valueProviderType.method : valueProviderType.property,\n ),\n );\n Reflect.defineMetadata(keyCompositionMetadata, keyComposition, target);\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8BAAO;AAEA,IAAM,yBAAyB,OAAO,KAAK;AAE3C,IAAM,uBAAuB;AAC7B,IAAM,4BAA4B;AAElC,IAAK,gBAAL,kBAAKA,mBAAL;AACL,EAAAA,8BAAA;AACA,EAAAA,8BAAA;AAFU,SAAAA;AAAA,GAAA;AAKL,IAAK,oBAAL,kBAAKC,uBAAL;AACL,EAAAA,sCAAA;AACA,EAAAA,sCAAA;AAFU,SAAAA;AAAA,GAAA;AAcZ,SAAS,aACP,UACA,eACA,eACA,mBAA4B,OAC5B,wBAAgC,GACnB;AACb,SAAO;AAAA,IACL;AAAA,IACA,UAAU;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAEA,SAAS,kBACP,UACA,eACA,eACA,mBAA4B,OAC5B,wBAAgC,GACnB;AACb,SAAO;AAAA,IACL;AAAA,IACA,UAAU;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAEO,SAAS,QACd,WAAoB,OACpB,mBAA4B,OAC5B,gBAAwB,sBACa;AACrC,SAAO,SAAU,QAAa,aAAqB,OAAY;AAC7D,YAAQ;AAAA,MACN;AAAA,MACA;AAAA,QACE;AAAA,QACA;AAAA,QACA,QAAQ,iBAA2B;AAAA,QACnC;AAAA,MACF;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF;AAEO,SAAS,QACd,WAAoB,OACpB,mBAA4B,OAC5B,gBAAwB,sBACxB,wBAAgC,GACK;AACrC,SAAO,SAAU,QAAa,aAAqB,OAAY;AAC7D,YAAQ;AAAA,MACN;AAAA,MACA;AAAA,QACE;AAAA,QACA;AAAA,QACA,QAAQ,iBAA2B;AAAA,QACnC;AAAA,QACA;AAAA,MACF;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF;AAEO,SAAS,aACd,WAAoB,OACpB,mBAA4B,OAC5B,gBAAwB,2BACa;AACrC,SAAO,SAAU,QAAa,aAAqB,OAAY;AAC7D,YAAQ;AAAA,MACN;AAAA,MACA;AAAA,QACE;AAAA,QACA;AAAA,QACA,QAAQ,iBAA2B;AAAA,QACnC;AAAA,MACF;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF;AAWA,SAAS,MAAM;AACb,SAAO;AAAA,IACL,QAAQ,CAAC;AAAA,EACX;AACF;AAEA,SAAS,mBACP,WACA,eACA;AACA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AAEO,SAAS,MAA2C;AACzD,SAAO,SAAU,QAAa,aAAqB,OAAY;AAC7D,QAAI;AACJ,qBAAiB,QAAQ,YAAY,wBAAwB,MAAM;AACnE,QAAI,CAAC,gBAAgB;AACnB,uBAAiB,IAAI;AAAA,IACvB;AACA,mBAAe,OAAO;AAAA,MACpB;AAAA,QACE;AAAA,QACA,QAAQ,iBAA2B;AAAA,MACrC;AAAA,IACF;AACA,YAAQ,eAAe,wBAAwB,gBAAgB,MAAM;AAAA,EACvE;AACF;","names":["FieldDataType","valueProviderType"]}
|
package/dist/Decorators.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// lib/taxReport/Decorators.ts
|
|
2
2
|
import "reflect-metadata";
|
|
3
|
-
var
|
|
3
|
+
var keyCompositionMetadata = Symbol("key");
|
|
4
4
|
var maximumNumericLength = 19;
|
|
5
5
|
var defaultAlphanumericLength = 255;
|
|
6
6
|
var FieldDataType = /* @__PURE__ */ ((FieldDataType2) => {
|
|
@@ -90,7 +90,7 @@ function keyFieldDefinition(fieldName, valueProvider) {
|
|
|
90
90
|
function Key() {
|
|
91
91
|
return function(target, propertyKey, other) {
|
|
92
92
|
let keyComposition;
|
|
93
|
-
keyComposition = Reflect.getMetadata(
|
|
93
|
+
keyComposition = Reflect.getMetadata(keyCompositionMetadata, target);
|
|
94
94
|
if (!keyComposition) {
|
|
95
95
|
keyComposition = key();
|
|
96
96
|
}
|
|
@@ -100,7 +100,7 @@ function Key() {
|
|
|
100
100
|
other ? 1 /* method */ : 0 /* property */
|
|
101
101
|
)
|
|
102
102
|
);
|
|
103
|
-
Reflect.defineMetadata(
|
|
103
|
+
Reflect.defineMetadata(keyCompositionMetadata, keyComposition, target);
|
|
104
104
|
};
|
|
105
105
|
}
|
|
106
106
|
export {
|
|
@@ -110,7 +110,7 @@ export {
|
|
|
110
110
|
Key,
|
|
111
111
|
Numeric,
|
|
112
112
|
defaultAlphanumericLength,
|
|
113
|
-
|
|
113
|
+
keyCompositionMetadata,
|
|
114
114
|
maximumNumericLength,
|
|
115
115
|
valueProviderType
|
|
116
116
|
};
|
package/dist/Decorators.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../lib/taxReport/Decorators.ts"],"sourcesContent":["import \"reflect-metadata\";\n\nexport const
|
|
1
|
+
{"version":3,"sources":["../lib/taxReport/Decorators.ts"],"sourcesContent":["import \"reflect-metadata\";\n\nexport const keyCompositionMetadata = Symbol(\"key\");\n\nexport const maximumNumericLength = 19;\nexport const defaultAlphanumericLength = 255;\n\nexport enum FieldDataType {\n alphanumeric,\n numeric,\n}\n\nexport enum valueProviderType {\n property,\n method,\n}\n\nexport interface FieldFormat {\n required: boolean;\n dataType: FieldDataType;\n maximumLength: number;\n maximumDecimalsLength: number;\n fillEntireLength: boolean;\n valueProvider: valueProviderType;\n}\n\nfunction numericField(\n required: boolean,\n maximumLength: number,\n valueProvider: valueProviderType,\n fillEntireLength: boolean = false,\n maximumDecimalsLength: number = 0,\n): FieldFormat {\n return {\n required: required,\n dataType: FieldDataType.numeric,\n maximumLength: maximumLength,\n maximumDecimalsLength: maximumDecimalsLength,\n fillEntireLength: fillEntireLength,\n valueProvider: valueProvider,\n } as FieldFormat;\n}\n\nfunction alphanumericField(\n required: boolean,\n maximumLength: number,\n valueProvider: valueProviderType,\n fillEntireLength: boolean = false,\n maximumDecimalsLength: number = 0,\n): FieldFormat {\n return {\n required: required,\n dataType: FieldDataType.alphanumeric,\n maximumLength: maximumLength,\n maximumDecimalsLength: maximumDecimalsLength,\n fillEntireLength: fillEntireLength,\n valueProvider: valueProvider,\n } as FieldFormat;\n}\n\nexport function Numeric(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = maximumNumericLength,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n numericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n ),\n target,\n );\n };\n}\n\nexport function Decimal(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = maximumNumericLength,\n maximumDecimalsLength: number = 2,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n numericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n maximumDecimalsLength,\n ),\n target,\n );\n };\n}\n\nexport function Alphanumeric(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = defaultAlphanumericLength,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n alphanumericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n ),\n target,\n );\n };\n}\n\nexport interface KeyComposition {\n fields: KeyFieldDefinition[];\n}\n\nexport interface KeyFieldDefinition {\n fieldName: string;\n valueProvider: valueProviderType;\n}\n\nfunction key() {\n return {\n fields: [],\n } as KeyComposition;\n}\n\nfunction keyFieldDefinition(\n fieldName: string,\n valueProvider: valueProviderType,\n) {\n return {\n fieldName: fieldName,\n valueProvider: valueProvider,\n } as KeyFieldDefinition;\n}\n\nexport function Key(): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n let keyComposition: KeyComposition;\n keyComposition = Reflect.getMetadata(keyCompositionMetadata, target);\n if (!keyComposition) {\n keyComposition = key();\n }\n keyComposition.fields.push(\n keyFieldDefinition(\n propertyKey,\n other ? valueProviderType.method : valueProviderType.property,\n ),\n );\n Reflect.defineMetadata(keyCompositionMetadata, keyComposition, target);\n };\n}\n"],"mappings":";AAAA,OAAO;AAEA,IAAM,yBAAyB,OAAO,KAAK;AAE3C,IAAM,uBAAuB;AAC7B,IAAM,4BAA4B;AAElC,IAAK,gBAAL,kBAAKA,mBAAL;AACL,EAAAA,8BAAA;AACA,EAAAA,8BAAA;AAFU,SAAAA;AAAA,GAAA;AAKL,IAAK,oBAAL,kBAAKC,uBAAL;AACL,EAAAA,sCAAA;AACA,EAAAA,sCAAA;AAFU,SAAAA;AAAA,GAAA;AAcZ,SAAS,aACP,UACA,eACA,eACA,mBAA4B,OAC5B,wBAAgC,GACnB;AACb,SAAO;AAAA,IACL;AAAA,IACA,UAAU;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAEA,SAAS,kBACP,UACA,eACA,eACA,mBAA4B,OAC5B,wBAAgC,GACnB;AACb,SAAO;AAAA,IACL;AAAA,IACA,UAAU;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAEO,SAAS,QACd,WAAoB,OACpB,mBAA4B,OAC5B,gBAAwB,sBACa;AACrC,SAAO,SAAU,QAAa,aAAqB,OAAY;AAC7D,YAAQ;AAAA,MACN;AAAA,MACA;AAAA,QACE;AAAA,QACA;AAAA,QACA,QAAQ,iBAA2B;AAAA,QACnC;AAAA,MACF;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF;AAEO,SAAS,QACd,WAAoB,OACpB,mBAA4B,OAC5B,gBAAwB,sBACxB,wBAAgC,GACK;AACrC,SAAO,SAAU,QAAa,aAAqB,OAAY;AAC7D,YAAQ;AAAA,MACN;AAAA,MACA;AAAA,QACE;AAAA,QACA;AAAA,QACA,QAAQ,iBAA2B;AAAA,QACnC;AAAA,QACA;AAAA,MACF;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF;AAEO,SAAS,aACd,WAAoB,OACpB,mBAA4B,OAC5B,gBAAwB,2BACa;AACrC,SAAO,SAAU,QAAa,aAAqB,OAAY;AAC7D,YAAQ;AAAA,MACN;AAAA,MACA;AAAA,QACE;AAAA,QACA;AAAA,QACA,QAAQ,iBAA2B;AAAA,QACnC;AAAA,MACF;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF;AAWA,SAAS,MAAM;AACb,SAAO;AAAA,IACL,QAAQ,CAAC;AAAA,EACX;AACF;AAEA,SAAS,mBACP,WACA,eACA;AACA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AAEO,SAAS,MAA2C;AACzD,SAAO,SAAU,QAAa,aAAqB,OAAY;AAC7D,QAAI;AACJ,qBAAiB,QAAQ,YAAY,wBAAwB,MAAM;AACnE,QAAI,CAAC,gBAAgB;AACnB,uBAAiB,IAAI;AAAA,IACvB;AACA,mBAAe,OAAO;AAAA,MACpB;AAAA,QACE;AAAA,QACA,QAAQ,iBAA2B;AAAA,MACrC;AAAA,IACF;AACA,YAAQ,eAAe,wBAAwB,gBAAgB,MAAM;AAAA,EACvE;AACF;","names":["FieldDataType","valueProviderType"]}
|
package/dist/Register.js
CHANGED
|
@@ -35,7 +35,7 @@ module.exports = __toCommonJS(Register_exports);
|
|
|
35
35
|
|
|
36
36
|
// lib/taxReport/Decorators.ts
|
|
37
37
|
var import_reflect_metadata = require("reflect-metadata");
|
|
38
|
-
var
|
|
38
|
+
var keyCompositionMetadata = Symbol("key");
|
|
39
39
|
function key() {
|
|
40
40
|
return {
|
|
41
41
|
fields: []
|
|
@@ -50,7 +50,7 @@ function keyFieldDefinition(fieldName, valueProvider) {
|
|
|
50
50
|
function Key() {
|
|
51
51
|
return function(target, propertyKey, other) {
|
|
52
52
|
let keyComposition;
|
|
53
|
-
keyComposition = Reflect.getMetadata(
|
|
53
|
+
keyComposition = Reflect.getMetadata(keyCompositionMetadata, target);
|
|
54
54
|
if (!keyComposition) {
|
|
55
55
|
keyComposition = key();
|
|
56
56
|
}
|
|
@@ -60,7 +60,7 @@ function Key() {
|
|
|
60
60
|
other ? 1 /* method */ : 0 /* property */
|
|
61
61
|
)
|
|
62
62
|
);
|
|
63
|
-
Reflect.defineMetadata(
|
|
63
|
+
Reflect.defineMetadata(keyCompositionMetadata, keyComposition, target);
|
|
64
64
|
};
|
|
65
65
|
}
|
|
66
66
|
|
|
@@ -95,7 +95,7 @@ var Register = class {
|
|
|
95
95
|
}
|
|
96
96
|
getKeyValue() {
|
|
97
97
|
const keyComposition = Reflect.getMetadata(
|
|
98
|
-
|
|
98
|
+
keyCompositionMetadata,
|
|
99
99
|
this
|
|
100
100
|
);
|
|
101
101
|
let result = "";
|
package/dist/Register.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../lib/taxReport/Register.ts","../lib/taxReport/Decorators.ts","../lib/taxReport/interfaces/RegisterEventNotifier.ts"],"sourcesContent":["import { Key, KeyComposition,
|
|
1
|
+
{"version":3,"sources":["../lib/taxReport/Register.ts","../lib/taxReport/Decorators.ts","../lib/taxReport/interfaces/RegisterEventNotifier.ts"],"sourcesContent":["import { Key, KeyComposition, keyCompositionMetadata } from \"./Decorators\";\nimport RegisterEventNotifier, {\n newRegisterEventData,\n} from \"./interfaces/RegisterEventNotifier\";\n\nexport abstract class Register {\n private _registerNotifier: RegisterEventNotifier;\n private readonly _children: Register[];\n\n // @ts-ignore\n @Key()\n reg: string = \"\";\n constructor(registerTag: string, notifier: RegisterEventNotifier) {\n this._children = [];\n this.reg = registerTag;\n this._registerNotifier = notifier;\n }\n\n protected addChild(child: Register) {\n this._children.push(child);\n this._registerNotifier!!.notifyEvent(newRegisterEventData(child));\n }\n\n public getChildren(): Register[] {\n return this._children;\n }\n\n public getKeyValue(): string {\n const keyComposition: KeyComposition = Reflect.getMetadata(\n keyCompositionMetadata,\n this,\n );\n let result = \"\";\n for (const keyFieldData of keyComposition.fields) {\n result = result.concat(this[keyFieldData.fieldName]);\n }\n return result;\n }\n}\n","import \"reflect-metadata\";\n\nexport const keyCompositionMetadata = Symbol(\"key\");\n\nexport const maximumNumericLength = 19;\nexport const defaultAlphanumericLength = 255;\n\nexport enum FieldDataType {\n alphanumeric,\n numeric,\n}\n\nexport enum valueProviderType {\n property,\n method,\n}\n\nexport interface FieldFormat {\n required: boolean;\n dataType: FieldDataType;\n maximumLength: number;\n maximumDecimalsLength: number;\n fillEntireLength: boolean;\n valueProvider: valueProviderType;\n}\n\nfunction numericField(\n required: boolean,\n maximumLength: number,\n valueProvider: valueProviderType,\n fillEntireLength: boolean = false,\n maximumDecimalsLength: number = 0,\n): FieldFormat {\n return {\n required: required,\n dataType: FieldDataType.numeric,\n maximumLength: maximumLength,\n maximumDecimalsLength: maximumDecimalsLength,\n fillEntireLength: fillEntireLength,\n valueProvider: valueProvider,\n } as FieldFormat;\n}\n\nfunction alphanumericField(\n required: boolean,\n maximumLength: number,\n valueProvider: valueProviderType,\n fillEntireLength: boolean = false,\n maximumDecimalsLength: number = 0,\n): FieldFormat {\n return {\n required: required,\n dataType: FieldDataType.alphanumeric,\n maximumLength: maximumLength,\n maximumDecimalsLength: maximumDecimalsLength,\n fillEntireLength: fillEntireLength,\n valueProvider: valueProvider,\n } as FieldFormat;\n}\n\nexport function Numeric(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = maximumNumericLength,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n numericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n ),\n target,\n );\n };\n}\n\nexport function Decimal(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = maximumNumericLength,\n maximumDecimalsLength: number = 2,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n numericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n maximumDecimalsLength,\n ),\n target,\n );\n };\n}\n\nexport function Alphanumeric(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = defaultAlphanumericLength,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n alphanumericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n ),\n target,\n );\n };\n}\n\nexport interface KeyComposition {\n fields: KeyFieldDefinition[];\n}\n\nexport interface KeyFieldDefinition {\n fieldName: string;\n valueProvider: valueProviderType;\n}\n\nfunction key() {\n return {\n fields: [],\n } as KeyComposition;\n}\n\nfunction keyFieldDefinition(\n fieldName: string,\n valueProvider: valueProviderType,\n) {\n return {\n fieldName: fieldName,\n valueProvider: valueProvider,\n } as KeyFieldDefinition;\n}\n\nexport function Key(): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n let keyComposition: KeyComposition;\n keyComposition = Reflect.getMetadata(keyCompositionMetadata, target);\n if (!keyComposition) {\n keyComposition = key();\n }\n keyComposition.fields.push(\n keyFieldDefinition(\n propertyKey,\n other ? valueProviderType.method : valueProviderType.property,\n ),\n );\n Reflect.defineMetadata(keyCompositionMetadata, keyComposition, target);\n };\n}\n","import {Register} from \"../Register\";\r\nimport RegisterSubscriber from \"./RegisterSubscriber\";\r\n\r\nexport enum Event {\r\n REGISTER_CREATED = \"register_created\",\r\n}\r\n\r\nexport interface RegisterEventData {\r\n event: Event\r\n dataTypeName: string\r\n data: Register\r\n}\r\n\r\nfunction newRegisterEvent(event: Event, register: Register): RegisterEventData {\r\n return {\r\n event: event,\r\n dataTypeName: register.constructor.name,\r\n data: register\r\n }\r\n}\r\n\r\nexport function newRegisterEventData(register: Register): RegisterEventData {\r\n return newRegisterEvent(Event.REGISTER_CREATED, register)\r\n}\r\n\r\n\r\nexport default interface RegisterEventNotifier {\r\n addSubscriber(subscriber: RegisterSubscriber):void\r\n notifyEvent(eventData: RegisterEventData): void\r\n}\r\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,8BAAO;AAEA,IAAM,yBAAyB,OAAO,KAAK;AA8HlD,SAAS,MAAM;AACb,SAAO;AAAA,IACL,QAAQ,CAAC;AAAA,EACX;AACF;AAEA,SAAS,mBACP,WACA,eACA;AACA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AAEO,SAAS,MAA2C;AACzD,SAAO,SAAU,QAAa,aAAqB,OAAY;AAC7D,QAAI;AACJ,qBAAiB,QAAQ,YAAY,wBAAwB,MAAM;AACnE,QAAI,CAAC,gBAAgB;AACnB,uBAAiB,IAAI;AAAA,IACvB;AACA,mBAAe,OAAO;AAAA,MACpB;AAAA,QACE;AAAA,QACA,QAAQ,iBAA2B;AAAA,MACrC;AAAA,IACF;AACA,YAAQ,eAAe,wBAAwB,gBAAgB,MAAM;AAAA,EACvE;AACF;;;AClJA,SAAS,iBAAiB,OAAc,UAAuC;AAC3E,SAAO;AAAA,IACH;AAAA,IACA,cAAc,SAAS,YAAY;AAAA,IACnC,MAAM;AAAA,EACV;AACJ;AAEO,SAAS,qBAAqB,UAAuC;AACxE,SAAO,iBAAiB,2CAAwB,QAAQ;AAC5D;;;AFlBO,IAAe,WAAf,MAAwB;AAAA,EAO7B,YAAY,aAAqB,UAAiC;AANlE,wBAAQ;AACR,wBAAiB;AAIjB,+BAAc;AAEZ,SAAK,YAAY,CAAC;AAClB,SAAK,MAAM;AACX,SAAK,oBAAoB;AAAA,EAC3B;AAAA,EAEU,SAAS,OAAiB;AAClC,SAAK,UAAU,KAAK,KAAK;AACzB,SAAK,kBAAoB,YAAY,qBAAqB,KAAK,CAAC;AAAA,EAClE;AAAA,EAEO,cAA0B;AAC/B,WAAO,KAAK;AAAA,EACd;AAAA,EAEO,cAAsB;AAC3B,UAAM,iBAAiC,QAAQ;AAAA,MAC7C;AAAA,MACA;AAAA,IACF;AACA,QAAI,SAAS;AACb,eAAW,gBAAgB,eAAe,QAAQ;AAChD,eAAS,OAAO,OAAO,KAAK,aAAa,SAAS,CAAC;AAAA,IACrD;AACA,WAAO;AAAA,EACT;AACF;AA3BE;AAAA,EADC,IAAI;AAAA,GALe,SAMpB;","names":[]}
|
package/dist/Register.mjs
CHANGED
|
@@ -13,7 +13,7 @@ var __publicField = (obj, key2, value) => __defNormalProp(obj, typeof key2 !== "
|
|
|
13
13
|
|
|
14
14
|
// lib/taxReport/Decorators.ts
|
|
15
15
|
import "reflect-metadata";
|
|
16
|
-
var
|
|
16
|
+
var keyCompositionMetadata = Symbol("key");
|
|
17
17
|
function key() {
|
|
18
18
|
return {
|
|
19
19
|
fields: []
|
|
@@ -28,7 +28,7 @@ function keyFieldDefinition(fieldName, valueProvider) {
|
|
|
28
28
|
function Key() {
|
|
29
29
|
return function(target, propertyKey, other) {
|
|
30
30
|
let keyComposition;
|
|
31
|
-
keyComposition = Reflect.getMetadata(
|
|
31
|
+
keyComposition = Reflect.getMetadata(keyCompositionMetadata, target);
|
|
32
32
|
if (!keyComposition) {
|
|
33
33
|
keyComposition = key();
|
|
34
34
|
}
|
|
@@ -38,7 +38,7 @@ function Key() {
|
|
|
38
38
|
other ? 1 /* method */ : 0 /* property */
|
|
39
39
|
)
|
|
40
40
|
);
|
|
41
|
-
Reflect.defineMetadata(
|
|
41
|
+
Reflect.defineMetadata(keyCompositionMetadata, keyComposition, target);
|
|
42
42
|
};
|
|
43
43
|
}
|
|
44
44
|
|
|
@@ -73,7 +73,7 @@ var Register = class {
|
|
|
73
73
|
}
|
|
74
74
|
getKeyValue() {
|
|
75
75
|
const keyComposition = Reflect.getMetadata(
|
|
76
|
-
|
|
76
|
+
keyCompositionMetadata,
|
|
77
77
|
this
|
|
78
78
|
);
|
|
79
79
|
let result = "";
|
package/dist/Register.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../lib/taxReport/Decorators.ts","../lib/taxReport/interfaces/RegisterEventNotifier.ts","../lib/taxReport/Register.ts"],"sourcesContent":["import \"reflect-metadata\";\n\nexport const
|
|
1
|
+
{"version":3,"sources":["../lib/taxReport/Decorators.ts","../lib/taxReport/interfaces/RegisterEventNotifier.ts","../lib/taxReport/Register.ts"],"sourcesContent":["import \"reflect-metadata\";\n\nexport const keyCompositionMetadata = Symbol(\"key\");\n\nexport const maximumNumericLength = 19;\nexport const defaultAlphanumericLength = 255;\n\nexport enum FieldDataType {\n alphanumeric,\n numeric,\n}\n\nexport enum valueProviderType {\n property,\n method,\n}\n\nexport interface FieldFormat {\n required: boolean;\n dataType: FieldDataType;\n maximumLength: number;\n maximumDecimalsLength: number;\n fillEntireLength: boolean;\n valueProvider: valueProviderType;\n}\n\nfunction numericField(\n required: boolean,\n maximumLength: number,\n valueProvider: valueProviderType,\n fillEntireLength: boolean = false,\n maximumDecimalsLength: number = 0,\n): FieldFormat {\n return {\n required: required,\n dataType: FieldDataType.numeric,\n maximumLength: maximumLength,\n maximumDecimalsLength: maximumDecimalsLength,\n fillEntireLength: fillEntireLength,\n valueProvider: valueProvider,\n } as FieldFormat;\n}\n\nfunction alphanumericField(\n required: boolean,\n maximumLength: number,\n valueProvider: valueProviderType,\n fillEntireLength: boolean = false,\n maximumDecimalsLength: number = 0,\n): FieldFormat {\n return {\n required: required,\n dataType: FieldDataType.alphanumeric,\n maximumLength: maximumLength,\n maximumDecimalsLength: maximumDecimalsLength,\n fillEntireLength: fillEntireLength,\n valueProvider: valueProvider,\n } as FieldFormat;\n}\n\nexport function Numeric(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = maximumNumericLength,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n numericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n ),\n target,\n );\n };\n}\n\nexport function Decimal(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = maximumNumericLength,\n maximumDecimalsLength: number = 2,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n numericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n maximumDecimalsLength,\n ),\n target,\n );\n };\n}\n\nexport function Alphanumeric(\n required: boolean = false,\n fillEntireLength: boolean = false,\n maximumLength: number = defaultAlphanumericLength,\n): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n Reflect.defineMetadata(\n propertyKey,\n alphanumericField(\n required,\n maximumLength,\n other ? valueProviderType.method : valueProviderType.property,\n fillEntireLength,\n ),\n target,\n );\n };\n}\n\nexport interface KeyComposition {\n fields: KeyFieldDefinition[];\n}\n\nexport interface KeyFieldDefinition {\n fieldName: string;\n valueProvider: valueProviderType;\n}\n\nfunction key() {\n return {\n fields: [],\n } as KeyComposition;\n}\n\nfunction keyFieldDefinition(\n fieldName: string,\n valueProvider: valueProviderType,\n) {\n return {\n fieldName: fieldName,\n valueProvider: valueProvider,\n } as KeyFieldDefinition;\n}\n\nexport function Key(): PropertyDecorator | MethodDecorator {\n return function (target: any, propertyKey: string, other: any) {\n let keyComposition: KeyComposition;\n keyComposition = Reflect.getMetadata(keyCompositionMetadata, target);\n if (!keyComposition) {\n keyComposition = key();\n }\n keyComposition.fields.push(\n keyFieldDefinition(\n propertyKey,\n other ? valueProviderType.method : valueProviderType.property,\n ),\n );\n Reflect.defineMetadata(keyCompositionMetadata, keyComposition, target);\n };\n}\n","import {Register} from \"../Register\";\r\nimport RegisterSubscriber from \"./RegisterSubscriber\";\r\n\r\nexport enum Event {\r\n REGISTER_CREATED = \"register_created\",\r\n}\r\n\r\nexport interface RegisterEventData {\r\n event: Event\r\n dataTypeName: string\r\n data: Register\r\n}\r\n\r\nfunction newRegisterEvent(event: Event, register: Register): RegisterEventData {\r\n return {\r\n event: event,\r\n dataTypeName: register.constructor.name,\r\n data: register\r\n }\r\n}\r\n\r\nexport function newRegisterEventData(register: Register): RegisterEventData {\r\n return newRegisterEvent(Event.REGISTER_CREATED, register)\r\n}\r\n\r\n\r\nexport default interface RegisterEventNotifier {\r\n addSubscriber(subscriber: RegisterSubscriber):void\r\n notifyEvent(eventData: RegisterEventData): void\r\n}\r\n","import { Key, KeyComposition, keyCompositionMetadata } from \"./Decorators\";\nimport RegisterEventNotifier, {\n newRegisterEventData,\n} from \"./interfaces/RegisterEventNotifier\";\n\nexport abstract class Register {\n private _registerNotifier: RegisterEventNotifier;\n private readonly _children: Register[];\n\n // @ts-ignore\n @Key()\n reg: string = \"\";\n constructor(registerTag: string, notifier: RegisterEventNotifier) {\n this._children = [];\n this.reg = registerTag;\n this._registerNotifier = notifier;\n }\n\n protected addChild(child: Register) {\n this._children.push(child);\n this._registerNotifier!!.notifyEvent(newRegisterEventData(child));\n }\n\n public getChildren(): Register[] {\n return this._children;\n }\n\n public getKeyValue(): string {\n const keyComposition: KeyComposition = Reflect.getMetadata(\n keyCompositionMetadata,\n this,\n );\n let result = \"\";\n for (const keyFieldData of keyComposition.fields) {\n result = result.concat(this[keyFieldData.fieldName]);\n }\n return result;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AAAA,OAAO;AAEA,IAAM,yBAAyB,OAAO,KAAK;AA8HlD,SAAS,MAAM;AACb,SAAO;AAAA,IACL,QAAQ,CAAC;AAAA,EACX;AACF;AAEA,SAAS,mBACP,WACA,eACA;AACA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AAEO,SAAS,MAA2C;AACzD,SAAO,SAAU,QAAa,aAAqB,OAAY;AAC7D,QAAI;AACJ,qBAAiB,QAAQ,YAAY,wBAAwB,MAAM;AACnE,QAAI,CAAC,gBAAgB;AACnB,uBAAiB,IAAI;AAAA,IACvB;AACA,mBAAe,OAAO;AAAA,MACpB;AAAA,QACE;AAAA,QACA,QAAQ,iBAA2B;AAAA,MACrC;AAAA,IACF;AACA,YAAQ,eAAe,wBAAwB,gBAAgB,MAAM;AAAA,EACvE;AACF;;;AClJA,SAAS,iBAAiB,OAAc,UAAuC;AAC3E,SAAO;AAAA,IACH;AAAA,IACA,cAAc,SAAS,YAAY;AAAA,IACnC,MAAM;AAAA,EACV;AACJ;AAEO,SAAS,qBAAqB,UAAuC;AACxE,SAAO,iBAAiB,2CAAwB,QAAQ;AAC5D;;;AClBO,IAAe,WAAf,MAAwB;AAAA,EAO7B,YAAY,aAAqB,UAAiC;AANlE,wBAAQ;AACR,wBAAiB;AAIjB,+BAAc;AAEZ,SAAK,YAAY,CAAC;AAClB,SAAK,MAAM;AACX,SAAK,oBAAoB;AAAA,EAC3B;AAAA,EAEU,SAAS,OAAiB;AAClC,SAAK,UAAU,KAAK,KAAK;AACzB,SAAK,kBAAoB,YAAY,qBAAqB,KAAK,CAAC;AAAA,EAClE;AAAA,EAEO,cAA0B;AAC/B,WAAO,KAAK;AAAA,EACd;AAAA,EAEO,cAAsB;AAC3B,UAAM,iBAAiC,QAAQ;AAAA,MAC7C;AAAA,MACA;AAAA,IACF;AACA,QAAI,SAAS;AACb,eAAW,gBAAgB,eAAe,QAAQ;AAChD,eAAS,OAAO,OAAO,KAAK,aAAa,SAAS,CAAC;AAAA,IACrD;AACA,WAAO;AAAA,EACT;AACF;AA3BE;AAAA,EADC,IAAI;AAAA,GALe,SAMpB;","names":[]}
|