@acontplus/core 1.0.5 → 1.0.8

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 (100) hide show
  1. package/package.json +6 -6
  2. package/src/index.d.ts +8 -0
  3. package/src/index.js +9 -0
  4. package/src/index.js.map +1 -0
  5. package/src/lib/adapters/axios.adapter.d.ts +9 -0
  6. package/src/lib/adapters/axios.adapter.js +20 -0
  7. package/src/lib/adapters/axios.adapter.js.map +1 -0
  8. package/src/lib/adapters/fetch.adapter.d.ts +8 -0
  9. package/src/lib/adapters/fetch.adapter.js +31 -0
  10. package/src/lib/adapters/fetch.adapter.js.map +1 -0
  11. package/src/lib/adapters/http-client-factory.d.ts +31 -0
  12. package/src/lib/adapters/http-client-factory.js +40 -0
  13. package/src/lib/adapters/http-client-factory.js.map +1 -0
  14. package/src/lib/adapters/index.d.ts +3 -0
  15. package/src/lib/adapters/index.js +4 -0
  16. package/src/lib/adapters/index.js.map +1 -0
  17. package/src/lib/constants/constants.d.ts +20 -0
  18. package/src/lib/constants/constants.js +24 -0
  19. package/src/lib/constants/constants.js.map +1 -0
  20. package/src/lib/constants/index.d.ts +1 -0
  21. package/src/lib/constants/index.js +2 -0
  22. package/src/lib/constants/index.js.map +1 -0
  23. package/src/lib/environments/environment.d.ts +7 -0
  24. package/src/lib/environments/environment.js +2 -0
  25. package/src/lib/environments/environment.js.map +1 -0
  26. package/src/lib/environments/index.d.ts +1 -0
  27. package/src/lib/environments/index.js +2 -0
  28. package/src/lib/environments/index.js.map +1 -0
  29. package/src/lib/models/api-response.d.ts +26 -0
  30. package/src/lib/models/api-response.js +3 -0
  31. package/src/lib/models/api-response.js.map +1 -0
  32. package/src/lib/models/base-entity.d.ts +8 -0
  33. package/src/lib/models/base-entity.js +2 -0
  34. package/src/lib/models/base-entity.js.map +1 -0
  35. package/src/lib/models/filter-params.d.ts +7 -0
  36. package/src/lib/models/filter-params.js +2 -0
  37. package/src/lib/models/filter-params.js.map +1 -0
  38. package/src/lib/models/index.d.ts +6 -0
  39. package/src/lib/models/index.js +7 -0
  40. package/src/lib/models/index.js.map +1 -0
  41. package/src/lib/models/legacy-api-response.d.ts +6 -0
  42. package/src/lib/models/legacy-api-response.js +8 -0
  43. package/src/lib/models/legacy-api-response.js.map +1 -0
  44. package/src/lib/models/paginated-result.d.ts +10 -0
  45. package/src/lib/models/paginated-result.js +2 -0
  46. package/src/lib/models/paginated-result.js.map +1 -0
  47. package/src/lib/models/pagination-params.d.ts +23 -0
  48. package/src/lib/models/pagination-params.js +55 -0
  49. package/src/lib/models/pagination-params.js.map +1 -0
  50. package/src/lib/ports/http.port.d.ts +11 -0
  51. package/src/lib/ports/http.port.js +2 -0
  52. package/src/lib/ports/http.port.js.map +1 -0
  53. package/src/lib/ports/index.d.ts +1 -0
  54. package/src/lib/ports/index.js +2 -0
  55. package/src/lib/ports/index.js.map +1 -0
  56. package/src/lib/pricing/calculations/discount.calculator.d.ts +56 -0
  57. package/src/lib/pricing/calculations/discount.calculator.js +99 -0
  58. package/src/lib/pricing/calculations/discount.calculator.js.map +1 -0
  59. package/src/lib/pricing/calculations/index.d.ts +5 -0
  60. package/src/lib/pricing/calculations/index.js +6 -0
  61. package/src/lib/pricing/calculations/index.js.map +1 -0
  62. package/src/lib/pricing/calculations/line-item.calculator.d.ts +34 -0
  63. package/src/lib/pricing/calculations/line-item.calculator.js +61 -0
  64. package/src/lib/pricing/calculations/line-item.calculator.js.map +1 -0
  65. package/src/lib/pricing/calculations/pricing-calculation.error.d.ts +3 -0
  66. package/src/lib/pricing/calculations/pricing-calculation.error.js +7 -0
  67. package/src/lib/pricing/calculations/pricing-calculation.error.js.map +1 -0
  68. package/src/lib/pricing/calculations/pricing.calculator.d.ts +15 -0
  69. package/src/lib/pricing/calculations/pricing.calculator.js +24 -0
  70. package/src/lib/pricing/calculations/pricing.calculator.js.map +1 -0
  71. package/src/lib/pricing/calculations/profit.calculator.d.ts +56 -0
  72. package/src/lib/pricing/calculations/profit.calculator.js +102 -0
  73. package/src/lib/pricing/calculations/profit.calculator.js.map +1 -0
  74. package/src/lib/pricing/calculations/tax.calculator.d.ts +57 -0
  75. package/src/lib/pricing/calculations/tax.calculator.js +98 -0
  76. package/src/lib/pricing/calculations/tax.calculator.js.map +1 -0
  77. package/src/lib/pricing/index.d.ts +7 -0
  78. package/src/lib/pricing/index.js +8 -0
  79. package/src/lib/pricing/index.js.map +1 -0
  80. package/src/lib/types/index.d.ts +1 -0
  81. package/src/lib/types/index.js +2 -0
  82. package/src/lib/types/index.js.map +1 -0
  83. package/src/lib/types/pricing.types.d.ts +32 -0
  84. package/src/lib/types/pricing.types.js +2 -0
  85. package/src/lib/types/pricing.types.js.map +1 -0
  86. package/src/lib/value-objects/base.vo.d.ts +7 -0
  87. package/src/lib/value-objects/base.vo.js +14 -0
  88. package/src/lib/value-objects/base.vo.js.map +1 -0
  89. package/src/lib/value-objects/entity-id.vo.d.ts +6 -0
  90. package/src/lib/value-objects/entity-id.vo.js +16 -0
  91. package/src/lib/value-objects/entity-id.vo.js.map +1 -0
  92. package/src/lib/value-objects/identification-number.vo.d.ts +19 -0
  93. package/src/lib/value-objects/identification-number.vo.js +132 -0
  94. package/src/lib/value-objects/identification-number.vo.js.map +1 -0
  95. package/src/lib/value-objects/index.d.ts +4 -0
  96. package/src/lib/value-objects/index.js +5 -0
  97. package/src/lib/value-objects/index.js.map +1 -0
  98. package/src/lib/value-objects/money.vo.d.ts +12 -0
  99. package/src/lib/value-objects/money.vo.js +21 -0
  100. package/src/lib/value-objects/money.vo.js.map +1 -0
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@acontplus/core",
3
- "version": "1.0.5",
3
+ "version": "1.0.8",
4
4
  "description": "Core library for Acontplus projects, providing essential utilities and functionalities.",
