@shipengine/connect-carrier-api 2.12.18 → 4.0.0-beta
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/app/build-app-deployment.d.ts +3 -0
- package/lib/app/build-app-deployment.js +41 -0
- package/lib/app/build-app-deployment.js.map +1 -0
- package/lib/app/create-endpoint-mapping.d.ts +4 -0
- package/lib/app/create-endpoint-mapping.js +26 -0
- package/lib/app/create-endpoint-mapping.js.map +1 -0
- package/lib/app/index.d.ts +4 -2
- package/lib/app/index.js +4 -2
- package/lib/app/index.js.map +1 -1
- package/lib/app/metadata/index.d.ts +2 -0
- package/lib/app/metadata/index.js +2 -0
- package/lib/app/metadata/index.js.map +1 -1
- package/lib/app/{native-rating/data-validator.d.ts → native-rating-data-validator.d.ts} +1 -1
- package/lib/app/{native-rating/data-validator.js → native-rating-data-validator.js} +1 -1
- package/lib/app/native-rating-data-validator.js.map +1 -0
- package/lib/models/addresses/address-base-schema.d.ts +2 -0
- package/lib/models/addresses/address-base-schema.js +24 -0
- package/lib/models/addresses/address-base-schema.js.map +1 -0
- package/lib/models/addresses/address-residential-indicator-schema.d.ts +2 -0
- package/lib/models/addresses/address-residential-indicator-schema.js +8 -0
- package/lib/models/addresses/address-residential-indicator-schema.js.map +1 -0
- package/lib/models/addresses/pudo-location-schema.d.ts +2 -0
- package/lib/models/addresses/pudo-location-schema.js +11 -0
- package/lib/models/addresses/pudo-location-schema.js.map +1 -0
- package/lib/models/addresses/ship-to-schema.d.ts +2 -0
- package/lib/models/addresses/ship-to-schema.js +11 -0
- package/lib/models/addresses/ship-to-schema.js.map +1 -0
- package/lib/models/advanced-options-schema.d.ts +2 -0
- package/lib/models/advanced-options-schema.js +15 -0
- package/lib/models/advanced-options-schema.js.map +1 -0
- package/lib/models/advanced-options.d.ts +0 -5
- package/lib/models/advanced-options.js.map +1 -1
- package/lib/models/authorization-schema.d.ts +2 -0
- package/lib/models/authorization-schema.js +10 -0
- package/lib/models/authorization-schema.js.map +1 -0
- package/lib/models/billing/index.d.ts +0 -1
- package/lib/models/billing/index.js +0 -1
- package/lib/models/billing/index.js.map +1 -1
- package/lib/models/customs/customs-charges-schema.d.ts +2 -0
- package/lib/models/customs/customs-charges-schema.js +13 -0
- package/lib/models/customs/customs-charges-schema.js.map +1 -0
- package/lib/models/customs/customs-content-types-schema.d.ts +2 -0
- package/lib/models/customs/customs-content-types-schema.js +8 -0
- package/lib/models/customs/customs-content-types-schema.js.map +1 -0
- package/lib/models/customs/customs-item-schema.d.ts +2 -0
- package/lib/models/customs/customs-item-schema.js +21 -0
- package/lib/models/customs/customs-item-schema.js.map +1 -0
- package/lib/models/customs/customs-non-delivery-schema.d.ts +2 -0
- package/lib/models/customs/customs-non-delivery-schema.js +8 -0
- package/lib/models/customs/customs-non-delivery-schema.js.map +1 -0
- package/lib/models/customs/customs-schema.d.ts +2 -0
- package/lib/models/customs/customs-schema.js +25 -0
- package/lib/models/customs/customs-schema.js.map +1 -0
- package/lib/models/customs/customs.d.ts +1 -1
- package/lib/models/importer-records/importer-of-record-schema.d.ts +2 -0
- package/lib/models/importer-records/importer-of-record-schema.js +20 -0
- package/lib/models/importer-records/importer-of-record-schema.js.map +1 -0
- package/lib/models/importer-records/{importer_of_record.js → importer-of-record.js} +1 -1
- package/lib/models/importer-records/importer-of-record.js.map +1 -0
- package/lib/models/inconterms/terms-of-trade-code-schema.d.ts +2 -0
- package/lib/models/inconterms/terms-of-trade-code-schema.js +8 -0
- package/lib/models/inconterms/terms-of-trade-code-schema.js.map +1 -0
- package/lib/models/index.d.ts +0 -3
- package/lib/models/index.js +0 -3
- package/lib/models/index.js.map +1 -1
- package/lib/models/labels/label-message-schema.d.ts +2 -0
- package/lib/models/labels/label-message-schema.js +11 -0
- package/lib/models/labels/label-message-schema.js.map +1 -0
- package/lib/models/pickup/shipped-package-schema.d.ts +2 -0
- package/lib/models/pickup/shipped-package-schema.js +25 -0
- package/lib/models/pickup/shipped-package-schema.js.map +1 -0
- package/lib/models/pickup/shipped-shipment-schema.d.ts +3 -0
- package/lib/models/pickup/shipped-shipment-schema.js +21 -0
- package/lib/models/pickup/shipped-shipment-schema.js.map +1 -0
- package/lib/models/taxes/tax-identifier-schema.d.ts +2 -0
- package/lib/models/taxes/tax-identifier-schema.js +13 -0
- package/lib/models/taxes/tax-identifier-schema.js.map +1 -0
- package/lib/models/taxes/tax-identifier-type-schema.d.ts +2 -0
- package/lib/models/taxes/tax-identifier-type-schema.js +8 -0
- package/lib/models/taxes/tax-identifier-type-schema.js.map +1 -0
- package/lib/models/units/dimension-details-schema.d.ts +2 -0
- package/lib/models/units/dimension-details-schema.js +14 -0
- package/lib/models/units/dimension-details-schema.js.map +1 -0
- package/lib/models/units/dimension-unit-schema.d.ts +2 -0
- package/lib/models/units/dimension-unit-schema.js +8 -0
- package/lib/models/units/dimension-unit-schema.js.map +1 -0
- package/lib/models/units/weight-details-schema.d.ts +2 -0
- package/lib/models/units/weight-details-schema.js +13 -0
- package/lib/models/units/weight-details-schema.js.map +1 -0
- package/lib/models/units/weight-unit-schema.d.ts +2 -0
- package/lib/models/units/weight-unit-schema.js +8 -0
- package/lib/models/units/weight-unit-schema.js.map +1 -0
- package/lib/requests/base-request-schema.d.ts +2 -0
- package/lib/requests/base-request-schema.js +12 -0
- package/lib/requests/base-request-schema.js.map +1 -0
- package/lib/requests/cancel-notification-request-schema.d.ts +2 -0
- package/lib/requests/cancel-notification-request-schema.js +12 -0
- package/lib/requests/cancel-notification-request-schema.js.map +1 -0
- package/lib/requests/create-label-request.d.ts +1 -3
- package/lib/requests/create-label-request.js.map +1 -1
- package/lib/requests/get-rates-request.d.ts +1 -3
- package/lib/requests/get-rates-request.js.map +1 -1
- package/package.json +2 -2
- package/spec.json +1 -49
- package/src/app/build-app-deployment.ts +50 -0
- package/src/app/create-endpoint-mapping.ts +25 -0
- package/src/app/index.ts +4 -2
- package/src/app/metadata/index.ts +2 -0
- package/src/app/{native-rating/data-validator.ts → native-rating-data-validator.ts} +1 -1
- package/src/models/addresses/address-base-schema.ts +20 -0
- package/src/models/addresses/address-residential-indicator-schema.ts +6 -0
- package/src/models/addresses/pudo-location-schema.ts +7 -0
- package/src/models/addresses/ship-to-schema.ts +7 -0
- package/src/models/advanced-options-schema.ts +11 -0
- package/src/models/advanced-options.ts +0 -5
- package/src/models/authorization-schema.ts +6 -0
- package/src/models/billing/index.ts +0 -1
- package/src/models/customs/customs-charges-schema.ts +9 -0
- package/src/models/customs/customs-content-types-schema.ts +4 -0
- package/src/models/customs/customs-item-schema.ts +17 -0
- package/src/models/customs/customs-non-delivery-schema.ts +4 -0
- package/src/models/customs/customs-schema.ts +21 -0
- package/src/models/customs/customs.ts +1 -1
- package/src/models/importer-records/importer-of-record-schema.ts +16 -0
- package/src/models/inconterms/terms-of-trade-code-schema.ts +4 -0
- package/src/models/index.ts +0 -3
- package/src/models/labels/label-message-schema.ts +7 -0
- package/src/models/pickup/shipped-package-schema.ts +21 -0
- package/src/models/pickup/shipped-shipment-schema.ts +18 -0
- package/src/models/taxes/tax-identifier-schema.ts +9 -0
- package/src/models/taxes/tax-identifier-type-schema.ts +4 -0
- package/src/models/units/dimension-details-schema.ts +10 -0
- package/src/models/units/dimension-unit-schema.ts +4 -0
- package/src/models/units/weight-details-schema.ts +9 -0
- package/src/models/units/weight-unit-schema.ts +4 -0
- package/src/requests/base-request-schema.ts +8 -0
- package/src/requests/cancel-notification-request-schema.ts +8 -0
- package/src/requests/create-label-request.ts +0 -3
- package/src/requests/get-rates-request.ts +0 -3
- package/tsconfig.tsbuildinfo +1 -1
- package/lib/app/build-native-rating-routes.d.ts +0 -3
- package/lib/app/build-native-rating-routes.js +0 -105
- package/lib/app/build-native-rating-routes.js.map +0 -1
- package/lib/app/carrier-app.d.ts +0 -15
- package/lib/app/carrier-app.js +0 -166
- package/lib/app/carrier-app.js.map +0 -1
- package/lib/app/create-get-rates-handler.d.ts +0 -4
- package/lib/app/create-get-rates-handler.js +0 -100
- package/lib/app/create-get-rates-handler.js.map +0 -1
- package/lib/app/internal/branded-image.d.ts +0 -9
- package/lib/app/internal/branded-image.js +0 -3
- package/lib/app/internal/branded-image.js.map +0 -1
- package/lib/app/internal/carrier-app-specification.d.ts +0 -16
- package/lib/app/internal/carrier-app-specification.js +0 -3
- package/lib/app/internal/carrier-app-specification.js.map +0 -1
- package/lib/app/internal/carrier-specification.d.ts +0 -38
- package/lib/app/internal/carrier-specification.js +0 -86
- package/lib/app/internal/carrier-specification.js.map +0 -1
- package/lib/app/internal/connect-runtime-app.d.ts +0 -14
- package/lib/app/internal/connect-runtime-app.js +0 -3
- package/lib/app/internal/connect-runtime-app.js.map +0 -1
- package/lib/app/internal/document-template.d.ts +0 -7
- package/lib/app/internal/document-template.js +0 -3
- package/lib/app/internal/document-template.js.map +0 -1
- package/lib/app/internal/index.d.ts +0 -3
- package/lib/app/internal/index.js +0 -7
- package/lib/app/internal/index.js.map +0 -1
- package/lib/app/internal/metadata.d.ts +0 -13
- package/lib/app/internal/metadata.js +0 -64
- package/lib/app/internal/metadata.js.map +0 -1
- package/lib/app/internal/native-rating-specification.d.ts +0 -5
- package/lib/app/internal/native-rating-specification.js +0 -3
- package/lib/app/internal/native-rating-specification.js.map +0 -1
- package/lib/app/internal/route.d.ts +0 -27
- package/lib/app/internal/route.js +0 -12
- package/lib/app/internal/route.js.map +0 -1
- package/lib/app/native-rating/base-rate-context.d.ts +0 -3
- package/lib/app/native-rating/base-rate-context.js +0 -83
- package/lib/app/native-rating/base-rate-context.js.map +0 -1
- package/lib/app/native-rating/context-results.d.ts +0 -3
- package/lib/app/native-rating/context-results.js +0 -3
- package/lib/app/native-rating/context-results.js.map +0 -1
- package/lib/app/native-rating/create-dynamic-carrier.d.ts +0 -7
- package/lib/app/native-rating/create-dynamic-carrier.js +0 -63
- package/lib/app/native-rating/create-dynamic-carrier.js.map +0 -1
- package/lib/app/native-rating/data-validator.js.map +0 -1
- package/lib/app/native-rating/get-rates.d.ts +0 -7
- package/lib/app/native-rating/get-rates.js +0 -3
- package/lib/app/native-rating/get-rates.js.map +0 -1
- package/lib/app/native-rating/get-variables.d.ts +0 -6
- package/lib/app/native-rating/get-variables.js +0 -3
- package/lib/app/native-rating/get-variables.js.map +0 -1
- package/lib/app/native-rating/get-zone.d.ts +0 -6
- package/lib/app/native-rating/get-zone.js +0 -3
- package/lib/app/native-rating/get-zone.js.map +0 -1
- package/lib/app/native-rating/implementation-type.d.ts +0 -31
- package/lib/app/native-rating/implementation-type.js +0 -8
- package/lib/app/native-rating/implementation-type.js.map +0 -1
- package/lib/app/native-rating/index.d.ts +0 -3
- package/lib/app/native-rating/index.js +0 -7
- package/lib/app/native-rating/index.js.map +0 -1
- package/lib/app/native-rating/numeric-currency.d.ts +0 -5
- package/lib/app/native-rating/numeric-currency.js +0 -3
- package/lib/app/native-rating/numeric-currency.js.map +0 -1
- package/lib/app/native-rating/rating-context.d.ts +0 -15
- package/lib/app/native-rating/rating-context.js +0 -3
- package/lib/app/native-rating/rating-context.js.map +0 -1
- package/lib/models/bill-to.d.ts +0 -14
- package/lib/models/bill-to.js +0 -14
- package/lib/models/bill-to.js.map +0 -1
- package/lib/models/billing/billing-to-party.d.ts +0 -10
- package/lib/models/billing/billing-to-party.js +0 -15
- package/lib/models/billing/billing-to-party.js.map +0 -1
- package/lib/models/cod-payment-type.d.ts +0 -9
- package/lib/models/cod-payment-type.js +0 -14
- package/lib/models/cod-payment-type.js.map +0 -1
- package/lib/models/collect-on-delivery.d.ts +0 -9
- package/lib/models/collect-on-delivery.js +0 -8
- package/lib/models/collect-on-delivery.js.map +0 -1
- package/lib/models/importer-records/importer_of_record.js.map +0 -1
- package/src/app/build-native-rating-routes.ts +0 -119
- package/src/app/carrier-app.ts +0 -222
- package/src/app/create-get-rates-handler.ts +0 -128
- package/src/app/internal/README.md +0 -1
- package/src/app/internal/branded-image.ts +0 -9
- package/src/app/internal/carrier-app-specification.ts +0 -17
- package/src/app/internal/carrier-specification.ts +0 -135
- package/src/app/internal/connect-runtime-app.ts +0 -15
- package/src/app/internal/document-template.ts +0 -7
- package/src/app/internal/index.ts +0 -3
- package/src/app/internal/metadata.ts +0 -86
- package/src/app/internal/native-rating-specification.ts +0 -5
- package/src/app/internal/route.ts +0 -31
- package/src/app/native-rating/base-rate-context.ts +0 -101
- package/src/app/native-rating/context-results.ts +0 -3
- package/src/app/native-rating/create-dynamic-carrier.ts +0 -82
- package/src/app/native-rating/get-rates.ts +0 -9
- package/src/app/native-rating/get-variables.ts +0 -8
- package/src/app/native-rating/get-zone.ts +0 -9
- package/src/app/native-rating/implementation-type.ts +0 -34
- package/src/app/native-rating/index.ts +0 -3
- package/src/app/native-rating/numeric-currency.ts +0 -5
- package/src/app/native-rating/rating-context.ts +0 -19
- package/src/models/bill-to.ts +0 -15
- package/src/models/billing/billing-to-party.ts +0 -10
- package/src/models/cod-payment-type.ts +0 -9
- package/src/models/collect-on-delivery.ts +0 -10
- /package/lib/models/importer-records/{importer_of_record.d.ts → importer-of-record.d.ts} +0 -0
- /package/src/models/importer-records/{importer_of_record.ts → importer-of-record.ts} +0 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LabelMessageSchema = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const joi_1 = tslib_1.__importDefault(require("joi"));
|
|
6
|
+
exports.LabelMessageSchema = joi_1.default.object({
|
|
7
|
+
reference1: joi_1.default.string().optional(),
|
|
8
|
+
reference2: joi_1.default.string().optional(),
|
|
9
|
+
reference3: joi_1.default.string().optional(),
|
|
10
|
+
});
|
|
11
|
+
//# sourceMappingURL=label-message-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"label-message-schema.js","sourceRoot":"","sources":["../../../src/models/labels/label-message-schema.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AAET,QAAA,kBAAkB,GAAG,aAAG,CAAC,MAAM,CAAC;IAC3C,UAAU,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,UAAU,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,UAAU,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ShippedPackageSchema = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const joi_1 = tslib_1.__importDefault(require("joi"));
|
|
6
|
+
const identifier_schema_1 = require("../identifier-schema");
|
|
7
|
+
const units_1 = require("../units");
|
|
8
|
+
const currency_schema_1 = require("../currency-schema");
|
|
9
|
+
const dimension_details_schema_1 = require("../units/dimension-details-schema");
|
|
10
|
+
const weight_details_schema_1 = require("../units/weight-details-schema");
|
|
11
|
+
const label_message_schema_1 = require("../labels/label-message-schema");
|
|
12
|
+
const customs_schema_1 = require("../customs/customs-schema");
|
|
13
|
+
exports.ShippedPackageSchema = joi_1.default.object({
|
|
14
|
+
tracking_number: joi_1.default.string().optional(),
|
|
15
|
+
alternative_identifiers: joi_1.default.array().items(identifier_schema_1.IdentifierSchema).optional(),
|
|
16
|
+
dimension_details: dimension_details_schema_1.DimensionDetailsSchema.optional(),
|
|
17
|
+
weight_details: weight_details_schema_1.WeightDetailsSchema.optional(),
|
|
18
|
+
package_code: joi_1.default.string().optional(),
|
|
19
|
+
weight: joi_1.default.number().optional(),
|
|
20
|
+
dimensions: units_1.DimensionsSchema.optional(),
|
|
21
|
+
insured_value: currency_schema_1.CurrencySchema.required(),
|
|
22
|
+
label_messages: label_message_schema_1.LabelMessageSchema.optional(),
|
|
23
|
+
customs: customs_schema_1.CustomsSchema.optional(),
|
|
24
|
+
});
|
|
25
|
+
//# sourceMappingURL=shipped-package-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shipped-package-schema.js","sourceRoot":"","sources":["../../../src/models/pickup/shipped-package-schema.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AACtB,4DAAwD;AACxD,oCAA4C;AAC5C,wDAAoD;AACpD,gFAA2E;AAC3E,0EAAqE;AACrE,yEAAoE;AACpE,8DAA0D;AAE7C,QAAA,oBAAoB,GAAG,aAAG,CAAC,MAAM,CAAC;IAC7C,eAAe,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACxC,uBAAuB,EAAE,aAAG,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,oCAAgB,CAAC,CAAC,QAAQ,EAAE;IACvE,iBAAiB,EAAE,iDAAsB,CAAC,QAAQ,EAAE;IACpD,cAAc,EAAE,2CAAmB,CAAC,QAAQ,EAAE;IAC9C,YAAY,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACrC,MAAM,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,UAAU,EAAE,wBAAgB,CAAC,QAAQ,EAAE;IACvC,aAAa,EAAE,gCAAc,CAAC,QAAQ,EAAE;IACxC,cAAc,EAAE,yCAAkB,CAAC,QAAQ,EAAE;IAC7C,OAAO,EAAE,8BAAa,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PickupShipment = exports.ShippedShipmentSchema = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const joi_1 = tslib_1.__importDefault(require("joi"));
|
|
6
|
+
const models_1 = require("../../models");
|
|
7
|
+
const ship_to_schema_1 = require("../addresses/ship-to-schema");
|
|
8
|
+
const shipped_package_schema_1 = require("./shipped-package-schema");
|
|
9
|
+
const advanced_options_schema_1 = require("../advanced-options-schema");
|
|
10
|
+
const pudo_location_schema_1 = require("../addresses/pudo-location-schema");
|
|
11
|
+
exports.ShippedShipmentSchema = joi_1.default.object({
|
|
12
|
+
tracking_number: joi_1.default.string().optional(),
|
|
13
|
+
ship_to: ship_to_schema_1.ShipToSchema.optional(),
|
|
14
|
+
alternative_identifiers: joi_1.default.array().items(models_1.IdentifierSchema).optional(),
|
|
15
|
+
service_code: joi_1.default.string().optional(),
|
|
16
|
+
packages: joi_1.default.array().items(shipped_package_schema_1.ShippedPackageSchema).optional(),
|
|
17
|
+
advanced_options: advanced_options_schema_1.AdvancedOptionsSchema.optional(),
|
|
18
|
+
pickup_location: pudo_location_schema_1.PudoLocationSchema.optional(),
|
|
19
|
+
});
|
|
20
|
+
exports.PickupShipment = exports.ShippedShipmentSchema;
|
|
21
|
+
//# sourceMappingURL=shipped-shipment-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shipped-shipment-schema.js","sourceRoot":"","sources":["../../../src/models/pickup/shipped-shipment-schema.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AACtB,yCAAgD;AAChD,gEAA2D;AAC3D,qEAAgE;AAChE,wEAAmE;AACnE,4EAAuE;AAE1D,QAAA,qBAAqB,GAAG,aAAG,CAAC,MAAM,CAAC;IAC9C,eAAe,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACxC,OAAO,EAAE,6BAAY,CAAC,QAAQ,EAAE;IAChC,uBAAuB,EAAE,aAAG,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,yBAAgB,CAAC,CAAC,QAAQ,EAAE;IACvE,YAAY,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACrC,QAAQ,EAAE,aAAG,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,6CAAoB,CAAC,CAAC,QAAQ,EAAE;IAC5D,gBAAgB,EAAE,+CAAqB,CAAC,QAAQ,EAAE;IAClD,eAAe,EAAE,yCAAkB,CAAC,QAAQ,EAAE;CAC/C,CAAC,CAAC;AAEU,QAAA,cAAc,GAAG,6BAAqB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TaxIdentifierSchema = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const joi_1 = tslib_1.__importDefault(require("joi"));
|
|
6
|
+
const tax_identifier_type_schema_1 = require("./tax-identifier-type-schema");
|
|
7
|
+
exports.TaxIdentifierSchema = joi_1.default.object({
|
|
8
|
+
id: joi_1.default.string(),
|
|
9
|
+
type: tax_identifier_type_schema_1.TaxIdentifierTypeSchema,
|
|
10
|
+
registration_county: joi_1.default.string().optional(),
|
|
11
|
+
description: joi_1.default.string().optional(),
|
|
12
|
+
});
|
|
13
|
+
//# sourceMappingURL=tax-identifier-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tax-identifier-schema.js","sourceRoot":"","sources":["../../../src/models/taxes/tax-identifier-schema.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AACtB,6EAAuE;AAE1D,QAAA,mBAAmB,GAAG,aAAG,CAAC,MAAM,CAAC;IAC5C,EAAE,EAAE,aAAG,CAAC,MAAM,EAAE;IAChB,IAAI,EAAE,oDAAuB;IAC7B,mBAAmB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5C,WAAW,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACrC,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TaxIdentifierTypeSchema = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const joi_1 = tslib_1.__importDefault(require("joi"));
|
|
6
|
+
const tax_identifier_type_1 = require("./tax-identifier-type");
|
|
7
|
+
exports.TaxIdentifierTypeSchema = joi_1.default.string().valid(...Object.values(tax_identifier_type_1.TaxIdentifierType));
|
|
8
|
+
//# sourceMappingURL=tax-identifier-type-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tax-identifier-type-schema.js","sourceRoot":"","sources":["../../../src/models/taxes/tax-identifier-type-schema.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AACtB,+DAA0D;AAE7C,QAAA,uBAAuB,GAAG,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,uCAAiB,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DimensionDetailsSchema = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const joi_1 = tslib_1.__importDefault(require("joi"));
|
|
6
|
+
const dimensions_schema_1 = require("./dimensions-schema");
|
|
7
|
+
const dimension_unit_schema_1 = require("./dimension-unit-schema");
|
|
8
|
+
exports.DimensionDetailsSchema = joi_1.default.object({
|
|
9
|
+
dimensions_in_centimeters: dimensions_schema_1.DimensionsSchema.optional(),
|
|
10
|
+
dimensions_in_inches: dimensions_schema_1.DimensionsSchema.optional(),
|
|
11
|
+
source_dimensions: dimensions_schema_1.DimensionsSchema.optional(),
|
|
12
|
+
source_dimension_unit: dimension_unit_schema_1.DimensionUnitSchema.required(),
|
|
13
|
+
});
|
|
14
|
+
//# sourceMappingURL=dimension-details-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dimension-details-schema.js","sourceRoot":"","sources":["../../../src/models/units/dimension-details-schema.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AACtB,2DAAuD;AACvD,mEAA8D;AAEjD,QAAA,sBAAsB,GAAG,aAAG,CAAC,MAAM,CAAC;IAC/C,yBAAyB,EAAE,oCAAgB,CAAC,QAAQ,EAAE;IACtD,oBAAoB,EAAE,oCAAgB,CAAC,QAAQ,EAAE;IACjD,iBAAiB,EAAE,oCAAgB,CAAC,QAAQ,EAAE;IAC9C,qBAAqB,EAAE,2CAAmB,CAAC,QAAQ,EAAE;CACtD,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DimensionUnitSchema = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const joi_1 = tslib_1.__importDefault(require("joi"));
|
|
6
|
+
const dimension_unit_1 = require("./dimension-unit");
|
|
7
|
+
exports.DimensionUnitSchema = joi_1.default.string().valid(...Object.values(dimension_unit_1.DimensionUnit));
|
|
8
|
+
//# sourceMappingURL=dimension-unit-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dimension-unit-schema.js","sourceRoot":"","sources":["../../../src/models/units/dimension-unit-schema.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AACtB,qDAAiD;AAEpC,QAAA,mBAAmB,GAAG,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,8BAAa,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WeightDetailsSchema = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const joi_1 = tslib_1.__importDefault(require("joi"));
|
|
6
|
+
const weight_unit_schema_1 = require("./weight-unit-schema");
|
|
7
|
+
exports.WeightDetailsSchema = joi_1.default.object({
|
|
8
|
+
weight_in_ounces: joi_1.default.number().optional,
|
|
9
|
+
weight_in_grams: joi_1.default.number().optional,
|
|
10
|
+
source_weight: joi_1.default.number().optional,
|
|
11
|
+
source_weight_unit: weight_unit_schema_1.WeightUnitSchema.required(),
|
|
12
|
+
});
|
|
13
|
+
//# sourceMappingURL=weight-details-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"weight-details-schema.js","sourceRoot":"","sources":["../../../src/models/units/weight-details-schema.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AACtB,6DAAwD;AAE3C,QAAA,mBAAmB,GAAG,aAAG,CAAC,MAAM,CAAC;IAC5C,gBAAgB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ;IACvC,eAAe,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ;IACtC,aAAa,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ;IACpC,kBAAkB,EAAE,qCAAgB,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WeightUnitSchema = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const joi_1 = tslib_1.__importDefault(require("joi"));
|
|
6
|
+
const weight_unit_1 = require("./weight-unit");
|
|
7
|
+
exports.WeightUnitSchema = joi_1.default.string().valid(...Object.values(weight_unit_1.WeightUnit));
|
|
8
|
+
//# sourceMappingURL=weight-unit-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"weight-unit-schema.js","sourceRoot":"","sources":["../../../src/models/units/weight-unit-schema.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AACtB,+CAA2C;AAE9B,QAAA,gBAAgB,GAAG,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,wBAAU,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseRequestSchema = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const joi_1 = tslib_1.__importDefault(require("joi"));
|
|
6
|
+
const authorization_schema_1 = require("../models/authorization-schema");
|
|
7
|
+
exports.BaseRequestSchema = joi_1.default.object({
|
|
8
|
+
transaction_id: joi_1.default.string().required(),
|
|
9
|
+
authorization: authorization_schema_1.AuthorizationSchema.optional(),
|
|
10
|
+
metadata: joi_1.default.object().pattern(/.*/, [joi_1.default.any()]).optional(),
|
|
11
|
+
});
|
|
12
|
+
//# sourceMappingURL=base-request-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-request-schema.js","sourceRoot":"","sources":["../../src/requests/base-request-schema.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AACtB,yEAAqE;AAExD,QAAA,iBAAiB,GAAG,aAAG,CAAC,MAAM,CAAC;IAC1C,cAAc,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACvC,aAAa,EAAE,0CAAmB,CAAC,QAAQ,EAAE;IAC7C,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,aAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC7D,CAAC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CancelNotificationRequestSchema = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const joi_1 = tslib_1.__importDefault(require("joi"));
|
|
6
|
+
const base_request_schema_1 = require("./base-request-schema");
|
|
7
|
+
const shipped_shipment_schema_1 = require("../models/pickup/shipped-shipment-schema");
|
|
8
|
+
exports.CancelNotificationRequestSchema = base_request_schema_1.BaseRequestSchema.keys({
|
|
9
|
+
notification_id: joi_1.default.string().required(),
|
|
10
|
+
shipment_information: shipped_shipment_schema_1.ShippedShipmentSchema.required(),
|
|
11
|
+
});
|
|
12
|
+
//# sourceMappingURL=cancel-notification-request-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cancel-notification-request-schema.js","sourceRoot":"","sources":["../../src/requests/cancel-notification-request-schema.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AACtB,+DAA0D;AAC1D,sFAAiF;AAEpE,QAAA,+BAA+B,GAAG,uCAAiB,CAAC,IAAI,CAAC;IACpE,eAAe,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACxC,oBAAoB,EAAE,+CAAqB,CAAC,QAAQ,EAAE;CACvD,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BaseRequest } from './base-request';
|
|
2
|
-
import { AdvancedOptions, ConfirmationTypes, FulfillmentPlanDetails, InsuranceProviders, DocumentFormat, LabelLayouts, Package, ReturnLabelDetails, ShipFrom, PudoLocation, ShipFromDisplay, ShipTo, Document, TimeWindow, RelayPointDetails, DisplayScheme, Customs
|
|
2
|
+
import { AdvancedOptions, ConfirmationTypes, FulfillmentPlanDetails, InsuranceProviders, DocumentFormat, LabelLayouts, Package, ReturnLabelDetails, ShipFrom, PudoLocation, ShipFromDisplay, ShipTo, Document, TimeWindow, RelayPointDetails, DisplayScheme, Customs } from '../models';
|
|
3
3
|
/** @description Basic structure for a request to create a label */
|
|
4
4
|
export declare class CreateLabelRequest extends BaseRequest {
|
|
5
5
|
service_code?: string;
|
|
@@ -35,6 +35,4 @@ export declare class CreateLabelRequest extends BaseRequest {
|
|
|
35
35
|
/** @description Display schemes that the label will be returned in. Label is returned by default */
|
|
36
36
|
display_schemes?: DisplayScheme[];
|
|
37
37
|
customs?: Customs;
|
|
38
|
-
/** @description Bill the shipping charges to this entity. If null, it should be assumed the "shipper" is responsible for the shipping charges. */
|
|
39
|
-
bill_shipping_to?: BillTo;
|
|
40
38
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-label-request.js","sourceRoot":"","sources":["../../src/requests/create-label-request.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;
|
|
1
|
+
{"version":3,"file":"create-label-request.js","sourceRoot":"","sources":["../../src/requests/create-label-request.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAqB7C,mEAAmE;AACnE,MAAa,kBAAmB,SAAQ,0BAAW;CAkClD;AAlCD,gDAkCC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BaseRequest } from './base-request';
|
|
2
|
-
import { ConfirmationTypes, AdvancedOptions, InsuranceProviders, Package, Customs, ShipFrom, ShipTo, PudoLocation, FulfillmentPlanDetails, TimeWindow
|
|
2
|
+
import { ConfirmationTypes, AdvancedOptions, InsuranceProviders, Package, Customs, ShipFrom, ShipTo, PudoLocation, FulfillmentPlanDetails, TimeWindow } from '../models';
|
|
3
3
|
import { ShipmentItem } from '../models/shipment-item';
|
|
4
4
|
/** @description Basic structure for a request to get rates */
|
|
5
5
|
export declare class GetRatesRequest extends BaseRequest {
|
|
@@ -21,6 +21,4 @@ export declare class GetRatesRequest extends BaseRequest {
|
|
|
21
21
|
carrier_pickup_window?: TimeWindow;
|
|
22
22
|
/** Items included in the shipment */
|
|
23
23
|
items?: ShipmentItem[];
|
|
24
|
-
/** @description Bill the shipping charges to this entity. If null, it should be assumed the "shipper" is responsible for the shipping charges. */
|
|
25
|
-
bill_shipping_to?: BillTo;
|
|
26
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-rates-request.js","sourceRoot":"","sources":["../../src/requests/get-rates-request.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;
|
|
1
|
+
{"version":3,"file":"get-rates-request.js","sourceRoot":"","sources":["../../src/requests/get-rates-request.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAe7C,8DAA8D;AAC9D,MAAa,eAAgB,SAAQ,0BAAW;CAmB/C;AAnBD,0CAmBC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shipengine/connect-carrier-api",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.0-beta",
|
|
4
4
|
"description": "This is the typescript/javascript definitions for carrier api",
|
|
5
5
|
"homepage": "https://github.com/ShipEngine/connect",
|
|
6
6
|
"main": "./lib/index.js",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"tslib": "^2.5.0"
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {
|
|
47
|
-
"@shipengine/connect-runtime": "^
|
|
47
|
+
"@shipengine/connect-runtime": "^4.0.0-beta",
|
|
48
48
|
"express": "^4.18.2",
|
|
49
49
|
"winston": "^3.8.2"
|
|
50
50
|
}
|
package/spec.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"info": {
|
|
4
4
|
"title": "Shipping API",
|
|
5
5
|
"description": "This API specification describes the canonical ShipEngine Shipping API connector module.",
|
|
6
|
-
"version": "1.17.
|
|
6
|
+
"version": "1.17.1"
|
|
7
7
|
},
|
|
8
8
|
"paths": {
|
|
9
9
|
"/Register": {
|
|
@@ -754,13 +754,6 @@
|
|
|
754
754
|
},
|
|
755
755
|
"description": "Amount to be paid to the driver, used for local delivery and courier services.",
|
|
756
756
|
"nullable": true
|
|
757
|
-
},
|
|
758
|
-
"additional_handling": {
|
|
759
|
-
"type": "boolean",
|
|
760
|
-
"description": "Describes whether Additional Handling is requested for the shipment."
|
|
761
|
-
},
|
|
762
|
-
"collect_on_delivery": {
|
|
763
|
-
"$ref": "#/components/schemas/CollectOnDelivery"
|
|
764
757
|
}
|
|
765
758
|
},
|
|
766
759
|
"additionalProperties": { },
|
|
@@ -1092,47 +1085,6 @@
|
|
|
1092
1085
|
"additionalProperties": false,
|
|
1093
1086
|
"description": "This model represents a response for a successful cancel pickup request."
|
|
1094
1087
|
},
|
|
1095
|
-
"CodPaymentType": {
|
|
1096
|
-
"enum": [
|
|
1097
|
-
"any",
|
|
1098
|
-
"cash",
|
|
1099
|
-
"guaranteed_funds"
|
|
1100
|
-
],
|
|
1101
|
-
"type": "string",
|
|
1102
|
-
"description": "Specifies which payment method is permitted when Collect on Delivery (COD) is requested on a shipment.\r\nany - Any payment method is permitted.\r\ncash - Only cash is permitted.\r\nguaranteed_funds - Only guaranteed funds are permitted, such as a money order or cashier's check."
|
|
1103
|
-
},
|
|
1104
|
-
"CollectOnDelivery": {
|
|
1105
|
-
"required": [
|
|
1106
|
-
"payment_amount"
|
|
1107
|
-
],
|
|
1108
|
-
"type": "object",
|
|
1109
|
-
"properties": {
|
|
1110
|
-
"payment_amount": {
|
|
1111
|
-
"required": [
|
|
1112
|
-
"currency",
|
|
1113
|
-
"amount"
|
|
1114
|
-
],
|
|
1115
|
-
"type": "object",
|
|
1116
|
-
"properties": {
|
|
1117
|
-
"amount": {
|
|
1118
|
-
"type": "string",
|
|
1119
|
-
"description": "Decimal currency value, as a string."
|
|
1120
|
-
},
|
|
1121
|
-
"currency": {
|
|
1122
|
-
"type": "string",
|
|
1123
|
-
"description": "Alpha-3 currency code complying with ISO 4217."
|
|
1124
|
-
}
|
|
1125
|
-
},
|
|
1126
|
-
"description": "The payment amount for Collect on Delivery (COD).",
|
|
1127
|
-
"nullable": true
|
|
1128
|
-
},
|
|
1129
|
-
"payment_type": {
|
|
1130
|
-
"$ref": "#/components/schemas/CodPaymentType"
|
|
1131
|
-
}
|
|
1132
|
-
},
|
|
1133
|
-
"additionalProperties": false,
|
|
1134
|
-
"description": "This model represents the option to defer payment for a shipment, otherwise known as Collect on Delivery (COD)."
|
|
1135
|
-
},
|
|
1136
1088
|
"ConfirmationTypes": {
|
|
1137
1089
|
"enum": [
|
|
1138
1090
|
"None",
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { existsSync } from 'fs';
|
|
2
|
+
import { CarrierAppDefinition } from './carrier-app-definition';
|
|
3
|
+
import { CarrierAppMetadataSchema } from './metadata';
|
|
4
|
+
import { isDataValidationError, validateRatingData } from './native-rating-data-validator';
|
|
5
|
+
import { AppDeployment } from '@shipengine/connect-runtime';
|
|
6
|
+
|
|
7
|
+
// This creates an object that is only used by the Connect CLI
|
|
8
|
+
export const buildAppDeployment = (definition: CarrierAppDefinition): AppDeployment => {
|
|
9
|
+
return {
|
|
10
|
+
id: definition.Metadata.Id,
|
|
11
|
+
getSupportedCountries: () => {
|
|
12
|
+
const countries: (string | undefined)[] = [];
|
|
13
|
+
const rootCountries = definition.Metadata.Carriers.flatMap((c) =>
|
|
14
|
+
c.DefaultSupportedCountries?.flatMap((sc) => sc.FromCountry),
|
|
15
|
+
);
|
|
16
|
+
const serviceCountries = definition.Metadata.Carriers.flatMap((c) =>
|
|
17
|
+
c.ShippingServices?.flatMap((s) => s.SupportedCountries).flatMap((sc) => sc?.FromCountry),
|
|
18
|
+
);
|
|
19
|
+
countries.push(...rootCountries);
|
|
20
|
+
countries.push(...serviceCountries);
|
|
21
|
+
return [...new Set(countries)].filter((c) => c !== undefined) as string[];
|
|
22
|
+
},
|
|
23
|
+
validate: () => {
|
|
24
|
+
const results = CarrierAppMetadataSchema.validate(definition.Metadata, {
|
|
25
|
+
allowUnknown: true,
|
|
26
|
+
abortEarly: false,
|
|
27
|
+
});
|
|
28
|
+
if (results.error) {
|
|
29
|
+
return results.error.details.map((detail) => `${detail.message}`);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
const nativeRatingCarriers = definition.Metadata.Carriers.filter(
|
|
33
|
+
(carrier) =>
|
|
34
|
+
carrier.NativeRating &&
|
|
35
|
+
carrier.NativeRating.Path &&
|
|
36
|
+
existsSync(carrier.NativeRating.Path),
|
|
37
|
+
);
|
|
38
|
+
|
|
39
|
+
const validationErrors = nativeRatingCarriers
|
|
40
|
+
.map(validateRatingData)
|
|
41
|
+
.filter(isDataValidationError)
|
|
42
|
+
.flat();
|
|
43
|
+
if (validationErrors.length > 0) {
|
|
44
|
+
return validationErrors.map(
|
|
45
|
+
(error) => `${error.message} \n Duplicate Keys: ${error.duplicateKeys?.join(', ')}`,
|
|
46
|
+
);
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Method } from '@shipengine/connect-runtime';
|
|
2
|
+
import { ApiEndpoints } from './constants';
|
|
3
|
+
import { CarrierAppDefinition } from './carrier-app-definition';
|
|
4
|
+
|
|
5
|
+
export const createEndpointMapping = (
|
|
6
|
+
definition: CarrierAppDefinition,
|
|
7
|
+
): [Method, ApiEndpoints, ((req: any) => any | Promise<any>) | undefined][] => [
|
|
8
|
+
[Method.POST, ApiEndpoints.CancelNotification, definition.CancelNotification],
|
|
9
|
+
[Method.POST, ApiEndpoints.CancelPickup, definition.CancelPickup],
|
|
10
|
+
[Method.POST, ApiEndpoints.CreateLabel, definition.CreateLabel],
|
|
11
|
+
[Method.POST, ApiEndpoints.CreateManifest, definition.CreateManifest],
|
|
12
|
+
[Method.POST, ApiEndpoints.GetManifest, definition.GetManifest],
|
|
13
|
+
[Method.POST, ApiEndpoints.CreateNotification, definition.CreateNotification],
|
|
14
|
+
[Method.POST, ApiEndpoints.GetRates, definition.GetRates],
|
|
15
|
+
[Method.POST, ApiEndpoints.NormalizeTrackingData, definition.NormalizeTrackingData],
|
|
16
|
+
[Method.POST, ApiEndpoints.Register, definition.Register],
|
|
17
|
+
[Method.POST, ApiEndpoints.SchedulePickup, definition.SchedulePickup],
|
|
18
|
+
[Method.POST, ApiEndpoints.Track, definition.Track],
|
|
19
|
+
[Method.POST, ApiEndpoints.ValidateInboundData, definition.ValidateInboundData],
|
|
20
|
+
[Method.POST, ApiEndpoints.VoidLabels, definition.VoidLabels],
|
|
21
|
+
[Method.POST, ApiEndpoints.GetRelayPoints, definition.GetRelayPoints],
|
|
22
|
+
[Method.POST, ApiEndpoints.GetServicePoints, definition.GetServicePoints],
|
|
23
|
+
[Method.POST, ApiEndpoints.GetServicePoint, definition.GetServicePoint],
|
|
24
|
+
[Method.POST, ApiEndpoints.ImportTrackingEvents, definition.ImportTrackingEvents],
|
|
25
|
+
];
|
package/src/app/index.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
export * from './build-app-deployment';
|
|
2
|
+
export * from './constants';
|
|
1
3
|
export * from './metadata';
|
|
2
4
|
export * from './carrier-app-definition';
|
|
3
|
-
export * from './
|
|
4
|
-
export * from './native-rating';
|
|
5
|
+
export * from './create-endpoint-mapping';
|
|
6
|
+
export * from './native-rating-data-validator';
|
|
@@ -12,7 +12,9 @@ export * from './function';
|
|
|
12
12
|
export * from './label-formats';
|
|
13
13
|
export * from './label-sizes';
|
|
14
14
|
export * from './monoauth';
|
|
15
|
+
export * from './native-rating-configuration';
|
|
15
16
|
export * from './package-type';
|
|
17
|
+
export * from './rate-card';
|
|
16
18
|
export * from './service-class';
|
|
17
19
|
export * from './service-grade';
|
|
18
20
|
export * from './service-required-properties';
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { AddressResidentialIndicatorSchema } from './address-residential-indicator-schema';
|
|
3
|
+
|
|
4
|
+
export const AddressBaseSchema = Joi.object({
|
|
5
|
+
name: Joi.string().optional(),
|
|
6
|
+
first_name: Joi.string().optional(),
|
|
7
|
+
last_name: Joi.string().optional(),
|
|
8
|
+
email: Joi.string().optional(),
|
|
9
|
+
phone_number: Joi.string().optional(),
|
|
10
|
+
company_name: Joi.string().optional(),
|
|
11
|
+
address_lines: Joi.array().items(Joi.string()).optional(),
|
|
12
|
+
city_locality: Joi.string().optional(),
|
|
13
|
+
state_province: Joi.string().optional(),
|
|
14
|
+
postal_code: Joi.string(),
|
|
15
|
+
country_code: Joi.string(),
|
|
16
|
+
address_residential_indicator: AddressResidentialIndicatorSchema.optional(),
|
|
17
|
+
is_eu: Joi.boolean().optional(),
|
|
18
|
+
address_metadata: Joi.object().pattern(/.*/, [Joi.string()]).optional(),
|
|
19
|
+
instructions: Joi.string().optional(),
|
|
20
|
+
});
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { AddressBaseSchema } from './address-base-schema';
|
|
3
|
+
import { TaxIdentifierSchema } from '../taxes/tax-identifier-schema';
|
|
4
|
+
|
|
5
|
+
export const ShipToSchema = AddressBaseSchema.keys({
|
|
6
|
+
tax_identifiers: Joi.array().items(TaxIdentifierSchema).optional(),
|
|
7
|
+
});
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { CurrencySchema } from './currency-schema';
|
|
3
|
+
|
|
4
|
+
export const AdvancedOptionsSchema = Joi.object({
|
|
5
|
+
contains_alcohol: Joi.boolean().optional(),
|
|
6
|
+
no_postage: Joi.boolean().optional(),
|
|
7
|
+
nonmachineable: Joi.boolean().optional(),
|
|
8
|
+
bill_duties_to_sender: Joi.boolean().optional(),
|
|
9
|
+
saturday_delivery: Joi.boolean().optional(),
|
|
10
|
+
tip: CurrencySchema.optional(),
|
|
11
|
+
}).pattern(/.*/, Joi.any());
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { CollectOnDelivery } from './collect-on-delivery';
|
|
2
1
|
import { Currency } from './currency';
|
|
3
2
|
|
|
4
3
|
/** @description Basic structure for shipping options */
|
|
@@ -15,10 +14,6 @@ export class AdvancedOptions {
|
|
|
15
14
|
saturday_delivery?: boolean;
|
|
16
15
|
/** @description Amount to be paid to the driver, used for local delivery and courier services */
|
|
17
16
|
tip?: Currency;
|
|
18
|
-
/** @description Describes whether Additional Handling is requested for the shipment */
|
|
19
|
-
additional_handling?: boolean;
|
|
20
|
-
/** @description Describes details for Collect on Delivery (COD) if requested for the shipment */
|
|
21
|
-
collect_on_delivery?: CollectOnDelivery;
|
|
22
17
|
/** @description Any other custom shipping options */
|
|
23
18
|
[key: string]: any;
|
|
24
19
|
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { CurrencySchema } from '../currency-schema';
|
|
3
|
+
|
|
4
|
+
export const CustomsChargesSchema = Joi.object({
|
|
5
|
+
freight_charge: CurrencySchema.optional(),
|
|
6
|
+
other_charge: CurrencySchema.optional(),
|
|
7
|
+
insurance_charge: CurrencySchema.optional(),
|
|
8
|
+
discount: CurrencySchema.optional(),
|
|
9
|
+
});
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { CurrencySchema } from '../currency-schema';
|
|
3
|
+
import { WeightDetailsSchema } from '../units/weight-details-schema';
|
|
4
|
+
|
|
5
|
+
export const CustomsItemSchema = Joi.object({
|
|
6
|
+
description: Joi.string().optional(),
|
|
7
|
+
quantity: Joi.number().optional(),
|
|
8
|
+
value: CurrencySchema.optional(),
|
|
9
|
+
country_of_origin: Joi.string().optional(),
|
|
10
|
+
harmonized_tariff_code: Joi.string().optional(),
|
|
11
|
+
sku: Joi.string().optional(),
|
|
12
|
+
sku_description: Joi.string().optional(),
|
|
13
|
+
item_weight: WeightDetailsSchema.optional(),
|
|
14
|
+
product_url: Joi.string().optional(),
|
|
15
|
+
vat_rate: Joi.number().optional(),
|
|
16
|
+
mid_code: Joi.string().optional(),
|
|
17
|
+
});
|