@surgeui/ds-vue 3.0.2 → 3.1.0

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 (82) hide show
  1. package/dist/components/atoms/Checkbox.vue.d.ts +50 -0
  2. package/dist/components/atoms/Checkbox.vue.d.ts.map +1 -0
  3. package/dist/components/atoms/Divider.vue.d.ts +25 -0
  4. package/dist/components/atoms/Divider.vue.d.ts.map +1 -0
  5. package/dist/components/atoms/Kbd.vue.d.ts +22 -0
  6. package/dist/components/atoms/Kbd.vue.d.ts.map +1 -0
  7. package/dist/components/atoms/NumberInput.vue.d.ts +33 -0
  8. package/dist/components/atoms/NumberInput.vue.d.ts.map +1 -0
  9. package/dist/components/atoms/SelectBox.vue.d.ts +2 -2
  10. package/dist/components/atoms/Skeleton.vue.d.ts +8 -0
  11. package/dist/components/atoms/Skeleton.vue.d.ts.map +1 -0
  12. package/dist/components/atoms/Tag.vue.d.ts +32 -0
  13. package/dist/components/atoms/Tag.vue.d.ts.map +1 -0
  14. package/dist/components/atoms/VisuallyHidden.vue.d.ts +22 -0
  15. package/dist/components/atoms/VisuallyHidden.vue.d.ts.map +1 -0
  16. package/dist/components/molecules/Autocomplete.vue.d.ts +71 -0
  17. package/dist/components/molecules/Autocomplete.vue.d.ts.map +1 -0
  18. package/dist/components/molecules/Breadcrumb.vue.d.ts +43 -0
  19. package/dist/components/molecules/Breadcrumb.vue.d.ts.map +1 -0
  20. package/dist/components/molecules/Calendar.vue.d.ts +19 -0
  21. package/dist/components/molecules/Calendar.vue.d.ts.map +1 -0
  22. package/dist/components/molecules/DatePicker.vue.d.ts +34 -0
  23. package/dist/components/molecules/DatePicker.vue.d.ts.map +1 -0
  24. package/dist/components/molecules/Dropdown.vue.d.ts +2 -2
  25. package/dist/components/molecules/EmptyState.vue.d.ts +26 -0
  26. package/dist/components/molecules/EmptyState.vue.d.ts.map +1 -0
  27. package/dist/components/molecules/NumberInputField.vue.d.ts +86 -0
  28. package/dist/components/molecules/NumberInputField.vue.d.ts.map +1 -0
  29. package/dist/components/molecules/OtpInput.vue.d.ts +2 -2
  30. package/dist/components/molecules/OtpInputField.vue.d.ts +7 -7
  31. package/dist/components/molecules/Pagination.vue.d.ts +21 -0
  32. package/dist/components/molecules/Pagination.vue.d.ts.map +1 -0
  33. package/dist/components/molecules/SelectBoxField.vue.d.ts +5 -5
  34. package/dist/components/molecules/Stepper.vue.d.ts +45 -0
  35. package/dist/components/molecules/Stepper.vue.d.ts.map +1 -0
  36. package/dist/components/molecules/Toast.vue.d.ts +30 -0
  37. package/dist/components/molecules/Toast.vue.d.ts.map +1 -0
  38. package/dist/components/molecules/Tooltip.vue.d.ts +45 -0
  39. package/dist/components/molecules/Tooltip.vue.d.ts.map +1 -0
  40. package/dist/components/molecules/TreeView.vue.d.ts +27 -0
  41. package/dist/components/molecules/TreeView.vue.d.ts.map +1 -0
  42. package/dist/components/molecules/TreeViewNode.vue.d.ts +10 -0
  43. package/dist/components/molecules/TreeViewNode.vue.d.ts.map +1 -0
  44. package/dist/components/molecules/treeContext.d.ts +14 -0
  45. package/dist/components/molecules/treeContext.d.ts.map +1 -0
  46. package/dist/components/organisms/CommandPalette.vue.d.ts +19 -0
  47. package/dist/components/organisms/CommandPalette.vue.d.ts.map +1 -0
  48. package/dist/components/organisms/ConfirmDialog.vue.d.ts +110 -0
  49. package/dist/components/organisms/ConfirmDialog.vue.d.ts.map +1 -0
  50. package/dist/components/organisms/DataTable.vue.d.ts +37 -0
  51. package/dist/components/organisms/DataTable.vue.d.ts.map +1 -0
  52. package/dist/components/organisms/Dialog.vue.d.ts +2 -2
  53. package/dist/components/organisms/Dialog.vue.d.ts.map +1 -1
  54. package/dist/components/organisms/Toaster.vue.d.ts +36 -0
  55. package/dist/components/organisms/Toaster.vue.d.ts.map +1 -0
  56. package/dist/components/templates/GridLayout.vue.d.ts +1 -1
  57. package/dist/components/templates/HolyGrailLayout.vue.d.ts +1 -1
  58. package/dist/composables/index.d.ts +5 -1
  59. package/dist/composables/index.d.ts.map +1 -1
  60. package/dist/composables/useConfirm.d.ts +36 -0
  61. package/dist/composables/useConfirm.d.ts.map +1 -0
  62. package/dist/composables/useToast.d.ts +53 -0
  63. package/dist/composables/useToast.d.ts.map +1 -0
  64. package/dist/{index-ShUpX8pH.js → index-B7c_IHDS.js} +450 -620
  65. package/dist/index-C1TIoeqX.js +12285 -0
  66. package/dist/index.d.ts +30 -4
  67. package/dist/index.d.ts.map +1 -1
  68. package/dist/index.es.js +114 -83
  69. package/dist/index.umd.js +3 -1
  70. package/dist/locales/en.d.ts.map +1 -1
  71. package/dist/locales/fr.d.ts.map +1 -1
  72. package/dist/locales/types.d.ts +88 -0
  73. package/dist/locales/types.d.ts.map +1 -1
  74. package/dist/style.css +1 -1
  75. package/dist/types/index.d.ts +337 -0
  76. package/dist/types/index.d.ts.map +1 -1
  77. package/dist/utils/date.d.ts +31 -0
  78. package/dist/utils/date.d.ts.map +1 -0
  79. package/dist/utils/pagination.d.ts +15 -0
  80. package/dist/utils/pagination.d.ts.map +1 -0
  81. package/package.json +1 -1
  82. package/dist/index-ksHUqbRL.js +0 -9062
