glitch-javascript-sdk 3.2.29 → 3.2.31

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/dist/cjs/index.js CHANGED
@@ -17525,6 +17525,39 @@ var Requests = /** @class */ (function () {
17525
17525
  onUploadProgress: onUploadProgress,
17526
17526
  });
17527
17527
  };
17528
+ Requests.postFormData = function (url, formData, params, onUploadProgress) {
17529
+ if (params && Object.keys(params).length > 0) {
17530
+ var queryString = Object.entries(params)
17531
+ .filter(function (_a) {
17532
+ var value = _a[1];
17533
+ return value !== undefined && value !== null && value !== '';
17534
+ })
17535
+ .map(function (_a) {
17536
+ var key = _a[0], value = _a[1];
17537
+ if (Array.isArray(value)) {
17538
+ return value.map(function (item) { return "".concat(key, "[]=").concat(encodeURIComponent(item)); }).join('&');
17539
+ }
17540
+ return "".concat(key, "=").concat(encodeURIComponent(value));
17541
+ })
17542
+ .filter(Boolean)
17543
+ .join('&');
17544
+ if (queryString) {
17545
+ url = "".concat(url, "?").concat(queryString);
17546
+ }
17547
+ }
17548
+ var headers = {};
17549
+ if (Requests.authToken) {
17550
+ headers['Authorization'] = "Bearer ".concat(Requests.authToken);
17551
+ }
17552
+ var uri = Requests.baseUrl.replace(/\/+$/, '') + '/' + url.replace(/^\/+/, '');
17553
+ return axios$1({
17554
+ method: 'POST',
17555
+ url: uri,
17556
+ data: formData,
17557
+ headers: headers,
17558
+ onUploadProgress: onUploadProgress,
17559
+ });
17560
+ };
17528
17561
  Requests.uploadBlob = function (url, filename, blob, data, params, onUploadProgress) {
17529
17562
  // Process URL and params
17530
17563
  if (params && Object.keys(params).length > 0) {
@@ -30649,6 +30682,12 @@ var CrmRoute = /** @class */ (function () {
30649
30682
  listCampaignRecipients: { url: '/admin/crm/campaigns/{campaign_id}/recipients', method: HTTP_METHODS.GET },
30650
30683
  previewCampaignProspectImport: { url: '/admin/crm/campaigns/import-prospects/preview', method: HTTP_METHODS.POST },
30651
30684
  importCampaignProspects: { url: '/admin/crm/campaigns/import-prospects', method: HTTP_METHODS.POST },
30685
+ previewFestivalSubmissionImport: { url: '/admin/crm/imports/festival-submissions/preview', method: HTTP_METHODS.POST },
30686
+ importFestivalSubmissions: { url: '/admin/crm/imports/festival-submissions', method: HTTP_METHODS.POST },
30687
+ listFestivalSubmissionSources: { url: '/admin/crm/imports/festival-submissions/sources', method: HTTP_METHODS.GET },
30688
+ createFestivalSubmissionSource: { url: '/admin/crm/imports/festival-submissions/sources', method: HTTP_METHODS.POST },
30689
+ updateFestivalSubmissionSource: { url: '/admin/crm/imports/festival-submissions/sources/{source_id}', method: HTTP_METHODS.PUT },
30690
+ deleteFestivalSubmissionSource: { url: '/admin/crm/imports/festival-submissions/sources/{source_id}', method: HTTP_METHODS.DELETE },
30652
30691
  listEmailProviderAddresses: { url: '/admin/crm/email-provider-addresses', method: HTTP_METHODS.GET },
30653
30692
  getEmailProviderAddressOptions: { url: '/admin/crm/email-provider-addresses/options', method: HTTP_METHODS.GET },
30654
30693
  createEmailProviderAddress: { url: '/admin/crm/email-provider-addresses', method: HTTP_METHODS.POST },
@@ -30893,6 +30932,44 @@ var Crm = /** @class */ (function () {
30893
30932
  if (options === void 0) { options = {}; }
30894
30933
  return Requests.processRoute(CrmRoute.routes.importCampaignProspects, __assign({ prospects: prospects }, options));
30895
30934
  };
30935
+ /**
30936
+ * Preview uploaded festival submission sheets without writing External Game or CRM records.
30937
+ */
30938
+ Crm.previewFestivalSubmissionImport = function (files, options, onUploadProgress) {
30939
+ if (options === void 0) { options = {}; }
30940
+ return Requests.postFormData(CrmRoute.routes.previewFestivalSubmissionImport.url, Crm.festivalSubmissionFormData(files, options), undefined, onUploadProgress);
30941
+ };
30942
+ /**
30943
+ * Import uploaded festival submission sheets into External Games and CRM leads/contacts.
30944
+ */
30945
+ Crm.importFestivalSubmissions = function (files, options, onUploadProgress) {
30946
+ if (options === void 0) { options = {}; }
30947
+ return Requests.postFormData(CrmRoute.routes.importFestivalSubmissions.url, Crm.festivalSubmissionFormData(files, options), undefined, onUploadProgress);
30948
+ };
30949
+ /**
30950
+ * List saved recurring Google Sheet sources for festival submission imports.
30951
+ */
30952
+ Crm.listFestivalSubmissionSources = function () {
30953
+ return Requests.processRoute(CrmRoute.routes.listFestivalSubmissionSources);
30954
+ };
30955
+ /**
30956
+ * Save a recurring Google Sheet source for festival submission imports.
30957
+ */
30958
+ Crm.createFestivalSubmissionSource = function (data) {
30959
+ return Requests.processRoute(CrmRoute.routes.createFestivalSubmissionSource, data);
30960
+ };
30961
+ /**
30962
+ * Update a recurring Google Sheet source for festival submission imports.
30963
+ */
30964
+ Crm.updateFestivalSubmissionSource = function (source_id, data) {
30965
+ return Requests.processRoute(CrmRoute.routes.updateFestivalSubmissionSource, data, { source_id: source_id });
30966
+ };
30967
+ /**
30968
+ * Delete a recurring Google Sheet source for festival submission imports.
30969
+ */
30970
+ Crm.deleteFestivalSubmissionSource = function (source_id) {
30971
+ return Requests.processRoute(CrmRoute.routes.deleteFestivalSubmissionSource, {}, { source_id: source_id });
30972
+ };
30896
30973
  /**
30897
30974
  * List provider-managed sender and reply-to addresses for CRM campaigns.
30898
30975
  */
@@ -30923,6 +31000,25 @@ var Crm = /** @class */ (function () {
30923
31000
  Crm.deactivateEmailProviderAddress = function (address_id) {
30924
31001
  return Requests.processRoute(CrmRoute.routes.deactivateEmailProviderAddress, {}, { address_id: address_id });
30925
31002
  };
31003
+ Crm.festivalSubmissionFormData = function (files, options) {
31004
+ var formData = new FormData();
31005
+ files.forEach(function (file, index) {
31006
+ var candidate = file;
31007
+ formData.append('files[]', file, (candidate === null || candidate === void 0 ? void 0 : candidate.name) || "festival-submission-".concat(index + 1));
31008
+ });
31009
+ Object.entries(options || {}).forEach(function (_a) {
31010
+ var key = _a[0], value = _a[1];
31011
+ if (value === undefined || value === null) {
31012
+ return;
31013
+ }
31014
+ if (Array.isArray(value)) {
31015
+ value.forEach(function (item) { return formData.append("".concat(key, "[]"), String(item)); });
31016
+ return;
31017
+ }
31018
+ formData.append(key, typeof value === 'boolean' ? (value ? '1' : '0') : String(value));
31019
+ });
31020
+ return formData;
31021
+ };
30926
31022
  return Crm;
30927
31023
  }());
30928
31024