@shipengine/connect-carrier-api 2.12.20 → 4.0.0-beta.2

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 (254) hide show
  1. package/lib/app/build-app-deployment.d.ts +3 -0
  2. package/lib/app/build-app-deployment.js +41 -0
  3. package/lib/app/build-app-deployment.js.map +1 -0
  4. package/lib/app/carrier-app-definition.d.ts +7 -0
  5. package/lib/app/create-endpoint-mapping.d.ts +4 -0
  6. package/lib/app/create-endpoint-mapping.js +26 -0
  7. package/lib/app/create-endpoint-mapping.js.map +1 -0
  8. package/lib/app/index.d.ts +4 -2
  9. package/lib/app/index.js +4 -2
  10. package/lib/app/index.js.map +1 -1
  11. package/lib/app/metadata/index.d.ts +2 -0
  12. package/lib/app/metadata/index.js +2 -0
  13. package/lib/app/metadata/index.js.map +1 -1
  14. package/lib/app/{native-rating/data-validator.d.ts → native-rating-data-validator.d.ts} +1 -1
  15. package/lib/app/{native-rating/data-validator.js → native-rating-data-validator.js} +1 -1
  16. package/lib/app/native-rating-data-validator.js.map +1 -0
  17. package/lib/models/addresses/address-base-schema.d.ts +2 -0
  18. package/lib/models/addresses/address-base-schema.js +24 -0
  19. package/lib/models/addresses/address-base-schema.js.map +1 -0
  20. package/lib/models/addresses/address-residential-indicator-schema.d.ts +2 -0
  21. package/lib/models/addresses/address-residential-indicator-schema.js +8 -0
  22. package/lib/models/addresses/address-residential-indicator-schema.js.map +1 -0
  23. package/lib/models/addresses/pudo-location-schema.d.ts +2 -0
  24. package/lib/models/addresses/pudo-location-schema.js +11 -0
  25. package/lib/models/addresses/pudo-location-schema.js.map +1 -0
  26. package/lib/models/addresses/ship-to-schema.d.ts +2 -0
  27. package/lib/models/addresses/ship-to-schema.js +11 -0
  28. package/lib/models/addresses/ship-to-schema.js.map +1 -0
  29. package/lib/models/advanced-options-schema.d.ts +2 -0
  30. package/lib/models/advanced-options-schema.js +15 -0
  31. package/lib/models/advanced-options-schema.js.map +1 -0
  32. package/lib/models/advanced-options.d.ts +0 -5
  33. package/lib/models/advanced-options.js.map +1 -1
  34. package/lib/models/authorization-schema.d.ts +2 -0
  35. package/lib/models/authorization-schema.js +10 -0
  36. package/lib/models/authorization-schema.js.map +1 -0
  37. package/lib/models/billing/index.d.ts +0 -1
  38. package/lib/models/billing/index.js +0 -1
  39. package/lib/models/billing/index.js.map +1 -1
  40. package/lib/models/customs/customs-charges-schema.d.ts +2 -0
  41. package/lib/models/customs/customs-charges-schema.js +13 -0
  42. package/lib/models/customs/customs-charges-schema.js.map +1 -0
  43. package/lib/models/customs/customs-content-types-schema.d.ts +2 -0
  44. package/lib/models/customs/customs-content-types-schema.js +8 -0
  45. package/lib/models/customs/customs-content-types-schema.js.map +1 -0
  46. package/lib/models/customs/customs-item-schema.d.ts +2 -0
  47. package/lib/models/customs/customs-item-schema.js +21 -0
  48. package/lib/models/customs/customs-item-schema.js.map +1 -0
  49. package/lib/models/customs/customs-non-delivery-schema.d.ts +2 -0
  50. package/lib/models/customs/customs-non-delivery-schema.js +8 -0
  51. package/lib/models/customs/customs-non-delivery-schema.js.map +1 -0
  52. package/lib/models/customs/customs-schema.d.ts +2 -0
  53. package/lib/models/customs/customs-schema.js +25 -0
  54. package/lib/models/customs/customs-schema.js.map +1 -0
  55. package/lib/models/customs/customs.d.ts +2 -2
  56. package/lib/models/importer-records/importer-of-record-schema.d.ts +2 -0
  57. package/lib/models/importer-records/importer-of-record-schema.js +20 -0
  58. package/lib/models/importer-records/importer-of-record-schema.js.map +1 -0
  59. package/lib/models/importer-records/{importer_of_record.js → importer-of-record.js} +1 -1
  60. package/lib/models/importer-records/importer-of-record.js.map +1 -0
  61. package/lib/models/inconterms/terms-of-trade-code-schema.d.ts +2 -0
  62. package/lib/models/inconterms/terms-of-trade-code-schema.js +8 -0
  63. package/lib/models/inconterms/terms-of-trade-code-schema.js.map +1 -0
  64. package/lib/models/index.d.ts +0 -3
  65. package/lib/models/index.js +0 -3
  66. package/lib/models/index.js.map +1 -1
  67. package/lib/models/labels/label-message-schema.d.ts +2 -0
  68. package/lib/models/labels/label-message-schema.js +11 -0
  69. package/lib/models/labels/label-message-schema.js.map +1 -0
  70. package/lib/models/pickup/shipped-package-schema.d.ts +2 -0
  71. package/lib/models/pickup/shipped-package-schema.js +25 -0
  72. package/lib/models/pickup/shipped-package-schema.js.map +1 -0
  73. package/lib/models/pickup/shipped-shipment-schema.d.ts +3 -0
  74. package/lib/models/pickup/shipped-shipment-schema.js +21 -0
  75. package/lib/models/pickup/shipped-shipment-schema.js.map +1 -0
  76. package/lib/models/taxes/tax-identifier-schema.d.ts +2 -0
  77. package/lib/models/taxes/tax-identifier-schema.js +13 -0
  78. package/lib/models/taxes/tax-identifier-schema.js.map +1 -0
  79. package/lib/models/taxes/tax-identifier-type-schema.d.ts +2 -0
  80. package/lib/models/taxes/tax-identifier-type-schema.js +8 -0
  81. package/lib/models/taxes/tax-identifier-type-schema.js.map +1 -0
  82. package/lib/models/taxes/tax-identifier.d.ts +1 -3
  83. package/lib/models/taxes/tax-identifier.js.map +1 -1
  84. package/lib/models/units/dimension-details-schema.d.ts +2 -0
  85. package/lib/models/units/dimension-details-schema.js +14 -0
  86. package/lib/models/units/dimension-details-schema.js.map +1 -0
  87. package/lib/models/units/dimension-unit-schema.d.ts +2 -0
  88. package/lib/models/units/dimension-unit-schema.js +8 -0
  89. package/lib/models/units/dimension-unit-schema.js.map +1 -0
  90. package/lib/models/units/weight-details-schema.d.ts +2 -0
  91. package/lib/models/units/weight-details-schema.js +13 -0
  92. package/lib/models/units/weight-details-schema.js.map +1 -0
  93. package/lib/models/units/weight-unit-schema.d.ts +2 -0
  94. package/lib/models/units/weight-unit-schema.js +8 -0
  95. package/lib/models/units/weight-unit-schema.js.map +1 -0
  96. package/lib/requests/base-request-schema.d.ts +2 -0
  97. package/lib/requests/base-request-schema.js +12 -0
  98. package/lib/requests/base-request-schema.js.map +1 -0
  99. package/lib/requests/cancel-notification-request-schema.d.ts +2 -0
  100. package/lib/requests/cancel-notification-request-schema.js +12 -0
  101. package/lib/requests/cancel-notification-request-schema.js.map +1 -0
  102. package/lib/requests/create-label-request.d.ts +1 -3
  103. package/lib/requests/create-label-request.js.map +1 -1
  104. package/lib/requests/get-rates-request.d.ts +1 -3
  105. package/lib/requests/get-rates-request.js.map +1 -1
  106. package/package.json +4 -4
  107. package/spec.json +1 -49
  108. package/src/app/build-app-deployment.ts +50 -0
  109. package/src/app/carrier-app-definition.ts +10 -0
  110. package/src/app/create-endpoint-mapping.ts +25 -0
  111. package/src/app/index.ts +4 -2
  112. package/src/app/metadata/index.ts +2 -0
  113. package/src/app/{native-rating/data-validator.ts → native-rating-data-validator.ts} +1 -1
  114. package/src/models/addresses/address-base-schema.ts +20 -0
  115. package/src/models/addresses/address-residential-indicator-schema.ts +6 -0
  116. package/src/models/addresses/pudo-location-schema.ts +7 -0
  117. package/src/models/addresses/ship-to-schema.ts +7 -0
  118. package/src/models/advanced-options-schema.ts +11 -0
  119. package/src/models/advanced-options.ts +0 -5
  120. package/src/models/authorization-schema.ts +6 -0
  121. package/src/models/billing/index.ts +0 -1
  122. package/src/models/customs/customs-charges-schema.ts +9 -0
  123. package/src/models/customs/customs-content-types-schema.ts +4 -0
  124. package/src/models/customs/customs-item-schema.ts +17 -0
  125. package/src/models/customs/customs-non-delivery-schema.ts +4 -0
  126. package/src/models/customs/customs-schema.ts +21 -0
  127. package/src/models/customs/customs.ts +2 -2
  128. package/src/models/importer-records/importer-of-record-schema.ts +16 -0
  129. package/src/models/inconterms/terms-of-trade-code-schema.ts +4 -0
  130. package/src/models/index.ts +0 -3
  131. package/src/models/labels/label-message-schema.ts +7 -0
  132. package/src/models/pickup/shipped-package-schema.ts +21 -0
  133. package/src/models/pickup/shipped-shipment-schema.ts +18 -0
  134. package/src/models/taxes/tax-identifier-schema.ts +9 -0
  135. package/src/models/taxes/tax-identifier-type-schema.ts +4 -0
  136. package/src/models/taxes/tax-identifier.ts +1 -3
  137. package/src/models/units/dimension-details-schema.ts +10 -0
  138. package/src/models/units/dimension-unit-schema.ts +4 -0
  139. package/src/models/units/weight-details-schema.ts +9 -0
  140. package/src/models/units/weight-unit-schema.ts +4 -0
  141. package/src/requests/base-request-schema.ts +8 -0
  142. package/src/requests/cancel-notification-request-schema.ts +8 -0
  143. package/src/requests/create-label-request.ts +0 -3
  144. package/src/requests/get-rates-request.ts +0 -3
  145. package/tsconfig.tsbuildinfo +1 -1
  146. package/lib/app/build-native-rating-routes.d.ts +0 -3
  147. package/lib/app/build-native-rating-routes.js +0 -105
  148. package/lib/app/build-native-rating-routes.js.map +0 -1
  149. package/lib/app/carrier-app.d.ts +0 -15
  150. package/lib/app/carrier-app.js +0 -166
  151. package/lib/app/carrier-app.js.map +0 -1
  152. package/lib/app/create-get-rates-handler.d.ts +0 -4
  153. package/lib/app/create-get-rates-handler.js +0 -100
  154. package/lib/app/create-get-rates-handler.js.map +0 -1
  155. package/lib/app/internal/branded-image.d.ts +0 -9
  156. package/lib/app/internal/branded-image.js +0 -3
  157. package/lib/app/internal/branded-image.js.map +0 -1
  158. package/lib/app/internal/carrier-app-specification.d.ts +0 -16
  159. package/lib/app/internal/carrier-app-specification.js +0 -3
  160. package/lib/app/internal/carrier-app-specification.js.map +0 -1
  161. package/lib/app/internal/carrier-specification.d.ts +0 -38
  162. package/lib/app/internal/carrier-specification.js +0 -86
  163. package/lib/app/internal/carrier-specification.js.map +0 -1
  164. package/lib/app/internal/connect-runtime-app.d.ts +0 -14
  165. package/lib/app/internal/connect-runtime-app.js +0 -3
  166. package/lib/app/internal/connect-runtime-app.js.map +0 -1
  167. package/lib/app/internal/document-template.d.ts +0 -7
  168. package/lib/app/internal/document-template.js +0 -3
  169. package/lib/app/internal/document-template.js.map +0 -1
  170. package/lib/app/internal/index.d.ts +0 -3
  171. package/lib/app/internal/index.js +0 -7
  172. package/lib/app/internal/index.js.map +0 -1
  173. package/lib/app/internal/metadata.d.ts +0 -13
  174. package/lib/app/internal/metadata.js +0 -64
  175. package/lib/app/internal/metadata.js.map +0 -1
  176. package/lib/app/internal/native-rating-specification.d.ts +0 -5
  177. package/lib/app/internal/native-rating-specification.js +0 -3
  178. package/lib/app/internal/native-rating-specification.js.map +0 -1
  179. package/lib/app/internal/route.d.ts +0 -27
  180. package/lib/app/internal/route.js +0 -12
  181. package/lib/app/internal/route.js.map +0 -1
  182. package/lib/app/native-rating/base-rate-context.d.ts +0 -3
  183. package/lib/app/native-rating/base-rate-context.js +0 -83
  184. package/lib/app/native-rating/base-rate-context.js.map +0 -1
  185. package/lib/app/native-rating/context-results.d.ts +0 -3
  186. package/lib/app/native-rating/context-results.js +0 -3
  187. package/lib/app/native-rating/context-results.js.map +0 -1
  188. package/lib/app/native-rating/create-dynamic-carrier.d.ts +0 -7
  189. package/lib/app/native-rating/create-dynamic-carrier.js +0 -63
  190. package/lib/app/native-rating/create-dynamic-carrier.js.map +0 -1
  191. package/lib/app/native-rating/data-validator.js.map +0 -1
  192. package/lib/app/native-rating/get-rates.d.ts +0 -7
  193. package/lib/app/native-rating/get-rates.js +0 -3
  194. package/lib/app/native-rating/get-rates.js.map +0 -1
  195. package/lib/app/native-rating/get-variables.d.ts +0 -6
  196. package/lib/app/native-rating/get-variables.js +0 -3
  197. package/lib/app/native-rating/get-variables.js.map +0 -1
  198. package/lib/app/native-rating/get-zone.d.ts +0 -6
  199. package/lib/app/native-rating/get-zone.js +0 -3
  200. package/lib/app/native-rating/get-zone.js.map +0 -1
  201. package/lib/app/native-rating/implementation-type.d.ts +0 -31
  202. package/lib/app/native-rating/implementation-type.js +0 -8
  203. package/lib/app/native-rating/implementation-type.js.map +0 -1
  204. package/lib/app/native-rating/index.d.ts +0 -3
  205. package/lib/app/native-rating/index.js +0 -7
  206. package/lib/app/native-rating/index.js.map +0 -1
  207. package/lib/app/native-rating/numeric-currency.d.ts +0 -5
  208. package/lib/app/native-rating/numeric-currency.js +0 -3
  209. package/lib/app/native-rating/numeric-currency.js.map +0 -1
  210. package/lib/app/native-rating/rating-context.d.ts +0 -15
  211. package/lib/app/native-rating/rating-context.js +0 -3
  212. package/lib/app/native-rating/rating-context.js.map +0 -1
  213. package/lib/models/bill-to.d.ts +0 -14
  214. package/lib/models/bill-to.js +0 -14
  215. package/lib/models/bill-to.js.map +0 -1
  216. package/lib/models/billing/billing-to-party.d.ts +0 -10
  217. package/lib/models/billing/billing-to-party.js +0 -15
  218. package/lib/models/billing/billing-to-party.js.map +0 -1
  219. package/lib/models/cod-payment-type.d.ts +0 -9
  220. package/lib/models/cod-payment-type.js +0 -14
  221. package/lib/models/cod-payment-type.js.map +0 -1
  222. package/lib/models/collect-on-delivery.d.ts +0 -9
  223. package/lib/models/collect-on-delivery.js +0 -8
  224. package/lib/models/collect-on-delivery.js.map +0 -1
  225. package/lib/models/importer-records/importer_of_record.js.map +0 -1
  226. package/src/app/build-native-rating-routes.ts +0 -119
  227. package/src/app/carrier-app.ts +0 -222
  228. package/src/app/create-get-rates-handler.ts +0 -128
  229. package/src/app/internal/README.md +0 -1
  230. package/src/app/internal/branded-image.ts +0 -9
  231. package/src/app/internal/carrier-app-specification.ts +0 -17
  232. package/src/app/internal/carrier-specification.ts +0 -135
  233. package/src/app/internal/connect-runtime-app.ts +0 -15
  234. package/src/app/internal/document-template.ts +0 -7
  235. package/src/app/internal/index.ts +0 -3
  236. package/src/app/internal/metadata.ts +0 -86
  237. package/src/app/internal/native-rating-specification.ts +0 -5
  238. package/src/app/internal/route.ts +0 -31
  239. package/src/app/native-rating/base-rate-context.ts +0 -101
  240. package/src/app/native-rating/context-results.ts +0 -3
  241. package/src/app/native-rating/create-dynamic-carrier.ts +0 -82
  242. package/src/app/native-rating/get-rates.ts +0 -9
  243. package/src/app/native-rating/get-variables.ts +0 -8
  244. package/src/app/native-rating/get-zone.ts +0 -9
  245. package/src/app/native-rating/implementation-type.ts +0 -34
  246. package/src/app/native-rating/index.ts +0 -3
  247. package/src/app/native-rating/numeric-currency.ts +0 -5
  248. package/src/app/native-rating/rating-context.ts +0 -19
  249. package/src/models/bill-to.ts +0 -15
  250. package/src/models/billing/billing-to-party.ts +0 -10
  251. package/src/models/cod-payment-type.ts +0 -9
  252. package/src/models/collect-on-delivery.ts +0 -10
  253. /package/lib/models/importer-records/{importer_of_record.d.ts → importer-of-record.d.ts} +0 -0
  254. /package/src/models/importer-records/{importer_of_record.ts → importer-of-record.ts} +0 -0
