@things-factory/integration-lmd 6.2.172 → 6.2.178

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.
Files changed (76) hide show
  1. package/dist-server/controllers/citylink/apis/index.d.ts +1 -0
  2. package/dist-server/controllers/citylink/apis/shipment-request/create-shipment-request.d.ts +6 -0
  3. package/dist-server/controllers/citylink/apis/shipment-request/create-shipment-request.js +1 -2
  4. package/dist-server/controllers/citylink/apis/shipment-request/create-shipment-request.js.map +1 -1
  5. package/dist-server/controllers/citylink/apis/shipment-request/index.d.ts +1 -0
  6. package/dist-server/controllers/citylink/citylink.d.ts +17 -0
  7. package/dist-server/controllers/citylink/citylink.js.map +1 -1
  8. package/dist-server/controllers/citylink/index.d.ts +1 -0
  9. package/dist-server/controllers/citylink/platform-action.d.ts +6 -0
  10. package/dist-server/controllers/citylink/platform-action.js.map +1 -1
  11. package/dist-server/controllers/etrax/apis/create-shipment-request.d.ts +38 -0
  12. package/dist-server/controllers/etrax/apis/create-shipment-request.js +1 -2
  13. package/dist-server/controllers/etrax/apis/create-shipment-request.js.map +1 -1
  14. package/dist-server/controllers/etrax/apis/index.d.ts +1 -0
  15. package/dist-server/controllers/etrax/etrax.d.ts +15 -0
  16. package/dist-server/controllers/etrax/etrax.js.map +1 -1
  17. package/dist-server/controllers/etrax/index.d.ts +1 -0
  18. package/dist-server/controllers/etrax/platform-action.d.ts +6 -0
  19. package/dist-server/controllers/etrax/platform-action.js.map +1 -1
  20. package/dist-server/controllers/index.d.ts +8 -0
  21. package/dist-server/controllers/lmd-api/decorators.d.ts +1 -0
  22. package/dist-server/controllers/lmd-api/decorators.js.map +1 -1
  23. package/dist-server/controllers/lmd-api/index.d.ts +14 -0
  24. package/dist-server/controllers/lmd-api/index.js +1 -1
  25. package/dist-server/controllers/lmd-api/index.js.map +1 -1
  26. package/dist-server/engine/connector/index.d.ts +1 -0
  27. package/dist-server/engine/connector/lmd-connector.d.ts +8 -0
  28. package/dist-server/engine/index.d.ts +2 -0
  29. package/dist-server/engine/task/index.d.ts +1 -0
  30. package/dist-server/engine/task/lmd-api.d.ts +1 -0
  31. package/dist-server/engine/task/lmd-api.js.map +1 -1
  32. package/dist-server/entities/courier-service.d.ts +13 -0
  33. package/dist-server/entities/courier-service.js +2 -2
  34. package/dist-server/entities/courier-service.js.map +1 -1
  35. package/dist-server/entities/index.d.ts +4 -0
  36. package/dist-server/entities/last-mile-delivery.d.ts +24 -0
  37. package/dist-server/entities/last-mile-delivery.js +2 -2
  38. package/dist-server/entities/last-mile-delivery.js.map +1 -1
  39. package/dist-server/graphql/index.d.ts +5 -0
  40. package/dist-server/graphql/resolvers/courier-service/courier-service-query.d.ts +16 -0
  41. package/dist-server/graphql/resolvers/courier-service/create-courier-service.d.ts +5 -0
  42. package/dist-server/graphql/resolvers/courier-service/delete-courier-service.d.ts +5 -0
  43. package/dist-server/graphql/resolvers/courier-service/delete-courier-services.d.ts +5 -0
  44. package/dist-server/graphql/resolvers/courier-service/index.d.ts +34 -0
  45. package/dist-server/graphql/resolvers/courier-service/update-courier-service.d.ts +6 -0
  46. package/dist-server/graphql/resolvers/courier-service/update-multiple-courier-service.d.ts +5 -0
  47. package/dist-server/graphql/resolvers/courier-service/update-multiple-courier-service.js.map +1 -1
  48. package/dist-server/graphql/resolvers/index.d.ts +2 -0
  49. package/dist-server/graphql/resolvers/last-mile-delivery/create-last-mile-delivery.d.ts +5 -0
  50. package/dist-server/graphql/resolvers/last-mile-delivery/delete-last-mile-deliveries.d.ts +5 -0
  51. package/dist-server/graphql/resolvers/last-mile-delivery/delete-last-mile-delivery.d.ts +5 -0
  52. package/dist-server/graphql/resolvers/last-mile-delivery/index.d.ts +34 -0
  53. package/dist-server/graphql/resolvers/last-mile-delivery/last-mile-delivery-query.d.ts +16 -0
  54. package/dist-server/graphql/resolvers/last-mile-delivery/update-last-mile-delivery.d.ts +6 -0
  55. package/dist-server/graphql/resolvers/last-mile-delivery/update-multiple-last-mile-delivery.d.ts +5 -0
  56. package/dist-server/graphql/resolvers/last-mile-delivery/update-multiple-last-mile-delivery.js.map +1 -1
  57. package/dist-server/graphql/types/courier-service/courier-service-list.d.ts +1 -0
  58. package/dist-server/graphql/types/courier-service/courier-service-patch.d.ts +1 -0
  59. package/dist-server/graphql/types/courier-service/courier-service.d.ts +1 -0
  60. package/dist-server/graphql/types/courier-service/index.d.ts +5 -0
  61. package/dist-server/graphql/types/courier-service/new-courier-service.d.ts +1 -0
  62. package/dist-server/graphql/types/index.d.ts +2 -0
  63. package/dist-server/graphql/types/last-mile-delivery/index.d.ts +5 -0
  64. package/dist-server/graphql/types/last-mile-delivery/last-mile-delivery-list.d.ts +1 -0
  65. package/dist-server/graphql/types/last-mile-delivery/last-mile-delivery-patch.d.ts +1 -0
  66. package/dist-server/graphql/types/last-mile-delivery/last-mile-delivery.d.ts +1 -0
  67. package/dist-server/graphql/types/last-mile-delivery/new-last-mile-delivery.d.ts +1 -0
  68. package/dist-server/index.d.ts +7 -0
  69. package/dist-server/middlewares/index.d.ts +1 -0
  70. package/dist-server/middlewares/index.js +1 -2
  71. package/dist-server/middlewares/index.js.map +1 -1
  72. package/dist-server/migrations/index.d.ts +1 -0
  73. package/dist-server/routes.d.ts +0 -0
  74. package/dist-server/tsconfig.tsbuildinfo +1 -1
  75. package/package.json +13 -13
  76. package/server/controllers/etrax/etrax.ts +1 -1
@@ -0,0 +1 @@
1
+ export * from './shipment-request';
@@ -0,0 +1,6 @@
1
+ export declare function createShipmentRequest(): {
2
+ method: string;
3
+ path: string;
4
+ denormalize(req: any): any;
5
+ normalize(res: any): any;
6
+ };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createShipmentRequest = void 0;
3
+ exports.createShipmentRequest = createShipmentRequest;
4
4
  function createShipmentRequest() {
5
5
  return {
6
6
  method: 'post',
@@ -13,5 +13,4 @@ function createShipmentRequest() {
13
13
  }
14
14
  };
15
15
  }
16
- exports.createShipmentRequest = createShipmentRequest;
17
16
  //# sourceMappingURL=create-shipment-request.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-shipment-request.js","sourceRoot":"","sources":["../../../../../server/controllers/citylink/apis/shipment-request/create-shipment-request.ts"],"names":[],"mappings":";;;AAAA,SAAgB,qBAAqB;IACnC,OAAO;QACL,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,kBAAkB;QACxB,WAAW,CAAC,GAAG;YACb,OAAO,GAAG,CAAA;QACZ,CAAC;QACD,SAAS,CAAC,GAAG;YACX,OAAO,GAAG,CAAA;QACZ,CAAC;KACF,CAAA;AACH,CAAC;AAXD,sDAWC","sourcesContent":["export function createShipmentRequest() {\n return {\n method: 'post',\n path: '/requestShipment',\n denormalize(req) {\n return req\n },\n normalize(res) {\n return res\n }\n }\n}\n"]}
