@tellescope/sdk 1.255.0 → 1.255.1

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 (46) hide show
  1. package/lib/cjs/tests/api_tests/appointment_no_showed_trigger.test.d.ts +6 -0
  2. package/lib/cjs/tests/api_tests/appointment_no_showed_trigger.test.d.ts.map +1 -0
  3. package/lib/cjs/tests/api_tests/appointment_no_showed_trigger.test.js +236 -0
  4. package/lib/cjs/tests/api_tests/appointment_no_showed_trigger.test.js.map +1 -0
  5. package/lib/cjs/tests/api_tests/calendar_events_bulk_update.test.d.ts.map +1 -1
  6. package/lib/cjs/tests/api_tests/calendar_events_bulk_update.test.js +108 -73
  7. package/lib/cjs/tests/api_tests/calendar_events_bulk_update.test.js.map +1 -1
  8. package/lib/cjs/tests/api_tests/group_event_attendee_status_triggers.test.d.ts +6 -0
  9. package/lib/cjs/tests/api_tests/group_event_attendee_status_triggers.test.d.ts.map +1 -0
  10. package/lib/cjs/tests/api_tests/group_event_attendee_status_triggers.test.js +587 -0
  11. package/lib/cjs/tests/api_tests/group_event_attendee_status_triggers.test.js.map +1 -0
  12. package/lib/cjs/tests/api_tests/healthie_force_sync.test.d.ts +6 -0
  13. package/lib/cjs/tests/api_tests/healthie_force_sync.test.d.ts.map +1 -0
  14. package/lib/cjs/tests/api_tests/healthie_force_sync.test.js +165 -0
  15. package/lib/cjs/tests/api_tests/healthie_force_sync.test.js.map +1 -0
  16. package/lib/cjs/tests/tests.d.ts.map +1 -1
  17. package/lib/cjs/tests/tests.js +55 -41
  18. package/lib/cjs/tests/tests.js.map +1 -1
  19. package/lib/esm/sdk.d.ts +2 -2
  20. package/lib/esm/session.d.ts +0 -1
  21. package/lib/esm/session.d.ts.map +1 -1
  22. package/lib/esm/tests/api_tests/appointment_no_showed_trigger.test.d.ts +6 -0
  23. package/lib/esm/tests/api_tests/appointment_no_showed_trigger.test.d.ts.map +1 -0
  24. package/lib/esm/tests/api_tests/appointment_no_showed_trigger.test.js +232 -0
  25. package/lib/esm/tests/api_tests/appointment_no_showed_trigger.test.js.map +1 -0
  26. package/lib/esm/tests/api_tests/calendar_events_bulk_update.test.d.ts.map +1 -1
  27. package/lib/esm/tests/api_tests/calendar_events_bulk_update.test.js +109 -74
  28. package/lib/esm/tests/api_tests/calendar_events_bulk_update.test.js.map +1 -1
  29. package/lib/esm/tests/api_tests/group_event_attendee_status_triggers.test.d.ts +6 -0
  30. package/lib/esm/tests/api_tests/group_event_attendee_status_triggers.test.d.ts.map +1 -0
  31. package/lib/esm/tests/api_tests/group_event_attendee_status_triggers.test.js +583 -0
  32. package/lib/esm/tests/api_tests/group_event_attendee_status_triggers.test.js.map +1 -0
  33. package/lib/esm/tests/api_tests/healthie_force_sync.test.d.ts +6 -0
  34. package/lib/esm/tests/api_tests/healthie_force_sync.test.d.ts.map +1 -0
  35. package/lib/esm/tests/api_tests/healthie_force_sync.test.js +161 -0
  36. package/lib/esm/tests/api_tests/healthie_force_sync.test.js.map +1 -0
  37. package/lib/esm/tests/tests.d.ts.map +1 -1
  38. package/lib/esm/tests/tests.js +55 -41
  39. package/lib/esm/tests/tests.js.map +1 -1
  40. package/lib/tsconfig.tsbuildinfo +1 -1
  41. package/package.json +10 -10
  42. package/src/tests/api_tests/appointment_no_showed_trigger.test.ts +144 -0
  43. package/src/tests/api_tests/calendar_events_bulk_update.test.ts +22 -0
  44. package/src/tests/api_tests/group_event_attendee_status_triggers.test.ts +381 -0
  45. package/src/tests/tests.ts +7 -1
  46. package/test_generated.pdf +0 -0
