@gomeddo/sdk
Advanced tools
Comparing version 0.0.7 to 0.0.8
@@ -14,2 +14,4 @@ import { Environment } from '../index'; | ||
import { SFResource } from '../s-objects/resource'; | ||
import TimeSlotRequestBody from './request-bodies/timeslots-request-body'; | ||
import { ReservationTimeSlot } from '../time-slots/reservation-time-slot'; | ||
export default class GoMeddoAPI { | ||
@@ -29,2 +31,4 @@ private readonly baseUrl; | ||
findAvailableDimensionIds(requestBody: FindAvailableIdsRequest): Promise<string[]>; | ||
getReservationContacts(reservationId: string | null, fields: Set<string>): Promise<CustomSFSObject[]>; | ||
getTimeSlots(requestBody: TimeSlotRequestBody): Promise<ReservationTimeSlot[]>; | ||
private getHeaders; | ||
@@ -31,0 +35,0 @@ private addFieldsToUrl; |
@@ -17,2 +17,3 @@ "use strict"; | ||
const reservation_search_body_1 = require("./request-bodies/reservation-search-body"); | ||
const reservation_time_slot_1 = require("../time-slots/reservation-time-slot"); | ||
class GoMeddoAPI { | ||
@@ -153,2 +154,35 @@ constructor(apiKey, environment) { | ||
} | ||
getReservationContacts(reservationId, fields) { | ||
return __awaiter(this, void 0, void 0, function* () { | ||
const url = new URL('B25/v1/reservation-contacts', this.baseUrl); | ||
if (reservationId !== null) { | ||
url.searchParams.append('reservationId', reservationId); | ||
} | ||
this.addFieldsToUrl(url, fields); | ||
const response = yield fetch(url.href, { | ||
method: 'GET', | ||
headers: this.getHeaders() | ||
}); | ||
yield this.checkResponse(response); | ||
return yield response.json(); | ||
}); | ||
} | ||
getTimeSlots(requestBody) { | ||
return __awaiter(this, void 0, void 0, function* () { | ||
const url = new URL('B25/v1/timeSlots', this.baseUrl); | ||
const response = yield fetch(url.href, { | ||
method: 'POST', | ||
body: JSON.stringify(requestBody), | ||
headers: this.getHeaders() | ||
}); | ||
yield this.checkResponse(response); | ||
const data = yield response.json(); | ||
if (data.timeSlots === undefined) { | ||
return []; | ||
} | ||
return data.timeSlots.map((slot) => { | ||
return new reservation_time_slot_1.ReservationTimeSlot(new Date(slot.startDatetime), new Date(slot.endDatetime), slot.reservations, requestBody); | ||
}); | ||
}); | ||
} | ||
getHeaders() { | ||
@@ -155,0 +189,0 @@ return { |
import ResourceRequest from './resource-request'; | ||
import ReservationRequest from './reservation-request'; | ||
import TimeSlotsRequest from './timeslots-request'; | ||
import ResourceResult from './resource-result'; | ||
import ReservationResult from './reservation-result'; | ||
import ReservationContactsRequest from './reservation-contacts-request'; | ||
import TimeSlotsResult from './timeslots-result'; | ||
import Contact from './s-objects/contact'; | ||
@@ -15,2 +18,3 @@ import Lead from './s-objects/lead'; | ||
import { ServiceTimeSlot } from './time-slots/service-time-slot'; | ||
import { ReservationTimeSlot } from './time-slots/reservation-time-slot'; | ||
import { Condition, AndCondition, OrCondition, Operator } from './filters/conditions'; | ||
@@ -56,2 +60,16 @@ import DimensionRecordRequest from './dimension-record-request'; | ||
/** | ||
* Creates a new request for Reservation Contacts. The request can then be specified using methods on the Reservation Contacts request. | ||
* | ||
* @returns new Reservation Contacts request using the authentication from this GoMeddo instance | ||
*/ | ||
buildReservationContactsRequest(): ReservationContactsRequest; | ||
/** | ||
* Creates a new request to fetch TimeSlots. The request can then be specified using methods on the TimeSlots request. | ||
* | ||
* @param startDatetime The start of the range to fetch timeslots (in UTC/GMT time). | ||
* @param endDatetime The end of the range to fetch timeslots (in UTC/GMT time). | ||
* @returns new TimeSlots request using the authentication from this GoMeddo instance | ||
*/ | ||
buildTimeSlotsRequest(startDatetime: Date, endDatetime: Date): TimeSlotsRequest; | ||
/** | ||
* Saves a reservation object to salesforce. With the contact, lead, and service reservations added to it. | ||
@@ -99,3 +117,3 @@ * Behaviour and allowed opperations can be changed through settings on the salesforce org. | ||
} | ||
export { Environment, ResourceRequest, DimensionRecordRequest, ReservationRequest, ResourceResult, ReservationResult, SObject, Reservation, Resource, Contact, Lead, Service, ServiceReservation, TimeSlot, AvailabilitySlotType, AvailabilityTimeSlot, ServiceTimeSlot, Condition, AndCondition, OrCondition, Operator, TimeSlotConfiguration }; | ||
export { Environment, ResourceRequest, DimensionRecordRequest, ReservationRequest, ResourceResult, ReservationResult, SObject, Reservation, Resource, Contact, Lead, Service, ServiceReservation, TimeSlot, AvailabilitySlotType, AvailabilityTimeSlot, ServiceTimeSlot, Condition, AndCondition, OrCondition, Operator, TimeSlotConfiguration, TimeSlotsRequest, TimeSlotsResult, ReservationTimeSlot }; | ||
export default GoMeddo; |
@@ -12,3 +12,3 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.TimeSlotConfiguration = exports.Operator = exports.OrCondition = exports.AndCondition = exports.Condition = exports.ServiceTimeSlot = exports.AvailabilityTimeSlot = exports.AvailabilitySlotType = exports.TimeSlot = exports.ServiceReservation = exports.Service = exports.Lead = exports.Contact = exports.Resource = exports.Reservation = exports.SObject = exports.ReservationResult = exports.ResourceResult = exports.ReservationRequest = exports.DimensionRecordRequest = exports.ResourceRequest = exports.Environment = void 0; | ||
exports.ReservationTimeSlot = exports.TimeSlotsResult = exports.TimeSlotsRequest = exports.TimeSlotConfiguration = exports.Operator = exports.OrCondition = exports.AndCondition = exports.Condition = exports.ServiceTimeSlot = exports.AvailabilityTimeSlot = exports.AvailabilitySlotType = exports.TimeSlot = exports.ServiceReservation = exports.Service = exports.Lead = exports.Contact = exports.Resource = exports.Reservation = exports.SObject = exports.ReservationResult = exports.ResourceResult = exports.ReservationRequest = exports.DimensionRecordRequest = exports.ResourceRequest = exports.Environment = void 0; | ||
const gomeddo_api_requests_1 = require("./api/gomeddo-api-requests"); | ||
@@ -19,2 +19,4 @@ const resource_request_1 = require("./resource-request"); | ||
exports.ReservationRequest = reservation_request_1.default; | ||
const timeslots_request_1 = require("./timeslots-request"); | ||
exports.TimeSlotsRequest = timeslots_request_1.default; | ||
const resource_result_1 = require("./resource-result"); | ||
@@ -24,2 +26,5 @@ exports.ResourceResult = resource_result_1.default; | ||
exports.ReservationResult = reservation_result_1.default; | ||
const reservation_contacts_request_1 = require("./reservation-contacts-request"); | ||
const timeslots_result_1 = require("./timeslots-result"); | ||
exports.TimeSlotsResult = timeslots_result_1.default; | ||
const contact_1 = require("./s-objects/contact"); | ||
@@ -46,2 +51,4 @@ exports.Contact = contact_1.default; | ||
Object.defineProperty(exports, "ServiceTimeSlot", { enumerable: true, get: function () { return service_time_slot_1.ServiceTimeSlot; } }); | ||
const reservation_time_slot_1 = require("./time-slots/reservation-time-slot"); | ||
Object.defineProperty(exports, "ReservationTimeSlot", { enumerable: true, get: function () { return reservation_time_slot_1.ReservationTimeSlot; } }); | ||
const conditions_1 = require("./filters/conditions"); | ||
@@ -101,2 +108,20 @@ Object.defineProperty(exports, "Condition", { enumerable: true, get: function () { return conditions_1.Condition; } }); | ||
/** | ||
* Creates a new request for Reservation Contacts. The request can then be specified using methods on the Reservation Contacts request. | ||
* | ||
* @returns new Reservation Contacts request using the authentication from this GoMeddo instance | ||
*/ | ||
buildReservationContactsRequest() { | ||
return new reservation_contacts_request_1.default(this.api); | ||
} | ||
/** | ||
* Creates a new request to fetch TimeSlots. The request can then be specified using methods on the TimeSlots request. | ||
* | ||
* @param startDatetime The start of the range to fetch timeslots (in UTC/GMT time). | ||
* @param endDatetime The end of the range to fetch timeslots (in UTC/GMT time). | ||
* @returns new TimeSlots request using the authentication from this GoMeddo instance | ||
*/ | ||
buildTimeSlotsRequest(startDatetime, endDatetime) { | ||
return new timeslots_request_1.default(this.api, startDatetime, endDatetime); | ||
} | ||
/** | ||
* Saves a reservation object to salesforce. With the contact, lead, and service reservations added to it. | ||
@@ -243,3 +268,3 @@ * Behaviour and allowed opperations can be changed through settings on the salesforce org. | ||
} | ||
GoMeddo.version = '0.0.5'; | ||
GoMeddo.version = '0.0.8'; | ||
exports.default = GoMeddo; |
@@ -29,2 +29,2 @@ declare type CustomFieldName = `${string}__c`; | ||
declare const getRelationshiptNameFromFieldName: (fieldName: CustomFieldName) => CustomRelationshipName; | ||
export { CustomFieldName, CustomRelationshipName, CustomSFSObject, StandardSFSObject, getRelationshiptNameFromFieldName }; | ||
export { CustomFieldName, CustomRelationshipName, CustomSFSObject, StandardSFSObject, getRelationshiptNameFromFieldName, SObjectAttributes }; |
@@ -14,2 +14,4 @@ import { Environment } from '../index'; | ||
import { SFResource } from '../s-objects/resource'; | ||
import TimeSlotRequestBody from './request-bodies/timeslots-request-body'; | ||
import { ReservationTimeSlot } from '../time-slots/reservation-time-slot'; | ||
export default class GoMeddoAPI { | ||
@@ -29,2 +31,4 @@ private readonly baseUrl; | ||
findAvailableDimensionIds(requestBody: FindAvailableIdsRequest): Promise<string[]>; | ||
getReservationContacts(reservationId: string | null, fields: Set<string>): Promise<CustomSFSObject[]>; | ||
getTimeSlots(requestBody: TimeSlotRequestBody): Promise<ReservationTimeSlot[]>; | ||
private getHeaders; | ||
@@ -31,0 +35,0 @@ private addFieldsToUrl; |
@@ -6,2 +6,3 @@ import { Environment } from '../index'; | ||
import ReservationSearchBody from './request-bodies/reservation-search-body'; | ||
import { ReservationTimeSlot } from '../time-slots/reservation-time-slot'; | ||
export default class GoMeddoAPI { | ||
@@ -122,2 +123,31 @@ constructor(apiKey, environment) { | ||
} | ||
async getReservationContacts(reservationId, fields) { | ||
const url = new URL('B25/v1/reservation-contacts', this.baseUrl); | ||
if (reservationId !== null) { | ||
url.searchParams.append('reservationId', reservationId); | ||
} | ||
this.addFieldsToUrl(url, fields); | ||
const response = await fetch(url.href, { | ||
method: 'GET', | ||
headers: this.getHeaders() | ||
}); | ||
await this.checkResponse(response); | ||
return await response.json(); | ||
} | ||
async getTimeSlots(requestBody) { | ||
const url = new URL('B25/v1/timeSlots', this.baseUrl); | ||
const response = await fetch(url.href, { | ||
method: 'POST', | ||
body: JSON.stringify(requestBody), | ||
headers: this.getHeaders() | ||
}); | ||
await this.checkResponse(response); | ||
const data = await response.json(); | ||
if (data.timeSlots === undefined) { | ||
return []; | ||
} | ||
return data.timeSlots.map((slot) => { | ||
return new ReservationTimeSlot(new Date(slot.startDatetime), new Date(slot.endDatetime), slot.reservations, requestBody); | ||
}); | ||
} | ||
getHeaders() { | ||
@@ -124,0 +154,0 @@ return { |
import ResourceRequest from './resource-request'; | ||
import ReservationRequest from './reservation-request'; | ||
import TimeSlotsRequest from './timeslots-request'; | ||
import ResourceResult from './resource-result'; | ||
import ReservationResult from './reservation-result'; | ||
import ReservationContactsRequest from './reservation-contacts-request'; | ||
import TimeSlotsResult from './timeslots-result'; | ||
import Contact from './s-objects/contact'; | ||
@@ -15,2 +18,3 @@ import Lead from './s-objects/lead'; | ||
import { ServiceTimeSlot } from './time-slots/service-time-slot'; | ||
import { ReservationTimeSlot } from './time-slots/reservation-time-slot'; | ||
import { Condition, AndCondition, OrCondition, Operator } from './filters/conditions'; | ||
@@ -56,2 +60,16 @@ import DimensionRecordRequest from './dimension-record-request'; | ||
/** | ||
* Creates a new request for Reservation Contacts. The request can then be specified using methods on the Reservation Contacts request. | ||
* | ||
* @returns new Reservation Contacts request using the authentication from this GoMeddo instance | ||
*/ | ||
buildReservationContactsRequest(): ReservationContactsRequest; | ||
/** | ||
* Creates a new request to fetch TimeSlots. The request can then be specified using methods on the TimeSlots request. | ||
* | ||
* @param startDatetime The start of the range to fetch timeslots (in UTC/GMT time). | ||
* @param endDatetime The end of the range to fetch timeslots (in UTC/GMT time). | ||
* @returns new TimeSlots request using the authentication from this GoMeddo instance | ||
*/ | ||
buildTimeSlotsRequest(startDatetime: Date, endDatetime: Date): TimeSlotsRequest; | ||
/** | ||
* Saves a reservation object to salesforce. With the contact, lead, and service reservations added to it. | ||
@@ -99,3 +117,3 @@ * Behaviour and allowed opperations can be changed through settings on the salesforce org. | ||
} | ||
export { Environment, ResourceRequest, DimensionRecordRequest, ReservationRequest, ResourceResult, ReservationResult, SObject, Reservation, Resource, Contact, Lead, Service, ServiceReservation, TimeSlot, AvailabilitySlotType, AvailabilityTimeSlot, ServiceTimeSlot, Condition, AndCondition, OrCondition, Operator, TimeSlotConfiguration }; | ||
export { Environment, ResourceRequest, DimensionRecordRequest, ReservationRequest, ResourceResult, ReservationResult, SObject, Reservation, Resource, Contact, Lead, Service, ServiceReservation, TimeSlot, AvailabilitySlotType, AvailabilityTimeSlot, ServiceTimeSlot, Condition, AndCondition, OrCondition, Operator, TimeSlotConfiguration, TimeSlotsRequest, TimeSlotsResult, ReservationTimeSlot }; | ||
export default GoMeddo; |
import GoMeddoAPI from './api/gomeddo-api-requests'; | ||
import ResourceRequest from './resource-request'; | ||
import ReservationRequest from './reservation-request'; | ||
import TimeSlotsRequest from './timeslots-request'; | ||
import ResourceResult from './resource-result'; | ||
import ReservationResult from './reservation-result'; | ||
import ReservationContactsRequest from './reservation-contacts-request'; | ||
import TimeSlotsResult from './timeslots-result'; | ||
import Contact from './s-objects/contact'; | ||
@@ -16,2 +19,3 @@ import Lead from './s-objects/lead'; | ||
import { ServiceTimeSlot } from './time-slots/service-time-slot'; | ||
import { ReservationTimeSlot } from './time-slots/reservation-time-slot'; | ||
import { Condition, AndCondition, OrCondition, Operator } from './filters/conditions'; | ||
@@ -64,2 +68,20 @@ import DimensionRecordRequest from './dimension-record-request'; | ||
/** | ||
* Creates a new request for Reservation Contacts. The request can then be specified using methods on the Reservation Contacts request. | ||
* | ||
* @returns new Reservation Contacts request using the authentication from this GoMeddo instance | ||
*/ | ||
buildReservationContactsRequest() { | ||
return new ReservationContactsRequest(this.api); | ||
} | ||
/** | ||
* Creates a new request to fetch TimeSlots. The request can then be specified using methods on the TimeSlots request. | ||
* | ||
* @param startDatetime The start of the range to fetch timeslots (in UTC/GMT time). | ||
* @param endDatetime The end of the range to fetch timeslots (in UTC/GMT time). | ||
* @returns new TimeSlots request using the authentication from this GoMeddo instance | ||
*/ | ||
buildTimeSlotsRequest(startDatetime, endDatetime) { | ||
return new TimeSlotsRequest(this.api, startDatetime, endDatetime); | ||
} | ||
/** | ||
* Saves a reservation object to salesforce. With the contact, lead, and service reservations added to it. | ||
@@ -194,4 +216,4 @@ * Behaviour and allowed opperations can be changed through settings on the salesforce org. | ||
} | ||
GoMeddo.version = '0.0.5'; | ||
export { Environment, ResourceRequest, DimensionRecordRequest, ReservationRequest, ResourceResult, ReservationResult, SObject, Reservation, Resource, Contact, Lead, Service, ServiceReservation, TimeSlot, AvailabilitySlotType, AvailabilityTimeSlot, ServiceTimeSlot, Condition, AndCondition, OrCondition, Operator, TimeSlotConfiguration }; | ||
GoMeddo.version = '0.0.8'; | ||
export { Environment, ResourceRequest, DimensionRecordRequest, ReservationRequest, ResourceResult, ReservationResult, SObject, Reservation, Resource, Contact, Lead, Service, ServiceReservation, TimeSlot, AvailabilitySlotType, AvailabilityTimeSlot, ServiceTimeSlot, Condition, AndCondition, OrCondition, Operator, TimeSlotConfiguration, TimeSlotsRequest, TimeSlotsResult, ReservationTimeSlot }; | ||
export default GoMeddo; |
@@ -29,2 +29,2 @@ declare type CustomFieldName = `${string}__c`; | ||
declare const getRelationshiptNameFromFieldName: (fieldName: CustomFieldName) => CustomRelationshipName; | ||
export { CustomFieldName, CustomRelationshipName, CustomSFSObject, StandardSFSObject, getRelationshiptNameFromFieldName }; | ||
export { CustomFieldName, CustomRelationshipName, CustomSFSObject, StandardSFSObject, getRelationshiptNameFromFieldName, SObjectAttributes }; |
{ | ||
"name": "@gomeddo/sdk", | ||
"version": "0.0.7", | ||
"version": "0.0.8", | ||
"description": "Package allowing for the easy use of GoMeddo APIs.", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
336587
175
7907
23