1
+ {"version":3,"file":"create-shipment-request.js","sourceRoot":"","sources":["../../../../../server/controllers/citylink/apis/shipment-request/create-shipment-request.ts"],"names":[],"mappings":";;AAAA,sDAWC;AAXD,SAAgB,qBAAqB;IACnC,OAAO;QACL,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,kBAAkB;QACxB,WAAW,CAAC,GAAG;YACb,OAAO,GAAG,CAAA;QACZ,CAAC;QACD,SAAS,CAAC,GAAG;YACX,OAAO,GAAG,CAAA;QACZ,CAAC;KACF,CAAA;AACH,CAAC","sourcesContent":["export function createShipmentRequest() {\n return {\n method: 'post',\n path: '/requestShipment',\n denormalize(req) {\n return req\n },\n normalize(res) {\n return res\n }\n }\n}\n"]}
@@ -0,0 +1 @@
1
+ export * from './create-shipment-request';
@@ -0,0 +1,17 @@
1
+ export type CitylinkConfig = {
2
+ apiKey: string;
3
+ apiSecret: string;
4
+ accessToken?: string;
5
+ tenantId?: string;
6
+ callback?: string;
7
+ };
8
+ export declare class Citylink {
9
+ private config;
10
+ constructor(config: CitylinkConfig);
11
+ buildAuthURL(nonce: any): string;
12
+ get(path: string, data: any): Promise<any>;
13
+ post(path: string, data?: any): Promise<any>;
14
+ put(path: string, data?: any): Promise<any>;
15
+ delete(path: string, data?: any): Promise<any>;
16
+ private convertStatusCode;
17
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"citylink.js","sourceRoot":"","sources":["../../../server/controllers/citylink/citylink.ts"],"names":[],"mappings":"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","sourcesContent":["import fetch from 'node-fetch'\n\nconst ENDPOINT = 'http://202.133.101.28:8889/CitylinkService.svc/rest'\nconst debug = require('debug')('things-factory:integration-lmd:citylink')\n\nexport type CitylinkConfig = {\n apiKey: string\n apiSecret: string\n accessToken?: string\n tenantId?: string\n callback?: string\n}\n\nexport class Citylink {\n private config: CitylinkConfig\n\n constructor(config: CitylinkConfig) {\n this.config = {\n ...config\n }\n }\n\n buildAuthURL(nonce) {\n const scopes = 'offline_access openid profile email accounting.transactions accounting.settings'\n const { apiKey, callback: redirectUrl } = this.config\n\n return `https://login.xero.com/identity/connect/authorize?response_type=code&client_id=${apiKey}&scope=${scopes}&redirect_uri=${redirectUrl}&state=${nonce}`\n }\n\n async get(path: string, data: any) {\n const { accessToken, tenantId } = this.config\n\n const qs = Object.entries(data)\n .map(([k, v]) => `${k}=${encodeURIComponent(String(v))}`)\n .join('&')\n\n const endpoint = `${ENDPOINT}${path}${qs ? '?' + qs : ''}`\n debug('endpoint', endpoint)\n\n const response = await fetch(endpoint, {\n method: 'get',\n headers: {\n accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${accessToken}`,\n 'xero-tenant-id': tenantId\n }\n })\n\n if (!response.ok) {\n throw response\n }\n\n let result = await response.json()\n debug('response result', result)\n result = this.convertStatusCode(result)\n\n return result\n }\n\n async post(path: string, data: any = {}) {\n const { accessToken, tenantId } = this.config\n\n debug('data', data)\n\n const jsondata = JSON.stringify(data)\n\n const endpoint = `${ENDPOINT}${path}`\n debug('endpoint', endpoint)\n\n const response = await fetch(endpoint, {\n method: 'post',\n headers: {\n accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${accessToken}`,\n 'xero-tenant-id': tenantId\n },\n body: jsondata\n })\n\n if (!response.ok) {\n throw response\n }\n\n let result = await response.json()\n debug('response result', result)\n result = this.convertStatusCode(result)\n\n return result\n }\n\n async put(path: string, data: any = {}) {\n const { accessToken, tenantId } = this.config\n\n debug('data', data)\n\n const jsondata = JSON.stringify(data)\n\n const endpoint = `${ENDPOINT}${path}`\n debug('endpoint', endpoint)\n\n const response = await fetch(endpoint, {\n method: 'put',\n headers: {\n accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${accessToken}`,\n 'xero-tenant-id': tenantId\n },\n body: jsondata\n })\n\n if (!response.ok) {\n throw response\n }\n\n let result = await response.json()\n debug('response result', result)\n result = this.convertStatusCode(result)\n\n return result\n }\n\n async delete(path: string, data: any = {}) {\n const { accessToken, tenantId } = this.config\n\n debug('data', data)\n\n const jsondata = JSON.stringify(data)\n\n const endpoint = `${ENDPOINT}${path}`\n debug('endpoint', endpoint)\n\n const response = await fetch(endpoint, {\n method: 'delete',\n headers: {\n accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${accessToken}`,\n 'xero-tenant-id': tenantId\n },\n body: jsondata\n })\n\n if (!response.ok) {\n throw response\n }\n\n let result = await response.json()\n debug('response result', result)\n result = this.convertStatusCode(result)\n\n return result\n }\n\n private convertStatusCode(result: Record<string, any>): Record<string, any> {\n result.ok = result.Status.toLowerCase() === 'ok'\n return result\n }\n}\n"]}
1
+ {"version":3,"file":"citylink.js","sourceRoot":"","sources":["../../../server/controllers/citylink/citylink.ts"],"names":[],"mappings":"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","sourcesContent":["import fetch from 'node-fetch'\n\nconst ENDPOINT = 'http://202.133.101.28:8889/CitylinkService.svc/rest'\nconst debug = require('debug')('things-factory:integration-lmd:citylink')\n\nexport type CitylinkConfig = {\n apiKey: string\n apiSecret: string\n accessToken?: string\n tenantId?: string\n callback?: string\n}\n\nexport class Citylink {\n private config: CitylinkConfig\n\n constructor(config: CitylinkConfig) {\n this.config = {\n ...config\n }\n }\n\n buildAuthURL(nonce) {\n const scopes = 'offline_access openid profile email accounting.transactions accounting.settings'\n const { apiKey, callback: redirectUrl } = this.config\n\n return `https://login.xero.com/identity/connect/authorize?response_type=code&client_id=${apiKey}&scope=${scopes}&redirect_uri=${redirectUrl}&state=${nonce}`\n }\n\n async get(path: string, data: any) {\n const { accessToken, tenantId } = this.config\n\n const qs = Object.entries(data)\n .map(([k, v]) => `${k}=${encodeURIComponent(String(v))}`)\n .join('&')\n\n const endpoint = `${ENDPOINT}${path}${qs ? '?' + qs : ''}`\n debug('endpoint', endpoint)\n\n const response = await fetch(endpoint, {\n method: 'get',\n headers: {\n accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${accessToken}`,\n 'xero-tenant-id': tenantId\n }\n })\n\n if (!response.ok) {\n throw response\n }\n\n let result = await response.json()\n debug('response result', result)\n result = this.convertStatusCode(result)\n\n return result\n }\n\n async post(path: string, data: any = {}) {\n const { accessToken, tenantId } = this.config\n\n debug('data', data)\n\n const jsondata = JSON.stringify(data)\n\n const endpoint = `${ENDPOINT}${path}`\n debug('endpoint', endpoint)\n\n const response = await fetch(endpoint, {\n method: 'post',\n headers: {\n accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${accessToken}`,\n 'xero-tenant-id': tenantId\n },\n body: jsondata\n })\n\n if (!response.ok) {\n throw response\n }\n\n let result = await response.json()\n debug('response result', result)\n result = this.convertStatusCode(result)\n\n return result\n }\n\n async put(path: string, data: any = {}) {\n const { accessToken, tenantId } = this.config\n\n debug('data', data)\n\n const jsondata = JSON.stringify(data)\n\n const endpoint = `${ENDPOINT}${path}`\n debug('endpoint', endpoint)\n\n const response = await fetch(endpoint, {\n method: 'put',\n headers: {\n accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${accessToken}`,\n 'xero-tenant-id': tenantId\n },\n body: jsondata\n })\n\n if (!response.ok) {\n throw response\n }\n\n let result = await response.json()\n debug('response result', result)\n result = this.convertStatusCode(result)\n\n return result\n }\n\n async delete(path: string, data: any = {}) {\n const { accessToken, tenantId } = this.config\n\n debug('data', data)\n\n const jsondata = JSON.stringify(data)\n\n const endpoint = `${ENDPOINT}${path}`\n debug('endpoint', endpoint)\n\n const response = await fetch(endpoint, {\n method: 'delete',\n headers: {\n accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${accessToken}`,\n 'xero-tenant-id': tenantId\n },\n body: jsondata\n })\n\n if (!response.ok) {\n throw response\n }\n\n let result = await response.json()\n debug('response result', result)\n result = this.convertStatusCode(result)\n\n return result\n }\n\n private convertStatusCode(result: Record<string, any>): Record<string, any> {\n result.ok = result.Status.toLowerCase() === 'ok'\n return result\n }\n}\n"]}
@@ -0,0 +1 @@
1
+ export * from './citylink';
@@ -0,0 +1,6 @@
1
+ export declare const action: ({ lastMile, method, path, request }: {
2
+ lastMile: any;
3
+ method?: string;
4
+ path: any;
5
+ request: any;
6
+ }) => Promise<any>;
@@ -1 +1 @@
1
- {"version":3,"file":"platform-action.js","sourceRoot":"","sources":["../../../server/controllers/citylink/platform-action.ts"],"names":[],"mappings":";;;AAAA,yCAAqC;AAErC,6CAA4C;AAC5C,MAAM,cAAc,GAAG,YAAM,CAAC,GAAG,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAA;AAC/D,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAA;AAEtD,SAAS,UAAU,CAAC,IAAI,EAAE,GAAG;IAC3B,IAAI,KAAK,GAAG,EAAE,CAAA;IACd,IAAI,EAAE,GAAG,YAAY,CAAA;IACrB,IAAI,IAAI,CAAA;IAER,OAAO,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE;QAC7B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;KACpB;IAED,IAAI,MAAM,GAAG,IAAI,CAAA;IACjB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACnB,IAAI,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAC5B,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IACxE,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC;AAEM,MAAM,MAAM,GAAG,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;IAC1E,MAAM,MAAM,GAAG,IAAI,mBAAQ,CAAC;QAC1B,MAAM;QACN,SAAS;QACT,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,QAAQ,EAAE,QAAQ,CAAC,SAAS;QAC5B,QAAQ;KACT,CAAC,CAAA;IAEF,MAAM,EAAE,QAAQ,GAAG,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,OAAO,CAAA;IAE/C,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IAEjC,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;AAC5C,CAAC,CAAA;AAdY,QAAA,MAAM,UAclB","sourcesContent":["import { Citylink } from './citylink'\n\nimport { config } from '@things-factory/env'\nconst citylinkConfig = config.get('lmdIntegrationCitylink', {})\nconst { apiKey, apiSecret, callback } = citylinkConfig\n\nfunction substitute(path, obj) {\n var props = []\n var re = /{([^}]+)}/g\n var text\n\n while ((text = re.exec(path))) {\n props.push(text[1])\n }\n\n var result = path\n props.forEach(prop => {\n let value = obj[prop.trim()]\n result = result.replace(`{${prop}}`, value === undefined ? '' : value)\n })\n\n return result\n}\n\nexport const action = async ({ lastMile, method = 'get', path, request }) => {\n const client = new Citylink({\n apiKey,\n apiSecret,\n accessToken: lastMile.accessToken,\n tenantId: lastMile.accountId,\n callback\n })\n\n const { resource = {}, payload = {} } = request\n\n path = substitute(path, resource)\n\n return await client[method](path, payload)\n}\n"]}
1
+ {"version":3,"file":"platform-action.js","sourceRoot":"","sources":["../../../server/controllers/citylink/platform-action.ts"],"names":[],"mappings":";;;AAAA,yCAAqC;AAErC,6CAA4C;AAC5C,MAAM,cAAc,GAAG,YAAM,CAAC,GAAG,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAA;AAC/D,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAA;AAEtD,SAAS,UAAU,CAAC,IAAI,EAAE,GAAG;IAC3B,IAAI,KAAK,GAAG,EAAE,CAAA;IACd,IAAI,EAAE,GAAG,YAAY,CAAA;IACrB,IAAI,IAAI,CAAA;IAER,OAAO,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IACrB,CAAC;IAED,IAAI,MAAM,GAAG,IAAI,CAAA;IACjB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACnB,IAAI,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAC5B,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IACxE,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC;AAEM,MAAM,MAAM,GAAG,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;IAC1E,MAAM,MAAM,GAAG,IAAI,mBAAQ,CAAC;QAC1B,MAAM;QACN,SAAS;QACT,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,QAAQ,EAAE,QAAQ,CAAC,SAAS;QAC5B,QAAQ;KACT,CAAC,CAAA;IAEF,MAAM,EAAE,QAAQ,GAAG,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,OAAO,CAAA;IAE/C,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IAEjC,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;AAC5C,CAAC,CAAA;AAdY,QAAA,MAAM,UAclB","sourcesContent":["import { Citylink } from './citylink'\n\nimport { config } from '@things-factory/env'\nconst citylinkConfig = config.get('lmdIntegrationCitylink', {})\nconst { apiKey, apiSecret, callback } = citylinkConfig\n\nfunction substitute(path, obj) {\n var props = []\n var re = /{([^}]+)}/g\n var text\n\n while ((text = re.exec(path))) {\n props.push(text[1])\n }\n\n var result = path\n props.forEach(prop => {\n let value = obj[prop.trim()]\n result = result.replace(`{${prop}}`, value === undefined ? '' : value)\n })\n\n return result\n}\n\nexport const action = async ({ lastMile, method = 'get', path, request }) => {\n const client = new Citylink({\n apiKey,\n apiSecret,\n accessToken: lastMile.accessToken,\n tenantId: lastMile.accountId,\n callback\n })\n\n const { resource = {}, payload = {} } = request\n\n path = substitute(path, resource)\n\n return await client[method](path, payload)\n}\n"]}
@@ -0,0 +1,38 @@
1
+ export declare function createShipmentRequest(): {
2
+ method: string;
3
+ path: string;
4
+ denormalize(req: any): {
5
+ OrderNo: any;
6
+ ExtOrderNo: any;
7
+ ClientId: any;
8
+ ClientType: any;
9
+ ClientName: any;
10
+ TransporterId: any;
11
+ TransporterId2: any;
12
+ PickUpAttnTo: any;
13
+ PickUpAddr1: any;
14
+ PickUpAddr2: any;
15
+ PickUpPostCode: any;
16
+ PickUpCity: any;
17
+ PickUpState: any;
18
+ PickUpPhone: any;
19
+ PickUpEmail: any;
20
+ DeliverToAttnTo: any;
21
+ DeliverToAddr1: any;
22
+ DeliverToAddr2: any;
23
+ DeliverToPostCode: any;
24
+ DeliverToCity: any;
25
+ DeliverToState: any;
26
+ DeliverToPhone: any;
27
+ DeliverToEmail: any;
28
+ TotalWeight: number;
29
+ TotalVolume: number;
30
+ CollectionType: string;
31
+ CollectionCurrency: string;
32
+ FreightType: number;
33
+ GoodsType: number;
34
+ DeliveryMethod: number;
35
+ Parcels: any[];
36
+ };
37
+ normalize(res: any): any;
38
+ };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createShipmentRequest = void 0;
3
+ exports.createShipmentRequest = createShipmentRequest;
4
4
  function createShipmentRequest() {
5
5
  return {
6
6
  method: 'post',
@@ -56,5 +56,4 @@ function createShipmentRequest() {
56
56
  }
57
57
  };
58
58
  }
