@keboola/design 11.0.0 → 11.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AIKit-Dre37SJr.js +1320 -0
- package/dist/AIKit-Dre37SJr.js.map +1 -0
- package/dist/Alert-DfZq9kGe.js +133 -0
- package/dist/Alert-DfZq9kGe.js.map +1 -0
- package/dist/AlertModal-BUC4Es8o.js +222 -0
- package/dist/AlertModal-BUC4Es8o.js.map +1 -0
- package/dist/AppShell-B5GQN6Zs.js +143 -0
- package/dist/AppShell-B5GQN6Zs.js.map +1 -0
- package/dist/AutoSaveTextarea-BeuWuszr.js +58 -0
- package/dist/{chunk-UGT6DKWM.js.map → AutoSaveTextarea-BeuWuszr.js.map} +1 -1
- package/dist/Badge-Ch26CXoP.js +195 -0
- package/dist/Badge-Ch26CXoP.js.map +1 -0
- package/dist/BrandEditor-B8o9zdZO.js +903 -0
- package/dist/BrandEditor-B8o9zdZO.js.map +1 -0
- package/dist/BrandLogo-CJkRd0F8.js +46 -0
- package/dist/BrandLogo-CJkRd0F8.js.map +1 -0
- package/dist/Breadcrumb-DJp7WwSv.js +330 -0
- package/dist/Breadcrumb-DJp7WwSv.js.map +1 -0
- package/dist/Button-nzmDNS2q.js +391 -0
- package/dist/Button-nzmDNS2q.js.map +1 -0
- package/dist/Calendar-cG5NIJ4O.js +6768 -0
- package/dist/Calendar-cG5NIJ4O.js.map +1 -0
- package/dist/Card-BAoZ35CV.js +105 -0
- package/dist/Card-BAoZ35CV.js.map +1 -0
- package/dist/Checkbox-GJ8-srt4.js +97 -0
- package/dist/Checkbox-GJ8-srt4.js.map +1 -0
- package/dist/Clipboard-CBJZiviP.js +58 -0
- package/dist/Clipboard-CBJZiviP.js.map +1 -0
- package/dist/ClipboardButton-ez5V3fkk.js +43 -0
- package/dist/ClipboardButton-ez5V3fkk.js.map +1 -0
- package/dist/CodeEditor-BfQJfbhL.js +952 -0
- package/dist/CodeEditor-BfQJfbhL.js.map +1 -0
- package/dist/Collapsible-BQXWEOBC.js +34 -0
- package/dist/Collapsible-BQXWEOBC.js.map +1 -0
- package/dist/ColorInput-Dx8Dsv7Y.js +180 -0
- package/dist/ColorInput-Dx8Dsv7Y.js.map +1 -0
- package/dist/ColorModeSwitch-CCqj7tjE.js +77 -0
- package/dist/ColorModeSwitch-CCqj7tjE.js.map +1 -0
- package/dist/Combobox-c_xBjf0P.js +439 -0
- package/dist/Combobox-c_xBjf0P.js.map +1 -0
- package/dist/Command-CQ_bQsJp.js +102 -0
- package/dist/Command-CQ_bQsJp.js.map +1 -0
- package/dist/CopyField-BJ96zvXs.js +322 -0
- package/dist/CopyField-BJ96zvXs.js.map +1 -0
- package/dist/DateInput-CMD3dY-T.js +141 -0
- package/dist/DateInput-CMD3dY-T.js.map +1 -0
- package/dist/DatePicker-BbFbmsGl.js +24 -0
- package/dist/DatePicker-BbFbmsGl.js.map +1 -0
- package/dist/DateRangeInput-D3BhiKyk.js +139 -0
- package/dist/DateRangeInput-D3BhiKyk.js.map +1 -0
- package/dist/DateRangePicker-BiUgtt_M.js +159 -0
- package/dist/DateRangePicker-BiUgtt_M.js.map +1 -0
- package/dist/DiagramSkeleton-lwBS2YBa.js +11 -0
- package/dist/DiagramSkeleton-lwBS2YBa.js.map +1 -0
- package/dist/DiffView-ppTIzh2h.js +429 -0
- package/dist/DiffView-ppTIzh2h.js.map +1 -0
- package/dist/DropdownMenu-B6ZbYvaM.js +327 -0
- package/dist/DropdownMenu-B6ZbYvaM.js.map +1 -0
- package/dist/FieldBox-D7DYtX_m.js +70 -0
- package/dist/FieldBox-D7DYtX_m.js.map +1 -0
- package/dist/FileUpload-sXRv7JiY.js +2527 -0
- package/dist/FileUpload-sXRv7JiY.js.map +1 -0
- package/dist/Form-BDCef6O9.js +371 -0
- package/dist/Form-BDCef6O9.js.map +1 -0
- package/dist/FormGroup-S9mPNHKH.js +124 -0
- package/dist/FormGroup-S9mPNHKH.js.map +1 -0
- package/dist/FullScreenModal-CJa2VkJ2.js +96 -0
- package/dist/FullScreenModal-CJa2VkJ2.js.map +1 -0
- package/dist/HoverCard-WfDkLK1s.js +31 -0
- package/dist/HoverCard-WfDkLK1s.js.map +1 -0
- package/dist/InputGroup-BJWsI35s.js +292 -0
- package/dist/InputGroup-BJWsI35s.js.map +1 -0
- package/dist/Kbd-CxHAo1oo.js +111 -0
- package/dist/Kbd-CxHAo1oo.js.map +1 -0
- package/dist/MarkedText-Ckbft5mw.js +44 -0
- package/dist/MarkedText-Ckbft5mw.js.map +1 -0
- package/dist/MermaidDiagram-BB06gymm.js +399 -0
- package/dist/MermaidDiagram-BB06gymm.js.map +1 -0
- package/dist/Modal-BA5Wc3sx.js +185 -0
- package/dist/Modal-BA5Wc3sx.js.map +1 -0
- package/dist/ModalTitle-C76ke2eo.js +28 -0
- package/dist/ModalTitle-C76ke2eo.js.map +1 -0
- package/dist/MultiActionButtonGroup-CiBHxsSk.js +33 -0
- package/dist/MultiActionButtonGroup-CiBHxsSk.js.map +1 -0
- package/dist/Navbar-t16usFZQ.js +322 -0
- package/dist/Navbar-t16usFZQ.js.map +1 -0
- package/dist/OtpInput-CbbymqYs.js +93 -0
- package/dist/OtpInput-CbbymqYs.js.map +1 -0
- package/dist/PageHeader-Q3IpCnQd.js +177 -0
- package/dist/PageHeader-Q3IpCnQd.js.map +1 -0
- package/dist/PageLayout-DSVM-ASz.js +176 -0
- package/dist/PageLayout-DSVM-ASz.js.map +1 -0
- package/dist/PageToolbar-0_1OBzaZ.js +153 -0
- package/dist/PageToolbar-0_1OBzaZ.js.map +1 -0
- package/dist/Pagination-CM_Rszz-.js +70 -0
- package/dist/Pagination-CM_Rszz-.js.map +1 -0
- package/dist/Popconfirm-BGe1jLov.js +170 -0
- package/dist/Popconfirm-BGe1jLov.js.map +1 -0
- package/dist/Popover-Ca0V6AD1.js +92 -0
- package/dist/Popover-Ca0V6AD1.js.map +1 -0
- package/dist/RadioGroup-sIveSsNa.js +233 -0
- package/dist/RadioGroup-sIveSsNa.js.map +1 -0
- package/dist/Resizable-D3vYToZH.js +52 -0
- package/dist/Resizable-D3vYToZH.js.map +1 -0
- package/dist/Search-3UiqNZRj.js +184 -0
- package/dist/Search-3UiqNZRj.js.map +1 -0
- package/dist/SearchInput-D2fcOv7E.js +102 -0
- package/dist/SearchInput-D2fcOv7E.js.map +1 -0
- package/dist/SectionNav--7bw2b6u.js +276 -0
- package/dist/SectionNav--7bw2b6u.js.map +1 -0
- package/dist/Select-4YX38G5h.js +181 -0
- package/dist/Select-4YX38G5h.js.map +1 -0
- package/dist/Sheet-BQrX8-h5.js +169 -0
- package/dist/Sheet-BQrX8-h5.js.map +1 -0
- package/dist/Sidebar-ROaR_AqC.js +799 -0
- package/dist/Sidebar-ROaR_AqC.js.map +1 -0
- package/dist/Slider-Da_3mS5v.js +127 -0
- package/dist/Slider-Da_3mS5v.js.map +1 -0
- package/dist/Stepper-C8sm9ZFM.js +325 -0
- package/dist/Stepper-C8sm9ZFM.js.map +1 -0
- package/dist/Switch-CX2A0v50.js +201 -0
- package/dist/Switch-CX2A0v50.js.map +1 -0
- package/dist/Table-CvYuTuNU.js +104 -0
- package/dist/Table-CvYuTuNU.js.map +1 -0
- package/dist/Tabs-EAihyqCt.js +74 -0
- package/dist/Tabs-EAihyqCt.js.map +1 -0
- package/dist/TextInput-BGed-V13.js +110 -0
- package/dist/TextInput-BGed-V13.js.map +1 -0
- package/dist/ThemeProvider-QncUrfJn.js +203 -0
- package/dist/ThemeProvider-QncUrfJn.js.map +1 -0
- package/dist/TimePicker-B_NegL-7.js +98 -0
- package/dist/TimePicker-B_NegL-7.js.map +1 -0
- package/dist/Timeline-6btyJl4D.js +154 -0
- package/dist/Timeline-6btyJl4D.js.map +1 -0
- package/dist/Toast-DQSbs3oA.js +49 -0
- package/dist/Toast-DQSbs3oA.js.map +1 -0
- package/dist/ToggleGroup-Cy_10Mvu.js +47 -0
- package/dist/ToggleGroup-Cy_10Mvu.js.map +1 -0
- package/dist/Workbench-BzE-Vvd9.js +293 -0
- package/dist/Workbench-BzE-Vvd9.js.map +1 -0
- package/dist/ZoomableSvg-DG9PnAm8.js +248 -0
- package/dist/ZoomableSvg-DG9PnAm8.js.map +1 -0
- package/dist/charts.d.ts +110 -103
- package/dist/charts.js +303 -254
- package/dist/charts.js.map +1 -1
- package/dist/classNames-BzrkDnOD.js +9 -0
- package/dist/classNames-BzrkDnOD.js.map +1 -0
- package/dist/constants-D6JcsD4_.d.ts +41 -0
- package/dist/context-KxxeMHbR.js +62 -0
- package/dist/context-KxxeMHbR.js.map +1 -0
- package/dist/editors.d.ts +180 -173
- package/dist/editors.js +747 -428
- package/dist/editors.js.map +1 -1
- package/dist/escapeStringRegexp-8MxP2knR.js +6 -0
- package/dist/escapeStringRegexp-8MxP2knR.js.map +1 -0
- package/dist/icons-Cek151jC.js +640 -0
- package/dist/icons-Cek151jC.js.map +1 -0
- package/dist/icons.d.ts +2 -41
- package/dist/icons.js +2 -9
- package/dist/index-m-kQEWiY.d.ts +54 -0
- package/dist/index.d.ts +6183 -9885
- package/dist/index.js +112 -124
- package/dist/internal/blocks/AIKit.js +2 -30
- package/dist/internal/blocks/AppShell.js +2 -11
- package/dist/internal/blocks/AutoSaveTextarea.js +2 -14
- package/dist/internal/blocks/BrandEditor.js +2 -23
- package/dist/internal/blocks/ChartPanel.js +45 -9
- package/dist/internal/blocks/ChartPanel.js.map +1 -1
- package/dist/internal/blocks/ClipboardButton.js +2 -12
- package/dist/internal/blocks/ColorInput.js +2 -13
- package/dist/internal/blocks/ColorModeSwitch.js +2 -13
- package/dist/internal/blocks/Command.js +2 -15
- package/dist/internal/blocks/CopyField.js +2 -11
- package/dist/internal/blocks/DashboardHero.js +58 -8
- package/dist/internal/blocks/DashboardHero.js.map +1 -1
- package/dist/internal/blocks/DateInput.js +2 -16
- package/dist/internal/blocks/DateRangeInput.js +2 -16
- package/dist/internal/blocks/EmptyConfigurationActionCard.js +15 -9
- package/dist/internal/blocks/EmptyConfigurationActionCard.js.map +1 -1
- package/dist/internal/blocks/EmptyState.js +141 -3
- package/dist/internal/blocks/EmptyState.js.map +1 -1
- package/dist/internal/blocks/ErrorState.js +178 -4
- package/dist/internal/blocks/ErrorState.js.map +1 -1
- package/dist/internal/blocks/ExportMenu.js +40 -12
- package/dist/internal/blocks/ExportMenu.js.map +1 -1
- package/dist/internal/blocks/Form.js +2 -29
- package/dist/internal/blocks/FormGroup.js +2 -18
- package/dist/internal/blocks/GoogleButton.js +94 -9
- package/dist/internal/blocks/GoogleButton.js.map +1 -1
- package/dist/internal/blocks/MicrosoftButton.js +63 -9
- package/dist/internal/blocks/MicrosoftButton.js.map +1 -1
- package/dist/internal/blocks/MultiActionButtonGroup.js +2 -12
- package/dist/internal/blocks/MultiCombobox.js +187 -13
- package/dist/internal/blocks/MultiCombobox.js.map +1 -1
- package/dist/internal/blocks/NumberInput.js +43 -11
- package/dist/internal/blocks/NumberInput.js.map +1 -1
- package/dist/internal/blocks/OtpInput.js +2 -10
- package/dist/internal/blocks/PageHeader.js +2 -9
- package/dist/internal/blocks/PageLayout.js +2 -9
- package/dist/internal/blocks/PageToolbar.js +2 -13
- package/dist/internal/blocks/PasswordInput.js +96 -12
- package/dist/internal/blocks/PasswordInput.js.map +1 -1
- package/dist/internal/blocks/SearchInput.js +2 -12
- package/dist/internal/blocks/SearchInputWithNavigation.js +64 -15
- package/dist/internal/blocks/SearchInputWithNavigation.js.map +1 -1
- package/dist/internal/blocks/SectionNav.js +2 -15
- package/dist/internal/blocks/SplitButton.js +45 -13
- package/dist/internal/blocks/SplitButton.js.map +1 -1
- package/dist/internal/blocks/StatCard.js +96 -9
- package/dist/internal/blocks/StatCard.js.map +1 -1
- package/dist/internal/blocks/TextInput.js +2 -13
- package/dist/internal/blocks/Textarea.js +31 -12
- package/dist/internal/blocks/Textarea.js.map +1 -1
- package/dist/internal/blocks/TimeInput.js +76 -16
- package/dist/internal/blocks/TimeInput.js.map +1 -1
- package/dist/internal/components/Alert.js +2 -11
- package/dist/internal/components/AlertModal.js +2 -11
- package/dist/internal/components/Avatar.js +52 -8
- package/dist/internal/components/Avatar.js.map +1 -1
- package/dist/internal/components/Badge.js +2 -9
- package/dist/internal/components/BrandLogo.js +2 -11
- package/dist/internal/components/Breadcrumb.js +2 -14
- package/dist/internal/components/Button.js +2 -10
- package/dist/internal/components/ButtonGroup.js +65 -8
- package/dist/internal/components/ButtonGroup.js.map +1 -1
- package/dist/internal/components/Calendar.js +2 -9
- package/dist/internal/components/Card.js +2 -9
- package/dist/internal/components/Checkbox.js +2 -11
- package/dist/internal/components/Clipboard.js +2 -9
- package/dist/internal/components/Collapsible.js +2 -9
- package/dist/internal/components/CollapsiblePanel.js +86 -10
- package/dist/internal/components/CollapsiblePanel.js.map +1 -1
- package/dist/internal/components/Combobox.js +2 -13
- package/dist/internal/components/DatePicker.js +2 -11
- package/dist/internal/components/DateRangePicker.js +2 -17
- package/dist/internal/components/DiffView.js +2 -9
- package/dist/internal/components/DotsLoader.js +17 -4
- package/dist/internal/components/DotsLoader.js.map +1 -1
- package/dist/internal/components/DropdownMenu.js +2 -11
- package/dist/internal/components/EmptySearchContent.js +11 -3
- package/dist/internal/components/EmptySearchContent.js.map +1 -1
- package/dist/internal/components/FileUpload.js +2 -11
- package/dist/internal/components/FullScreenModal.js +2 -12
- package/dist/internal/components/HelpBlock.js +24 -3
- package/dist/internal/components/HelpBlock.js.map +1 -1
- package/dist/internal/components/HoverCard.js +2 -9
- package/dist/internal/components/InputGroup.js +2 -11
- package/dist/internal/components/Kbd.js +2 -9
- package/dist/internal/components/Label.js +38 -8
- package/dist/internal/components/Label.js.map +1 -1
- package/dist/internal/components/Link.js +21 -8
- package/dist/internal/components/Link.js.map +1 -1
- package/dist/internal/components/MarkedText.js +2 -5
- package/dist/internal/components/MergeEditor/ConflictStatus/ConflictStatusIndicator.js +19 -9
- package/dist/internal/components/MergeEditor/ConflictStatus/ConflictStatusIndicator.js.map +1 -1
- package/dist/internal/components/MergeEditor/PaneHeader.js +12 -3
- package/dist/internal/components/MergeEditor/PaneHeader.js.map +1 -1
- package/dist/internal/components/MergeEditor/constants.js +17 -3
- package/dist/internal/components/MergeEditor/constants.js.map +1 -1
- package/dist/internal/components/MergeEditor/useMergeDiff.js +2 -5
- package/dist/internal/components/Modal.js +2 -13
- package/dist/internal/components/Navbar.js +2 -14
- package/dist/internal/components/Pagination.js +2 -11
- package/dist/internal/components/PanelWithDetails.js +30 -10
- package/dist/internal/components/PanelWithDetails.js.map +1 -1
- package/dist/internal/components/Popconfirm.js +2 -12
- package/dist/internal/components/Popover.js +2 -9
- package/dist/internal/components/Progress.js +46 -8
- package/dist/internal/components/Progress.js.map +1 -1
- package/dist/internal/components/RadioGroup.js +2 -12
- package/dist/internal/components/Resizable.js +2 -9
- package/dist/internal/components/ScrollArea.js +41 -8
- package/dist/internal/components/ScrollArea.js.map +1 -1
- package/dist/internal/components/Search.js +2 -10
- package/dist/internal/components/Select.js +2 -12
- package/dist/internal/components/Separator.js +83 -8
- package/dist/internal/components/Separator.js.map +1 -1
- package/dist/internal/components/Sheet.js +2 -12
- package/dist/internal/components/Sidebar.js +2 -20
- package/dist/internal/components/Skeleton/Skeleton.js +38 -8
- package/dist/internal/components/Skeleton/Skeleton.js.map +1 -1
- package/dist/internal/components/Skeleton/SkeletonList.js +40 -9
- package/dist/internal/components/Skeleton/SkeletonList.js.map +1 -1
- package/dist/internal/components/Slider.js +2 -11
- package/dist/internal/components/SpotlightBackdrop.js +131 -8
- package/dist/internal/components/SpotlightBackdrop.js.map +1 -1
- package/dist/internal/components/Stepper.js +2 -10
- package/dist/internal/components/Switch.js +2 -10
- package/dist/internal/components/Table.js +2 -10
- package/dist/internal/components/Tabs.js +2 -12
- package/dist/internal/components/ThemeProvider.js +3 -10
- package/dist/internal/components/TimePicker.js +2 -12
- package/dist/internal/components/Timeline.js +2 -10
- package/dist/internal/components/Toast.js +3 -11
- package/dist/internal/components/Toggle.js +168 -8
- package/dist/internal/components/Toggle.js.map +1 -1
- package/dist/internal/components/ToggleGroup.js +2 -9
- package/dist/internal/components/Tooltip.js +2 -8
- package/dist/internal/components/Truncated.js +44 -8
- package/dist/internal/components/Truncated.js.map +1 -1
- package/dist/internal/components/Workbench.js +2 -11
- package/dist/internal/components/ZoomableSvg.js +2 -13
- package/dist/internal/hooks/useAutosizeInput.js +76 -3
- package/dist/internal/hooks/useAutosizeInput.js.map +1 -1
- package/dist/internal/hooks/useScrollbarPosition.js +44 -4
- package/dist/internal/hooks/useScrollbarPosition.js.map +1 -1
- package/dist/internal/hooks/useStableCallback.js +28 -3
- package/dist/internal/hooks/useStableCallback.js.map +1 -1
- package/dist/internal/utils/mergeRefs.js +19 -3
- package/dist/internal/utils/mergeRefs.js.map +1 -1
- package/dist/internal/utils.js +5 -8
- package/dist/markdown-editor.d.ts +72 -72
- package/dist/markdown-editor.js +1122 -1207
- package/dist/markdown-editor.js.map +1 -1
- package/dist/mermaid.d.ts +12 -12
- package/dist/mermaid.js +2 -18
- package/dist/rjsf.d.ts +33 -34
- package/dist/rjsf.js +1541 -1671
- package/dist/rjsf.js.map +1 -1
- package/dist/rolldown-runtime-Bdc48AWt.js +33 -0
- package/dist/styles-DSUP_-9Z.js +158 -0
- package/dist/styles-DSUP_-9Z.js.map +1 -0
- package/dist/testing.d.ts +8 -7
- package/dist/testing.js +36 -21
- package/dist/testing.js.map +1 -1
- package/dist/themeTokens-BNg98Mu9.js +85 -0
- package/dist/themeTokens-BNg98Mu9.js.map +1 -0
- package/dist/toast-CjkURw0M.js +184 -0
- package/dist/toast-CjkURw0M.js.map +1 -0
- package/dist/useColorSchemeState-CYqcUfSH.js +61 -0
- package/dist/useColorSchemeState-CYqcUfSH.js.map +1 -0
- package/dist/useControllableState-M6494mCT.js +31 -0
- package/dist/useControllableState-M6494mCT.js.map +1 -0
- package/dist/useElement-DkF6esWL.js +15 -0
- package/dist/useElement-DkF6esWL.js.map +1 -0
- package/dist/useMergeDiff-CvowEXJ1.js +465 -0
- package/dist/useMergeDiff-CvowEXJ1.js.map +1 -0
- package/dist/utils-D0c5VAyF.js +308 -0
- package/dist/utils-D0c5VAyF.js.map +1 -0
- package/package.json +8 -8
- package/dist/MermaidDiagram-ZU5KAVRT.js +0 -18
- package/dist/MermaidDiagram-ZU5KAVRT.js.map +0 -1
- package/dist/chunk-2YYJDKSP.js +0 -51
- package/dist/chunk-2YYJDKSP.js.map +0 -1
- package/dist/chunk-3P5UUCFI.js +0 -385
- package/dist/chunk-3P5UUCFI.js.map +0 -1
- package/dist/chunk-3QDFDDWZ.js +0 -99
- package/dist/chunk-3QDFDDWZ.js.map +0 -1
- package/dist/chunk-3W27OLK5.js +0 -15
- package/dist/chunk-3W27OLK5.js.map +0 -1
- package/dist/chunk-4FIZZONW.js +0 -40
- package/dist/chunk-4FIZZONW.js.map +0 -1
- package/dist/chunk-4GIAXOJG.js +0 -133
- package/dist/chunk-4GIAXOJG.js.map +0 -1
- package/dist/chunk-52NDNMK7.js +0 -99
- package/dist/chunk-52NDNMK7.js.map +0 -1
- package/dist/chunk-576G5OES.js +0 -201
- package/dist/chunk-576G5OES.js.map +0 -1
- package/dist/chunk-5AIE6SET.js +0 -659
- package/dist/chunk-5AIE6SET.js.map +0 -1
- package/dist/chunk-5FTNAZRW.js +0 -327
- package/dist/chunk-5FTNAZRW.js.map +0 -1
- package/dist/chunk-5IG2S7ZY.js +0 -70
- package/dist/chunk-5IG2S7ZY.js.map +0 -1
- package/dist/chunk-5QCXHNCW.js +0 -404
- package/dist/chunk-5QCXHNCW.js.map +0 -1
- package/dist/chunk-6DUMGC7Y.js +0 -105
- package/dist/chunk-6DUMGC7Y.js.map +0 -1
- package/dist/chunk-6J25CVST.js +0 -174
- package/dist/chunk-6J25CVST.js.map +0 -1
- package/dist/chunk-6NN35XOP.js +0 -120
- package/dist/chunk-6NN35XOP.js.map +0 -1
- package/dist/chunk-6NZBVA4T.js +0 -24
- package/dist/chunk-6NZBVA4T.js.map +0 -1
- package/dist/chunk-6W5BHRCL.js +0 -295
- package/dist/chunk-6W5BHRCL.js.map +0 -1
- package/dist/chunk-72BKRCEG.js +0 -409
- package/dist/chunk-72BKRCEG.js.map +0 -1
- package/dist/chunk-7GTI3PPI.js +0 -95
- package/dist/chunk-7GTI3PPI.js.map +0 -1
- package/dist/chunk-7P6PLZ4B.js +0 -74
- package/dist/chunk-7P6PLZ4B.js.map +0 -1
- package/dist/chunk-7WZWY5IA.js +0 -46
- package/dist/chunk-7WZWY5IA.js.map +0 -1
- package/dist/chunk-AIYO2632.js +0 -489
- package/dist/chunk-AIYO2632.js.map +0 -1
- package/dist/chunk-ANFZWPNE.js +0 -112
- package/dist/chunk-ANFZWPNE.js.map +0 -1
- package/dist/chunk-ANZTVAJU.js +0 -73
- package/dist/chunk-ANZTVAJU.js.map +0 -1
- package/dist/chunk-BD5BTJKX.js +0 -166
- package/dist/chunk-BD5BTJKX.js.map +0 -1
- package/dist/chunk-BHGIDSRJ.js +0 -140
- package/dist/chunk-BHGIDSRJ.js.map +0 -1
- package/dist/chunk-BSQWZITZ.js +0 -507
- package/dist/chunk-BSQWZITZ.js.map +0 -1
- package/dist/chunk-D3LAIK62.js +0 -23
- package/dist/chunk-D3LAIK62.js.map +0 -1
- package/dist/chunk-DODCR43C.js +0 -155
- package/dist/chunk-DODCR43C.js.map +0 -1
- package/dist/chunk-EEK5NGZF.js +0 -40
- package/dist/chunk-EEK5NGZF.js.map +0 -1
- package/dist/chunk-ENRG7TXA.js +0 -11
- package/dist/chunk-ENRG7TXA.js.map +0 -1
- package/dist/chunk-EQRMGIGY.js +0 -239
- package/dist/chunk-EQRMGIGY.js.map +0 -1
- package/dist/chunk-ERAHK5YQ.js +0 -495
- package/dist/chunk-ERAHK5YQ.js.map +0 -1
- package/dist/chunk-F3FOFY2P.js +0 -124
- package/dist/chunk-F3FOFY2P.js.map +0 -1
- package/dist/chunk-F6BTWFOC.js +0 -507
- package/dist/chunk-F6BTWFOC.js.map +0 -1
- package/dist/chunk-F6J6NNAL.js +0 -34
- package/dist/chunk-F6J6NNAL.js.map +0 -1
- package/dist/chunk-FCHJ7D5O.js +0 -59
- package/dist/chunk-FCHJ7D5O.js.map +0 -1
- package/dist/chunk-FFJTEQCC.js +0 -80
- package/dist/chunk-FFJTEQCC.js.map +0 -1
- package/dist/chunk-FUFMVW7O.js +0 -64
- package/dist/chunk-FUFMVW7O.js.map +0 -1
- package/dist/chunk-FVPGQ6UE.js +0 -25
- package/dist/chunk-FVPGQ6UE.js.map +0 -1
- package/dist/chunk-G3PMV62Z.js +0 -33
- package/dist/chunk-G3PMV62Z.js.map +0 -1
- package/dist/chunk-GACFOW3E.js +0 -51
- package/dist/chunk-GACFOW3E.js.map +0 -1
- package/dist/chunk-GDT6HQMK.js +0 -42
- package/dist/chunk-GDT6HQMK.js.map +0 -1
- package/dist/chunk-HLGU22C6.js +0 -2589
- package/dist/chunk-HLGU22C6.js.map +0 -1
- package/dist/chunk-HPMYYGP7.js +0 -134
- package/dist/chunk-HPMYYGP7.js.map +0 -1
- package/dist/chunk-I2UCOD45.js +0 -197
- package/dist/chunk-I2UCOD45.js.map +0 -1
- package/dist/chunk-IEGDZUVM.js +0 -75
- package/dist/chunk-IEGDZUVM.js.map +0 -1
- package/dist/chunk-IIS7INHF.js +0 -47
- package/dist/chunk-IIS7INHF.js.map +0 -1
- package/dist/chunk-ITELSEFU.js +0 -256
- package/dist/chunk-ITELSEFU.js.map +0 -1
- package/dist/chunk-IXAYNBOY.js +0 -407
- package/dist/chunk-IXAYNBOY.js.map +0 -1
- package/dist/chunk-JUW2ETEI.js +0 -191
- package/dist/chunk-JUW2ETEI.js.map +0 -1
- package/dist/chunk-K65C7CVE.js +0 -127
- package/dist/chunk-K65C7CVE.js.map +0 -1
- package/dist/chunk-KDI64MCY.js +0 -189
- package/dist/chunk-KDI64MCY.js.map +0 -1
- package/dist/chunk-KN4ASMH5.js +0 -160
- package/dist/chunk-KN4ASMH5.js.map +0 -1
- package/dist/chunk-KQW7QNTU.js +0 -1549
- package/dist/chunk-KQW7QNTU.js.map +0 -1
- package/dist/chunk-KR7NXXHC.js +0 -66
- package/dist/chunk-KR7NXXHC.js.map +0 -1
- package/dist/chunk-KRZKIVMA.js +0 -142
- package/dist/chunk-KRZKIVMA.js.map +0 -1
- package/dist/chunk-KTTLLKGQ.js +0 -185
- package/dist/chunk-KTTLLKGQ.js.map +0 -1
- package/dist/chunk-KWKSHPDP.js +0 -234
- package/dist/chunk-KWKSHPDP.js.map +0 -1
- package/dist/chunk-KZVC7OYG.js +0 -57
- package/dist/chunk-KZVC7OYG.js.map +0 -1
- package/dist/chunk-L5DHUN2V.js +0 -204
- package/dist/chunk-L5DHUN2V.js.map +0 -1
- package/dist/chunk-LCTGEH57.js +0 -1376
- package/dist/chunk-LCTGEH57.js.map +0 -1
- package/dist/chunk-LXLIQ2D6.js +0 -12
- package/dist/chunk-LXLIQ2D6.js.map +0 -1
- package/dist/chunk-M4CTURKX.js +0 -84
- package/dist/chunk-M4CTURKX.js.map +0 -1
- package/dist/chunk-M6LTUPVP.js +0 -301
- package/dist/chunk-M6LTUPVP.js.map +0 -1
- package/dist/chunk-MA6RRHDT.js +0 -291
- package/dist/chunk-MA6RRHDT.js.map +0 -1
- package/dist/chunk-MODE4QIA.js +0 -6
- package/dist/chunk-MODE4QIA.js.map +0 -1
- package/dist/chunk-MVILMVGG.js +0 -118
- package/dist/chunk-MVILMVGG.js.map +0 -1
- package/dist/chunk-MWS4VCLV.js +0 -17
- package/dist/chunk-MWS4VCLV.js.map +0 -1
- package/dist/chunk-NEUX74SO.js +0 -315
- package/dist/chunk-NEUX74SO.js.map +0 -1
- package/dist/chunk-NFHKYBRD.js +0 -156
- package/dist/chunk-NFHKYBRD.js.map +0 -1
- package/dist/chunk-NHJNNXD3.js +0 -89
- package/dist/chunk-NHJNNXD3.js.map +0 -1
- package/dist/chunk-O2BF3HZL.js +0 -33
- package/dist/chunk-O2BF3HZL.js.map +0 -1
- package/dist/chunk-OANXCZYD.js +0 -212
- package/dist/chunk-OANXCZYD.js.map +0 -1
- package/dist/chunk-ODJF7YIP.js +0 -230
- package/dist/chunk-ODJF7YIP.js.map +0 -1
- package/dist/chunk-ON4BJTHI.js +0 -101
- package/dist/chunk-ON4BJTHI.js.map +0 -1
- package/dist/chunk-OTL5WXIJ.js +0 -16
- package/dist/chunk-OTL5WXIJ.js.map +0 -1
- package/dist/chunk-PACNBKJV.js +0 -47
- package/dist/chunk-PACNBKJV.js.map +0 -1
- package/dist/chunk-PROCA7K7.js +0 -23
- package/dist/chunk-PROCA7K7.js.map +0 -1
- package/dist/chunk-QGMIPA67.js +0 -85
- package/dist/chunk-QGMIPA67.js.map +0 -1
- package/dist/chunk-QQA37LFB.js +0 -190
- package/dist/chunk-QQA37LFB.js.map +0 -1
- package/dist/chunk-QZAWRSEB.js +0 -61
- package/dist/chunk-QZAWRSEB.js.map +0 -1
- package/dist/chunk-R74KGWNS.js +0 -699
- package/dist/chunk-R74KGWNS.js.map +0 -1
- package/dist/chunk-RFDLHMKL.js +0 -110
- package/dist/chunk-RFDLHMKL.js.map +0 -1
- package/dist/chunk-RL64HN7S.js +0 -40
- package/dist/chunk-RL64HN7S.js.map +0 -1
- package/dist/chunk-RMRQKPL7.js +0 -115
- package/dist/chunk-RMRQKPL7.js.map +0 -1
- package/dist/chunk-RQVK4IYC.js +0 -606
- package/dist/chunk-RQVK4IYC.js.map +0 -1
- package/dist/chunk-RTW56PWZ.js +0 -59
- package/dist/chunk-RTW56PWZ.js.map +0 -1
- package/dist/chunk-RUTPQNLR.js +0 -266
- package/dist/chunk-RUTPQNLR.js.map +0 -1
- package/dist/chunk-S6TAF63G.js +0 -25
- package/dist/chunk-S6TAF63G.js.map +0 -1
- package/dist/chunk-SBGAUGXY.js +0 -224
- package/dist/chunk-SBGAUGXY.js.map +0 -1
- package/dist/chunk-SC275NHZ.js +0 -407
- package/dist/chunk-SC275NHZ.js.map +0 -1
- package/dist/chunk-SCQPU4UE.js +0 -97
- package/dist/chunk-SCQPU4UE.js.map +0 -1
- package/dist/chunk-SFFF2WQP.js +0 -8
- package/dist/chunk-SFFF2WQP.js.map +0 -1
- package/dist/chunk-SJYMHZKA.js +0 -36
- package/dist/chunk-SJYMHZKA.js.map +0 -1
- package/dist/chunk-SLCCUJVN.js +0 -125
- package/dist/chunk-SLCCUJVN.js.map +0 -1
- package/dist/chunk-SVBSNSD4.js +0 -259
- package/dist/chunk-SVBSNSD4.js.map +0 -1
- package/dist/chunk-SVPLTL35.js +0 -62
- package/dist/chunk-SVPLTL35.js.map +0 -1
- package/dist/chunk-SWQFYNYG.js +0 -338
- package/dist/chunk-SWQFYNYG.js.map +0 -1
- package/dist/chunk-THHB4EWS.js +0 -72
- package/dist/chunk-THHB4EWS.js.map +0 -1
- package/dist/chunk-TUCDD33E.js +0 -246
- package/dist/chunk-TUCDD33E.js.map +0 -1
- package/dist/chunk-TV4WAP2R.js +0 -14
- package/dist/chunk-TV4WAP2R.js.map +0 -1
- package/dist/chunk-U3A6YBTZ.js +0 -134
- package/dist/chunk-U3A6YBTZ.js.map +0 -1
- package/dist/chunk-UGT6DKWM.js +0 -95
- package/dist/chunk-VSERHUWD.js +0 -212
- package/dist/chunk-VSERHUWD.js.map +0 -1
- package/dist/chunk-VYG7BDXC.js +0 -49
- package/dist/chunk-VYG7BDXC.js.map +0 -1
- package/dist/chunk-WETKNYZX.js +0 -52
- package/dist/chunk-WETKNYZX.js.map +0 -1
- package/dist/chunk-WGG4AML3.js +0 -216
- package/dist/chunk-WGG4AML3.js.map +0 -1
- package/dist/chunk-WKAUEL6I.js +0 -30
- package/dist/chunk-WKAUEL6I.js.map +0 -1
- package/dist/chunk-WPOLA5CG.js +0 -81
- package/dist/chunk-WPOLA5CG.js.map +0 -1
- package/dist/chunk-WPVETCGJ.js +0 -254
- package/dist/chunk-WPVETCGJ.js.map +0 -1
- package/dist/chunk-WTSM3A7E.js +0 -13
- package/dist/chunk-WTSM3A7E.js.map +0 -1
- package/dist/chunk-WU3F2K3T.js +0 -148
- package/dist/chunk-WU3F2K3T.js.map +0 -1
- package/dist/chunk-WZZK2DTZ.js +0 -39
- package/dist/chunk-WZZK2DTZ.js.map +0 -1
- package/dist/chunk-X4IHLKRD.js +0 -42
- package/dist/chunk-X4IHLKRD.js.map +0 -1
- package/dist/chunk-XAHEXZJC.js +0 -80
- package/dist/chunk-XAHEXZJC.js.map +0 -1
- package/dist/chunk-XCYGJDUX.js +0 -31
- package/dist/chunk-XCYGJDUX.js.map +0 -1
- package/dist/chunk-Y4W3JORC.js +0 -104
- package/dist/chunk-Y4W3JORC.js.map +0 -1
- package/dist/chunk-YFZJ3ZLG.js +0 -1297
- package/dist/chunk-YFZJ3ZLG.js.map +0 -1
- package/dist/chunk-YI3WLXEN.js +0 -4387
- package/dist/chunk-YI3WLXEN.js.map +0 -1
- package/dist/chunk-ZBKFSPD3.js +0 -29
- package/dist/chunk-ZBKFSPD3.js.map +0 -1
- package/dist/chunk-ZOERRQ6A.js +0 -79
- package/dist/chunk-ZOERRQ6A.js.map +0 -1
- package/dist/chunk-ZSTGUKHU.js +0 -10
- package/dist/chunk-ZSTGUKHU.js.map +0 -1
- package/dist/chunk-ZUEHDL27.js +0 -65
- package/dist/chunk-ZUEHDL27.js.map +0 -1
- package/dist/constants-D3gaMY-W.d.ts +0 -39
- package/dist/icons.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/internal/blocks/AIKit.js.map +0 -1
- package/dist/internal/blocks/AppShell.js.map +0 -1
- package/dist/internal/blocks/AutoSaveTextarea.js.map +0 -1
- package/dist/internal/blocks/BrandEditor.js.map +0 -1
- package/dist/internal/blocks/ClipboardButton.js.map +0 -1
- package/dist/internal/blocks/ColorInput.js.map +0 -1
- package/dist/internal/blocks/ColorModeSwitch.js.map +0 -1
- package/dist/internal/blocks/Command.js.map +0 -1
- package/dist/internal/blocks/CopyField.js.map +0 -1
- package/dist/internal/blocks/DateInput.js.map +0 -1
- package/dist/internal/blocks/DateRangeInput.js.map +0 -1
- package/dist/internal/blocks/Form.js.map +0 -1
- package/dist/internal/blocks/FormGroup.js.map +0 -1
- package/dist/internal/blocks/MultiActionButtonGroup.js.map +0 -1
- package/dist/internal/blocks/OtpInput.js.map +0 -1
- package/dist/internal/blocks/PageHeader.js.map +0 -1
- package/dist/internal/blocks/PageLayout.js.map +0 -1
- package/dist/internal/blocks/PageToolbar.js.map +0 -1
- package/dist/internal/blocks/SearchInput.js.map +0 -1
- package/dist/internal/blocks/SectionNav.js.map +0 -1
- package/dist/internal/blocks/TextInput.js.map +0 -1
- package/dist/internal/components/Alert.js.map +0 -1
- package/dist/internal/components/AlertModal.js.map +0 -1
- package/dist/internal/components/Badge.js.map +0 -1
- package/dist/internal/components/BrandLogo.js.map +0 -1
- package/dist/internal/components/Breadcrumb.js.map +0 -1
- package/dist/internal/components/Button.js.map +0 -1
- package/dist/internal/components/Calendar.js.map +0 -1
- package/dist/internal/components/Card.js.map +0 -1
- package/dist/internal/components/Checkbox.js.map +0 -1
- package/dist/internal/components/Clipboard.js.map +0 -1
- package/dist/internal/components/Collapsible.js.map +0 -1
- package/dist/internal/components/Combobox.js.map +0 -1
- package/dist/internal/components/DatePicker.js.map +0 -1
- package/dist/internal/components/DateRangePicker.js.map +0 -1
- package/dist/internal/components/DiffView.js.map +0 -1
- package/dist/internal/components/DropdownMenu.js.map +0 -1
- package/dist/internal/components/FileUpload.js.map +0 -1
- package/dist/internal/components/FullScreenModal.js.map +0 -1
- package/dist/internal/components/HoverCard.js.map +0 -1
- package/dist/internal/components/InputGroup.js.map +0 -1
- package/dist/internal/components/Kbd.js.map +0 -1
- package/dist/internal/components/MarkedText.js.map +0 -1
- package/dist/internal/components/MergeEditor/useMergeDiff.js.map +0 -1
- package/dist/internal/components/Modal.js.map +0 -1
- package/dist/internal/components/Navbar.js.map +0 -1
- package/dist/internal/components/Pagination.js.map +0 -1
- package/dist/internal/components/Popconfirm.js.map +0 -1
- package/dist/internal/components/Popover.js.map +0 -1
- package/dist/internal/components/RadioGroup.js.map +0 -1
- package/dist/internal/components/Resizable.js.map +0 -1
- package/dist/internal/components/Search.js.map +0 -1
- package/dist/internal/components/Select.js.map +0 -1
- package/dist/internal/components/Sheet.js.map +0 -1
- package/dist/internal/components/Sidebar.js.map +0 -1
- package/dist/internal/components/Slider.js.map +0 -1
- package/dist/internal/components/Stepper.js.map +0 -1
- package/dist/internal/components/Switch.js.map +0 -1
- package/dist/internal/components/Table.js.map +0 -1
- package/dist/internal/components/Tabs.js.map +0 -1
- package/dist/internal/components/ThemeProvider.js.map +0 -1
- package/dist/internal/components/TimePicker.js.map +0 -1
- package/dist/internal/components/Timeline.js.map +0 -1
- package/dist/internal/components/Toast.js.map +0 -1
- package/dist/internal/components/ToggleGroup.js.map +0 -1
- package/dist/internal/components/Tooltip.js.map +0 -1
- package/dist/internal/components/Workbench.js.map +0 -1
- package/dist/internal/components/ZoomableSvg.js.map +0 -1
- package/dist/internal/utils.js.map +0 -1
- package/dist/mermaid.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/icons/flags/Eu.tsx","../src/icons/flags/Us.tsx","../src/icons/brandIcon.ts","../src/icons/vendors/Aws.tsx","../src/icons/vendors/Azure.tsx","../src/icons/vendors/ChatGpt.tsx","../src/icons/vendors/Claude.tsx","../src/icons/vendors/Cursor.tsx","../src/icons/vendors/Devin.tsx","../src/icons/vendors/Gcp.tsx","../src/icons/vendors/Google.tsx","../src/icons/vendors/Keboola.tsx","../src/icons/vendors/Make.tsx","../src/icons/vendors/Microsoft.tsx"],"names":["forwardRef","jsxs","jsx","useId"],"mappings":"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","file":"chunk-RQVK4IYC.js","sourcesContent":["import { forwardRef } from 'react';\nimport type { LucideIcon, LucideProps } from 'lucide-react';\n\nimport { cn } from '../../utils';\n\nconst STAR =\n 'M0 -2 0.449 -0.618 1.902 -0.618 0.727 0.236 1.176 1.618 0 0.764 -1.176 1.618 -0.727 0.236 -1.902 -0.618 -0.449 -0.618Z';\n\nconst STAR_POSITIONS = Array.from({ length: 12 }, (_, index) => {\n const angle = (index * Math.PI) / 6 - Math.PI / 2;\n return { x: 12 + 5.882 * Math.cos(angle), y: 12 + 5.882 * Math.sin(angle) };\n});\n\nexport const Eu: LucideIcon = forwardRef<SVGSVGElement, LucideProps>(\n ({ size = 24, className, children, ...rest }, ref) => (\n <svg\n ref={ref}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n className={cn('lucide', className)}\n {...rest}\n >\n <rect x=\"2\" y=\"2\" width=\"20\" height=\"20\" rx=\"2\" fill=\"#039\" />\n <g fill=\"#FC0\">\n {STAR_POSITIONS.map(({ x, y }) => (\n <path key={`${x},${y}`} d={STAR} transform={`translate(${x} ${y})`} />\n ))}\n </g>\n {children}\n </svg>\n ),\n);\n\nEu.displayName = 'Eu';\n","import { forwardRef, useId } from 'react';\nimport type { LucideIcon, LucideProps } from 'lucide-react';\n\nimport { cn } from '../../utils';\n\nconst STRIPES =\n 'M2 3.538h20v1.538H2ZM2 6.615h20v1.538H2ZM2 9.692h20v1.538H2ZM2 12.769h20v1.538H2ZM2 15.846h20v1.538H2ZM2 18.923h20v1.538H2Z';\n\nexport const Us: LucideIcon = forwardRef<SVGSVGElement, LucideProps>(\n ({ size = 24, className, children, ...rest }, ref) => {\n const clipId = `${useId()}-tile`;\n\n return (\n <svg\n ref={ref}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n className={cn('lucide', className)}\n {...rest}\n >\n <clipPath id={clipId}>\n <rect x=\"2\" y=\"2\" width=\"20\" height=\"20\" rx=\"2\" />\n </clipPath>\n <g clipPath={`url(#${clipId})`}>\n <path fill=\"#B22234\" d=\"M2 2h20v20H2Z\" />\n <path fill=\"#fff\" d={STRIPES} />\n <path fill=\"#3C3B6E\" d=\"M2 2h8v10.769H2Z\" />\n </g>\n {children}\n </svg>\n );\n },\n);\n\nUs.displayName = 'Us';\n","import type { ForwardRefExoticComponent, RefAttributes } from 'react';\nimport type { LucideIcon, LucideProps } from 'lucide-react';\n\nimport { cn } from '../utils';\n\nexport type BrandIconProps = LucideProps & {\n /** Render the mark in `currentColor` instead of its own brand colours. */\n mono?: boolean;\n};\n\n/**\n * The vendor and flag marks: a Lucide icon plus `mono`. Intersecting `LucideIcon`\n * keeps them assignable to any `icon: LucideIcon` slot by construction.\n */\nexport type BrandIcon = LucideIcon &\n ForwardRefExoticComponent<BrandIconProps & RefAttributes<SVGSVGElement>>;\n\n/**\n * CSS wins over presentation attributes, so this recolours every shape without\n * touching the artwork. Both `defs` and its descendants are excluded: `fill` is an\n * inherited property, so recolouring `<defs>` itself would reach its children and\n * destroy a mask's `fill=\"white\"`, which is luminance rather than colour.\n */\nconst MONO = 'tw:[&_*:not(defs,defs_*)]:fill-current';\n\n/** Every brand mark's class list: the Lucide marker, the `mono` override, then caller overrides. */\nexport const brandClass = (mono: boolean | undefined, className: string | undefined) =>\n cn('lucide', mono && MONO, className);\n","import { forwardRef } from 'react';\n\nimport type { BrandIcon, BrandIconProps } from '../brandIcon';\nimport { brandClass } from '../brandIcon';\n\n// `forwardRef` here is required for type compatibility with `LucideIcon` — see\n// `Keboola.tsx` for the full rationale. The AWS logo is a fixed two-color vendor\n// mark (`#252F3E` wordmark + `#FF9900` smile): its paths keep their own fills\n// and ignore `color`, and it must NOT re-skin under a customer brand.\nexport const Aws: BrandIcon = forwardRef<SVGSVGElement, BrandIconProps>(\n ({ size = 24, mono, className, children, ...rest }, ref) => (\n <svg\n ref={ref}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n // Lucide's grid — see `Keboola.tsx` for why every brand icon shares it.\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n className={brandClass(mono, className)}\n {...rest}\n >\n {/* Wordmark + smile is a wide lockup, so the 20-unit box caps its width; it is centered\n vertically. Measured artwork bbox: (5.12, 9.49) 21.76 × 13.01. */}\n <g transform=\"translate(-2.7059 -2.7013) scale(0.919118)\">\n <path\n fill=\"#252F3E\"\n d=\"M11.253 14.22c0 .267.029.484.08.644.057.159.13.333.23.52.037.059.051.117.051.167 0 .073-.043.145-.137.217l-.456.304a.347.347 0 0 1-.188.065c-.072 0-.145-.036-.217-.1a2.232 2.232 0 0 1-.26-.341 5.574 5.574 0 0 1-.225-.427c-.565.666-1.274.999-2.128.999-.608 0-1.092-.174-1.447-.521-.355-.348-.536-.81-.536-1.39 0-.615.217-1.114.659-1.49.441-.377 1.028-.565 1.773-.565.246 0 .5.022.767.058.268.036.543.094.832.159v-.528c0-.55-.115-.934-.34-1.158-.231-.225-.622-.333-1.18-.333-.253 0-.513.029-.781.094a5.764 5.764 0 0 0-.782.246 2.07 2.07 0 0 1-.253.094.444.444 0 0 1-.116.022c-.101 0-.152-.072-.152-.224v-.355c0-.116.015-.203.051-.253a.542.542 0 0 1 .203-.152c.253-.13.557-.24.911-.326.355-.094.731-.138 1.13-.138.86 0 1.49.196 1.895.587.399.39.601.984.601 1.78v2.345h.015Zm-2.939 1.1c.24 0 .485-.044.746-.13.26-.087.492-.247.687-.464.116-.137.203-.29.246-.463a2.6 2.6 0 0 0 .073-.63v-.303a6.071 6.071 0 0 0-.666-.123 5.462 5.462 0 0 0-.68-.044c-.485 0-.84.094-1.079.29-.238.195-.354.47-.354.832 0 .34.087.593.268.767.173.18.427.268.76.268Zm5.812.781c-.13 0-.217-.021-.275-.072-.058-.043-.109-.145-.152-.282l-1.701-5.594a1.269 1.269 0 0 1-.065-.29c0-.116.058-.18.174-.18h.709c.137 0 .231.02.282.072.058.043.101.144.145.282l1.216 4.79 1.129-4.79c.036-.145.08-.239.137-.282a.498.498 0 0 1 .29-.073h.578c.138 0 .232.022.29.073.058.043.108.144.137.282l1.144 4.848 1.252-4.848c.043-.145.094-.239.145-.282a.472.472 0 0 1 .282-.073h.673c.116 0 .18.058.18.181 0 .036-.007.072-.014.116a1.03 1.03 0 0 1-.05.18l-1.745 5.595c-.043.145-.094.239-.152.282a.463.463 0 0 1-.274.072h-.623c-.137 0-.231-.021-.29-.072-.057-.05-.108-.145-.137-.29L16.29 11.08l-1.114 4.66c-.036.145-.08.24-.138.29-.057.05-.159.072-.289.072h-.622Zm9.299.196c-.376 0-.753-.044-1.114-.13-.362-.088-.645-.182-.833-.29-.116-.065-.195-.138-.224-.203a.512.512 0 0 1-.044-.202v-.37c0-.151.058-.224.167-.224.043 0 .087.008.13.022.044.014.109.043.181.072.246.109.514.196.796.254.29.057.572.086.861.086.456 0 .81-.08 1.057-.238a.78.78 0 0 0 .376-.688.705.705 0 0 0-.195-.506c-.13-.138-.376-.261-.731-.377l-1.05-.325c-.528-.167-.918-.413-1.157-.739a1.724 1.724 0 0 1-.362-1.049c0-.304.065-.572.195-.803A1.86 1.86 0 0 1 22 9.993c.217-.166.463-.29.753-.376.29-.087.593-.123.912-.123.159 0 .325.007.485.029.166.022.318.05.47.08.145.036.282.072.413.115.13.044.231.087.303.13a.626.626 0 0 1 .218.181.39.39 0 0 1 .065.24v.34c0 .152-.058.231-.167.231a.753.753 0 0 1-.275-.087 3.311 3.311 0 0 0-1.39-.282c-.412 0-.737.065-.962.203-.224.137-.34.347-.34.644 0 .202.073.376.217.514.145.137.413.274.796.397l1.028.326c.521.167.897.398 1.122.695.224.297.333.637.333 1.013 0 .311-.066.594-.189.84-.13.246-.303.463-.528.636-.224.181-.492.312-.803.406a3.442 3.442 0 0 1-1.035.152Z\"\n />\n <path\n fill=\"#F90\"\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M24.793 19.814c-2.381 1.758-5.84 2.692-8.815 2.692-4.168 0-7.924-1.542-10.76-4.103-.225-.203-.023-.478.245-.319 3.069 1.78 6.853 2.859 10.769 2.859 2.641 0 5.543-.55 8.213-1.68.398-.18.739.261.348.55Z\"\n />\n <path\n fill=\"#F90\"\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M25.784 18.685c-.304-.391-2.012-.188-2.786-.094-.232.029-.268-.174-.058-.326 1.36-.955 3.597-.68 3.857-.362.26.326-.072 2.562-1.346 3.633-.195.167-.383.08-.296-.137.29-.717.933-2.33.63-2.714Z\"\n />\n </g>\n {children}\n </svg>\n ),\n);\n\nAws.displayName = 'Aws';\n","import { forwardRef, useId } from 'react';\n\nimport type { BrandIcon, BrandIconProps } from '../brandIcon';\nimport { brandClass } from '../brandIcon';\n\n// `forwardRef` here is required for type compatibility with `LucideIcon` — see\n// `Keboola.tsx` for the full rationale. The Azure mark is a fixed vendor gradient\n// (`#114A8B → #0669BC`, `#3CCBF4 → #2892DF`, plus a solid `#0078D4`): it ignores\n// `color` and must NOT re-skin under a customer brand.\n//\n// The gradients are referenced by id, so the ids are derived from `useId()` — two\n// `Azure` icons on one page would otherwise define the same ids and the first\n// definition would win for both.\nexport const Azure: BrandIcon = forwardRef<SVGSVGElement, BrandIconProps>(\n ({ size = 24, mono, className, children, ...rest }, ref) => {\n const id = useId();\n const [left, shadow, right] = [`${id}-left`, `${id}-shadow`, `${id}-right`];\n\n return (\n <svg\n ref={ref}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n // Lucide's grid — see `Keboola.tsx` for why every brand icon shares it.\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n className={brandClass(mono, className)}\n {...rest}\n >\n {/* Measured artwork bbox: (6.83, 7.36) 18.33 × 17.27. The gradients are\n `userSpaceOnUse`, so they resolve in this group's space and need no adjustment. */}\n <g transform=\"translate(-5.4523 -5.4523) scale(1.091107)\">\n <path\n fill={`url(#${left})`}\n d=\"M12.945 7.363h5.425l-5.631 16.685a.865.865 0 0 1-.82.589H7.698a.863.863 0 0 1-.819-1.14l5.247-15.545a.864.864 0 0 1 .82-.589Z\"\n />\n <path\n fill=\"#0078D4\"\n d=\"M20.828 18.554h-8.602a.398.398 0 0 0-.272.69l5.528 5.159c.16.15.373.234.593.233h4.87l-2.117-6.082Z\"\n />\n <path\n fill={`url(#${shadow})`}\n d=\"M12.945 7.363a.858.858 0 0 0-.821.6l-5.238 15.52a.862.862 0 0 0 .814 1.153h4.33a.925.925 0 0 0 .711-.604l1.045-3.078 3.73 3.48c.157.13.353.2.556.202h4.853l-2.128-6.082-6.205.002L18.39 7.363h-5.445Z\"\n />\n <path\n fill={`url(#${right})`}\n d=\"M19.874 7.95a.863.863 0 0 0-.818-.587H13.01a.864.864 0 0 1 .818.588l5.247 15.546a.863.863 0 0 1-.818 1.14h6.045a.863.863 0 0 0 .819-1.14L19.874 7.95Z\"\n />\n </g>\n <defs>\n <linearGradient\n id={left}\n x1=\"14.922\"\n x2=\"9.289\"\n y1=\"8.643\"\n y2=\"25.286\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop stopColor=\"#114A8B\" />\n <stop offset=\"1\" stopColor=\"#0669BC\" />\n </linearGradient>\n <linearGradient\n id={shadow}\n x1=\"16.682\"\n x2=\"15.379\"\n y1=\"16.399\"\n y2=\"16.84\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop stopOpacity=\".3\" />\n <stop offset=\".071\" stopOpacity=\".2\" />\n <stop offset=\".321\" stopOpacity=\".1\" />\n <stop offset=\".623\" stopOpacity=\".05\" />\n <stop offset=\"1\" stopOpacity=\"0\" />\n </linearGradient>\n <linearGradient\n id={right}\n x1=\"15.966\"\n x2=\"22.15\"\n y1=\"8.158\"\n y2=\"24.633\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop stopColor=\"#3CCBF4\" />\n <stop offset=\"1\" stopColor=\"#2892DF\" />\n </linearGradient>\n </defs>\n {children}\n </svg>\n );\n },\n);\n\nAzure.displayName = 'Azure';\n","import { forwardRef } from 'react';\n\nimport type { BrandIcon, BrandIconProps } from '../brandIcon';\nimport { brandClass } from '../brandIcon';\n\nexport const ChatGpt: BrandIcon = forwardRef<SVGSVGElement, BrandIconProps>(\n ({ size = 24, mono, color = 'currentColor', className, children, ...rest }, ref) => (\n <svg\n ref={ref}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill={color}\n className={brandClass(mono, className)}\n {...rest}\n >\n <g transform=\"translate(-8.178339 -8.178357) scale(0.05639)\">\n <path d=\"M508.7 317.4C516.8 287.3 509 253.9 485.4 230.3C461.8 206.7 428.4 198.9 398.3 206.9C376.2 184.9 343.4 175 311.1 183.6C278.9 192.2 255.4 217.3 247.4 247.4C217.3 255.5 192.2 278.9 183.6 311.1C175 343.4 184.9 376.2 206.9 398.3C198.9 428.4 206.7 461.8 230.3 485.4C253.9 509 287.3 516.8 317.4 508.8C339.4 530.7 372.3 540.7 404.5 532.1C436.8 523.4 460.2 498.4 468.3 468.3C498.4 460.2 523.4 436.8 532.1 404.5C540.7 372.3 530.7 339.4 508.7 317.4V317.4ZM470.9 244.8C486.9 260.8 493.5 282.6 490.7 303.4L415.6 260C412.4 258.2 408.5 258.2 405.3 260L317.4 310.8V277.5C317.4 275.2 318.7 273 320.7 271.8L387.6 233.2C414.2 218.4 448.3 222.2 470.9 244.8H470.9ZM357.8 311.1L398.3 334.5V381.2L357.8 404.5L317.4 381.2V334.5L357.8 311.1ZM264.8 269.7C265.2 239.3 285.6 211.6 316.5 203.4C338.3 197.5 360.5 202.7 377.1 215.6L302 258.9C298.8 260.8 296.9 264.1 296.9 267.8V369.3L268.1 352.7C266 351.5 264.8 349.4 264.8 347V269.7V269.7ZM203.4 316.5C209.2 294.6 224.9 278 244.3 270V356.7C244.3 360.4 246.2 363.8 249.4 365.6L337.3 416.4L308.5 433C306.5 434.2 304 434.2 301.9 433L235 394.4C208.9 378.8 195.1 347.3 203.4 316.5ZM244.8 470.9C228.8 454.9 222.2 433.1 225 412.3L300.1 455.6C303.3 457.5 307.2 457.5 310.3 455.6L398.3 404.9V438.1C398.3 440.5 397 442.7 395 443.8L328 482.5C301.5 497.3 267.3 493.5 244.8 470.9H244.8ZM450.9 446C450.5 476.4 430 504 399.2 512.3C377.4 518.1 355.2 512.9 338.5 500.1L413.7 456.7C416.8 454.9 418.8 451.5 418.8 447.9V346.3L447.6 363C449.6 364.1 450.9 366.3 450.9 368.7V446V446ZM512.3 399.2C506.4 421.1 490.8 437.7 471.4 445.7V358.9C471.4 355.3 469.4 351.9 466.3 350.1L378.3 299.3L407.2 282.7C409.2 281.5 411.7 281.5 413.7 282.7L480.7 321.3C506.8 336.9 520.5 368.4 512.3 399.2Z\" />\n </g>\n {children}\n </svg>\n ),\n);\n\nChatGpt.displayName = 'ChatGpt';\n","import { forwardRef } from 'react';\n\nimport type { BrandIcon, BrandIconProps } from '../brandIcon';\nimport { brandClass } from '../brandIcon';\n\nexport const Claude: BrandIcon = forwardRef<SVGSVGElement, BrandIconProps>(\n ({ size = 24, mono, className, children, ...rest }, ref) => (\n <svg\n ref={ref}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n className={brandClass(mono, className)}\n {...rest}\n >\n <g transform=\"translate(1.473684 1.473684) scale(0.08489)\">\n <path\n d=\"M52.4 162.9L98.8 136.9L99.5 134.6L98.8 133.3H96.5L88.7 132.9L62.2 132.2L39.3 131.2L17 130L11.4 128.8L6.2 121.9L6.7 118.4L11.4 115.3L18.2 115.8L33.1 116.9L55.5 118.4L71.7 119.4L95.7 121.9H99.5L100.1 120.3L98.8 119.4L97.8 118.4L74.6 102.7L49.5 86.2L36.4 76.6L29.4 71.8L25.8 67.3L24.3 57.4L30.7 50.3L39.3 50.9L41.5 51.5L50.3 58.2L69 72.7L93.4 90.7L97 93.6L98.4 92.7L98.7 92L97 89.3L83.8 65.3L69.6 40.8L63.3 30.7L61.6 24.6C61 22.1 60.6 20 60.6 17.4L67.8 7.5L71.9 6.2L81.7 7.5L85.8 11L91.9 25L101.7 46.8L117 76.6L121.5 85.5L123.9 93.6L124.8 96.1H126.3V94.7L127.6 77.9L129.9 57.4L132.2 30.9L132.9 23.5L136.6 14.5L144 9.6L149.7 12.3L154.4 19.1L153.8 23.5L151 41.6L145.5 70.1L142 89.3H144L146.4 86.8L156.1 74L172.3 53.7L179.4 45.7L187.8 36.8L193.2 32.5H203.3L210.7 43.7L207.4 55.1L197 68.3L188.3 79.6L175.9 96.2L168.2 109.6L168.9 110.7L170.7 110.5L198.8 104.5L213.9 101.8L232 98.7L240.1 102.5L241 106.4L237.9 114.3L218.5 119L195.8 123.6L162.1 131.6L161.7 131.9L162.1 132.5L177.4 133.9L183.9 134.3H199.8L229.4 136.5L237.2 141.6L241.8 147.9L241 152.7L229.1 158.7L213 155L175.4 146L162.6 142.8H160.8V143.8L171.5 154.4L191.2 172.1L215.8 195L217.1 200.7L213.9 205.2L210.6 204.7L188.9 188.4L180.5 181.1L161.7 165.1H160.4V166.8L164.8 173.2L187.8 207.8L188.9 218.4L187.3 221.8L181.3 224L174.8 222.8L161.2 203.8L147.3 182.5L136.1 163.3L134.7 164.2L128.1 235.4L125 239.1L117.9 241.8L111.9 237.3L108.7 230L111.9 215.5L115.7 196.5L118.8 181.5L121.6 162.9L123.3 156.6L123.1 156.2L121.8 156.4L107.7 175.8L86.3 204.7L69.4 222.8L65.3 224.4L58.3 220.8L58.9 214.3L62.9 208.5L86.3 178.7L100.4 160.2L109.6 149.5L109.5 148L109 147.9L46.7 188.5L35.6 189.9L30.8 185.4L31.4 178.1L33.7 175.8L52.4 162.9Z\"\n fill=\"#D97757\"\n />\n </g>\n {children}\n </svg>\n ),\n);\n\nClaude.displayName = 'Claude';\n","import { forwardRef } from 'react';\n\nimport type { BrandIcon, BrandIconProps } from '../brandIcon';\nimport { brandClass } from '../brandIcon';\n\nexport const Cursor: BrandIcon = forwardRef<SVGSVGElement, BrandIconProps>(\n ({ size = 24, mono, className, children, ...rest }, ref) => (\n <svg\n ref={ref}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n className={brandClass(mono, className)}\n {...rest}\n >\n <g transform=\"translate(-38.617225 -39.361257) scale(0.104712)\">\n <path\n d=\"M483.4 490.5L566 538.3C565.5 539.2 564.8 539.9 563.8 540.5L486.6 585.1C484.6 586.3 482.2 586.3 480.2 585.1L402.9 540.5C402 539.9 401.3 539.2 400.8 538.3L483.4 490.5Z\"\n fill=\"#72716D\"\n />\n <path\n d=\"M483.4 395V490.5L400.8 538.3C400.3 537.4 400 536.4 400 535.3V445.7C400 443.5 401.1 441.6 402.9 440.5L480.1 395.9C481.2 395.3 482.3 395 483.4 395H483.4Z\"\n fill=\"#55544F\"\n />\n <path\n d=\"M566 442.7C565.5 441.8 564.8 441.1 563.8 440.5L486.6 395.9C485.6 395.3 484.5 395 483.4 395V490.5L566 538.3C566.5 537.4 566.8 536.4 566.8 535.3V445.7C566.8 444.6 566.5 443.6 566 442.7H566Z\"\n fill=\"#43413C\"\n />\n <path\n d=\"M560.2 446C560.7 446.9 560.8 447.9 560.2 448.8L485.2 579C484.7 579.9 483.4 579.5 483.4 578.5V492.7C483.4 492 483.2 491.4 482.9 490.8L560.2 446H560.2V446Z\"\n fill=\"#D6D5D2\"\n />\n <path\n d=\"M560.2 446L482.9 490.8C482.6 490.2 482.1 489.7 481.5 489.4L407.4 446.5C406.5 446 406.9 444.7 407.9 444.7H557.8C558.9 444.7 559.8 445.2 560.2 446Z\"\n fill=\"white\"\n />\n </g>\n {children}\n </svg>\n ),\n);\n\nCursor.displayName = 'Cursor';\n","import { forwardRef } from 'react';\n\nimport type { BrandIcon, BrandIconProps } from '../brandIcon';\nimport { brandClass } from '../brandIcon';\n\nexport const Devin: BrandIcon = forwardRef<SVGSVGElement, BrandIconProps>(\n ({ size = 24, mono, color = 'currentColor', className, children, ...rest }, ref) => (\n <svg\n ref={ref}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill={color}\n className={brandClass(mono, className)}\n {...rest}\n >\n <g transform=\"translate(-0.993373 -0.985316) scale(0.060925)\">\n <path d=\"M70 159.3V91.3C70 88.4 71.6 85.6 74.2 84.1L133 50.1C135.6 48.6 138.8 48.6 141.4 50.1L200.3 84.1C202.9 85.6 204.4 88.4 204.4 91.3V126.1C204.7 137.6 210.8 148.7 221.5 154.9C232.3 161.1 244.9 160.8 255.1 155.3L285.1 137.9C287.7 136.4 290.9 136.4 293.5 137.9L352.4 171.9C354.9 173.4 356.5 176.2 356.5 179.2V247.1C356.5 250.1 354.9 252.9 352.4 254.4L293.5 288.4C290.9 289.8 287.7 289.8 285.1 288.4L255.3 271.1C245.1 265.5 232.3 265.1 221.5 271.4C210.8 277.6 204.7 288.7 204.5 300.2V334.9C204.5 337.9 202.9 340.7 200.3 342.2L141.4 376.2C138.8 377.6 135.6 377.6 133 376.2L74.2 342.2C71.6 340.7 70 337.9 70 334.9V267C70 264 71.6 261.2 74.2 259.7L133 225.7C135.6 224.2 138.8 224.2 141.4 225.7L171.5 243.1C181.7 248.6 194.3 248.9 205 242.7C215.8 236.5 221.9 225.2 222.1 213.6C221.8 202.1 215.7 189.7 205 183.5C194.3 177.4 181.6 177.6 171.5 183.2L141.3 200.7C138.7 202.2 135.5 202.2 132.9 200.7L74.2 166.6C71.6 165.1 70 162.3 70 159.3Z\" />\n </g>\n {children}\n </svg>\n ),\n);\n\nDevin.displayName = 'Devin';\n","import { forwardRef } from 'react';\n\nimport type { BrandIcon, BrandIconProps } from '../brandIcon';\nimport { brandClass } from '../brandIcon';\n\n// `forwardRef` here is required for type compatibility with `LucideIcon` — see\n// `Keboola.tsx` for the full rationale. The Google Cloud mark carries the fixed\n// four-color Google palette (`#EA4335 / #4285F4 / #34A853 / #FBBC05`): its paths\n// keep their own fills and ignore `color`, and it must NOT re-skin under a\n// customer brand.\nexport const Gcp: BrandIcon = forwardRef<SVGSVGElement, BrandIconProps>(\n ({ size = 24, mono, className, children, ...rest }, ref) => (\n <svg\n ref={ref}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n // Lucide's grid — see `Keboola.tsx` for why every brand icon shares it.\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n className={brandClass(mono, className)}\n {...rest}\n >\n {/* Measured artwork bbox: (5.50, 7.55) 21.00 × 16.88. */}\n <g transform=\"translate(-3.2381 -3.2286) scale(0.952381)\">\n <path\n fill=\"#EA4335\"\n d=\"m19.466 12.212 1.825-1.826.122-.768C18.087 6.593 12.8 6.936 9.8 10.333a8.438 8.438 0 0 0-1.78 3.335l.654-.092 3.65-.602.282-.288c1.624-1.784 4.37-2.024 6.245-.506l.615.032Z\"\n />\n <path\n fill=\"#4285F4\"\n d=\"M23.892 13.614a8.223 8.223 0 0 0-2.479-3.996l-2.562 2.562a4.554 4.554 0 0 1 1.672 3.612v.455a2.28 2.28 0 0 1 2.28 2.28c0 1.26-1.02 2.255-2.28 2.255h-4.567l-.448.486v2.735l.448.43h4.567c3.275.025 5.951-2.584 5.977-5.86a5.931 5.931 0 0 0-2.608-4.959Z\"\n />\n <path\n fill=\"#34A853\"\n d=\"M11.396 24.433h4.56v-3.651h-4.56c-.325 0-.64-.07-.936-.205l-.646.198-1.839 1.826-.16.62a5.919 5.919 0 0 0 3.58 1.212Z\"\n />\n <path\n fill=\"#FBBC05\"\n d=\"M11.396 12.59a5.931 5.931 0 0 0-3.58 10.632l2.644-2.645a2.28 2.28 0 1 1 3.017-3.017l2.646-2.645a5.925 5.925 0 0 0-4.727-2.325Z\"\n />\n </g>\n {children}\n </svg>\n ),\n);\n\nGcp.displayName = 'Gcp';\n","import { forwardRef } from 'react';\n\nimport type { BrandIcon, BrandIconProps } from '../brandIcon';\nimport { brandClass } from '../brandIcon';\n\n// `forwardRef` here is required for type compatibility with `LucideIcon` — see\n// `Keboola.tsx` for the full rationale. The Google \"G\" is a fixed four-color\n// vendor mark (`#4285F4 / #34A853 / #FBBC04 / #EA4335`): its paths keep their\n// own fills and ignore `color`, and it must NOT re-skin under a customer brand.\nexport const Google: BrandIcon = forwardRef<SVGSVGElement, BrandIconProps>(\n ({ size = 24, mono, className, children, ...rest }, ref) => (\n <svg\n ref={ref}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n // Lucide's grid — see `Keboola.tsx` for why every brand icon shares it.\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n className={brandClass(mono, className)}\n {...rest}\n >\n {/* Measured artwork bbox: (12, 10) 19.60 × 20.00. */}\n <g transform=\"translate(-9.8 -8)\">\n <path\n d=\"M31.6 20.2273C31.6 19.5182 31.5364 18.8364 31.4182 18.1818H22V22.05H27.3818C27.15 23.3 26.4455 24.3591 25.3864 25.0682V27.5773H28.6182C30.5091 25.8364 31.6 23.2727 31.6 20.2273Z\"\n fill=\"#4285F4\"\n />\n <path\n d=\"M22 30C24.7 30 26.9636 29.1045 28.6181 27.5773L25.3863 25.0682C24.4909 25.6682 23.3454 26.0227 22 26.0227C19.3954 26.0227 17.1909 24.2636 16.4045 21.9H13.0636V24.4909C14.7091 27.7591 18.0909 30 22 30Z\"\n fill=\"#34A853\"\n />\n <path\n d=\"M16.4045 21.9C16.2045 21.3 16.0909 20.6591 16.0909 20C16.0909 19.3409 16.2045 18.7 16.4045 18.1V15.5091H13.0636C12.3864 16.8591 12 18.3864 12 20C12 21.6136 12.3864 23.1409 13.0636 24.4909L16.4045 21.9Z\"\n fill=\"#FBBC04\"\n />\n <path\n d=\"M22 13.9773C23.4681 13.9773 24.7863 14.4818 25.8227 15.4727L28.6909 12.6045C26.9591 10.9909 24.6954 10 22 10C18.0909 10 14.7091 12.2409 13.0636 15.5091L16.4045 18.1C17.1909 15.7364 19.3954 13.9773 22 13.9773Z\"\n fill=\"#EA4335\"\n />\n </g>\n {children}\n </svg>\n ),\n);\n\nGoogle.displayName = 'Google';\n","import { forwardRef } from 'react';\n\nimport type { BrandIcon, BrandIconProps } from '../brandIcon';\nimport { brandClass } from '../brandIcon';\n\n// `forwardRef` here is required for type compatibility with `LucideIcon`\n// (a `ForwardRefExoticComponent` from lucide-react). React 19's ref-as-prop\n// pattern produces a plain function component which isn't structurally\n// assignable to `LucideIcon`, so consumers couldn't pass `Keboola`\n// interchangeably with imported Lucide icons (e.g. `<Button><Keboola className=\"tw:size-4\" /></Button>`).\nexport const Keboola: BrandIcon = forwardRef<SVGSVGElement, BrandIconProps>(\n ({ size = 24, mono, color = 'currentColor', className, children, ...rest }, ref) => (\n <svg\n ref={ref}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n // Lucide's own 24-unit grid, and the artwork is scaled into the same 20-unit content box\n // Lucide's icons occupy (`square` is an 18-unit rect + 2-unit stroke = 20 visual units,\n // centered). Every brand icon in this folder follows it, so a brand mark and a Lucide icon\n // render at the same optical size for a given `size` / `tw:size-*`.\n viewBox=\"0 0 24 24\"\n // Kept from when the artwork ran flush to the viewBox edge (y=0..512): an `<svg>` defaults to\n // `overflow: hidden`, and sub-pixel rounding clipped the top of the mark flat. The 2-unit\n // inset above now provides that tolerance; this stays as belt-and-braces.\n overflow=\"visible\"\n fill={color}\n className={brandClass(mono, className)}\n {...rest}\n >\n {/* Measured artwork bbox: (0.13, 0) 299.69 × 512.20. */}\n <g transform=\"translate(6.1439 2) scale(0.039047)\">\n <path d=\"M152 320C79.7 320 24.5 233.9 24.5 124.7C24.5 15.6 70.5 0 152 0s123.6 15.6 123.6 124.7C275.5 233.9 217.7 320 152 320zm-8.7-50.5c0-11.2-9.5-20.3-21.2-20.3s-21.2 9.1-21.2 20.3c0 11.2 9.5 20.3 21.2 20.3s21.2-9.1 21.2-20.3zm55.7 0c0-11.2-9.5-20.3-21.2-20.3s-21.2 9.1-21.2 20.3c0 11.2 9.5 20.3 21.2 20.3s21.2-9.1 21.2-20.3zm68.9 115.1c10.2 9.3 20.2 20.5 29 35c5.9 9.7 2.6 22.1-7.5 27.8c-3.4 1.9-7.1 2.8-10.7 2.8c-7.2 0-14.3-3.6-18.3-10c-6.8-11.1-13.8-18.9-21.7-26.1c-7.3-6.7-15.6-12.7-24.9-19.5c-.7-.5-1.4-1-2.1-1.5c-5-3.6-10-6.8-14.9-9.4c.6 1 1.2 2.1 1.8 3.2c14.4 26.4 29.2 63.1 29.2 104.9c0 11.2-9.5 20.3-21.2 20.3c-11.7 0-21.2-9.1-21.2-20.3c.1-31.8-11.6-62.3-23.8-84.9c-4-7.4-8-13.9-11.6-19.3c-3.4 5.2-7.2 11.3-11 18.3c-12.5 22.7-24.5 53.8-24.4 86c0 11.2-9.5 20.3-21.2 20.3s-21.2-9.1-21.2-20.3c.1-41.8 14.9-78.4 29.2-104.9c.6-1.1 1.2-2.1 1.8-3.2c-5 2.7-9.9 5.8-14.9 9.4c-.6 .5-1.3 .9-1.9 1.4c-9.5 6.9-17.8 12.9-25.1 19.7c-7.9 7.2-14.9 15.1-21.7 26.1c-5.9 9.7-18.9 12.9-29 7.2C.5 441.8-2.9 429.3 3.1 419.7c8.9-14.4 18.8-25.7 29-35c9.2-8.4 18.5-15.1 27.6-21.7c1-.7 2-1.4 3-2.2c4.7-3.5 9.6-6.7 14.6-9.6c-5-2.9-9.8-6.1-14.6-9.6C39.8 325 19.9 302.5 3.1 275.1c-5.9-9.7-2.6-22.1 7.5-27.8c10.1-5.7 23.1-2.5 29 7.2c14.6 23.7 31.1 42 48.7 54.9c18.9 13.7 37.4 20.5 56.5 21.5c1.7-.1 3.5-.1 5.2-.1c1.8 0 3.5 .1 5.2 .1c0 0 0 0 0 0c19.1-1.1 37.6-7.9 56.5-21.5c17.6-12.8 34.2-31.2 48.7-54.9c6-9.7 18.9-12.9 29-7.2c10.1 5.7 13.4 18.1 7.5 27.8c-16.8 27.4-36.7 49.9-59.6 66.6c-4.7 3.5-9.6 6.7-14.5 9.6c4.9 2.9 9.8 6.1 14.5 9.6c.9 .7 1.8 1.3 2.7 2c9.2 6.7 18.5 13.5 27.9 22z\" />\n </g>\n {children}\n </svg>\n ),\n);\n\nKeboola.displayName = 'Keboola';\n","import { forwardRef, useId } from 'react';\n\nimport type { BrandIcon, BrandIconProps } from '../brandIcon';\nimport { brandClass } from '../brandIcon';\n\nexport const Make: BrandIcon = forwardRef<SVGSVGElement, BrandIconProps>(\n ({ size = 24, mono, className, children, ...rest }, ref) => {\n const baseId = useId().replace(/:/g, '');\n\n return (\n <svg\n ref={ref}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n className={brandClass(mono, className)}\n {...rest}\n >\n <defs>\n <clipPath id={`${baseId}-clip0`}>\n <path d=\"m156,44.3h33.9c2.6,0,4.7,2.1,4.7,4.7v125.1c0,2.6-2.1,4.7-4.7,4.7h-33.9c-2.6,0-4.7-2.1-4.7-4.7V49c0-2.6,2.1-4.7,4.7-4.7Z\" />\n </clipPath>\n <clipPath id={`${baseId}-clip1`}>\n <path d=\"m56.7,46L.5,157.7c-1.2,2.3-.23,5.1,2.1,6.3l30.3,15.2c2.3,1.2,5.1.23,6.3-2.1l56.2-111.8c1.2-2.3.23-5.1-2.1-6.3l-30.3-15.2c-.68-.34-1.4-.5-2.1-.5-1.7,0-3.4.94-4.2,2.6\" />\n </clipPath>\n <clipPath id={`${baseId}-clip2`}>\n <path d=\"m103.9,46.4l-24,121.8c-.5,2.5,1.1,5,3.7,5.5l33.2,6.7c2.5.51,5-1.1,5.5-3.7l24-121.8c.5-2.5-1.1-5-3.7-5.5l-33.2-6.7c-.31-.06-.62-.09-.93-.09-2.2,0-4.2,1.5-4.6,3.8\" />\n </clipPath>\n <linearGradient\n id={`${baseId}-gradient0`}\n x1=\"-167.5\"\n y1=\"470.3\"\n x2=\"-166.5\"\n y2=\"470.3\"\n gradientTransform=\"translate(16426.9 45936.4) scale(97.45 -97.45)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stopColor=\"#b02de9\" />\n <stop offset=\".02\" stopColor=\"#b02de9\" />\n <stop offset=\".8\" stopColor=\"#6d00cc\" />\n <stop offset=\"1\" stopColor=\"#6d00cc\" />\n </linearGradient>\n <linearGradient\n id={`${baseId}-gradient1`}\n x1=\"-167.5\"\n y1=\"470.3\"\n x2=\"-166.5\"\n y2=\"470.3\"\n gradientTransform=\"translate(17962.6 50466.15) scale(107.08 -107.08)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stopColor=\"#f0f\" />\n <stop offset=\"0\" stopColor=\"#f0f\" />\n <stop offset=\".17\" stopColor=\"#e90cf9\" />\n <stop offset=\".54\" stopColor=\"#c023ed\" />\n <stop offset=\".73\" stopColor=\"#b02de9\" />\n <stop offset=\"1\" stopColor=\"#b02de9\" />\n </linearGradient>\n <linearGradient\n id={`${baseId}-gradient2`}\n x1=\"-167.5\"\n y1=\"470.3\"\n x2=\"-166.5\"\n y2=\"470.3\"\n gradientTransform=\"translate(35959.81 101077.55) scale(214.7 -214.7)\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stopColor=\"#f0f\" />\n <stop offset=\".02\" stopColor=\"#f0f\" />\n <stop offset=\".09\" stopColor=\"#e90cf9\" />\n <stop offset=\".23\" stopColor=\"#c023ed\" />\n <stop offset=\".3\" stopColor=\"#b02de9\" />\n <stop offset=\".42\" stopColor=\"#a42be3\" />\n <stop offset=\".63\" stopColor=\"#8626d5\" />\n <stop offset=\".85\" stopColor=\"#6021c3\" />\n <stop offset=\"1\" stopColor=\"#6021c3\" />\n </linearGradient>\n </defs>\n <g transform=\"translate(1.999921 0.535282) scale(0.102775)\">\n <g clipPath={`url(#${baseId}-clip0)`}>\n <rect\n x=\"129.4\"\n y=\"41\"\n width=\"87.1\"\n height=\"141.1\"\n transform=\"translate(-27.91 66.73) rotate(-20.24)\"\n fill={`url(#${baseId}-gradient0)`}\n />\n </g>\n <g clipPath={`url(#${baseId}-clip1)`}>\n <rect\n x=\"-23.9\"\n y=\"29.8\"\n width=\"143.5\"\n height=\"164.3\"\n transform=\"translate(-40.48 28.2) rotate(-23.38)\"\n fill={`url(#${baseId}-gradient1)`}\n />\n </g>\n <g clipPath={`url(#${baseId}-clip2)`}>\n <rect\n x=\"57.6\"\n y=\"35.2\"\n width=\"111\"\n height=\"153.1\"\n transform=\"translate(-31.65 45.95) rotate(-20.21)\"\n fill={`url(#${baseId}-gradient2)`}\n />\n </g>\n </g>\n {children}\n </svg>\n );\n },\n);\n\nMake.displayName = 'Make';\n","import { forwardRef } from 'react';\n\nimport type { BrandIcon, BrandIconProps } from '../brandIcon';\nimport { brandClass } from '../brandIcon';\n\n// `forwardRef` here is required for type compatibility with `LucideIcon`\n// (a `ForwardRefExoticComponent` from lucide-react). React 19's ref-as-prop\n// pattern produces a plain function component which isn't structurally\n// assignable to `LucideIcon`, so consumers couldn't pass `Microsoft`\n// interchangeably with imported Lucide icons. The four-square mark carries\n// fixed Microsoft brand colors and deliberately ignores `color` — it must NOT\n// re-skin under a customer brand.\nexport const Microsoft: BrandIcon = forwardRef<SVGSVGElement, BrandIconProps>(\n ({ size = 24, mono, className, children, ...rest }, ref) => (\n <svg\n ref={ref}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n // Lucide's grid — see `Keboola.tsx` for why every brand icon shares it.\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n className={brandClass(mono, className)}\n {...rest}\n >\n {/* Measured artwork bbox: (0, 0) 21 × 21. */}\n <g transform=\"translate(2 2) scale(0.952381)\">\n <rect x=\"0\" y=\"0\" width=\"10\" height=\"10\" fill=\"#F25022\" />\n <rect x=\"11\" y=\"0\" width=\"10\" height=\"10\" fill=\"#7FBA00\" />\n <rect x=\"0\" y=\"11\" width=\"10\" height=\"10\" fill=\"#00A4EF\" />\n <rect x=\"11\" y=\"11\" width=\"10\" height=\"10\" fill=\"#FFB900\" />\n </g>\n {children}\n </svg>\n ),\n);\n\nMicrosoft.displayName = 'Microsoft';\n"]}
|
package/dist/chunk-RTW56PWZ.js
DELETED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { NumberInput } from './chunk-QZAWRSEB.js';
|
|
2
|
-
import { Textarea } from './chunk-EEK5NGZF.js';
|
|
3
|
-
import { ColorInput } from './chunk-VSERHUWD.js';
|
|
4
|
-
import { TextInput } from './chunk-HPMYYGP7.js';
|
|
5
|
-
import { HelpBlock } from './chunk-PROCA7K7.js';
|
|
6
|
-
import { cn } from './chunk-LXLIQ2D6.js';
|
|
7
|
-
import { createContext, useMemo, use } from 'react';
|
|
8
|
-
import { jsx } from 'react/jsx-runtime';
|
|
9
|
-
|
|
10
|
-
var FormGroupContext = createContext({
|
|
11
|
-
state: "default"
|
|
12
|
-
});
|
|
13
|
-
var FormGroupProvider = FormGroupContext;
|
|
14
|
-
var useFormGroupContext = () => use(FormGroupContext);
|
|
15
|
-
var FormGroupColorInput = ({ ref, ...props }) => {
|
|
16
|
-
const { state } = useFormGroupContext();
|
|
17
|
-
return /* @__PURE__ */ jsx(ColorInput, { state, ...props, ref });
|
|
18
|
-
};
|
|
19
|
-
var toMessage = (entry) => typeof entry === "string" ? entry : entry?.message;
|
|
20
|
-
var FormGroupError = ({ children, className, errors, ...rest }) => {
|
|
21
|
-
const content = useMemo(() => {
|
|
22
|
-
if (children) return children;
|
|
23
|
-
const messages = (errors ?? []).map(toMessage).filter((message) => !!message);
|
|
24
|
-
if (messages.length === 0) return null;
|
|
25
|
-
if (messages.length === 1) return messages[0];
|
|
26
|
-
return /* @__PURE__ */ jsx("ul", { className: "tw:m-0 tw:flex tw:list-disc tw:flex-col tw:gap-0 tw:pl-4", children: messages.map((message, index) => /* @__PURE__ */ jsx("li", { children: message }, index)) });
|
|
27
|
-
}, [children, errors]);
|
|
28
|
-
if (!content) return null;
|
|
29
|
-
return /* @__PURE__ */ jsx("div", { ...rest, role: "alert", className: cn("tw:m-0 tw:text-xs tw:text-destructive", className), children: content });
|
|
30
|
-
};
|
|
31
|
-
var FormGroupHelp = ({ children, ...rest }) => {
|
|
32
|
-
const formGroupContext = useFormGroupContext();
|
|
33
|
-
return /* @__PURE__ */ jsx(HelpBlock, { state: formGroupContext.state === "warning" ? "warning" : "default", ...rest, children });
|
|
34
|
-
};
|
|
35
|
-
var FormGroupNumberInput = ({ ref, ...props }) => {
|
|
36
|
-
const { state } = useFormGroupContext();
|
|
37
|
-
return /* @__PURE__ */ jsx(NumberInput, { ...props, ref, state });
|
|
38
|
-
};
|
|
39
|
-
var FormGroupTextarea = (props) => {
|
|
40
|
-
const { state } = useFormGroupContext();
|
|
41
|
-
return /* @__PURE__ */ jsx(Textarea, { state, ...props });
|
|
42
|
-
};
|
|
43
|
-
var FormGroupTextInput = ({ ref, ...props }) => {
|
|
44
|
-
const { state } = useFormGroupContext();
|
|
45
|
-
return /* @__PURE__ */ jsx(TextInput, { state, ...props, ref });
|
|
46
|
-
};
|
|
47
|
-
var FormGroup = ({ className, children, state, ...rest }) => {
|
|
48
|
-
return /* @__PURE__ */ jsx(FormGroupProvider, { value: { state }, children: /* @__PURE__ */ jsx("div", { ...rest, className: cn("tw:flex tw:flex-col tw:gap-1", className), children }) });
|
|
49
|
-
};
|
|
50
|
-
FormGroup.Help = FormGroupHelp;
|
|
51
|
-
FormGroup.Error = FormGroupError;
|
|
52
|
-
FormGroup.TextInput = FormGroupTextInput;
|
|
53
|
-
FormGroup.NumberInput = FormGroupNumberInput;
|
|
54
|
-
FormGroup.ColorInput = FormGroupColorInput;
|
|
55
|
-
FormGroup.Textarea = FormGroupTextarea;
|
|
56
|
-
|
|
57
|
-
export { FormGroup };
|
|
58
|
-
//# sourceMappingURL=chunk-RTW56PWZ.js.map
|
|
59
|
-
//# sourceMappingURL=chunk-RTW56PWZ.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/blocks/FormGroup/context.ts","../src/blocks/FormGroup/FormGroupColorInput.tsx","../src/blocks/FormGroup/FormGroupError.tsx","../src/blocks/FormGroup/FormGroupHelp.tsx","../src/blocks/FormGroup/FormGroupNumberInput.tsx","../src/blocks/FormGroup/FormGroupTextarea.tsx","../src/blocks/FormGroup/FormGroupTextInput.tsx","../src/blocks/FormGroup/FormGroup.tsx"],"names":["jsx"],"mappings":";;;;;;;;;AAIA,IAAM,mBAAmB,aAAA,CAAgC;AAAA,EACvD,KAAA,EAAO;AACT,CAAC,CAAA;AAEM,IAAM,iBAAA,GAAoB,gBAAA;AAE1B,IAAM,mBAAA,GAAsB,MAAM,GAAA,CAAI,gBAAgB,CAAA;ACFtD,IAAM,sBAAsB,CAAC,EAAE,GAAA,EAAK,GAAG,OAAM,KAAa;AAC/D,EAAA,MAAM,EAAE,KAAA,EAAM,GAAI,mBAAA,EAAoB;AACtC,EAAA,uBAAO,GAAA,CAAC,UAAA,EAAA,EAAW,KAAA,EAAe,GAAG,OAAO,GAAA,EAAU,CAAA;AACxD,CAAA;ACIA,IAAM,YAAY,CAAC,KAAA,KACjB,OAAO,KAAA,KAAU,QAAA,GAAW,QAAQ,KAAA,EAAO,OAAA;AAQtC,IAAM,cAAA,GAAiB,CAAC,EAAE,QAAA,EAAU,WAAW,MAAA,EAAQ,GAAG,MAAK,KAAa;AACjF,EAAA,MAAM,OAAA,GAAU,QAAmB,MAAM;AACvC,IAAA,IAAI,UAAU,OAAO,QAAA;AAErB,IAAA,MAAM,QAAA,GAAA,CAAY,MAAA,IAAU,EAAC,EAAG,GAAA,CAAI,SAAS,CAAA,CAAE,MAAA,CAAO,CAAC,OAAA,KAAY,CAAC,CAAC,OAAO,CAAA;AAC5E,IAAA,IAAI,QAAA,CAAS,MAAA,KAAW,CAAA,EAAG,OAAO,IAAA;AAClC,IAAA,IAAI,QAAA,CAAS,MAAA,KAAW,CAAA,EAAG,OAAO,SAAS,CAAC,CAAA;AAE5C,IAAA,uBACEA,GAAAA,CAAC,IAAA,EAAA,EAAG,SAAA,EAAU,0DAAA,EACX,mBAAS,GAAA,CAAI,CAAC,OAAA,EAAS,KAAA,qBACtBA,GAAAA,CAAC,IAAA,EAAA,EAAgB,QAAA,EAAA,OAAA,EAAA,EAAR,KAAgB,CAC1B,CAAA,EACH,CAAA;AAAA,EAEJ,CAAA,EAAG,CAAC,QAAA,EAAU,MAAM,CAAC,CAAA;AAErB,EAAA,IAAI,CAAC,SAAS,OAAO,IAAA;AAErB,EAAA,uBACEA,GAAAA,CAAC,KAAA,EAAA,EAAK,GAAG,IAAA,EAAM,IAAA,EAAK,OAAA,EAAQ,SAAA,EAAW,EAAA,CAAG,uCAAA,EAAyC,SAAS,CAAA,EACzF,QAAA,EAAA,OAAA,EACH,CAAA;AAEJ,CAAA;ACxCO,IAAM,gBAAgB,CAAC,EAAE,QAAA,EAAU,GAAG,MAAK,KAAa;AAC7D,EAAA,MAAM,mBAAmB,mBAAA,EAAoB;AAG7C,EAAA,uBACEA,GAAAA,CAAC,SAAA,EAAA,EAAU,KAAA,EAAO,gBAAA,CAAiB,KAAA,KAAU,SAAA,GAAY,SAAA,GAAY,SAAA,EAAY,GAAG,IAAA,EACjF,QAAA,EACH,CAAA;AAEJ,CAAA;ACTO,IAAM,uBAAuB,CAAC,EAAE,GAAA,EAAK,GAAG,OAAM,KAAa;AAChE,EAAA,MAAM,EAAE,KAAA,EAAM,GAAI,mBAAA,EAAoB;AACtC,EAAA,uBAAOA,GAAAA,CAAC,WAAA,EAAA,EAAa,GAAG,KAAA,EAAO,KAAU,KAAA,EAAc,CAAA;AACzD,CAAA;ACHO,IAAM,iBAAA,GAAoB,CAAC,KAAA,KAAiB;AACjD,EAAA,MAAM,EAAE,KAAA,EAAM,GAAI,mBAAA,EAAoB;AACtC,EAAA,uBAAOA,GAAAA,CAAC,QAAA,EAAA,EAAS,KAAA,EAAe,GAAG,KAAA,EAAO,CAAA;AAC5C,CAAA;ACHO,IAAM,qBAAqB,CAAC,EAAE,GAAA,EAAK,GAAG,OAAM,KAAa;AAC9D,EAAA,MAAM,EAAE,KAAA,EAAM,GAAI,mBAAA,EAAoB;AACtC,EAAA,uBAAOA,GAAAA,CAAC,SAAA,EAAA,EAAU,KAAA,EAAe,GAAG,OAAO,GAAA,EAAU,CAAA;AACvD,CAAA;ACsBO,IAAM,SAAA,GAAY,CAAC,EAAE,SAAA,EAAW,UAAU,KAAA,EAAO,GAAG,MAAK,KAAsB;AACpF,EAAA,uBACEA,GAAAA,CAAC,iBAAA,EAAA,EAAkB,OAAO,EAAE,KAAA,IAC1B,QAAA,kBAAAA,GAAAA,CAAC,KAAA,EAAA,EAAK,GAAG,MAAM,SAAA,EAAW,EAAA,CAAG,gCAAgC,SAAS,CAAA,EACnE,UACH,CAAA,EACF,CAAA;AAEJ;AAEA,SAAA,CAAU,IAAA,GAAO,aAAA;AACjB,SAAA,CAAU,KAAA,GAAQ,cAAA;AAClB,SAAA,CAAU,SAAA,GAAY,kBAAA;AACtB,SAAA,CAAU,WAAA,GAAc,oBAAA;AACxB,SAAA,CAAU,UAAA,GAAa,mBAAA;AACvB,SAAA,CAAU,QAAA,GAAW,iBAAA","file":"chunk-RTW56PWZ.js","sourcesContent":["import { createContext, use } from 'react';\n\nimport type { FormGroupContext } from './types';\n\nconst FormGroupContext = createContext<FormGroupContext>({\n state: 'default',\n});\n\nexport const FormGroupProvider = FormGroupContext;\n\nexport const useFormGroupContext = () => use(FormGroupContext);\n","import type { ComponentProps } from 'react';\n\nimport { ColorInput } from '../ColorInput';\n\nimport { useFormGroupContext } from './context';\n\ntype Props = Omit<ComponentProps<typeof ColorInput>, 'state'>;\n\nexport const FormGroupColorInput = ({ ref, ...props }: Props) => {\n const { state } = useFormGroupContext();\n return <ColorInput state={state} {...props} ref={ref} />;\n};\n","import { useMemo } from 'react';\nimport type { ComponentPropsWithRef, ReactNode } from 'react';\n\nimport { cn } from '../../utils';\n\ntype Props = ComponentPropsWithRef<'div'> & {\n /**\n * Field validation errors. TanStack Form errors are strings (function validators) or\n * `{ message }` objects (Standard Schema / zod). A single message renders inline; several\n * render as a list. Ignored when `children` is provided.\n */\n errors?: readonly (string | { message?: string } | undefined)[];\n};\n\n// Normalize a TanStack error entry (string or `{ message }`) to a display string.\nconst toMessage = (entry: string | { message?: string } | undefined): string | undefined =>\n typeof entry === 'string' ? entry : entry?.message;\n\n/**\n * Field error message. Unlike `FormGroup.Help` (advisory description), this is a validation\n * error, so it carries `role=\"alert\"` — announced when it appears, even if focus isn't on the\n * field (e.g. surfaced on submit). Renders a `<div>` (not `<p>`) so multiple errors can render\n * as a `<ul>`.\n */\nexport const FormGroupError = ({ children, className, errors, ...rest }: Props) => {\n const content = useMemo<ReactNode>(() => {\n if (children) return children;\n\n const messages = (errors ?? []).map(toMessage).filter((message) => !!message);\n if (messages.length === 0) return null;\n if (messages.length === 1) return messages[0];\n\n return (\n <ul className=\"tw:m-0 tw:flex tw:list-disc tw:flex-col tw:gap-0 tw:pl-4\">\n {messages.map((message, index) => (\n <li key={index}>{message}</li>\n ))}\n </ul>\n );\n }, [children, errors]);\n\n if (!content) return null;\n\n return (\n <div {...rest} role=\"alert\" className={cn('tw:m-0 tw:text-xs tw:text-destructive', className)}>\n {content}\n </div>\n );\n};\n","import type { ComponentProps } from 'react';\n\nimport { HelpBlock } from '../../components/HelpBlock';\n\nimport { useFormGroupContext } from './context';\n\ntype Props = Omit<ComponentProps<typeof HelpBlock>, 'state'>;\n\nexport const FormGroupHelp = ({ children, ...rest }: Props) => {\n const formGroupContext = useFormGroupContext();\n\n // Help stays advisory; a group's error state surfaces via FormGroup.Error, not here.\n return (\n <HelpBlock state={formGroupContext.state === 'warning' ? 'warning' : 'default'} {...rest}>\n {children}\n </HelpBlock>\n );\n};\n","import type { ComponentProps } from 'react';\n\nimport { NumberInput } from '../NumberInput';\n\nimport { useFormGroupContext } from './context';\n\ntype Props = Omit<ComponentProps<typeof NumberInput>, 'state'>;\n\nexport const FormGroupNumberInput = ({ ref, ...props }: Props) => {\n const { state } = useFormGroupContext();\n return <NumberInput {...props} ref={ref} state={state} />;\n};\n","import type { ComponentProps } from 'react';\n\nimport { Textarea } from '../Textarea';\n\nimport { useFormGroupContext } from './context';\n\ntype Props = Omit<ComponentProps<typeof Textarea>, 'state'>;\n\nexport const FormGroupTextarea = (props: Props) => {\n const { state } = useFormGroupContext();\n return <Textarea state={state} {...props} />;\n};\n","import type { ComponentProps } from 'react';\n\nimport { TextInput } from '../TextInput';\n\nimport { useFormGroupContext } from './context';\n\ntype Props = Omit<ComponentProps<typeof TextInput>, 'state'>;\n\nexport const FormGroupTextInput = ({ ref, ...props }: Props) => {\n const { state } = useFormGroupContext();\n return <TextInput state={state} {...props} ref={ref} />;\n};\n","import type { ComponentPropsWithRef } from 'react';\n\nimport { cn } from '../../utils';\n\nimport { FormGroupProvider } from './context';\nimport { FormGroupColorInput } from './FormGroupColorInput';\nimport { FormGroupError } from './FormGroupError';\nimport { FormGroupHelp } from './FormGroupHelp';\nimport { FormGroupNumberInput } from './FormGroupNumberInput';\nimport { FormGroupTextarea } from './FormGroupTextarea';\nimport { FormGroupTextInput } from './FormGroupTextInput';\nimport type { FormGroupContext } from './types';\n\n/**\n * Props for `FormGroup`. `state` from `FormGroupContext` (\"default\" | \"error\" | \"warning\") propagates via\n * context to nested inputs. `FormGroup.Help` stays advisory (it reacts only to \"warning\"); validation errors\n * render through `FormGroup.Error`, not the input `state`.\n */\ntype FormGroupProps = ComponentPropsWithRef<'div'> & FormGroupContext;\n\n/**\n * Label + input + help-text grouping with shared validation state. Provides the chrome for a single field.\n *\n * **When to use:** rendering a label + bare input + help/error text outside `useAppForm` (e.g. one-off\n * filter fields, settings panes). `state=\"error\"` flips `FormGroup.TextInput` chrome without per-component\n * wiring; the error message itself renders via `FormGroup.Error` (`role=\"alert\"`), while `FormGroup.Help`\n * stays advisory.\n * **When NOT to use:** for a full form with validation and submit state, use `useAppForm` from `blocks/Form` —\n * it composes `FormGroup` internally via the typed field connectors.\n * **Composition:** nest a `Label`, then one of `FormGroup.TextInput` / `FormGroup.NumberInput` /\n * `FormGroup.ColorInput` / `FormGroup.Textarea`, optionally followed by `FormGroup.Help`\n * (advisory description) or `FormGroup.Error` (validation error, announced via `role=\"alert\"`).\n */\nexport const FormGroup = ({ className, children, state, ...rest }: FormGroupProps) => {\n return (\n <FormGroupProvider value={{ state }}>\n <div {...rest} className={cn('tw:flex tw:flex-col tw:gap-1', className)}>\n {children}\n </div>\n </FormGroupProvider>\n );\n};\n\nFormGroup.Help = FormGroupHelp;\nFormGroup.Error = FormGroupError;\nFormGroup.TextInput = FormGroupTextInput;\nFormGroup.NumberInput = FormGroupNumberInput;\nFormGroup.ColorInput = FormGroupColorInput;\nFormGroup.Textarea = FormGroupTextarea;\n"]}
|
package/dist/chunk-RUTPQNLR.js
DELETED
|
@@ -1,266 +0,0 @@
|
|
|
1
|
-
import { Label } from './chunk-S6TAF63G.js';
|
|
2
|
-
import { Check, Copy, Eye, EyeOff } from './chunk-RQVK4IYC.js';
|
|
3
|
-
import { Tooltip, copyToClipboard } from './chunk-SWQFYNYG.js';
|
|
4
|
-
import { cn } from './chunk-LXLIQ2D6.js';
|
|
5
|
-
import { createContext, useEffect, useState, useRef, useId, useCallback, useMemo, use } from 'react';
|
|
6
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
7
|
-
|
|
8
|
-
var CopyContext = createContext(null);
|
|
9
|
-
var useCopyContext = () => {
|
|
10
|
-
const ctx = use(CopyContext);
|
|
11
|
-
if (!ctx) throw new Error("CopyField.* components must be used within a CopyField.Root");
|
|
12
|
-
return ctx;
|
|
13
|
-
};
|
|
14
|
-
var LINE_HEIGHT_REM = 1.25;
|
|
15
|
-
var VERTICAL_PADDING_REM = 1.25;
|
|
16
|
-
var COPY_HINT_DELAY_MS = 2e3;
|
|
17
|
-
var CopyBox = ({ className, children }) => {
|
|
18
|
-
const { copied, handleCopy, mono, minLines, maxLines, boxId, labelId, hasLabel, hoverHint } = useCopyContext();
|
|
19
|
-
const multiline = maxLines > 1;
|
|
20
|
-
const multilineStyle = multiline ? {
|
|
21
|
-
minHeight: `${minLines * LINE_HEIGHT_REM + VERTICAL_PADDING_REM}rem`,
|
|
22
|
-
maxHeight: `${maxLines * LINE_HEIGHT_REM + VERTICAL_PADDING_REM}rem`
|
|
23
|
-
} : void 0;
|
|
24
|
-
const handleKeyDown = (event) => {
|
|
25
|
-
if (event.target !== event.currentTarget) return;
|
|
26
|
-
if (event.key !== "Enter" && event.key !== " ") return;
|
|
27
|
-
event.preventDefault();
|
|
28
|
-
handleCopy();
|
|
29
|
-
};
|
|
30
|
-
return /* @__PURE__ */ jsx(
|
|
31
|
-
Tooltip,
|
|
32
|
-
{
|
|
33
|
-
triggerAsChild: true,
|
|
34
|
-
placement: "top",
|
|
35
|
-
tooltip: copied ? "Copied" : hoverHint ? "Copy" : null,
|
|
36
|
-
forceShow: copied,
|
|
37
|
-
delayDuration: COPY_HINT_DELAY_MS,
|
|
38
|
-
children: /* @__PURE__ */ jsx(
|
|
39
|
-
"div",
|
|
40
|
-
{
|
|
41
|
-
role: "button",
|
|
42
|
-
tabIndex: 0,
|
|
43
|
-
id: boxId,
|
|
44
|
-
"aria-labelledby": hasLabel ? labelId : void 0,
|
|
45
|
-
onClick: handleCopy,
|
|
46
|
-
onKeyDown: handleKeyDown,
|
|
47
|
-
style: multilineStyle,
|
|
48
|
-
className: cn(
|
|
49
|
-
"tw:group tw:relative tw:flex tw:w-fit tw:max-w-full tw:cursor-pointer tw:gap-2 tw:rounded-2xl tw:[corner-shape:superellipse(2)] tw:border tw:border-border tw:bg-card tw:px-3 tw:py-2.5 tw:text-left tw:shadow-sm tw:transition-colors tw:hover:bg-muted",
|
|
50
|
-
multiline ? "tw:items-start tw:overflow-auto" : "tw:items-center tw:overflow-hidden",
|
|
51
|
-
mono && "tw:font-mono tw:text-[13px]",
|
|
52
|
-
className
|
|
53
|
-
),
|
|
54
|
-
children
|
|
55
|
-
}
|
|
56
|
-
)
|
|
57
|
-
}
|
|
58
|
-
);
|
|
59
|
-
};
|
|
60
|
-
var CopyButton = ({ className }) => {
|
|
61
|
-
const { copied, maxLines } = useCopyContext();
|
|
62
|
-
return /* @__PURE__ */ jsx(
|
|
63
|
-
"span",
|
|
64
|
-
{
|
|
65
|
-
"aria-hidden": true,
|
|
66
|
-
className: cn(
|
|
67
|
-
"tw:pointer-events-none tw:flex tw:shrink-0 tw:items-center tw:text-muted-foreground tw:group-hover:text-foreground",
|
|
68
|
-
maxLines > 1 && "tw:self-start tw:pt-0.5",
|
|
69
|
-
className
|
|
70
|
-
),
|
|
71
|
-
children: copied ? /* @__PURE__ */ jsx(Check, { className: "tw:size-4" }) : /* @__PURE__ */ jsx(Copy, { className: "tw:size-4" })
|
|
72
|
-
}
|
|
73
|
-
);
|
|
74
|
-
};
|
|
75
|
-
var CopyChildren = ({ children, className }) => {
|
|
76
|
-
const { maxLines } = useCopyContext();
|
|
77
|
-
const multiline = maxLines > 1;
|
|
78
|
-
return /* @__PURE__ */ jsx(
|
|
79
|
-
"span",
|
|
80
|
-
{
|
|
81
|
-
className: cn(
|
|
82
|
-
"tw:min-w-0 tw:flex-1 tw:select-text tw:text-card-foreground",
|
|
83
|
-
multiline ? "tw:whitespace-pre-wrap tw:break-words" : "tw:truncate",
|
|
84
|
-
className
|
|
85
|
-
),
|
|
86
|
-
children
|
|
87
|
-
}
|
|
88
|
-
);
|
|
89
|
-
};
|
|
90
|
-
var CopyFooter = ({ children, className }) => {
|
|
91
|
-
if (!children) return null;
|
|
92
|
-
return /* @__PURE__ */ jsx("p", { className: cn("tw:m-0 tw:text-xs tw:text-muted-foreground", className), children });
|
|
93
|
-
};
|
|
94
|
-
var MASK = "*".repeat(12);
|
|
95
|
-
var CopyHidden = ({ children, revealable = true, className }) => {
|
|
96
|
-
const { hidden, registerRevealable } = useCopyContext();
|
|
97
|
-
useEffect(() => {
|
|
98
|
-
if (!revealable) return void 0;
|
|
99
|
-
return registerRevealable();
|
|
100
|
-
}, [revealable, registerRevealable]);
|
|
101
|
-
const masked = revealable ? hidden : true;
|
|
102
|
-
return /* @__PURE__ */ jsx("span", { className: cn("tw:select-none", className), children: masked ? MASK : children });
|
|
103
|
-
};
|
|
104
|
-
var CopyLabel = ({ children, leading, trailing, className }) => {
|
|
105
|
-
const { labelId, registerLabel } = useCopyContext();
|
|
106
|
-
useEffect(() => registerLabel(), [registerLabel]);
|
|
107
|
-
return /* @__PURE__ */ jsxs("div", { className: cn("tw:flex tw:items-center tw:gap-1", className), children: [
|
|
108
|
-
/* @__PURE__ */ jsx(Label, { id: labelId, children }),
|
|
109
|
-
leading,
|
|
110
|
-
trailing != null && /* @__PURE__ */ jsx("span", { className: "tw:ml-auto tw:flex tw:items-center", children: trailing })
|
|
111
|
-
] });
|
|
112
|
-
};
|
|
113
|
-
var CopyPrefix = ({ children, className }) => /* @__PURE__ */ jsx(
|
|
114
|
-
"span",
|
|
115
|
-
{
|
|
116
|
-
"aria-hidden": true,
|
|
117
|
-
className: cn(
|
|
118
|
-
"tw:shrink-0 tw:select-none tw:self-stretch tw:border-r tw:border-border tw:pr-2 tw:text-muted-foreground",
|
|
119
|
-
className
|
|
120
|
-
),
|
|
121
|
-
children
|
|
122
|
-
}
|
|
123
|
-
);
|
|
124
|
-
var CopyReveal = ({ className }) => {
|
|
125
|
-
const { hidden, toggleHidden, hasRevealable, maxLines } = useCopyContext();
|
|
126
|
-
if (!hasRevealable) return null;
|
|
127
|
-
const handleClick = (event) => {
|
|
128
|
-
event.stopPropagation();
|
|
129
|
-
toggleHidden();
|
|
130
|
-
};
|
|
131
|
-
return /* @__PURE__ */ jsx(
|
|
132
|
-
"button",
|
|
133
|
-
{
|
|
134
|
-
type: "button",
|
|
135
|
-
onClick: handleClick,
|
|
136
|
-
"aria-label": hidden ? "Show value" : "Hide value",
|
|
137
|
-
className: cn(
|
|
138
|
-
"tw:flex tw:shrink-0 tw:items-center tw:text-muted-foreground tw:hover:text-foreground",
|
|
139
|
-
maxLines > 1 && "tw:self-start tw:pt-0.5",
|
|
140
|
-
className
|
|
141
|
-
),
|
|
142
|
-
children: hidden ? /* @__PURE__ */ jsx(Eye, { className: "tw:size-4" }) : /* @__PURE__ */ jsx(EyeOff, { className: "tw:size-4" })
|
|
143
|
-
}
|
|
144
|
-
);
|
|
145
|
-
};
|
|
146
|
-
var CopyRoot = ({
|
|
147
|
-
value,
|
|
148
|
-
mono = false,
|
|
149
|
-
onCopy,
|
|
150
|
-
hiddenByDefault = false,
|
|
151
|
-
minLines = 1,
|
|
152
|
-
maxLines,
|
|
153
|
-
hoverHint = true,
|
|
154
|
-
className,
|
|
155
|
-
children
|
|
156
|
-
}) => {
|
|
157
|
-
const [copied, setCopied] = useState(false);
|
|
158
|
-
const [hidden, setHidden] = useState(hiddenByDefault);
|
|
159
|
-
const [revealableCount, setRevealableCount] = useState(0);
|
|
160
|
-
const [labelCount, setLabelCount] = useState(0);
|
|
161
|
-
const resetTimerRef = useRef(void 0);
|
|
162
|
-
const generatedId = useId();
|
|
163
|
-
const labelId = `${generatedId}-label`;
|
|
164
|
-
const boxId = `${generatedId}-box`;
|
|
165
|
-
useEffect(() => () => clearTimeout(resetTimerRef.current), []);
|
|
166
|
-
const handleCopy = useCallback(() => {
|
|
167
|
-
const selection = window.getSelection();
|
|
168
|
-
const boxEl = document.getElementById(boxId);
|
|
169
|
-
if (selection && !selection.isCollapsed && selection.anchorNode && boxEl?.contains(selection.anchorNode)) {
|
|
170
|
-
return;
|
|
171
|
-
}
|
|
172
|
-
copyToClipboard(value).then(() => {
|
|
173
|
-
onCopy?.();
|
|
174
|
-
setCopied(true);
|
|
175
|
-
clearTimeout(resetTimerRef.current);
|
|
176
|
-
resetTimerRef.current = setTimeout(() => setCopied(false), 1500);
|
|
177
|
-
}).catch((error) => {
|
|
178
|
-
console.error("Copy to clipboard failed", error);
|
|
179
|
-
});
|
|
180
|
-
}, [value, onCopy, boxId]);
|
|
181
|
-
const toggleHidden = useCallback(() => setHidden((prev) => !prev), []);
|
|
182
|
-
const registerRevealable = useCallback(() => {
|
|
183
|
-
setRevealableCount((count) => count + 1);
|
|
184
|
-
return () => setRevealableCount((count) => count - 1);
|
|
185
|
-
}, []);
|
|
186
|
-
const registerLabel = useCallback(() => {
|
|
187
|
-
setLabelCount((count) => count + 1);
|
|
188
|
-
return () => setLabelCount((count) => count - 1);
|
|
189
|
-
}, []);
|
|
190
|
-
const contextValue = useMemo(
|
|
191
|
-
() => ({
|
|
192
|
-
copied,
|
|
193
|
-
handleCopy,
|
|
194
|
-
value,
|
|
195
|
-
mono,
|
|
196
|
-
hidden,
|
|
197
|
-
toggleHidden,
|
|
198
|
-
registerRevealable,
|
|
199
|
-
hasRevealable: revealableCount > 0,
|
|
200
|
-
registerLabel,
|
|
201
|
-
hasLabel: labelCount > 0,
|
|
202
|
-
minLines,
|
|
203
|
-
maxLines: maxLines ?? minLines,
|
|
204
|
-
hoverHint,
|
|
205
|
-
labelId,
|
|
206
|
-
boxId
|
|
207
|
-
}),
|
|
208
|
-
[
|
|
209
|
-
copied,
|
|
210
|
-
handleCopy,
|
|
211
|
-
value,
|
|
212
|
-
mono,
|
|
213
|
-
hidden,
|
|
214
|
-
toggleHidden,
|
|
215
|
-
registerRevealable,
|
|
216
|
-
revealableCount,
|
|
217
|
-
registerLabel,
|
|
218
|
-
labelCount,
|
|
219
|
-
minLines,
|
|
220
|
-
maxLines,
|
|
221
|
-
hoverHint,
|
|
222
|
-
labelId,
|
|
223
|
-
boxId
|
|
224
|
-
]
|
|
225
|
-
);
|
|
226
|
-
return /* @__PURE__ */ jsx(CopyContext, { value: contextValue, children: /* @__PURE__ */ jsx("div", { className: cn("tw:flex tw:w-fit tw:max-w-full tw:flex-col tw:gap-1", className), children }) });
|
|
227
|
-
};
|
|
228
|
-
var CopySuffix = ({ children, className }) => /* @__PURE__ */ jsx(
|
|
229
|
-
"span",
|
|
230
|
-
{
|
|
231
|
-
"aria-hidden": true,
|
|
232
|
-
className: cn(
|
|
233
|
-
"tw:shrink-0 tw:select-none tw:self-stretch tw:border-l tw:border-border tw:pl-2 tw:text-muted-foreground",
|
|
234
|
-
className
|
|
235
|
-
),
|
|
236
|
-
children
|
|
237
|
-
}
|
|
238
|
-
);
|
|
239
|
-
|
|
240
|
-
// src/blocks/CopyField/CopyField.tsx
|
|
241
|
-
var CopyField = {
|
|
242
|
-
/** Container. Owns the copied `value`, mask state, and copy context. */
|
|
243
|
-
Root: CopyRoot,
|
|
244
|
-
/** Visible label above the box, with optional `leading`/`trailing` slots. */
|
|
245
|
-
Label: CopyLabel,
|
|
246
|
-
/** The clickable copy target row. */
|
|
247
|
-
Box: CopyBox,
|
|
248
|
-
/** Muted, non-selectable prefix addon (not copied). */
|
|
249
|
-
Prefix: CopyPrefix,
|
|
250
|
-
/** Displayed value (truncates single-line, wraps multi-line). */
|
|
251
|
-
Children: CopyChildren,
|
|
252
|
-
/** Muted, non-selectable suffix addon (not copied). */
|
|
253
|
-
Suffix: CopySuffix,
|
|
254
|
-
/** Masks its children with dots; copy still copies the real value. */
|
|
255
|
-
Hidden: CopyHidden,
|
|
256
|
-
/** Eye toggle that reveals/masks revealable `CopyField.Hidden` content. */
|
|
257
|
-
Reveal: CopyReveal,
|
|
258
|
-
/** Copy affordance icon — shows Copy/Check with feedback. */
|
|
259
|
-
Button: CopyButton,
|
|
260
|
-
/** Small helper text below the box. */
|
|
261
|
-
Footer: CopyFooter
|
|
262
|
-
};
|
|
263
|
-
|
|
264
|
-
export { CopyField };
|
|
265
|
-
//# sourceMappingURL=chunk-RUTPQNLR.js.map
|
|
266
|
-
//# sourceMappingURL=chunk-RUTPQNLR.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/blocks/CopyField/CopyContext.tsx","../src/blocks/CopyField/CopyBox.tsx","../src/blocks/CopyField/CopyButton.tsx","../src/blocks/CopyField/CopyChildren.tsx","../src/blocks/CopyField/CopyFooter.tsx","../src/blocks/CopyField/CopyHidden.tsx","../src/blocks/CopyField/CopyLabel.tsx","../src/blocks/CopyField/CopyPrefix.tsx","../src/blocks/CopyField/CopyReveal.tsx","../src/blocks/CopyField/CopyRoot.tsx","../src/blocks/CopyField/CopySuffix.tsx","../src/blocks/CopyField/CopyField.tsx"],"names":["jsx","useEffect"],"mappings":"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","file":"chunk-RUTPQNLR.js","sourcesContent":["import { createContext, use } from 'react';\n\ntype CopyContextValue = {\n /** Whether a copy just happened (drives the Copy → Check feedback for ~1.5s). */\n copied: boolean;\n /** Copies the real `value` to the clipboard, guarded against drag-select. */\n handleCopy: () => void;\n /** The real value copied to the clipboard, regardless of masking. */\n value: string;\n /** Render displayed content in monospace/code style. */\n mono: boolean;\n /** Whether to show the \"Copy\" hint tooltip on hover (else only \"Copied\" on copy). */\n hoverHint: boolean;\n /** Whether revealable `CopyField.Hidden` content is currently masked. */\n hidden: boolean;\n /** Toggles the masked ↔ revealed state. */\n toggleHidden: () => void;\n /**\n * Registers a revealable `CopyField.Hidden` so `CopyField.Reveal` knows to render.\n * Returns a cleanup that unregisters on unmount.\n */\n registerRevealable: () => () => void;\n /** True once at least one revealable `CopyField.Hidden` is mounted. */\n hasRevealable: boolean;\n /**\n * Registers the visible `CopyField.Label` so `CopyField.Box` only points `aria-labelledby`\n * at it when a label actually exists. Returns a cleanup that unregisters on unmount.\n */\n registerLabel: () => () => void;\n /** True once a `CopyField.Label` is mounted. */\n hasLabel: boolean;\n /** Minimum number of visible text lines for a multi-line box. */\n minLines: number;\n /** Maximum number of visible text lines before the box scrolls. */\n maxLines: number;\n /** Stable id of the visible label element (for `aria-labelledby`). */\n labelId: string;\n /** Stable id of the clickable box element. */\n boxId: string;\n};\n\nexport const CopyContext = createContext<CopyContextValue | null>(null);\n\nexport const useCopyContext = () => {\n const ctx = use(CopyContext);\n if (!ctx) throw new Error('CopyField.* components must be used within a CopyField.Root');\n return ctx;\n};\n","import type { CSSProperties, KeyboardEvent, ReactNode } from 'react';\n\nimport { Tooltip } from '../../components/Tooltip';\nimport { cn } from '../../utils';\n\nimport { useCopyContext } from './CopyContext';\n\ntype CopyBoxProps = {\n /** Additional CSS classes on the box. */\n className?: string;\n children: ReactNode;\n};\n\nconst LINE_HEIGHT_REM = 1.25;\nconst VERTICAL_PADDING_REM = 1.25;\n\n// Long delay — the hover \"Copy\" hint doesn't really help UX, it just pulls focus.\nconst COPY_HINT_DELAY_MS = 2000;\n\n/**\n * The clickable copy target. Click anywhere to copy; text stays drag-selectable.\n *\n * Rendered as a `role=\"button\"` div (not a native `<button>`) so it can host\n * genuinely interactive children like `CopyField.Reveal` — nesting a `<button>`\n * inside a `<button>` is invalid HTML.\n */\nexport const CopyBox = ({ className, children }: CopyBoxProps) => {\n const { copied, handleCopy, mono, minLines, maxLines, boxId, labelId, hasLabel, hoverHint } =\n useCopyContext();\n\n const multiline = maxLines > 1;\n const multilineStyle: CSSProperties | undefined = multiline\n ? {\n minHeight: `${minLines * LINE_HEIGHT_REM + VERTICAL_PADDING_REM}rem`,\n maxHeight: `${maxLines * LINE_HEIGHT_REM + VERTICAL_PADDING_REM}rem`,\n }\n : undefined;\n\n const handleKeyDown = (event: KeyboardEvent<HTMLDivElement>) => {\n if (event.target !== event.currentTarget) return;\n if (event.key !== 'Enter' && event.key !== ' ') return;\n event.preventDefault();\n handleCopy();\n };\n\n return (\n <Tooltip\n triggerAsChild\n placement=\"top\"\n tooltip={copied ? 'Copied' : hoverHint ? 'Copy' : null}\n forceShow={copied}\n delayDuration={COPY_HINT_DELAY_MS}\n >\n <div\n role=\"button\"\n tabIndex={0}\n id={boxId}\n aria-labelledby={hasLabel ? labelId : undefined}\n onClick={handleCopy}\n onKeyDown={handleKeyDown}\n style={multilineStyle}\n className={cn(\n 'tw:group tw:relative tw:flex tw:w-fit tw:max-w-full tw:cursor-pointer tw:gap-2 tw:rounded-2xl tw:[corner-shape:superellipse(2)] tw:border tw:border-border tw:bg-card tw:px-3 tw:py-2.5 tw:text-left tw:shadow-sm tw:transition-colors tw:hover:bg-muted',\n multiline ? 'tw:items-start tw:overflow-auto' : 'tw:items-center tw:overflow-hidden',\n mono && 'tw:font-mono tw:text-[13px]',\n className,\n )}\n >\n {children}\n </div>\n </Tooltip>\n );\n};\n","import { Check, Copy as CopyIcon } from '../../icons';\nimport { cn } from '../../utils';\n\nimport { useCopyContext } from './CopyContext';\n\ntype CopyButtonProps = {\n className?: string;\n};\n\n/** Copy affordance icon — shows Copy/Check with feedback. */\nexport const CopyButton = ({ className }: CopyButtonProps) => {\n const { copied, maxLines } = useCopyContext();\n\n return (\n <span\n aria-hidden\n className={cn(\n 'tw:pointer-events-none tw:flex tw:shrink-0 tw:items-center tw:text-muted-foreground tw:group-hover:text-foreground',\n maxLines > 1 && 'tw:self-start tw:pt-0.5',\n className,\n )}\n >\n {copied ? <Check className=\"tw:size-4\" /> : <CopyIcon className=\"tw:size-4\" />}\n </span>\n );\n};\n","import type { ReactNode } from 'react';\n\nimport { cn } from '../../utils';\n\nimport { useCopyContext } from './CopyContext';\n\ntype CopyChildrenProps = {\n children: ReactNode;\n className?: string;\n};\n\n/** The displayed value. Truncates on a single line, wraps when multi-line. */\nexport const CopyChildren = ({ children, className }: CopyChildrenProps) => {\n const { maxLines } = useCopyContext();\n const multiline = maxLines > 1;\n\n return (\n <span\n className={cn(\n 'tw:min-w-0 tw:flex-1 tw:select-text tw:text-card-foreground',\n multiline ? 'tw:whitespace-pre-wrap tw:break-words' : 'tw:truncate',\n className,\n )}\n >\n {children}\n </span>\n );\n};\n","import type { ReactNode } from 'react';\n\nimport { cn } from '../../utils';\n\ntype CopyFooterProps = {\n children: ReactNode;\n className?: string;\n};\n\n/** Small helper text below the box (mirrors `FormGroup.Help` / `HelpBlock` styling). */\nexport const CopyFooter = ({ children, className }: CopyFooterProps) => {\n if (!children) return null;\n\n return <p className={cn('tw:m-0 tw:text-xs tw:text-muted-foreground', className)}>{children}</p>;\n};\n","import { useEffect } from 'react';\nimport type { ReactNode } from 'react';\n\nimport { cn } from '../../utils';\n\nimport { useCopyContext } from './CopyContext';\n\ntype CopyHiddenProps = {\n children: ReactNode;\n /**\n * When true (default), `CopyField.Reveal` can unmask this content. When false the\n * content is always masked (e.g. an implicit token inside a longer string).\n */\n revealable?: boolean;\n className?: string;\n};\n\nconst MASK = '*'.repeat(12);\n\n/**\n * Masks its children with asterisks. The real value still lives on `CopyField.Root`,\n * so copy always copies the real value regardless of mask state.\n */\nexport const CopyHidden = ({ children, revealable = true, className }: CopyHiddenProps) => {\n const { hidden, registerRevealable } = useCopyContext();\n\n useEffect(() => {\n if (!revealable) return undefined;\n return registerRevealable();\n }, [revealable, registerRevealable]);\n\n const masked = revealable ? hidden : true;\n\n return <span className={cn('tw:select-none', className)}>{masked ? MASK : children}</span>;\n};\n","import { useEffect } from 'react';\nimport type { ReactNode } from 'react';\n\nimport { Label } from '../../components/Label';\nimport { cn } from '../../utils';\n\nimport { useCopyContext } from './CopyContext';\n\ntype CopyLabelProps = {\n children: ReactNode;\n /** Content rendered right after the label text (e.g. an Info tooltip button). */\n leading?: ReactNode;\n /** Content pushed to the trailing edge of the row (e.g. a Switch). */\n trailing?: ReactNode;\n className?: string;\n};\n\n/**\n * Visible label above the box. The label carries an id and the box is wired via\n * `aria-labelledby` (not `htmlFor`, which would turn label clicks into a copy).\n *\n * Row layout: label text, then `leading` (gap), then `trailing` pushed to the far\n * edge with the space between them growing.\n */\nexport const CopyLabel = ({ children, leading, trailing, className }: CopyLabelProps) => {\n const { labelId, registerLabel } = useCopyContext();\n\n useEffect(() => registerLabel(), [registerLabel]);\n\n return (\n <div className={cn('tw:flex tw:items-center tw:gap-1', className)}>\n <Label id={labelId}>{children}</Label>\n {leading}\n {trailing != null && <span className=\"tw:ml-auto tw:flex tw:items-center\">{trailing}</span>}\n </div>\n );\n};\n","import type { ReactNode } from 'react';\n\nimport { cn } from '../../utils';\n\ntype CopyAddonProps = {\n children: ReactNode;\n className?: string;\n};\n\n/** Muted, non-selectable prefix addon with a trailing divider (not part of the copied value). */\nexport const CopyPrefix = ({ children, className }: CopyAddonProps) => (\n <span\n aria-hidden\n className={cn(\n 'tw:shrink-0 tw:select-none tw:self-stretch tw:border-r tw:border-border tw:pr-2 tw:text-muted-foreground',\n className,\n )}\n >\n {children}\n </span>\n);\n","import type { MouseEvent } from 'react';\n\nimport { Eye, EyeOff } from '../../icons';\nimport { cn } from '../../utils';\n\nimport { useCopyContext } from './CopyContext';\n\ntype CopyRevealProps = {\n className?: string;\n};\n\n/** Eye toggle that reveals/masks `CopyField.Hidden` content. Renders nothing without revealable content. */\nexport const CopyReveal = ({ className }: CopyRevealProps) => {\n const { hidden, toggleHidden, hasRevealable, maxLines } = useCopyContext();\n\n if (!hasRevealable) return null;\n\n const handleClick = (event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n toggleHidden();\n };\n\n return (\n <button\n type=\"button\"\n onClick={handleClick}\n aria-label={hidden ? 'Show value' : 'Hide value'}\n className={cn(\n 'tw:flex tw:shrink-0 tw:items-center tw:text-muted-foreground tw:hover:text-foreground',\n maxLines > 1 && 'tw:self-start tw:pt-0.5',\n className,\n )}\n >\n {hidden ? <Eye className=\"tw:size-4\" /> : <EyeOff className=\"tw:size-4\" />}\n </button>\n );\n};\n","import { useCallback, useEffect, useId, useMemo, useRef, useState } from 'react';\nimport type { ReactNode } from 'react';\n\nimport { cn, copyToClipboard } from '../../utils';\n\nimport { CopyContext } from './CopyContext';\n\ntype CopyRootProps = {\n /** The value copied to the clipboard on click. */\n value: string;\n /** Render displayed content in monospace/code style. */\n mono?: boolean;\n /** Callback fired after a successful copy. */\n onCopy?: () => void;\n /** Start with revealable `CopyField.Hidden` content masked. */\n hiddenByDefault?: boolean;\n /** Minimum number of visible text lines for a multi-line box. */\n minLines?: number;\n /** Maximum number of visible text lines before the box scrolls. */\n maxLines?: number;\n /** Show the \"Copy\" hover hint (set `false` to only show \"Copied\" on copy). Defaults to `true`. */\n hoverHint?: boolean;\n /** Additional CSS classes on the outer container. */\n className?: string;\n children: ReactNode;\n};\n\n/**\n * Container for the Copy block. Owns the copied `value`, copy/mask state, and the\n * shared context consumed by `CopyField.Box`, `CopyField.Reveal`, `CopyField.Button`, etc.\n */\nexport const CopyRoot = ({\n value,\n mono = false,\n onCopy,\n hiddenByDefault = false,\n minLines = 1,\n maxLines,\n hoverHint = true,\n className,\n children,\n}: CopyRootProps) => {\n const [copied, setCopied] = useState(false);\n const [hidden, setHidden] = useState(hiddenByDefault);\n const [revealableCount, setRevealableCount] = useState(0);\n const [labelCount, setLabelCount] = useState(0);\n const resetTimerRef = useRef<ReturnType<typeof setTimeout> | undefined>(undefined);\n\n const generatedId = useId();\n const labelId = `${generatedId}-label`;\n const boxId = `${generatedId}-box`;\n\n useEffect(() => () => clearTimeout(resetTimerRef.current), []);\n\n const handleCopy = useCallback(() => {\n const selection = window.getSelection();\n const boxEl = document.getElementById(boxId);\n if (\n selection &&\n !selection.isCollapsed &&\n selection.anchorNode &&\n boxEl?.contains(selection.anchorNode)\n ) {\n return;\n }\n\n copyToClipboard(value)\n .then(() => {\n onCopy?.();\n setCopied(true);\n clearTimeout(resetTimerRef.current);\n resetTimerRef.current = setTimeout(() => setCopied(false), 1500);\n })\n .catch((error: unknown) => {\n // eslint-disable-next-line no-console\n console.error('Copy to clipboard failed', error);\n });\n }, [value, onCopy, boxId]);\n\n const toggleHidden = useCallback(() => setHidden((prev) => !prev), []);\n\n const registerRevealable = useCallback(() => {\n setRevealableCount((count) => count + 1);\n return () => setRevealableCount((count) => count - 1);\n }, []);\n\n const registerLabel = useCallback(() => {\n setLabelCount((count) => count + 1);\n return () => setLabelCount((count) => count - 1);\n }, []);\n\n const contextValue = useMemo(\n () => ({\n copied,\n handleCopy,\n value,\n mono,\n hidden,\n toggleHidden,\n registerRevealable,\n hasRevealable: revealableCount > 0,\n registerLabel,\n hasLabel: labelCount > 0,\n minLines,\n maxLines: maxLines ?? minLines,\n hoverHint,\n labelId,\n boxId,\n }),\n [\n copied,\n handleCopy,\n value,\n mono,\n hidden,\n toggleHidden,\n registerRevealable,\n revealableCount,\n registerLabel,\n labelCount,\n minLines,\n maxLines,\n hoverHint,\n labelId,\n boxId,\n ],\n );\n\n return (\n <CopyContext value={contextValue}>\n <div className={cn('tw:flex tw:w-fit tw:max-w-full tw:flex-col tw:gap-1', className)}>\n {children}\n </div>\n </CopyContext>\n );\n};\n","import type { ReactNode } from 'react';\n\nimport { cn } from '../../utils';\n\ntype CopyAddonProps = {\n children: ReactNode;\n className?: string;\n};\n\n/** Muted, non-selectable suffix addon with a leading divider (not part of the copied value). */\nexport const CopySuffix = ({ children, className }: CopyAddonProps) => (\n <span\n aria-hidden\n className={cn(\n 'tw:shrink-0 tw:select-none tw:self-stretch tw:border-l tw:border-border tw:pl-2 tw:text-muted-foreground',\n className,\n )}\n >\n {children}\n </span>\n);\n","import { CopyBox } from './CopyBox';\nimport { CopyButton } from './CopyButton';\nimport { CopyChildren } from './CopyChildren';\nimport { CopyFooter } from './CopyFooter';\nimport { CopyHidden } from './CopyHidden';\nimport { CopyLabel } from './CopyLabel';\nimport { CopyPrefix } from './CopyPrefix';\nimport { CopyReveal } from './CopyReveal';\nimport { CopyRoot } from './CopyRoot';\nimport { CopySuffix } from './CopySuffix';\n\n/**\n * Compound component for readonly value/command boxes with inline copy.\n *\n * `CopyField.Root` owns the `value` and copy/mask state; `CopyField.Box` is the clickable\n * copy target. Clicking anywhere in the box copies the real `value` to the\n * clipboard (guarded by text-selection so drag-select does NOT trigger a copy),\n * with a Copy → Check feedback for ~1.5s.\n *\n * Shapes:\n * - **Single-line value row** — default proportional font, value truncates.\n * - **Monospace command box** — `mono` on `CopyField.Root`.\n * - **Multi-line** — `maxLines > 1`; content wraps and scrolls between\n * `minLines` and `maxLines` tall.\n *\n * Masking: wrap sensitive content in `CopyField.Hidden`. Revealable hidden content is\n * toggled by `CopyField.Reveal` (an eye button); copy still copies the real value.\n *\n * @example Monospace command\n * ```tsx\n * <CopyField.Root value={installCommand} mono>\n * <CopyField.Label>Install the Keboola CLI</CopyField.Label>\n * <CopyField.Box>\n * <CopyField.Children>{installCommand}</CopyField.Children>\n * <CopyField.Button />\n * </CopyField.Box>\n * </CopyField.Root>\n * ```\n *\n * @example Masked token with reveal + prefix/suffix\n * ```tsx\n * <CopyField.Root value={dataAppUrl} hiddenByDefault>\n * <CopyField.Label leading={<InfoButton />} trailing={<Switch />}>Data app URL</CopyField.Label>\n * <CopyField.Box>\n * <CopyField.Prefix>https://</CopyField.Prefix>\n * <CopyField.Children><CopyField.Hidden>{slug}</CopyField.Hidden></CopyField.Children>\n * <CopyField.Suffix>.keboola.com</CopyField.Suffix>\n * <CopyField.Reveal />\n * <CopyField.Button />\n * </CopyField.Box>\n * <CopyField.Footer>Click to copy</CopyField.Footer>\n * </CopyField.Root>\n * ```\n */\nexport const CopyField = {\n /** Container. Owns the copied `value`, mask state, and copy context. */\n Root: CopyRoot,\n /** Visible label above the box, with optional `leading`/`trailing` slots. */\n Label: CopyLabel,\n /** The clickable copy target row. */\n Box: CopyBox,\n /** Muted, non-selectable prefix addon (not copied). */\n Prefix: CopyPrefix,\n /** Displayed value (truncates single-line, wraps multi-line). */\n Children: CopyChildren,\n /** Muted, non-selectable suffix addon (not copied). */\n Suffix: CopySuffix,\n /** Masks its children with dots; copy still copies the real value. */\n Hidden: CopyHidden,\n /** Eye toggle that reveals/masks revealable `CopyField.Hidden` content. */\n Reveal: CopyReveal,\n /** Copy affordance icon — shows Copy/Check with feedback. */\n Button: CopyButton,\n /** Small helper text below the box. */\n Footer: CopyFooter,\n};\n"]}
|
package/dist/chunk-S6TAF63G.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { cn } from './chunk-LXLIQ2D6.js';
|
|
2
|
-
import * as RLabel from '@radix-ui/react-label';
|
|
3
|
-
import { jsx } from 'react/jsx-runtime';
|
|
4
|
-
|
|
5
|
-
var Optional = ({ className, ...props }) => /* @__PURE__ */ jsx("span", { ...props, "aria-hidden": true, className: cn("tw:ml-0.5", "tw:text-muted-foreground", className), children: "(optional)" });
|
|
6
|
-
var Required = ({ className, ...props }) => /* @__PURE__ */ jsx("span", { ...props, "aria-hidden": true, className: cn("tw:ml-0.5", "tw:text-primary", className), children: "*" });
|
|
7
|
-
var Label = ({ className, children, id, htmlFor, ...rest }) => /* @__PURE__ */ jsx(
|
|
8
|
-
RLabel.Root,
|
|
9
|
-
{
|
|
10
|
-
...rest,
|
|
11
|
-
id: id?.toString(),
|
|
12
|
-
htmlFor: htmlFor?.toString(),
|
|
13
|
-
className: cn(
|
|
14
|
-
"tw:m-0 tw:text-foreground tw:font-normal tw:peer-disabled:opacity-50",
|
|
15
|
-
className
|
|
16
|
-
),
|
|
17
|
-
children
|
|
18
|
-
}
|
|
19
|
-
);
|
|
20
|
-
Label.Optional = Optional;
|
|
21
|
-
Label.Required = Required;
|
|
22
|
-
|
|
23
|
-
export { Label };
|
|
24
|
-
//# sourceMappingURL=chunk-S6TAF63G.js.map
|
|
25
|
-
//# sourceMappingURL=chunk-S6TAF63G.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Label/Label.tsx"],"names":[],"mappings":";;;;AAgBA,IAAM,WAAW,CAAC,EAAE,WAAW,GAAG,KAAA,uBAChC,GAAA,CAAC,MAAA,EAAA,EAAM,GAAG,KAAA,EAAO,aAAA,EAAW,MAAC,SAAA,EAAW,EAAA,CAAG,aAAa,0BAAA,EAA4B,SAAS,GAAG,QAAA,EAAA,YAAA,EAEhG,CAAA;AAQF,IAAM,WAAW,CAAC,EAAE,WAAW,GAAG,KAAA,uBAChC,GAAA,CAAC,MAAA,EAAA,EAAM,GAAG,KAAA,EAAO,aAAA,EAAW,MAAC,SAAA,EAAW,EAAA,CAAG,aAAa,iBAAA,EAAmB,SAAS,GAAG,QAAA,EAAA,GAAA,EAEvF,CAAA;AAGK,IAAM,KAAA,GAAQ,CAAC,EAAE,SAAA,EAAW,UAAU,EAAA,EAAI,OAAA,EAAS,GAAG,IAAA,EAAK,qBAChE,GAAA;AAAA,EAAQ,MAAA,CAAA,IAAA;AAAA,EAAP;AAAA,IACE,GAAG,IAAA;AAAA,IACJ,EAAA,EAAI,IAAI,QAAA,EAAS;AAAA,IACjB,OAAA,EAAS,SAAS,QAAA,EAAS;AAAA,IAC3B,SAAA,EAAW,EAAA;AAAA,MACT,sEAAA;AAAA,MACA;AAAA,KACF;AAAA,IAEC;AAAA;AACH;AAGF,KAAA,CAAM,QAAA,GAAW,QAAA;AACjB,KAAA,CAAM,QAAA,GAAW,QAAA","file":"chunk-S6TAF63G.js","sourcesContent":["import type { ComponentPropsWithRef } from 'react';\nimport type { LabelProps } from '@radix-ui/react-label';\nimport * as RLabel from '@radix-ui/react-label';\n\nimport { cn } from '../../utils';\n\ntype Props = { id?: string | number; htmlFor?: string | number } & Omit<\n LabelProps,\n 'id' | 'htmlFor'\n>;\n\n/**\n * Decorative optional marker (`(optional)`). Like `Label.Required` it is `aria-hidden`, so it is\n * purely visual — optionality is conveyed by the *absence* of `aria-required`/`required` on the\n * associated control, not by this text.\n */\nconst Optional = ({ className, ...props }: ComponentPropsWithRef<'span'>) => (\n <span {...props} aria-hidden className={cn('tw:ml-0.5', 'tw:text-muted-foreground', className)}>\n (optional)\n </span>\n);\n\n/**\n * Decorative required marker (the `*`). It is `aria-hidden`, so it is purely visual and is **not**\n * announced by assistive tech — conveying the requirement is the caller's responsibility: set\n * `aria-required` (or `required`) on the associated control.\n */\nconst Required = ({ className, ...props }: ComponentPropsWithRef<'span'>) => (\n <span {...props} aria-hidden className={cn('tw:ml-0.5', 'tw:text-primary', className)}>\n *\n </span>\n);\n\nexport const Label = ({ className, children, id, htmlFor, ...rest }: Props) => (\n <RLabel.Root\n {...rest}\n id={id?.toString()}\n htmlFor={htmlFor?.toString()}\n className={cn(\n 'tw:m-0 tw:text-foreground tw:font-normal tw:peer-disabled:opacity-50',\n className,\n )}\n >\n {children}\n </RLabel.Root>\n);\n\nLabel.Optional = Optional;\nLabel.Required = Required;\n"]}
|