5
5
  "peerDependencies": {
6
- "@acontplus/utils": "^1.0.2",
6
+ "@acontplus/utils": "^1.0.5",
7
7
  "typescript": "^5.9.2",
8
8
  "uuid": "^13.0.0"
9
9
  },
@@ -12,17 +12,17 @@
12
12
  },
13
13
  "type": "module",
14
14
  "main": "./src/index.js",
15
+ "module": "./src/index.js",
15
16
  "types": "./src/index.d.ts",
16
17
  "exports": {
17
18
  ".": {
18
- "types": "./src/index.d.ts",
19
19
  "import": "./src/index.js",
20
- "require": "./src/index.cjs"
20
+ "types": "./src/index.d.ts"
21
21
  },
22
22
  "./package.json": "./package.json"
23
23
  },
24
24
  "files": [
25
- "dist",
25
+ "src/**",
26
26
  "README.md"
27
27
  ],
28
28
  "scripts": {
@@ -55,4 +55,4 @@
55
55
  "main"
56
56
  ]
57
57
  }
58
- }
58
+ }
package/src/index.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ export * from './lib/adapters';
2
+ export * from './lib/constants';
3
+ export * from './lib/environments';
4
+ export * from './lib/models';
5
+ export * from './lib/ports';
6
+ export * from './lib/pricing';
7
+ export * from './lib/types';
8
+ export * from './lib/value-objects';
package/src/index.js ADDED
@@ -0,0 +1,9 @@
1
+ export * from './lib/adapters';
2
+ export * from './lib/constants';
3
+ export * from './lib/environments';
4
+ export * from './lib/models';
5
+ export * from './lib/ports';
6
+ export * from './lib/pricing';
7
+ export * from './lib/types';
8
+ export * from './lib/value-objects';
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/core/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { HttpOptions, HttpPort } from '../ports';
2
+ export declare class AxiosAdapter implements HttpPort {
3
+ private axios;
4
+ constructor();
5
+ get<T>(url: string, options?: HttpOptions): Promise<T>;
6
+ delete<T>(url: string, options?: HttpOptions): Promise<T>;
7
+ post<T>(url: string, body: unknown, options?: HttpOptions): Promise<T>;
8
+ put<T>(url: string, body: unknown, options?: HttpOptions): Promise<T>;
9
+ }
@@ -0,0 +1,20 @@
1
+ export class AxiosAdapter {
2
+ constructor() {
3
+ //this.axios = axios.create({ baseURL: HttpClientFactory.getBaseURL() });
4
+ }
5
+ async get(url, options) {
6
+ // const res = await this.axios.get<T>(url, { headers: options?.headers, params: options?.params });
7
+ // return res.data;
8
+ throw new Error('override');
9
+ }
10
+ delete(url, options) {
11
+ throw new Error('override');
12
+ }
13
+ post(url, body, options) {
14
+ throw new Error('override');
15
+ }
16
+ put(url, body, options) {
17
+ throw new Error('override');
18
+ }
19
+ }
20
+ //# sourceMappingURL=axios.adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"axios.adapter.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/adapters/axios.adapter.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,YAAY;IAGvB;QACE,yEAAyE;IAC3E,CAAC;IAED,KAAK,CAAC,GAAG,CAAI,GAAW,EAAE,OAAqB;QAC7C,oGAAoG;QACpG,qBAAqB;QACrB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC;IAED,MAAM,CAAI,GAAW,EAAE,OAAqB;QAC1C,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,CAAI,GAAW,EAAE,IAAa,EAAE,OAAqB;QACvD,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC;IAED,GAAG,CAAI,GAAW,EAAE,IAAa,EAAE,OAAqB;QACtD,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC;CAEF"}
@@ -0,0 +1,8 @@
1
+ import { HttpOptions, HttpPort } from '../ports';
2
+ export declare class FetchAdapter implements HttpPort {
3
+ get<T>(url: string, options?: HttpOptions): Promise<T>;
4
+ post<T>(url: string, body: unknown, options?: HttpOptions): Promise<T>;
5
+ put<T>(url: string, body: unknown, options?: HttpOptions): Promise<T>;
6
+ delete<T>(url: string, options?: HttpOptions): Promise<T>;
7
+ private request;
8
+ }
@@ -0,0 +1,31 @@
1
+ import { HttpClientFactory } from './http-client-factory';
2
+ export class FetchAdapter {
3
+ async get(url, options) {
4
+ return this.request('GET', url, undefined, options);
5
+ }
6
+ async post(url, body, options) {
7
+ return this.request('POST', url, body, options);
8
+ }
9
+ async put(url, body, options) {
10
+ return this.request('PUT', url, body, options);
11
+ }
12
+ async delete(url, options) {
13
+ return this.request('DELETE', url, undefined, options);
14
+ }
15
+ async request(method, url, body, options) {
16
+ const baseURL = HttpClientFactory.getBaseURL();
17
+ const response = await fetch(`${baseURL}${url}`, {
18
+ method,
19
+ headers: {
20
+ 'Content-Type': 'application/json',
21
+ ...(options?.headers || {}),
22
+ },
23
+ body: body ? JSON.stringify(body) : undefined,
24
+ });
25
+ if (!response.ok) {
26
+ throw new Error(`HTTP error ${response.status}`);
27
+ }
28
+ return response.json();
29
+ }
30
+ }
31
+ //# sourceMappingURL=fetch.adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.adapter.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/adapters/fetch.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAG1D,MAAM,OAAO,YAAY;IACvB,KAAK,CAAC,GAAG,CAAI,GAAW,EAAE,OAAqB;QAC7C,OAAO,IAAI,CAAC,OAAO,CAAI,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,IAAI,CAAI,GAAW,EAAE,IAAa,EAAE,OAAqB;QAC7D,OAAO,IAAI,CAAC,OAAO,CAAI,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,GAAG,CAAI,GAAW,EAAE,IAAa,EAAE,OAAqB;QAC5D,OAAO,IAAI,CAAC,OAAO,CAAI,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,MAAM,CAAI,GAAW,EAAE,OAAqB;QAChD,OAAO,IAAI,CAAC,OAAO,CAAI,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5D,CAAC;IAEO,KAAK,CAAC,OAAO,CACnB,MAAc,EACd,GAAW,EACX,IAAc,EACd,OAAqB;QAErB,MAAM,OAAO,GAAG,iBAAiB,CAAC,UAAU,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,GAAG,GAAG,EAAE,EAAE;YAC/C,MAAM;YACN,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,GAAG,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;aAC5B;YACD,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;SAC9C,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,cAAc,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,EAAgB,CAAC;IACvC,CAAC;CACF"}
@@ -0,0 +1,31 @@
1
+ import { HttpPort } from '../ports';
2
+ /**
3
+ * Clase que actúa como fábrica y contenedor para un cliente HTTP configurable.
4
+ * Es agnóstica al framework, por lo que puede usarse en React, Vue, Angular, etc.
5
+ */
6
+ export declare class HttpClientFactory {
7
+ private static client;
8
+ private static baseURL;
9
+ /**
10
+ * Configura el cliente HTTP y opcionalmente la URL base.
11
+ * Este método debe llamarse al iniciar la aplicación.
12
+ *
13
+ * @param client - Instancia que implementa HttpPort (por ejemplo, AxiosAdapter)
14
+ * @param baseURL - URL base para las peticiones (opcional)
15
+ */
16
+ static configure(client: HttpPort, baseURL?: string): void;
17
+ /**
18
+ * Devuelve el cliente HTTP configurado.
19
+ * Si no se ha configurado explícitamente, se usa el cliente por defecto.
20
+ *
21
+ * @returns Instancia de HttpPort
22
+ */
23
+ static getClient(): HttpPort;
24
+ /**
25
+ * Devuelve la URL base configurada.
26
+ * Si no se ha definido, retorna una cadena vacía.
27
+ *
28
+ * @returns string con la baseURL
29
+ */
30
+ static getBaseURL(): string;
31
+ }
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Clase que actúa como fábrica y contenedor para un cliente HTTP configurable.
3
+ * Es agnóstica al framework, por lo que puede usarse en React, Vue, Angular, etc.
4
+ */
5
+ export class HttpClientFactory {
6
+ /**
7
+ * Configura el cliente HTTP y opcionalmente la URL base.
8
+ * Este método debe llamarse al iniciar la aplicación.
9
+ *
10
+ * @param client - Instancia que implementa HttpPort (por ejemplo, AxiosAdapter)
11
+ * @param baseURL - URL base para las peticiones (opcional)
12
+ */
13
+ static configure(client, baseURL) {
14
+ this.client = client;
15
+ if (baseURL)
16
+ this.baseURL = baseURL;
17
+ }
18
+ /**
19
+ * Devuelve el cliente HTTP configurado.
20
+ * Si no se ha configurado explícitamente, se usa el cliente por defecto.
21
+ *
22
+ * @returns Instancia de HttpPort
23
+ */
24
+ static getClient() {
25
+ if (!this.client) {
26
+ throw new Error('HttpClientFactory: No se configuró ningún cliente HTTP');
27
+ }
28
+ return this.client;
29
+ }
30
+ /**
31
+ * Devuelve la URL base configurada.
32
+ * Si no se ha definido, retorna una cadena vacía.
33
+ *
34
+ * @returns string con la baseURL
35
+ */
36
+ static getBaseURL() {
37
+ return this.baseURL;
38
+ }
39
+ }
40
+ //# sourceMappingURL=http-client-factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-client-factory.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/adapters/http-client-factory.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,OAAO,iBAAiB;IAO5B;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,CAAC,MAAgB,EAAE,OAAgB;QACjD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,OAAO;YAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACtC,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,SAAS;QACd,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,UAAU;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF"}
@@ -0,0 +1,3 @@
1
+ export * from './axios.adapter';
2
+ export * from './fetch.adapter';
3
+ export * from './http-client-factory';
@@ -0,0 +1,4 @@
1
+ export * from './axios.adapter';
2
+ export * from './fetch.adapter';
3
+ export * from './http-client-factory';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/adapters/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,20 @@
1
+ export declare enum SRI_DOCUMENT_TYPE {
2
+ RUC = "04",
3
+ CEDULA = "05",
4
+ PASSPORT = "06",
5
+ CONSUMIDOR_FINAL = "07",
6
+ IDENTIFICACION_EXTERIOR = "08"
7
+ }
8
+ export declare enum SRI_DOCUMENT_TYPE_CUSTOM {
9
+ RUC = "R",
10
+ CEDULA = "C",
11
+ PASSPORT = "P",
12
+ CONSUMIDOR_FINAL = "CF",
13
+ IDENTIFICACION_EXTERIOR = "IE"
14
+ }
15
+ export declare enum SEPARATOR_KEY_CODE {
16
+ SLASH = "|",
17
+ PUNTO_COMA = ";",
18
+ DOS_PUNTOS = ":"
19
+ }
20
+ export declare const SEPARADORES_REGEX: RegExp;
@@ -0,0 +1,24 @@
1
+ export var SRI_DOCUMENT_TYPE;
2
+ (function (SRI_DOCUMENT_TYPE) {
3
+ SRI_DOCUMENT_TYPE["RUC"] = "04";
4
+ SRI_DOCUMENT_TYPE["CEDULA"] = "05";
5
+ SRI_DOCUMENT_TYPE["PASSPORT"] = "06";
6
+ SRI_DOCUMENT_TYPE["CONSUMIDOR_FINAL"] = "07";
7
+ SRI_DOCUMENT_TYPE["IDENTIFICACION_EXTERIOR"] = "08";
8
+ })(SRI_DOCUMENT_TYPE || (SRI_DOCUMENT_TYPE = {}));
9
+ export var SRI_DOCUMENT_TYPE_CUSTOM;
10
+ (function (SRI_DOCUMENT_TYPE_CUSTOM) {
11
+ SRI_DOCUMENT_TYPE_CUSTOM["RUC"] = "R";
12
+ SRI_DOCUMENT_TYPE_CUSTOM["CEDULA"] = "C";
13
+ SRI_DOCUMENT_TYPE_CUSTOM["PASSPORT"] = "P";
14
+ SRI_DOCUMENT_TYPE_CUSTOM["CONSUMIDOR_FINAL"] = "CF";
15
+ SRI_DOCUMENT_TYPE_CUSTOM["IDENTIFICACION_EXTERIOR"] = "IE";
16
+ })(SRI_DOCUMENT_TYPE_CUSTOM || (SRI_DOCUMENT_TYPE_CUSTOM = {}));
17
+ export var SEPARATOR_KEY_CODE;
18
+ (function (SEPARATOR_KEY_CODE) {
19
+ SEPARATOR_KEY_CODE["SLASH"] = "|";
20
+ SEPARATOR_KEY_CODE["PUNTO_COMA"] = ";";
21
+ SEPARATOR_KEY_CODE["DOS_PUNTOS"] = ":";
22
+ })(SEPARATOR_KEY_CODE || (SEPARATOR_KEY_CODE = {}));
23
+ export const SEPARADORES_REGEX = new RegExp(`[${Object.values(SEPARATOR_KEY_CODE).join('')}]`);
24
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/constants/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,iBAMX;AAND,WAAY,iBAAiB;IAC3B,+BAAU,CAAA;IACV,kCAAa,CAAA;IACb,oCAAe,CAAA;IACf,4CAAuB,CAAA;IACvB,mDAA8B,CAAA;AAChC,CAAC,EANW,iBAAiB,KAAjB,iBAAiB,QAM5B;AAED,MAAM,CAAN,IAAY,wBAMX;AAND,WAAY,wBAAwB;IAClC,qCAAS,CAAA;IACT,wCAAY,CAAA;IACZ,0CAAc,CAAA;IACd,mDAAuB,CAAA;IACvB,0DAA8B,CAAA;AAChC,CAAC,EANW,wBAAwB,KAAxB,wBAAwB,QAMnC;AAED,MAAM,CAAN,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC5B,iCAAW,CAAA;IACX,sCAAgB,CAAA;IAChB,sCAAgB,CAAA;AAClB,CAAC,EAJW,kBAAkB,KAAlB,kBAAkB,QAI7B;AACD,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './constants';
@@ -0,0 +1,2 @@
1
+ export * from './constants';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC"}
@@ -0,0 +1,7 @@
1
+ export interface Environment {
2
+ apiBaseUrl: string;
3
+ isProduction: boolean;
4
+ tokenKey: string;
5
+ refreshTokenKey: string;
6
+ clientId: string;
7
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=environment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"environment.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/environments/environment.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export * from './environment';
@@ -0,0 +1,2 @@
1
+ export * from './environment';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/environments/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -0,0 +1,26 @@
1
+ export type ResponseStatus = 'success' | 'error' | 'warning';
2
+ export interface ApiError {
3
+ code: string;
4
+ message: string;
5
+ target?: string;
6
+ details?: Record<string, any>;
7
+ severity?: string;
8
+ category?: string;
9
+ helpUrl?: string;
10
+ suggestedAction?: string;
11
+ traceId?: string;
12
+ }
13
+ export interface ApiResponse<T = any> {
14
+ status: ResponseStatus;
15
+ code: string;
16
+ data?: T;
17
+ message?: string;
18
+ errors?: ApiError[];
19
+ warnings?: ApiError[];
20
+ metadata?: Record<string, any>;
21
+ correlationId?: string;
22
+ traceId?: string;
23
+ timestamp: string;
24
+ }
25
+ export declare const isSuccessResponse: <T>(response: any) => response is ApiResponse<T>;
26
+ export declare const isErrorResponse: (response: any) => response is ApiResponse;
@@ -0,0 +1,3 @@
1
+ export const isSuccessResponse = (response) => response?.status === 'success';
2
+ export const isErrorResponse = (response) => response?.status === 'error';
3
+ //# sourceMappingURL=api-response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-response.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/models/api-response.ts"],"names":[],"mappings":"AA0BA,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAI,QAAa,EAA8B,EAAE,CAChF,QAAQ,EAAE,MAAM,KAAK,SAAS,CAAC;AAEjC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAa,EAA2B,EAAE,CACxE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC"}
@@ -0,0 +1,8 @@
1
+ export interface BaseEntity {
2
+ id: number;
3
+ createdAt?: string;
4
+ createdByUserId?: number;
5
+ updatedAt?: string;
6
+ updatedByUserId?: number;
7
+ isActive?: boolean;
8
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=base-entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-entity.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/models/base-entity.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ export interface FilterParams {
2
+ search?: string;
3
+ role?: string;
4
+ isActive?: boolean;
5
+ dateFrom?: string;
6
+ dateTo?: string;
7
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=filter-params.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-params.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/models/filter-params.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ export * from './api-response';
2
+ export * from './base-entity';
3
+ export * from './filter-params';
4
+ export * from './legacy-api-response';
5
+ export * from './paginated-result';
6
+ export * from './pagination-params';
@@ -0,0 +1,7 @@
1
+ export * from './api-response';
2
+ export * from './base-entity';
3
+ export * from './filter-params';
4
+ export * from './legacy-api-response';
5
+ export * from './paginated-result';
6
+ export * from './pagination-params';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/models/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export declare class LegacyApiResponse<T = unknown> {
2
+ code: string;
3
+ message: string;
4
+ payload: T | null;
5
+ constructor(code?: string, message?: string, payload?: T | null);
6
+ }
@@ -0,0 +1,8 @@
1
+ export class LegacyApiResponse {
2
+ constructor(code = '0', message = '', payload = null) {
3
+ this.code = code;
4
+ this.message = message;
5
+ this.payload = payload;
6
+ }
7
+ }
8
+ //# sourceMappingURL=legacy-api-response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legacy-api-response.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/models/legacy-api-response.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,iBAAiB;IAK5B,YAAY,IAAI,GAAG,GAAG,EAAE,OAAO,GAAG,EAAE,EAAE,UAAoB,IAAI;QAC5D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ export interface PagedResult<T> {
2
+ items: T[];
3
+ pageIndex: number;
4
+ pageSize: number;
5
+ totalCount: number;
6
+ totalPages: number;
7
+ hasPreviousPage: boolean;
8
+ hasNextPage: boolean;
9
+ metadata?: Record<string, any>;
10
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=paginated-result.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paginated-result.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/models/paginated-result.ts"],"names":[],"mappings":""}
@@ -0,0 +1,23 @@
1
+ export type SortDirection = 'asc' | 'desc';
2
+ export interface PaginationFilters {
3
+ [key: string]: any;
4
+ }
5
+ export declare class PaginationParams {
6
+ private _pageIndex;
7
+ private _pageSize;
8
+ sortBy?: string;
9
+ sortDirection: SortDirection;
10
+ searchTerm?: string;
11
+ filters?: PaginationFilters;
12
+ constructor(params?: Partial<PaginationParams>);
13
+ get pageIndex(): number;
14
+ set pageIndex(value: number);
15
+ get pageSize(): number;
16
+ set pageSize(value: number);
17
+ get skip(): number;
18
+ get take(): number;
19
+ get isEmpty(): boolean;
20
+ buildFilters(): PaginationFilters | null;
21
+ buildFiltersWithPrefix(prefix: string): PaginationFilters | null;
22
+ buildSqlParameters(): PaginationFilters | null;
23
+ }
@@ -0,0 +1,55 @@
1
+ export class PaginationParams {
2
+ constructor(params) {
3
+ this._pageIndex = 1;
4
+ this._pageSize = 10;
5
+ this.sortDirection = 'asc';
6
+ if (params) {
7
+ this.pageIndex = params.pageIndex ?? 1;
8
+ this.pageSize = params.pageSize ?? 10;
9
+ this.sortBy = params.sortBy;
10
+ this.sortDirection = params.sortDirection ?? 'asc';
11
+ this.searchTerm = params.searchTerm;
12
+ this.filters = params.filters;
13
+ }
14
+ }
15
+ get pageIndex() {
16
+ return this._pageIndex;
17
+ }
18
+ set pageIndex(value) {
19
+ this._pageIndex = value < 1 ? 1 : value;
20
+ }
21
+ get pageSize() {
22
+ return this._pageSize;
23
+ }
24
+ set pageSize(value) {
25
+ this._pageSize = value < 1 ? 10 : value > 1000 ? 1000 : value;
26
+ }
27
+ get skip() {
28
+ return (this.pageIndex - 1) * this.pageSize;
29
+ }
30
+ get take() {
31
+ return this.pageSize;
32
+ }
33
+ get isEmpty() {
34
+ return ((!this.searchTerm || this.searchTerm.trim() === '') &&
35
+ (!this.filters || Object.keys(this.filters).length === 0));
36
+ }
37
+ buildFilters() {
38
+ if (!this.filters || Object.keys(this.filters).length === 0)
39
+ return null;
40
+ return { ...this.filters };
41
+ }
42
+ buildFiltersWithPrefix(prefix) {
43
+ if (!this.filters || Object.keys(this.filters).length === 0)
44
+ return null;
45
+ const result = {};
46
+ for (const key in this.filters) {
47
+ result[prefix + key] = this.filters[key];
48
+ }
49
+ return result;
50
+ }
51
+ buildSqlParameters() {
52
+ return this.buildFiltersWithPrefix('@');
53
+ }
54
+ }
55
+ //# sourceMappingURL=pagination-params.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination-params.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/models/pagination-params.ts"],"names":[],"mappings":"AAMA,MAAM,OAAO,gBAAgB;IAS3B,YAAY,MAAkC;QARtC,eAAU,GAAW,CAAC,CAAC;QACvB,cAAS,GAAW,EAAE,CAAC;QAGxB,kBAAa,GAAkB,KAAK,CAAC;QAK1C,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAC5B,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,KAAK,CAAC;YACnD,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;YACpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAChC,CAAC;IACH,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IACD,IAAI,SAAS,CAAC,KAAa;QACzB,IAAI,CAAC,UAAU,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC1C,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IACD,IAAI,QAAQ,CAAC,KAAa;QACxB,IAAI,CAAC,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAChE,CAAC;IAED,IAAI,IAAI;QACN,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC9C,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,IAAI,OAAO;QACT,OAAO,CACL,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;YACnD,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAC1D,CAAC;IACJ,CAAC;IAED,YAAY;QACV,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACzE,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED,sBAAsB,CAAC,MAAc;QACnC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACzE,MAAM,MAAM,GAAsB,EAAE,CAAC;QACrC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC/B,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,kBAAkB;QAChB,OAAO,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC1C,CAAC;CACF"}
@@ -0,0 +1,11 @@
1
+ export interface HttpPort {
2
+ get<T>(url: string, options?: HttpOptions): Promise<T>;
3
+ post<T>(url: string, body: unknown, options?: HttpOptions): Promise<T>;
4
+ put<T>(url: string, body: unknown, options?: HttpOptions): Promise<T>;
5
+ delete<T>(url: string, options?: HttpOptions): Promise<T>;
6
+ }
7
+ export interface HttpOptions {
8
+ headers?: Record<string, string>;
9
+ timeout?: number;
10
+ params?: Record<string, string | number>;
11
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=http.port.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.port.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/ports/http.port.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export * from './http.port';
@@ -0,0 +1,2 @@
1
+ export * from './http.port';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/ports/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC"}