package/lib/esm/sdk.d.ts CHANGED
@@ -4187,6 +4187,7 @@ export declare class Session extends SessionManager {
4187
4187
  exp: number;
4188
4188
  allowedPaths?: string[] | undefined;
4189
4189
  requiresMFA?: boolean | undefined;
4190
+ users?: number | undefined;
4190
4191
  inbox_threads?: number | undefined;
4191
4192
  ai_conversations?: number | undefined;
4192
4193
  waitlists?: number | undefined;
@@ -4233,7 +4234,6 @@ export declare class Session extends SessionManager {
4233
4234
  sms_messages?: number | undefined;
4234
4235
  chat_rooms?: number | undefined;
4235
4236
  chats?: number | undefined;
4236
- users?: number | undefined;
4237
4237
  templates?: number | undefined;
4238
4238
  files?: number | undefined;
4239
4239
  tickets?: number | undefined;
@@ -4349,6 +4349,7 @@ export declare class Session extends SessionManager {
4349
4349
  exp: number;
4350
4350
  allowedPaths?: string[] | undefined;
4351
4351
  requiresMFA?: boolean | undefined;
4352
+ users?: number | undefined;
4352
4353
  inbox_threads?: number | undefined;
4353
4354
  ai_conversations?: number | undefined;
4354
4355
  waitlists?: number | undefined;
@@ -4395,7 +4396,6 @@ export declare class Session extends SessionManager {
4395
4396
  sms_messages?: number | undefined;
4396
4397
  chat_rooms?: number | undefined;
4397
4398
  chats?: number | undefined;
4398
- users?: number | undefined;
4399
4399
  templates?: number | undefined;
4400
4400
  files?: number | undefined;
4401
4401
  tickets?: number | undefined;
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { ReactNativeFile, S3PresignedPost } from "@tellescope/types-utilities";
3
2
  import { ClientModelForName, User } from "@tellescope/types-client";
4
3
  import { Indexable } from "@tellescope/utilities";
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/session.ts"],"names":[],"mappings":";AAGA,OAAO,EACL,eAAe,EACf,eAAe,EAChB,MAAM,6BAA6B,CAAA;AACpC,OAAO,EACL,kBAAkB,EAAE,IAAI,EACzB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAEjD,eAAO,MAAM,YAAY,+BAA+B,CAAA;AAExD,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG,aAAa,GAAG,SAAS,GAAG,SAAS,GAAG,eAAe,CAAA;AAEvG,MAAM,WAAW,cAAc;IAC7B,0EAA0E;IAC1E,sBAAsB,CAAC,EAAE,iBAAiB,GAAG,MAAM,CAAC;IACpD,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,IAAI,CAAC,EAAE,IAAI,GAAG;QACZ,WAAW,CAAC,EAAE,OAAO,CAAC;KACvB,CAAC;IACF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,qBAAqB,CAAC,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;IAC3C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;CACnC;AAED,eAAO,MAAM,IAAI,OAAQ,QAAQ,IAAI,CAAC,+BAEpC,CAAA;AAEF,UAAU,cAAc;IACtB,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;CACtC;AAyCD,eAAO,MAAM,oBAAoB,MAAM,CAAA;AAiGvC,qBAAa,OAAO;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,eAAe,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,qBAAqB,CAAC,EAAE,cAAc,CAAC,uBAAuB,CAAC,CAAA;IAC/D,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,QAAQ,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,CAAE;IAC7F,YAAY,SAAc;IAC1B,eAAe,SAAU;IACzB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAClC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;IAEzC,MAAM,EAAE;QAAE,OAAO,EAAE;YAAE,aAAa,EAAE,MAAM,CAAA;SAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;KAAE,CAAC;gBAE7D,CAAC;cAAiD,MAAM;KAAE;IA8CtE,aAAa,2EAAuE;IAEpF,YAAY,MAAO,MAAM,UAIxB;IAED,WAAW,MAAO;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,UAInE;IAED,UAAU,aAGT;IAED,UAAU,gBAAiB,OAAO,UAKjC;IAED,WAAW,kBAAmB,OAAO;;;;;;;;;;kBAWpC;IAED,YAAY,SAAgB,GAAG,kBAU9B;IACD,IAAI,0BAA8B,MAAM,qDAAoC;QAAE,eAAe,CAAC,EAAE,OAAO,CAAA;KAAE,gBASxG;IAED,GAAG,0BAA8B,MAAM,6DAA4C;QAAE,YAAY,CAAC,EAAE,aAAa,CAAA;KAAE,gBAYlH;IAED,KAAK,0BAA8B,MAAM,iEAQxC;IAED,MAAM,0BAA8B,MAAM,+DAQzC;IAED,MAAM,cAAqB,eAAe,QAAQ,IAAI,GAAG,MAAM,GAAG,eAAe,mBAWhF;IAED,QAAQ,gBAAuB,MAAM,kBAGpC;IAED,IAAI,UAAiB,MAAM,QAAQ,MAAM,sEAUxC;IAED,EAAE,cAAa,MAAM,sBAAsB,IAAI,UAE9C;IAED;;MAEE;IACF,SAAS;;;6BAA4F,GAAG,KAAK,IAAI;2BAKhH;IAED,aAAa;6BAAsC,GAAG,KAAK,IAAI;eAa9D;IAED,WAAW,YAAa,MAAM,EAAE,mBAA0C;IAC1E,wBAAwB,aAGvB;IAED,uBAAuB,UAAW,MAAM,UAEvC;IAED,UAAU,YAAa,MAAM,UAE5B;IACD,iBAAiB,aAahB;IAED,WAAW,sBAAuB,GAAG,EAAE,KAAK,IAAI,UAAO;IAEvD,mBAAmB,aAsDlB;IAED,kBAAkB;IAClB,aAAa,sBAmBZ;CACF"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/session.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { Session } from "../../sdk";
2
+ export declare const appointment_no_showed_trigger_tests: ({ sdk }: {
3
+ sdk: Session;
4
+ sdkNonAdmin: Session;
5
+ }) => Promise<void>;
6
+ //# sourceMappingURL=appointment_no_showed_trigger.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appointment_no_showed_trigger.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/api_tests/appointment_no_showed_trigger.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AASnC,eAAO,MAAM,mCAAmC;SAA2B,OAAO;iBAAe,OAAO;mBAgHvG,CAAA"}
@@ -0,0 +1,232 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
17
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
37
+ import { Session } from "../../sdk";
38
+ import { log_header, wait, async_test } from "@tellescope/testing";
39
+ import { setup_tests } from "../setup";
40
+ var host = process.env.API_URL || "http://localhost:8080";
41
+ // Covers the event-wide "Appointment No-Showed" trigger path (handle_no_showed_event), which had
42
+ // no dedicated test. Mirrors appointment_completed_trigger.test.ts.
43
+ export var appointment_no_showed_trigger_tests = function (_a) {
44
+ var sdk = _a.sdk;
45
+ return __awaiter(void 0, void 0, void 0, function () {
46
+ var t1, t2, template, t3, enduser1, enduser2, enduser3, event1, event2, event3;
47
+ return __generator(this, function (_b) {
48
+ switch (_b.label) {
49
+ case 0:
50
+ log_header("Automation Trigger Tests (Appointment No-Showed)");
51
+ return [4 /*yield*/, sdk.api.automation_triggers.createOne({
52
+ event: { type: 'Appointment No-Showed', info: {} },
53
+ action: { type: 'Add Tags', info: { tags: ['No-Show - Any'] } },
54
+ status: 'Active',
55
+ title: "No-Show - Any",
56
+ })];
57
+ case 1:
58
+ t1 = _b.sent();
59
+ return [4 /*yield*/, sdk.api.automation_triggers.createOne({
60
+ event: { type: 'Appointment No-Showed', info: { titles: ['Test Appointment'] } },
61
+ action: { type: 'Add Tags', info: { tags: ['No-Show - By Title'] } },
62
+ status: 'Active',
63
+ title: "No-Show - By Title",
64
+ })];
65
+ case 2:
66
+ t2 = _b.sent();
67
+ return [4 /*yield*/, sdk.api.calendar_event_templates.createOne({
68
+ title: 'No-Show Template',
69
+ durationInMinutes: 30,
70
+ })];
71
+ case 3:
72
+ template = _b.sent();
73
+ return [4 /*yield*/, sdk.api.automation_triggers.createOne({
74
+ event: { type: 'Appointment No-Showed', info: { templateIds: [template.id] } },
75
+ action: { type: 'Add Tags', info: { tags: ['No-Show - By Template'] } },
76
+ status: 'Active',
77
+ title: "No-Show - By Template",
78
+ })
79
+ // Separate endusers to avoid per-trigger throttling (1 min per trigger per enduser)
80
+ ];
81
+ case 4:
82
+ t3 = _b.sent();
83
+ return [4 /*yield*/, sdk.api.endusers.createOne({})];
84
+ case 5:
85
+ enduser1 = _b.sent();
86
+ return [4 /*yield*/, sdk.api.endusers.createOne({})];
87
+ case 6:
88
+ enduser2 = _b.sent();
89
+ return [4 /*yield*/, sdk.api.endusers.createOne({})
90
+ // Note: the "Appointment No-Showed" trigger fires only on UPDATE (handle_no_showed_event);
91
+ // there is no create-time no-show path, so every case creates a normal event then updates it.
92
+ // Test 1: Update to no-showed by title (should trigger Any + By Title)
93
+ ];
94
+ case 7:
95
+ enduser3 = _b.sent();
96
+ return [4 /*yield*/, sdk.api.calendar_events.createOne({
97
+ title: 'Test Appointment',
98
+ durationInMinutes: 30,
99
+ startTimeInMS: Date.now(),
100
+ attendees: [{ type: 'enduser', id: enduser1.id }],
101
+ })];
102
+ case 8:
103
+ event1 = _b.sent();
104
+ return [4 /*yield*/, wait(undefined, 500)];
105
+ case 9:
106
+ _b.sent();
107
+ return [4 /*yield*/, async_test("No initial triggers before no-show", function () { return sdk.api.endusers.getOne(enduser1.id); }, { onResult: function (e) { var _a; return !((_a = e.tags) === null || _a === void 0 ? void 0 : _a.length); } })];
108
+ case 10:
109
+ _b.sent();
110
+ return [4 /*yield*/, sdk.api.calendar_events.updateOne(event1.id, { noShowedAt: new Date() })];
111
+ case 11:
112
+ _b.sent();
113
+ return [4 /*yield*/, wait(undefined, 500)];
114
+ case 12:
115
+ _b.sent();
116
+ return [4 /*yield*/, async_test("Update to no-showed triggers automation (Any + By Title)", function () { return sdk.api.endusers.getOne(enduser1.id); }, { onResult: function (e) {
117
+ var _a;
118
+ return ((_a = e.tags) === null || _a === void 0 ? void 0 : _a.length) === 2
119
+ && e.tags.includes('No-Show - Any')
120
+ && e.tags.includes('No-Show - By Title');
121
+ }
122
+ })
123
+ // Test 2: Template-based no-show (should trigger Any + By Template)
124
+ ];
125
+ case 13:
126
+ _b.sent();
127
+ return [4 /*yield*/, sdk.api.calendar_events.createOne({
128
+ title: 'Template Test',
129
+ durationInMinutes: 30,
130
+ startTimeInMS: Date.now(),
131
+ attendees: [{ type: 'enduser', id: enduser2.id }],
132
+ templateId: template.id,
133
+ })];
134
+ case 14:
135
+ event2 = _b.sent();
136
+ return [4 /*yield*/, wait(undefined, 500)];
137
+ case 15:
138
+ _b.sent();
139
+ return [4 /*yield*/, sdk.api.calendar_events.updateOne(event2.id, { noShowedAt: new Date() })];
140
+ case 16:
141
+ _b.sent();
142
+ return [4 /*yield*/, wait(undefined, 500)];
143
+ case 17:
144
+ _b.sent();
145
+ return [4 /*yield*/, async_test("Template-based no-showed appointment triggers automation (Any + By Template)", function () { return sdk.api.endusers.getOne(enduser2.id); }, { onResult: function (e) {
146
+ var _a;
147
+ return ((_a = e.tags) === null || _a === void 0 ? void 0 : _a.length) === 2
148
+ && e.tags.includes('No-Show - Any')
149
+ && e.tags.includes('No-Show - By Template');
150
+ }
151
+ })
152
+ // Test 3: Non-matching title only fires the "Any" trigger
153
+ ];
154
+ case 18:
155
+ _b.sent();
156
+ return [4 /*yield*/, sdk.api.calendar_events.createOne({
157
+ title: 'Other Title',
158
+ durationInMinutes: 30,
159
+ startTimeInMS: Date.now(),
160
+ attendees: [{ type: 'enduser', id: enduser3.id }],
161
+ })];
162
+ case 19:
163
+ event3 = _b.sent();
164
+ return [4 /*yield*/, wait(undefined, 500)];
165
+ case 20:
166
+ _b.sent();
167
+ return [4 /*yield*/, sdk.api.calendar_events.updateOne(event3.id, { noShowedAt: new Date() })];
168
+ case 21:
169
+ _b.sent();
170
+ return [4 /*yield*/, wait(undefined, 500)];
171
+ case 22:
172
+ _b.sent();
173
+ return [4 /*yield*/, async_test("No-show with non-matching title fires only the Any trigger", function () { return sdk.api.endusers.getOne(enduser3.id); }, { onResult: function (e) {
174
+ var _a;
175
+ return ((_a = e.tags) === null || _a === void 0 ? void 0 : _a.length) === 1
176
+ && e.tags.includes('No-Show - Any');
177
+ }
178
+ })
179
+ // Cleanup
180
+ ];
181
+ case 23:
182
+ _b.sent();
183
+ // Cleanup
184
+ return [4 /*yield*/, Promise.all([
185
+ sdk.api.automation_triggers.deleteOne(t1.id),
186
+ sdk.api.automation_triggers.deleteOne(t2.id),
187
+ sdk.api.automation_triggers.deleteOne(t3.id),
188
+ sdk.api.calendar_event_templates.deleteOne(template.id),
189
+ sdk.api.endusers.deleteOne(enduser1.id),
190
+ sdk.api.endusers.deleteOne(enduser2.id),
191
+ sdk.api.endusers.deleteOne(enduser3.id),
192
+ sdk.api.calendar_events.deleteOne(event1.id),
193
+ sdk.api.calendar_events.deleteOne(event2.id),
194
+ sdk.api.calendar_events.deleteOne(event3.id),
195
+ ])];
196
+ case 24:
197
+ // Cleanup
198
+ _b.sent();
199
+ return [2 /*return*/];
200
+ }
201
+ });
202
+ });
203
+ };
204
+ // Allow running this test file independently
205
+ if (require.main === module) {
206
+ console.log("\uD83C\uDF10 Using API URL: ".concat(host));
207
+ var sdk_1 = new Session({ host: host });
208
+ var sdkNonAdmin_1 = new Session({ host: host });
209
+ var runTests = function () { return __awaiter(void 0, void 0, void 0, function () {
210
+ return __generator(this, function (_a) {
211
+ switch (_a.label) {
212
+ case 0: return [4 /*yield*/, setup_tests(sdk_1, sdkNonAdmin_1)];
213
+ case 1:
214
+ _a.sent();
215
+ return [4 /*yield*/, appointment_no_showed_trigger_tests({ sdk: sdk_1, sdkNonAdmin: sdkNonAdmin_1 })];
216
+ case 2:
217
+ _a.sent();
218
+ return [2 /*return*/];
219
+ }
220
+ });
221
+ }); };
222
+ runTests()
223
+ .then(function () {
224
+ console.log("✅ Appointment No-Showed trigger tests completed successfully");
225
+ process.exit(0);
226
+ })
227
+ .catch(function (error) {
228
+ console.error("❌ Appointment No-Showed trigger tests failed:", error);
229
+ process.exit(1);
230
+ });
231
+ }
232
+ //# sourceMappingURL=appointment_no_showed_trigger.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appointment_no_showed_trigger.test.js","sourceRoot":"","sources":["../../../../src/tests/api_tests/appointment_no_showed_trigger.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"calendar_events_bulk_update.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/api_tests/calendar_events_bulk_update.test.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAWnC,eAAO,MAAM,iCAAiC;SAA0B,OAAO;mBA8X9E,CAAA"}
1
+ {"version":3,"file":"calendar_events_bulk_update.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/api_tests/calendar_events_bulk_update.test.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAYnC,eAAO,MAAM,iCAAiC;SAA0B,OAAO;mBAmZ9E,CAAA"}