@getmicdrop/svelte-components 5.17.0 → 5.17.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.
@@ -1 +1 @@
1
- {"version":3,"file":"timezone.d.ts","sourceRoot":"","sources":["../../src/lib/datetime/timezone.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE7D,2DAA2D;AAC3D,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAiCD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CA0BzD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,iBAAiB,GAAG,UAAU,CAoBrE;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,IAAI,UAAU,CAE5C;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,UAAU,EACpB,IAAI,GAAE,IAAiB,GACtB,MAAM,CA2BR;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,UAAU,GAAG,MAAM,CAiBnE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CA+C9D;AAED;;;;;;;GAOG;AACH,wBAAgB,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,GAAE,IAAiB,GAAG,OAAO,CA0B5E;AAMD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,UAAU,CAuB/E;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,wBAAkB,CAAC;AAEnD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAI1C;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CA0BjE;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,cAAc,EAAE,CAOrD;AAED;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,IAAI,cAAc,EAAE,CAe7D"}
1
+ {"version":3,"file":"timezone.d.ts","sourceRoot":"","sources":["../../src/lib/datetime/timezone.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE7D,2DAA2D;AAC3D,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAiCD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CA0BzD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,iBAAiB,GAAG,UAAU,CAoBrE;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,IAAI,UAAU,CAE5C;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,UAAU,EACpB,IAAI,GAAE,IAAiB,GACtB,MAAM,CA2BR;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,UAAU,GAAG,MAAM,CAiBnE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CA+C9D;AAED;;;;;;;GAOG;AACH,wBAAgB,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,GAAE,IAAiB,GAAG,OAAO,CA0B5E;AAMD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,UAAU,CAuB/E;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,wBAAkB,CAAC;AAEnD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAG1C;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CA0BjE;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,cAAc,EAAE,CAOrD;AAED;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,IAAI,cAAc,EAAE,CAe7D"}
@@ -298,8 +298,7 @@ export const isValidIANATimezone = isValidTimezone;
298
298
  * // ['Africa/Abidjan', 'Africa/Accra', ..., 'Pacific/Wallis']
299
299
  */
300
300
  export function getAllTimezones() {
301
- // Cast to any to support Intl.supportedValuesOf which is ES2023+
302
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
301
+ // Cast to support Intl.supportedValuesOf which is ES2023+
303
302
  return Intl.supportedValuesOf('timeZone');
304
303
  }
305
304
  /**
@@ -43,5 +43,5 @@ export interface FormStore<T extends Record<string, unknown>> {
43
43
  resetToOriginal: () => void;
44
44
  save: <R>(fn: () => Promise<R>) => Promise<R | undefined>;
45
45
  }
46
- export declare function createFormStore<T extends Record<string, unknown>>(schema: z.ZodSchema<T>, initialData: T, options?: FormStoreOptions<T>): FormStore<T>;
46
+ export declare function createFormStore<T extends Record<string, unknown>>(schema: z.ZodType<T>, initialData: T, options?: FormStoreOptions<T>): FormStore<T>;
47
47
  //# sourceMappingURL=createFormStore.svelte.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createFormStore.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/forms/createFormStore.svelte.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;IAEvC;;;;OAIG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAE1D,IAAI,EAAE,CAAC,CAAC;IACR,YAAY,EAAE,CAAC,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IAGzC,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IAGpB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAG1B,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;IAC/B,QAAQ,EAAE,MAAM,OAAO,CAAC;IACxB,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC;IACtD,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC;IACnD,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAC7C,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAC7C,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,eAAe,EAAE,MAAM,IAAI,CAAC;IAG5B,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;CAC3D;AAMD,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EACtB,WAAW,EAAE,CAAC,EACd,OAAO,GAAE,gBAAgB,CAAC,CAAC,CAAM,GAChC,SAAS,CAAC,CAAC,CAAC,CA0Od"}
1
+ {"version":3,"file":"createFormStore.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/forms/createFormStore.svelte.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;IAEvC;;;;OAIG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAE1D,IAAI,EAAE,CAAC,CAAC;IACR,YAAY,EAAE,CAAC,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IAGzC,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IAGpB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAG1B,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;IAC/B,QAAQ,EAAE,MAAM,OAAO,CAAC;IACxB,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC;IACtD,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC;IACnD,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAC7C,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAC7C,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,eAAe,EAAE,MAAM,IAAI,CAAC;IAG5B,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;CAC3D;AAMD,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EACpB,WAAW,EAAE,CAAC,EACd,OAAO,GAAE,gBAAgB,CAAC,CAAC,CAAM,GAChC,SAAS,CAAC,CAAC,CAAC,CA0Od"}
@@ -270,14 +270,14 @@ describe("SuperLogin Component - Login Functionality", () => {
270
270
  await fireEvent.submit(form);
271
271
 
272
272
  await waitFor(() => {
273
- expect(global.fetch).toHaveBeenCalledWith("/api/public/login", {
274
- method: "POST",
275
- headers: { "Content-Type": "application/json" },
276
- body: JSON.stringify({
277
- email: "test@example.com",
278
- password: "password123",
279
- }),
280
- });
273
+ expect(global.fetch).toHaveBeenCalledWith("/api/v2/auth/login", {
274
+ method: "POST",
275
+ headers: { "Content-Type": "application/json" },
276
+ body: JSON.stringify({
277
+ email: "test@example.com",
278
+ password: "password123",
279
+ }),
280
+ });
281
281
  });
282
282
 
283
283
  expect(onLoginSuccess).toHaveBeenCalledWith(
@@ -642,7 +642,7 @@ describe("SuperLogin Component - Password Reset", () => {
642
642
  await user.click(submitButton);
643
643
 
644
644
  await waitFor(() => {
645
- expect(global.fetch).toHaveBeenCalledWith("/api/public/resetPassword", {
645
+ expect(global.fetch).toHaveBeenCalledWith("/api/v2/auth/reset-password", {
646
646
  method: "POST",
647
647
  headers: { "Content-Type": "application/json" },
648
648
  body: JSON.stringify({ email: "test@example.com" }),
@@ -757,7 +757,7 @@ describe("SuperLogin Component - Login Link", () => {
757
757
  await user.click(submitButton);
758
758
 
759
759
  await waitFor(() => {
760
- expect(global.fetch).toHaveBeenCalledWith("/api/public/passwordlessLogin", {
760
+ expect(global.fetch).toHaveBeenCalledWith("/api/v2/auth/passwordless", {
761
761
  method: "POST",
762
762
  headers: { "Content-Type": "application/json" },
763
763
  body: JSON.stringify({ email: "test@example.com", destination: "dashboard" }),
@@ -817,7 +817,7 @@ describe("SuperLogin Component - Setup/First Use", () => {
817
817
 
818
818
  await waitFor(() => {
819
819
  expect(global.fetch).toHaveBeenCalledWith(
820
- "/api/public/checkIfFirstUseEligible/test%40example.com"
820
+ "/api/v2/auth/first-time/test%40example.com"
821
821
  );
822
822
  });
823
823
 
@@ -889,7 +889,7 @@ describe("SuperLogin Component - Setup/First Use", () => {
889
889
  await fireEvent.submit(form);
890
890
 
891
891
  await waitFor(() => {
892
- expect(global.fetch).toHaveBeenCalledWith("/api/public/setFirstUsePassword", {
892
+ expect(global.fetch).toHaveBeenCalledWith("/api/v2/auth/first-time", {
893
893
  method: "POST",
894
894
  headers: { "Content-Type": "application/json" },
895
895
  credentials: "include",
@@ -1312,15 +1312,15 @@ describe("SuperLogin Component - Email Normalization", () => {
1312
1312
  await fireEvent.submit(form);
1313
1313
 
1314
1314
  await waitFor(() => {
1315
- expect(global.fetch).toHaveBeenCalledWith(
1316
- "/api/public/login",
1317
- expect.objectContaining({
1318
- body: JSON.stringify({
1319
- email: "test@example.com",
1320
- password: "password123",
1321
- }),
1322
- })
1323
- );
1315
+ expect(global.fetch).toHaveBeenCalledWith(
1316
+ "/api/v2/auth/login",
1317
+ expect.objectContaining({
1318
+ body: JSON.stringify({
1319
+ email: "test@example.com",
1320
+ password: "password123",
1321
+ }),
1322
+ })
1323
+ );
1324
1324
  });
1325
1325
  });
1326
1326
 
@@ -313,7 +313,7 @@
313
313
  isLoading = true;
314
314
  try {
315
315
  const response = await fetch(
316
- `${apiBaseUrl}/api/public/checkIfFirstUseEligible/${encodeURIComponent(emailVal)}`,
316
+ `${apiBaseUrl}/api/v2/auth/first-time/${encodeURIComponent(emailVal)}`,
317
317
  );
318
318
  if (response.ok) {
319
319
  const data = await response.json();
@@ -363,7 +363,7 @@
363
363
  return;
364
364
  }
365
365
  try {
366
- const response = await fetch(`${apiBaseUrl}/api/public/login`, {
366
+ const response = await fetch(`${apiBaseUrl}/api/v2/auth/login`, {
367
367
  method: "POST",
368
368
  headers: {
369
369
  "Content-Type": "application/json",
@@ -441,7 +441,7 @@
441
441
  const passwordValue = password;
442
442
 
443
443
  try {
444
- const response = await fetch(`${apiBaseUrl}/api/public/setFirstUsePassword`, {
444
+ const response = await fetch(`${apiBaseUrl}/api/v2/auth/first-time`, {
445
445
  method: "POST",
446
446
  headers: {
447
447
  "Content-Type": "application/json",
@@ -501,7 +501,7 @@
501
501
  return false;
502
502
  }
503
503
 
504
- const apiCall = fetch(`${apiBaseUrl}/api/public/resetPassword`, {
504
+ const apiCall = fetch(`${apiBaseUrl}/api/v2/auth/reset-password`, {
505
505
  method: "POST",
506
506
  headers: { "Content-Type": "application/json" },
507
507
  body: JSON.stringify({ email: emailValue.toLowerCase() }),
@@ -545,7 +545,7 @@
545
545
  return false;
546
546
  }
547
547
 
548
- const apiCall = fetch(`${apiBaseUrl}/api/public/passwordlessLogin`, {
548
+ const apiCall = fetch(`${apiBaseUrl}/api/v2/auth/passwordless`, {
549
549
  method: "POST",
550
550
  headers: { "Content-Type": "application/json" },
551
551
  body: JSON.stringify({
@@ -4,27 +4,27 @@ import { expect, describe, test, vi, beforeEach, afterEach } from 'vitest';
4
4
  import PlaceAutocomplete from './PlaceAutocomplete.svelte';
5
5
 
6
6
  // Mock Google Maps API
7
- const mockAutocompleteSuggestion = {
8
- fetchAutocompleteSuggestions: vi.fn(),
9
- };
10
-
11
- // Vitest 4.x requires class syntax for constructor mocks
12
- class MockAutocompleteSessionToken {}
13
-
14
- const mockLoader = {
15
- importLibrary: vi.fn().mockResolvedValue({
16
- AutocompleteSessionToken: MockAutocompleteSessionToken,
17
- AutocompleteSuggestion: mockAutocompleteSuggestion,
18
- }),
19
- };
7
+ // vi.hoisted ensures these are available when vi.mock is hoisted
8
+ const { mockAutocompleteSuggestion, MockAutocompleteSessionToken, mockSetOptions, mockImportLibrary } = vi.hoisted(() => {
9
+ class _MockAutocompleteSessionToken {}
10
+ const _mockAutocompleteSuggestion = {
11
+ fetchAutocompleteSuggestions: vi.fn(),
12
+ };
13
+ return {
14
+ mockAutocompleteSuggestion: _mockAutocompleteSuggestion,
15
+ MockAutocompleteSessionToken: _MockAutocompleteSessionToken,
16
+ mockSetOptions: vi.fn(),
17
+ mockImportLibrary: vi.fn().mockResolvedValue({
18
+ AutocompleteSessionToken: _MockAutocompleteSessionToken,
19
+ AutocompleteSuggestion: _mockAutocompleteSuggestion,
20
+ }),
21
+ };
22
+ });
20
23
 
21
- // Mock the Google Maps Loader - Vitest 4.x requires class syntax
24
+ // Mock the Google Maps Loader - v2 uses functional API
22
25
  vi.mock('@googlemaps/js-api-loader', () => ({
23
- Loader: class MockLoader {
24
- constructor() {
25
- this.importLibrary = mockLoader.importLibrary;
26
- }
27
- },
26
+ setOptions: mockSetOptions,
27
+ importLibrary: mockImportLibrary,
28
28
  }));
29
29
 
30
30
  // Mock config
@@ -1,10 +1,9 @@
1
1
  <script lang="ts">
2
2
  import { SearchOutline } from "../../../primitives/Icons";
3
- import * as GMaps from '@googlemaps/js-api-loader';
3
+ import { setOptions, importLibrary } from '@googlemaps/js-api-loader';
4
4
  import { PUBLIC_GOOGLE_MAPS_API_KEY } from '../../../config.js';
5
5
  import { typography } from '../../../tokens/typography';
6
6
  import { bloom } from '../../../utils/transitions.js';
7
- const { Loader } = GMaps;
8
7
  /** Google Places API address component */ interface AddressComponent { longText: string; shortText: string; types: string[]; } /** Google Places API response data */ interface PlaceData { formattedAddress?: string; addressComponents?: AddressComponent[]; text?: string; [key: string]: unknown; } /** Google Places autocomplete suggestion */ interface AutocompleteSuggestion { placePrediction: { types: string[]; text: { toString(): string }; toPlace(): PlaceObject; }; } /** Google Places place object */ interface PlaceObject { fetchFields(options: { fields: string[] }): Promise<void>; toJSON(): PlaceData; } /** Google Places API interface */ interface PlacesApiInterface { AutocompleteSessionToken: new () => AutocompleteSessionToken; AutocompleteSuggestion: { fetchAutocompleteSuggestions(request: AutocompleteRequest): Promise<{ suggestions: AutocompleteSuggestion[] }>; }; } /** Google Places autocomplete session token */ interface AutocompleteSessionToken {} /** Autocomplete request parameters */ interface AutocompleteRequest { input: string; language: string; region: string; sessionToken: AutocompleteSessionToken | string; } /** Search result item */ interface SearchResult { to_place: PlaceObject; text: string; originalText?: string; }
9
8
 
10
9
  interface Props {
@@ -43,7 +42,6 @@
43
42
  let title = $state('');
44
43
  let results = $state<SearchResult[]>([]);
45
44
  let token: AutocompleteSessionToken | undefined;
46
- let loader: GMaps.Loader;
47
45
  let placesApi: Partial<PlacesApiInterface> = {};
48
46
 
49
47
  let request = $state<{
@@ -243,14 +241,13 @@
243
241
  }
244
242
 
245
243
  try {
246
- loader = new Loader({
247
- apiKey: PUBLIC_GOOGLE_MAPS_API_KEY,
248
- version: 'weekly',
249
- libraries: ['places'],
244
+ setOptions({
245
+ key: PUBLIC_GOOGLE_MAPS_API_KEY,
246
+ v: 'weekly',
250
247
  });
251
248
 
252
249
  const { AutocompleteSessionToken, AutocompleteSuggestion } =
253
- await loader.importLibrary('places');
250
+ await importLibrary('places');
254
251
  placesApi.AutocompleteSessionToken = AutocompleteSessionToken;
255
252
  placesApi.AutocompleteSuggestion = AutocompleteSuggestion;
256
253
  token = new placesApi.AutocompleteSessionToken!();
@@ -1 +1 @@
1
- {"version":3,"file":"PlaceAutocomplete.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.svelte.ts"],"names":[],"mappings":"AASA,0CAA0C,CAAE,UAAU,gBAAgB;IAAM,QAAQ,EAAE,MAAM,CAAC;IAAI,SAAS,EAAE,MAAM,CAAC;IAAI,KAAK,EAAE,MAAM,EAAE,CAAC;CAAG;AACzI,sCAAsC,CAAE,UAAU,SAAS;IAAM,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAAI,iBAAiB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAAI,IAAI,CAAC,EAAE,MAAM,CAAC;IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAAG;AAMrL,UAAU,KAAK;IACb,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IACvC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAiTH,QAAA,MAAM,iBAAiB,sDAAwC,CAAC;AAChE,KAAK,iBAAiB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC9D,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"PlaceAutocomplete.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.svelte.ts"],"names":[],"mappings":"AASA,0CAA0C,CAAE,UAAU,gBAAgB;IAAM,QAAQ,EAAE,MAAM,CAAC;IAAI,SAAS,EAAE,MAAM,CAAC;IAAI,KAAK,EAAE,MAAM,EAAE,CAAC;CAAG;AACzI,sCAAsC,CAAE,UAAU,SAAS;IAAM,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAAI,iBAAiB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAAI,IAAI,CAAC,EAAE,MAAM,CAAC;IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAAG;AAMrL,UAAU,KAAK;IACb,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IACvC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AA8SH,QAAA,MAAM,iBAAiB,sDAAwC,CAAC;AAChE,KAAK,iBAAiB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC9D,eAAe,iBAAiB,CAAC"}
@@ -1,4 +1,4 @@
1
- export function fetchEventsFromAPI(): Promise<any>;
1
+ export function fetchEventsFromAPI(venueId: any): Promise<any>;
2
2
  export function fetchEventsForMonth(year: any, month: any): Promise<any>;
3
3
  export function fetchEventsForWeek(date: any): Promise<any>;
4
4
  export function fetchEventsForDay(date: any): Promise<any>;
@@ -1 +1 @@
1
- {"version":3,"file":"EventService.d.ts","sourceRoot":"","sources":["../../src/lib/services/EventService.js"],"names":[],"mappings":"AAIA,mDAkBC;AAED,yEAYC;AAED,4DAkBC;AAED,2DAgBC"}
1
+ {"version":3,"file":"EventService.d.ts","sourceRoot":"","sources":["../../src/lib/services/EventService.js"],"names":[],"mappings":"AAKA,+DAqBC;AAED,yEAYC;AAED,4DAkBC;AAED,2DAgBC"}
@@ -1,10 +1,14 @@
1
1
  import { addDays, startOfWeek } from "date-fns";
2
+ import { buildApiUrl } from "../utils/apiConfig";
2
3
 
3
4
  let mockEvents = [];
4
5
 
5
- export async function fetchEventsFromAPI() {
6
+ export async function fetchEventsFromAPI(venueId) {
6
7
  try {
7
- const response = await fetch("https://get-micdrop.com/api/public/getEventsForVenue");
8
+ const url = venueId
9
+ ? buildApiUrl(`/api/v2/public/events/venue/${venueId}`)
10
+ : buildApiUrl("/api/v2/public/events/venue");
11
+ const response = await fetch(url);
8
12
  if (response.ok) {
9
13
  const events = await response.json();
10
14
  return events.map((event) => ({
@@ -30,7 +30,7 @@ describe('EventService', () => {
30
30
  const events = await fetchEventsFromAPI();
31
31
 
32
32
  expect(global.fetch).toHaveBeenCalledWith(
33
- 'https://get-micdrop.com/api/public/getEventsForVenue'
33
+ 'https://get-micdrop.com/api/v2/public/events/venue'
34
34
  );
35
35
  expect(events).toHaveLength(3);
36
36
  });
@@ -1,4 +1,4 @@
1
- import { API_BASE_URL, API_ENDPOINTS, buildApiUrl } from "../utils/apiConfig";
1
+ import { API_BASE_URL, USE_V2_API, buildApiUrl, buildPerformerInviteUrl, getPerformerInviteMethod } from "../utils/apiConfig";
2
2
  import { getPerformerToken } from "../utils/utils";
3
3
 
4
4
  /**
@@ -10,9 +10,9 @@ import { getPerformerToken } from "../utils/utils";
10
10
  export async function acceptInvite(inviteId, message = "") {
11
11
  try {
12
12
  const response = await fetch(
13
- buildApiUrl(`${API_ENDPOINTS.ACCEPT_EVENT_PERFORMER_INVITE}/${inviteId}`),
13
+ buildPerformerInviteUrl(inviteId, "accept"),
14
14
  {
15
- method: "PUT",
15
+ method: getPerformerInviteMethod("accept"),
16
16
  headers: {
17
17
  "Content-Type": "application/json",
18
18
  },
@@ -40,9 +40,9 @@ export async function acceptInvite(inviteId, message = "") {
40
40
  export async function declineInvite(inviteId, message = "") {
41
41
  try {
42
42
  const response = await fetch(
43
- buildApiUrl(`${API_ENDPOINTS.DECLINE_EVENT_PERFORMER_INVITE}/${inviteId}`),
43
+ buildPerformerInviteUrl(inviteId, "decline"),
44
44
  {
45
- method: "PUT",
45
+ method: getPerformerInviteMethod("decline"),
46
46
  headers: {
47
47
  "Content-Type": "application/json",
48
48
  },
@@ -70,9 +70,9 @@ export async function declineInvite(inviteId, message = "") {
70
70
  export async function cancelInvite(inviteId, message = "") {
71
71
  try {
72
72
  const response = await fetch(
73
- buildApiUrl(`${API_ENDPOINTS.CANCEL_EVENT_PERFORMER_INVITE}/${inviteId}`),
73
+ buildPerformerInviteUrl(inviteId, "cancel"),
74
74
  {
75
- method: "PUT",
75
+ method: getPerformerInviteMethod("cancel"),
76
76
  headers: {
77
77
  "Content-Type": "application/json",
78
78
  },
@@ -101,9 +101,10 @@ export async function sendVenueMessage(inviteId, message) {
101
101
  try {
102
102
  const token = getPerformerToken();
103
103
 
104
- const response = await fetch(
105
- buildApiUrl(`${API_ENDPOINTS.SEND_VENUE_MESSAGE}/${inviteId}`),
106
- {
104
+ const url = USE_V2_API
105
+ ? buildApiUrl(`/api/v2/performer/invites/${inviteId}/message`)
106
+ : buildApiUrl(`/api/performer/sendVenueMessage/${inviteId}`);
107
+ const response = await fetch(url, {
107
108
  method: "POST",
108
109
  headers: {
109
110
  "Content-Type": "application/json",
@@ -3,16 +3,16 @@ import { describe, it, expect, vi, beforeEach } from 'vitest';
3
3
  // Mock the utility modules before imports
4
4
  vi.mock('$lib/utils/apiConfig', () => ({
5
5
  API_BASE_URL: 'https://get-micdrop.com',
6
- API_ENDPOINTS: {
7
- ACCEPT_EVENT_PERFORMER_INVITE: '/api/public/acceptEventPerformerInvite',
8
- DECLINE_EVENT_PERFORMER_INVITE: '/api/public/declineEventPerformerInvite',
9
- CANCEL_EVENT_PERFORMER_INVITE: '/api/public/cancelEventPerformerInvite',
10
- SEND_VENUE_MESSAGE: '/api/performer/sendVenueMessage',
11
- },
6
+ USE_V2_API: false,
12
7
  buildApiUrl: (path) => {
13
8
  const cleanPath = path.startsWith('/') ? path : `/${path}`;
14
9
  return `https://get-micdrop.com${cleanPath}`;
15
10
  },
11
+ buildPerformerInviteUrl: (inviteId, action) => {
12
+ const v2Action = action === 'accept' ? 'confirm' : action;
13
+ return `https://get-micdrop.com/api/v2/event-performers/${inviteId}/${v2Action}`;
14
+ },
15
+ getPerformerInviteMethod: (action) => action === 'cancel' ? 'PUT' : 'POST',
16
16
  }));
17
17
 
18
18
  vi.mock('$lib/utils/utils', () => ({
@@ -43,9 +43,9 @@ describe('ShowService', () => {
43
43
  await acceptInvite('123');
44
44
 
45
45
  expect(global.fetch).toHaveBeenCalledWith(
46
- 'https://get-micdrop.com/api/public/acceptEventPerformerInvite/123',
46
+ 'https://get-micdrop.com/api/v2/event-performers/123/confirm',
47
47
  expect.objectContaining({
48
- method: 'PUT',
48
+ method: 'POST',
49
49
  headers: { 'Content-Type': 'application/json' },
50
50
  })
51
51
  );
@@ -126,9 +126,9 @@ describe('ShowService', () => {
126
126
  await declineInvite('456');
127
127
 
128
128
  expect(global.fetch).toHaveBeenCalledWith(
129
- 'https://get-micdrop.com/api/public/declineEventPerformerInvite/456',
129
+ 'https://get-micdrop.com/api/v2/event-performers/456/decline',
130
130
  expect.objectContaining({
131
- method: 'PUT',
131
+ method: 'POST',
132
132
  })
133
133
  );
134
134
  });
@@ -192,7 +192,7 @@ describe('ShowService', () => {
192
192
  await cancelInvite('789');
193
193
 
194
194
  expect(global.fetch).toHaveBeenCalledWith(
195
- 'https://get-micdrop.com/api/public/cancelEventPerformerInvite/789',
195
+ 'https://get-micdrop.com/api/v2/event-performers/789/cancel',
196
196
  expect.objectContaining({
197
197
  method: 'PUT',
198
198
  })
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../src/lib/telemetry.js"],"names":[],"mappings":"AAoDA;;;GAGG;AACH,6CAFW,MAAM,QAwIhB;AAGD,wDAcC;AAGD;;SAMC;AAGD,mEAeC;AAGD,kEAcC;AAGD,2DAmBC;AAGD,4GAkBC;AAGD,kEAeC;AAGD,uEAeC;AAGD,mDASC;AAgCD;;;GAGG;AACH,2CAkBC;AAGD;;;;;;;;;EAEC"}
1
+ {"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../src/lib/telemetry.js"],"names":[],"mappings":"AAmDA;;;GAGG;AACH,6CAFW,MAAM,QAsIhB;AAGD,wDAcC;AAGD;;SAMC;AAGD,mEAeC;AAGD,kEAcC;AAGD,2DAmBC;AAGD,4GAkBC;AAGD,kEAeC;AAGD,uEAeC;AAGD,mDASC;AAgCD;;;GAGG;AACH,2CAkBC;AAGD;;;;;;;;;EAEC"}
package/dist/telemetry.js CHANGED
@@ -7,13 +7,12 @@ import { FetchInstrumentation } from '@opentelemetry/instrumentation-fetch';
7
7
  import { UserInteractionInstrumentation } from '@opentelemetry/instrumentation-user-interaction';
8
8
  import { XMLHttpRequestInstrumentation } from '@opentelemetry/instrumentation-xml-http-request';
9
9
  import { B3Propagator } from '@opentelemetry/propagator-b3';
10
- import { Resource } from '@opentelemetry/resources';
10
+ import { resourceFromAttributes } from '@opentelemetry/resources';
11
11
  import { BatchSpanProcessor } from '@opentelemetry/sdk-trace-base';
12
12
  import { WebTracerProvider } from '@opentelemetry/sdk-trace-web';
13
13
  import {
14
- SEMRESATTRS_DEPLOYMENT_ENVIRONMENT,
15
- SEMRESATTRS_SERVICE_NAME,
16
- SEMRESATTRS_SERVICE_VERSION,
14
+ ATTR_SERVICE_NAME,
15
+ ATTR_SERVICE_VERSION,
17
16
  } from '@opentelemetry/semantic-conventions';
18
17
 
19
18
  /**
@@ -64,17 +63,25 @@ export function initTelemetry(customConfig = {}) {
64
63
 
65
64
  try {
66
65
  // Create resource with service information
67
- const resource = new Resource({
68
- [SEMRESATTRS_SERVICE_NAME]: config.serviceName,
69
- [SEMRESATTRS_SERVICE_VERSION]: config.serviceVersion,
70
- [SEMRESATTRS_DEPLOYMENT_ENVIRONMENT]: config.environment,
66
+ const resource = resourceFromAttributes({
67
+ [ATTR_SERVICE_NAME]: config.serviceName,
68
+ [ATTR_SERVICE_VERSION]: config.serviceVersion,
69
+ 'deployment.environment': config.environment,
71
70
  'browser.user_agent': navigator.userAgent,
72
71
  'browser.language': navigator.language,
73
72
  'browser.platform': navigator.platform,
74
73
  'portal.type': config.portalType,
75
74
  });
76
75
 
77
- // Create tracer provider
76
+ // Configure OTLP exporter
77
+ const exporter = new OTLPTraceExporter({
78
+ url: config.otlpEndpoint,
79
+ headers: {
80
+ 'Content-Type': 'application/json',
81
+ },
82
+ });
83
+
84
+ // Create tracer provider with span processors
78
85
  tracerProvider = new WebTracerProvider({
79
86
  resource,
80
87
  sampler: {
@@ -85,26 +92,16 @@ export function initTelemetry(customConfig = {}) {
85
92
  };
86
93
  },
87
94
  },
95
+ spanProcessors: [
96
+ new BatchSpanProcessor(exporter, {
97
+ maxQueueSize: 100,
98
+ maxExportBatchSize: 50,
99
+ scheduledDelayMillis: 500,
100
+ exportTimeoutMillis: 30000,
101
+ }),
102
+ ],
88
103
  });
89
104
 
90
- // Configure OTLP exporter
91
- const exporter = new OTLPTraceExporter({
92
- url: config.otlpEndpoint,
93
- headers: {
94
- 'Content-Type': 'application/json',
95
- },
96
- });
97
-
98
- // Add batch span processor
99
- tracerProvider.addSpanProcessor(
100
- new BatchSpanProcessor(exporter, {
101
- maxQueueSize: 100,
102
- maxExportBatchSize: 50,
103
- scheduledDelayMillis: 500,
104
- exportTimeoutMillis: 30000,
105
- })
106
- );
107
-
108
105
  // Set global provider
109
106
  tracerProvider.register({
110
107
  contextManager: new ZoneContextManager(),
@@ -3,8 +3,8 @@
3
3
  import { registerInstrumentations } from '@opentelemetry/instrumentation';
4
4
  import { NodeSDK } from '@opentelemetry/sdk-node';
5
5
  import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';
6
- import { Resource } from '@opentelemetry/resources';
7
- import { SEMRESATTRS_SERVICE_NAME, SEMRESATTRS_SERVICE_VERSION, SEMRESATTRS_DEPLOYMENT_ENVIRONMENT } from '@opentelemetry/semantic-conventions';
6
+ import { resourceFromAttributes } from '@opentelemetry/resources';
7
+ import { ATTR_SERVICE_NAME, ATTR_SERVICE_VERSION } from '@opentelemetry/semantic-conventions';
8
8
  import { HttpInstrumentation } from '@opentelemetry/instrumentation-http';
9
9
  import { FetchInstrumentation } from '@opentelemetry/instrumentation-fetch';
10
10
  import { getNodeAutoInstrumentations } from '@opentelemetry/auto-instrumentations-node';
@@ -32,10 +32,10 @@ export function initServerTelemetry() {
32
32
 
33
33
  try {
34
34
  sdk = new NodeSDK({
35
- resource: new Resource({
36
- [SEMRESATTRS_SERVICE_NAME]: SERVER_TELEMETRY_CONFIG.serviceName,
37
- [SEMRESATTRS_SERVICE_VERSION]: SERVER_TELEMETRY_CONFIG.serviceVersion,
38
- [SEMRESATTRS_DEPLOYMENT_ENVIRONMENT]: SERVER_TELEMETRY_CONFIG.environment,
35
+ resource: resourceFromAttributes({
36
+ [ATTR_SERVICE_NAME]: SERVER_TELEMETRY_CONFIG.serviceName,
37
+ [ATTR_SERVICE_VERSION]: SERVER_TELEMETRY_CONFIG.serviceVersion,
38
+ 'deployment.environment': SERVER_TELEMETRY_CONFIG.environment,
39
39
  'portal.type': 'performers'
40
40
  }),
41
41
  traceExporter: new OTLPTraceExporter({
@@ -21,13 +21,12 @@ vi.mock('@opentelemetry/exporter-trace-otlp-http', () => ({
21
21
  }));
22
22
 
23
23
  vi.mock('@opentelemetry/resources', () => ({
24
- Resource: class MockResource {},
24
+ resourceFromAttributes: vi.fn((attrs) => attrs),
25
25
  }));
26
26
 
27
27
  vi.mock('@opentelemetry/semantic-conventions', () => ({
28
- SEMRESATTRS_SERVICE_NAME: 'service.name',
29
- SEMRESATTRS_SERVICE_VERSION: 'service.version',
30
- SEMRESATTRS_DEPLOYMENT_ENVIRONMENT: 'deployment.environment',
28
+ ATTR_SERVICE_NAME: 'service.name',
29
+ ATTR_SERVICE_VERSION: 'service.version',
31
30
  }));
32
31
 
33
32
  vi.mock('@opentelemetry/instrumentation-http', () => ({
@@ -33,13 +33,12 @@ vi.mock('@opentelemetry/exporter-trace-otlp-http', () => ({
33
33
  }));
34
34
 
35
35
  vi.mock('@opentelemetry/resources', () => ({
36
- Resource: class MockResource {},
36
+ resourceFromAttributes: vi.fn((attrs) => attrs),
37
37
  }));
38
38
 
39
39
  vi.mock('@opentelemetry/semantic-conventions', () => ({
40
- SEMRESATTRS_SERVICE_NAME: 'service.name',
41
- SEMRESATTRS_SERVICE_VERSION: 'service.version',
42
- SEMRESATTRS_DEPLOYMENT_ENVIRONMENT: 'deployment.environment',
40
+ ATTR_SERVICE_NAME: 'service.name',
41
+ ATTR_SERVICE_VERSION: 'service.version',
43
42
  }));
44
43
 
45
44
  vi.mock('@opentelemetry/instrumentation-document-load', () => ({
@@ -47,28 +47,28 @@ export const API_ENDPOINTS_V1 = {
47
47
 
48
48
  export const API_ENDPOINTS_V2 = {
49
49
  // Auth
50
- LOGIN: '/api/public/login',
50
+ LOGIN: '/api/v2/auth/login',
51
51
 
52
52
  // Performer
53
- PERFORMER_PROFILE: '/api/performer/getPerformerProfile',
54
- MODIFY_PERFORMER_PROFILE: '/api/performer/modifyPerformerProfile',
55
- PERFORMER_AVAILABILITIES: '/api/performer/performerAvailabilities',
56
- GET_EVENT_PERFORMER_INVITES: '/api/performer/getEventPerformerInvites',
57
- GET_ROSTER_EVENT_PERFORMERS_FOR_USER: '/api/performer/getRosterEventPerformersForUser',
53
+ PERFORMER_PROFILE: '/api/v2/performer/profile',
54
+ MODIFY_PERFORMER_PROFILE: '/api/v2/performer/profile',
55
+ PERFORMER_AVAILABILITIES: '/api/v2/performer/availabilities',
56
+ GET_EVENT_PERFORMER_INVITES: '/api/v2/performer/invites',
57
+ GET_ROSTER_EVENT_PERFORMERS_FOR_USER: '/api/v2/performers/roster',
58
58
 
59
59
  // Public
60
- GET_EVENTS_FOR_VENUE: '/api/public/getEventsForVenue',
61
- GET_VENUE: '/api/public/getVenue',
62
- SEND_VENUE_MESSAGE: '/api/performer/sendVenueMessage',
63
- REJECT_ROSTER_INVITE: '/api/public/rejectRosterInvite',
64
- REMOVE_VENUE_FROM_ROSTER: '/api/performer/removeVenueFromRoster',
60
+ GET_EVENTS_FOR_VENUE: '/api/v2/public/events/venue',
61
+ GET_VENUE: '/api/v2/public/venues',
62
+ SEND_VENUE_MESSAGE: '/api/v2/performer/invites',
63
+ REJECT_ROSTER_INVITE: '/api/v2/public/roster-invites',
64
+ REMOVE_VENUE_FROM_ROSTER: '/api/v2/performer/venues',
65
65
 
66
66
  // V2 Event Performer endpoints
67
67
  CONFIRM_EVENT_PERFORMER: '/api/v2/event-performers',
68
68
  DECLINE_EVENT_PERFORMER: '/api/v2/event-performers',
69
69
  ACCEPT_EVENT_PERFORMER_INVITE: '/api/v2/event-performers',
70
70
  DECLINE_EVENT_PERFORMER_INVITE: '/api/v2/event-performers',
71
- CANCEL_EVENT_PERFORMER_INVITE: '/api/public/cancelEventPerformerInvite',
71
+ CANCEL_EVENT_PERFORMER_INVITE: '/api/v2/event-performers',
72
72
 
73
73
  // Ticketing
74
74
  TICKETING_EVENTS: '/ticketing/events',
@@ -96,9 +96,6 @@ export function buildV2PerformerActionUrl(eventPerformerId, action) {
96
96
  export function buildPerformerInviteUrl(inviteId, action) {
97
97
  if (USE_V2_API) {
98
98
  const v2Action = action === 'accept' ? 'confirm' : action;
99
- if (v2Action === 'cancel') {
100
- return buildApiUrl(`${API_ENDPOINTS_V1.CANCEL_EVENT_PERFORMER_INVITE}/${inviteId}`);
101
- }
102
99
  return buildApiUrl(`/api/v2/event-performers/${inviteId}/${v2Action}`);
103
100
  }
104
101
 
@@ -193,12 +193,12 @@ describe('apiConfig', () => {
193
193
  expect(url).toContain('/api/v2/event-performers/456/decline');
194
194
  });
195
195
 
196
- it('buildPerformerInviteUrl uses V1 endpoint for cancel even when USE_V2_API is true', async () => {
196
+ it('buildPerformerInviteUrl uses V2 endpoint for cancel when USE_V2_API is true', async () => {
197
197
  import.meta.env.VITE_API_VERSION = 'v2';
198
198
  const module = await import('./apiConfig');
199
199
 
200
200
  const url = module.buildPerformerInviteUrl(789, 'cancel');
201
- expect(url).toContain('/api/public/cancelEventPerformerInvite/789');
201
+ expect(url).toContain('/api/v2/event-performers/789/cancel');
202
202
  });
203
203
 
204
204
  it('getPerformerInviteMethod returns POST for V2 non-cancel actions', async () => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@getmicdrop/svelte-components",
3
- "version": "5.17.0",
3
+ "version": "5.17.1",
4
4
  "description": "Shared component library for Micdrop applications",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -197,31 +197,30 @@
197
197
  "svelte": "^5.0.0"
198
198
  },
199
199
  "dependencies": {
200
- "@googlemaps/js-api-loader": "^1.16.10",
200
+ "@googlemaps/js-api-loader": "^2.0.2",
201
201
  "@opentelemetry/api": "^1.9.0",
202
- "@opentelemetry/auto-instrumentations-node": "^0.65.0",
203
- "@opentelemetry/auto-instrumentations-web": "^0.52.0",
204
- "@opentelemetry/context-zone": "^1.26.0",
205
- "@opentelemetry/exporter-trace-otlp-http": "^0.206.0",
206
- "@opentelemetry/instrumentation-document-load": "^0.52.0",
207
- "@opentelemetry/instrumentation-fetch": "^0.206.0",
208
- "@opentelemetry/instrumentation-http": "^0.206.0",
209
- "@opentelemetry/instrumentation-user-interaction": "^0.51.0",
210
- "@opentelemetry/instrumentation-xml-http-request": "^0.206.0",
211
- "@opentelemetry/propagator-b3": "^1.26.0",
212
- "@opentelemetry/resources": "^1.26.0",
213
- "@opentelemetry/sdk-node": "^0.206.0",
214
- "@opentelemetry/sdk-trace-base": "^1.26.0",
215
- "@opentelemetry/sdk-trace-web": "^1.26.0",
216
- "@opentelemetry/semantic-conventions": "^1.37.0",
202
+ "@opentelemetry/auto-instrumentations-node": "^0.70.0",
203
+ "@opentelemetry/auto-instrumentations-web": "^0.57.0",
204
+ "@opentelemetry/context-zone": "^2.5.1",
205
+ "@opentelemetry/exporter-trace-otlp-http": "^0.212.0",
206
+ "@opentelemetry/instrumentation-document-load": "^0.57.0",
207
+ "@opentelemetry/instrumentation-fetch": "^0.212.0",
208
+ "@opentelemetry/instrumentation-http": "^0.212.0",
209
+ "@opentelemetry/instrumentation-user-interaction": "^0.56.0",
210
+ "@opentelemetry/instrumentation-xml-http-request": "^0.212.0",
211
+ "@opentelemetry/propagator-b3": "^2.5.1",
212
+ "@opentelemetry/resources": "^2.5.1",
213
+ "@opentelemetry/sdk-node": "^0.212.0",
214
+ "@opentelemetry/sdk-trace-base": "^2.5.1",
215
+ "@opentelemetry/sdk-trace-web": "^2.5.1",
216
+ "@opentelemetry/semantic-conventions": "^1.39.0",
217
217
  "@testing-library/user-event": "^14.5.2",
218
218
  "carbon-icons-svelte": "^13.7.0",
219
219
  "check-password-strength": "^3.0.0",
220
220
  "clsx": "^2.1.1",
221
221
  "cookie": "^1.0.2",
222
- "date-fns": "^3.6.0",
222
+ "date-fns": "^4.1.0",
223
223
  "date-fns-tz": "^3.2.0",
224
- "dotenv": "^16.4.7",
225
224
  "filepond": "^4.32.10",
226
225
  "filepond-plugin-file-validate-size": "^2.2.8",
227
226
  "filepond-plugin-file-validate-type": "^1.2.9",
@@ -232,20 +231,15 @@
232
231
  "svelte-easy-crop": "^5.0.0",
233
232
  "svelte-filepond": "^0.2.2",
234
233
  "svelte-sonner": "^1.0.7",
235
- "tailwind-merge": "^2.5.4",
236
- "zod": "^3.23.8"
234
+ "tailwind-merge": "^3.5.0",
235
+ "zod": "^4.3.6"
237
236
  },
238
237
  "devDependencies": {
239
- "@cypress/code-coverage": "^3.14.6",
240
- "@eslint/js": "^9.39.2",
241
- "@storybook/addon-essentials": "^8.6.15",
242
- "@storybook/addon-interactions": "^8.6.15",
243
- "@storybook/addon-links": "^8.6.15",
244
- "@storybook/addon-svelte-csf": "^5.0.10",
245
- "@storybook/blocks": "^8.6.15",
246
- "@storybook/svelte": "^10.1.11",
247
- "@storybook/sveltekit": "^10.1.11",
248
- "@storybook/test": "^8.6.15",
238
+ "@cypress/code-coverage": "^4.0.0",
239
+ "@eslint/js": "^10.0.1",
240
+ "@storybook/addon-svelte-csf": "^5.0.11",
241
+ "@storybook/svelte": "^10.2.11",
242
+ "@storybook/sveltekit": "^10.2.11",
249
243
  "@sveltejs/adapter-auto": "^3.2.2",
250
244
  "@sveltejs/kit": "^2.50.0",
251
245
  "@sveltejs/package": "^2.5.7",
@@ -261,20 +255,21 @@
261
255
  "@vitest/coverage-istanbul": "^4.0.16",
262
256
  "@vitest/coverage-v8": "^4.0.16",
263
257
  "@vitest/ui": "^4.0.16",
264
- "chromatic": "^13.3.4",
258
+ "chromatic": "^15.2.0",
265
259
  "cypress": "^15.1.0",
266
- "eslint": "^9.7.0",
267
- "eslint-plugin-svelte": "^2.43.0",
260
+ "dotenv": "^17.3.1",
261
+ "eslint": "^10.0.2",
262
+ "eslint-plugin-svelte": "^3.15.0",
268
263
  "globals": "^17.0.0",
269
264
  "husky": "^9.1.7",
270
- "jsdom": "^24.1.1",
265
+ "jsdom": "^28.1.0",
271
266
  "playwright": "^1.57.0",
272
267
  "prettier": "^3.3.3",
273
268
  "prettier-plugin-svelte": "^3.2.6",
274
269
  "start-server-and-test": "^2.0.13",
275
- "storybook": "^8.6.15",
270
+ "storybook": "^10.2.11",
276
271
  "svelte": "^5.46.1",
277
- "svelte-check": "^3.8.4",
272
+ "svelte-check": "^4.4.3",
278
273
  "tailwindcss": "^4.0.0",
279
274
  "typescript": "^5.9.3",
280
275
  "typescript-eslint": "^8.52.0",
@@ -290,5 +285,9 @@
290
285
  "bugs": {
291
286
  "url": "https://github.com/get-micdrop/svelte-components/issues"
292
287
  },
293
- "homepage": "https://github.com/get-micdrop/svelte-components#readme"
288
+ "homepage": "https://github.com/get-micdrop/svelte-components#readme",
289
+ "overrides": {
290
+ "minimatch": "^10.2.1",
291
+ "cookie": "^1.0.2"
292
+ }
294
293
  }