@fayz-ai/plugin-agenda 0.8.0 → 0.8.3

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 (117) hide show
  1. package/dist/{chunk-LFUELUIT.cjs → chunk-3KWNHV5A.cjs} +60 -2
  2. package/dist/chunk-3KWNHV5A.cjs.map +1 -0
  3. package/dist/{chunk-DRZF6CV2.js → chunk-YQO6B4G3.js} +60 -3
  4. package/dist/chunk-YQO6B4G3.js.map +1 -0
  5. package/dist/components/AgendaGeneralSettings.d.ts.map +1 -1
  6. package/dist/components/AppointmentModal.d.ts.map +1 -1
  7. package/dist/components/CalendarToolbar.d.ts.map +1 -1
  8. package/dist/data/supabase.d.ts +5 -1
  9. package/dist/data/supabase.d.ts.map +1 -1
  10. package/dist/index.cjs +1071 -766
  11. package/dist/index.cjs.map +1 -1
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +914 -609
  14. package/dist/index.js.map +1 -1
  15. package/dist/integrations/google-calendar/components/CalendarColorDot.d.ts +6 -0
  16. package/dist/integrations/google-calendar/components/CalendarColorDot.d.ts.map +1 -0
  17. package/dist/integrations/google-calendar/components/ChannelMappingList.d.ts +9 -0
  18. package/dist/integrations/google-calendar/components/ChannelMappingList.d.ts.map +1 -0
  19. package/dist/integrations/google-calendar/components/ImportEventsWizard.d.ts +12 -0
  20. package/dist/integrations/google-calendar/components/ImportEventsWizard.d.ts.map +1 -0
  21. package/dist/integrations/google-calendar/components/useAgendaLookups.d.ts +26 -0
  22. package/dist/integrations/google-calendar/components/useAgendaLookups.d.ts.map +1 -0
  23. package/dist/integrations/google-calendar/connectorDef.d.ts.map +1 -1
  24. package/dist/integrations/google-calendar/data/supabase.d.ts +33 -1
  25. package/dist/integrations/google-calendar/data/supabase.d.ts.map +1 -1
  26. package/dist/integrations/google-calendar/data/tables.d.ts +6 -0
  27. package/dist/integrations/google-calendar/data/tables.d.ts.map +1 -0
  28. package/dist/integrations/google-calendar/index.d.ts +1 -1
  29. package/dist/integrations/google-calendar/index.d.ts.map +1 -1
  30. package/dist/integrations/google-calendar/mapping.d.ts +56 -4
  31. package/dist/integrations/google-calendar/mapping.d.ts.map +1 -1
  32. package/dist/integrations/google-calendar/types.d.ts +101 -0
  33. package/dist/integrations/google-calendar/types.d.ts.map +1 -1
  34. package/dist/locales/en.d.ts.map +1 -1
  35. package/dist/locales/pt-BR.d.ts.map +1 -1
  36. package/dist/migrations/index.d.ts +11 -0
  37. package/dist/migrations/index.d.ts.map +1 -1
  38. package/dist/public/BookingWidget.d.ts.map +1 -1
  39. package/dist/public/context.d.ts +3 -1
  40. package/dist/public/context.d.ts.map +1 -1
  41. package/dist/public/createPublicBookingPlugin.d.ts +7 -1
  42. package/dist/public/createPublicBookingPlugin.d.ts.map +1 -1
  43. package/dist/public/data.d.ts +6 -0
  44. package/dist/public/data.d.ts.map +1 -1
  45. package/dist/public/data.supabase.d.ts.map +1 -1
  46. package/dist/public/format.d.ts +22 -1
  47. package/dist/public/format.d.ts.map +1 -1
  48. package/dist/public/hooks.d.ts.map +1 -1
  49. package/dist/public/index.cjs +31 -63
  50. package/dist/public/index.cjs.map +1 -1
  51. package/dist/public/index.d.ts +1 -1
  52. package/dist/public/index.d.ts.map +1 -1
  53. package/dist/public/index.js +27 -61
  54. package/dist/public/index.js.map +1 -1
  55. package/dist/public/steps/ContactStep.d.ts +4 -2
  56. package/dist/public/steps/ContactStep.d.ts.map +1 -1
  57. package/dist/public/types.d.ts +16 -0
  58. package/dist/public/types.d.ts.map +1 -1
  59. package/dist/views/CalendarView.d.ts.map +1 -1
  60. package/package.json +6 -5
  61. package/src/components/AgendaGeneralSettings.tsx +38 -16
  62. package/src/components/AppointmentModal.tsx +50 -108
  63. package/src/components/CalendarToolbar.tsx +10 -7
  64. package/src/data/supabase.ts +67 -13
  65. package/src/index.ts +56 -8
  66. package/src/integrations/google-calendar/components/CalendarColorDot.tsx +23 -0
  67. package/src/integrations/google-calendar/components/ChannelMappingList.tsx +329 -0
  68. package/src/integrations/google-calendar/components/ImportEventsWizard.tsx +215 -0
  69. package/src/integrations/google-calendar/components/useAgendaLookups.ts +100 -0
  70. package/src/integrations/google-calendar/connectorDef.tsx +123 -40
  71. package/src/integrations/google-calendar/data/supabase.ts +109 -13
  72. package/src/integrations/google-calendar/data/tables.ts +12 -0
  73. package/src/integrations/google-calendar/index.ts +10 -1
  74. package/src/integrations/google-calendar/integration.test.ts +126 -1
  75. package/src/integrations/google-calendar/mapping.ts +149 -9
  76. package/src/integrations/google-calendar/migrations/001_google_calendar.sql +9 -6
  77. package/src/integrations/google-calendar/migrations/002_smart_sync.sql +517 -0
  78. package/src/integrations/google-calendar/migrations/003_plg_rename.sql +273 -0
  79. package/src/integrations/google-calendar/types.ts +111 -0
  80. package/src/locales/en.ts +1 -0
  81. package/src/locales/pt-BR.ts +1 -0
  82. package/src/migrations/003_public_client_kind.sql +175 -0
  83. package/src/migrations/004_public_booking_assignee.sql +176 -0
  84. package/src/migrations/005_agent_rpcs.sql +168 -0
  85. package/src/migrations/006_agent_rpc_localtime.sql +181 -0
  86. package/src/migrations/007_schedule_exception_precedence.sql +290 -0
  87. package/src/migrations/008_agent_rpc_exception_precedence.sql +172 -0
  88. package/src/migrations/009_public_booking_location.sql +162 -0
  89. package/src/migrations/010_public_service_curation.sql +31 -0
  90. package/src/migrations/011_default_assignee.sql +167 -0
  91. package/src/migrations/012_drop_legacy_booking_overload.sql +29 -0
  92. package/src/migrations/013_normalize_v_appointments.sql +161 -0
  93. package/src/migrations/index.ts +1746 -1
  94. package/src/public/BookingWidget.tsx +10 -1
  95. package/src/public/context.tsx +3 -0
  96. package/src/public/createPublicBookingPlugin.ts +14 -1
  97. package/src/public/data.supabase.ts +3 -0
  98. package/src/public/data.ts +6 -0
  99. package/src/public/format.ts +36 -1
  100. package/src/public/hooks.ts +7 -2
  101. package/src/public/index.ts +1 -0
  102. package/src/public/steps/ContactStep.tsx +10 -5
  103. package/src/public/types.ts +21 -0
  104. package/src/views/CalendarView.tsx +15 -1
  105. package/dist/chunk-3LJKZQK4.js +0 -12
  106. package/dist/chunk-3LJKZQK4.js.map +0 -1
  107. package/dist/chunk-DRZF6CV2.js.map +0 -1
  108. package/dist/chunk-LFUELUIT.cjs.map +0 -1
  109. package/dist/chunk-SYDBDI3Q.cjs +0 -15
  110. package/dist/chunk-SYDBDI3Q.cjs.map +0 -1
  111. package/dist/components/SearchCombobox.d.ts +0 -38
  112. package/dist/components/SearchCombobox.d.ts.map +0 -1
  113. package/dist/tenant-222EHYUC.cjs +0 -16
  114. package/dist/tenant-222EHYUC.cjs.map +0 -1
  115. package/dist/tenant-LAUWVUYB.js +0 -3
  116. package/dist/tenant-LAUWVUYB.js.map +0 -1
  117. package/src/components/SearchCombobox.tsx +0 -216
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ export declare function CalendarColorDot({ color, className, }: {
3
+ color?: string | null;
4
+ className?: string;
5
+ }): React.JSX.Element;
6
+ //# sourceMappingURL=CalendarColorDot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CalendarColorDot.d.ts","sourceRoot":"","sources":["../../../../src/integrations/google-calendar/components/CalendarColorDot.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,SAAc,GACf,EAAE;IACD,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,qBAQA"}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import type { GoogleCalendarProvider } from '../data/supabase';
3
+ import type { CalendarChannel } from '../types';
4
+ export declare function ChannelMappingList({ provider, onChannelsChange, }: {
5
+ provider: GoogleCalendarProvider;
6
+ /** Bubble the current channels up so the parent can gate the import wizard. */
7
+ onChannelsChange?: (channels: CalendarChannel[]) => void;
8
+ }): React.JSX.Element;
9
+ //# sourceMappingURL=ChannelMappingList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChannelMappingList.d.ts","sourceRoot":"","sources":["../../../../src/integrations/google-calendar/components/ChannelMappingList.tsx"],"names":[],"mappings":"AAaA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAa/D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AAC9D,OAAO,KAAK,EACV,eAAe,EAKhB,MAAM,UAAU,CAAA;AAiCjB,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,gBAAgB,GACjB,EAAE;IACD,QAAQ,EAAE,sBAAsB,CAAA;IAChC,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,IAAI,CAAA;CACzD,qBA+PA"}
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import type { GoogleCalendarProvider } from '../data/supabase';
3
+ import type { CalendarChannel, ImportEventsResult } from '../types';
4
+ export declare function ImportEventsWizard({ provider, channels, onClose, onImported, }: {
5
+ provider: GoogleCalendarProvider;
6
+ /** Active channels — used to label each event with its source calendar + color. */
7
+ channels: CalendarChannel[];
8
+ onClose: () => void;
9
+ /** Fired after a successful import so the parent can refresh status/history. */
10
+ onImported?: (result: ImportEventsResult) => void;
11
+ }): React.JSX.Element;
12
+ //# sourceMappingURL=ImportEventsWizard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImportEventsWizard.d.ts","sourceRoot":"","sources":["../../../../src/integrations/google-calendar/components/ImportEventsWizard.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAoD,MAAM,OAAO,CAAA;AAGxE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAwB,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAiBzF,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,UAAU,GACX,EAAE;IACD,QAAQ,EAAE,sBAAsB,CAAA;IAChC,mFAAmF;IACnF,QAAQ,EAAE,eAAe,EAAE,CAAA;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,gFAAgF;IAChF,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAA;CAClD,qBA6KA"}
@@ -0,0 +1,26 @@
1
+ import type { ChannelTargetKind } from '../types';
2
+ /** A pickable target option (assignee/service/location) — id + display name. */
3
+ export interface LookupOption {
4
+ id: string;
5
+ name: string;
6
+ }
7
+ export interface AgendaLookups {
8
+ assignee: LookupOption[];
9
+ service: LookupOption[];
10
+ location: LookupOption[];
11
+ }
12
+ export interface UseAgendaLookupsResult {
13
+ lookups: AgendaLookups;
14
+ loading: boolean;
15
+ /** True when at least one of the three lookups returned rows. */
16
+ hasAny: boolean;
17
+ }
18
+ /**
19
+ * Load professionals / services / locations for the target picker. Failures are
20
+ * swallowed per-lookup (each falls back to an empty list) so a missing table or
21
+ * a vertical without services never breaks the whole de-para screen.
22
+ */
23
+ export declare function useAgendaLookups(enabled: boolean): UseAgendaLookupsResult;
24
+ /** Options available for a given target kind (empty for whole-agenda / null). */
25
+ export declare function optionsForKind(lookups: AgendaLookups, kind: ChannelTargetKind): LookupOption[];
26
+ //# sourceMappingURL=useAgendaLookups.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAgendaLookups.d.ts","sourceRoot":"","sources":["../../../../src/integrations/google-calendar/components/useAgendaLookups.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAEjD,gFAAgF;AAChF,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,YAAY,EAAE,CAAA;IACxB,OAAO,EAAE,YAAY,EAAE,CAAA;IACvB,QAAQ,EAAE,YAAY,EAAE,CAAA;CACzB;AAID,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,aAAa,CAAA;IACtB,OAAO,EAAE,OAAO,CAAA;IAChB,iEAAiE;IACjE,MAAM,EAAE,OAAO,CAAA;CAChB;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,sBAAsB,CA8CzE;AAED,iFAAiF;AACjF,wBAAgB,cAAc,CAC5B,OAAO,EAAE,aAAa,EACtB,IAAI,EAAE,iBAAiB,GACtB,YAAY,EAAE,CAKhB"}
@@ -1 +1 @@
1
- {"version":3,"file":"connectorDef.d.ts","sourceRoot":"","sources":["../../../src/integrations/google-calendar/connectorDef.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAsExD,eAAO,MAAM,0BAA0B,EAAE,mBAcxC,CAAA"}
1
+ {"version":3,"file":"connectorDef.d.ts","sourceRoot":"","sources":["../../../src/integrations/google-calendar/connectorDef.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAyJxD,eAAO,MAAM,0BAA0B,EAAE,mBAcxC,CAAA"}
@@ -1,4 +1,17 @@
1
- import type { CalendarIntegration, CalendarSyncLogEntry } from '../types';
1
+ import type { CalendarIntegration, CalendarSyncLogEntry, CalendarChannel, ExternalEventPreview, GoogleCalendarListEntry, ImportEventsResult } from '../types';
2
+ /** Snake_case patch for plg_calendar_channels writes (RLS-scoped). */
3
+ export interface CalendarChannelInput {
4
+ id?: string;
5
+ integrationId?: string;
6
+ googleCalendarId: string;
7
+ summary?: string | null;
8
+ color?: string | null;
9
+ direction?: CalendarChannel['direction'];
10
+ targetKind?: CalendarChannel['targetKind'];
11
+ targetId?: string | null;
12
+ importMode?: CalendarChannel['importMode'];
13
+ isActive?: boolean;
14
+ }
2
15
  export interface GoogleCalendarProvider {
3
16
  getIntegration(): Promise<CalendarIntegration | null>;
4
17
  /** Start the OAuth connect flow — returns the Google consent URL to redirect to. */
@@ -9,8 +22,27 @@ export interface GoogleCalendarProvider {
9
22
  syncNow(): Promise<{
10
23
  fetched: number;
11
24
  written: number;
25
+ discovered?: number;
12
26
  }>;
13
27
  getSyncLog(): Promise<CalendarSyncLogEntry[]>;
28
+ /** List the user's Google calendars for the de-para picker (needs the API → function). */
29
+ listGoogleCalendars(): Promise<GoogleCalendarListEntry[]>;
30
+ /** Read this tenant's channels (RLS). */
31
+ listChannels(): Promise<CalendarChannel[]>;
32
+ /** Create/update a channel (RLS upsert on integration_id + google_calendar_id). */
33
+ saveChannel(input: CalendarChannelInput): Promise<void>;
34
+ /** Delete a channel by id (RLS). */
35
+ deleteChannel(id: string): Promise<void>;
36
+ /** Preview future events not yet linked to an appointment (import wizard). */
37
+ listExternalEvents(params?: {
38
+ channelId?: string;
39
+ timeMin?: string;
40
+ }): Promise<ExternalEventPreview[]>;
41
+ /** Import selected external events as appointments. */
42
+ importEvents(items: {
43
+ channelId: string;
44
+ eventId: string;
45
+ }[]): Promise<ImportEventsResult>;
14
46
  }
15
47
  export declare function createGoogleCalendarProvider(): GoogleCalendarProvider;
16
48
  //# sourceMappingURL=supabase.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"supabase.d.ts","sourceRoot":"","sources":["../../../../src/integrations/google-calendar/data/supabase.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAUzE,MAAM,WAAW,sBAAsB;IACrC,cAAc,IAAI,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAA;IACrD,oFAAoF;IACpF,aAAa,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACnD,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3B,oDAAoD;IACpD,OAAO,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACxD,UAAU,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAA;CAC9C;AAED,wBAAgB,4BAA4B,IAAI,sBAAsB,CA8CrE"}
1
+ {"version":3,"file":"supabase.d.ts","sourceRoot":"","sources":["../../../../src/integrations/google-calendar/data/supabase.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,oBAAoB,EACpB,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,UAAU,CAAA;AAUjB,sEAAsE;AACtE,MAAM,WAAW,oBAAoB;IACnC,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,gBAAgB,EAAE,MAAM,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,SAAS,CAAC,EAAE,eAAe,CAAC,WAAW,CAAC,CAAA;IACxC,UAAU,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,CAAA;IAC1C,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,UAAU,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,CAAA;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,cAAc,IAAI,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAA;IACrD,oFAAoF;IACpF,aAAa,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACnD,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3B,oDAAoD;IACpD,OAAO,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC7E,UAAU,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAA;IAE7C,0FAA0F;IAC1F,mBAAmB,IAAI,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAAA;IACzD,yCAAyC;IACzC,YAAY,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAAA;IAC1C,mFAAmF;IACnF,WAAW,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACvD,oCAAoC;IACpC,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACxC,8EAA8E;IAC9E,kBAAkB,CAAC,MAAM,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAA;IACtG,uDAAuD;IACvD,YAAY,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAA;CAC3F;AAED,wBAAgB,4BAA4B,IAAI,sBAAsB,CAwGrE"}
@@ -0,0 +1,6 @@
1
+ export declare const GCAL_TABLES: {
2
+ readonly integrations: "plg_calendar_integrations";
3
+ readonly channels: "plg_calendar_channels";
4
+ readonly syncLog: "plg_calendar_sync_log";
5
+ };
6
+ //# sourceMappingURL=tables.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tables.d.ts","sourceRoot":"","sources":["../../../../src/integrations/google-calendar/data/tables.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,WAAW;;;;CAId,CAAA"}
@@ -2,7 +2,7 @@ import type { PluginManifest } from '@fayz-ai/core';
2
2
  export { createGoogleCalendarProvider } from './data/supabase';
3
3
  export { googleCalendarConnector } from './connector';
4
4
  export { googleCalendarConnectorDef } from './connectorDef';
5
- export { bookingToEvent, eventToBookingPatch, bookingSummary } from './mapping';
5
+ export { bookingToEvent, eventToBookingPatch, bookingSummary, appointmentRowToEvent, eventToAppointmentPatch, eventTimes, resolveTargetChannel, channelRowToChannel, } from './mapping';
6
6
  export * from './types';
7
7
  export declare function createGoogleCalendarPlugin(): PluginManifest;
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/integrations/google-calendar/index.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAGnD,OAAO,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAA;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAA;AAC3D,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC/E,cAAc,SAAS,CAAA;AAKvB,wBAAgB,0BAA0B,IAAI,cAAc,CAa3D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/integrations/google-calendar/index.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAGnD,OAAO,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAA;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAA;AAC3D,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,qBAAqB,EACrB,uBAAuB,EACvB,UAAU,EACV,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,WAAW,CAAA;AAClB,cAAc,SAAS,CAAA;AAKvB,wBAAgB,0BAA0B,IAAI,cAAc,CAa3D"}
@@ -1,25 +1,77 @@
1
1
  import type { CalendarBooking } from '../../types';
2
- import type { GCalEvent } from './types';
2
+ import type { GCalEvent, AppointmentRow, CalendarChannel, CalendarChannelRow } from './types';
3
3
  export interface GCalEventInput {
4
4
  summary: string;
5
5
  description?: string;
6
6
  start: {
7
- dateTime: string;
7
+ dateTime?: string;
8
+ date?: string;
8
9
  timeZone?: string;
9
10
  };
10
11
  end: {
11
- dateTime: string;
12
+ dateTime?: string;
13
+ date?: string;
12
14
  timeZone?: string;
13
15
  };
14
16
  }
17
+ /** Normalized time window read off a Google event, all-day aware. */
18
+ export interface EventTimes {
19
+ startsAt: string;
20
+ endsAt: string;
21
+ allDay: boolean;
22
+ }
15
23
  /** Build the event title from the booking's services + client. */
16
24
  export declare function bookingSummary(b: Pick<CalendarBooking, 'services' | 'clientName'>): string;
17
25
  /** Map a Fayz booking to a Google Calendar event input. Returns null when the booking has no end. */
18
26
  export declare function bookingToEvent(b: CalendarBooking, timeZone?: string): GCalEventInput | null;
19
- /** Map an inbound Google event change to a partial booking update (reschedule/cancel). */
27
+ /** Map an inbound Google event change to a partial booking update (reschedule/cancel), all-day aware. */
20
28
  export declare function eventToBookingPatch(ev: GCalEvent): {
21
29
  startsAt?: string;
22
30
  endsAt?: string;
23
31
  status?: 'cancelled';
24
32
  };
33
+ /**
34
+ * Build the event title from an appointments row's denormalized metadata.
35
+ * The raw row has no joined services/client, so we read the names the app
36
+ * stamps onto metadata (serviceNames, contactName/clientName).
37
+ */
38
+ export declare function appointmentRowSummary(row: AppointmentRow): string;
39
+ /** Map a raw appointments row to a Google event input (outbound push from the edge function). */
40
+ export declare function appointmentRowToEvent(row: AppointmentRow): GCalEventInput;
41
+ /**
42
+ * Map an inbound Google event to a DB-friendly appointment patch (snake_case
43
+ * times), all-day aware, cancellation included. Consumed by the edge function
44
+ * when calling gcal_apply_event_patch.
45
+ */
46
+ export declare function eventToAppointmentPatch(ev: GCalEvent): {
47
+ starts_at?: string;
48
+ ends_at?: string;
49
+ summary?: string;
50
+ allDay?: boolean;
51
+ cancelled: boolean;
52
+ };
53
+ /**
54
+ * Read a normalized {startsAt, endsAt, allDay} window off a Google event.
55
+ * All-day events carry `start.date`/`end.date` (YYYY-MM-DD, end exclusive) and
56
+ * no dateTime; timed events carry dateTime. Falls back start→end when one side
57
+ * is missing so callers always get a usable pair.
58
+ */
59
+ export declare function eventTimes(ev: GCalEvent): EventTimes;
60
+ /** Convert a raw plg_calendar_channels row (snake_case) to the camelCase CalendarChannel. */
61
+ export declare function channelRowToChannel(r: CalendarChannelRow): CalendarChannel;
62
+ export interface ChannelMatchInput {
63
+ assigneeId?: string | null;
64
+ serviceIds?: string[];
65
+ locationId?: string | null;
66
+ }
67
+ /**
68
+ * Pick the outbound destination channel for a booking, by priority:
69
+ * 1. a channel targeting the booking's assignee,
70
+ * 2. else a channel targeting one of the booking's services,
71
+ * 3. else a channel targeting the booking's location,
72
+ * 4. else the whole-agenda channel (targetKind === null).
73
+ * Only active outbound/bidirectional channels are eligible. Returns null when
74
+ * nothing matches (caller falls back to the integration's default calendar).
75
+ */
76
+ export declare function resolveTargetChannel(channels: CalendarChannel[], booking: ChannelMatchInput): CalendarChannel | null;
25
77
  //# sourceMappingURL=mapping.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mapping.d.ts","sourceRoot":"","sources":["../../../src/integrations/google-calendar/mapping.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAExC,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC9C,GAAG,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAC7C;AAED,kEAAkE;AAClE,wBAAgB,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,UAAU,GAAG,YAAY,CAAC,GAAG,MAAM,CAK1F;AAED,qGAAqG;AACrG,wBAAgB,cAAc,CAAC,CAAC,EAAE,eAAe,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAU3F;AAED,0FAA0F;AAC1F,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,SAAS,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,CAM/G"}
1
+ {"version":3,"file":"mapping.d.ts","sourceRoot":"","sources":["../../../src/integrations/google-calendar/mapping.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAE7F,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,KAAK,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC9D,GAAG,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAC7D;AAED,qEAAqE;AACrE,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,OAAO,CAAA;CAChB;AAID,kEAAkE;AAClE,wBAAgB,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,UAAU,GAAG,YAAY,CAAC,GAAG,MAAM,CAK1F;AAED,qGAAqG;AACrG,wBAAgB,cAAc,CAAC,CAAC,EAAE,eAAe,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAU3F;AAED,yGAAyG;AACzG,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,SAAS,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,CAI/G;AAID;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,cAAc,GAAG,MAAM,CAMjE;AAED,iGAAiG;AACjG,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,cAAc,GAAG,cAAc,CAOzE;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,SAAS,GAAG;IACtD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,OAAO,CAAA;CACnB,CAIA;AAID;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,SAAS,GAAG,UAAU,CAKpD;AAID,6FAA6F;AAC7F,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,kBAAkB,GAAG,eAAe,CAoB1E;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC3B;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,eAAe,EAAE,EAC3B,OAAO,EAAE,iBAAiB,GACzB,eAAe,GAAG,IAAI,CAmBxB"}
@@ -19,8 +19,10 @@ export interface CalendarSyncLogEntry {
19
19
  /** Minimal Google Calendar event shape we read/write (subset of the API). */
20
20
  export interface GCalEvent {
21
21
  id: string;
22
+ etag?: string;
22
23
  summary?: string;
23
24
  description?: string;
25
+ /** Timed events carry dateTime; all-day events carry only `date` (YYYY-MM-DD). */
24
26
  start: {
25
27
  dateTime?: string;
26
28
  date?: string;
@@ -32,5 +34,104 @@ export interface GCalEvent {
32
34
  timeZone?: string;
33
35
  };
34
36
  status?: string;
37
+ /** Set on instances expanded from a recurring series (singleEvents=true). */
38
+ recurringEventId?: string;
39
+ }
40
+ /** How a channel maps a Google calendar onto the agenda (de-para direction). */
41
+ export type ChannelDirection = 'inbound' | 'outbound' | 'bidirectional' | 'off';
42
+ /**
43
+ * What the channel targets on the Fayz side. `null` (target_kind) means the
44
+ * whole agenda; otherwise imports/exports scope to one assignee/service/location.
45
+ */
46
+ export type ChannelTargetKind = 'assignee' | 'service' | 'location' | null;
47
+ /** How inbound events materialize as appointments. */
48
+ export type ChannelImportMode = 'block' | 'appointment';
49
+ /**
50
+ * A per-calendar sync channel (row of public.plg_calendar_channels). One Google
51
+ * calendar ↔ one agenda target, with its own direction + incremental cursor.
52
+ */
53
+ export interface CalendarChannel {
54
+ id: string;
55
+ integrationId: string;
56
+ tenantId: string;
57
+ googleCalendarId: string;
58
+ summary: string | null;
59
+ color: string | null;
60
+ direction: ChannelDirection;
61
+ targetKind: ChannelTargetKind;
62
+ targetId: string | null;
63
+ importMode: ChannelImportMode;
64
+ syncToken: string | null;
65
+ channelId: string | null;
66
+ resourceId: string | null;
67
+ channelExpiresAt: string | null;
68
+ isActive: boolean;
69
+ createdAt: string;
70
+ updatedAt: string;
71
+ }
72
+ /** A future Google event not yet linked to an appointment — shown in the import wizard. */
73
+ export interface ExternalEventPreview {
74
+ eventId: string;
75
+ etag: string;
76
+ summary: string;
77
+ startsAt: string;
78
+ endsAt: string;
79
+ allDay: boolean;
80
+ calendarId: string;
81
+ channelId: string;
82
+ recurring?: boolean;
83
+ }
84
+ /** One entry from the Google calendarList (for the de-para picker). */
85
+ export interface GoogleCalendarListEntry {
86
+ id: string;
87
+ summary: string;
88
+ backgroundColor?: string;
89
+ primary?: boolean;
90
+ }
91
+ /** Result of an import_events run (per-item outcome tally). */
92
+ export interface ImportEventsResult {
93
+ imported: number;
94
+ skipped: number;
95
+ errors: {
96
+ eventId: string;
97
+ error: string;
98
+ }[];
99
+ }
100
+ /**
101
+ * Raw shape of a public.appointments row as the edge function / RPCs see it
102
+ * (snake_case DB columns). Kept here so the pure mapping helpers can be shared
103
+ * between the SDK client and the Deno edge function without a DB roundtrip type.
104
+ */
105
+ export interface AppointmentRow {
106
+ id: string;
107
+ tenant_id: string;
108
+ kind?: string | null;
109
+ assignee_id?: string | null;
110
+ location_id?: string | null;
111
+ starts_at: string;
112
+ ends_at?: string | null;
113
+ status?: string | null;
114
+ notes?: string | null;
115
+ metadata?: Record<string, any> | null;
116
+ }
117
+ /** Raw shape of a public.plg_calendar_channels row (snake_case DB columns). */
118
+ export interface CalendarChannelRow {
119
+ id: string;
120
+ integration_id: string;
121
+ tenant_id: string;
122
+ google_calendar_id: string;
123
+ summary?: string | null;
124
+ color?: string | null;
125
+ direction: ChannelDirection;
126
+ target_kind?: ChannelTargetKind;
127
+ target_id?: string | null;
128
+ import_mode?: ChannelImportMode;
129
+ sync_token?: string | null;
130
+ channel_id?: string | null;
131
+ resource_id?: string | null;
132
+ channel_expires_at?: string | null;
133
+ is_active?: boolean | null;
134
+ created_at?: string;
135
+ updated_at?: string;
35
136
  }
36
137
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/integrations/google-calendar/types.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,OAAO,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,6EAA6E;AAC7E,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC9D,GAAG,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/integrations/google-calendar/types.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,OAAO,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,6EAA6E;AAC7E,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kFAAkF;IAClF,KAAK,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC9D,GAAG,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAMD,gFAAgF;AAChF,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,UAAU,GAAG,eAAe,GAAG,KAAK,CAAA;AAE/E;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,IAAI,CAAA;AAE1E,sDAAsD;AACtD,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,aAAa,CAAA;AAEvD;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,MAAM,CAAA;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,SAAS,EAAE,gBAAgB,CAAA;IAC3B,UAAU,EAAE,iBAAiB,CAAA;IAC7B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,UAAU,EAAE,iBAAiB,CAAA;IAC7B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,QAAQ,EAAE,OAAO,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,2FAA2F;AAC3F,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,OAAO,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,uEAAuE;AACvE,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,+DAA+D;AAC/D,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAC7C;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAA;CACtC;AAED,+EAA+E;AAC/E,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,SAAS,EAAE,gBAAgB,CAAA;IAC3B,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,SAAS,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../src/locales/en.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAyNrC,CAAA"}
1
+ {"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../src/locales/en.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA0NrC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"pt-BR.d.ts","sourceRoot":"","sources":["../../src/locales/pt-BR.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAyNvC,CAAA"}
1
+ {"version":3,"file":"pt-BR.d.ts","sourceRoot":"","sources":["../../src/locales/pt-BR.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA0NvC,CAAA"}