@cellarnode/ui 0.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.
- package/dist/chat/chat-api.d.ts +14 -0
- package/dist/chat/chat-api.d.ts.map +1 -0
- package/dist/chat/chat-api.js +36 -0
- package/dist/chat/chat-api.js.map +1 -0
- package/dist/chat/chat-toggle-button.d.ts +8 -0
- package/dist/chat/chat-toggle-button.d.ts.map +1 -0
- package/dist/chat/chat-toggle-button.js +8 -0
- package/dist/chat/chat-toggle-button.js.map +1 -0
- package/dist/chat/chat-ws.d.ts +61 -0
- package/dist/chat/chat-ws.d.ts.map +1 -0
- package/dist/chat/chat-ws.js +217 -0
- package/dist/chat/chat-ws.js.map +1 -0
- package/dist/chat/communication-hub-widget.d.ts +21 -0
- package/dist/chat/communication-hub-widget.d.ts.map +1 -0
- package/dist/chat/communication-hub-widget.js +49 -0
- package/dist/chat/communication-hub-widget.js.map +1 -0
- package/dist/chat/communication-panel.d.ts +3 -0
- package/dist/chat/communication-panel.d.ts.map +1 -0
- package/dist/chat/communication-panel.js +34 -0
- package/dist/chat/communication-panel.js.map +1 -0
- package/dist/chat/index.d.ts +17 -0
- package/dist/chat/index.d.ts.map +1 -0
- package/dist/chat/index.js +11 -0
- package/dist/chat/index.js.map +1 -0
- package/dist/chat/messenger-layout.d.ts +25 -0
- package/dist/chat/messenger-layout.d.ts.map +1 -0
- package/dist/chat/messenger-layout.js +70 -0
- package/dist/chat/messenger-layout.js.map +1 -0
- package/dist/chat/negotiation-event-card.d.ts +9 -0
- package/dist/chat/negotiation-event-card.d.ts.map +1 -0
- package/dist/chat/negotiation-event-card.js +39 -0
- package/dist/chat/negotiation-event-card.js.map +1 -0
- package/dist/chat/timeline-utils.d.ts +7 -0
- package/dist/chat/timeline-utils.d.ts.map +1 -0
- package/dist/chat/timeline-utils.js +40 -0
- package/dist/chat/timeline-utils.js.map +1 -0
- package/dist/chat/types.d.ts +132 -0
- package/dist/chat/types.d.ts.map +1 -0
- package/dist/chat/types.js +3 -0
- package/dist/chat/types.js.map +1 -0
- package/dist/chat/unified-timeline.d.ts +13 -0
- package/dist/chat/unified-timeline.d.ts.map +1 -0
- package/dist/chat/unified-timeline.js +97 -0
- package/dist/chat/unified-timeline.js.map +1 -0
- package/dist/chat/use-chat.d.ts +10 -0
- package/dist/chat/use-chat.d.ts.map +1 -0
- package/dist/chat/use-chat.js +280 -0
- package/dist/chat/use-chat.js.map +1 -0
- package/dist/components/accordion.d.ts +8 -0
- package/dist/components/accordion.d.ts.map +1 -0
- package/dist/components/accordion.js +19 -0
- package/dist/components/accordion.js.map +1 -0
- package/dist/components/alert.d.ts +29 -0
- package/dist/components/alert.d.ts.map +1 -0
- package/dist/components/alert.js +31 -0
- package/dist/components/alert.js.map +1 -0
- package/dist/components/animated-list.d.ts +20 -0
- package/dist/components/animated-list.d.ts.map +1 -0
- package/dist/components/animated-list.js +50 -0
- package/dist/components/animated-list.js.map +1 -0
- package/dist/components/avatar.d.ts +19 -0
- package/dist/components/avatar.d.ts.map +1 -0
- package/dist/components/avatar.js +18 -0
- package/dist/components/avatar.js.map +1 -0
- package/dist/components/badge.d.ts +39 -0
- package/dist/components/badge.d.ts.map +1 -0
- package/dist/components/badge.js +35 -0
- package/dist/components/badge.js.map +1 -0
- package/dist/components/button.d.ts +64 -0
- package/dist/components/button.d.ts.map +1 -0
- package/dist/components/button.js +174 -0
- package/dist/components/button.js.map +1 -0
- package/dist/components/button.stories.d.ts +13 -0
- package/dist/components/button.stories.d.ts.map +1 -0
- package/dist/components/button.stories.js +48 -0
- package/dist/components/button.stories.js.map +1 -0
- package/dist/components/card.d.ts +9 -0
- package/dist/components/card.d.ts.map +1 -0
- package/dist/components/card.js +17 -0
- package/dist/components/card.js.map +1 -0
- package/dist/components/checkbox.d.ts +37 -0
- package/dist/components/checkbox.d.ts.map +1 -0
- package/dist/components/checkbox.js +84 -0
- package/dist/components/checkbox.js.map +1 -0
- package/dist/components/combobox.d.ts +20 -0
- package/dist/components/combobox.d.ts.map +1 -0
- package/dist/components/combobox.js +87 -0
- package/dist/components/combobox.js.map +1 -0
- package/dist/components/command.d.ts +12 -0
- package/dist/components/command.d.ts.map +1 -0
- package/dist/components/command.js +31 -0
- package/dist/components/command.js.map +1 -0
- package/dist/components/description-list.d.ts +4 -0
- package/dist/components/description-list.d.ts.map +1 -0
- package/dist/components/description-list.js +12 -0
- package/dist/components/description-list.js.map +1 -0
- package/dist/components/dialog.d.ts +30 -0
- package/dist/components/dialog.d.ts.map +1 -0
- package/dist/components/dialog.js +32 -0
- package/dist/components/dialog.js.map +1 -0
- package/dist/components/divider.d.ts +4 -0
- package/dist/components/divider.d.ts.map +1 -0
- package/dist/components/divider.js +6 -0
- package/dist/components/divider.js.map +1 -0
- package/dist/components/drawer.d.ts +23 -0
- package/dist/components/drawer.d.ts.map +1 -0
- package/dist/components/drawer.js +23 -0
- package/dist/components/drawer.js.map +1 -0
- package/dist/components/dropdown-menu.d.ts +26 -0
- package/dist/components/dropdown-menu.d.ts.map +1 -0
- package/dist/components/dropdown-menu.js +52 -0
- package/dist/components/dropdown-menu.js.map +1 -0
- package/dist/components/dropdown.d.ts +37 -0
- package/dist/components/dropdown.d.ts.map +1 -0
- package/dist/components/dropdown.js +79 -0
- package/dist/components/dropdown.js.map +1 -0
- package/dist/components/fieldset.d.ts +22 -0
- package/dist/components/fieldset.d.ts.map +1 -0
- package/dist/components/fieldset.js +25 -0
- package/dist/components/fieldset.js.map +1 -0
- package/dist/components/form.d.ts +25 -0
- package/dist/components/form.d.ts.map +1 -0
- package/dist/components/form.js +60 -0
- package/dist/components/form.js.map +1 -0
- package/dist/components/heading.d.ts +7 -0
- package/dist/components/heading.d.ts.map +1 -0
- package/dist/components/heading.js +11 -0
- package/dist/components/heading.js.map +1 -0
- package/dist/components/input.d.ts +11 -0
- package/dist/components/input.d.ts.map +1 -0
- package/dist/components/input.js +57 -0
- package/dist/components/input.js.map +1 -0
- package/dist/components/kanban-board.d.ts +78 -0
- package/dist/components/kanban-board.d.ts.map +1 -0
- package/dist/components/kanban-board.js +18 -0
- package/dist/components/kanban-board.js.map +1 -0
- package/dist/components/kanban-board.stories.d.ts +10 -0
- package/dist/components/kanban-board.stories.d.ts.map +1 -0
- package/dist/components/kanban-board.stories.js +125 -0
- package/dist/components/kanban-board.stories.js.map +1 -0
- package/dist/components/kanban-card.d.ts +8 -0
- package/dist/components/kanban-card.d.ts.map +1 -0
- package/dist/components/kanban-card.js +13 -0
- package/dist/components/kanban-card.js.map +1 -0
- package/dist/components/kanban-dnd-board.d.ts +8 -0
- package/dist/components/kanban-dnd-board.d.ts.map +1 -0
- package/dist/components/kanban-dnd-board.js +104 -0
- package/dist/components/kanban-dnd-board.js.map +1 -0
- package/dist/components/label.d.ts +5 -0
- package/dist/components/label.d.ts.map +1 -0
- package/dist/components/label.js +9 -0
- package/dist/components/label.js.map +1 -0
- package/dist/components/link.d.ts +12 -0
- package/dist/components/link.d.ts.map +1 -0
- package/dist/components/link.js +14 -0
- package/dist/components/link.js.map +1 -0
- package/dist/components/listbox.d.ts +16 -0
- package/dist/components/listbox.d.ts.map +1 -0
- package/dist/components/listbox.js +88 -0
- package/dist/components/listbox.js.map +1 -0
- package/dist/components/pagination.d.ts +18 -0
- package/dist/components/pagination.d.ts.map +1 -0
- package/dist/components/pagination.js +22 -0
- package/dist/components/pagination.js.map +1 -0
- package/dist/components/popover.d.ts +11 -0
- package/dist/components/popover.d.ts.map +1 -0
- package/dist/components/popover.js +27 -0
- package/dist/components/popover.js.map +1 -0
- package/dist/components/radio.d.ts +38 -0
- package/dist/components/radio.d.ts.map +1 -0
- package/dist/components/radio.js +87 -0
- package/dist/components/radio.js.map +1 -0
- package/dist/components/scroll-area.d.ts +6 -0
- package/dist/components/scroll-area.d.ts.map +1 -0
- package/dist/components/scroll-area.js +14 -0
- package/dist/components/scroll-area.js.map +1 -0
- package/dist/components/select.d.ts +6 -0
- package/dist/components/select.d.ts.map +1 -0
- package/dist/components/select.js +41 -0
- package/dist/components/select.js.map +1 -0
- package/dist/components/separator.d.ts +5 -0
- package/dist/components/separator.d.ts.map +1 -0
- package/dist/components/separator.js +9 -0
- package/dist/components/separator.js.map +1 -0
- package/dist/components/shadcn-badge.d.ts +10 -0
- package/dist/components/shadcn-badge.d.ts.map +1 -0
- package/dist/components/shadcn-badge.js +25 -0
- package/dist/components/shadcn-badge.js.map +1 -0
- package/dist/components/shadcn-button.d.ts +11 -0
- package/dist/components/shadcn-button.d.ts.map +1 -0
- package/dist/components/shadcn-button.js +36 -0
- package/dist/components/shadcn-button.js.map +1 -0
- package/dist/components/shadcn-dialog.d.ts +18 -0
- package/dist/components/shadcn-dialog.d.ts.map +1 -0
- package/dist/components/shadcn-dialog.js +37 -0
- package/dist/components/shadcn-dialog.js.map +1 -0
- package/dist/components/shadcn-input.d.ts +4 -0
- package/dist/components/shadcn-input.d.ts.map +1 -0
- package/dist/components/shadcn-input.js +7 -0
- package/dist/components/shadcn-input.js.map +1 -0
- package/dist/components/shadcn-select.d.ts +14 -0
- package/dist/components/shadcn-select.d.ts.map +1 -0
- package/dist/components/shadcn-select.js +32 -0
- package/dist/components/shadcn-select.js.map +1 -0
- package/dist/components/shadcn-textarea.d.ts +4 -0
- package/dist/components/shadcn-textarea.d.ts.map +1 -0
- package/dist/components/shadcn-textarea.js +7 -0
- package/dist/components/shadcn-textarea.js.map +1 -0
- package/dist/components/sheet.d.ts +26 -0
- package/dist/components/sheet.d.ts.map +1 -0
- package/dist/components/sheet.js +37 -0
- package/dist/components/sheet.js.map +1 -0
- package/dist/components/sidebar.d.ts +68 -0
- package/dist/components/sidebar.d.ts.map +1 -0
- package/dist/components/sidebar.js +208 -0
- package/dist/components/sidebar.js.map +1 -0
- package/dist/components/skeleton.d.ts +3 -0
- package/dist/components/skeleton.d.ts.map +1 -0
- package/dist/components/skeleton.js +7 -0
- package/dist/components/skeleton.js.map +1 -0
- package/dist/components/slider.d.ts +5 -0
- package/dist/components/slider.d.ts.map +1 -0
- package/dist/components/slider.js +8 -0
- package/dist/components/slider.js.map +1 -0
- package/dist/components/sonner.d.ts +11 -0
- package/dist/components/sonner.d.ts.map +1 -0
- package/dist/components/sonner.js +14 -0
- package/dist/components/sonner.js.map +1 -0
- package/dist/components/switch.d.ts +30 -0
- package/dist/components/switch.d.ts.map +1 -0
- package/dist/components/switch.js +68 -0
- package/dist/components/switch.js.map +1 -0
- package/dist/components/table.d.ts +17 -0
- package/dist/components/table.d.ts.map +1 -0
- package/dist/components/table.js +41 -0
- package/dist/components/table.js.map +1 -0
- package/dist/components/tabs.d.ts +12 -0
- package/dist/components/tabs.d.ts.map +1 -0
- package/dist/components/tabs.js +30 -0
- package/dist/components/tabs.js.map +1 -0
- package/dist/components/text.d.ts +6 -0
- package/dist/components/text.d.ts.map +1 -0
- package/dist/components/text.js +16 -0
- package/dist/components/text.js.map +1 -0
- package/dist/components/textarea.d.ts +8 -0
- package/dist/components/textarea.d.ts.map +1 -0
- package/dist/components/textarea.js +38 -0
- package/dist/components/textarea.js.map +1 -0
- package/dist/components/toast.d.ts +16 -0
- package/dist/components/toast.d.ts.map +1 -0
- package/dist/components/toast.js +34 -0
- package/dist/components/toast.js.map +1 -0
- package/dist/components/toaster.d.ts +2 -0
- package/dist/components/toaster.d.ts.map +1 -0
- package/dist/components/toaster.js +10 -0
- package/dist/components/toaster.js.map +1 -0
- package/dist/components/tooltip.d.ts +8 -0
- package/dist/components/tooltip.d.ts.map +1 -0
- package/dist/components/tooltip.js +11 -0
- package/dist/components/tooltip.js.map +1 -0
- package/dist/components/use-toast.d.ts +3 -0
- package/dist/components/use-toast.d.ts.map +1 -0
- package/dist/components/use-toast.js +3 -0
- package/dist/components/use-toast.js.map +1 -0
- package/dist/globe/data/country-geo.d.ts +15 -0
- package/dist/globe/data/country-geo.d.ts.map +1 -0
- package/dist/globe/data/country-geo.js +81 -0
- package/dist/globe/data/country-geo.js.map +1 -0
- package/dist/globe/electron-arc.d.ts +30 -0
- package/dist/globe/electron-arc.d.ts.map +1 -0
- package/dist/globe/electron-arc.js +119 -0
- package/dist/globe/electron-arc.js.map +1 -0
- package/dist/globe/globe-theme.d.ts +34 -0
- package/dist/globe/globe-theme.d.ts.map +1 -0
- package/dist/globe/globe-theme.js +118 -0
- package/dist/globe/globe-theme.js.map +1 -0
- package/dist/globe/globe-types.d.ts +42 -0
- package/dist/globe/globe-types.d.ts.map +1 -0
- package/dist/globe/globe-types.js +5 -0
- package/dist/globe/globe-types.js.map +1 -0
- package/dist/globe/globe-view.d.ts +27 -0
- package/dist/globe/globe-view.d.ts.map +1 -0
- package/dist/globe/globe-view.js +601 -0
- package/dist/globe/globe-view.js.map +1 -0
- package/dist/globe/globe-view.stories.d.ts +42 -0
- package/dist/globe/globe-view.stories.d.ts.map +1 -0
- package/dist/globe/globe-view.stories.js +319 -0
- package/dist/globe/globe-view.stories.js.map +1 -0
- package/dist/globe/index.d.ts +12 -0
- package/dist/globe/index.d.ts.map +1 -0
- package/dist/globe/index.js +7 -0
- package/dist/globe/index.js.map +1 -0
- package/dist/globe/map/country-code-map.d.ts +10 -0
- package/dist/globe/map/country-code-map.d.ts.map +1 -0
- package/dist/globe/map/country-code-map.js +15 -0
- package/dist/globe/map/country-code-map.js.map +1 -0
- package/dist/globe/map/map-geometry.d.ts +10 -0
- package/dist/globe/map/map-geometry.d.ts.map +1 -0
- package/dist/globe/map/map-geometry.js +57 -0
- package/dist/globe/map/map-geometry.js.map +1 -0
- package/dist/globe/map/map-materials.d.ts +8 -0
- package/dist/globe/map/map-materials.d.ts.map +1 -0
- package/dist/globe/map/map-materials.js +32 -0
- package/dist/globe/map/map-materials.js.map +1 -0
- package/dist/globe/map/map-projection.d.ts +11 -0
- package/dist/globe/map/map-projection.d.ts.map +1 -0
- package/dist/globe/map/map-projection.js +17 -0
- package/dist/globe/map/map-projection.js.map +1 -0
- package/dist/globe/scene-extras.d.ts +10 -0
- package/dist/globe/scene-extras.d.ts.map +1 -0
- package/dist/globe/scene-extras.js +69 -0
- package/dist/globe/scene-extras.js.map +1 -0
- package/dist/hooks/use-kanban-dnd.d.ts +23 -0
- package/dist/hooks/use-kanban-dnd.d.ts.map +1 -0
- package/dist/hooks/use-kanban-dnd.js +22 -0
- package/dist/hooks/use-kanban-dnd.js.map +1 -0
- package/dist/hooks/use-mobile.d.ts +2 -0
- package/dist/hooks/use-mobile.d.ts.map +1 -0
- package/dist/hooks/use-mobile.js +16 -0
- package/dist/hooks/use-mobile.js.map +1 -0
- package/dist/hooks/use-toast.d.ts +45 -0
- package/dist/hooks/use-toast.d.ts.map +1 -0
- package/dist/hooks/use-toast.js +125 -0
- package/dist/hooks/use-toast.js.map +1 -0
- package/dist/index.d.ts +58 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +68 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/currencies.d.ts +33 -0
- package/dist/lib/currencies.d.ts.map +1 -0
- package/dist/lib/currencies.js +13 -0
- package/dist/lib/currencies.js.map +1 -0
- package/dist/lib/kanban-transitions.d.ts +12 -0
- package/dist/lib/kanban-transitions.d.ts.map +1 -0
- package/dist/lib/kanban-transitions.js +13 -0
- package/dist/lib/kanban-transitions.js.map +1 -0
- package/dist/lib/semantic-tones.d.ts +4 -0
- package/dist/lib/semantic-tones.d.ts.map +1 -0
- package/dist/lib/semantic-tones.js +35 -0
- package/dist/lib/semantic-tones.js.map +1 -0
- package/dist/lib/utils.d.ts +3 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +6 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/offer/attachments-folder.d.ts +13 -0
- package/dist/offer/attachments-folder.d.ts.map +1 -0
- package/dist/offer/attachments-folder.js +20 -0
- package/dist/offer/attachments-folder.js.map +1 -0
- package/dist/offer/confirm-action-dialog.d.ts +18 -0
- package/dist/offer/confirm-action-dialog.d.ts.map +1 -0
- package/dist/offer/confirm-action-dialog.js +57 -0
- package/dist/offer/confirm-action-dialog.js.map +1 -0
- package/dist/offer/index.d.ts +11 -0
- package/dist/offer/index.d.ts.map +1 -0
- package/dist/offer/index.js +6 -0
- package/dist/offer/index.js.map +1 -0
- package/dist/offer/inline-counter-form.d.ts +19 -0
- package/dist/offer/inline-counter-form.d.ts.map +1 -0
- package/dist/offer/inline-counter-form.js +59 -0
- package/dist/offer/inline-counter-form.js.map +1 -0
- package/dist/offer/negotiation-event-card.d.ts +9 -0
- package/dist/offer/negotiation-event-card.d.ts.map +1 -0
- package/dist/offer/negotiation-event-card.js +39 -0
- package/dist/offer/negotiation-event-card.js.map +1 -0
- package/dist/offer/offer-status-badge.d.ts +8 -0
- package/dist/offer/offer-status-badge.d.ts.map +1 -0
- package/dist/offer/offer-status-badge.js +35 -0
- package/dist/offer/offer-status-badge.js.map +1 -0
- package/dist/offer/types.d.ts +43 -0
- package/dist/offer/types.d.ts.map +1 -0
- package/dist/offer/types.js +2 -0
- package/dist/offer/types.js.map +1 -0
- package/dist/theme/index.d.ts +2 -0
- package/dist/theme/index.d.ts.map +1 -0
- package/dist/theme/index.js +2 -0
- package/dist/theme/index.js.map +1 -0
- package/package.json +166 -0
- package/src/theme/tokens.css +475 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/components/text.tsx"],"names":[],"mappings":";AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAE7B,MAAM,UAAU,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAuC;IAC/E,OAAO,CACL,yBACY,MAAM,KACZ,KAAK,EACT,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,2DAA2D,CAAC,GACvF,CACH,CAAA;AACH,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAA+C;IAC3F,OAAO,CACL,KAAC,IAAI,OACC,KAAK,EACT,SAAS,EAAE,IAAI,CACb,SAAS,EACT,2GAA2G,CAC5G,GACD,CACH,CAAA;AACH,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAA4C;IACtF,OAAO,oBAAY,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,2CAA2C,CAAC,GAAI,CAAA;AACvG,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAA0C;IAClF,OAAO,CACL,kBACM,KAAK,EACT,SAAS,EAAE,IAAI,CACb,SAAS,EACT,wKAAwK,CACzK,GACD,CACH,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as Headless from '@headlessui/react';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
export declare const Textarea: React.ForwardRefExoticComponent<{
|
|
4
|
+
className?: string;
|
|
5
|
+
textareaClassName?: string;
|
|
6
|
+
resizable?: boolean;
|
|
7
|
+
} & Omit<Headless.TextareaProps<"textarea">, "className" | "as"> & React.RefAttributes<HTMLTextAreaElement>>;
|
|
8
|
+
//# sourceMappingURL=textarea.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"textarea.d.ts","sourceRoot":"","sources":["../../src/components/textarea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAA;AAE7C,OAAO,KAAqB,MAAM,OAAO,CAAA;AAEzC,eAAO,MAAM,QAAQ;gBAOL,MAAM;wBACE,MAAM;gBACd,OAAO;4GA8CrB,CAAA"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as Headless from '@headlessui/react';
|
|
3
|
+
import clsx from 'clsx';
|
|
4
|
+
import { forwardRef } from 'react';
|
|
5
|
+
export const Textarea = forwardRef(function Textarea({ className, textareaClassName, resizable = true, ...props }, ref) {
|
|
6
|
+
return (_jsx("span", { "data-slot": "control", className: clsx([
|
|
7
|
+
className,
|
|
8
|
+
// Basic layout
|
|
9
|
+
'relative block w-full',
|
|
10
|
+
// Background color + shadow applied to inset pseudo element, so shadow blends with border in light mode
|
|
11
|
+
'before:absolute before:inset-px before:rounded-[calc(var(--radius-lg)-1px)] before:bg-white before:shadow-sm',
|
|
12
|
+
// Background color is moved to control and shadow is removed in dark mode so hide `before` pseudo
|
|
13
|
+
'dark:before:hidden',
|
|
14
|
+
// Focus ring
|
|
15
|
+
'after:pointer-events-none after:absolute after:inset-0 after:rounded-lg after:ring-transparent after:ring-inset sm:focus-within:after:ring-2 sm:focus-within:after:ring-ring',
|
|
16
|
+
// Disabled state
|
|
17
|
+
'has-data-disabled:opacity-50 has-data-disabled:before:bg-zinc-950/5 has-data-disabled:before:shadow-none',
|
|
18
|
+
]), children: _jsx(Headless.Textarea, { ref: ref, ...props, className: clsx([
|
|
19
|
+
// Basic layout
|
|
20
|
+
'relative block h-full w-full appearance-none rounded-lg px-[calc(--spacing(3.5)-1px)] py-[calc(--spacing(2.5)-1px)] sm:px-[calc(--spacing(3)-1px)] sm:py-[calc(--spacing(1.5)-1px)]',
|
|
21
|
+
// Typography
|
|
22
|
+
'text-base/6 text-zinc-950 placeholder:text-zinc-500 sm:text-sm/6 dark:text-white',
|
|
23
|
+
// Border
|
|
24
|
+
'border border-zinc-950/10 data-hover:border-zinc-950/20 dark:border-white/10 dark:data-hover:border-white/20',
|
|
25
|
+
// Background color
|
|
26
|
+
'bg-transparent dark:bg-white/5',
|
|
27
|
+
// Hide default focus styles
|
|
28
|
+
'focus:outline-hidden',
|
|
29
|
+
// Invalid state
|
|
30
|
+
'data-invalid:border-red-500 data-invalid:data-hover:border-red-500 dark:data-invalid:border-red-600 dark:data-invalid:data-hover:border-red-600',
|
|
31
|
+
// Disabled state
|
|
32
|
+
'disabled:border-zinc-950/20 dark:disabled:border-white/15 dark:disabled:bg-white/2.5 dark:data-hover:disabled:border-white/15',
|
|
33
|
+
// Resizable
|
|
34
|
+
resizable ? 'resize-y' : 'resize-none',
|
|
35
|
+
textareaClassName,
|
|
36
|
+
]) }) }));
|
|
37
|
+
});
|
|
38
|
+
//# sourceMappingURL=textarea.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../src/components/textarea.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAA;AAC7C,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAc,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAEzC,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAC,SAAS,QAAQ,CAClD,EACE,SAAS,EACT,iBAAiB,EACjB,SAAS,GAAG,IAAI,EAChB,GAAG,KAAK,EAK0C,EACpD,GAA4C;IAE5C,OAAO,CACL,4BACY,SAAS,EACnB,SAAS,EAAE,IAAI,CAAC;YACd,SAAS;YACT,eAAe;YACf,uBAAuB;YACvB,wGAAwG;YACxG,8GAA8G;YAC9G,kGAAkG;YAClG,oBAAoB;YACpB,aAAa;YACb,8KAA8K;YAC9K,iBAAiB;YACjB,0GAA0G;SAC3G,CAAC,YAEF,KAAC,QAAQ,CAAC,QAAQ,IAChB,GAAG,EAAE,GAAG,KACJ,KAAK,EACT,SAAS,EAAE,IAAI,CAAC;gBACd,eAAe;gBACf,qLAAqL;gBACrL,aAAa;gBACb,kFAAkF;gBAClF,SAAS;gBACT,8GAA8G;gBAC9G,mBAAmB;gBACnB,gCAAgC;gBAChC,4BAA4B;gBAC5B,sBAAsB;gBACtB,gBAAgB;gBAChB,iJAAiJ;gBACjJ,iBAAiB;gBACjB,+HAA+H;gBAC/H,YAAY;gBACZ,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa;gBACtC,iBAAiB;aAClB,CAAC,GACF,GACG,CACR,CAAA;AACH,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as ToastPrimitives from "@radix-ui/react-toast";
|
|
3
|
+
import { type VariantProps } from "class-variance-authority";
|
|
4
|
+
declare const ToastProvider: React.FC<ToastPrimitives.ToastProviderProps>;
|
|
5
|
+
declare const ToastViewport: React.ForwardRefExoticComponent<Omit<ToastPrimitives.ToastViewportProps & React.RefAttributes<HTMLOListElement>, "ref"> & React.RefAttributes<HTMLOListElement>>;
|
|
6
|
+
declare const Toast: React.ForwardRefExoticComponent<Omit<ToastPrimitives.ToastProps & React.RefAttributes<HTMLLIElement>, "ref"> & VariantProps<(props?: ({
|
|
7
|
+
variant?: "default" | "destructive" | null | undefined;
|
|
8
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string> & React.RefAttributes<HTMLLIElement>>;
|
|
9
|
+
declare const ToastAction: React.ForwardRefExoticComponent<Omit<ToastPrimitives.ToastActionProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
10
|
+
declare const ToastClose: React.ForwardRefExoticComponent<Omit<ToastPrimitives.ToastCloseProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
11
|
+
declare const ToastTitle: React.ForwardRefExoticComponent<Omit<ToastPrimitives.ToastTitleProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
12
|
+
declare const ToastDescription: React.ForwardRefExoticComponent<Omit<ToastPrimitives.ToastDescriptionProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
13
|
+
type ToastProps = React.ComponentPropsWithoutRef<typeof Toast>;
|
|
14
|
+
type ToastActionElement = React.ReactElement<typeof ToastAction>;
|
|
15
|
+
export { type ToastProps, type ToastActionElement, ToastProvider, ToastViewport, Toast, ToastTitle, ToastDescription, ToastClose, ToastAction, };
|
|
16
|
+
//# sourceMappingURL=toast.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../src/components/toast.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAKlE,QAAA,MAAM,aAAa,8CAA2B,CAAC;AAE/C,QAAA,MAAM,aAAa,kKAYjB,CAAC;AAkBH,QAAA,MAAM,KAAK;;qHAKT,CAAC;AAGH,QAAA,MAAM,WAAW,kKAYf,CAAC;AAGH,QAAA,MAAM,UAAU,iKAed,CAAC;AAGH,QAAA,MAAM,UAAU,2JAKd,CAAC;AAGH,QAAA,MAAM,gBAAgB,iKAKpB,CAAC;AAGH,KAAK,UAAU,GAAG,KAAK,CAAC,wBAAwB,CAAC,OAAO,KAAK,CAAC,CAAC;AAE/D,KAAK,kBAAkB,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,WAAW,CAAC,CAAC;AAEjE,OAAO,EACL,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,aAAa,EACb,aAAa,EACb,KAAK,EACL,UAAU,EACV,gBAAgB,EAChB,UAAU,EACV,WAAW,GACZ,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import * as ToastPrimitives from "@radix-ui/react-toast";
|
|
4
|
+
import { cva } from "class-variance-authority";
|
|
5
|
+
import { X } from "lucide-react";
|
|
6
|
+
import { cn } from "../lib/utils";
|
|
7
|
+
const ToastProvider = ToastPrimitives.Provider;
|
|
8
|
+
const ToastViewport = React.forwardRef(({ className, ...props }, ref) => (_jsx(ToastPrimitives.Viewport, { ref: ref, className: cn("fixed top-0 z-100 flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]", className), ...props })));
|
|
9
|
+
ToastViewport.displayName = ToastPrimitives.Viewport.displayName;
|
|
10
|
+
const toastVariants = cva("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-(--radix-toast-swipe-end-x) data-[swipe=move]:translate-x-(--radix-toast-swipe-move-x) data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full sm:data-[state=open]:slide-in-from-bottom-full", {
|
|
11
|
+
variants: {
|
|
12
|
+
variant: {
|
|
13
|
+
default: "border bg-background text-foreground",
|
|
14
|
+
destructive: "destructive group border-destructive bg-destructive text-destructive-foreground",
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
defaultVariants: {
|
|
18
|
+
variant: "default",
|
|
19
|
+
},
|
|
20
|
+
});
|
|
21
|
+
const Toast = React.forwardRef(({ className, variant, ...props }, ref) => {
|
|
22
|
+
return _jsx(ToastPrimitives.Root, { ref: ref, className: cn(toastVariants({ variant }), className), ...props });
|
|
23
|
+
});
|
|
24
|
+
Toast.displayName = ToastPrimitives.Root.displayName;
|
|
25
|
+
const ToastAction = React.forwardRef(({ className, ...props }, ref) => (_jsx(ToastPrimitives.Action, { ref: ref, className: cn("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors group-[.destructive]:border-muted/40 hover:bg-secondary hover:group-[.destructive]:border-destructive/30 hover:group-[.destructive]:bg-destructive hover:group-[.destructive]:text-destructive-foreground focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:group-[.destructive]:ring-destructive disabled:pointer-events-none disabled:opacity-50", className), ...props })));
|
|
26
|
+
ToastAction.displayName = ToastPrimitives.Action.displayName;
|
|
27
|
+
const ToastClose = React.forwardRef(({ className, ...props }, ref) => (_jsx(ToastPrimitives.Close, { ref: ref, className: cn("absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity group-hover:opacity-100 group-[.destructive]:text-red-300 hover:text-foreground hover:group-[.destructive]:text-red-50 focus:opacity-100 focus:outline-hidden focus:ring-2 focus:group-[.destructive]:ring-red-400 focus:group-[.destructive]:ring-offset-red-600", className), "toast-close": "", ...props, children: _jsx(X, { className: "h-4 w-4" }) })));
|
|
28
|
+
ToastClose.displayName = ToastPrimitives.Close.displayName;
|
|
29
|
+
const ToastTitle = React.forwardRef(({ className, ...props }, ref) => (_jsx(ToastPrimitives.Title, { ref: ref, className: cn("text-sm font-semibold", className), ...props })));
|
|
30
|
+
ToastTitle.displayName = ToastPrimitives.Title.displayName;
|
|
31
|
+
const ToastDescription = React.forwardRef(({ className, ...props }, ref) => (_jsx(ToastPrimitives.Description, { ref: ref, className: cn("text-sm opacity-90", className), ...props })));
|
|
32
|
+
ToastDescription.displayName = ToastPrimitives.Description.displayName;
|
|
33
|
+
export { ToastProvider, ToastViewport, Toast, ToastTitle, ToastDescription, ToastClose, ToastAction, };
|
|
34
|
+
//# sourceMappingURL=toast.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toast.js","sourceRoot":"","sources":["../../src/components/toast.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toaster.d.ts","sourceRoot":"","sources":["../../src/components/toaster.tsx"],"names":[],"mappings":"AAGA,wBAAgB,OAAO,4CAoBtB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useToast } from "../hooks/use-toast";
|
|
3
|
+
import { Toast, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport } from "./toast";
|
|
4
|
+
export function Toaster() {
|
|
5
|
+
const { toasts } = useToast();
|
|
6
|
+
return (_jsxs(ToastProvider, { children: [toasts.map(function ({ id, title, description, action, ...props }) {
|
|
7
|
+
return (_jsxs(Toast, { ...props, children: [_jsxs("div", { className: "grid gap-1", children: [title && _jsx(ToastTitle, { children: title }), description && _jsx(ToastDescription, { children: description })] }), action, _jsx(ToastClose, {})] }, id));
|
|
8
|
+
}), _jsx(ToastViewport, {})] }));
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=toaster.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toaster.js","sourceRoot":"","sources":["../../src/components/toaster.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExG,MAAM,UAAU,OAAO;IACrB,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAC;IAE9B,OAAO,CACL,MAAC,aAAa,eACX,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE;gBAChE,OAAO,CACL,MAAC,KAAK,OAAc,KAAK,aACvB,eAAK,SAAS,EAAC,YAAY,aACxB,KAAK,IAAI,KAAC,UAAU,cAAE,KAAK,GAAc,EACzC,WAAW,IAAI,KAAC,gBAAgB,cAAE,WAAW,GAAoB,IAC9D,EACL,MAAM,EACP,KAAC,UAAU,KAAG,KANJ,EAAE,CAON,CACT,CAAC;YACJ,CAAC,CAAC,EACF,KAAC,aAAa,KAAG,IACH,CACjB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as TooltipPrimitive from "@radix-ui/react-tooltip";
|
|
3
|
+
declare const TooltipProvider: React.FC<TooltipPrimitive.TooltipProviderProps>;
|
|
4
|
+
declare const Tooltip: React.FC<TooltipPrimitive.TooltipProps>;
|
|
5
|
+
declare const TooltipTrigger: React.ForwardRefExoticComponent<TooltipPrimitive.TooltipTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
|
6
|
+
declare const TooltipContent: React.ForwardRefExoticComponent<Omit<TooltipPrimitive.TooltipContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
7
|
+
export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };
|
|
8
|
+
//# sourceMappingURL=tooltip.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../src/components/tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,gBAAgB,MAAM,yBAAyB,CAAC;AAI5D,QAAA,MAAM,eAAe,iDAA4B,CAAC;AAElD,QAAA,MAAM,OAAO,yCAAwB,CAAC;AAEtC,QAAA,MAAM,cAAc,gHAA2B,CAAC;AAEhD,QAAA,MAAM,cAAc,gKAalB,CAAC;AAGH,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import * as TooltipPrimitive from "@radix-ui/react-tooltip";
|
|
4
|
+
import { cn } from "../lib/utils";
|
|
5
|
+
const TooltipProvider = TooltipPrimitive.Provider;
|
|
6
|
+
const Tooltip = TooltipPrimitive.Root;
|
|
7
|
+
const TooltipTrigger = TooltipPrimitive.Trigger;
|
|
8
|
+
const TooltipContent = React.forwardRef(({ className, sideOffset = 4, ...props }, ref) => (_jsx(TooltipPrimitive.Content, { ref: ref, sideOffset: sideOffset, className: cn("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", className), ...props })));
|
|
9
|
+
TooltipContent.displayName = TooltipPrimitive.Content.displayName;
|
|
10
|
+
export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };
|
|
11
|
+
//# sourceMappingURL=tooltip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tooltip.js","sourceRoot":"","sources":["../../src/components/tooltip.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,gBAAgB,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAElC,MAAM,eAAe,GAAG,gBAAgB,CAAC,QAAQ,CAAC;AAElD,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC;AAEtC,MAAM,cAAc,GAAG,gBAAgB,CAAC,OAAO,CAAC;AAEhD,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAGrC,CAAC,EAAE,SAAS,EAAE,UAAU,GAAG,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAClD,KAAC,gBAAgB,CAAC,OAAO,IACvB,GAAG,EAAE,GAAG,EACR,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,EAAE,CACX,oYAAoY,EACpY,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC,CAAC;AACH,cAAc,CAAC,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC;AAElE,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-toast.d.ts","sourceRoot":"","sources":["../../src/components/use-toast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-toast.js","sourceRoot":"","sources":["../../src/components/use-toast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface CountryGeoEntry {
|
|
2
|
+
countryCode: string;
|
|
3
|
+
country: string;
|
|
4
|
+
region: string;
|
|
5
|
+
lat: number;
|
|
6
|
+
lng: number;
|
|
7
|
+
}
|
|
8
|
+
export declare const COUNTRY_GEO_LIST: CountryGeoEntry[];
|
|
9
|
+
export declare const COUNTRY_GEO_MAP: Map<string, CountryGeoEntry>;
|
|
10
|
+
/**
|
|
11
|
+
* Normalize a country identifier (ISO-2 code or English name) to an ISO-2
|
|
12
|
+
* code that exists in our geo map. Returns null if unresolvable.
|
|
13
|
+
*/
|
|
14
|
+
export declare function resolveCountryCode(value: string): string | null;
|
|
15
|
+
//# sourceMappingURL=country-geo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"country-geo.d.ts","sourceRoot":"","sources":["../../../src/globe/data/country-geo.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,gBAAgB,EAAE,eAAe,EAmD7C,CAAC;AAEF,eAAO,MAAM,eAAe,8BAE3B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAuB/D"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import countries from "i18n-iso-countries";
|
|
2
|
+
import enLocale from "i18n-iso-countries/langs/en.json";
|
|
3
|
+
countries.registerLocale(enLocale);
|
|
4
|
+
export const COUNTRY_GEO_LIST = [
|
|
5
|
+
{ countryCode: "SE", country: "Sweden", region: "Nordics", lat: 59.3293, lng: 18.0686 },
|
|
6
|
+
{ countryCode: "NO", country: "Norway", region: "Nordics", lat: 59.9139, lng: 10.7522 },
|
|
7
|
+
{ countryCode: "FI", country: "Finland", region: "Nordics", lat: 60.1699, lng: 24.9384 },
|
|
8
|
+
{ countryCode: "DK", country: "Denmark", region: "Nordics", lat: 55.6761, lng: 12.5683 },
|
|
9
|
+
{ countryCode: "DE", country: "Germany", region: "Europe", lat: 52.52, lng: 13.405 },
|
|
10
|
+
{ countryCode: "US", country: "United States", region: "North America", lat: 38.9072, lng: -77.0369 },
|
|
11
|
+
{ countryCode: "CA", country: "Canada", region: "North America", lat: 45.4215, lng: -75.6972 },
|
|
12
|
+
{ countryCode: "SG", country: "Singapore", region: "APAC", lat: 1.3521, lng: 103.8198 },
|
|
13
|
+
{ countryCode: "AE", country: "United Arab Emirates", region: "Middle East", lat: 25.2048, lng: 55.2708 },
|
|
14
|
+
{ countryCode: "JP", country: "Japan", region: "APAC", lat: 35.6762, lng: 139.6503 },
|
|
15
|
+
{ countryCode: "AU", country: "Australia", region: "Oceania", lat: -33.8688, lng: 151.2093 },
|
|
16
|
+
{ countryCode: "BR", country: "Brazil", region: "LATAM", lat: -23.5505, lng: -46.6333 },
|
|
17
|
+
{ countryCode: "FR", country: "France", region: "Europe", lat: 48.8566, lng: 2.3522 },
|
|
18
|
+
{ countryCode: "IT", country: "Italy", region: "Europe", lat: 41.9028, lng: 12.4964 },
|
|
19
|
+
{ countryCode: "ES", country: "Spain", region: "Europe", lat: 40.4168, lng: -3.7038 },
|
|
20
|
+
{ countryCode: "CL", country: "Chile", region: "LATAM", lat: -33.4489, lng: -70.6693 },
|
|
21
|
+
{ countryCode: "AR", country: "Argentina", region: "LATAM", lat: -34.6037, lng: -58.3816 },
|
|
22
|
+
{ countryCode: "NZ", country: "New Zealand", region: "Oceania", lat: -36.8509, lng: 174.7645 },
|
|
23
|
+
{ countryCode: "PT", country: "Portugal", region: "Europe", lat: 38.7223, lng: -9.1393 },
|
|
24
|
+
{ countryCode: "ZA", country: "South Africa", region: "Africa", lat: -26.2041, lng: 28.0473 },
|
|
25
|
+
{ countryCode: "GB", country: "United Kingdom", region: "Europe", lat: 51.5074, lng: -0.1278 },
|
|
26
|
+
{ countryCode: "NL", country: "Netherlands", region: "Europe", lat: 52.3676, lng: 4.9041 },
|
|
27
|
+
{ countryCode: "BE", country: "Belgium", region: "Europe", lat: 50.8503, lng: 4.3517 },
|
|
28
|
+
{ countryCode: "AT", country: "Austria", region: "Europe", lat: 48.2082, lng: 16.3738 },
|
|
29
|
+
{ countryCode: "CH", country: "Switzerland", region: "Europe", lat: 46.9481, lng: 7.4474 },
|
|
30
|
+
{ countryCode: "GR", country: "Greece", region: "Europe", lat: 37.9838, lng: 23.7275 },
|
|
31
|
+
{ countryCode: "KR", country: "South Korea", region: "APAC", lat: 37.5665, lng: 126.978 },
|
|
32
|
+
{ countryCode: "CN", country: "China", region: "APAC", lat: 39.9042, lng: 116.4074 },
|
|
33
|
+
{ countryCode: "HK", country: "Hong Kong", region: "APAC", lat: 22.3193, lng: 114.1694 },
|
|
34
|
+
{ countryCode: "IN", country: "India", region: "APAC", lat: 28.6139, lng: 77.209 },
|
|
35
|
+
{ countryCode: "MX", country: "Mexico", region: "LATAM", lat: 19.4326, lng: -99.1332 },
|
|
36
|
+
{ countryCode: "CO", country: "Colombia", region: "LATAM", lat: 4.711, lng: -74.0721 },
|
|
37
|
+
{ countryCode: "PE", country: "Peru", region: "LATAM", lat: -12.0464, lng: -77.0428 },
|
|
38
|
+
{ countryCode: "TH", country: "Thailand", region: "APAC", lat: 13.7563, lng: 100.5018 },
|
|
39
|
+
{ countryCode: "PH", country: "Philippines", region: "APAC", lat: 14.5995, lng: 120.9842 },
|
|
40
|
+
{ countryCode: "IE", country: "Ireland", region: "Europe", lat: 53.3498, lng: -6.2603 },
|
|
41
|
+
{ countryCode: "PL", country: "Poland", region: "Europe", lat: 52.2297, lng: 21.0122 },
|
|
42
|
+
{ countryCode: "RO", country: "Romania", region: "Europe", lat: 44.4268, lng: 26.1025 },
|
|
43
|
+
{ countryCode: "HU", country: "Hungary", region: "Europe", lat: 47.4979, lng: 19.0402 },
|
|
44
|
+
{ countryCode: "CZ", country: "Czech Republic", region: "Europe", lat: 50.0755, lng: 14.4378 },
|
|
45
|
+
{ countryCode: "HR", country: "Croatia", region: "Europe", lat: 45.815, lng: 15.9819 },
|
|
46
|
+
{ countryCode: "IL", country: "Israel", region: "Middle East", lat: 32.0853, lng: 34.7818 },
|
|
47
|
+
{ countryCode: "SA", country: "Saudi Arabia", region: "Middle East", lat: 24.7136, lng: 46.6753 },
|
|
48
|
+
{ countryCode: "NG", country: "Nigeria", region: "Africa", lat: 6.5244, lng: 3.3792 },
|
|
49
|
+
{ countryCode: "KE", country: "Kenya", region: "Africa", lat: -1.2921, lng: 36.8219 },
|
|
50
|
+
{ countryCode: "UY", country: "Uruguay", region: "LATAM", lat: -34.9011, lng: -56.1645 },
|
|
51
|
+
{ countryCode: "GE", country: "Georgia", region: "Europe", lat: 41.7151, lng: 44.8271 },
|
|
52
|
+
{ countryCode: "LB", country: "Lebanon", region: "Middle East", lat: 33.8938, lng: 35.5018 },
|
|
53
|
+
{ countryCode: "MA", country: "Morocco", region: "Africa", lat: 33.9716, lng: -6.8498 },
|
|
54
|
+
{ countryCode: "TN", country: "Tunisia", region: "Africa", lat: 36.8065, lng: 10.1815 },
|
|
55
|
+
];
|
|
56
|
+
export const COUNTRY_GEO_MAP = new Map(COUNTRY_GEO_LIST.map((c) => [c.countryCode, c]));
|
|
57
|
+
/**
|
|
58
|
+
* Normalize a country identifier (ISO-2 code or English name) to an ISO-2
|
|
59
|
+
* code that exists in our geo map. Returns null if unresolvable.
|
|
60
|
+
*/
|
|
61
|
+
export function resolveCountryCode(value) {
|
|
62
|
+
const trimmed = value.trim();
|
|
63
|
+
if (!trimmed)
|
|
64
|
+
return null;
|
|
65
|
+
const upper = trimmed.toUpperCase();
|
|
66
|
+
if (upper.length === 2 && COUNTRY_GEO_MAP.has(upper)) {
|
|
67
|
+
return upper;
|
|
68
|
+
}
|
|
69
|
+
const codeFromName = countries.getAlpha2Code(trimmed, "en");
|
|
70
|
+
if (codeFromName && COUNTRY_GEO_MAP.has(codeFromName)) {
|
|
71
|
+
return codeFromName;
|
|
72
|
+
}
|
|
73
|
+
if (upper.length === 2 && countries.isValid(upper)) {
|
|
74
|
+
return upper;
|
|
75
|
+
}
|
|
76
|
+
if (codeFromName) {
|
|
77
|
+
return codeFromName;
|
|
78
|
+
}
|
|
79
|
+
return null;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=country-geo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"country-geo.js","sourceRoot":"","sources":["../../../src/globe/data/country-geo.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { GlobeArc } from "./globe-types";
|
|
2
|
+
import type { GlobeTheme } from "./globe-theme";
|
|
3
|
+
/**
|
|
4
|
+
* Internal arc datum for react-globe.gl's arcsData layer.
|
|
5
|
+
*
|
|
6
|
+
* "Live Feed" model:
|
|
7
|
+
* - No selection: arcs drip in one at a time, accumulate, persist
|
|
8
|
+
* - Country selected: ALL related arcs appear immediately
|
|
9
|
+
* - Arc pinned: that arc is bright, everything else dims
|
|
10
|
+
*/
|
|
11
|
+
export interface InternalArcDatum {
|
|
12
|
+
id: string;
|
|
13
|
+
originLat: number;
|
|
14
|
+
originLng: number;
|
|
15
|
+
destLat: number;
|
|
16
|
+
destLng: number;
|
|
17
|
+
value?: number;
|
|
18
|
+
category?: string;
|
|
19
|
+
label?: string;
|
|
20
|
+
metadata?: Record<string, unknown>;
|
|
21
|
+
_stroke: number;
|
|
22
|
+
_dashLength: number;
|
|
23
|
+
_dashGap: number;
|
|
24
|
+
_dashAnimateTime: number;
|
|
25
|
+
_emitKey: number;
|
|
26
|
+
_color: string | string[];
|
|
27
|
+
_settled: boolean;
|
|
28
|
+
}
|
|
29
|
+
export declare function useElectronEmitter(arcs: GlobeArc[], theme: GlobeTheme, frequency: number, selectedCountryCode: string | null | undefined, selectedArcId: string | null | undefined, _boostFactor: number, reducedMotion: boolean): InternalArcDatum[];
|
|
30
|
+
//# sourceMappingURL=electron-arc.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"electron-arc.d.ts","sourceRoot":"","sources":["../../src/globe/electron-arc.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD;;;;;;;GAOG;AACH,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC1B,QAAQ,EAAE,OAAO,CAAC;CACnB;AA8CD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,QAAQ,EAAE,EAChB,KAAK,EAAE,UAAU,EACjB,SAAS,EAAE,MAAM,EACjB,mBAAmB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC9C,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACxC,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,OAAO,GACrB,gBAAgB,EAAE,CAkGpB"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { useState, useEffect, useRef, useMemo } from "react";
|
|
2
|
+
/** Max arcs in the drip-feed (no selection). Country selection can exceed this. */
|
|
3
|
+
const MAX_DRIP_ARCS = 10;
|
|
4
|
+
const SETTLE_TIME = 3000;
|
|
5
|
+
function createArc(arc, theme, settled) {
|
|
6
|
+
const isSecondary = arc.category === "secondary";
|
|
7
|
+
const color = isSecondary ? theme.arcSecondary : theme.arcPrimary;
|
|
8
|
+
const baseStroke = 0.3 + Math.min((arc.value ?? 1) * 0.08, 0.7);
|
|
9
|
+
if (settled) {
|
|
10
|
+
return {
|
|
11
|
+
...arc,
|
|
12
|
+
_stroke: baseStroke,
|
|
13
|
+
_dashLength: 1,
|
|
14
|
+
_dashGap: 0,
|
|
15
|
+
_dashAnimateTime: 0,
|
|
16
|
+
_emitKey: Date.now() + Math.random(),
|
|
17
|
+
_color: color,
|
|
18
|
+
_settled: true,
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
return {
|
|
22
|
+
...arc,
|
|
23
|
+
_stroke: baseStroke + 0.2,
|
|
24
|
+
_dashLength: 0.5,
|
|
25
|
+
_dashGap: 0.15,
|
|
26
|
+
_dashAnimateTime: 2000,
|
|
27
|
+
_emitKey: Date.now() + Math.random(),
|
|
28
|
+
_color: [`rgba(255,255,255,0.9)`, color],
|
|
29
|
+
_settled: false,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
function isRelatedToCountry(arc, countryCode) {
|
|
33
|
+
const o = arc.metadata?.originCountryCode;
|
|
34
|
+
const d = arc.metadata?.destCountryCode;
|
|
35
|
+
return o === countryCode || d === countryCode;
|
|
36
|
+
}
|
|
37
|
+
export function useElectronEmitter(arcs, theme, frequency, selectedCountryCode, selectedArcId, _boostFactor, reducedMotion) {
|
|
38
|
+
// --- Drip-feed state (used when no country/arc is selected) ---
|
|
39
|
+
const [dripArcs, setDripArcs] = useState([]);
|
|
40
|
+
const indexRef = useRef(0);
|
|
41
|
+
// Reset drip on data change
|
|
42
|
+
useEffect(() => {
|
|
43
|
+
setDripArcs([]);
|
|
44
|
+
indexRef.current = 0;
|
|
45
|
+
}, [arcs, theme]);
|
|
46
|
+
// Drip-feed emitter: only runs when nothing is selected
|
|
47
|
+
useEffect(() => {
|
|
48
|
+
if (arcs.length === 0 || selectedCountryCode || selectedArcId)
|
|
49
|
+
return;
|
|
50
|
+
if (reducedMotion) {
|
|
51
|
+
setDripArcs(arcs.slice(0, MAX_DRIP_ARCS).map((a) => createArc(a, theme, true)));
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
const interval = setInterval(() => {
|
|
55
|
+
const idx = indexRef.current % arcs.length;
|
|
56
|
+
const arc = arcs[idx];
|
|
57
|
+
indexRef.current++;
|
|
58
|
+
setDripArcs((cur) => {
|
|
59
|
+
if (cur.some((a) => a.id === arc.id))
|
|
60
|
+
return cur;
|
|
61
|
+
const newArc = createArc(arc, theme, false);
|
|
62
|
+
const trimmed = cur.length >= MAX_DRIP_ARCS ? cur.slice(1) : cur;
|
|
63
|
+
return [...trimmed, newArc];
|
|
64
|
+
});
|
|
65
|
+
// Settle after animation
|
|
66
|
+
setTimeout(() => {
|
|
67
|
+
setDripArcs((cur) => cur.map((a) => a.id === arc.id && !a._settled ? createArc(arc, theme, true) : a));
|
|
68
|
+
}, SETTLE_TIME);
|
|
69
|
+
}, frequency);
|
|
70
|
+
return () => clearInterval(interval);
|
|
71
|
+
}, [arcs, theme, frequency, reducedMotion, selectedCountryCode, selectedArcId]);
|
|
72
|
+
// --- Final output: depends on selection state ---
|
|
73
|
+
const displayArcs = useMemo(() => {
|
|
74
|
+
// ========================================
|
|
75
|
+
// CASE 1: Arc pinned — show ONLY that arc bright, dim everything else
|
|
76
|
+
// ========================================
|
|
77
|
+
if (selectedArcId) {
|
|
78
|
+
const pinnedSource = arcs.find((a) => a.id === selectedArcId);
|
|
79
|
+
if (!pinnedSource)
|
|
80
|
+
return dripArcs;
|
|
81
|
+
const pinned = createArc(pinnedSource, theme, true);
|
|
82
|
+
pinned._stroke += 0.4;
|
|
83
|
+
const isSecondary = pinnedSource.category === "secondary";
|
|
84
|
+
const brightColor = isSecondary ? theme.arcSecondary : theme.arcPrimary;
|
|
85
|
+
pinned._color = [`rgba(255,255,255,0.95)`, brightColor];
|
|
86
|
+
// Show other drip arcs very dimmed as context
|
|
87
|
+
const dimmed = dripArcs
|
|
88
|
+
.filter((a) => a.id !== selectedArcId)
|
|
89
|
+
.map((a) => ({
|
|
90
|
+
...a,
|
|
91
|
+
_stroke: 0.12,
|
|
92
|
+
_color: "rgba(255,255,255,0.04)",
|
|
93
|
+
}));
|
|
94
|
+
return [pinned, ...dimmed];
|
|
95
|
+
}
|
|
96
|
+
// ========================================
|
|
97
|
+
// CASE 2: Country selected — show ALL related arcs immediately
|
|
98
|
+
// ========================================
|
|
99
|
+
if (selectedCountryCode) {
|
|
100
|
+
const related = arcs.filter((a) => isRelatedToCountry(a, selectedCountryCode));
|
|
101
|
+
const relatedArcs = related.map((a) => createArc(a, theme, true));
|
|
102
|
+
// Show unrelated drip arcs very dimmed as context
|
|
103
|
+
const unrelatedDrip = dripArcs
|
|
104
|
+
.filter((a) => !isRelatedToCountry(a, selectedCountryCode))
|
|
105
|
+
.map((a) => ({
|
|
106
|
+
...a,
|
|
107
|
+
_stroke: 0.12,
|
|
108
|
+
_color: "rgba(255,255,255,0.04)",
|
|
109
|
+
}));
|
|
110
|
+
return [...relatedArcs, ...unrelatedDrip];
|
|
111
|
+
}
|
|
112
|
+
// ========================================
|
|
113
|
+
// CASE 3: No selection — drip-feed
|
|
114
|
+
// ========================================
|
|
115
|
+
return dripArcs;
|
|
116
|
+
}, [arcs, theme, dripArcs, selectedCountryCode, selectedArcId]);
|
|
117
|
+
return displayArcs;
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=electron-arc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"electron-arc.js","sourceRoot":"","sources":["../../src/globe/electron-arc.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/** Full theme interface for the globe */
|
|
2
|
+
export interface GlobeTheme {
|
|
3
|
+
surface: string;
|
|
4
|
+
surfaceEmissive: string;
|
|
5
|
+
atmosphere: string;
|
|
6
|
+
haloIntensity: number;
|
|
7
|
+
countryDefault: string;
|
|
8
|
+
countrySelected: string;
|
|
9
|
+
countryDim: string;
|
|
10
|
+
countryStroke: string;
|
|
11
|
+
arcPrimary: string;
|
|
12
|
+
arcSecondary: string;
|
|
13
|
+
arcDim: string;
|
|
14
|
+
electronGlow: string;
|
|
15
|
+
pointColor: string;
|
|
16
|
+
ringColor: string;
|
|
17
|
+
starfieldOpacity: number;
|
|
18
|
+
vignetteOpacity: number;
|
|
19
|
+
}
|
|
20
|
+
export declare const DARK_TEAL: GlobeTheme;
|
|
21
|
+
export declare const LIGHT_AIRY: GlobeTheme;
|
|
22
|
+
export declare const WARM_NEUTRAL: GlobeTheme;
|
|
23
|
+
export declare const GLOBE_PRESETS: {
|
|
24
|
+
readonly darkTeal: GlobeTheme;
|
|
25
|
+
readonly lightAiry: GlobeTheme;
|
|
26
|
+
readonly warmNeutral: GlobeTheme;
|
|
27
|
+
};
|
|
28
|
+
export type GlobePresetName = keyof typeof GLOBE_PRESETS;
|
|
29
|
+
/**
|
|
30
|
+
* Resolve the final theme by merging: preset defaults < CSS variables < prop override.
|
|
31
|
+
* CSS variables are read once from the provided element (mount-time snapshot).
|
|
32
|
+
*/
|
|
33
|
+
export declare function resolveTheme(preset?: GlobePresetName, cssElement?: HTMLElement | null, overrides?: Partial<GlobeTheme>): GlobeTheme;
|
|
34
|
+
//# sourceMappingURL=globe-theme.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"globe-theme.d.ts","sourceRoot":"","sources":["../../src/globe/globe-theme.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,SAAS,EAAE,UAuBvB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,UAiBxB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,UAiB1B,CAAC;AAEF,eAAO,MAAM,aAAa;;;;CAIhB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,aAAa,CAAC;AAsBzD;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,MAAM,GAAE,eAA4B,EACpC,UAAU,CAAC,EAAE,WAAW,GAAG,IAAI,EAC/B,SAAS,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAC9B,UAAU,CA4BZ"}
|