@@ -11,7 +11,9 @@ import { useFocusTrap, createFocusTrap, getTabbableElements } from './useFocusTr
11
11
  import { useDismiss } from './useDismiss';
12
12
  import { useListNavigation } from './useListNavigation';
13
13
  import { useTypeahead } from './useTypeahead';
14
- export { useTheme, useCustomTheme, useUniqueId, useBreakpoint, usePrice, useFloatingPosition, useAnnouncer, announce, clearAnnouncements, useLocale, provideLocale, defineLocale, formatMessage, LocaleKey, useFormField, provideFormField, mergeIds, FormFieldKey, useFocusTrap, createFocusTrap, getTabbableElements, useDismiss, useListNavigation, useTypeahead, };
14
+ import { useToast, createToaster, ToasterKey } from './useToast';
15
+ import { useConfirm, createConfirmer, ConfirmerKey } from './useConfirm';
16
+ export { useTheme, useCustomTheme, useUniqueId, useBreakpoint, usePrice, useFloatingPosition, useAnnouncer, announce, clearAnnouncements, useLocale, provideLocale, defineLocale, formatMessage, LocaleKey, useFormField, provideFormField, mergeIds, FormFieldKey, useFocusTrap, createFocusTrap, getTabbableElements, useDismiss, useListNavigation, useTypeahead, useToast, createToaster, ToasterKey, useConfirm, createConfirmer, ConfirmerKey, };
15
17
  export type { FloatingPositionOptions } from './useFloatingPosition';
16
18
  export type { AnnounceOptions, AnnouncePriority } from './useAnnouncer';
17
19
  export type { FormFieldContext, FormFieldControl, FormFieldControlProps, UseFormFieldOptions, UseFormFieldReturn } from './useFormField';
@@ -19,4 +21,6 @@ export type { FocusTrapOptions } from './useFocusTrap';
19
21
  export type { DismissOptions, DismissReason } from './useDismiss';
20
22
  export type { ListNavigationOptions, ListOrientation } from './useListNavigation';
21
23
  export type { TypeaheadOptions } from './useTypeahead';
