@adtrackify/at-service-common 3.4.4 → 3.4.5

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.
@@ -0,0 +1,11 @@
1
+ export interface CookieOptions {
2
+ domain?: string;
3
+ path?: string;
4
+ maxAge?: number;
5
+ secure?: boolean;
6
+ httpOnly?: boolean;
7
+ sameSite?: 'Strict' | 'Lax' | 'None';
8
+ }
9
+ export declare const createCookie: (name: string, value: string, options?: CookieOptions) => string;
10
+ export declare const parseCookieHeader: (cookieHeader: string) => Record<string, string>;
11
+ export declare const getCookiesWithPrefix: (cookies: Record<string, string>, prefix: string) => Record<string, string>;
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getCookiesWithPrefix = exports.parseCookieHeader = exports.createCookie = void 0;
4
+ const helpers_1 = require("../helpers");
5
+ const createCookie = (name, value, options = {}) => {
6
+ try {
7
+ const { domain, path = '/', maxAge, secure = true, httpOnly = false, sameSite = 'Lax' } = options;
8
+ let cookie = `${name}=${value}`;
9
+ if (domain) {
10
+ cookie += `; Domain=${domain}`;
11
+ }
12
+ if (path) {
13
+ cookie += `; Path=${path}`;
14
+ }
15
+ if (maxAge) {
16
+ cookie += `; Max-Age=${maxAge}`;
17
+ }
18
+ if (secure) {
19
+ cookie += '; Secure';
20
+ }
21
+ if (httpOnly) {
22
+ cookie += '; HttpOnly';
23
+ }
24
+ if (sameSite) {
25
+ cookie += `; SameSite=${sameSite}`;
26
+ }
27
+ return cookie;
28
+ }
29
+ catch (error) {
30
+ helpers_1.Logger.error('Error creating cookie', { error, name, value, options });
31
+ return '';
32
+ }
33
+ };
34
+ exports.createCookie = createCookie;
35
+ const parseCookieHeader = (cookieHeader) => {
36
+ try {
37
+ return cookieHeader.split(';').reduce((acc, cookie) => {
38
+ const [key, value] = cookie.split('=');
39
+ acc[key.trim()] = decodeURIComponent(value.trim());
40
+ return acc;
41
+ }, {});
42
+ }
43
+ catch (error) {
44
+ helpers_1.Logger.error('Error parsing cookie header', { error, cookieHeader });
45
+ return {};
46
+ }
47
+ };
48
+ exports.parseCookieHeader = parseCookieHeader;
49
+ const getCookiesWithPrefix = (cookies, prefix) => {
50
+ try {
51
+ const cookieKeys = Object.keys(cookies);
52
+ if (cookieKeys.length === 0) {
53
+ return {};
54
+ }
55
+ return cookieKeys.filter(key => key.startsWith(prefix)).reduce((acc, key) => {
56
+ acc[key] = cookies[key];
57
+ return acc;
58
+ }, {});
59
+ }
60
+ catch (error) {
61
+ helpers_1.Logger.error('Error getting cookies with prefix', { error, cookies, prefix });
62
+ return {};
63
+ }
64
+ };
65
+ exports.getCookiesWithPrefix = getCookiesWithPrefix;
66
+ //# sourceMappingURL=cookie.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cookie.js","sourceRoot":"","sources":["../../../src/libs/cookie.ts"],"names":[],"mappings":";;;AAAA,wCAAoC;AAW7B,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,UAAyB,EAAE,EAAU,EAAE;IAC/F,IAAI;QACF,MAAM,EACJ,MAAM,EACN,IAAI,GAAG,GAAG,EACV,MAAM,EACN,MAAM,GAAG,IAAI,EACb,QAAQ,GAAG,KAAK,EAChB,QAAQ,GAAG,KAAK,EACjB,GAAG,OAAO,CAAC;QAEZ,IAAI,MAAM,GAAG,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC;QAChC,IAAI,MAAM,EAAE;YACV,MAAM,IAAI,YAAY,MAAM,EAAE,CAAC;SAChC;QACD,IAAI,IAAI,EAAE;YACR,MAAM,IAAI,UAAU,IAAI,EAAE,CAAC;SAC5B;QACD,IAAI,MAAM,EAAE;YACV,MAAM,IAAI,aAAa,MAAM,EAAE,CAAC;SACjC;QACD,IAAI,MAAM,EAAE;YACV,MAAM,IAAI,UAAU,CAAC;SACtB;QACD,IAAI,QAAQ,EAAE;YACZ,MAAM,IAAI,YAAY,CAAC;SACxB;QACD,IAAI,QAAQ,EAAE;YACZ,MAAM,IAAI,cAAc,QAAQ,EAAE,CAAC;SACpC;QACD,OAAO,MAAM,CAAC;KACf;IAAC,OAAO,KAAK,EAAE;QACd,gBAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QACvE,OAAO,EAAE,CAAC;KACX;AACH,CAAC,CAAA;AAnCY,QAAA,YAAY,gBAmCxB;AAEM,MAAM,iBAAiB,GAAG,CAAC,YAAoB,EAA0B,EAAE;IAChF,IAAI;QACF,OAAO,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAA2B,EAAE,MAAM,EAAE,EAAE;YAC5E,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YACnD,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;KACR;IAAC,OAAO,KAAK,EAAE;QACd,gBAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;QACrE,OAAO,EAAE,CAAC;KACX;AACH,CAAC,CAAC;AAXW,QAAA,iBAAiB,qBAW5B;AAEK,MAAM,oBAAoB,GAAG,CAAC,OAA+B,EAAE,MAAc,EAA0B,EAAE;IAC9G,IAAI;QACF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3B,OAAO,EAAE,CAAC;SACX;QACD,OAAO,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAA2B,EAAE,GAAG,EAAE,EAAE;YAClG,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YACxB,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;KACR;IAAC,OAAO,KAAK,EAAE;QACd,gBAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9E,OAAO,EAAE,CAAC;KACX;AACH,CAAC,CAAC;AAdW,QAAA,oBAAoB,wBAc/B"}
@@ -12,3 +12,4 @@ export * from './traits.js';
12
12
  export * from './currency.js';