59
- exports.createShipmentRequest = createShipmentRequest;
60
59
  //# sourceMappingURL=create-shipment-request.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-shipment-request.js","sourceRoot":"","sources":["../../../../server/controllers/etrax/apis/create-shipment-request.ts"],"names":[],"mappings":";;;AAAA,SAAgB,qBAAqB;IACnC,OAAO;QACL,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,+BAA+B;QACrC,WAAW,CAAC,GAAG;YACb,MAAM,EACJ,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,aAAa,EACb,cAAc,EACd,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,KAAK,EACL,KAAK,EACL,WAAW,EACX,QAAQ,EACR,UAAU,EACV,cAAc,EACd,cAAc,EACd,cAAc,EACd,UAAU,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACZ,GAAG,GAAG,CAAA;YAEP,yCAAyC;YACzC,MAAM,OAAO,GAAG,EAAE,CAAA;YAClB,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,EAAE;gBACR,GAAG,EAAE,QAAQ;gBACb,MAAM,EAAE,CAAC;gBACT,KAAK,EAAE,CAAC;gBACR,KAAK,EAAE,CAAC;gBACR,MAAM,EAAE,CAAC;aACV,CAAC,CAAA;YAEF,OAAO;gBACL,OAAO,EAAE,OAAO;gBAChB,UAAU,EAAE,OAAO;gBACnB,QAAQ,EAAE,QAAQ;gBAClB,UAAU,EAAE,UAAU;gBACtB,UAAU,EAAE,UAAU;gBACtB,aAAa,EAAE,aAAa;gBAC5B,cAAc,EAAE,cAAc;gBAC9B,YAAY,EAAE,UAAU;gBACxB,WAAW,EAAE,cAAc;gBAC3B,WAAW,EAAE,cAAc;gBAC3B,cAAc,EAAE,cAAc;gBAC9B,UAAU,EAAE,UAAU;gBACtB,WAAW,EAAE,WAAW;gBACxB,WAAW,EAAE,WAAW;gBACxB,WAAW,EAAE,WAAW;gBACxB,eAAe,EAAE,WAAW;gBAC5B,cAAc,EAAE,QAAQ;gBACxB,cAAc,EAAE,QAAQ;gBACxB,iBAAiB,EAAE,QAAQ;gBAC3B,aAAa,EAAE,IAAI;gBACnB,cAAc,EAAE,KAAK;gBACrB,cAAc,EAAE,KAAK;gBACrB,cAAc,EAAE,KAAK;gBACrB,WAAW,EAAE,CAAC;gBACd,WAAW,EAAE,CAAC;gBACd,cAAc,EAAE,SAAS;gBACzB,kBAAkB,EAAE,KAAK;gBACzB,WAAW,EAAE,CAAC;gBACd,SAAS,EAAE,CAAC;gBACZ,cAAc,EAAE,CAAC;gBACjB,OAAO,EAAE,OAAO;aACjB,CAAA;QACH,CAAC;QACD,SAAS,CAAC,GAAG;YACX,OAAO,GAAG,CAAA;QACZ,CAAC;KACF,CAAA;AACH,CAAC;AAjFD,sDAiFC","sourcesContent":["export function createShipmentRequest() {\n return {\n method: 'post',\n path: '/rest/delivery.php?api=create',\n denormalize(req) {\n const {\n orderNo,\n clientId,\n clientType,\n clientName,\n transporterId,\n transporterId2,\n name,\n address1,\n address2,\n postCode,\n city,\n state,\n phone,\n email,\n attentionTo,\n quantity,\n pickupName,\n pickupAddress1,\n pickupAddress2,\n pickupPostcode,\n pickupCity,\n pickupState,\n pickupPhone,\n pickupEmail\n } = req\n\n //Creta a parcel array, but only 1 needed\n const parcels = []\n parcels.push({\n desc: '',\n qty: quantity,\n weight: 0,\n width: 0,\n depth: 0,\n height: 0\n })\n\n return {\n OrderNo: orderNo,\n ExtOrderNo: orderNo,\n ClientId: clientId,\n ClientType: clientType,\n ClientName: clientName,\n TransporterId: transporterId,\n TransporterId2: transporterId2,\n PickUpAttnTo: pickupName,\n PickUpAddr1: pickupAddress1,\n PickUpAddr2: pickupAddress2,\n PickUpPostCode: pickupPostcode,\n PickUpCity: pickupCity,\n PickUpState: pickupState,\n PickUpPhone: pickupPhone,\n PickUpEmail: pickupEmail,\n DeliverToAttnTo: attentionTo,\n DeliverToAddr1: address1,\n DeliverToAddr2: address2,\n DeliverToPostCode: postCode,\n DeliverToCity: city,\n DeliverToState: state,\n DeliverToPhone: phone,\n DeliverToEmail: email,\n TotalWeight: 0,\n TotalVolume: 0,\n CollectionType: 'Prepaid',\n CollectionCurrency: 'MYR',\n FreightType: 0,\n GoodsType: 0,\n DeliveryMethod: 0,\n Parcels: parcels\n }\n },\n normalize(res) {\n return res\n }\n }\n}\n"]}
