@shipengine/connect-carrier-api 4.8.6 → 4.8.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/lib/app/metadata/shipping-option.d.ts +2 -1
  2. package/lib/app/metadata/shipping-option.js +1 -0
  3. package/lib/app/metadata/shipping-option.js.map +1 -1
  4. package/lib/models/service-points/day-of-operation-schema.d.ts +2 -0
  5. package/lib/models/service-points/day-of-operation-schema.js +10 -0
  6. package/lib/models/service-points/day-of-operation-schema.js.map +1 -0
  7. package/lib/models/service-points/day-of-operation.d.ts +7 -0
  8. package/lib/models/service-points/day-of-operation.js +12 -0
  9. package/lib/models/service-points/day-of-operation.js.map +1 -0
  10. package/lib/models/service-points/service-point.d.ts +6 -0
  11. package/lib/models/service-points/service-point.js +4 -0
  12. package/lib/models/service-points/service-point.js.map +1 -1
  13. package/lib/models/service-points/special-opening-time-schema.d.ts +2 -0
  14. package/lib/models/service-points/special-opening-time-schema.js +12 -0
  15. package/lib/models/service-points/special-opening-time-schema.js.map +1 -0
  16. package/lib/models/service-points/special-opening-time.d.ts +10 -0
  17. package/lib/models/service-points/special-opening-time.js +14 -0
  18. package/lib/models/service-points/special-opening-time.js.map +1 -0
  19. package/package.json +1 -1
  20. package/spec.json +87 -3
  21. package/src/app/metadata/shipping-option.ts +1 -0
  22. package/src/models/service-points/day-of-operation-schema.ts +6 -0
  23. package/src/models/service-points/day-of-operation.ts +7 -0
  24. package/src/models/service-points/service-point.ts +6 -0
  25. package/src/models/service-points/special-opening-time-schema.ts +8 -0
  26. package/src/models/service-points/special-opening-time.ts +11 -0
  27. package/tsconfig.tsbuildinfo +1 -1
@@ -38,6 +38,7 @@ export declare enum ShippingOptionEnum {
38
38
  SmsNotification = "sms-notification",
39
39
  SpecialHandling = "special-handling",
40
40
  ThirdPartyConsignee = "third-party-consignee",
41
- CarrierInsurance = "carrier-insurance"
41
+ CarrierInsurance = "carrier-insurance",
42
+ WindsorFrameworkDetails = "windsor_framework_details"
42
43
  }
43
44
  export declare const ShippingOptionDictionarySchema: Joi.ObjectSchema<any>;
@@ -35,6 +35,7 @@ var ShippingOptionEnum;
35
35
  ShippingOptionEnum["SpecialHandling"] = "special-handling";
36
36
  ShippingOptionEnum["ThirdPartyConsignee"] = "third-party-consignee";
37
37
  ShippingOptionEnum["CarrierInsurance"] = "carrier-insurance";
38
+ ShippingOptionEnum["WindsorFrameworkDetails"] = "windsor_framework_details";
38
39
  })(ShippingOptionEnum || (exports.ShippingOptionEnum = ShippingOptionEnum = {}));