13
13
  export * from './numbers.js';
14
14
  export * from './strings.js';
15
+ export * from './cookie.js';
@@ -28,4 +28,5 @@ __exportStar(require("./traits.js"), exports);
28
28
  __exportStar(require("./currency.js"), exports);
29
29
  __exportStar(require("./numbers.js"), exports);
30
30
  __exportStar(require("./strings.js"), exports);
31
+ __exportStar(require("./cookie.js"), exports);
31
32
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/libs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+DAA6C;AAC7C,8CAA4B;AAC5B,6CAA2B;AAC3B,kDAAgC;AAChC,yDAAuC;AACvC,2CAAyB;AACzB,6DAA2C;AAC3C,uDAAqC;AACrC,mDAAiC;AACjC,2CAAyB;AACzB,8CAA4B;AAC5B,gDAA8B;AAC9B,+CAA6B;AAC7B,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/libs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+DAA6C;AAC7C,8CAA4B;AAC5B,6CAA2B;AAC3B,kDAAgC;AAChC,yDAAuC;AACvC,2CAAyB;AACzB,6DAA2C;AAC3C,uDAAqC;AACrC,mDAAiC;AACjC,2CAAyB;AACzB,8CAA4B;AAC5B,gDAA8B;AAC9B,+CAA6B;AAC7B,+CAA6B;AAC7B,8CAA4B"}
@@ -0,0 +1,11 @@
1
+ export interface CookieOptions {
2
+ domain?: string;
3
+ path?: string;
4
+ maxAge?: number;
5
+ secure?: boolean;
6
+ httpOnly?: boolean;
7
+ sameSite?: 'Strict' | 'Lax' | 'None';
8
+ }
9
+ export declare const createCookie: (name: string, value: string, options?: CookieOptions) => string;
10
+ export declare const parseCookieHeader: (cookieHeader: string) => Record<string, string>;
11
+ export declare const getCookiesWithPrefix: (cookies: Record<string, string>, prefix: string) => Record<string, string>;
@@ -0,0 +1,60 @@
1
+ import { Logger } from '../helpers';
2
+ export const createCookie = (name, value, options = {}) => {
3
+ try {
4
+ const { domain, path = '/', maxAge, secure = true, httpOnly = false, sameSite = 'Lax' } = options;
5
+ let cookie = `${name}=${value}`;
6
+ if (domain) {
7
+ cookie += `; Domain=${domain}`;
8
+ }
9
+ if (path) {
10
+ cookie += `; Path=${path}`;
11
+ }
12
+ if (maxAge) {
13
+ cookie += `; Max-Age=${maxAge}`;
14
+ }
15
+ if (secure) {
16
+ cookie += '; Secure';
17
+ }
18
+ if (httpOnly) {
19
+ cookie += '; HttpOnly';
20
+ }
21
+ if (sameSite) {
22
+ cookie += `; SameSite=${sameSite}`;
23
+ }
24
+ return cookie;
25
+ }
26
+ catch (error) {
27
+ Logger.error('Error creating cookie', { error, name, value, options });
28
+ return '';
29
+ }
30
+ };
31
+ export const parseCookieHeader = (cookieHeader) => {
32
+ try {
33
+ return cookieHeader.split(';').reduce((acc, cookie) => {
34
+ const [key, value] = cookie.split('=');
35
+ acc[key.trim()] = decodeURIComponent(value.trim());
36
+ return acc;
37
+ }, {});
38
+ }
39
+ catch (error) {
40
+ Logger.error('Error parsing cookie header', { error, cookieHeader });
41
+ return {};
42
+ }
43
+ };
44
+ export const getCookiesWithPrefix = (cookies, prefix) => {
45
+ try {
46
+ const cookieKeys = Object.keys(cookies);
47
+ if (cookieKeys.length === 0) {
48
+ return {};
49
+ }
50
+ return cookieKeys.filter(key => key.startsWith(prefix)).reduce((acc, key) => {
51
+ acc[key] = cookies[key];
52
+ return acc;
53
+ }, {});
54
+ }
55
+ catch (error) {
56
+ Logger.error('Error getting cookies with prefix', { error, cookies, prefix });
57
+ return {};
58
+ }
59
+ };
60
+ //# sourceMappingURL=cookie.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cookie.js","sourceRoot":"","sources":["../../../src/libs/cookie.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAWpC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,UAAyB,EAAE,EAAU,EAAE;IAC/F,IAAI;QACF,MAAM,EACJ,MAAM,EACN,IAAI,GAAG,GAAG,EACV,MAAM,EACN,MAAM,GAAG,IAAI,EACb,QAAQ,GAAG,KAAK,EAChB,QAAQ,GAAG,KAAK,EACjB,GAAG,OAAO,CAAC;QAEZ,IAAI,MAAM,GAAG,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC;QAChC,IAAI,MAAM,EAAE;YACV,MAAM,IAAI,YAAY,MAAM,EAAE,CAAC;SAChC;QACD,IAAI,IAAI,EAAE;YACR,MAAM,IAAI,UAAU,IAAI,EAAE,CAAC;SAC5B;QACD,IAAI,MAAM,EAAE;YACV,MAAM,IAAI,aAAa,MAAM,EAAE,CAAC;SACjC;QACD,IAAI,MAAM,EAAE;YACV,MAAM,IAAI,UAAU,CAAC;SACtB;QACD,IAAI,QAAQ,EAAE;YACZ,MAAM,IAAI,YAAY,CAAC;SACxB;QACD,IAAI,QAAQ,EAAE;YACZ,MAAM,IAAI,cAAc,QAAQ,EAAE,CAAC;SACpC;QACD,OAAO,MAAM,CAAC;KACf;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QACvE,OAAO,EAAE,CAAC;KACX;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,YAAoB,EAA0B,EAAE;IAChF,IAAI;QACF,OAAO,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAA2B,EAAE,MAAM,EAAE,EAAE;YAC5E,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YACnD,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;KACR;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;QACrE,OAAO,EAAE,CAAC;KACX;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,OAA+B,EAAE,MAAc,EAA0B,EAAE;IAC9G,IAAI;QACF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3B,OAAO,EAAE,CAAC;SACX;QACD,OAAO,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAA2B,EAAE,GAAG,EAAE,EAAE;YAClG,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YACxB,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;KACR;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9E,OAAO,EAAE,CAAC;KACX;AACH,CAAC,CAAC"}
@@ -12,3 +12,4 @@ export * from './traits.js';
12
12
  export * from './currency.js';
13
13
  export * from './numbers.js';
14
14
  export * from './strings.js';
15
+ export * from './cookie.js';
@@ -12,4 +12,5 @@ export * from './traits.js';
12
12
  export * from './currency.js';
13
13
  export * from './numbers.js';
14
14
  export * from './strings.js';
15
+ export * from './cookie.js';
15
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/libs/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,UAAU,CAAC;AACzB,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/libs/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,UAAU,CAAC;AACzB,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adtrackify/at-service-common",
3
- "version": "3.4.4",
3
+ "version": "3.4.5",
4
4
  "description": "",
5
5
  "files": [
6
6
  "dist/*"