@@ -1,3 +0,0 @@
1
- import { Route } from './internal/route';
2
- import { CarrierAppMetadata } from './metadata/carrier-app-metadata';
3
- export declare const buildNativeRatingRoutes: (metadata: CarrierAppMetadata) => Route[];
@@ -1,105 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.buildNativeRatingRoutes = void 0;
4
- const path_1 = require("path");
5
- const promises_1 = require("fs/promises");
6
- const route_1 = require("./internal/route");
7
- const create_get_rates_handler_1 = require("./create-get-rates-handler");
8
- const buildFilePath = async (path, fileName, error) => {
9
- const filePath = (0, path_1.resolve)(path, fileName);
10
- try {
11
- await (0, promises_1.stat)(filePath);
12
- return filePath;
13
- }
14
- catch {
15
- throw new Error(error);
16
- }
17
- };
18
- const buildNativeRatingRoutes = (metadata) => {
19
- const getCarrierDetails = async (req) => {
20
- const carrierId = req.params.carrier_id;
21
- const carrier = metadata.Carriers.find((x) => x.Id === carrierId);
22
- if (!carrier) {
23
- throw new Error(`Could not find carrier with id ${carrierId}`);
24
- }
25
- if (!carrier.NativeRating) {
26
- throw new Error(`Carrier ${carrierId} does not have a NativeRating property`);
27
- }
28
- if (!carrier.NativeRating.Path) {
29
- throw new Error(`Carrier ${carrierId} does not have NativeRating path set`);
30
- }
31
- try {
32
- await (0, promises_1.stat)(carrier.NativeRating.Path);
33
- }
34
- catch {
35
- throw new Error(`Carrier ${carrierId} does not have NativeRating data`);
36
- }
37
- return {
38
- path: carrier.NativeRating.Path,
39
- rateCards: carrier.NativeRating.RateCards || [],
40
- };
41
- };
42
- const getRateCardPath = async (req) => {
43
- const rateCardId = req.params.id;
44
- const { path, rateCards } = await getCarrierDetails(req);
45
- if (!rateCards.find((x) => x.Id === rateCardId)) {
46
- throw new Error(`Could not find a rate card with id ${rateCardId}`);
47
- }
48
- const rateCardPath = (0, path_1.resolve)(path, rateCardId);
49
- try {
50
- await (0, promises_1.stat)(rateCardPath);
51
- }
52
- catch {
53
- throw new Error(`Rate card does not have any data`);
54
- }
55
- return rateCardPath;
56
- };
57
- return [
58
- {
59
- path: '/NativeRating/:carrier_id/RateCards',
60
- method: route_1.Method.GET,
61
- handler: async (req) => {
62
- const { rateCards } = await getCarrierDetails(req);
63
- return rateCards.map((x) => ({ Id: x.Id, Currency: x.Currency }));
64
- },
65
- },
66
- {
67
- path: '/NativeRating/:carrier_id/RateCards/:id/Implementation',
68
- method: route_1.Method.GET,
69
- handler: async (req) => {
70
- const path = await getRateCardPath(req);
71
- const codePath = await buildFilePath(path, create_get_rates_handler_1.rateLogicName, `Could not find rating logic`);
72
- const code = (await (0, promises_1.readFile)(codePath)).toString('base64');
73
- return { code };
74
- },
75
- },
76
- ...['Rates', 'Variables'].map((x) => ({
77
- path: `/NativeRating/:carrier_id/RateCards/:id/${x}`,
78
- method: route_1.Method.GET,
79
- file: async (req) => {
80
- const path = await getRateCardPath(req);
81
- return await buildFilePath(path, `${x.toLowerCase()}.json`, `Could not find ${x.toLowerCase()}`);
82
- },
83
- })),
84
- {
85
- path: '/NativeRating/:carrier_id/Implementation',
86
- method: route_1.Method.GET,
87
- handler: async (req) => {
88
- const { path } = await getCarrierDetails(req);
89
- const codePath = await buildFilePath(path, create_get_rates_handler_1.rateLogicName, `Could not find rating logic`);
90
- const code = (await (0, promises_1.readFile)(codePath)).toString('base64');
91
- return { code };
92
- },
93
- },
94
- {
95
- path: '/NativeRating/:carrier_id/Zones',
96
- method: route_1.Method.GET,
97
- file: async (req) => {
98
- const { path } = await getCarrierDetails(req);
99
- return await buildFilePath(path, 'zones.json', `Could not find zones`);
100
- },
101
- },
102
- ];
103
- };
104
- exports.buildNativeRatingRoutes = buildNativeRatingRoutes;
105
- //# sourceMappingURL=build-native-rating-routes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"build-native-rating-routes.js","sourceRoot":"","sources":["../../src/app/build-native-rating-routes.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { CarrierAppDefinition } from '.';
2
- import { ConnectRuntimeApp, Route, BrandedImages } from './internal';
3
- import { Metadata } from './internal/metadata';
4
- import { DocumentTemplate } from './internal/document-template';
5
- export declare class CarrierApp implements ConnectRuntimeApp {
6
- routes: Route[];
7
- data: Metadata;
8
- redoc?: string;
9
- validate: () => string[] | undefined;
10
- getSupportedCountries: () => string[] | undefined;
11
- constructor(definition: CarrierAppDefinition);
12
- getImages(): BrandedImages[];
13
- getDocumentTemplatesListFromMetadata(): DocumentTemplate[];
14
- getDocumentTemplate: (req: any) => Promise<JSON>;
15
- }
@@ -1,166 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CarrierApp = void 0;
4
- const tslib_1 = require("tslib");
5
- const internal_1 = require("./internal");
6
- const constants_1 = require("./constants");
7
- const spec_1 = require("../spec");
8
- const metadata_1 = require("./internal/metadata");
9
- const metadata_2 = require("./metadata");
10
- const models_1 = require("../models");
11
- const responses_1 = require("../responses");
12
- const fs_1 = tslib_1.__importStar(require("fs"));
13
- const create_get_rates_handler_1 = require("./create-get-rates-handler");
14
- const build_native_rating_routes_1 = require("./build-native-rating-routes");
15
- const data_validator_1 = require("./native-rating/data-validator");
16
- const handleRequest = (implementation) => {
17
- if (implementation) {
18
- return async (request) => {
19
- const { transaction_id } = request.body;
20
- const result = await implementation(request.body);
21
- result.transaction_id = transaction_id;
22
- return result;
23
- };
24
- }
25
- };
26
- class CarrierApp {
27
- constructor(definition) {
28
- this.routes = [];
29
- this.getDocumentTemplate = async (req) => {
30
- const templates = this.getDocumentTemplatesListFromMetadata();
31
- const file = templates.find((file) => file.id === req.params.id);
32
- if (file && file.template) {
33
- const templateContent = await fs_1.default.promises.readFile(file.template);
34
- return JSON.parse(templateContent.toString());
35
- }
36
- return JSON.parse('{}');
37
- };
38
- this.getSupportedCountries = () => {
39
- const countries = [];
40
- const rootCountries = definition.Metadata.Carriers.flatMap((c) => { var _a; return (_a = c.DefaultSupportedCountries) === null || _a === void 0 ? void 0 : _a.flatMap((sc) => sc.FromCountry); });
41
- const serviceCountries = definition.Metadata.Carriers.flatMap((c) => { var _a; return (_a = c.ShippingServices) === null || _a === void 0 ? void 0 : _a.flatMap((s) => s.SupportedCountries).flatMap((sc) => sc === null || sc === void 0 ? void 0 : sc.FromCountry); });
42
- countries.push(...rootCountries);
43
- countries.push(...serviceCountries);
44
- const uniqueCountries = [...new Set(countries)].filter((c) => c !== undefined);
45
- return uniqueCountries;
46
- };
47
- this.validate = () => {
48
- const results = metadata_2.CarrierAppMetadataSchema.validate(definition.Metadata, {
49
- allowUnknown: true,
50
- abortEarly: false,
51
- });
52
- if (results.error) {
53
- return results.error.details.map((detail) => `${detail.message}`);
54
- }
55
- const nativeRatingCarriers = definition.Metadata.Carriers.filter((carrier) => carrier.NativeRating &&
56
- carrier.NativeRating.Path &&
57
- (0, fs_1.existsSync)(carrier.NativeRating.Path));
58
- const validationErrors = nativeRatingCarriers
59
- .map(data_validator_1.validateRatingData)
60
- .filter(data_validator_1.isDataValidationError)
61
- .flat();
62
- if (validationErrors.length > 0) {
63
- return validationErrors.map((error) => { var _a; return `${error.message} \n Duplicate Keys: ${(_a = error.duplicateKeys) === null || _a === void 0 ? void 0 : _a.join(', ')}`; });
64
- }
65
- };
66
- const ratingImplementation = (0, create_get_rates_handler_1.createGetRatesHandler)(definition);
67
- new Array([
68
- internal_1.Method.POST,
69
- constants_1.ApiEndpoints.CancelNotification,
70
- definition.CancelNotification,
71
- responses_1.CancelNotificationResponseSchema,
72
- ], [internal_1.Method.POST, constants_1.ApiEndpoints.CancelPickup, definition.CancelPickup, responses_1.CancelPickupResponseSchema], [internal_1.Method.POST, constants_1.ApiEndpoints.CreateLabel, definition.CreateLabel, responses_1.CreateLabelResponseSchema], [
73
- internal_1.Method.POST,
74
- constants_1.ApiEndpoints.CreateManifest,
75
- definition.CreateManifest,
76
- responses_1.CreateManifestResponseSchema,
77
- ], [internal_1.Method.POST, constants_1.ApiEndpoints.GetManifest, definition.GetManifest, responses_1.CreateManifestResponseSchema], [
78
- internal_1.Method.POST,
79
- constants_1.ApiEndpoints.CreateNotification,
80
- definition.CreateNotification,
81
- responses_1.CreateNotificationResponseSchema,
82
- ], [internal_1.Method.POST, constants_1.ApiEndpoints.GetRates, ratingImplementation, responses_1.GetRatesResponseSchema], [
83
- internal_1.Method.POST,
84
- constants_1.ApiEndpoints.NormalizeTrackingData,
85
- definition.NormalizeTrackingData,
86
- responses_1.NormalizeTrackingDataResponseSchema,
87
- ], [internal_1.Method.POST, constants_1.ApiEndpoints.Register, definition.Register, responses_1.RegisterResponseSchema], [
88
- internal_1.Method.POST,
89
- constants_1.ApiEndpoints.SchedulePickup,
90
- definition.SchedulePickup,
91
- responses_1.SchedulePickupResponseSchema,
92
- ], [internal_1.Method.POST, constants_1.ApiEndpoints.Track, definition.Track, responses_1.TrackingResponseSchema], [
93
- internal_1.Method.POST,
94
- constants_1.ApiEndpoints.ValidateInboundData,
95
- definition.ValidateInboundData,
96
- responses_1.ValidateInboundDataResponseSchema,
97
- ], [internal_1.Method.POST, constants_1.ApiEndpoints.VoidLabels, definition.VoidLabels, responses_1.VoidLabelsResponseSchema], [
98
- internal_1.Method.POST,
99
- constants_1.ApiEndpoints.GetRelayPoints,
100
- definition.GetRelayPoints,
101
- responses_1.GetRelayPointsResponseSchema,
102
- ], [
103
- internal_1.Method.POST,
104
- constants_1.ApiEndpoints.GetServicePoints,
105
- definition.GetServicePoints,
106
- responses_1.GetServicePointsResponseSchema,
107
- ], [
108
- internal_1.Method.POST,
109
- constants_1.ApiEndpoints.GetServicePoint,
110
- definition.GetServicePoint,
111
- responses_1.GetServicePointResponseSchema,
112
- ], [
113
- internal_1.Method.POST,
114
- constants_1.ApiEndpoints.ImportTrackingEvents,
115
- definition.ImportTrackingEvents,
116
- models_1.ImportedTrackingEventSchema,
117
- ]).forEach(([method, path, implementation, schema]) => {
118
- if (implementation) {
119
- this.routes.push({
120
- method,
121
- path,
122
- handler: handleRequest(implementation),
123
- validateResponse: (result) => {
124
- var _a, _b;
125
- const validationResults = schema.validate(result, {
126
- abortEarly: false,
127
- });
128
- const errors = (_b = (_a = validationResults === null || validationResults === void 0 ? void 0 : validationResults.error) === null || _a === void 0 ? void 0 : _a.details) === null || _b === void 0 ? void 0 : _b.map((detail) => detail.message);
129
- return errors;
130
- },
131
- });
132
- }
133
- });
134
- this.routes.push({
135
- path: '/DocumentTemplates/:id',
136
- method: internal_1.Method.GET,
137
- handler: async (request) => {
138
- return await this.getDocumentTemplate(request);
139
- },
140
- });
141
- (0, build_native_rating_routes_1.buildNativeRatingRoutes)(definition.Metadata).forEach((x) => this.routes.push(x));
142
- this.data = new metadata_1.Metadata(definition);
143
- this.redoc = JSON.stringify(spec_1.OpenApiSpecification);
144
- }
145
- getImages() {
146
- const mapBrandedImages = (carrier) => {
147
- return {
148
- id: carrier.Id,
149
- logo: carrier.Images.LogoUrl,
150
- icon: carrier.Images.IconUrl,
151
- };
152
- };
153
- return this.data.Carriers.map(mapBrandedImages);
154
- }
155
- getDocumentTemplatesListFromMetadata() {
156
- const mapDocumentTemplates = (carrier) => {
157
- return {
158
- id: carrier.Id,
159
- template: carrier.DocumentTemplate,
160
- };
161
- };
162
- return this.data.Carriers.map(mapDocumentTemplates);
163
- }
164
- }
165
- exports.CarrierApp = CarrierApp;
166
- //# sourceMappingURL=carrier-app.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"carrier-app.js","sourceRoot":"","sources":["../../src/app/carrier-app.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import { GetRatesRequest } from '../requests';
2
- import { CarrierAppDefinition } from './carrier-app-definition';
3
- export declare const rateLogicName = "rate-shipments.js";
4
- export declare const createGetRatesHandler: (definition: CarrierAppDefinition) => ((req: GetRatesRequest) => import("..").GetRatesResponse | Promise<import("..").GetRatesResponse> | undefined) | undefined;
@@ -1,100 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createGetRatesHandler = exports.rateLogicName = void 0;
4
- const tslib_1 = require("tslib");
5
- const path_1 = require("path");
6
- const fs_1 = require("fs");
7
- const base_rate_context_1 = require("./native-rating/base-rate-context");
8
- const create_dynamic_carrier_1 = tslib_1.__importDefault(require("./native-rating/create-dynamic-carrier"));
9
- exports.rateLogicName = 'rate-shipments.js';
10
- const runNativeRatingLocally = process.env.LOCAL_NATIVE_RATING
11
- ? process.env.LOCAL_NATIVE_RATING !== 'false'
12
- : process.env.NODE_ENV !== 'production';
13
- const createImplementation = (basePath) => {
14
- const logicPath = (0, path_1.join)(basePath, exports.rateLogicName);
15
- if (!(0, fs_1.existsSync)(logicPath)) {
16
- return undefined;
17
- }
18
- const rawImplementation = (0, fs_1.readFileSync)(logicPath, 'utf8');
19
- return (0, create_dynamic_carrier_1.default)(rawImplementation);
20
- };
21
- const createNativeRatingHandler = (carrier) => {
22
- var _a;
23
- if (!carrier.NativeRating) {
24
- console.log('Carrier does NOT have a Native Rating property in its config');
25
- return undefined;
26
- }
27
- const basePath = carrier.NativeRating.Path;
28
- if (!basePath) {
29
- console.log('Carrier does NOT have a Native Rating path set');
30
- return undefined;
31
- }
32
- if (!(0, fs_1.existsSync)(basePath)) {
33
- console.log(`Path for Native Rating '${basePath}' does not exist`);
34
- return undefined;
35
- }
36
- try {
37
- const buildContext = (0, base_rate_context_1.createContextBuilder)(basePath);
38
- const defaultImplementation = createImplementation(basePath);
39
- const rateCards = Object.fromEntries(((_a = carrier.NativeRating.RateCards) === null || _a === void 0 ? void 0 : _a.map((card) => {
40
- const impl = createImplementation((0, path_1.join)(basePath, card.Id)) || defaultImplementation;
41
- if (!impl) {
42
- throw new Error(`Cannot find default nor card specific rating logic for rate card ${card.Id}`);
43
- }
44
- const context = buildContext(card);
45
- const rateShipments = (req) => impl.rateShipments(context, [{ id: 'rate-request', shipment: req }]);
46
- return [card.Id, rateShipments];
47
- })) || []);
48
- const defaultRateCard = rateCards[carrier.NativeRating.DefaultRateCardId];
49
- if (!defaultRateCard) {
50
- throw new Error(`Could not find a rate card definition for default rate card ${carrier.NativeRating.DefaultRateCardId}`);
51
- }
52
- return async (req) => {
53
- var _a;
54
- const rateCardId = (_a = req.metadata) === null || _a === void 0 ? void 0 : _a['native-rating-rate-card'];
55
- const rateShipments = rateCardId ? rateCards[rateCardId] : defaultRateCard;
56
- if (!rateShipments) {
57
- throw new Error(`Could not find rate card ${rateCardId}`);
58
- }
59
- const results = await rateShipments(req);
60
- const rateResult = results.find((x) => x.id === 'rate-request');
61
- if (!rateResult) {
62
- throw new Error(`Could not find rate for request 'rate-request'. Ensure you return the request id with your rates.`);
63
- }
64
- return {
65
- rates: rateResult.rates,
66
- metadata: {
67
- error: rateResult.error,
68
- },
69
- };
70
- };
71
- }
72
- catch (err) {
73
- console.warn(err === null || err === void 0 ? void 0 : err.message);
74
- return undefined;
75
- }
76
- };
77
- const createGetRatesHandler = (definition) => {
78
- if (!runNativeRatingLocally) {
79
- return definition.GetRates;
80
- }
81
- const nativeRatingCarriers = definition.Metadata.Carriers.map((x) => ({
82
- apiCode: x.ApiCode || x.Name,
83
- handler: createNativeRatingHandler(x) || definition.GetRates,
84
- })).filter((x) => x.handler !== undefined);
85
- // If there aren't any native rating implementations found, return whatever is defined in the definition
86
- // This is what should happen in production because the Kong gateway should route any rate requests for NR
87
- // carriers directly to the Native Rating service
88
- if (nativeRatingCarriers.length === 0) {
89
- return definition.GetRates;
90
- }
91
- // If there's only a single carrier defined, just return the Native Rating handler so that we can avoid
92
- // requiring the "carrier_code" property be set on the "metadata" object when testing
93
- if (definition.Metadata.Carriers.length === 1) {
94
- return nativeRatingCarriers[0].handler;
95
- }
96
- const implementationLookup = Object.fromEntries(nativeRatingCarriers.map((x) => [x.apiCode, x.handler]));
97
- return (req) => { var _a, _b; return (_b = implementationLookup[(_a = req.metadata) === null || _a === void 0 ? void 0 : _a['carrier_code']]) === null || _b === void 0 ? void 0 : _b.call(implementationLookup, req); };
98
- };
99
- exports.createGetRatesHandler = createGetRatesHandler;
100
- //# sourceMappingURL=create-get-rates-handler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create-get-rates-handler.js","sourceRoot":"","sources":["../../src/app/create-get-rates-handler.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- /** @description This contains the logo and icon for an individual branded entity */
2
- export interface BrandedImages {
3
- /** @description The id associated with the branded item (typically the carrier id, or ordersource id) */
4
- id: string;
5
- /** @description The full path to the logo file */
6
- logo: string;
7
- /** @description The full path to the icon file */
8
- icon: string;
9
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=branded-image.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"branded-image.js","sourceRoot":"","sources":["../../../src/app/internal/branded-image.ts"],"names":[],"mappings":""}
@@ -1,16 +0,0 @@
1
- import { AuthSpecification } from '../metadata/auth-specification';
2
- import { ShippingProviderConnector } from '../metadata/shipping-provider-connector';
3
- import { CarrierSpecification } from './carrier-specification';
4
- /** @description This represents a single integration which may contain multiple carrier sources */
5
- export interface CarrierAppSpecification {
6
- /** @description The id for this integration */
7
- Id: string;
8
- /** @description The name of this integration */
9
- Name: string;
10
- /** @description Information about the connector */
11
- Connector: ShippingProviderConnector;
12
- /** @description The specification for authorizing with this carrier */
13
- AuthProcess?: AuthSpecification;
14
- /** @description A list of carrier sources associated with this integration */
15
- Carriers: CarrierSpecification[];
16
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=carrier-app-specification.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"carrier-app-specification.js","sourceRoot":"","sources":["../../../src/app/internal/carrier-app-specification.ts"],"names":[],"mappings":""}
@@ -1,38 +0,0 @@
1
- import { Carrier } from '../metadata/carrier';
2
- import { AccountModals } from '../metadata/account-modals';
3
- import { PackageType } from '../metadata/package-type';
4
- import { ShippingService } from '../metadata/shipping-service';
5
- import { ShippingOption, ShippingOptionDictionary } from '../metadata/shipping-option';
6
- import { CountryAssociation } from '../metadata/country-association';
7
- import { ConfirmationDictionary, ConfirmationType } from '../metadata/confirmation-type';
8
- import { LabelFormatsEnum } from '../metadata/label-formats';
9
- import { LabelSizesEnum } from '../metadata/label-sizes';
10
- import { CarrierAttributeEnum } from '../metadata/carrier-attributes';
11
- import { NativeRatingSpecification } from './native-rating-specification';
12
- export declare const mapShippingOptions: (options?: ShippingOptionDictionary) => ShippingOption[] | undefined;
13
- export declare const mapConfirmationTypes: (types?: ConfirmationDictionary) => ConfirmationType[];
14
- /** @description This represents what we send to data manager */
15
- export declare class CarrierSpecification {
16
- Id: string;
17
- Name: string;
18
- ApiCode?: string;
19
- AccountModals: AccountModals;
20
- PackageTypes?: PackageType[];
21
- ShippingServices?: ShippingService[];
22
- ShippingOptions?: ShippingOption[];
23
- DefaultSupportedCountries?: CountryAssociation[];
24
- DefaultLabelSizes?: LabelSizesEnum[];
25
- LabelFormats?: LabelFormatsEnum[];
26
- DefaultConfirmationTypes: ConfirmationType[];
27
- CarrierAttributes?: CarrierAttributeEnum[];
28
- TrackingUrl?: string;
29
- CarrierUrl?: string;
30
- Description?: string;
31
- Images: {
32
- LogoUrl: string;
33
- IconUrl: string;
34
- };
35
- NativeRating?: NativeRatingSpecification;
36
- DocumentTemplate?: string;
37
- constructor(definition: Carrier);
38
- }
@@ -1,86 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CarrierSpecification = exports.mapConfirmationTypes = exports.mapShippingOptions = void 0;
4
- const mapShippingOptions = (options) => {
5
- if (!options) {
6
- return undefined;
7
- }
8
- const ret = [];
9
- Object.keys(options).forEach((key) => {
10
- const Type = key;
11
- const { Name, Description } = options[Type];
12
- ret.push({
13
- Name,
14
- Description,
15
- Type,
16
- });
17
- });
18
- return ret;
19
- };
20
- exports.mapShippingOptions = mapShippingOptions;
21
- const mapConfirmationTypes = (types) => {
22
- if (!types) {
23
- return [];
24
- }
25
- const ret = [];
26
- Object.keys(types).forEach((key) => {
27
- const confirmations = types;
28
- const Type = key;
29
- const Name = confirmations[Type];
30
- ret.push({
31
- Name,
32
- Type,
33
- });
34
- });
35
- return ret;
36
- };
37
- exports.mapConfirmationTypes = mapConfirmationTypes;
38
- const mapAccountModal = (modal) => {
39
- var _a, _b, _c, _d, _e, _f, _g, _h;
40
- return {
41
- RegistrationFormSchema: {
42
- JsonSchema: (_a = modal.RegistrationFormSchema.JsonSchema) !== null && _a !== void 0 ? _a : (_b = modal.RegistrationFormSchema.formSchema) === null || _b === void 0 ? void 0 : _b.jsonSchema,
43
- UiSchema: (_c = modal.RegistrationFormSchema.UiSchema) !== null && _c !== void 0 ? _c : (_d = modal.RegistrationFormSchema.formSchema) === null || _d === void 0 ? void 0 : _d.uiSchema,
44
- },
45
- SettingsFormSchema: {
46
- JsonSchema: (_e = modal.SettingsFormSchema.JsonSchema) !== null && _e !== void 0 ? _e : (_f = modal.SettingsFormSchema.formSchema) === null || _f === void 0 ? void 0 : _f.jsonSchema,
47
- UiSchema: (_g = modal.SettingsFormSchema.UiSchema) !== null && _g !== void 0 ? _g : (_h = modal.SettingsFormSchema.formSchema) === null || _h === void 0 ? void 0 : _h.uiSchema,
48
- },
49
- };
50
- };
51
- const mapNativeRating = (model) => {
52
- if (!model) {
53
- return undefined;
54
- }
55
- return {
56
- DefaultRateCard: model.DefaultRateCardId,
57
- };
58
- };
59
- /** @description This represents what we send to data manager */
60
- class CarrierSpecification {
61
- constructor(definition) {
62
- this.Images = {
63
- LogoUrl: definition.Images.Logo,
64
- IconUrl: definition.Images.Icon,
65
- };
66
- this.Id = definition.Id;
67
- this.Name = definition.Name;
68
- this.ApiCode = definition.ApiCode;
69
- this.AccountModals = mapAccountModal(definition.AccountModals);
70
- this.PackageTypes = definition.PackageTypes;
71
- this.ShippingServices = definition.ShippingServices;
72
- this.ShippingOptions = (0, exports.mapShippingOptions)(definition.ShippingOptions);
73
- this.DefaultSupportedCountries = definition.DefaultSupportedCountries;
74
- this.DefaultLabelSizes = definition.DefaultLabelSizes;
75
- this.LabelFormats = definition.LabelFormats;
76
- this.DefaultConfirmationTypes = (0, exports.mapConfirmationTypes)(definition.DefaultConfirmationTypes);
77
- this.CarrierAttributes = definition.CarrierAttributes;
78
- this.TrackingUrl = definition.TrackingUrl;
79
- this.CarrierUrl = definition.CarrierUrl;
80
- this.Description = definition.Description;
81
- this.NativeRating = mapNativeRating(definition.NativeRating);
82
- this.DocumentTemplate = definition.DocumentTemplate;
83
- }
84
- }
85
- exports.CarrierSpecification = CarrierSpecification;
86
- //# sourceMappingURL=carrier-specification.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"carrier-specification.js","sourceRoot":"","sources":["../../../src/app/internal/carrier-specification.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- import { BrandedImages, Route } from '.';
2
- /** @description This exposes the base needs for an app to be succeful in the generic connect runtime */
3
- export interface ConnectRuntimeApp {
4
- /** @description The routes your application should expose */
5
- routes: Route[];
6
- /** @description The metadata associated with your application */
7
- data: any;
8
- /** @description A method that returns an array of images associated with branded entities within your app */
9
- getImages: () => BrandedImages[];
10
- /** @description A method that validates the metadata for an app and returns an array of errors if they exist */
11
- validate: () => string[] | undefined;
12
- /** @description String containing yaml or json file to display with redoc */
13
- redoc?: string;
14
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=connect-runtime-app.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connect-runtime-app.js","sourceRoot":"","sources":["../../../src/app/internal/connect-runtime-app.ts"],"names":[],"mappings":""}
@@ -1,7 +0,0 @@
1
- /** @description Contains template file with carrier documents and labels */
2
- export interface DocumentTemplate {
3
- /** @description The id associated with the template - the carrier id */
4
- id: string;
5
- /** @description The full path to the template file */
6
- template?: string;
7
- }