39
40
  exports.ShippingOptionDictionarySchema = joi_1.default.object(Object.values(ShippingOptionEnum).reduce((accumulator, option) => {
40
41
  accumulator[option] = exports.ShippingOptionDescriptionSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"shipping-option.js","sourceRoot":"","sources":["../../../src/app/metadata/shipping-option.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AAYT,QAAA,+BAA+B,GAAG,aAAG,CAAC,MAAM,CAAC;IACxD,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;IACrC,WAAW,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC;CAC9C,CAAC,CAAC,QAAQ,EAAE,CAAC;AAEd,IAAY,kBA2BX;AA3BD,WAAY,kBAAkB;IAC5B,iDAA2B,CAAA;IAC3B,gDAA0B,CAAA;IAC1B,qDAA+B,CAAA;IAC/B,8DAAwC,CAAA;IACxC,+DAAyC,CAAA;IACzC,8DAAwC,CAAA;IACxC,wDAAkC,CAAA;IAClC,0DAAoC,CAAA;IACpC,+DAAyC,CAAA;IACzC,wCAAkB,CAAA;IAClB,8DAAwC,CAAA;IACxC,oDAA8B,CAAA;IAC9B,uDAAiC,CAAA;IACjC,iEAA2C,CAAA;IAC3C,oDAA8B,CAAA;IAC9B,sDAAgC,CAAA;IAChC,4DAAsC,CAAA;IACtC,4DAAsC,CAAA;IACtC,wEAAkD,CAAA;IAClD,6CAAuB,CAAA;IACvB,4DAAsC,CAAA;IACtC,8DAAwC,CAAA;IACxC,0DAAoC,CAAA;IACpC,0DAAoC,CAAA;IACpC,mEAA6C,CAAA;IAC7C,4DAAsC,CAAA;AACxC,CAAC,EA3BW,kBAAkB,kCAAlB,kBAAkB,QA2B7B;AAEY,QAAA,8BAA8B,GAAG,aAAG,CAAC,MAAM,CACtD,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,WAAgB,EAAE,MAAM,EAAE,EAAE;IACpE,WAAW,CAAC,MAAM,CAAC,GAAG,uCAA+B,CAAC;IACtD,OAAO,WAAW,CAAC;AACrB,CAAC,EAAE,EAAE,CAAC,CACP,CAAC"}
1
+ {"version":3,"file":"shipping-option.js","sourceRoot":"","sources":["../../../src/app/metadata/shipping-option.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AAYT,QAAA,+BAA+B,GAAG,aAAG,CAAC,MAAM,CAAC;IACxD,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;IACrC,WAAW,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC;CAC9C,CAAC,CAAC,QAAQ,EAAE,CAAC;AAEd,IAAY,kBA4BX;AA5BD,WAAY,kBAAkB;IAC5B,iDAA2B,CAAA;IAC3B,gDAA0B,CAAA;IAC1B,qDAA+B,CAAA;IAC/B,8DAAwC,CAAA;IACxC,+DAAyC,CAAA;IACzC,8DAAwC,CAAA;IACxC,wDAAkC,CAAA;IAClC,0DAAoC,CAAA;IACpC,+DAAyC,CAAA;IACzC,wCAAkB,CAAA;IAClB,8DAAwC,CAAA;IACxC,oDAA8B,CAAA;IAC9B,uDAAiC,CAAA;IACjC,iEAA2C,CAAA;IAC3C,oDAA8B,CAAA;IAC9B,sDAAgC,CAAA;IAChC,4DAAsC,CAAA;IACtC,4DAAsC,CAAA;IACtC,wEAAkD,CAAA;IAClD,6CAAuB,CAAA;IACvB,4DAAsC,CAAA;IACtC,8DAAwC,CAAA;IACxC,0DAAoC,CAAA;IACpC,0DAAoC,CAAA;IACpC,mEAA6C,CAAA;IAC7C,4DAAsC,CAAA;IACtC,2EAAqD,CAAA;AACvD,CAAC,EA5BW,kBAAkB,kCAAlB,kBAAkB,QA4B7B;AAEY,QAAA,8BAA8B,GAAG,aAAG,CAAC,MAAM,CACtD,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,WAAgB,EAAE,MAAM,EAAE,EAAE;IACpE,WAAW,CAAC,MAAM,CAAC,GAAG,uCAA+B,CAAC;IACtD,OAAO,WAAW,CAAC;AACrB,CAAC,EAAE,EAAE,CAAC,CACP,CAAC"}
@@ -0,0 +1,2 @@
1
+ import Joi from 'joi';
2
+ export declare const DayOfOperationSchema: Joi.ObjectSchema<any>;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DayOfOperationSchema = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const joi_1 = tslib_1.__importDefault(require("joi"));
6
+ exports.DayOfOperationSchema = joi_1.default.object({
7
+ start: joi_1.default.string().optional().empty(),
8
+ end: joi_1.default.string().optional().empty(),
9
+ });
10
+ //# sourceMappingURL=day-of-operation-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"day-of-operation-schema.js","sourceRoot":"","sources":["../../../src/models/service-points/day-of-operation-schema.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AAET,QAAA,oBAAoB,GAAG,aAAG,CAAC,MAAM,CAAC;IAC7C,KAAK,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE;IACtC,GAAG,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE;CACrC,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ /** @description Indicates a specific date window that a service point is open */
2
+ export declare class DayOfOperation {
3
+ /** @description The starting day expressed in ISO 8601 date(yyyy-mm-dd) only format */
4
+ start?: string;
5
+ /** @description The close time expressed in ISO 8601 date(yyyy-mm-dd) only format */
6
+ end?: string;
7
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DayOfOperation = void 0;
4
+ /** @description Indicates a specific date window that a service point is open */
5
+ class DayOfOperation {
6
+ /** @description The starting day expressed in ISO 8601 date(yyyy-mm-dd) only format */
7
+ start;
8
+ /** @description The close time expressed in ISO 8601 date(yyyy-mm-dd) only format */
9
+ end;
10
+ }
11
+ exports.DayOfOperation = DayOfOperation;
12
+ //# sourceMappingURL=day-of-operation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"day-of-operation.js","sourceRoot":"","sources":["../../../src/models/service-points/day-of-operation.ts"],"names":[],"mappings":";;;AAAA,iFAAiF;AACjF,MAAa,cAAc;IACzB,uFAAuF;IACvF,KAAK,CAAU;IACf,qFAAqF;IACrF,GAAG,CAAU;CACd;AALD,wCAKC"}
@@ -2,6 +2,8 @@ import { ServicePointFeaturesEnum } from '../../app/metadata/service-point-featu
2
2
  import { ServicePointLocationTypeEnum } from '../../app/metadata/service-point-location-type';
3
3
  import { ServicePointResponseAddress } from './service-point-response-address';
4
4
  import { WeeklyHoursOfOperation } from './weekly-hours-of-operation';
5
+ import { DayOfOperation } from './day-of-operation';
6
+ import { SpecialOpeningTime } from './special-opening-time';
5
7
  /** @description Basic structure for a service point */
6
8
  export declare class ServicePoint {
7
9
  /** @description The identifier for the carrier's service point */
@@ -12,6 +14,10 @@ export declare class ServicePoint {
12
14
  hours_of_operation: WeeklyHoursOfOperation;
13
15
  /** @description Features supported by the service point */
14
16
  features?: ServicePointFeaturesEnum[];
17
+ /** @description Temporary closures days */
18
+ temporary_closures?: DayOfOperation[];
19
+ /** @description Special opening times */
20
+ special_opening_times?: SpecialOpeningTime[];
15
21
  /** @description Location type like PUDOs, parcelshops, postoffices, lockers, retailers own stores etc. */
16
22
  type?: ServicePointLocationTypeEnum;
17
23
  }
@@ -11,6 +11,10 @@ class ServicePoint {
11
11
  hours_of_operation;
12
12
  /** @description Features supported by the service point */
13
13
  features;
14
+ /** @description Temporary closures days */
15
+ temporary_closures;
16
+ /** @description Special opening times */
17
+ special_opening_times;
14
18
  /** @description Location type like PUDOs, parcelshops, postoffices, lockers, retailers own stores etc. */
15
19
  type;
16
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"service-point.js","sourceRoot":"","sources":["../../../src/models/service-points/service-point.ts"],"names":[],"mappings":";;;AAKA,uDAAuD;AACvD,MAAa,YAAY;IACvB,kEAAkE;IAClE,gBAAgB,CAAU;IAC1B,kEAAkE;IAClE,OAAO,CAA+B;IACtC,mEAAmE;IACnE,kBAAkB,CAA0B;IAC5C,2DAA2D;IAC3D,QAAQ,CAA8B;IACtC,0GAA0G;IAC1G,IAAI,CAAgC;CACrC;AAXD,oCAWC"}
1
+ {"version":3,"file":"service-point.js","sourceRoot":"","sources":["../../../src/models/service-points/service-point.ts"],"names":[],"mappings":";;;AAOA,uDAAuD;AACvD,MAAa,YAAY;IACvB,kEAAkE;IAClE,gBAAgB,CAAU;IAC1B,kEAAkE;IAClE,OAAO,CAA+B;IACtC,mEAAmE;IACnE,kBAAkB,CAA0B;IAC5C,2DAA2D;IAC3D,QAAQ,CAA8B;IACtC,2CAA2C;IAC3C,kBAAkB,CAAoB;IACtC,yCAAyC;IACzC,qBAAqB,CAAwB;IAC7C,0GAA0G;IAC1G,IAAI,CAAgC;CACrC;AAfD,oCAeC"}
@@ -0,0 +1,2 @@
1
+ import Joi from 'joi';
2
+ export declare const SpecialOpeningTimeSchema: Joi.ObjectSchema<any>;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SpecialOpeningTimeSchema = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const joi_1 = tslib_1.__importDefault(require("joi"));
6
+ const hours_of_operation_schema_1 = require("./hours-of-operation-schema");
7
+ exports.SpecialOpeningTimeSchema = joi_1.default.object({
8
+ start: joi_1.default.string().optional().empty(),
9
+ end: joi_1.default.string().optional().empty(),
10
+ hours_of_operation: hours_of_operation_schema_1.HoursOfOperationSchema.optional(),
11
+ });
12
+ //# sourceMappingURL=special-opening-time-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"special-opening-time-schema.js","sourceRoot":"","sources":["../../../src/models/service-points/special-opening-time-schema.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AACtB,2EAAqE;AAExD,QAAA,wBAAwB,GAAG,aAAG,CAAC,MAAM,CAAC;IACjD,KAAK,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE;IACtC,GAAG,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE;IACpC,kBAAkB,EAAE,kDAAsB,CAAC,QAAQ,EAAE;CACtD,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { HoursOfOperation } from './hours-of-operation';
2
+ /** @description Indicates a specific date window that a service point is open with opening hours */
3
+ export declare class SpecialOpeningTime {
4
+ /** @description The starting day expressed in ISO 8601 date(yyyy-mm-dd) only format */
5
+ start?: string;
6
+ /** @description The close time expressed in ISO 8601 date(yyyy-mm-dd) only format */
7
+ end?: string;
8
+ /** @description The opening hours */
9
+ hours_of_operation?: HoursOfOperation[];
10
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SpecialOpeningTime = void 0;
4
+ /** @description Indicates a specific date window that a service point is open with opening hours */
5
+ class SpecialOpeningTime {
6
+ /** @description The starting day expressed in ISO 8601 date(yyyy-mm-dd) only format */
7
+ start;
8
+ /** @description The close time expressed in ISO 8601 date(yyyy-mm-dd) only format */
9
+ end;
10
+ /** @description The opening hours */
11
+ hours_of_operation;
12
+ }
13
+ exports.SpecialOpeningTime = SpecialOpeningTime;
14
+ //# sourceMappingURL=special-opening-time.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"special-opening-time.js","sourceRoot":"","sources":["../../../src/models/service-points/special-opening-time.ts"],"names":[],"mappings":";;;AAEA,oGAAoG;AACpG,MAAa,kBAAkB;IAC7B,uFAAuF;IACvF,KAAK,CAAU;IACf,qFAAqF;IACrF,GAAG,CAAU;IACb,qCAAqC;IACrC,kBAAkB,CAAsB;CACzC;AAPD,gDAOC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shipengine/connect-carrier-api",
3
- "version": "4.8.6",
3
+ "version": "4.8.8",
4
4
  "description": "This is the typescript/javascript definitions for carrier api",
5
5
  "homepage": "https://connect.shipengine.com",
6
6
  "main": "./lib/index.js",
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.22.1"
6
+ "version": "1.22.3"
7
7
  },
8
8
  "paths": {
9
9
  "/Register": {
@@ -844,6 +844,9 @@
844
844
  "event_notification": {
845
845
  "type": "boolean",
846
846
  "description": "Indicates whether the recipient should be notified of events related to the shipment."
847
+ },
848
+ "windsor_framework_details": {
849
+ "$ref": "#/components/schemas/WindsorFrameworkDetails"
847
850
  }
848
851
  },
849
852
  "additionalProperties": { },
@@ -2041,6 +2044,24 @@
2041
2044
  "additionalProperties": false,
2042
2045
  "description": "This model represents contact information regarding dangerous goods"
2043
2046
  },
2047
+ "DayOfOperation": {
2048
+ "type": "object",
2049
+ "properties": {
2050
+ "start": {
2051
+ "type": "string",
2052
+ "description": "The start date expressed in ISO 8601 date only format",
2053
+ "nullable": true,
2054
+ "example": "2024-01-25"
2055
+ },
2056
+ "end": {
2057
+ "type": "string",
2058
+ "description": "The end date expressed in ISO 8601 date only format",
2059
+ "nullable": true,
2060
+ "example": "2024-01-27"
2061
+ }
2062
+ },
2063
+ "additionalProperties": false
2064
+ },
2044
2065
  "DimensionDetails": {
2045
2066
  "type": "object",
2046
2067
  "properties": {
@@ -2950,6 +2971,15 @@
2950
2971
  ],
2951
2972
  "type": "string"
2952
2973
  },
2974
+ "MovementIndicator": {
2975
+ "enum": [
2976
+ "b2c",
2977
+ "b2b",
2978
+ "c2c",
2979
+ "c2b"
2980
+ ],
2981
+ "type": "string"
2982
+ },
2953
2983
  "NormalizeTrackingDataRequest": {
2954
2984
  "required": [
2955
2985
  "transaction_id"
@@ -3832,6 +3862,20 @@
3832
3862
  },
3833
3863
  "nullable": true
3834
3864
  },
3865
+ "temporary_closures": {
3866
+ "type": "array",
3867
+ "items": {
3868
+ "$ref": "#/components/schemas/DayOfOperation"
3869
+ },
3870
+ "nullable": true
3871
+ },
3872
+ "special_opening_times": {
3873
+ "type": "array",
3874
+ "items": {
3875
+ "$ref": "#/components/schemas/SpecialOpeningTime"
3876
+ },
3877
+ "nullable": true
3878
+ },
3835
3879
  "type": {
3836
3880
  "$ref": "#/components/schemas/ServicePointLocationType"
3837
3881
  }
@@ -4198,6 +4242,32 @@
4198
4242
  "additionalProperties": false,
4199
4243
  "description": "This model represents a shipment that has already been shipped, and contains\r\nsummary information about the shipment."
4200
4244
  },
4245
+ "SpecialOpeningTime": {
4246
+ "type": "object",
4247
+ "properties": {
4248
+ "start": {
4249
+ "type": "string",
4250
+ "description": "The start date expressed in ISO 8601 date only format",
4251
+ "nullable": true,
4252
+ "example": "2024-01-25"
4253
+ },
4254
+ "end": {
4255
+ "type": "string",
4256
+ "description": "The end date expressed in ISO 8601 date only format",
4257
+ "nullable": true,
4258
+ "example": "2024-01-27"
4259
+ },
4260
+ "hours_of_operation": {
4261
+ "type": "array",
4262
+ "items": {
4263
+ "$ref": "#/components/schemas/HoursOfOperation"
4264
+ },
4265
+ "description": "The opening hours",
4266
+ "nullable": true
4267
+ }
4268
+ },
4269
+ "additionalProperties": false
4270
+ },
4201
4271
  "StandardizedStatusCodes": {
4202
4272
  "enum": [
4203
4273
  "UN",
@@ -4229,7 +4299,8 @@
4229
4299
  "nif",
4230
4300
  "inn",
4231
4301
  "cpf",
4232
- "cnpj"
4302
+ "cnpj",
4303
+ "ukims"
4233
4304
  ],
4234
4305
  "type": "string",
4235
4306
  "description": "Specifies the supported tax identification types."
@@ -4932,6 +5003,19 @@
4932
5003
  ],
4933
5004
  "type": "string",
4934
5005
  "description": "This model describes the possible units of weight."
5006
+ },
5007
+ "WindsorFrameworkDetails": {
5008
+ "type": "object",
5009
+ "properties": {
5010
+ "movement_indicator": {
5011
+ "$ref": "#/components/schemas/MovementIndicator"
5012
+ },
5013
+ "not_at_risk": {
5014
+ "type": "boolean",
5015
+ "description": "Indicates whether the shipment is at risk of entering EU territory or eligible for green lane due to zero duty rate for UK origin shipment."
5016
+ }
5017
+ },
5018
+ "additionalProperties": false
4935
5019
  }
4936
5020
  }
4937
5021
  },
@@ -4981,4 +5065,4 @@
4981
5065
  "description": "Given inbound data, such as a webhook with tracking updates, return normalized information."
4982
5066
  }
4983
5067
  ]
