@lunejs/core 0.1.7 → 0.1.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.
@@ -74,6 +74,7 @@ class AdminApi extends graphql_api_1.GraphqlApi {
74
74
  }
75
75
  async buildAdminApiContext(initialContext) {
76
76
  const rawHeader = initialContext.request.headers.get(headers_constants_1.HeaderKeys.Authorization) ?? '';
77
+ const timezone = initialContext.request.headers.get(headers_constants_1.HeaderKeys.Timezone) || 'UTC';
77
78
  const shopId = initialContext.request.headers.get(headers_constants_1.HeaderKeys.ShopId);
78
79
  const token = rawHeader.startsWith('Bearer ') ? rawHeader.replace('Bearer ', '') : '';
79
80
  const userJWT = token ? await jwt_1.JwtService.verify(token) : null;
@@ -81,6 +82,7 @@ class AdminApi extends graphql_api_1.GraphqlApi {
81
82
  database: this.database,
82
83
  shopId,
83
84
  userJWT,
85
+ timezone,
84
86
  variables: initialContext.params.variables
85
87
  });
86
88
  }
@@ -1 +1 @@
1
- {"version":3,"file":"admin.api.js","sourceRoot":"","sources":["../../../../src/api/admin/admin.api.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA6B;AAE7B,2CAA0C;AAG1C,4CAA4C;AAE5C,wCAA4C;AAE5C,6EAAmE;AACnE,mEAA+D;AAC/D,uDAAmD;AACnD,yEAAoE;AACpE,uEAAmE;AACnE,yFAAoF;AAGpF,+DAA2D;AAC3D,yEAAqE;AACrE,mEAA+D;AAC/D,mGAA6F;AAC7F,qGAA+F;AAC/F,2FAAqF;AACrF,qEAAiE;AACjE,qEAAiE;AACjE,qEAAiE;AACjE,iEAA6D;AAC7D,iEAA6D;AAC7D,+DAA2D;AAC3D,iFAA4E;AAC5E,mEAA+D;AAC/D,mFAA8E;AAC9E,6DAAyD;AACzD,6DAAyD;AACzD,mEAA+D;AAC/D,6DAAyD;AAEzD,MAAM,gBAAgB,GAAG,mBAAI,CAAC,IAAI,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;AACxE,MAAM,eAAe,GAAG,mBAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;AAE3D,MAAa,QAAS,SAAQ,wBAAU;IACT;IAA7B,YAA6B,QAAkB;QAC7C,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,kBAAS,GAAE,CAAC;QAEhC,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,iBAAQ,CAAC,CAAC;QAE/F,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,iBAAQ,CAAC,CAAC;QAE/F,KAAK,CAAC;YACJ,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,CAAC,eAAe,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,CAAC;YACnE,SAAS,EAAE;gBACT,4BAAY;gBACZ,4BAAY;gBACZ,kCAAe;gBACf,kCAAe;gBACf,gCAAc;gBACd,wCAAkB;gBAClB,8BAAa;gBACb,4BAAY;gBACZ,iDAAsB;gBACtB,kCAAe;gBACf,oCAAgB;gBAChB,+CAAqB;gBACrB,8BAAa;gBACb,oCAAgB;gBAChB,oCAAgB;gBAChB,gEAA6B;gBAC7B,kEAA8B;gBAC9B,wDAAyB;gBACzB,gCAAc;gBACd,yCAAkB;gBAClB,GAAG,gBAAgB;aACpB;YACD,OAAO,EAAE,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC;YACpE,OAAO,EAAE,CAAC,IAAA,gCAAc,GAAE,EAAE,IAAA,iCAAc,GAAE,CAAC;SAC9C,CAAC,CAAC;QAnCwB,aAAQ,GAAR,QAAQ,CAAU;IAoC/C,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,cAAkC;QACnE,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,8BAAU,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAErF,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,8BAAU,CAAC,MAAM,CAAC,CAAC;QACrE,MAAM,KAAK,GAAG,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAEtF,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,gBAAU,CAAC,MAAM,CAAU,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAEvE,OAAO,IAAA,4BAAY,EAAC;YAClB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM;YACN,OAAO;YACP,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,SAAS;SAC3C,CAAC,CAAC;IACL,CAAC;CACF;AAtDD,4BAsDC"}
1
+ {"version":3,"file":"admin.api.js","sourceRoot":"","sources":["../../../../src/api/admin/admin.api.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,5 @@ export declare const HeaderKeys: {
3
3
  Authorization: string;
4
4
  StorefrontApiKey: string;
5
5
  StorefrontLocale: string;
6
+ Timezone: string;
6
7
  };
@@ -5,6 +5,7 @@ exports.HeaderKeys = {
5
5
  ShopId: 'x_lune_shop_id',
6
6
  Authorization: 'authorization',
7
7
  StorefrontApiKey: 'x_lune_storefront_api_key',
8
- StorefrontLocale: 'x_lune_storefront_locale'
8
+ StorefrontLocale: 'x_lune_storefront_locale',
9
+ Timezone: 'x_lune_timezone'
9
10
  };
10
11
  //# sourceMappingURL=headers.constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"headers.constants.js","sourceRoot":"","sources":["../../../../../src/api/shared/constants/headers.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG;IACxB,MAAM,EAAE,gBAAgB;IACxB,aAAa,EAAE,eAAe;IAC9B,gBAAgB,EAAE,2BAA2B;IAC7C,gBAAgB,EAAE,0BAA0B;CAC7C,CAAC"}
1
+ {"version":3,"file":"headers.constants.js","sourceRoot":"","sources":["../../../../../src/api/shared/constants/headers.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG;IACxB,MAAM,EAAE,gBAAgB;IACxB,aAAa,EAAE,eAAe;IAC9B,gBAAgB,EAAE,2BAA2B;IAC7C,gBAAgB,EAAE,0BAA0B;IAC5C,QAAQ,EAAE,iBAAiB;CAC5B,CAAC"}
@@ -6,6 +6,7 @@ type Input = {
6
6
  database: Database;
7
7
  shopId: string | null;
8
8
  userJWT: UserJWT | null;
9
+ timezone: string;
9
10
  variables?: Record<string, unknown>;
10
11
  storefront?: StorefrontContext;
11
12
  };
@@ -4,16 +4,18 @@ exports.buildContext = buildContext;
4
4
  const common_1 = require("@lunejs/common");
5
5
  const build_repositories_1 = require("../../../persistence/repositories/build-repositories");
6
6
  const rls_1 = require("../../../persistence/rls");
7
+ const validators_1 = require("../../../utils/validators");
7
8
  const build_loaders_1 = require("../loaders/build-loaders");
8
9
  async function buildContext(input) {
9
10
  try {
10
- const { database, shopId, userJWT, storefront } = input;
11
+ const { database, shopId, userJWT, storefront, timezone } = input;
11
12
  const trx = await database.transaction();
12
13
  await (0, rls_1.enableRLS)({ trx, shopId, ownerId: userJWT?.sub ?? null });
13
14
  const ownerId = userJWT?.sub ?? null;
14
15
  return {
15
16
  trx,
16
17
  shopId,
18
+ timezone: (0, validators_1.isValidTimezone)(timezone) ? timezone : 'UTC',
17
19
  runWithoutRLS: (0, rls_1.runWithoutRLS)(trx, shopId, ownerId),
18
20
  ownerId,
19
21
  currentUser: userJWT ? { id: userJWT?.sub ?? '', email: userJWT?.email ?? '' } : null,
@@ -1 +1 @@
1
- {"version":3,"file":"build-context.js","sourceRoot":"","sources":["../../../../../src/api/shared/context/build-context.ts"],"names":[],"mappings":";;AAWA,oCAwBC;AAnCD,2CAA4C;AAG5C,sFAAkF;AAClF,2CAA6D;AAE7D,4DAAwD;AAKjD,KAAK,UAAU,YAAY,CAAC,KAAY;IAC7C,IAAI,CAAC;QACH,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;QAExD,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;QAEzC,MAAM,IAAA,eAAS,EAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC;QAEhE,MAAM,OAAO,GAAG,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC;QAErC,OAAO;YACL,GAAG;YACH,MAAM;YACN,aAAa,EAAE,IAAA,mBAAa,EAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC;YAClD,OAAO;YACP,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;YACrF,YAAY,EAAE,IAAA,sCAAiB,EAAC,GAAG,CAAC;YACpC,OAAO,EAAE,IAAA,4BAAY,EAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC;YAC9C,UAAU;SACX,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,mBAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACxB,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"build-context.js","sourceRoot":"","sources":["../../../../../src/api/shared/context/build-context.ts"],"names":[],"mappings":";;AAYA,oCAyBC;AArCD,2CAA4C;AAG5C,sFAAkF;AAClF,2CAA6D;AAC7D,mDAAqD;AAErD,4DAAwD;AAKjD,KAAK,UAAU,YAAY,CAAC,KAAY;IAC7C,IAAI,CAAC;QACH,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;QAElE,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;QAEzC,MAAM,IAAA,eAAS,EAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC;QAEhE,MAAM,OAAO,GAAG,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC;QAErC,OAAO;YACL,GAAG;YACH,MAAM;YACN,QAAQ,EAAE,IAAA,4BAAe,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;YACtD,aAAa,EAAE,IAAA,mBAAa,EAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC;YAClD,OAAO;YACP,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;YACrF,YAAY,EAAE,IAAA,sCAAiB,EAAC,GAAG,CAAC;YACpC,OAAO,EAAE,IAAA,4BAAY,EAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC;YAC9C,UAAU;SACX,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,mBAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACxB,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -6,6 +6,7 @@ export type ExecutionContext = {
6
6
  trx: Transaction;
7
7
  shopId: string | null;
8
8
  ownerId: string | null;
9
+ timezone: string;
9
10
  runWithoutRLS: <T>(fn: () => Promise<T>) => Promise<T>;
10
11
  currentUser: CurrentUser | null;
11
12
  repositories: Repositories;
@@ -58,6 +58,7 @@ class StorefrontApi extends graphql_api_1.GraphqlApi {
58
58
  }
59
59
  async buildAdminApiContext(initialContext) {
60
60
  const rawHeader = initialContext.request.headers.get(headers_constants_1.HeaderKeys.Authorization) ?? '';
61
+ const timezone = initialContext.request.headers.get(headers_constants_1.HeaderKeys.Timezone) || 'UTC';
61
62
  const token = rawHeader.startsWith('Bearer ') ? rawHeader.replace('Bearer ', '') : '';
62
63
  const shopId = initialContext.request.headers.get(headers_constants_1.HeaderKeys.ShopId);
63
64
  const storefrontApiKey = initialContext.request.headers.get(headers_constants_1.HeaderKeys.StorefrontApiKey);
@@ -67,6 +68,7 @@ class StorefrontApi extends graphql_api_1.GraphqlApi {
67
68
  database: this.database,
68
69
  shopId,
69
70
  userJWT: null,
71
+ timezone,
70
72
  storefront: {
71
73
  apiKey: storefrontApiKey,
72
74
  locale: storefrontLocale,
@@ -1 +1 @@
1
- {"version":3,"file":"storefront.api.js","sourceRoot":"","sources":["../../../../src/api/storefront/storefront.api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storefront.api.js","sourceRoot":"","sources":["../../../../src/api/storefront/storefront.api.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA6B;AAE7B,2CAA0C;AAG1C,4CAA4C;AAG5C,wCAA4C;AAE5C,6EAAmE;AACnE,mEAA+D;AAC/D,uDAAmD;AACnD,yEAAoE;AACpE,uEAAmE;AACnE,6HAAsH;AACtH,yFAAoF;AAGpF,mEAA+D;AAC/D,yEAAqE;AACrE,mEAA+D;AAC/D,6EAAwE;AACxE,+EAA0E;AAC1E,qEAAiE;AACjE,+DAA2D;AAC3D,mEAA+D;AAE/D,MAAM,gBAAgB,GAAG,mBAAI,CAAC,IAAI,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;AACxE,MAAM,cAAc,GAAG,mBAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;AAE1D,MAAa,aAAc,SAAQ,wBAAU;IACd;IAA7B,YAA6B,QAAkB;QAC7C,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,kBAAS,GAAE,CAAC;QAEhC,MAAM,gBAAgB,GAAG,OAAO;aAC7B,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAsB,EAAE,SAAS,CAAC;aACjD,MAAM,CAAC,iBAAQ,CAAC,CAAC;QAEpB,MAAM,gBAAgB,GAAG,OAAO;aAC7B,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAsB,EAAE,SAAS,CAAC;aACjD,MAAM,CAAC,iBAAQ,CAAC,CAAC;QAEpB,KAAK,CAAC;YACJ,QAAQ,EAAE,iBAAiB;YAC3B,SAAS,EAAE,CAAC,cAAc,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,CAAC;YAClE,SAAS,EAAE;gBACT,kCAAe;gBACf,wCAAkB;gBAClB,8BAAa;gBACb,kCAAe;gBACf,oCAAgB;gBAChB,kCAAe;gBACf,2CAAmB;gBACnB,yCAAkB;gBAClB,2EAAkC;gBAClC,6CAAoB;gBACpB,GAAG,gBAAgB;aACpB;YACD,OAAO,EAAE,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC;YACpE,OAAO,EAAE,CAAC,IAAA,gCAAc,GAAE,EAAE,IAAA,iCAAc,GAAE,CAAC;SAC9C,CAAC,CAAC;QA7BwB,aAAQ,GAAR,QAAQ,CAAU;IA8B/C,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,cAAkC;QACnE,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,8BAAU,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAErF,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,8BAAU,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC;QAClF,MAAM,KAAK,GAAG,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,8BAAU,CAAC,MAAM,CAAC,CAAC;QACrE,MAAM,gBAAgB,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,8BAAU,CAAC,gBAAgB,CAAC,CAAC;QACzF,MAAM,gBAAgB,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CACzD,8BAAU,CAAC,gBAAgB,CACX,CAAC;QAEnB,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,gBAAU,CAAC,MAAM,CAAc,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAE/E,OAAO,IAAA,4BAAY,EAAC;YAClB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM;YACN,OAAO,EAAE,IAAI;YACb,QAAQ;YACR,UAAU,EAAE;gBACV,MAAM,EAAE,gBAAgB;gBACxB,MAAM,EAAE,gBAAgB;gBACxB,eAAe,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,WAAW,EAAE,EAAE,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI;aAC9E;SACF,CAAC,CAAC;IACL,CAAC;CACF;AA1DD,sCA0DC"}
@@ -13,11 +13,13 @@ class UploadApi extends rest_api_1.RestApi {
13
13
  this.database = database;
14
14
  }
15
15
  async contextMiddleware(req, res, next) {
16
+ const timezone = req.headers[headers_constants_1.HeaderKeys.Timezone]?.toString() || 'UTC';
16
17
  const shopId = req.headers[headers_constants_1.HeaderKeys.ShopId]?.toString() ?? null;
17
18
  const jwt = req.headers[headers_constants_1.HeaderKeys.Authorization]?.toString().replace('Bearer ', '');
18
19
  const userJWT = jwt ? await jwt_1.JwtService.verify(jwt) : null;
19
20
  const ctx = await (0, build_context_1.buildContext)({
20
21
  database: this.database,
22
+ timezone,
21
23
  shopId,
22
24
  userJWT
23
25
  });
@@ -1 +1 @@
1
- {"version":3,"file":"upload.api.js","sourceRoot":"","sources":["../../../../src/api/upload/upload.api.ts"],"names":[],"mappings":";;;AAGA,4CAAgD;AAEhD,6EAAmE;AACnE,mEAA+D;AAC/D,iDAA6C;AAG7C,2DAAsD;AAEtD,MAAa,SAAU,SAAQ,kBAAO;IACP;IAA7B,YAA6B,QAAkB;QAC7C,KAAK,CAAC,SAAS,EAAE,mCAAe,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QADrD,aAAQ,GAAR,QAAQ,CAAU;IAE/C,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB;QAC7E,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,8BAAU,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC;QAClE,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,8BAAU,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAErF,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,gBAAU,CAAC,MAAM,CAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAEnE,MAAM,GAAG,GAAG,MAAM,IAAA,4BAAY,EAAC;YAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM;YACN,OAAO;SACR,CAAC,CAAC;QAEH,GAAG,CAAC,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC;QAEzB,IAAI,EAAE,CAAC;IACT,CAAC;CACF;AArBD,8BAqBC"}
1
+ {"version":3,"file":"upload.api.js","sourceRoot":"","sources":["../../../../src/api/upload/upload.api.ts"],"names":[],"mappings":";;;AAGA,4CAAgD;AAEhD,6EAAmE;AACnE,mEAA+D;AAC/D,iDAA6C;AAG7C,2DAAsD;AAEtD,MAAa,SAAU,SAAQ,kBAAO;IACP;IAA7B,YAA6B,QAAkB;QAC7C,KAAK,CAAC,SAAS,EAAE,mCAAe,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QADrD,aAAQ,GAAR,QAAQ,CAAU;IAE/C,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB;QAC7E,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,8BAAU,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,KAAK,CAAC;QACvE,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,8BAAU,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC;QAClE,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,8BAAU,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAErF,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,gBAAU,CAAC,MAAM,CAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAEnE,MAAM,GAAG,GAAG,MAAM,IAAA,4BAAY,EAAC;YAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ;YACR,MAAM;YACN,OAAO;SACR,CAAC,CAAC;QAEH,GAAG,CAAC,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC;QAEzB,IAAI,EAAE,CAAC;IACT,CAAC;CACF;AAvBD,8BAuBC"}
@@ -14,12 +14,12 @@ class MetricService {
14
14
  COALESCE(SUM(o.total), 0) as value
15
15
  FROM generate_series(?::date, ?::date, '1 day'::interval) AS d(date)
16
16
  LEFT JOIN "${"orders" /* Tables.Order */}" o
17
- ON to_char(o.placed_at, 'YYYY-MM-DD') = to_char(d.date, 'YYYY-MM-DD')
17
+ ON to_char(o.placed_at AT TIME ZONE ?, 'YYYY-MM-DD') = to_char(d.date, 'YYYY-MM-DD')
18
18
  AND o.placed_at IS NOT NULL
19
19
  AND o.state NOT IN (?, ?)
20
20
  GROUP BY d.date
21
21
  ORDER BY d.date ASC
22
- `, [startsAt, endsAt, "modifying" /* OrderState.Modifying */, "canceled" /* OrderState.Canceled */]);
22
+ `, [startsAt, endsAt, this.ctx.timezone, "modifying" /* OrderState.Modifying */, "canceled" /* OrderState.Canceled */]);
23
23
  const metrics = rows.rows.map((row) => ({
24
24
  key: row.key,
25
25
  value: Number(row.value)
@@ -35,12 +35,12 @@ class MetricService {
35
35
  COUNT(o.id) as value
36
36
  FROM generate_series(?::date, ?::date, '1 day'::interval) AS d(date)
37
37
  LEFT JOIN "${"orders" /* Tables.Order */}" o
38
- ON to_char(o.placed_at, 'YYYY-MM-DD') = to_char(d.date, 'YYYY-MM-DD')
38
+ ON to_char(o.placed_at AT TIME ZONE ?, 'YYYY-MM-DD') = to_char(d.date, 'YYYY-MM-DD')
39
39
  AND o.placed_at IS NOT NULL
40
40
  AND o.state NOT IN (?, ?)
41
41
  GROUP BY d.date
42
42
  ORDER BY d.date ASC
43
- `, [startsAt, endsAt, "modifying" /* OrderState.Modifying */, "canceled" /* OrderState.Canceled */]);
43
+ `, [startsAt, endsAt, this.ctx.timezone, "modifying" /* OrderState.Modifying */, "canceled" /* OrderState.Canceled */]);
44
44
  const metrics = rows.rows.map((row) => ({
45
45
  key: row.key,
46
46
  value: Number(row.value)
@@ -56,10 +56,10 @@ class MetricService {
56
56
  COUNT(c.id) as value
57
57
  FROM generate_series(?::date, ?::date, '1 day'::interval) AS d(date)
58
58
  LEFT JOIN "${"customer" /* Tables.Customer */}" c
59
- ON to_char(c.created_at, 'YYYY-MM-DD') = to_char(d.date, 'YYYY-MM-DD')
59
+ ON to_char(c.created_at AT TIME ZONE ?, 'YYYY-MM-DD') = to_char(d.date, 'YYYY-MM-DD')
60
60
  GROUP BY d.date
61
61
  ORDER BY d.date ASC
62
- `, [startsAt, endsAt]);
62
+ `, [startsAt, endsAt, this.ctx.timezone]);
63
63
  const metrics = rows.rows.map((row) => ({
64
64
  key: row.key,
65
65
  value: Number(row.value)
@@ -75,12 +75,12 @@ class MetricService {
75
75
  COALESCE(AVG(o.total), 0)::integer as value
76
76
  FROM generate_series(?::date, ?::date, '1 day'::interval) AS d(date)
77
77
  LEFT JOIN "${"orders" /* Tables.Order */}" o
78
- ON to_char(o.placed_at, 'YYYY-MM-DD') = to_char(d.date, 'YYYY-MM-DD')
78
+ ON to_char(o.placed_at AT TIME ZONE ?, 'YYYY-MM-DD') = to_char(d.date, 'YYYY-MM-DD')
79
79
  AND o.placed_at IS NOT NULL
80
80
  AND o.state NOT IN (?, ?)
81
81
  GROUP BY d.date
82
82
  ORDER BY d.date ASC
83
- `, [startsAt, endsAt, "modifying" /* OrderState.Modifying */, "canceled" /* OrderState.Canceled */]);
83
+ `, [startsAt, endsAt, this.ctx.timezone, "modifying" /* OrderState.Modifying */, "canceled" /* OrderState.Canceled */]);
84
84
  const metrics = rows.rows.map((row) => ({
85
85
  key: row.key,
86
86
  value: Number(row.value)
@@ -1 +1 @@
1
- {"version":3,"file":"metric.service.js","sourceRoot":"","sources":["../../../../src/business/metric/metric.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metric.service.js","sourceRoot":"","sources":["../../../../src/business/metric/metric.service.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
1
  export declare function isValidEmail(email: string): boolean;
2
2
  export declare function isValidPassword(password: string): boolean;
3
+ export declare const isValidTimezone: (timezone: string) => boolean;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isValidTimezone = void 0;
3
4
  exports.isValidEmail = isValidEmail;
4
5
  exports.isValidPassword = isValidPassword;
5
6
  const zod_1 = require("zod");
@@ -9,4 +10,14 @@ function isValidEmail(email) {
9
10
  function isValidPassword(password) {
10
11
  return zod_1.z.string().min(8).safeParse(password).success;
11
12
  }
13
+ const isValidTimezone = (timezone) => {
14
+ try {
15
+ Intl.DateTimeFormat(undefined, { timeZone: timezone });
16
+ return true;
17
+ }
18
+ catch {
19
+ return false;
20
+ }
21
+ };
22
+ exports.isValidTimezone = isValidTimezone;
12
23
  //# sourceMappingURL=validators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../../../src/utils/validators/validators.ts"],"names":[],"mappings":";;AAEA,oCAEC;AAED,0CAEC;AARD,6BAAwB;AAExB,SAAgB,YAAY,CAAC,KAAa;IACxC,OAAO,OAAC,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;AAC5C,CAAC;AAED,SAAgB,eAAe,CAAC,QAAgB;IAC9C,OAAO,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;AACvD,CAAC"}
1
+ {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../../../src/utils/validators/validators.ts"],"names":[],"mappings":";;;AAEA,oCAEC;AAED,0CAEC;AARD,6BAAwB;AAExB,SAAgB,YAAY,CAAC,KAAa;IACxC,OAAO,OAAC,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;AAC5C,CAAC;AAED,SAAgB,eAAe,CAAC,QAAgB;IAC9C,OAAO,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;AACvD,CAAC;AAEM,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAW,EAAE;IAC3D,IAAI,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAPW,QAAA,eAAe,mBAO1B"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@lunejs/core",
3
3
  "description": "An open-source solution for commerce management.",
4
4
  "license": "AGPL-3.0",
5
- "version": "0.1.7",
5
+ "version": "0.1.8",
6
6
  "type": "commonjs",
7
7
  "main": "dist/src/index.js",
8
8
  "types": "dist/src/index.d.ts",