1
+ {"version":3,"file":"create-shipment-request.js","sourceRoot":"","sources":["../../../../server/controllers/etrax/apis/create-shipment-request.ts"],"names":[],"mappings":";;AAAA,sDAiFC;AAjFD,SAAgB,qBAAqB;IACnC,OAAO;QACL,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,+BAA+B;QACrC,WAAW,CAAC,GAAG;YACb,MAAM,EACJ,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,aAAa,EACb,cAAc,EACd,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,KAAK,EACL,KAAK,EACL,WAAW,EACX,QAAQ,EACR,UAAU,EACV,cAAc,EACd,cAAc,EACd,cAAc,EACd,UAAU,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACZ,GAAG,GAAG,CAAA;YAEP,yCAAyC;YACzC,MAAM,OAAO,GAAG,EAAE,CAAA;YAClB,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,EAAE;gBACR,GAAG,EAAE,QAAQ;gBACb,MAAM,EAAE,CAAC;gBACT,KAAK,EAAE,CAAC;gBACR,KAAK,EAAE,CAAC;gBACR,MAAM,EAAE,CAAC;aACV,CAAC,CAAA;YAEF,OAAO;gBACL,OAAO,EAAE,OAAO;gBAChB,UAAU,EAAE,OAAO;gBACnB,QAAQ,EAAE,QAAQ;gBAClB,UAAU,EAAE,UAAU;gBACtB,UAAU,EAAE,UAAU;gBACtB,aAAa,EAAE,aAAa;gBAC5B,cAAc,EAAE,cAAc;gBAC9B,YAAY,EAAE,UAAU;gBACxB,WAAW,EAAE,cAAc;gBAC3B,WAAW,EAAE,cAAc;gBAC3B,cAAc,EAAE,cAAc;gBAC9B,UAAU,EAAE,UAAU;gBACtB,WAAW,EAAE,WAAW;gBACxB,WAAW,EAAE,WAAW;gBACxB,WAAW,EAAE,WAAW;gBACxB,eAAe,EAAE,WAAW;gBAC5B,cAAc,EAAE,QAAQ;gBACxB,cAAc,EAAE,QAAQ;gBACxB,iBAAiB,EAAE,QAAQ;gBAC3B,aAAa,EAAE,IAAI;gBACnB,cAAc,EAAE,KAAK;gBACrB,cAAc,EAAE,KAAK;gBACrB,cAAc,EAAE,KAAK;gBACrB,WAAW,EAAE,CAAC;gBACd,WAAW,EAAE,CAAC;gBACd,cAAc,EAAE,SAAS;gBACzB,kBAAkB,EAAE,KAAK;gBACzB,WAAW,EAAE,CAAC;gBACd,SAAS,EAAE,CAAC;gBACZ,cAAc,EAAE,CAAC;gBACjB,OAAO,EAAE,OAAO;aACjB,CAAA;QACH,CAAC;QACD,SAAS,CAAC,GAAG;YACX,OAAO,GAAG,CAAA;QACZ,CAAC;KACF,CAAA;AACH,CAAC","sourcesContent":["export function createShipmentRequest() {\n return {\n method: 'post',\n path: '/rest/delivery.php?api=create',\n denormalize(req) {\n const {\n orderNo,\n clientId,\n clientType,\n clientName,\n transporterId,\n transporterId2,\n name,\n address1,\n address2,\n postCode,\n city,\n state,\n phone,\n email,\n attentionTo,\n quantity,\n pickupName,\n pickupAddress1,\n pickupAddress2,\n pickupPostcode,\n pickupCity,\n pickupState,\n pickupPhone,\n pickupEmail\n } = req\n\n //Creta a parcel array, but only 1 needed\n const parcels = []\n parcels.push({\n desc: '',\n qty: quantity,\n weight: 0,\n width: 0,\n depth: 0,\n height: 0\n })\n\n return {\n OrderNo: orderNo,\n ExtOrderNo: orderNo,\n ClientId: clientId,\n ClientType: clientType,\n ClientName: clientName,\n TransporterId: transporterId,\n TransporterId2: transporterId2,\n PickUpAttnTo: pickupName,\n PickUpAddr1: pickupAddress1,\n PickUpAddr2: pickupAddress2,\n PickUpPostCode: pickupPostcode,\n PickUpCity: pickupCity,\n PickUpState: pickupState,\n PickUpPhone: pickupPhone,\n PickUpEmail: pickupEmail,\n DeliverToAttnTo: attentionTo,\n DeliverToAddr1: address1,\n DeliverToAddr2: address2,\n DeliverToPostCode: postCode,\n DeliverToCity: city,\n DeliverToState: state,\n DeliverToPhone: phone,\n DeliverToEmail: email,\n TotalWeight: 0,\n TotalVolume: 0,\n CollectionType: 'Prepaid',\n CollectionCurrency: 'MYR',\n FreightType: 0,\n GoodsType: 0,\n DeliveryMethod: 0,\n Parcels: parcels\n }\n },\n normalize(res) {\n return res\n }\n }\n}\n"]}
@@ -0,0 +1 @@
1
+ export * from './create-shipment-request';
@@ -0,0 +1,15 @@
1
+ export type EtraxAuth = {
2
+ SourceID: string;
3
+ TimeStamp: string;
4
+ Token: string;
5
+ };
6
+ export declare class Etrax {
7
+ private _auth;
8
+ private _secretKey;
9
+ constructor(customerCode: string);
10
+ post(path: string, data: any): Promise<any>;
11
+ validateToken(receivedToken: string, apiKey: string, timestamp: string): Promise<boolean>;
12
+ generateToken(timestamp: string, apiKey: string): Promise<string>;
13
+ getTimestamp(): string;
14
+ generateMD5(input: string): string;
15
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"etrax.js","sourceRoot":"","sources":["../../../server/controllers/etrax/etrax.ts"],"names":[],"mappings":"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","sourcesContent":["import crypto from 'crypto'\nimport fetch from 'node-fetch'\n\nimport { getRepository } from '@things-factory/shell'\n\nimport { LastMileDelivery } from '../../entities'\n\nconst ENDPOINT = 'http://ets.sntglobal.com'\n//const ENDPOINT = 'https://localhost:44344'\nconst debug = require('debug')('things-factory:integration-lmd:etrax')\n\nexport type EtraxAuth = {\n SourceID: string\n TimeStamp: string\n Token: string\n}\n\nexport class Etrax {\n private _auth: EtraxAuth\n private _secretKey: string\n\n constructor(customerCode: string) {\n this._auth = {\n SourceID: '',\n TimeStamp: '',\n Token: ''\n }\n\n this._auth.SourceID = customerCode\n }\n\n async post(path: string, data: any) {\n const timestamp = this.getTimestamp()\n let apiKey = 'CREATE_DELIVERY'\n\n //Path to APIKEY\n if (path.includes('create-delivery')) {\n apiKey = 'CREATE_DELIVERY'\n }\n\n await this.generateToken(timestamp, apiKey)\n\n let finalData = {\n ...data,\n ...this._auth\n }\n let jsonData = JSON.stringify(finalData)\n\n debug(ENDPOINT + path)\n debug(jsonData)\n\n const response = await fetch(ENDPOINT + path, {\n method: 'post',\n headers: {\n accept: 'application/json',\n 'Content-Type': 'application/json'\n },\n body: jsonData\n })\n\n if (!response.ok) {\n throw response\n }\n let result = await response.json()\n debug('response result', result)\n //result = this.convertStatusCode(result)\n\n return result\n }\n\n async validateToken(receivedToken: string, apiKey: string, timestamp: string) {\n if (receivedToken !== (await this.generateToken(timestamp, apiKey))) {\n return false\n } else {\n return true\n }\n }\n\n async generateToken(timestamp: string, apiKey: string) {\n const lmdRepo = getRepository(LastMileDelivery)\n const lmd = await lmdRepo.findOne({ where: { clientName: this._auth.SourceID } })\n const secretKey = lmd.secretKey\n\n const temp = apiKey + timestamp + secretKey\n const md5 = this.generateMD5(temp)\n this._auth.TimeStamp = timestamp\n this._auth.Token = md5\n\n return md5.toString().toUpperCase()\n }\n\n getTimestamp() {\n const pad = (n: Number) => (n < 10 ? '0' + n : n)\n const date = new Date()\n const timestamp =\n date.getFullYear().toString() +\n pad(date.getMonth() + 1) +\n pad(date.getDate()) +\n pad(date.getHours()) +\n pad(date.getMinutes()) +\n pad(date.getSeconds())\n return timestamp\n }\n\n generateMD5(input: string) {\n return crypto.createHash('md5').update(input).digest('hex')\n }\n}\n"]}
1
+ {"version":3,"file":"etrax.js","sourceRoot":"","sources":["../../../server/controllers/etrax/etrax.ts"],"names":[],"mappings":"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","sourcesContent":["import crypto from 'crypto'\nimport fetch from 'node-fetch'\n\nimport { getRepository } from '@things-factory/shell'\n\nimport { LastMileDelivery } from '../../entities'\n\nconst ENDPOINT = 'http://ets.sntglobal.com'\n//const ENDPOINT = 'https://localhost:44344'\nconst debug = require('debug')('things-factory:integration-lmd:etrax')\n\nexport type EtraxAuth = {\n SourceID: string\n TimeStamp: string\n Token: string\n}\n\nexport class Etrax {\n private _auth: EtraxAuth\n private _secretKey: string\n\n constructor(customerCode: string) {\n this._auth = {\n SourceID: '',\n TimeStamp: '',\n Token: ''\n }\n\n this._auth.SourceID = customerCode\n }\n\n async post(path: string, data: any) {\n const timestamp = this.getTimestamp()\n let apiKey = 'CREATE_DELIVERY'\n\n //Path to APIKEY\n if (path.includes('create-delivery')) {\n apiKey = 'CREATE_DELIVERY'\n }\n\n await this.generateToken(timestamp, apiKey)\n\n let finalData = {\n ...data,\n ...this._auth\n }\n let jsonData = JSON.stringify(finalData)\n\n debug(ENDPOINT + path)\n debug(jsonData)\n\n const response = await fetch(ENDPOINT + path, {\n method: 'post',\n headers: {\n accept: 'application/json',\n 'Content-Type': 'application/json'\n },\n body: jsonData\n })\n\n if (!response.ok) {\n throw response\n }\n let result = await response.json()\n debug('response result', result)\n //result = this.convertStatusCode(result)\n\n return result\n }\n\n async validateToken(receivedToken: string, apiKey: string, timestamp: string) {\n if (receivedToken !== (await this.generateToken(timestamp, apiKey))) {\n return false\n } else {\n return true\n }\n }\n\n async generateToken(timestamp: string, apiKey: string) {\n const lmdRepo = getRepository(LastMileDelivery)\n const lmd = await lmdRepo.findOne({ where: { clientName: this._auth.SourceID } })\n const secretKey = lmd.secretKey\n\n const temp = apiKey + timestamp + secretKey\n const md5 = this.generateMD5(temp)\n this._auth.TimeStamp = timestamp\n this._auth.Token = md5\n\n return md5.toString().toUpperCase()\n }\n\n getTimestamp() {\n const pad = (n: number) => (n < 10 ? '0' + n : n)\n const date = new Date()\n const timestamp =\n date.getFullYear().toString() +\n pad(date.getMonth() + 1) +\n pad(date.getDate()) +\n pad(date.getHours()) +\n pad(date.getMinutes()) +\n pad(date.getSeconds())\n return timestamp\n }\n\n generateMD5(input: string) {\n return crypto.createHash('md5').update(input).digest('hex')\n }\n}\n"]}
@@ -0,0 +1 @@
1
+ export * from './etrax';
@@ -0,0 +1,6 @@
1
+ export declare const action: ({ lastMile, method, path, request }: {
2
+ lastMile: any;
3
+ method?: string;
4
+ path: any;
5
+ request: any;
6
+ }) => Promise<any>;
@@ -1 +1 @@
1
- {"version":3,"file":"platform-action.js","sourceRoot":"","sources":["../../../server/controllers/etrax/platform-action.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAE/B,SAAS,UAAU,CAAC,IAAI,EAAE,GAAG;IAC1B,IAAI,KAAK,GAAG,EAAE,CAAA;IACd,IAAI,EAAE,GAAG,YAAY,CAAA;IACrB,IAAI,IAAI,CAAA;IAER,OAAO,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE;QAC7B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;KACpB;IAED,IAAI,MAAM,GAAG,IAAI,CAAA;IACjB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACnB,IAAI,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAC5B,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IACxE,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC;AAEK,MAAM,MAAM,GAAG,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;IACzE,+BAA+B;IAC/B,MAAM,YAAY,GAAG,QAAQ,CAAC,UAAU,CAAA;IAExC,MAAM,MAAM,GAAG,IAAI,aAAK,CAAC,YAAY,CAAC,CAAA;IAEtC,iDAAiD;IAEjD,mCAAmC;IAEnC,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;AAC5C,CAAC,CAAA;AAXW,QAAA,MAAM,UAWjB","sourcesContent":["import { Etrax } from './etrax'\n\nfunction substitute(path, obj) {\n var props = []\n var re = /{([^}]+)}/g\n var text\n \n while ((text = re.exec(path))) {\n props.push(text[1])\n }\n \n var result = path\n props.forEach(prop => {\n let value = obj[prop.trim()]\n result = result.replace(`{${prop}}`, value === undefined ? '' : value)\n })\n \n return result\n }\n \nexport const action = async ({ lastMile, method = 'get', path, request }) => {\n //LMD ClientName Store SourceID\n const customerCode = lastMile.clientName\n\n const client = new Etrax(customerCode)\n \n //const { resource = {}, payload = {} } = request\n \n //path = substitute(path, resource)\n \n return await client[method](path, request)\n }"]}
1
+ {"version":3,"file":"platform-action.js","sourceRoot":"","sources":["../../../server/controllers/etrax/platform-action.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAE/B,SAAS,UAAU,CAAC,IAAI,EAAE,GAAG;IAC1B,IAAI,KAAK,GAAG,EAAE,CAAA;IACd,IAAI,EAAE,GAAG,YAAY,CAAA;IACrB,IAAI,IAAI,CAAA;IAER,OAAO,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IACrB,CAAC;IAED,IAAI,MAAM,GAAG,IAAI,CAAA;IACjB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACnB,IAAI,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAC5B,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IACxE,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC;AAEK,MAAM,MAAM,GAAG,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;IACzE,+BAA+B;IAC/B,MAAM,YAAY,GAAG,QAAQ,CAAC,UAAU,CAAA;IAExC,MAAM,MAAM,GAAG,IAAI,aAAK,CAAC,YAAY,CAAC,CAAA;IAEtC,iDAAiD;IAEjD,mCAAmC;IAEnC,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;AAC5C,CAAC,CAAA;AAXW,QAAA,MAAM,UAWjB","sourcesContent":["import { Etrax } from './etrax'\n\nfunction substitute(path, obj) {\n var props = []\n var re = /{([^}]+)}/g\n var text\n \n while ((text = re.exec(path))) {\n props.push(text[1])\n }\n \n var result = path\n props.forEach(prop => {\n let value = obj[prop.trim()]\n result = result.replace(`{${prop}}`, value === undefined ? '' : value)\n })\n \n return result\n }\n \nexport const action = async ({ lastMile, method = 'get', path, request }) => {\n //LMD ClientName Store SourceID\n const customerCode = lastMile.clientName\n\n const client = new Etrax(customerCode)\n \n //const { resource = {}, payload = {} } = request\n \n //path = substitute(path, resource)\n \n return await client[method](path, request)\n }"]}
@@ -0,0 +1,8 @@
1
+ import './citylink';
2
+ import './etrax';
3
+ export * from './lmd-api';
4
+ export declare const LMD_STATUS: {
5
+ ACTIVE: string;
6
+ INACTIVE: string;
7
+ TERMINATED: string;
8
+ };
@@ -0,0 +1 @@
1
+ export declare const api: (target: Object, property: string, descriptor: TypedPropertyDescriptor<any>) => any;
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../server/controllers/lmd-api/decorators.ts"],"names":[],"mappings":";;;;AAAA,0DAAyB;AACzB,MAAM,KAAK,GAAG,IAAA,eAAK,EAAC,kDAAkD,CAAC,CAAA;AAIvE,MAAM,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAEZ,MAAM,GAAG,GAAG,CAAC,MAAc,EAAE,QAAgB,EAAE,UAAwC,EAAO,EAAE;IACrG,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAA;IAE/B,UAAU,CAAC,KAAK,GAAG,KAAK,WAAW,QAA0B,EAAE,OAAO;QACpE,MAAM,WAAW,GAAG,IAAI,CAAA;QAExB,IAAI,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAA;QAE3B,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QAExE,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACzB,IAAI,CAAC,CAAC,EAAE;YACN,MAAM,KAAK,CAAC,gCAAgC,QAAQ,sBAAsB,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;SACzF;QAED,IAAI,EACF,IAAI,EACJ,MAAM,EAAE,UAAU,GAAG,MAAM,EAC3B,WAAW,GAAG,IAAI,EAClB,SAAS,GAAG,IAAI,EAChB,MAAM,GAAG,cAAc,EACxB,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;QAE5B,IAAI,YAAY,GAAG,MAAM,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;QACjE,KAAK,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;QAE9B,IAAI,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;YACtC,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE;SAC9E,CAAC,CAAA;QAEF,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QAC3B;;WAEG;QAEH,OAAO,MAAM,SAAS,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;IAChD,CAAC,CAAA;IAED,OAAO,UAAU,CAAA;AACnB,CAAC,CAAA;AAvCY,QAAA,GAAG,OAuCf","sourcesContent":["import Debug from 'debug'\nconst debug = Debug('things-factory:integration-lmd:lmd-api-decorator')\n\nimport { LastMileDelivery } from '../../entities'\n\nconst NOOP = v => v\n\nexport const api = (target: Object, property: string, descriptor: TypedPropertyDescriptor<any>): any => {\n const method = descriptor.value\n\n descriptor.value = async function (lastMile: LastMileDelivery, request) {\n const LastMileAPI = this\n\n var { platform } = lastMile\n\n var { action: platformAction, apis } = LastMileAPI.getPlatform(platform)\n\n var m = apis[method.name]\n if (!m) {\n throw Error(`Last Mile Delivery Platform '${platform}' doesn't have API ${method.name}`)\n }\n\n var {\n path,\n method: httpMethod = 'post',\n denormalize = NOOP,\n normalize = NOOP,\n action = platformAction\n } = m.apply(this, [request])\n\n var denormalized = await denormalize(request || {}, { lastMile })\n debug('request', denormalized)\n\n var response = await action.apply(this, [\n { lastMile, method: httpMethod, path, request: denormalized, platformAction }\n ])\n\n debug('response', response)\n /*if (!response.ok) {\n throw response\n }*/\n\n return await normalize(response, { lastMile })\n }\n\n return descriptor\n}\n"]}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../server/controllers/lmd-api/decorators.ts"],"names":[],"mappings":";;;;AAAA,0DAAyB;AACzB,MAAM,KAAK,GAAG,IAAA,eAAK,EAAC,kDAAkD,CAAC,CAAA;AAIvE,MAAM,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAEZ,MAAM,GAAG,GAAG,CAAC,MAAc,EAAE,QAAgB,EAAE,UAAwC,EAAO,EAAE;IACrG,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAA;IAE/B,UAAU,CAAC,KAAK,GAAG,KAAK,WAAW,QAA0B,EAAE,OAAO;QACpE,MAAM,WAAW,GAAG,IAAI,CAAA;QAExB,IAAI,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAA;QAE3B,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QAExE,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACzB,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,KAAK,CAAC,gCAAgC,QAAQ,sBAAsB,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;QAC1F,CAAC;QAED,IAAI,EACF,IAAI,EACJ,MAAM,EAAE,UAAU,GAAG,MAAM,EAC3B,WAAW,GAAG,IAAI,EAClB,SAAS,GAAG,IAAI,EAChB,MAAM,GAAG,cAAc,EACxB,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;QAE5B,IAAI,YAAY,GAAG,MAAM,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;QACjE,KAAK,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;QAE9B,IAAI,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;YACtC,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE;SAC9E,CAAC,CAAA;QAEF,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QAC3B;;WAEG;QAEH,OAAO,MAAM,SAAS,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;IAChD,CAAC,CAAA;IAED,OAAO,UAAU,CAAA;AACnB,CAAC,CAAA;AAvCY,QAAA,GAAG,OAuCf","sourcesContent":["import Debug from 'debug'\nconst debug = Debug('things-factory:integration-lmd:lmd-api-decorator')\n\nimport { LastMileDelivery } from '../../entities'\n\nconst NOOP = v => v\n\nexport const api = (target: Object, property: string, descriptor: TypedPropertyDescriptor<any>): any => {\n const method = descriptor.value\n\n descriptor.value = async function (lastMile: LastMileDelivery, request) {\n const LastMileAPI = this\n\n var { platform } = lastMile\n\n var { action: platformAction, apis } = LastMileAPI.getPlatform(platform)\n\n var m = apis[method.name]\n if (!m) {\n throw Error(`Last Mile Delivery Platform '${platform}' doesn't have API ${method.name}`)\n }\n\n var {\n path,\n method: httpMethod = 'post',\n denormalize = NOOP,\n normalize = NOOP,\n action = platformAction\n } = m.apply(this, [request])\n\n var denormalized = await denormalize(request || {}, { lastMile })\n debug('request', denormalized)\n\n var response = await action.apply(this, [\n { lastMile, method: httpMethod, path, request: denormalized, platformAction }\n ])\n\n debug('response', response)\n /*if (!response.ok) {\n throw response\n }*/\n\n return await normalize(response, { lastMile })\n }\n\n return descriptor\n}\n"]}
@@ -0,0 +1,14 @@
1
+ import { LastMileDelivery } from '../../entities';
2
+ export declare const LAST_MILE_STATUS: {
3
+ ACTIVE: string;
4
+ INACTIVE: string;
5
+ TERMINATED: string;
6
+ };
7
+ export declare class LastMileAPI {
8
+ static platforms: {};
9
+ static registerPlatform(name: any, action: any, apis: any): void;
10
+ static getPlatform(name: any): any;
11
+ static getAccounting(id: any): Promise<LastMileDelivery>;
12
+ static createShipmentRequest(lastMile: any, req: any): any;
13
+ static getShipmentTracking(lastMile: any, req: any): any;
14
+ }
@@ -30,6 +30,7 @@ class LastMileAPI {
30
30
  static createShipmentRequest(lastMile, req) { }
31
31
  static getShipmentTracking(lastMile, req) { }
32
32
  }