4984
- }
5068
+ }
@@ -42,6 +42,7 @@ export enum ShippingOptionEnum {
42
42
  SpecialHandling = 'special-handling',
43
43
  ThirdPartyConsignee = 'third-party-consignee',
44
44
  CarrierInsurance = 'carrier-insurance',
45
+ WindsorFrameworkDetails = 'windsor_framework_details',
45
46
  }
46
47
 
47
48
  export const ShippingOptionDictionarySchema = Joi.object(
@@ -0,0 +1,6 @@
1
+ import Joi from 'joi';
2
+
3
+ export const DayOfOperationSchema = Joi.object({
4
+ start: Joi.string().optional().empty(),
5
+ end: Joi.string().optional().empty(),
6
+ });
@@ -0,0 +1,7 @@
1
+ /** @description Indicates a specific date window that a service point is open */
2
+ export class DayOfOperation {
3
+ /** @description The starting day expressed in ISO 8601 date(yyyy-mm-dd) only format */
4
+ start?: string;
5
+ /** @description The close time expressed in ISO 8601 date(yyyy-mm-dd) only format */
6
+ end?: string;
7
+ }
@@ -2,6 +2,8 @@ import { ServicePointFeaturesEnum } from '../../app/metadata/service-point-featu
2
2
  import { ServicePointLocationTypeEnum } from '../../app/metadata/service-point-location-type';
3
3
  import { ServicePointResponseAddress } from './service-point-response-address';
4
4
  import { WeeklyHoursOfOperation } from './weekly-hours-of-operation';
5
+ import { DayOfOperation } from './day-of-operation';
6
+ import { SpecialOpeningTime } from './special-opening-time';
5
7
 
6
8
  /** @description Basic structure for a service point */
7
9
  export class ServicePoint {
@@ -13,6 +15,10 @@ export class ServicePoint {
13
15
  hours_of_operation!: WeeklyHoursOfOperation;
14
16
  /** @description Features supported by the service point */
15
17
  features?: ServicePointFeaturesEnum[];
18
+ /** @description Temporary closures days */
19
+ temporary_closures?: DayOfOperation[];
20
+ /** @description Special opening times */
21
+ special_opening_times?: SpecialOpeningTime[];
16
22
  /** @description Location type like PUDOs, parcelshops, postoffices, lockers, retailers own stores etc. */
17
23
  type?: ServicePointLocationTypeEnum;
18
24
  }
@@ -0,0 +1,8 @@
1
+ import Joi from 'joi';
2
+ import { HoursOfOperationSchema } from './hours-of-operation-schema';
3
+
4
+ export const SpecialOpeningTimeSchema = Joi.object({
5
+ start: Joi.string().optional().empty(),
6
+ end: Joi.string().optional().empty(),
7
+ hours_of_operation: HoursOfOperationSchema.optional(),
8
+ });
@@ -0,0 +1,11 @@
1
+ import { HoursOfOperation } from './hours-of-operation';
2
+
3
+ /** @description Indicates a specific date window that a service point is open with opening hours */
4
+ export class SpecialOpeningTime {
5
+ /** @description The starting day expressed in ISO 8601 date(yyyy-mm-dd) only format */
6
+ start?: string;
7
+ /** @description The close time expressed in ISO 8601 date(yyyy-mm-dd) only format */
8
+ end?: string;
9
+ /** @description The opening hours */
10
+ hours_of_operation?: HoursOfOperation[];
11
+ }