@schorts/shared-kernel 3.1.2 → 3.1.4
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/CHANGELOG +12 -0
- package/README.md +3 -0
- package/dist/cjs/converters/index.js +6 -0
- package/dist/cjs/converters/index.js.map +1 -0
- package/dist/cjs/converters/remote-file-to-base64.js +20 -0
- package/dist/cjs/converters/remote-file-to-base64.js.map +1 -0
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/json-api/json-api-connector.js +6 -2
- package/dist/cjs/json-api/json-api-connector.js.map +1 -1
- package/dist/esm/converters/index.js +6 -0
- package/dist/esm/converters/index.js.map +1 -0
- package/dist/esm/converters/remote-file-to-base64.js +20 -0
- package/dist/esm/converters/remote-file-to-base64.js.map +1 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/json-api/json-api-connector.js +6 -2
- package/dist/esm/json-api/json-api-connector.js.map +1 -1
- package/dist/types/converters/index.d.ts +2 -0
- package/dist/types/converters/index.d.ts.map +1 -0
- package/dist/types/converters/remote-file-to-base64.d.ts +7 -0
- package/dist/types/converters/remote-file-to-base64.d.ts.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/json-api/json-api-connector.d.ts +1 -1
- package/dist/types/json-api/json-api-connector.d.ts.map +1 -1
- package/package.json +6 -1
- package/src/converters/index.ts +1 -0
- package/src/converters/remote-file-to-base64.ts +19 -0
- package/src/index.ts +1 -0
- package/src/json-api/json-api-connector.ts +8 -1
package/CHANGELOG
CHANGED
|
@@ -5,6 +5,18 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [3.1.4] - 2025-10-18
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- Added `converters` module.
|
|
13
|
+
|
|
14
|
+
## [3.1.3] - 2025-10-18
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
|
|
18
|
+
- Added support for `meta` field on the body for the `create` method of the `JSONAPIConnector`.
|
|
19
|
+
|
|
8
20
|
## [3.1.2] - 2025-10-18
|
|
9
21
|
|
|
10
22
|
### Added
|
package/README.md
CHANGED
|
@@ -96,6 +96,9 @@ Translation keys are centralized in registries for discoverability and tooling,
|
|
|
96
96
|
- **ArrayValue**
|
|
97
97
|
- **ObjectValue**
|
|
98
98
|
|
|
99
|
+
### 🔄 Converters
|
|
100
|
+
- **RemoteFileToBase64:** Utility for converting remote files (via URL) into base64-encoded strings. Accepts a URL and returns a base64 representation using an injected `HTTPProvider`, enabling infrastructure-agnostic file transformation. Useful for image uploads, previews, and binary transport across domains.
|
|
101
|
+
|
|
99
102
|
Each value object enforces domain constraints and immutability, ensuring correctness at the boundary of your system.
|
|
100
103
|
|
|
101
104
|
## 🧠 Philosophy
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RemoteFileToBase64 = void 0;
|
|
4
|
+
var remote_file_to_base64_1 = require("./remote-file-to-base64");
|
|
5
|
+
Object.defineProperty(exports, "RemoteFileToBase64", { enumerable: true, get: function () { return remote_file_to_base64_1.RemoteFileToBase64; } });
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/converters/index.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAApD,2HAAA,kBAAkB,OAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RemoteFileToBase64 = void 0;
|
|
4
|
+
class RemoteFileToBase64 {
|
|
5
|
+
httpProvider;
|
|
6
|
+
constructor(httpProvider) {
|
|
7
|
+
this.httpProvider = httpProvider;
|
|
8
|
+
}
|
|
9
|
+
async convert(url) {
|
|
10
|
+
const blob = await this.httpProvider.get(url);
|
|
11
|
+
return new Promise((resolve, reject) => {
|
|
12
|
+
const reader = new FileReader();
|
|
13
|
+
reader.readAsDataURL(blob);
|
|
14
|
+
reader.onload = () => resolve(reader.result);
|
|
15
|
+
reader.onerror = (error) => reject(error);
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.RemoteFileToBase64 = RemoteFileToBase64;
|
|
20
|
+
//# sourceMappingURL=remote-file-to-base64.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-file-to-base64.js","sourceRoot":"","sources":["../../../src/converters/remote-file-to-base64.ts"],"names":[],"mappings":";;;AAEA,MAAa,kBAAkB;IAEV;IADnB,YACmB,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAC1C,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,GAAQ;QACpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAO,GAAG,CAAC,CAAC;QAEpD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAEhC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAC3B,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAgB,CAAC,CAAC;YACvD,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAhBD,gDAgBC"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./auth"), exports);
|
|
18
|
+
__exportStar(require("./converters"), exports);
|
|
18
19
|
__exportStar(require("./criteria"), exports);
|
|
19
20
|
__exportStar(require("./dao"), exports);
|
|
20
21
|
__exportStar(require("./domain-events"), exports);
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,6CAA2B;AAC3B,wCAAsB;AACtB,kDAAgC;AAChC,6CAA2B;AAC3B,8CAA4B;AAC5B,+CAA6B;AAC7B,yCAAuB;AACvB,yCAAuB;AACvB,6CAA2B;AAC3B,6CAA2B;AAC3B,2CAAyB;AACzB,4CAA0B;AAC1B,yCAAuB;AACvB,2CAAyB;AACzB,kDAAgC;AAChC,iDAA+B;AAC/B,0CAAwB;AACxB,kDAAgC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,+CAA6B;AAC7B,6CAA2B;AAC3B,wCAAsB;AACtB,kDAAgC;AAChC,6CAA2B;AAC3B,8CAA4B;AAC5B,+CAA6B;AAC7B,yCAAuB;AACvB,yCAAuB;AACvB,6CAA2B;AAC3B,6CAA2B;AAC3B,2CAAyB;AACzB,4CAA0B;AAC1B,yCAAuB;AACvB,2CAAyB;AACzB,kDAAgC;AAChC,iDAA+B;AAC/B,0CAAwB;AACxB,kDAAgC"}
|
|
@@ -27,9 +27,13 @@ class JSONAPIConnector {
|
|
|
27
27
|
this.handleError(error);
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
|
-
async create(url, payload) {
|
|
30
|
+
async create(url, payload, meta) {
|
|
31
31
|
try {
|
|
32
|
-
|
|
32
|
+
const body = { data: payload };
|
|
33
|
+
if (meta) {
|
|
34
|
+
body["meta"] = meta;
|
|
35
|
+
}
|
|
36
|
+
return await this.http.post(url, body);
|
|
33
37
|
}
|
|
34
38
|
catch (error) {
|
|
35
39
|
this.handleError(error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-api-connector.js","sourceRoot":"","sources":["../../../src/json-api/json-api-connector.ts"],"names":[],"mappings":";;;AAAA,kCAAsD;AAGtD,iEAA4D;AAE5D,6CAA6C;AAE7C,MAAa,gBAAgB;IACP;IAApB,YAAoB,IAAkB;QAAlB,SAAI,GAAJ,IAAI,CAAc;IAAG,CAAC;IAE1C,KAAK,CAAC,OAAO,CACX,GAAQ,EACR,QAAmB,EACnB,OAAkB;QAElB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,yCAAkB,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;YAEvE,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,GAAQ,EACR,QAAmB,EACnB,OAAkB;QAElB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,yCAAkB,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;YAEvE,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CACV,GAAQ,EACR,OAQE;
|
|
1
|
+
{"version":3,"file":"json-api-connector.js","sourceRoot":"","sources":["../../../src/json-api/json-api-connector.ts"],"names":[],"mappings":";;;AAAA,kCAAsD;AAGtD,iEAA4D;AAE5D,6CAA6C;AAE7C,MAAa,gBAAgB;IACP;IAApB,YAAoB,IAAkB;QAAlB,SAAI,GAAJ,IAAI,CAAc;IAAG,CAAC;IAE1C,KAAK,CAAC,OAAO,CACX,GAAQ,EACR,QAAmB,EACnB,OAAkB;QAElB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,yCAAkB,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;YAEvE,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,GAAQ,EACR,QAAmB,EACnB,OAAkB;QAElB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,yCAAkB,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;YAEvE,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CACV,GAAQ,EACR,OAQE,EACF,IAA0B;QAE1B,IAAI,CAAC;YACH,MAAM,IAAI,GAAwB,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YAEpD,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YACtB,CAAC;YAED,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CACV,GAAQ,EACR,OAIC;QAED,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACvD,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CACV,GAAQ;QAER,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACrC,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,KAAc;QAChC,IAAI,KAAK,YAAY,oBAAa,IAAI,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;YACzD,MAAM,IAAI,0BAAa,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,KAAK,CAAC;IACd,CAAC;CACF;AAzFD,4CAyFC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RemoteFileToBase64 = void 0;
|
|
4
|
+
var remote_file_to_base64_1 = require("./remote-file-to-base64");
|
|
5
|
+
Object.defineProperty(exports, "RemoteFileToBase64", { enumerable: true, get: function () { return remote_file_to_base64_1.RemoteFileToBase64; } });
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/converters/index.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAApD,2HAAA,kBAAkB,OAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RemoteFileToBase64 = void 0;
|
|
4
|
+
class RemoteFileToBase64 {
|
|
5
|
+
httpProvider;
|
|
6
|
+
constructor(httpProvider) {
|
|
7
|
+
this.httpProvider = httpProvider;
|
|
8
|
+
}
|
|
9
|
+
async convert(url) {
|
|
10
|
+
const blob = await this.httpProvider.get(url);
|
|
11
|
+
return new Promise((resolve, reject) => {
|
|
12
|
+
const reader = new FileReader();
|
|
13
|
+
reader.readAsDataURL(blob);
|
|
14
|
+
reader.onload = () => resolve(reader.result);
|
|
15
|
+
reader.onerror = (error) => reject(error);
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.RemoteFileToBase64 = RemoteFileToBase64;
|
|
20
|
+
//# sourceMappingURL=remote-file-to-base64.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-file-to-base64.js","sourceRoot":"","sources":["../../../src/converters/remote-file-to-base64.ts"],"names":[],"mappings":";;;AAEA,MAAa,kBAAkB;IAEV;IADnB,YACmB,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAC1C,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,GAAQ;QACpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAO,GAAG,CAAC,CAAC;QAEpD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAEhC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAC3B,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAgB,CAAC,CAAC;YACvD,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAhBD,gDAgBC"}
|
package/dist/esm/index.js
CHANGED
|
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./auth"), exports);
|
|
18
|
+
__exportStar(require("./converters"), exports);
|
|
18
19
|
__exportStar(require("./criteria"), exports);
|
|
19
20
|
__exportStar(require("./dao"), exports);
|
|
20
21
|
__exportStar(require("./domain-events"), exports);
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,6CAA2B;AAC3B,wCAAsB;AACtB,kDAAgC;AAChC,6CAA2B;AAC3B,8CAA4B;AAC5B,+CAA6B;AAC7B,yCAAuB;AACvB,yCAAuB;AACvB,6CAA2B;AAC3B,6CAA2B;AAC3B,2CAAyB;AACzB,4CAA0B;AAC1B,yCAAuB;AACvB,2CAAyB;AACzB,kDAAgC;AAChC,iDAA+B;AAC/B,0CAAwB;AACxB,kDAAgC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,+CAA6B;AAC7B,6CAA2B;AAC3B,wCAAsB;AACtB,kDAAgC;AAChC,6CAA2B;AAC3B,8CAA4B;AAC5B,+CAA6B;AAC7B,yCAAuB;AACvB,yCAAuB;AACvB,6CAA2B;AAC3B,6CAA2B;AAC3B,2CAAyB;AACzB,4CAA0B;AAC1B,yCAAuB;AACvB,2CAAyB;AACzB,kDAAgC;AAChC,iDAA+B;AAC/B,0CAAwB;AACxB,kDAAgC"}
|
|
@@ -27,9 +27,13 @@ class JSONAPIConnector {
|
|
|
27
27
|
this.handleError(error);
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
|
-
async create(url, payload) {
|
|
30
|
+
async create(url, payload, meta) {
|
|
31
31
|
try {
|
|
32
|
-
|
|
32
|
+
const body = { data: payload };
|
|
33
|
+
if (meta) {
|
|
34
|
+
body["meta"] = meta;
|
|
35
|
+
}
|
|
36
|
+
return await this.http.post(url, body);
|
|
33
37
|
}
|
|
34
38
|
catch (error) {
|
|
35
39
|
this.handleError(error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-api-connector.js","sourceRoot":"","sources":["../../../src/json-api/json-api-connector.ts"],"names":[],"mappings":";;;AAAA,kCAAsD;AAGtD,iEAA4D;AAE5D,6CAA6C;AAE7C,MAAa,gBAAgB;IACP;IAApB,YAAoB,IAAkB;QAAlB,SAAI,GAAJ,IAAI,CAAc;IAAG,CAAC;IAE1C,KAAK,CAAC,OAAO,CACX,GAAQ,EACR,QAAmB,EACnB,OAAkB;QAElB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,yCAAkB,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;YAEvE,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,GAAQ,EACR,QAAmB,EACnB,OAAkB;QAElB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,yCAAkB,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;YAEvE,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CACV,GAAQ,EACR,OAQE;
|
|
1
|
+
{"version":3,"file":"json-api-connector.js","sourceRoot":"","sources":["../../../src/json-api/json-api-connector.ts"],"names":[],"mappings":";;;AAAA,kCAAsD;AAGtD,iEAA4D;AAE5D,6CAA6C;AAE7C,MAAa,gBAAgB;IACP;IAApB,YAAoB,IAAkB;QAAlB,SAAI,GAAJ,IAAI,CAAc;IAAG,CAAC;IAE1C,KAAK,CAAC,OAAO,CACX,GAAQ,EACR,QAAmB,EACnB,OAAkB;QAElB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,yCAAkB,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;YAEvE,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,GAAQ,EACR,QAAmB,EACnB,OAAkB;QAElB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,yCAAkB,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;YAEvE,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CACV,GAAQ,EACR,OAQE,EACF,IAA0B;QAE1B,IAAI,CAAC;YACH,MAAM,IAAI,GAAwB,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YAEpD,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YACtB,CAAC;YAED,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CACV,GAAQ,EACR,OAIC;QAED,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACvD,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CACV,GAAQ;QAER,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACrC,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,KAAc;QAChC,IAAI,KAAK,YAAY,oBAAa,IAAI,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;YACzD,MAAM,IAAI,0BAAa,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,KAAK,CAAC;IACd,CAAC;CACF;AAzFD,4CAyFC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/converters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-file-to-base64.d.ts","sourceRoot":"","sources":["../../../src/converters/remote-file-to-base64.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAAZ,YAAY,EAAE,YAAY;IAGvC,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;CAWzC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC"}
|
|
@@ -15,7 +15,7 @@ export declare class JSONAPIConnector {
|
|
|
15
15
|
id: string;
|
|
16
16
|
type: string;
|
|
17
17
|
attributes: Omit<Partial<EntityAttributes>, "id">;
|
|
18
|
-
}>): Promise<JSONAPISingle<EntityAttributes>>;
|
|
18
|
+
}>, meta?: Record<string, any>): Promise<JSONAPISingle<EntityAttributes>>;
|
|
19
19
|
update<EntityAttributes>(url: URL, payload: {
|
|
20
20
|
id: string;
|
|
21
21
|
type: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-api-connector.d.ts","sourceRoot":"","sources":["../../../src/json-api/json-api-connector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAiB,MAAM,SAAS,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,qBAAa,gBAAgB;IACf,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,YAAY;IAEhC,OAAO,CAAC,gBAAgB,EAC5B,GAAG,EAAE,GAAG,EACR,QAAQ,CAAC,EAAE,QAAQ,EACnB,OAAO,CAAC,EAAE,MAAM,EAAE,GACjB,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAUrC,QAAQ,CAAC,gBAAgB,EAC7B,GAAG,EAAE,GAAG,EACR,QAAQ,CAAC,EAAE,QAAQ,EACnB,OAAO,CAAC,EAAE,MAAM,EAAE,GACjB,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAUnC,MAAM,CAAC,gBAAgB,EAC3B,GAAG,EAAE,GAAG,EACR,OAAO,EAAE;QACP,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC,CAAC;KACnD,GAAG,KAAK,CAAC;QACR,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC,CAAC;KACnD,CAAC,
|
|
1
|
+
{"version":3,"file":"json-api-connector.d.ts","sourceRoot":"","sources":["../../../src/json-api/json-api-connector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAiB,MAAM,SAAS,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,qBAAa,gBAAgB;IACf,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,YAAY;IAEhC,OAAO,CAAC,gBAAgB,EAC5B,GAAG,EAAE,GAAG,EACR,QAAQ,CAAC,EAAE,QAAQ,EACnB,OAAO,CAAC,EAAE,MAAM,EAAE,GACjB,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAUrC,QAAQ,CAAC,gBAAgB,EAC7B,GAAG,EAAE,GAAG,EACR,QAAQ,CAAC,EAAE,QAAQ,EACnB,OAAO,CAAC,EAAE,MAAM,EAAE,GACjB,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAUnC,MAAM,CAAC,gBAAgB,EAC3B,GAAG,EAAE,GAAG,EACR,OAAO,EAAE;QACP,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC,CAAC;KACnD,GAAG,KAAK,CAAC;QACR,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC,CAAC;KACnD,CAAC,EACF,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACzB,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAcrC,MAAM,CAAC,gBAAgB,EAC3B,GAAG,EAAE,GAAG,EACR,OAAO,EAAE;QACP,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC,CAAC;KACnD,GACA,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAQrC,MAAM,CAAC,gBAAgB,EAC3B,GAAG,EAAE,GAAG,GACP,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAQ3C,OAAO,CAAC,WAAW;CAOpB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@schorts/shared-kernel",
|
|
3
|
-
"version": "3.1.
|
|
3
|
+
"version": "3.1.4",
|
|
4
4
|
"description": "A modular, type-safe foundation for building expressive, maintainable applications. This package provides core abstractions for domain modeling, HTTP integration, authentication, state management, and more — designed to be framework-agnostic and highly extensible.",
|
|
5
5
|
"main": "./dist/cjs/index.js",
|
|
6
6
|
"module": "./dist/esm/index.js",
|
|
@@ -16,6 +16,11 @@
|
|
|
16
16
|
"require": "./dist/cjs/auth/index.js",
|
|
17
17
|
"types": "./dist/types/auth/index.d.ts"
|
|
18
18
|
},
|
|
19
|
+
"./converters": {
|
|
20
|
+
"import": "./dist/esm/converters/index.js",
|
|
21
|
+
"require": "./dist/cjs/converters/index.js",
|
|
22
|
+
"types": "./dist/types/converters/index.d.ts"
|
|
23
|
+
},
|
|
19
24
|
"./criteria": {
|
|
20
25
|
"import": "./dist/esm/criteria/index.js",
|
|
21
26
|
"require": "./dist/cjs/criteria/index.js",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { RemoteFileToBase64 } from "./remote-file-to-base64";
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { HTTPProvider } from "../http";
|
|
2
|
+
|
|
3
|
+
export class RemoteFileToBase64 {
|
|
4
|
+
constructor(
|
|
5
|
+
private readonly httpProvider: HTTPProvider,
|
|
6
|
+
) {}
|
|
7
|
+
|
|
8
|
+
async convert(url: URL): Promise<string> {
|
|
9
|
+
const blob = await this.httpProvider.get<Blob>(url);
|
|
10
|
+
|
|
11
|
+
return new Promise((resolve, reject) => {
|
|
12
|
+
const reader = new FileReader();
|
|
13
|
+
|
|
14
|
+
reader.readAsDataURL(blob);
|
|
15
|
+
reader.onload = () => resolve(reader.result as string);
|
|
16
|
+
reader.onerror = (error) => reject(error);
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
}
|
package/src/index.ts
CHANGED
|
@@ -47,9 +47,16 @@ export class JSONAPIConnector {
|
|
|
47
47
|
type: string;
|
|
48
48
|
attributes: Omit<Partial<EntityAttributes>, "id">;
|
|
49
49
|
}>,
|
|
50
|
+
meta?: Record<string, any>,
|
|
50
51
|
): Promise<JSONAPISingle<EntityAttributes>> {
|
|
51
52
|
try {
|
|
52
|
-
|
|
53
|
+
const body: Record<string, any> = { data: payload };
|
|
54
|
+
|
|
55
|
+
if (meta) {
|
|
56
|
+
body["meta"] = meta;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
return await this.http.post(url, body);
|
|
53
60
|
} catch(error) {
|
|
54
61
|
this.handleError(error);
|
|
55
62
|
}
|