33
+ exports.LastMileAPI = LastMileAPI;
33
34
  LastMileAPI.platforms = {};
34
35
  tslib_1.__decorate([
35
36
  decorators_1.api,
@@ -43,5 +44,4 @@ tslib_1.__decorate([
43
44
  tslib_1.__metadata("design:paramtypes", [Object, Object]),
44
45
  tslib_1.__metadata("design:returntype", Object)
45
46
  ], LastMileAPI, "getShipmentTracking", null);
46
- exports.LastMileAPI = LastMileAPI;
47
47
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/controllers/lmd-api/index.ts"],"names":[],"mappings":";;;;AAAA,iDAAqD;AAErD,6CAAiD;AACjD,6CAAkC;AAErB,QAAA,gBAAgB,GAAG;IAC9B,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,UAAU,EAAE,YAAY;CACzB,CAAA;AAED,MAAa,WAAW;IAGtB,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI;QACxC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG;YAC5B,MAAM;YACN,IAAI;SACL,CAAA;IACH,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,IAAI;QACrB,OAAO,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IACpC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE;QAC3B,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,2BAAgB,CAAC,CAAA;QAClD,OAAO,MAAM,UAAU,CAAC,OAAO,CAAC;YAC9B,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,SAAS,EAAE,CAAC,QAAQ,CAAC;SACtB,CAAC,CAAA;IACJ,CAAC;IAGM,AAAP,MAAM,CAAC,qBAAqB,CAAC,QAAQ,EAAE,GAAG,IAAQ,CAAC;IAG5C,AAAP,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,GAAG,IAAQ,CAAC;;AAzB1C,qBAAS,GAAG,EAAE,CAAA;AAsBd;IADN,gBAAG;;;;8CAC+C;AAG5C;IADN,gBAAG;;;;4CAC6C;AA1BnD,kCA2BC","sourcesContent":["import { getRepository } from '@things-factory/shell'\n\nimport { LastMileDelivery } from '../../entities'\nimport { api } from './decorators'\n\nexport const LAST_MILE_STATUS = {\n ACTIVE: 'active',\n INACTIVE: 'inactive',\n TERMINATED: 'terminated'\n}\n\nexport class LastMileAPI {\n static platforms = {}\n\n static registerPlatform(name, action, apis) {\n LastMileAPI.platforms[name] = {\n action,\n apis\n }\n }\n\n static getPlatform(name) {\n return LastMileAPI.platforms[name]\n }\n\n static async getAccounting(id) {\n const repository = getRepository(LastMileDelivery)\n return await repository.findOne({\n where: { id },\n relations: ['domain']\n })\n }\n\n @api\n static createShipmentRequest(lastMile, req): any {}\n\n @api\n static getShipmentTracking(lastMile, req): any {}\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/controllers/lmd-api/index.ts"],"names":[],"mappings":";;;;AAAA,iDAAqD;AAErD,6CAAiD;AACjD,6CAAkC;AAErB,QAAA,gBAAgB,GAAG;IAC9B,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,UAAU,EAAE,YAAY;CACzB,CAAA;AAED,MAAa,WAAW;IAGtB,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI;QACxC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG;YAC5B,MAAM;YACN,IAAI;SACL,CAAA;IACH,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,IAAI;QACrB,OAAO,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IACpC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE;QAC3B,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,2BAAgB,CAAC,CAAA;QAClD,OAAO,MAAM,UAAU,CAAC,OAAO,CAAC;YAC9B,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,SAAS,EAAE,CAAC,QAAQ,CAAC;SACtB,CAAC,CAAA;IACJ,CAAC;IAGM,AAAP,MAAM,CAAC,qBAAqB,CAAC,QAAQ,EAAE,GAAG,IAAQ,CAAC;IAG5C,AAAP,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,GAAG,IAAQ,CAAC;;AA1BnD,kCA2BC;AA1BQ,qBAAS,GAAG,EAAE,CAAA;AAsBd;IADN,gBAAG;;;;8CAC+C;AAG5C;IADN,gBAAG;;;;4CAC6C","sourcesContent":["import { getRepository } from '@things-factory/shell'\n\nimport { LastMileDelivery } from '../../entities'\nimport { api } from './decorators'\n\nexport const LAST_MILE_STATUS = {\n ACTIVE: 'active',\n INACTIVE: 'inactive',\n TERMINATED: 'terminated'\n}\n\nexport class LastMileAPI {\n static platforms = {}\n\n static registerPlatform(name, action, apis) {\n LastMileAPI.platforms[name] = {\n action,\n apis\n }\n }\n\n static getPlatform(name) {\n return LastMileAPI.platforms[name]\n }\n\n static async getAccounting(id) {\n const repository = getRepository(LastMileDelivery)\n return await repository.findOne({\n where: { id },\n relations: ['domain']\n })\n }\n\n @api\n static createShipmentRequest(lastMile, req): any {}\n\n @api\n static getShipmentTracking(lastMile, req): any {}\n}\n"]}
@@ -0,0 +1 @@
1
+ import './lmd-connector';
@@ -0,0 +1,8 @@
1
+ import { Connector } from '@things-factory/integration-base';
2
+ export declare class LastMileConnector implements Connector {
3
+ ready(connectionConfigs: any): Promise<void>;
4
+ connect(connection: any): Promise<void>;
5
+ disconnect(connection: any): Promise<void>;
6
+ get parameterSpec(): any[];
7
+ get taskPrefixes(): string[];
8
+ }
@@ -0,0 +1,2 @@
1
+ import './connector';
2
+ import './task';
@@ -0,0 +1 @@
1
+ import './lmd-api';
@@ -0,0 +1 @@
1
+ export {};
@@ -1 +1 @@
1
- {"version":3,"file":"lmd-api.js","sourceRoot":"","sources":["../../../server/engine/task/lmd-api.ts"],"names":[],"mappings":";;AAAA,uEAAkF;AAClF,iDAAqD;AACrD,iDAA8C;AAE9C,uDAA8D;AAC9D,6CAAiD;AAEjD,KAAK,UAAU,WAAW,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;IACvD,IAAI,EACF,UAAU,EACV,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,EACzC,GAAG,IAAI,CAAA;IAER,IAAI,MAAM,GAAG,oCAAiB,CAAC,2BAA2B,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,CAAA;IACpF,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,KAAK,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAA;KACjD;IAED,IAAI,CAAC,GAAG,EAAE;QACR,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;KAClC;IAED,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,2BAAgB,CAAC,CAAA;IAClD,MAAM,QAAQ,GAAqB,MAAM,UAAU,CAAC,OAAO,CAAC;QAC1D,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE;KAC3C,CAAC,CAAA;IAEF,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;KACjD;IAED,IAAI,MAAM,GAAG,MAAM,qBAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAA,cAAM,EAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IAE7E,OAAO;QACL,IAAI,EAAE,MAAM;KACb,CAAA;AACH,CAAC;AAED,WAAW,CAAC,aAAa,GAAG;IAC1B;QACE,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,kBAAkB;QACzB,QAAQ,EAAE;YACR,SAAS,EAAE,oBAAoB;YAC/B,QAAQ,EAAE,MAAM;SACjB;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE;YACR,OAAO,EAAE,CAAC,EAAE,EAAE,uBAAuB,CAAC;SACvC;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KAClB;CACF,CAAA;AAED,+BAAY,CAAC,mBAAmB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA","sourcesContent":["import { ConnectionManager, TaskRegistry } from '@things-factory/integration-base'\nimport { getRepository } from '@things-factory/shell'\nimport { access } from '@things-factory/utils'\n\nimport { LastMileAPI as API } from '../../controllers/lmd-api'\nimport { LastMileDelivery } from '../../entities'\n\nasync function LastMileAPI(step, { logger, data, domain }) {\n var {\n connection,\n params: { account: name, api, accessor }\n } = step\n\n var client = ConnectionManager.getConnectionInstanceByName(domain, connection) || {}\n if (!client) {\n throw new Error(`no connection : ${connection}`)\n }\n\n if (!api) {\n throw new Error(`no api defined`)\n }\n\n const repository = getRepository(LastMileDelivery)\n const lastMile: LastMileDelivery = await repository.findOne({\n where: { domain: { id: domain.id }, name }\n })\n\n if (!lastMile) {\n throw new Error(`no last mile delivery defined`)\n }\n\n var result = await API[api](lastMile, accessor ? access(accessor, data) : {})\n\n return {\n data: result\n }\n}\n\nLastMileAPI.parameterSpec = [\n {\n type: 'entity-selector',\n name: 'lastMileDelivery',\n label: 'lastMileDelivery',\n property: {\n queryName: 'lastMileDeliveries',\n valueKey: 'name'\n }\n },\n {\n type: 'select',\n name: 'api',\n label: 'api',\n property: {\n options: ['', 'createShipmentRequest']\n }\n },\n {\n type: 'string',\n name: 'accessor',\n label: 'accessor'\n }\n]\n\nTaskRegistry.registerTaskHandler('lmd-api', LastMileAPI)\n"]}
1
+ {"version":3,"file":"lmd-api.js","sourceRoot":"","sources":["../../../server/engine/task/lmd-api.ts"],"names":[],"mappings":";;AAAA,uEAAkF;AAClF,iDAAqD;AACrD,iDAA8C;AAE9C,uDAA8D;AAC9D,6CAAiD;AAEjD,KAAK,UAAU,WAAW,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;IACvD,IAAI,EACF,UAAU,EACV,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,EACzC,GAAG,IAAI,CAAA;IAER,IAAI,MAAM,GAAG,oCAAiB,CAAC,2BAA2B,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,CAAA;IACpF,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAA;IAClD,CAAC;IAED,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;IACnC,CAAC;IAED,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,2BAAgB,CAAC,CAAA;IAClD,MAAM,QAAQ,GAAqB,MAAM,UAAU,CAAC,OAAO,CAAC;QAC1D,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE;KAC3C,CAAC,CAAA;IAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAClD,CAAC;IAED,IAAI,MAAM,GAAG,MAAM,qBAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAA,cAAM,EAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IAE7E,OAAO;QACL,IAAI,EAAE,MAAM;KACb,CAAA;AACH,CAAC;AAED,WAAW,CAAC,aAAa,GAAG;IAC1B;QACE,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,kBAAkB;QACzB,QAAQ,EAAE;YACR,SAAS,EAAE,oBAAoB;YAC/B,QAAQ,EAAE,MAAM;SACjB;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE;YACR,OAAO,EAAE,CAAC,EAAE,EAAE,uBAAuB,CAAC;SACvC;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KAClB;CACF,CAAA;AAED,+BAAY,CAAC,mBAAmB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA","sourcesContent":["import { ConnectionManager, TaskRegistry } from '@things-factory/integration-base'\nimport { getRepository } from '@things-factory/shell'\nimport { access } from '@things-factory/utils'\n\nimport { LastMileAPI as API } from '../../controllers/lmd-api'\nimport { LastMileDelivery } from '../../entities'\n\nasync function LastMileAPI(step, { logger, data, domain }) {\n var {\n connection,\n params: { account: name, api, accessor }\n } = step\n\n var client = ConnectionManager.getConnectionInstanceByName(domain, connection) || {}\n if (!client) {\n throw new Error(`no connection : ${connection}`)\n }\n\n if (!api) {\n throw new Error(`no api defined`)\n }\n\n const repository = getRepository(LastMileDelivery)\n const lastMile: LastMileDelivery = await repository.findOne({\n where: { domain: { id: domain.id }, name }\n })\n\n if (!lastMile) {\n throw new Error(`no last mile delivery defined`)\n }\n\n var result = await API[api](lastMile, accessor ? access(accessor, data) : {})\n\n return {\n data: result\n }\n}\n\nLastMileAPI.parameterSpec = [\n {\n type: 'entity-selector',\n name: 'lastMileDelivery',\n label: 'lastMileDelivery',\n property: {\n queryName: 'lastMileDeliveries',\n valueKey: 'name'\n }\n },\n {\n type: 'select',\n name: 'api',\n label: 'api',\n property: {\n options: ['', 'createShipmentRequest']\n }\n },\n {\n type: 'string',\n name: 'accessor',\n label: 'accessor'\n }\n]\n\nTaskRegistry.registerTaskHandler('lmd-api', LastMileAPI)\n"]}
@@ -0,0 +1,13 @@
1
+ import { User } from '@things-factory/auth-base';
2
+ import { Domain } from '@things-factory/shell';
3
+ export declare class CourierService {
4
+ id: string;
5
+ domain: Domain;
6
+ name: string;
7
+ description: string;
8
+ transporterId: string;
9
+ createdAt: Date;
10
+ updatedAt: Date;
11
+ creator: User;
12
+ updater: User;
13
+ }
@@ -7,6 +7,7 @@ const shell_1 = require("@things-factory/shell");
7
7
  const typeorm_1 = require("typeorm");
8
8
  let CourierService = class CourierService {
9
9
  };
10
+ exports.CourierService = CourierService;
10
11
  tslib_1.__decorate([
11
12
  (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
12
13
  tslib_1.__metadata("design:type", String)
@@ -47,11 +48,10 @@ tslib_1.__decorate([
47
48
  }),
48
49
  tslib_1.__metadata("design:type", auth_base_1.User)
49
50
  ], CourierService.prototype, "updater", void 0);
50
- CourierService = tslib_1.__decorate([
51
+ exports.CourierService = CourierService = tslib_1.__decorate([
51
52
  (0, typeorm_1.Entity)(),
52
53
  (0, typeorm_1.Index)('ix_courier_service_0', (courierService) => [courierService.domain, courierService.name, courierService.transporterId], {
53
54
  unique: true
54
55
  })
55
56
  ], CourierService);
56
- exports.CourierService = CourierService;
57
57
  //# sourceMappingURL=courier-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"courier-service.js","sourceRoot":"","sources":["../../server/entities/courier-service.ts"],"names":[],"mappings":";;;;AAAA,yDAAgD;AAChD,iDAA8C;AAC9C,qCAAsH;AAU/G,IAAM,cAAc,GAApB,MAAM,cAAc;CA+B1B,CAAA;AA9BC;IAAC,IAAA,gCAAsB,EAAC,MAAM,CAAC;;0CACrB;AAEV;IAAC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,cAAM,CAAC;sCAClB,cAAM;8CAAA;AAEd;IAAC,IAAA,gBAAM,GAAE;;4CACG;AAEZ;IAAC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACR;AAEnB;IAAC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACN;AAErB;IAAC,IAAA,0BAAgB,GAAE;sCACR,IAAI;iDAAA;AAEf;IAAC,IAAA,0BAAgB,GAAE;sCACR,IAAI;iDAAA;AAEf;IAAC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,EAAE;QACvB,QAAQ,EAAE,IAAI;KACf,CAAC;sCACO,gBAAI;+CAAA;AAEb;IAAC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,EAAE;QACvB,QAAQ,EAAE,IAAI;KACf,CAAC;sCACO,gBAAI;+CAAA;AA9BF,cAAc;IAR1B,IAAA,gBAAM,GAAE;IACR,IAAA,eAAK,EACJ,sBAAsB,EACtB,CAAC,cAA8B,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,aAAa,CAAC,EAC9G;QACE,MAAM,EAAE,IAAI;KACb,CACF;GACY,cAAc,CA+B1B;AA/BY,wCAAc","sourcesContent":["import { User } from '@things-factory/auth-base'\nimport { Domain } from '@things-factory/shell'\nimport { Column, CreateDateColumn, Entity, Index, ManyToOne, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'\n\n@Entity()\n@Index(\n 'ix_courier_service_0',\n (courierService: CourierService) => [courierService.domain, courierService.name, courierService.transporterId],\n {\n unique: true\n }\n)\nexport class CourierService {\n @PrimaryGeneratedColumn('uuid')\n id: string\n\n @ManyToOne(type => Domain)\n domain: Domain\n\n @Column()\n name: string\n\n @Column({ nullable: true })\n description: string\n\n @Column({ nullable: true })\n transporterId: string\n\n @CreateDateColumn()\n createdAt: Date\n\n @UpdateDateColumn()\n updatedAt: Date\n\n @ManyToOne(type => User, {\n nullable: true\n })\n creator: User\n\n @ManyToOne(type => User, {\n nullable: true\n })\n updater: User\n}\n"]}
1
+ {"version":3,"file":"courier-service.js","sourceRoot":"","sources":["../../server/entities/courier-service.ts"],"names":[],"mappings":";;;;AAAA,yDAAgD;AAChD,iDAA8C;AAC9C,qCAAsH;AAU/G,IAAM,cAAc,GAApB,MAAM,cAAc;CA+B1B,CAAA;AA/BY,wCAAc;AAEzB;IADC,IAAA,gCAAsB,EAAC,MAAM,CAAC;;0CACrB;AAGV;IADC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,cAAM,CAAC;sCAClB,cAAM;8CAAA;AAGd;IADC,IAAA,gBAAM,GAAE;;4CACG;AAGZ;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACR;AAGnB;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACN;AAGrB;IADC,IAAA,0BAAgB,GAAE;sCACR,IAAI;iDAAA;AAGf;IADC,IAAA,0BAAgB,GAAE;sCACR,IAAI;iDAAA;AAKf;IAHC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,EAAE;QACvB,QAAQ,EAAE,IAAI;KACf,CAAC;sCACO,gBAAI;+CAAA;AAKb;IAHC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,EAAE;QACvB,QAAQ,EAAE,IAAI;KACf,CAAC;sCACO,gBAAI;+CAAA;yBA9BF,cAAc;IAR1B,IAAA,gBAAM,GAAE;IACR,IAAA,eAAK,EACJ,sBAAsB,EACtB,CAAC,cAA8B,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,aAAa,CAAC,EAC9G;QACE,MAAM,EAAE,IAAI;KACb,CACF;GACY,cAAc,CA+B1B","sourcesContent":["import { User } from '@things-factory/auth-base'\nimport { Domain } from '@things-factory/shell'\nimport { Column, CreateDateColumn, Entity, Index, ManyToOne, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'\n\n@Entity()\n@Index(\n 'ix_courier_service_0',\n (courierService: CourierService) => [courierService.domain, courierService.name, courierService.transporterId],\n {\n unique: true\n }\n)\nexport class CourierService {\n @PrimaryGeneratedColumn('uuid')\n id: string\n\n @ManyToOne(type => Domain)\n domain: Domain\n\n @Column()\n name: string\n\n @Column({ nullable: true })\n description: string\n\n @Column({ nullable: true })\n transporterId: string\n\n @CreateDateColumn()\n createdAt: Date\n\n @UpdateDateColumn()\n updatedAt: Date\n\n @ManyToOne(type => User, {\n nullable: true\n })\n creator: User\n\n @ManyToOne(type => User, {\n nullable: true\n })\n updater: User\n}\n"]}
@@ -0,0 +1,4 @@
1
+ import { CourierService } from './courier-service';
2
+ import { LastMileDelivery } from './last-mile-delivery';
3
+ export declare const entities: (typeof CourierService | typeof LastMileDelivery)[];
4
+ export { CourierService, LastMileDelivery };
@@ -0,0 +1,24 @@
1
+ import { User } from '@things-factory/auth-base';
2
+ import { Domain } from '@things-factory/shell';
3
+ import { CourierService } from '../entities';
4
+ export declare class LastMileDelivery {
5
+ id: string;
6
+ domain: Domain;
7
+ name: string;
8
+ description: string;
9
+ platform: string;
10
+ courierServices: CourierService[];
11
+ clientId: string;
12
+ clientType: string;
13
+ clientName: string;
14
+ countryCode: string;
15
+ secretKey: string;
16
+ accessInfo: string;
17
+ accessToken: string;
18
+ refreshToken: string;
19
+ status: string;
20
+ createdAt: Date;
21
+ updatedAt: Date;
22
+ creator: User;
23
+ updater: User;
24
+ }
@@ -8,6 +8,7 @@ const typeorm_1 = require("typeorm");
8
8
  const entities_1 = require("../entities");
9
9
  let LastMileDelivery = class LastMileDelivery {
10
10
  };
11
+ exports.LastMileDelivery = LastMileDelivery;
11
12
  tslib_1.__decorate([
12
13
  (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
13
14
  tslib_1.__metadata("design:type", String)
@@ -89,9 +90,8 @@ tslib_1.__decorate([
89
90
  }),
90
91
  tslib_1.__metadata("design:type", auth_base_1.User)
91
92
  ], LastMileDelivery.prototype, "updater", void 0);
92
- LastMileDelivery = tslib_1.__decorate([
93
+ exports.LastMileDelivery = LastMileDelivery = tslib_1.__decorate([
93
94
  (0, typeorm_1.Entity)(),
94
95
  (0, typeorm_1.Index)('ix_last_mile_delivery_0', (lastMileDelivery) => [lastMileDelivery.domain, lastMileDelivery.id], { unique: true })
95
96
  ], LastMileDelivery);
96
- exports.LastMileDelivery = LastMileDelivery;
97
97
  //# sourceMappingURL=last-mile-delivery.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"last-mile-delivery.js","sourceRoot":"","sources":["../../server/entities/last-mile-delivery.ts"],"names":[],"mappings":";;;;AAAA,yDAAgD;AAChD,iDAA8C;AAC9C,qCAUgB;AAChB,0CAA4C;AAQrC,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;CA8D5B,CAAA;AA7DC;IAAC,IAAA,gCAAsB,EAAC,MAAM,CAAC;;4CACrB;AAEV;IAAC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,cAAM,CAAC;sCAClB,cAAM;gDAAA;AAEd;IAAC,IAAA,gBAAM,GAAE;;8CACG;AAEZ;IAAC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACR;AAEnB;IAAC,IAAA,gBAAM,GAAE;;kDACO;AAEhB;IAAC,IAAA,oBAAU,EAAC,IAAI,CAAC,EAAE,CAAC,yBAAc,CAAC;IAClC,IAAA,mBAAS,GAAE;;yDACqB;AAEjC;IAAC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDACX;AAEhB;IAAC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDACT;AAElB;IAAC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDACT;AAElB;IAAC,IAAA,gBAAM,GAAE;;qDACU;AAEnB;IAAC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACV;AAEjB;IAAC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDACT;AAElB;IAAC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACR;AAEnB;IAAC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;sDACP;AAEpB;IAAC,IAAA,gBAAM,GAAE;;gDACK;AAEd;IAAC,IAAA,0BAAgB,GAAE;sCACR,IAAI;mDAAA;AAEf;IAAC,IAAA,0BAAgB,GAAE;sCACR,IAAI;mDAAA;AAEf;IAAC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,EAAE;QACvB,QAAQ,EAAE,IAAI;KACf,CAAC;sCACO,gBAAI;iDAAA;AAEb;IAAC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,EAAE;QACvB,QAAQ,EAAE,IAAI;KACf,CAAC;sCACO,gBAAI;iDAAA;AA7DF,gBAAgB;IAN5B,IAAA,gBAAM,GAAE;IACR,IAAA,eAAK,EACJ,yBAAyB,EACzB,CAAC,gBAAkC,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,CAAC,EAAE,CAAC,EACtF,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB;GACY,gBAAgB,CA8D5B;AA9DY,4CAAgB","sourcesContent":["import { User } from '@things-factory/auth-base'\nimport { Domain } from '@things-factory/shell'\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n ManyToOne,\n ManyToMany,\n JoinTable,\n PrimaryGeneratedColumn,\n UpdateDateColumn\n} from 'typeorm'\nimport { CourierService } from '../entities'\n\n@Entity()\n@Index(\n 'ix_last_mile_delivery_0',\n (lastMileDelivery: LastMileDelivery) => [lastMileDelivery.domain, lastMileDelivery.id],\n { unique: true }\n)\nexport class LastMileDelivery {\n @PrimaryGeneratedColumn('uuid')\n id: string\n\n @ManyToOne(type => Domain)\n domain: Domain\n\n @Column()\n name: string\n\n @Column({ nullable: true })\n description: string\n\n @Column()\n platform: string\n\n @ManyToMany(type => CourierService)\n @JoinTable()\n courierServices: CourierService[]\n\n @Column({ nullable: true })\n clientId: string\n\n @Column({ nullable: true })\n clientType: string\n\n @Column({ nullable: true })\n clientName: string\n\n @Column()\n countryCode: string\n\n @Column({ nullable: true })\n secretKey: string\n\n @Column({ nullable: true })\n accessInfo: string\n\n @Column({ nullable: true })\n accessToken: string\n\n @Column({ nullable: true })\n refreshToken: string\n\n @Column()\n status: string\n\n @CreateDateColumn()\n createdAt: Date\n\n @UpdateDateColumn()\n updatedAt: Date\n\n @ManyToOne(type => User, {\n nullable: true\n })\n creator: User\n\n @ManyToOne(type => User, {\n nullable: true\n })\n updater: User\n}\n"]}
1
+ {"version":3,"file":"last-mile-delivery.js","sourceRoot":"","sources":["../../server/entities/last-mile-delivery.ts"],"names":[],"mappings":";;;;AAAA,yDAAgD;AAChD,iDAA8C;AAC9C,qCAUgB;AAChB,0CAA4C;AAQrC,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;CA8D5B,CAAA;AA9DY,4CAAgB;AAE3B;IADC,IAAA,gCAAsB,EAAC,MAAM,CAAC;;4CACrB;AAGV;IADC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,cAAM,CAAC;sCAClB,cAAM;gDAAA;AAGd;IADC,IAAA,gBAAM,GAAE;;8CACG;AAGZ;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACR;AAGnB;IADC,IAAA,gBAAM,GAAE;;kDACO;AAIhB;IAFC,IAAA,oBAAU,EAAC,IAAI,CAAC,EAAE,CAAC,yBAAc,CAAC;IAClC,IAAA,mBAAS,GAAE;;yDACqB;AAGjC;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDACX;AAGhB;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDACT;AAGlB;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDACT;AAGlB;IADC,IAAA,gBAAM,GAAE;;qDACU;AAGnB;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACV;AAGjB;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDACT;AAGlB;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACR;AAGnB;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;sDACP;AAGpB;IADC,IAAA,gBAAM,GAAE;;gDACK;AAGd;IADC,IAAA,0BAAgB,GAAE;sCACR,IAAI;mDAAA;AAGf;IADC,IAAA,0BAAgB,GAAE;sCACR,IAAI;mDAAA;AAKf;IAHC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,EAAE;QACvB,QAAQ,EAAE,IAAI;KACf,CAAC;sCACO,gBAAI;iDAAA;AAKb;IAHC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,EAAE;QACvB,QAAQ,EAAE,IAAI;KACf,CAAC;sCACO,gBAAI;iDAAA;2BA7DF,gBAAgB;IAN5B,IAAA,gBAAM,GAAE;IACR,IAAA,eAAK,EACJ,yBAAyB,EACzB,CAAC,gBAAkC,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,CAAC,EAAE,CAAC,EACtF,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB;GACY,gBAAgB,CA8D5B","sourcesContent":["import { User } from '@things-factory/auth-base'\nimport { Domain } from '@things-factory/shell'\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n ManyToOne,\n ManyToMany,\n JoinTable,\n PrimaryGeneratedColumn,\n UpdateDateColumn\n} from 'typeorm'\nimport { CourierService } from '../entities'\n\n@Entity()\n@Index(\n 'ix_last_mile_delivery_0',\n (lastMileDelivery: LastMileDelivery) => [lastMileDelivery.domain, lastMileDelivery.id],\n { unique: true }\n)\nexport class LastMileDelivery {\n @PrimaryGeneratedColumn('uuid')\n id: string\n\n @ManyToOne(type => Domain)\n domain: Domain\n\n @Column()\n name: string\n\n @Column({ nullable: true })\n description: string\n\n @Column()\n platform: string\n\n @ManyToMany(type => CourierService)\n @JoinTable()\n courierServices: CourierService[]\n\n @Column({ nullable: true })\n clientId: string\n\n @Column({ nullable: true })\n clientType: string\n\n @Column({ nullable: true })\n clientName: string\n\n @Column()\n countryCode: string\n\n @Column({ nullable: true })\n secretKey: string\n\n @Column({ nullable: true })\n accessInfo: string\n\n @Column({ nullable: true })\n accessToken: string\n\n @Column({ nullable: true })\n refreshToken: string\n\n @Column()\n status: string\n\n @CreateDateColumn()\n createdAt: Date\n\n @UpdateDateColumn()\n updatedAt: Date\n\n @ManyToOne(type => User, {\n nullable: true\n })\n creator: User\n\n @ManyToOne(type => User, {\n nullable: true\n })\n updater: User\n}\n"]}
@@ -0,0 +1,5 @@
1
+ import * as typeDefs from './types';
2
+ export declare const schema: {
3
+ typeDefs: typeof typeDefs;
4
+ resolvers: any;
5
+ };
@@ -0,0 +1,16 @@
1
+ import { ListParam } from '@things-factory/shell';
2
+ import { CourierService as CourierServiceEntity } from '../../../entities';
3
+ export declare const Query: {
4
+ courierService(_: any, { name }: {
5
+ name: any;
6
+ }, context: ResolverContext): Promise<CourierServiceEntity>;
7
+ courierServices(_: any, params: ListParam, context: ResolverContext): Promise<{
8
+ items: CourierServiceEntity[];
9
+ total: number;
10
+ }>;
11
+ };
12
+ export declare const CourierService: {
13
+ domain(courierService: any): Promise<import("@things-factory/shell").Domain>;
14
+ creator(courierService: any): Promise<import("@things-factory/auth-base").User>;
15
+ updater(courierService: any): Promise<import("@things-factory/auth-base").User>;
16
+ };
@@ -0,0 +1,5 @@
1
+ export declare const createCourierService: {
2
+ createCourierService(_: any, { courierService }: {
3
+ courierService: any;
4
+ }, context: ResolverContext): Promise<any>;
5
+ };
@@ -0,0 +1,5 @@
1
+ export declare const deleteCourierService: {
2
+ deleteCourierService(_: any, { name }: {
3
+ name: any;
4
+ }, context: ResolverContext): Promise<boolean>;
5
+ };
@@ -0,0 +1,5 @@
1
+ export declare const deleteCourierServices: {
2
+ deleteCourierServices(_: any, { names }: {
3
+ names: any;
4
+ }, context: ResolverContext): Promise<boolean>;
5
+ };
@@ -0,0 +1,34 @@
1
+ export declare const CourierServiceResolver: {
2
+ CourierService: {
3
+ domain(courierService: any): Promise<import("@things-factory/shell").Domain>;
4
+ creator(courierService: any): Promise<import("@things-factory/auth-base").User>;
5
+ updater(courierService: any): Promise<import("@things-factory/auth-base").User>;
6
+ };
7
+ Query: {
8
+ courierService(_: any, { name }: {
9
+ name: any;
10
+ }, context: ResolverContext): Promise<import("../../..").CourierService>;
11
+ courierServices(_: any, params: import("@things-factory/shell").ListParam, context: ResolverContext): Promise<{
12
+ items: import("../../..").CourierService[];
13
+ total: number;
14
+ }>;
15
+ };
16
+ Mutation: {
17
+ deleteCourierServices(_: any, { names }: {
18
+ names: any;
19
+ }, context: ResolverContext): Promise<boolean>;
20
+ deleteCourierService(_: any, { name }: {
21
+ name: any;
22
+ }, context: ResolverContext): Promise<boolean>;
23
+ createCourierService(_: any, { courierService }: {
24
+ courierService: any;
25
+ }, context: ResolverContext): Promise<any>;
26
+ updateMultipleCourierService(_: any, { patches }: {
27
+ patches: any;
28
+ }, context: ResolverContext): Promise<any[]>;
29
+ updateCourierService(_: any, { name, patch }: {
30
+ name: any;
31
+ patch: any;
32
+ }, context: ResolverContext): Promise<any>;
33
+ };
34
+ };
@@ -0,0 +1,6 @@
1
+ export declare const updateCourierService: {
2
+ updateCourierService(_: any, { name, patch }: {
3
+ name: any;
4
+ patch: any;
5
+ }, context: ResolverContext): Promise<any>;
6
+ };
@@ -0,0 +1,5 @@
1
+ export declare const updateMultipleCourierService: {
2
+ updateMultipleCourierService(_: any, { patches }: {
3
+ patches: any;
4
+ }, context: ResolverContext): Promise<any[]>;
5
+ };