24
+ export type { Toaster, ToastItem, ToastOptions } from './useToast';
25
+ export type { Confirmer, ConfirmOptions, ConfirmRequest, ConfirmTone } from './useConfirm';
22
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composables/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAC3E,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC9F,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACvF,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AACnF,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,OAAO,EACL,QAAQ,EACR,cAAc,EACd,WAAW,EACX,aAAa,EACb,QAAQ,EACR,mBAAmB,EACnB,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAClB,SAAS,EACT,aAAa,EACb,YAAY,EACZ,aAAa,EACb,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,iBAAiB,EACjB,YAAY,GACb,CAAA;AAED,YAAY,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AACpE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACvE,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,gBAAgB,CAAA;AACvB,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACtD,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACjE,YAAY,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACjF,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composables/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAC3E,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC9F,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACvF,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AACnF,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAChE,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAExE,OAAO,EACL,QAAQ,EACR,cAAc,EACd,WAAW,EACX,aAAa,EACb,QAAQ,EACR,mBAAmB,EACnB,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAClB,SAAS,EACT,aAAa,EACb,YAAY,EACZ,aAAa,EACb,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,UAAU,EACV,UAAU,EACV,eAAe,EACf,YAAY,GACb,CAAA;AAED,YAAY,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AACpE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACvE,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,gBAAgB,CAAA;AACvB,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACtD,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACjE,YAAY,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACjF,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACtD,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAClE,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA"}
@@ -0,0 +1,36 @@
1
+ import { ComputedRef, InjectionKey } from 'vue';
2
+ export type ConfirmTone = 'default' | 'danger';
3
+ export interface ConfirmOptions {
4
+ title?: string;
5
+ description?: string;
6
+ confirmLabel?: string;
7
+ cancelLabel?: string;
8
+ /** `danger` : bouton de confirmation rouge, focus initial sur Annuler */
9
+ tone?: ConfirmTone;
10
+ }
11
+ export interface ConfirmRequest extends ConfirmOptions {
12
+ id: number;
13
+ }
14
+ export interface Confirmer {
15
+ /** Demande affichée (la première de la file) */
16
+ current: ComputedRef<ConfirmRequest | null>;
17
+ /** Ouvre une confirmation (un texte seul devient le titre) */
18
+ confirm: (options?: ConfirmOptions | string) => Promise<boolean>;
19
+ /** Répond à la demande affichée */
20
+ settle: (value: boolean) => void;
21
+ /** Déclare un SuConfirmDialog monté ; renvoie la fonction de retrait */
22
+ register: () => () => void;
23
+ }
24
+ export declare const ConfirmerKey: InjectionKey<Confirmer>;
25
+ /** Crée un store de confirmations (fourni par le plugin sous `ConfirmerKey`) */
26
+ export declare function createConfirmer(): Confirmer;
27
+ /**
28
+ * Confirmations : celles fournies par le plugin, sinon un store par
29
+ * défaut (navigateur uniquement).
30
+ *
31
+ * @example
32
+ * const { confirm } = useConfirm()
33
+ * if (await confirm({ title: 'Supprimer le projet ?', tone: 'danger', confirmLabel: 'Supprimer' })) remove()
34
+ */
35
+ export declare function useConfirm(): Confirmer;
36
+ //# sourceMappingURL=useConfirm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useConfirm.d.ts","sourceRoot":"","sources":["../../src/composables/useConfirm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqD,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,KAAK,CAAA;AAY5G,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAA;AAE9C,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,yEAAyE;IACzE,IAAI,CAAC,EAAE,WAAW,CAAA;CACnB;AAED,MAAM,WAAW,cAAe,SAAQ,cAAc;IACpD,EAAE,EAAE,MAAM,CAAA;CACX;AAED,MAAM,WAAW,SAAS;IACxB,gDAAgD;IAChD,OAAO,EAAE,WAAW,CAAC,cAAc,GAAG,IAAI,CAAC,CAAA;IAC3C,8DAA8D;IAC9D,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAChE,mCAAmC;IACnC,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;IAChC,wEAAwE;IACxE,QAAQ,EAAE,MAAM,MAAM,IAAI,CAAA;CAC3B;AAED,eAAO,MAAM,YAAY,EAAE,YAAY,CAAC,SAAS,CAA4B,CAAA;AAO7E,gFAAgF;AAChF,wBAAgB,eAAe,IAAI,SAAS,CA6C3C;AAID;;;;;;;GAOG;AACH,wBAAgB,UAAU,IAAI,SAAS,CAMtC"}
@@ -0,0 +1,53 @@
1
+ import { InjectionKey, Ref } from 'vue';
2
+ import { ToastAction, ToastType } from '../types';
3
+ export interface ToastOptions {
4
+ /** Id choisi : un toast de même id est remplacé (ex. « Envoi… » → « Envoyé ») */
5
+ id?: string;
6
+ type?: ToastType;
7
+ title?: string;
8
+ description?: string;
9
+ /** Durée d'affichage (ms) ; 0 = jusqu'à fermeture. Défaut : celle du SuToaster */
10
+ duration?: number;
11
+ /** Bouton de fermeture (défaut : true) */
12
+ dismissible?: boolean;
13
+ /** Bouton d'action (ex. « Annuler ») : ferme le toast après l'appel */
14
+ action?: ToastAction;
15
+ /** Annonce aux lecteurs d'écran (défaut : true) */
16
+ announce?: boolean;
17
+ /** Appelé quand le toast est retiré (fermeture, délai écoulé, action, clear) */
18
+ onDismiss?: (toast: ToastItem) => void;
19
+ }
20
+ export interface ToastItem extends ToastOptions {
21
+ id: string;
22
+ type: ToastType;
23
+ dismissible: boolean;
24
+ }
25
+ type TypedToastOptions = Omit<ToastOptions, 'type' | 'title'>;
26
+ export interface Toaster {
27
+ /** Toasts en cours, du plus ancien au plus récent */
28
+ toasts: Readonly<Ref<readonly ToastItem[]>>;
29
+ /** Affiche un toast (un texte seul devient le titre) ; renvoie son id */
30
+ show: (options: ToastOptions | string) => string;
31
+ success: (title: string, options?: TypedToastOptions) => string;
32
+ error: (title: string, options?: TypedToastOptions) => string;
33
+ warning: (title: string, options?: TypedToastOptions) => string;
34
+ info: (title: string, options?: TypedToastOptions) => string;
35
+ /** Modifie un toast affiché (relance son délai) */
36
+ update: (id: string, options: Omit<ToastOptions, 'id'>) => void;
37
+ /** Retire un toast, ou tous sans argument */
38
+ dismiss: (id?: string) => void;
39
+ }
40
+ export declare const ToasterKey: InjectionKey<Toaster>;
41
+ /** Crée un store de toasts (fourni par le plugin sous `ToasterKey`) */
42
+ export declare function createToaster(): Toaster;
43
+ /**
44
+ * Accès aux toasts : celui fourni par le plugin, sinon un store par défaut
45
+ * (navigateur uniquement : côté serveur, chaque appel reçoit un store neuf).
46
+ *
47
+ * @example
48
+ * const toast = useToast()
49
+ * toast.success('Projet enregistré', { action: { label: 'Annuler', onClick: undo } })
50
+ */
51
+ export declare function useToast(): Toaster;
52
+ export {};
53
+ //# sourceMappingURL=useToast.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useToast.d.ts","sourceRoot":"","sources":["../../src/composables/useToast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqD,KAAK,YAAY,EAAE,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AACpG,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAcrD,MAAM,WAAW,YAAY;IAC3B,iFAAiF;IACjF,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,uEAAuE;IACvE,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,mDAAmD;IACnD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,gFAAgF;IAChF,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAA;CACvC;AAED,MAAM,WAAW,SAAU,SAAQ,YAAY;IAC7C,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,SAAS,CAAA;IACf,WAAW,EAAE,OAAO,CAAA;CACrB;AAED,KAAK,iBAAiB,GAAG,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,CAAA;AAE7D,MAAM,WAAW,OAAO;IACtB,qDAAqD;IACrD,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,SAAS,SAAS,EAAE,CAAC,CAAC,CAAA;IAC3C,yEAAyE;IACzE,IAAI,EAAE,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,KAAK,MAAM,CAAA;IAChD,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,KAAK,MAAM,CAAA;IAC/D,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,KAAK,MAAM,CAAA;IAC7D,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,KAAK,MAAM,CAAA;IAC/D,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,KAAK,MAAM,CAAA;IAC5D,mDAAmD;IACnD,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,IAAI,CAAA;IAC/D,6CAA6C;IAC7C,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CAC/B;AAED,eAAO,MAAM,UAAU,EAAE,YAAY,CAAC,OAAO,CAA0B,CAAA;AAQvE,uEAAuE;AACvE,wBAAgB,aAAa,IAAI,OAAO,CA4CvC;AAID;;;;;;;GAOG;AACH,wBAAgB,QAAQ,IAAI,OAAO,CAMlC"}