@unchainedshop/api 1.2.0 → 1.2.10

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/lib/api-index.js CHANGED
@@ -7,7 +7,7 @@ export * as errors from './errors';
7
7
  export { hashPassword } from './hashPassword';
8
8
  export * as roles from './roles';
9
9
  export { createContextResolver, getCurrentContextResolver, setCurrentContextResolver };
10
- const UNCHAINED_API_VERSION = '1.1.3'; // eslint-disable-line
10
+ const UNCHAINED_API_VERSION = '1.2.0'; // eslint-disable-line
11
11
  export const startAPIServer = (options) => {
12
12
  const { unchainedAPI, roles, expressApp, context: customContext, ...apolloServerOptions } = options || {};
13
13
  const contextResolver = createContextResolver(unchainedAPI, roles, UNCHAINED_API_VERSION);
@@ -1,6 +1,7 @@
1
- import { Root, Context } from '@unchainedshop/types/api';
1
+ import { Root, Context, SortOption } from '@unchainedshop/types/api';
2
2
  import { OrderQuery } from '@unchainedshop/types/orders';
3
3
  export default function orders(root: Root, params: OrderQuery & {
4
4
  limit?: number;
5
5
  offset?: number;
6
+ sort?: Array<SortOption>;
6
7
  }, { modules, userId }: Context): Promise<import("@unchainedshop/types/orders").Order[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"orders.js","sourceRoot":"","sources":["../../../../src/resolvers/queries/orders/orders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAI5C,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,MAAM,CAClC,IAAU,EACV,MAAwD,EACxD,EAAE,OAAO,EAAE,MAAM,EAAW;IAE5B,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;IAE5D,GAAG,CAAC,iBAAiB,KAAK,IAAI,MAAM,IAAI,YAAY,IAAI,WAAW,EAAE,EAAE;QACrE,MAAM;KACP,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAC3C,CAAC"}
1
+ {"version":3,"file":"orders.js","sourceRoot":"","sources":["../../../../src/resolvers/queries/orders/orders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAI5C,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,MAAM,CAClC,IAAU,EACV,MAAkF,EAClF,EAAE,OAAO,EAAE,MAAM,EAAW;IAE5B,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;IAE5D,GAAG,CAAC,iBAAiB,KAAK,IAAI,MAAM,IAAI,YAAY,IAAI,WAAW,EAAE,EAAE;QACrE,MAAM;KACP,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAC3C,CAAC"}
@@ -2,10 +2,9 @@ import { Context } from '@unchainedshop/types/api';
2
2
  import { Bookmark as BookmarkType } from '@unchainedshop/types/bookmarks';
3
3
  import { Product } from '@unchainedshop/types/products';
4
4
  import { User } from '@unchainedshop/types/user';
5
- declare type HelperType<T> = (bookmark: BookmarkType, _: never, context: Context) => T;
6
- interface BookmarkHelperTypes {
5
+ export declare type HelperType<T> = (bookmark: BookmarkType, _: never, context: Context) => T;
6
+ export interface BookmarkHelperTypes {
7
7
  product: HelperType<Promise<Product>>;
8
8
  user: HelperType<Promise<User>>;
9
9
  }
10
10
  export declare const Bookmark: BookmarkHelperTypes;
11
- export {};
@@ -1,7 +1,7 @@
1
1
  import { Context } from '@unchainedshop/types/api';
2
2
  import { Country as CountryType } from '@unchainedshop/types/countries';
3
3
  import { Currency } from '@unchainedshop/types/currencies';
4
- declare type HelperType<P, T> = (country: CountryType, params: P, context: Context) => T;
4
+ export declare type HelperType<P, T> = (country: CountryType, params: P, context: Context) => T;
5
5
  export interface CountryHelperTypes {
6
6
  flagEmoji: HelperType<never, string>;
7
7
  isBase: HelperType<never, boolean>;
@@ -11,4 +11,3 @@ export interface CountryHelperTypes {
11
11
  defaultCurrency: HelperType<never, Promise<Currency>>;
12
12
  }
13
13
  export declare const Country: CountryHelperTypes;
14
- export {};
@@ -1,6 +1,6 @@
1
1
  import { Context } from '@unchainedshop/types/api';
2
2
  import { DeliveryError, DeliveryProvider as DeliveryProviderType } from '@unchainedshop/types/delivery';
3
- declare type HelperType<P, T> = (provider: DeliveryProviderType, params: P, context: Context) => T;
3
+ export declare type HelperType<P, T> = (provider: DeliveryProviderType, params: P, context: Context) => T;
4
4
  export interface DeliveryProviderHelperTypes {
5
5
  interface: HelperType<never, {
6
6
  _id: string;
@@ -24,4 +24,3 @@ export interface DeliveryProviderHelperTypes {
24
24
  }>>;
25
25
  }
26
26
  export declare const DeliveryProvider: DeliveryProviderHelperTypes;
27
- export {};
@@ -1,8 +1,7 @@
1
1
  import { Context } from '@unchainedshop/types/api';
2
2
  import { Event as EventType } from '@unchainedshop/types/events';
3
- declare type HelperType<P, T> = (work: EventType, params: P, context: Context) => T;
3
+ export declare type HelperType<P, T> = (work: EventType, params: P, context: Context) => T;
4
4
  export interface EventHelperTypes {
5
5
  type: HelperType<never, string>;
6
6
  }
7
7
  export declare const Event: EventHelperTypes;
8
- export {};
@@ -2,7 +2,7 @@ import { Context } from '@unchainedshop/types/api';
2
2
  import { DeliveryLocation, DeliveryProvider } from '@unchainedshop/types/delivery';
3
3
  import { OrderDelivery, OrderDeliveryDiscount } from '@unchainedshop/types/orders.deliveries';
4
4
  declare type HelperType<T> = (orderDelivery: OrderDelivery, _: never, context: Context) => T;
5
- interface OrderDeliveryPickupHelperTypes {
5
+ export interface OrderDeliveryPickupHelperTypes {
6
6
  activePickUpLocation: HelperType<Promise<DeliveryLocation>>;
7
7
  discounts: HelperType<Promise<Array<OrderDeliveryDiscount>>>;
8
8
  pickUpLocations: HelperType<Promise<Array<DeliveryLocation>>>;
@@ -1,4 +1,4 @@
1
- import { Context } from '@unchainedshop/types/api';
1
+ import { Context, SortOption } from '@unchainedshop/types/api';
2
2
  import { Bookmark } from '@unchainedshop/types/bookmarks';
3
3
  import { Contact } from '@unchainedshop/types/common';
4
4
  import { Country } from '@unchainedshop/types/countries';
@@ -25,7 +25,10 @@ export interface UserHelperTypes {
25
25
  }, Country>;
26
26
  email: HelperType<any, string>;
27
27
  emails: HelperType<any, Array<string>>;
28
- enrollments: HelperType<any, Array<Enrollment>>;
28
+ enrollments: HelperType<{
29
+ sort?: Array<SortOption>;
30
+ queryString?: string;
31
+ }, Array<Enrollment>>;
29
32
  isEmailVerified: HelperType<any, boolean>;
30
33
  isGuest: HelperType<any, boolean>;
31
34
  isInitialPassword: HelperType<any, boolean>;
@@ -40,11 +43,16 @@ export interface UserHelperTypes {
40
43
  name: HelperType<any, string>;
41
44
  orders: HelperType<{
42
45
  includeCarts: boolean;
46
+ sort?: Array<SortOption>;
47
+ queryString?: string;
43
48
  }, Array<Order>>;
44
49
  paymentCredentials: HelperType<any, Array<PaymentCredentials>>;
45
50
  primaryEmail: HelperType<any, Email>;
46
51
  profile: HelperType<any, UserProfile>;
47
- quotations: HelperType<any, Array<Quotation>>;
52
+ quotations: HelperType<{
53
+ sort?: Array<SortOption>;
54
+ queryString?: string;
55
+ }, Array<Quotation>>;
48
56
  roles: HelperType<any, Array<string>>;
49
57
  tags: HelperType<any, Array<string>>;
50
58
  username: HelperType<any, string>;
@@ -91,10 +91,11 @@ export const User = {
91
91
  // },
92
92
  orders: async (user, params, context) => {
93
93
  await checkAction(context, viewUserOrders, [user, params]);
94
- return context.modules.orders.findOrders({ userId: user._id, includeCarts: params.includeCarts }, {
95
- sort: {
96
- updated: -1,
97
- },
94
+ return context.modules.orders.findOrders({
95
+ userId: user._id,
96
+ includeCarts: params.includeCarts,
97
+ sort: params.sort,
98
+ queryString: params.queryString,
98
99
  });
99
100
  },
100
101
  paymentCredentials: async (user, params, context) => {
@@ -107,10 +108,10 @@ export const User = {
107
108
  },
108
109
  quotations: async (user, params, context) => {
109
110
  await checkAction(context, viewUserQuotations, [user, params]);
110
- return context.modules.quotations.findQuotations({ userId: user._id }, {
111
- sort: {
112
- created: -1,
113
- },
111
+ return context.modules.quotations.findQuotations({
112
+ userId: user._id,
113
+ sort: params.sort,
114
+ queryString: params.queryString,
114
115
  });
115
116
  },
116
117
  };
@@ -1 +1 @@
1
- {"version":3,"file":"user-types.js","sourceRoot":"","sources":["../../../src/resolvers/type/user-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user-types.js","sourceRoot":"","sources":["../../../src/resolvers/type/user-types.ts"],"names":[],"mappings":"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"}
@@ -215,6 +215,7 @@ export default [
215
215
  offset: Int = 0
216
216
  includeCarts: Boolean = false
217
217
  queryString: String
218
+ sort: [SortOptionInput!]
218
219
  ): [Order!]!
219
220
 
220
221
  """
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/schema/query.js"],"names":[],"mappings":"AAAA,eAAe;IACb,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+ab;CACF,CAAC"}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/schema/query.js"],"names":[],"mappings":"AAAA,eAAe;IACb,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgbb;CACF,CAAC"}
@@ -70,11 +70,11 @@ export default [
70
70
  roles: [String!]
71
71
  tags: [String!]
72
72
  cart(orderNumber: String): Order
73
- orders(includeCarts: Boolean = false): [Order!]!
74
- quotations: [Quotation!]!
73
+ orders(includeCarts: Boolean = false, sort: [SortOptionInput!], queryString: String): [Order!]!
74
+ quotations(sort: [SortOptionInput!], queryString: String): [Quotation!]!
75
75
  bookmarks: [Bookmark!]!
76
76
  paymentCredentials: [PaymentCredentials!]!
77
- enrollments: [Enrollment!]!
77
+ enrollments(sort: [SortOptionInput!], queryString: String): [Enrollment!]!
78
78
  allowedActions: [RoleAction!]!
79
79
  }
80
80
  `,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unchainedshop/api",
3
- "version": "1.2.0",
3
+ "version": "1.2.10",
4
4
  "main": "lib/api-index.js",
5
5
  "exports": {
6
6
  ".": "./lib/api-index.js",
@@ -9,7 +9,6 @@
9
9
  "types": "lib/api-index.d.ts",
10
10
  "type": "module",
11
11
  "scripts": {
12
- "prepublishOnly": "npm install && npm run build || :",
13
12
  "clean": "rm -rf lib",
14
13
  "build": "npm run clean && tsc",
15
14
  "watch": "tsc -w",
@@ -36,11 +35,11 @@
36
35
  "graphql-scalars": "^1.x"
37
36
  },
38
37
  "dependencies": {
39
- "@unchainedshop/core": "^1.1.9",
40
- "@unchainedshop/events": "^1.1.9",
41
- "@unchainedshop/logger": "^1.1.9",
42
- "@unchainedshop/roles": "^1.1.9",
43
- "@unchainedshop/utils": "^1.1.9",
38
+ "@unchainedshop/core": "1.x",
39
+ "@unchainedshop/events": "1.x",
40
+ "@unchainedshop/logger": "1.x",
41
+ "@unchainedshop/roles": "1.x",
42
+ "@unchainedshop/utils": "1.x",
44
43
  "accounting": "0.4.1",
45
44
  "dataloader": "^2.1.0",
46
45
  "locale": "0.1.0",
@@ -52,7 +51,7 @@
52
51
  "@types/graphql-upload": "^8.0.11",
53
52
  "@types/locale": "^0.1.1",
54
53
  "@types/node": "^16.11.44",
55
- "@unchainedshop/types": "^1.1.9",
54
+ "@unchainedshop/types": "1.x",
56
55
  "apollo-server-express": "2.x",
57
56
  "graphql": "^15.8.0",
58
57
  "graphql-scalars": "^1.17.0",
package/src/api-index.ts CHANGED
@@ -11,7 +11,7 @@ export * as roles from './roles';
11
11
 
12
12
  export { createContextResolver, getCurrentContextResolver, setCurrentContextResolver };
13
13
 
14
- const UNCHAINED_API_VERSION = '1.1.3'; // eslint-disable-line
14
+ const UNCHAINED_API_VERSION = '1.2.0'; // eslint-disable-line
15
15
 
16
16
  export const startAPIServer = (options: UnchainedServerOptions) => {
17
17
  const {
@@ -1,10 +1,10 @@
1
1
  import { log } from '@unchainedshop/logger';
2
- import { Root, Context } from '@unchainedshop/types/api';
2
+ import { Root, Context, SortOption } from '@unchainedshop/types/api';
3
3
  import { OrderQuery } from '@unchainedshop/types/orders';
4
4
 
5
5
  export default async function orders(
6
6
  root: Root,
7
- params: OrderQuery & { limit?: number; offset?: number },
7
+ params: OrderQuery & { limit?: number; offset?: number; sort?: Array<SortOption> },
8
8
  { modules, userId }: Context,
9
9
  ) {
10
10
  const { includeCarts, limit, offset, queryString } = params;
@@ -3,9 +3,9 @@ import { Bookmark as BookmarkType } from '@unchainedshop/types/bookmarks';
3
3
  import { Product } from '@unchainedshop/types/products';
4
4
  import { User } from '@unchainedshop/types/user';
5
5
 
6
- type HelperType<T> = (bookmark: BookmarkType, _: never, context: Context) => T;
6
+ export type HelperType<T> = (bookmark: BookmarkType, _: never, context: Context) => T;
7
7
 
8
- interface BookmarkHelperTypes {
8
+ export interface BookmarkHelperTypes {
9
9
  product: HelperType<Promise<Product>>;
10
10
  user: HelperType<Promise<User>>;
11
11
  }
@@ -2,7 +2,7 @@ import { Context } from '@unchainedshop/types/api';
2
2
  import { Country as CountryType } from '@unchainedshop/types/countries';
3
3
  import { Currency } from '@unchainedshop/types/currencies';
4
4
 
5
- type HelperType<P, T> = (country: CountryType, params: P, context: Context) => T;
5
+ export type HelperType<P, T> = (country: CountryType, params: P, context: Context) => T;
6
6
 
7
7
  export interface CountryHelperTypes {
8
8
  flagEmoji: HelperType<never, string>;
@@ -3,7 +3,7 @@ import { DeliveryError, DeliveryProvider as DeliveryProviderType } from '@unchai
3
3
  import crypto from 'crypto';
4
4
  import { DeliveryPricingDirector } from '@unchainedshop/core-delivery';
5
5
 
6
- type HelperType<P, T> = (provider: DeliveryProviderType, params: P, context: Context) => T;
6
+ export type HelperType<P, T> = (provider: DeliveryProviderType, params: P, context: Context) => T;
7
7
 
8
8
  export interface DeliveryProviderHelperTypes {
9
9
  interface: HelperType<
@@ -1,7 +1,7 @@
1
1
  import { Context } from '@unchainedshop/types/api';
2
2
  import { Event as EventType } from '@unchainedshop/types/events';
3
3
 
4
- type HelperType<P, T> = (work: EventType, params: P, context: Context) => T;
4
+ export type HelperType<P, T> = (work: EventType, params: P, context: Context) => T;
5
5
 
6
6
  export interface EventHelperTypes {
7
7
  type: HelperType<never, string>;
@@ -5,7 +5,7 @@ import { DeliveryDirector } from '@unchainedshop/core-delivery';
5
5
 
6
6
  type HelperType<T> = (orderDelivery: OrderDelivery, _: never, context: Context) => T;
7
7
 
8
- interface OrderDeliveryPickupHelperTypes {
8
+ export interface OrderDeliveryPickupHelperTypes {
9
9
  activePickUpLocation: HelperType<Promise<DeliveryLocation>>;
10
10
  discounts: HelperType<Promise<Array<OrderDeliveryDiscount>>>;
11
11
  pickUpLocations: HelperType<Promise<Array<DeliveryLocation>>>;
@@ -1,4 +1,4 @@
1
- import { Context } from '@unchainedshop/types/api';
1
+ import { Context, SortOption } from '@unchainedshop/types/api';
2
2
  import { Bookmark } from '@unchainedshop/types/bookmarks';
3
3
  import { Contact } from '@unchainedshop/types/common';
4
4
  import { Country } from '@unchainedshop/types/countries';
@@ -24,7 +24,7 @@ export interface UserHelperTypes {
24
24
  country: HelperType<{ localeContext: Locale }, Country>;
25
25
  email: HelperType<any, string>;
26
26
  emails: HelperType<any, Array<string>>;
27
- enrollments: HelperType<any, Array<Enrollment>>;
27
+ enrollments: HelperType<{ sort?: Array<SortOption>; queryString?: string }, Array<Enrollment>>;
28
28
  isEmailVerified: HelperType<any, boolean>;
29
29
  isGuest: HelperType<any, boolean>;
30
30
  isInitialPassword: HelperType<any, boolean>;
@@ -36,11 +36,14 @@ export interface UserHelperTypes {
36
36
  allowedActions: HelperType<any, Array<string>>;
37
37
  // locale: HelperType<{ localeContext: Locale }, Locale>;
38
38
  name: HelperType<any, string>;
39
- orders: HelperType<{ includeCarts: boolean }, Array<Order>>;
39
+ orders: HelperType<
40
+ { includeCarts: boolean; sort?: Array<SortOption>; queryString?: string },
41
+ Array<Order>
42
+ >;
40
43
  paymentCredentials: HelperType<any, Array<PaymentCredentials>>;
41
44
  primaryEmail: HelperType<any, Email>;
42
45
  profile: HelperType<any, UserProfile>;
43
- quotations: HelperType<any, Array<Quotation>>;
46
+ quotations: HelperType<{ sort?: Array<SortOption>; queryString?: string }, Array<Quotation>>;
44
47
  roles: HelperType<any, Array<string>>;
45
48
  tags: HelperType<any, Array<string>>;
46
49
  username: HelperType<any, string>;
@@ -158,14 +161,12 @@ export const User: UserHelperTypes = {
158
161
 
159
162
  orders: async (user, params, context) => {
160
163
  await checkAction(context, viewUserOrders, [user, params]);
161
- return context.modules.orders.findOrders(
162
- { userId: user._id, includeCarts: params.includeCarts },
163
- {
164
- sort: {
165
- updated: -1,
166
- },
167
- },
168
- );
164
+ return context.modules.orders.findOrders({
165
+ userId: user._id,
166
+ includeCarts: params.includeCarts,
167
+ sort: params.sort,
168
+ queryString: params.queryString,
169
+ });
169
170
  },
170
171
 
171
172
  paymentCredentials: async (user, params, context) => {
@@ -182,13 +183,10 @@ export const User: UserHelperTypes = {
182
183
 
183
184
  quotations: async (user, params, context) => {
184
185
  await checkAction(context, viewUserQuotations, [user, params]);
185
- return context.modules.quotations.findQuotations(
186
- { userId: user._id },
187
- {
188
- sort: {
189
- created: -1,
190
- },
191
- },
192
- );
186
+ return context.modules.quotations.findQuotations({
187
+ userId: user._id,
188
+ sort: params.sort,
189
+ queryString: params.queryString,
190
+ });
193
191
  },
194
192
  };
@@ -215,6 +215,7 @@ export default [
215
215
  offset: Int = 0
216
216
  includeCarts: Boolean = false
217
217
  queryString: String
218
+ sort: [SortOptionInput!]
218
219
  ): [Order!]!
219
220
 
220
221
  """
@@ -70,11 +70,11 @@ export default [
70
70
  roles: [String!]
71
71
  tags: [String!]
72
72
  cart(orderNumber: String): Order
73
- orders(includeCarts: Boolean = false): [Order!]!
74
- quotations: [Quotation!]!
73
+ orders(includeCarts: Boolean = false, sort: [SortOptionInput!], queryString: String): [Order!]!
74
+ quotations(sort: [SortOptionInput!], queryString: String): [Quotation!]!
75
75
  bookmarks: [Bookmark!]!
76
76
  paymentCredentials: [PaymentCredentials!]!
77
- enrollments: [Enrollment!]!
77
+ enrollments(sort: [SortOptionInput!], queryString: String): [Enrollment!]!
78
78
  allowedActions: [RoleAction!]!
79
79
  }
80
80
  `,