@futdevpro/nts-dynamo 1.15.410 → 1.15.412
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/build/_collections/signed-url.util.d.ts +19 -0
- package/build/_collections/signed-url.util.d.ts.map +1 -1
- package/build/_collections/signed-url.util.js +35 -0
- package/build/_collections/signed-url.util.js.map +1 -1
- package/build/_models/interfaces/signed-url-verify-result.interface.d.ts +2 -1
- package/build/_models/interfaces/signed-url-verify-result.interface.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -31,13 +31,29 @@ import { DyNTS_SignedUrl_VerifyResult } from '../_models/interfaces/signed-url-v
|
|
|
31
31
|
* a fallback-döntés a hívóé, de **tudatosan**.
|
|
32
32
|
* 2. `verify` **SOHA nem dob** — strukturált `{ valid, reason }`-t ad, hogy a gate-ek egységes,
|
|
33
33
|
* szivárgás-mentes választ tudjanak adni.
|
|
34
|
+
*
|
|
35
|
+
* 🔴 **BFR-FDPFTPSERVICE-009 — a dot segment (`.` / `..`) is NEVER valid.** `normalizePath` does not canonicalize,
|
|
36
|
+
* and servers decide the zone (open / always-signed) by matching the START of the normalized path, while the file
|
|
37
|
+
* system resolves the dot segment ⇒ `open/../invoices/…` counted as open and was served from the invoice vault
|
|
38
|
+
* without a signature (measured on TEST). Hence: `hasDotSegment` for the gates, BEFORE the zone decision · `verify`
|
|
39
|
+
* rejects a dot-segment path before any other check (`dot-segment`) · `sign` never signs such a path.
|
|
34
40
|
*/
|
|
35
41
|
export declare class DyNTS_SignedUrl_Util {
|
|
36
42
|
/**
|
|
37
43
|
* Path normalizálás az aláíráshoz/validáláshoz: vezető `/`-ek le, `\` → `/`.
|
|
38
44
|
* A kanonikus string első fele — a két oldalnak **bit-azonosan** kell normalizálnia.
|
|
45
|
+
*
|
|
46
|
+
* ⚠️ **Does NOT canonicalize:** a `.` / `..` segment is neither resolved nor rejected — build a prefix, regex or
|
|
47
|
+
* `startsWith` decision on the result ONLY after excluding `hasDotSegment` (BFR-FDPFTPSERVICE-009).
|
|
39
48
|
*/
|
|
40
49
|
static normalizePath(filePath: string): string;
|
|
50
|
+
/**
|
|
51
|
+
* Whether the path has a dot segment (`.` or `..`), with `/` or `\` as separator. A name merely STARTING with a dot
|
|
52
|
+
* (`..hidden`, `.env`) is not a segment. Gates call it BEFORE the zone decision (BFR-FDPFTPSERVICE-009).
|
|
53
|
+
*
|
|
54
|
+
* @param filePath the (already decoded) path
|
|
55
|
+
*/
|
|
56
|
+
static hasDotSegment(filePath: string): boolean;
|
|
41
57
|
/**
|
|
42
58
|
* A HMAC bemenete: `` `<normalizedPath>\n<expMs>` ``.
|
|
43
59
|
* **Publikus**, hogy tesztelhető és auditálható legyen (az arany-vektor erre épül).
|
|
@@ -48,6 +64,7 @@ export declare class DyNTS_SignedUrl_Util {
|
|
|
48
64
|
*
|
|
49
65
|
* @throws `DyNTS-SURL-SIGN-NOSEC` — üres secret *(⚠️ NEM ad csendben üres aláírást)*
|
|
50
66
|
* @throws `DyNTS-SURL-SIGN-BADEXP` — nem-szám / nem-pozitív `expMs`
|
|
67
|
+
* @throws `DyNTS-SURL-SIGN-DOTSEG` — a dot-segment path *(BFR-FDPFTPSERVICE-009: never signed)*
|
|
51
68
|
*/
|
|
52
69
|
static sign(filePath: string, expMs: number, secret: string): string;
|
|
53
70
|
/**
|
|
@@ -77,6 +94,8 @@ export declare class DyNTS_SignedUrl_Util {
|
|
|
77
94
|
secret: string;
|
|
78
95
|
nowMs?: number;
|
|
79
96
|
}): string;
|
|
97
|
+
/** A dot-segment path → a loud error (BFR-FDPFTPSERVICE-009); the caller's input error, hence 400. */
|
|
98
|
+
private static _assertNoDotSegment;
|
|
80
99
|
/** Üres secret → hangos hiba. ⚠️ A titok SOHA nem kerül a hiba-kontextusba. */
|
|
81
100
|
private static _assertSecret;
|
|
82
101
|
/** Nem-szám / nem-pozitív lejárat → hangos hiba (a csendes `NaN`-os aláírás rosszabb). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signed-url.util.d.ts","sourceRoot":"","sources":["../../src/_collections/signed-url.util.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,4BAA4B,EAAE,MAAM,0DAA0D,CAAC;AAExG
|
|
1
|
+
{"version":3,"file":"signed-url.util.d.ts","sourceRoot":"","sources":["../../src/_collections/signed-url.util.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,4BAA4B,EAAE,MAAM,0DAA0D,CAAC;AAExG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,qBAAa,oBAAoB;IAE/B;;;;;;OAMG;IACH,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAI9C;;;;;OAKG;IACH,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI/C;;;OAGG;IACH,MAAM,CAAC,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAIpE;;;;;;OAMG;IACH,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAWpE;;;;;OAKG;IACH,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;QAC1B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;QAC9B,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,4BAA4B;IAsChC;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE;QAC5B,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,MAAM;IAoBV,sGAAsG;IACtG,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAWlC,+EAA+E;IAC/E,OAAO,CAAC,MAAM,CAAC,aAAa;IAW5B,0FAA0F;IAC1F,OAAO,CAAC,MAAM,CAAC,UAAU;CAU1B"}
|
|
@@ -36,15 +36,33 @@ const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
|
|
|
36
36
|
* a fallback-döntés a hívóé, de **tudatosan**.
|
|
37
37
|
* 2. `verify` **SOHA nem dob** — strukturált `{ valid, reason }`-t ad, hogy a gate-ek egységes,
|
|
38
38
|
* szivárgás-mentes választ tudjanak adni.
|
|
39
|
+
*
|
|
40
|
+
* 🔴 **BFR-FDPFTPSERVICE-009 — a dot segment (`.` / `..`) is NEVER valid.** `normalizePath` does not canonicalize,
|
|
41
|
+
* and servers decide the zone (open / always-signed) by matching the START of the normalized path, while the file
|
|
42
|
+
* system resolves the dot segment ⇒ `open/../invoices/…` counted as open and was served from the invoice vault
|
|
43
|
+
* without a signature (measured on TEST). Hence: `hasDotSegment` for the gates, BEFORE the zone decision · `verify`
|
|
44
|
+
* rejects a dot-segment path before any other check (`dot-segment`) · `sign` never signs such a path.
|
|
39
45
|
*/
|
|
40
46
|
class DyNTS_SignedUrl_Util {
|
|
41
47
|
/**
|
|
42
48
|
* Path normalizálás az aláíráshoz/validáláshoz: vezető `/`-ek le, `\` → `/`.
|
|
43
49
|
* A kanonikus string első fele — a két oldalnak **bit-azonosan** kell normalizálnia.
|
|
50
|
+
*
|
|
51
|
+
* ⚠️ **Does NOT canonicalize:** a `.` / `..` segment is neither resolved nor rejected — build a prefix, regex or
|
|
52
|
+
* `startsWith` decision on the result ONLY after excluding `hasDotSegment` (BFR-FDPFTPSERVICE-009).
|
|
44
53
|
*/
|
|
45
54
|
static normalizePath(filePath) {
|
|
46
55
|
return (filePath ?? '').replace(/^\/+/, '').replace(/\\/g, '/');
|
|
47
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* Whether the path has a dot segment (`.` or `..`), with `/` or `\` as separator. A name merely STARTING with a dot
|
|
59
|
+
* (`..hidden`, `.env`) is not a segment. Gates call it BEFORE the zone decision (BFR-FDPFTPSERVICE-009).
|
|
60
|
+
*
|
|
61
|
+
* @param filePath the (already decoded) path
|
|
62
|
+
*/
|
|
63
|
+
static hasDotSegment(filePath) {
|
|
64
|
+
return `${filePath ?? ''}`.split(/[\\/]/u).some((segment) => segment === '.' || segment === '..');
|
|
65
|
+
}
|
|
48
66
|
/**
|
|
49
67
|
* A HMAC bemenete: `` `<normalizedPath>\n<expMs>` ``.
|
|
50
68
|
* **Publikus**, hogy tesztelhető és auditálható legyen (az arany-vektor erre épül).
|
|
@@ -57,8 +75,10 @@ class DyNTS_SignedUrl_Util {
|
|
|
57
75
|
*
|
|
58
76
|
* @throws `DyNTS-SURL-SIGN-NOSEC` — üres secret *(⚠️ NEM ad csendben üres aláírást)*
|
|
59
77
|
* @throws `DyNTS-SURL-SIGN-BADEXP` — nem-szám / nem-pozitív `expMs`
|
|
78
|
+
* @throws `DyNTS-SURL-SIGN-DOTSEG` — a dot-segment path *(BFR-FDPFTPSERVICE-009: never signed)*
|
|
60
79
|
*/
|
|
61
80
|
static sign(filePath, expMs, secret) {
|
|
81
|
+
DyNTS_SignedUrl_Util._assertNoDotSegment(filePath);
|
|
62
82
|
DyNTS_SignedUrl_Util._assertSecret(secret, filePath);
|
|
63
83
|
DyNTS_SignedUrl_Util._assertExp(expMs, filePath);
|
|
64
84
|
return Crypto
|
|
@@ -73,6 +93,10 @@ class DyNTS_SignedUrl_Util {
|
|
|
73
93
|
* `nowMs` injektálható → determinisztikus teszt (nincs `Date.now()` a tesztben).
|
|
74
94
|
*/
|
|
75
95
|
static verify(params) {
|
|
96
|
+
// BFR-FDPFTPSERVICE-009 — a dot-segment path is valid with NO signature (the zone-bypass guard)
|
|
97
|
+
if (DyNTS_SignedUrl_Util.hasDotSegment(params.filePath)) {
|
|
98
|
+
return { valid: false, reason: 'dot-segment' };
|
|
99
|
+
}
|
|
76
100
|
if (!params.secret) {
|
|
77
101
|
return { valid: false, reason: 'missing-secret' };
|
|
78
102
|
}
|
|
@@ -119,6 +143,17 @@ class DyNTS_SignedUrl_Util {
|
|
|
119
143
|
const signature = DyNTS_SignedUrl_Util.sign(normalizedPath, expMs, params.secret);
|
|
120
144
|
return `${base}/${normalizedPath}?exp=${expMs}&sig=${signature}`;
|
|
121
145
|
}
|
|
146
|
+
/** A dot-segment path → a loud error (BFR-FDPFTPSERVICE-009); the caller's input error, hence 400. */
|
|
147
|
+
static _assertNoDotSegment(filePath) {
|
|
148
|
+
if (DyNTS_SignedUrl_Util.hasDotSegment(filePath)) {
|
|
149
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
150
|
+
status: 400,
|
|
151
|
+
errorCode: 'DyNTS-SURL-SIGN-DOTSEG',
|
|
152
|
+
message: 'Signed URL: the path has a "." / ".." segment — refusing to sign it (zone bypass guard).',
|
|
153
|
+
additionalContent: { filePath: DyNTS_SignedUrl_Util.normalizePath(filePath) },
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
}
|
|
122
157
|
/** Üres secret → hangos hiba. ⚠️ A titok SOHA nem kerül a hiba-kontextusba. */
|
|
123
158
|
static _assertSecret(secret, filePath) {
|
|
124
159
|
if (!secret) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signed-url.util.js","sourceRoot":"","sources":["../../src/_collections/signed-url.util.ts"],"names":[],"mappings":";;;;AAAA,uDAAiC;AAEjC,sDAAmD;AAInD
|
|
1
|
+
{"version":3,"file":"signed-url.util.js","sourceRoot":"","sources":["../../src/_collections/signed-url.util.ts"],"names":[],"mappings":";;;;AAAA,uDAAiC;AAEjC,sDAAmD;AAInD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,MAAa,oBAAoB;IAE/B;;;;;;OAMG;IACH,MAAM,CAAC,aAAa,CAAC,QAAgB;QACnC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAClE,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,aAAa,CAAC,QAAgB;QACnC,OAAO,GAAG,QAAQ,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,OAAe,EAAW,EAAE,CAAC,OAAO,KAAK,GAAG,IAAI,OAAO,KAAK,IAAI,CAAC,CAAC;IACrH,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,oBAAoB,CAAC,QAAgB,EAAE,KAAa;QACzD,OAAO,GAAG,oBAAoB,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,KAAK,EAAE,CAAC;IACrE,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,IAAI,CAAC,QAAgB,EAAE,KAAa,EAAE,MAAc;QACzD,oBAAoB,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACnD,oBAAoB,CAAC,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACrD,oBAAoB,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAEjD,OAAO,MAAM;aACV,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC;aAC5B,MAAM,CAAC,oBAAoB,CAAC,oBAAoB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC;aAC1E,MAAM,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,MAAM,CAAC,MAMb;QACC,gGAAgG;QAChG,IAAI,oBAAoB,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACnB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5F,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;QACpD,CAAC;QAED,MAAM,GAAG,GAAW,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QAEjF,IAAI,MAAM,CAAC,KAAK,GAAG,GAAG,EAAE,CAAC;YACvB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QAC7C,CAAC;QAED,MAAM,QAAQ,GAAW,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAEjG,gFAAgF;QAChF,8CAA8C;QAC9C,MAAM,eAAe,GAAW,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACtE,MAAM,cAAc,GAAW,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAE7D,IAAI,eAAe,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM,EAAE,CAAC;YACrD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;QACxD,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,eAAe,EAAE,cAAc,CAAC,EAAE,CAAC;YAC7D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;QACxD,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzB,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CAAC,MAMrB;QACC,MAAM,IAAI,GAAW,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAEvE,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,uBAAU,CAAC;gBACnB,MAAM,EAAE,GAAG;gBACX,SAAS,EAAE,wBAAwB;gBACnC,OAAO,EAAE,kFAAkF;gBAC3F,iBAAiB,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;aACjD,CAAC,CAAC;QACL,CAAC;QAED,MAAM,GAAG,GAAW,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACjF,MAAM,KAAK,GAAW,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC;QACzC,MAAM,cAAc,GAAW,oBAAoB,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnF,MAAM,SAAS,GAAW,oBAAoB,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAE1F,OAAO,GAAG,IAAI,IAAI,cAAc,QAAQ,KAAK,QAAQ,SAAS,EAAE,CAAC;IACnE,CAAC;IAED,sGAAsG;IAC9F,MAAM,CAAC,mBAAmB,CAAC,QAAgB;QACjD,IAAI,oBAAoB,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,uBAAU,CAAC;gBACnB,MAAM,EAAE,GAAG;gBACX,SAAS,EAAE,wBAAwB;gBACnC,OAAO,EAAE,0FAA0F;gBACnG,iBAAiB,EAAE,EAAE,QAAQ,EAAE,oBAAoB,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE;aAC9E,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,+EAA+E;IACvE,MAAM,CAAC,aAAa,CAAC,MAAc,EAAE,QAAgB;QAC3D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,uBAAU,CAAC;gBACnB,MAAM,EAAE,GAAG;gBACX,SAAS,EAAE,uBAAuB;gBAClC,OAAO,EAAE,2EAA2E;gBACpF,iBAAiB,EAAE,EAAE,QAAQ,EAAE,oBAAoB,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE;aAC9E,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,0FAA0F;IAClF,MAAM,CAAC,UAAU,CAAC,KAAa,EAAE,QAAgB;QACvD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACvE,MAAM,IAAI,uBAAU,CAAC;gBACnB,MAAM,EAAE,GAAG;gBACX,SAAS,EAAE,wBAAwB;gBACnC,OAAO,EAAE,sEAAsE;gBAC/E,iBAAiB,EAAE,EAAE,QAAQ,EAAE,oBAAoB,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE;aACjG,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF;AAvKD,oDAuKC"}
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
*/
|
|
10
10
|
export interface DyNTS_SignedUrl_VerifyResult {
|
|
11
11
|
valid: boolean;
|
|
12
|
-
|
|
12
|
+
/** `dot-segment` — BFR-FDPFTPSERVICE-009: a `.` / `..` path segment is never valid (see `hasDotSegment`). */
|
|
13
|
+
reason?: 'missing-secret' | 'missing-params' | 'expired' | 'signature-mismatch' | 'dot-segment';
|
|
13
14
|
}
|
|
14
15
|
//# sourceMappingURL=signed-url-verify-result.interface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signed-url-verify-result.interface.d.ts","sourceRoot":"","sources":["../../../src/_models/interfaces/signed-url-verify-result.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,WAAW,4BAA4B;IAC3C,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,GAAG,SAAS,GAAG,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"signed-url-verify-result.interface.d.ts","sourceRoot":"","sources":["../../../src/_models/interfaces/signed-url-verify-result.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,WAAW,4BAA4B;IAC3C,KAAK,EAAE,OAAO,CAAC;IACf,6GAA6G;IAC7G,MAAM,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,GAAG,SAAS,GAAG,oBAAoB,GAAG,aAAa,CAAC;CACjG"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@futdevpro/nts-dynamo",
|
|
3
|
-
"version": "01.15.
|
|
3
|
+
"version": "01.15.412",
|
|
4
4
|
"description": "Dynamic NodeTS (NodeJS-Typescript), MongoDB Backend System Framework by Future Development Program Ltd.",
|
|
5
5
|
"DyBu_settings": {
|
|
6
6
|
"packageType": "server-package",
|