@keboola/design 11.2.0 → 11.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +25 -14
- package/CHANGELOG.md +254 -0
- package/COMPONENT-API.md +1 -1
- package/dist/{AIKit-DiS0CVOW.js → AIKit-DaFT7p92.js} +23 -22
- package/dist/AIKit-DaFT7p92.js.map +1 -0
- package/dist/{Alert-DfZq9kGe.js → Alert-CseY3yAj.js} +3 -3
- package/dist/{Alert-DfZq9kGe.js.map → Alert-CseY3yAj.js.map} +1 -1
- package/dist/{AlertModal-Dp_XuJBW.js → AlertModal-DQAGpsEy.js} +3 -3
- package/dist/{AlertModal-Dp_XuJBW.js.map → AlertModal-DQAGpsEy.js.map} +1 -1
- package/dist/{AppShell-B5GQN6Zs.js → AppShell-BUoxM3fv.js} +29 -10
- package/dist/AppShell-BUoxM3fv.js.map +1 -0
- package/dist/{BrandEditor-DyzgfVkl.js → BrandEditor-BnTLMRMp.js} +6 -6
- package/dist/{BrandEditor-DyzgfVkl.js.map → BrandEditor-BnTLMRMp.js.map} +1 -1
- package/dist/{BrandLogo-CJkRd0F8.js → BrandLogo-V2pRUAeO.js} +2 -2
- package/dist/{BrandLogo-CJkRd0F8.js.map → BrandLogo-V2pRUAeO.js.map} +1 -1
- package/dist/{Breadcrumb-Frst8MTA.js → Breadcrumb-CQTPn_KB.js} +3 -3
- package/dist/{Breadcrumb-Frst8MTA.js.map → Breadcrumb-CQTPn_KB.js.map} +1 -1
- package/dist/{Button-6xBX0nNl.js → Button-CPsEQuTN.js} +2 -2
- package/dist/{Button-6xBX0nNl.js.map → Button-CPsEQuTN.js.map} +1 -1
- package/dist/{Card-BAoZ35CV.js → Card-Cd5HSBmv.js} +2 -2
- package/dist/{Card-BAoZ35CV.js.map → Card-Cd5HSBmv.js.map} +1 -1
- package/dist/{Checkbox-GJ8-srt4.js → Checkbox-5VNCcV7E.js} +3 -3
- package/dist/{Checkbox-GJ8-srt4.js.map → Checkbox-5VNCcV7E.js.map} +1 -1
- package/dist/{Clipboard-CBJZiviP.js → Clipboard-B7rckqV_.js} +2 -2
- package/dist/{Clipboard-CBJZiviP.js.map → Clipboard-B7rckqV_.js.map} +1 -1
- package/dist/{ClipboardButton-ClcluT0C.js → ClipboardButton-CQ6Aewpg.js} +3 -3
- package/dist/{ClipboardButton-ClcluT0C.js.map → ClipboardButton-CQ6Aewpg.js.map} +1 -1
- package/dist/{CodeEditor-DyaN-Ij2.js → CodeEditor-CUse8znx.js} +237 -95
- package/dist/CodeEditor-CUse8znx.js.map +1 -0
- package/dist/{ColorInput-B8z4j4Y_.js → ColorInput-Q1D9Vcc_.js} +3 -3
- package/dist/{ColorInput-B8z4j4Y_.js.map → ColorInput-Q1D9Vcc_.js.map} +1 -1
- package/dist/{ColorModeSwitch-dZFZyqy1.js → ColorModeSwitch-B5PXCVqB.js} +3 -3
- package/dist/{ColorModeSwitch-dZFZyqy1.js.map → ColorModeSwitch-B5PXCVqB.js.map} +1 -1
- package/dist/{Combobox-Dgm6Z4ib.js → Combobox-CyoRA7oY.js} +5 -5
- package/dist/Combobox-CyoRA7oY.js.map +1 -0
- package/dist/{Command-C0aZfVTq.js → Command-Ds68v2rX.js} +3 -3
- package/dist/{Command-C0aZfVTq.js.map → Command-Ds68v2rX.js.map} +1 -1
- package/dist/{CopyField-BJ96zvXs.js → CopyField-DI66uY_g.js} +2 -2
- package/dist/{CopyField-BJ96zvXs.js.map → CopyField-DI66uY_g.js.map} +1 -1
- package/dist/{DateInput-B3UdzRfW.js → DateInput-BPj2pzsn.js} +4 -4
- package/dist/{DateInput-B3UdzRfW.js.map → DateInput-BPj2pzsn.js.map} +1 -1
- package/dist/{DatePicker-Dw3DpbUh.js → DatePicker-DyEGuW9m.js} +2 -2
- package/dist/{DatePicker-Dw3DpbUh.js.map → DatePicker-DyEGuW9m.js.map} +1 -1
- package/dist/{DateRangeInput-DTuySEiq.js → DateRangeInput-u9DxNbHW.js} +4 -4
- package/dist/{DateRangeInput-DTuySEiq.js.map → DateRangeInput-u9DxNbHW.js.map} +1 -1
- package/dist/{DateRangePicker-DCmMHg4s.js → DateRangePicker-CYYhX6S7.js} +6 -6
- package/dist/{DateRangePicker-DCmMHg4s.js.map → DateRangePicker-CYYhX6S7.js.map} +1 -1
- package/dist/{DropdownMenu-t90tVw6l.js → DropdownMenu-DpMEcyCq.js} +2 -2
- package/dist/{DropdownMenu-t90tVw6l.js.map → DropdownMenu-DpMEcyCq.js.map} +1 -1
- package/dist/{FieldItem-D-h1NeBo.js → FieldItem-qQKGU9lF.js} +3 -3
- package/dist/{FieldItem-D-h1NeBo.js.map → FieldItem-qQKGU9lF.js.map} +1 -1
- package/dist/{FieldItem-CAPj9lj3.d.ts → FieldItem-vhIJW4pj.d.ts} +2 -10
- package/dist/{FileUpload-BRv0TaZk.js → FileUpload-C336MVnU.js} +2 -2
- package/dist/{FileUpload-BRv0TaZk.js.map → FileUpload-C336MVnU.js.map} +1 -1
- package/dist/{Form-DHvcFoEi.js → Form-CTygENDc.js} +8 -8
- package/dist/{Form-DHvcFoEi.js.map → Form-CTygENDc.js.map} +1 -1
- package/dist/{FormGroup-C41n65cE.js → FormGroup-BnwP0jNu.js} +3 -3
- package/dist/{FormGroup-C41n65cE.js.map → FormGroup-BnwP0jNu.js.map} +1 -1
- package/dist/{FullScreenModal-Cb3PGgh4.js → FullScreenModal-j-M4aPFd.js} +3 -3
- package/dist/{FullScreenModal-Cb3PGgh4.js.map → FullScreenModal-j-M4aPFd.js.map} +1 -1
- package/dist/{HoverCard-WfDkLK1s.js → HoverCard-yQq-O49c.js} +2 -2
- package/dist/{HoverCard-WfDkLK1s.js.map → HoverCard-yQq-O49c.js.map} +1 -1
- package/dist/{InputGroup-CdTq8H7c.js → InputGroup-D7zlmqPB.js} +3 -3
- package/dist/{InputGroup-CdTq8H7c.js.map → InputGroup-D7zlmqPB.js.map} +1 -1
- package/dist/{Kbd-CxHAo1oo.js → Kbd-D6LpR7G2.js} +2 -2
- package/dist/{Kbd-CxHAo1oo.js.map → Kbd-D6LpR7G2.js.map} +1 -1
- package/dist/{MermaidDiagram-ChL3WIQT.js → MermaidDiagram-JlvuGcY-.js} +6 -87
- package/dist/MermaidDiagram-JlvuGcY-.js.map +1 -0
- package/dist/{Modal-wqG8nJiK.js → Modal-o4ATIexE.js} +3 -3
- package/dist/{Modal-wqG8nJiK.js.map → Modal-o4ATIexE.js.map} +1 -1
- package/dist/{MultiActionButtonGroup-BiIIubiL.js → MultiActionButtonGroup-GTeFk-L8.js} +3 -3
- package/dist/{MultiActionButtonGroup-BiIIubiL.js.map → MultiActionButtonGroup-GTeFk-L8.js.map} +1 -1
- package/dist/{Navbar-BfaPeLUL.js → Navbar-CAQs4BZz.js} +2 -2
- package/dist/{Navbar-BfaPeLUL.js.map → Navbar-CAQs4BZz.js.map} +1 -1
- package/dist/{PageToolbar-OQg3mPF-.js → PageToolbar-bG2YtSa3.js} +3 -3
- package/dist/{PageToolbar-OQg3mPF-.js.map → PageToolbar-bG2YtSa3.js.map} +1 -1
- package/dist/{Pagination-Cjfda8KG.js → Pagination-BB3X7ooY.js} +2 -2
- package/dist/{Pagination-Cjfda8KG.js.map → Pagination-BB3X7ooY.js.map} +1 -1
- package/dist/{Popconfirm-D7_vfxFd.js → Popconfirm-C2Ky5hJO.js} +3 -3
- package/dist/{Popconfirm-D7_vfxFd.js.map → Popconfirm-C2Ky5hJO.js.map} +1 -1
- package/dist/{Popover-CzeHjvrB.js → Popover-DsbI2HKu.js} +2 -2
- package/dist/{Popover-CzeHjvrB.js.map → Popover-DsbI2HKu.js.map} +1 -1
- package/dist/{RadioGroup-sIveSsNa.js → RadioGroup-BMxuZEbT.js} +3 -3
- package/dist/{RadioGroup-sIveSsNa.js.map → RadioGroup-BMxuZEbT.js.map} +1 -1
- package/dist/{Search-3UiqNZRj.js → Search-DFeECt5D.js} +2 -2
- package/dist/{Search-3UiqNZRj.js.map → Search-DFeECt5D.js.map} +1 -1
- package/dist/{SearchInput-C7dF_Ir-.js → SearchInput-CCpdUego.js} +3 -3
- package/dist/{SearchInput-C7dF_Ir-.js.map → SearchInput-CCpdUego.js.map} +1 -1
- package/dist/{SectionNav-8NoTOKO8.js → SectionNav-Bw_MVL0_.js} +4 -4
- package/dist/{SectionNav-8NoTOKO8.js.map → SectionNav-Bw_MVL0_.js.map} +1 -1
- package/dist/{Select-Is0VkePH.js → Select-D6IZVvwL.js} +5 -5
- package/dist/Select-D6IZVvwL.js.map +1 -0
- package/dist/{Sheet-Dw9BDvjI.js → Sheet-BIzs2K2H.js} +3 -3
- package/dist/{Sheet-Dw9BDvjI.js.map → Sheet-BIzs2K2H.js.map} +1 -1
- package/dist/{Sidebar-Dcb4rinA.js → Sidebar-r1TW4g_b.js} +5 -5
- package/dist/{Sidebar-Dcb4rinA.js.map → Sidebar-r1TW4g_b.js.map} +1 -1
- package/dist/{Slider-BOPfMOMm.js → Slider-CjxyfEty.js} +3 -3
- package/dist/{Slider-BOPfMOMm.js.map → Slider-CjxyfEty.js.map} +1 -1
- package/dist/{Switch-CX2A0v50.js → Switch-BueTV03C.js} +2 -2
- package/dist/{Switch-CX2A0v50.js.map → Switch-BueTV03C.js.map} +1 -1
- package/dist/{Tabs-UMQuDoW8.js → Tabs-l72-WuhK.js} +2 -2
- package/dist/{Tabs-UMQuDoW8.js.map → Tabs-l72-WuhK.js.map} +1 -1
- package/dist/{TextInput-CMuN1WfY.js → TextInput-DhdRk8qm.js} +3 -3
- package/dist/{TextInput-CMuN1WfY.js.map → TextInput-DhdRk8qm.js.map} +1 -1
- package/dist/{ThemeProvider-QncUrfJn.js → ThemeProvider-DZfGdf1v.js} +5 -4
- package/dist/{ThemeProvider-QncUrfJn.js.map → ThemeProvider-DZfGdf1v.js.map} +1 -1
- package/dist/{TimePicker-D9zktB8A.js → TimePicker-B6d2rAbX.js} +2 -2
- package/dist/{TimePicker-D9zktB8A.js.map → TimePicker-B6d2rAbX.js.map} +1 -1
- package/dist/{Toast-DQSbs3oA.js → Toast-CxXUulYN.js} +2 -2
- package/dist/{Toast-DQSbs3oA.js.map → Toast-CxXUulYN.js.map} +1 -1
- package/dist/{ZoomableSvg-CZEu6sAq.js → ZoomableSvg-CNIzRHKH.js} +4 -4
- package/dist/{ZoomableSvg-CZEu6sAq.js.map → ZoomableSvg-CNIzRHKH.js.map} +1 -1
- package/dist/{context-KxxeMHbR.js → context-BrNtMc1H.js} +3 -33
- package/dist/context-BrNtMc1H.js.map +1 -0
- package/dist/defaults-CTfvj2KB.js +34 -0
- package/dist/defaults-CTfvj2KB.js.map +1 -0
- package/dist/editors.d.ts +12 -2
- package/dist/editors.js +20 -12
- package/dist/editors.js.map +1 -1
- package/dist/flint.d.ts +15 -0
- package/dist/flint.js +212 -0
- package/dist/flint.js.map +1 -0
- package/dist/index.d.ts +49 -7
- package/dist/index.js +57 -55
- package/dist/internal/blocks/AIKit.js +1 -1
- package/dist/internal/blocks/AppShell.js +2 -2
- package/dist/internal/blocks/BrandEditor.js +1 -1
- package/dist/internal/blocks/ChartPanel.js +1 -1
- package/dist/internal/blocks/ClipboardButton.js +1 -1
- package/dist/internal/blocks/ColorInput.js +1 -1
- package/dist/internal/blocks/ColorModeSwitch.js +1 -1
- package/dist/internal/blocks/Command.js +1 -1
- package/dist/internal/blocks/CopyField.js +1 -1
- package/dist/internal/blocks/DateInput.js +1 -1
- package/dist/internal/blocks/DateRangeInput.js +1 -1
- package/dist/{DiagramSkeleton-lwBS2YBa.js → internal/blocks/DiagramShared/DiagramSkeleton.js} +3 -3
- package/dist/internal/blocks/DiagramShared/DiagramSkeleton.js.map +1 -0
- package/dist/internal/blocks/EmptyConfigurationActionCard.js +1 -1
- package/dist/internal/blocks/ErrorState.js +1 -1
- package/dist/internal/blocks/ExportMenu.js +3 -3
- package/dist/internal/blocks/Form/connectors/MultiComboboxField.js +1 -1
- package/dist/internal/blocks/Form.js +1 -1
- package/dist/internal/blocks/FormGroup.js +1 -1
- package/dist/internal/blocks/MultiActionButtonGroup.js +1 -1
- package/dist/internal/blocks/MultiCombobox.js +4 -3
- package/dist/internal/blocks/MultiCombobox.js.map +1 -1
- package/dist/internal/blocks/NumberInput.js +1 -1
- package/dist/internal/blocks/PageToolbar.js +1 -1
- package/dist/internal/blocks/PasswordInput.js +2 -2
- package/dist/internal/blocks/SearchInput.js +1 -1
- package/dist/internal/blocks/SearchInputWithNavigation.js +3 -3
- package/dist/internal/blocks/SectionNav.js +1 -1
- package/dist/internal/blocks/SplitButton.js +2 -2
- package/dist/internal/blocks/StatCard.js +1 -1
- package/dist/internal/blocks/TextInput.js +1 -1
- package/dist/internal/blocks/Textarea.js +1 -1
- package/dist/internal/blocks/TimeInput.js +3 -3
- package/dist/internal/components/Alert.js +1 -1
- package/dist/internal/components/AlertModal.js +1 -1
- package/dist/internal/components/Avatar.js +1 -1
- package/dist/internal/components/BrandLogo.js +1 -1
- package/dist/internal/components/Breadcrumb.js +1 -1
- package/dist/internal/components/Button.js +1 -1
- package/dist/internal/components/Card.js +1 -1
- package/dist/internal/components/Checkbox.js +1 -1
- package/dist/internal/components/Clipboard.js +1 -1
- package/dist/internal/components/CollapsiblePanel.js +1 -1
- package/dist/internal/components/Combobox.js +1 -1
- package/dist/internal/components/DatePicker.js +1 -1
- package/dist/internal/components/DateRangePicker.js +1 -1
- package/dist/internal/components/DropdownMenu.js +1 -1
- package/dist/internal/components/FileUpload.js +1 -1
- package/dist/internal/components/FullScreenModal.js +1 -1
- package/dist/internal/components/HoverCard.js +1 -1
- package/dist/internal/components/InputGroup.js +1 -1
- package/dist/internal/components/Kbd.js +1 -1
- package/dist/internal/components/Modal.js +1 -1
- package/dist/internal/components/Navbar.js +1 -1
- package/dist/internal/components/Pagination.js +1 -1
- package/dist/internal/components/Popconfirm.js +1 -1
- package/dist/internal/components/Popover.js +1 -1
- package/dist/internal/components/RadioGroup.js +1 -1
- package/dist/internal/components/Search.js +1 -1
- package/dist/internal/components/Select.js +1 -1
- package/dist/internal/components/Sheet.js +1 -1
- package/dist/internal/components/Sidebar.js +1 -1
- package/dist/internal/components/Slider.js +1 -1
- package/dist/internal/components/Switch.js +1 -1
- package/dist/internal/components/Tabs.js +1 -1
- package/dist/internal/components/ThemeProvider.js +3 -2
- package/dist/internal/components/TimePicker.js +1 -1
- package/dist/internal/components/Toast.js +2 -2
- package/dist/internal/components/Tooltip.js +1 -1
- package/dist/internal/components/Truncated.js +16 -8
- package/dist/internal/components/Truncated.js.map +1 -1
- package/dist/internal/components/ZoomableSvg.js +1 -1
- package/dist/internal/utils.js +1 -1
- package/dist/markdown-editor.js +7 -7
- package/dist/mermaid.js +1 -1
- package/dist/rjsf.js +11 -11
- package/dist/{styles-DSUP_-9Z.js → styles-BAFscjSV.js} +4 -3
- package/dist/styles-BAFscjSV.js.map +1 -0
- package/dist/styles.css +1 -1
- package/dist/svgTransforms-C9njt92h.js +89 -0
- package/dist/svgTransforms-C9njt92h.js.map +1 -0
- package/dist/testing.js +3 -2
- package/dist/testing.js.map +1 -1
- package/dist/{themeTokens-BNg98Mu9.js → themeTokens-7T1AFLhq.js} +13 -6
- package/dist/{themeTokens-BNg98Mu9.js.map → themeTokens-7T1AFLhq.js.map} +1 -1
- package/dist/{toast-CjkURw0M.js → toast-BweSoKn3.js} +3 -3
- package/dist/toast-BweSoKn3.js.map +1 -0
- package/dist/types-BPcAjMG0.d.ts +10 -0
- package/dist/{useColorSchemeState-CYqcUfSH.js → useColorSchemeState-BJEk6esG.js} +2 -2
- package/dist/{useColorSchemeState-CYqcUfSH.js.map → useColorSchemeState-BJEk6esG.js.map} +1 -1
- package/dist/{utils-D0c5VAyF.js → utils-B-g7d_Jb.js} +2 -2
- package/dist/{utils-D0c5VAyF.js.map → utils-B-g7d_Jb.js.map} +1 -1
- package/dist/vega.d.ts +46 -0
- package/dist/vega.js +26 -0
- package/dist/vega.js.map +1 -0
- package/dist/vegaTheme-FBXgAdHK.js +146 -0
- package/dist/vegaTheme-FBXgAdHK.js.map +1 -0
- package/package.json +26 -7
- package/src/styles.css +27 -4
- package/dist/AIKit-DiS0CVOW.js.map +0 -1
- package/dist/AppShell-B5GQN6Zs.js.map +0 -1
- package/dist/CodeEditor-DyaN-Ij2.js.map +0 -1
- package/dist/Combobox-Dgm6Z4ib.js.map +0 -1
- package/dist/DiagramSkeleton-lwBS2YBa.js.map +0 -1
- package/dist/MermaidDiagram-ChL3WIQT.js.map +0 -1
- package/dist/Select-Is0VkePH.js.map +0 -1
- package/dist/context-KxxeMHbR.js.map +0 -1
- package/dist/styles-DSUP_-9Z.js.map +0 -1
- package/dist/toast-CjkURw0M.js.map +0 -1
package/dist/flint.js
ADDED
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
import { DiagramSkeleton } from "./internal/blocks/DiagramShared/DiagramSkeleton.js";
|
|
2
|
+
import { ZoomableSvg } from "./ZoomableSvg-CNIzRHKH.js";
|
|
3
|
+
import { useThemeAttributes } from "./themeTokens-7T1AFLhq.js";
|
|
4
|
+
import { SERIES_TOKENS, createVegaColorResolver, vegaRgb, vegaTheme } from "./vegaTheme-FBXgAdHK.js";
|
|
5
|
+
import { DiagramSource, makeResponsive } from "./svgTransforms-C9njt92h.js";
|
|
6
|
+
import { useEffect, useState } from "react";
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
//#region src/blocks/FlintChart/flintTheme.ts
|
|
9
|
+
/**
|
|
10
|
+
* How the second palette tier (series 6-10) is derived from the core hues.
|
|
11
|
+
*
|
|
12
|
+
* - Each core hue is pushed *away* from its own surface, so the tier stays
|
|
13
|
+
* in-family but reads as a distinct series: darkened on light, lightened on
|
|
14
|
+
* dark. A single "multiply the channels" rule would darken in both, which on
|
|
15
|
+
* a dark surface moves toward the backdrop — measured, that drops contrast
|
|
16
|
+
* from ~6.7:1 to ~3.7:1, while lightening raises it to ~9:1.
|
|
17
|
+
* - `amount` is the fraction of the distance travelled toward black (light) or
|
|
18
|
+
* white (dark).
|
|
19
|
+
*/
|
|
20
|
+
const TIER_TWO_SHIFT = {
|
|
21
|
+
light: {
|
|
22
|
+
towards: 0,
|
|
23
|
+
amount: .38
|
|
24
|
+
},
|
|
25
|
+
dark: {
|
|
26
|
+
towards: 255,
|
|
27
|
+
amount: .35
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Move an `rgb()` string's channels a fraction of the way toward `towards`
|
|
32
|
+
* (0 = black, 255 = white). Returns the input unchanged if it is not that shape.
|
|
33
|
+
*/
|
|
34
|
+
const shiftChannels = (colour, towards, amount) => {
|
|
35
|
+
const channels = colour.match(/\d+/g);
|
|
36
|
+
if (!channels || channels.length < 3) return colour;
|
|
37
|
+
const shifted = channels.slice(0, 3).map((c) => Math.round(Number(c) + (towards - Number(c)) * amount));
|
|
38
|
+
return vegaRgb(shifted.join(" "));
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* Put the design system's categorical chart palette on a Flint input.
|
|
42
|
+
*
|
|
43
|
+
* Series colours are resolved by flint itself during assembly (they land in the
|
|
44
|
+
* Vega-Lite `color` scale's `range`), so unlike the chrome in `vegaTheme` they
|
|
45
|
+
* cannot be set through the compile `config` — they ride `theme_spec.ink.series`
|
|
46
|
+
* on the input instead.
|
|
47
|
+
*
|
|
48
|
+
* `--chart-1..5` is the decorative palette the recharts wrappers in
|
|
49
|
+
* `@keboola/design/charts` already use, so a Flint chart now matches the rest of
|
|
50
|
+
* the platform's data-viz, follows the colour scheme, and re-skins with a brand
|
|
51
|
+
* that overrides `colors.chart` / `colorsDark.chart`.
|
|
52
|
+
*
|
|
53
|
+
* An author-supplied `theme_spec` wins: a fence that names a Flint house (or its
|
|
54
|
+
* own spec) asked for that look deliberately, so it is passed through untouched.
|
|
55
|
+
*
|
|
56
|
+
* `null` is not such a spec. The input is `JSON.parse`d model output, where
|
|
57
|
+
* `"theme_spec": null` is valid JSON, and flint dereferences the value while
|
|
58
|
+
* assembling (`reading 'extends'`) — so leaving it in place throws and the chart
|
|
59
|
+
* falls back to raw source. It is replaced, exactly like a missing one.
|
|
60
|
+
*/
|
|
61
|
+
const withFlintSeriesPalette = (input, scheme) => {
|
|
62
|
+
if (input.theme_spec !== void 0 && input.theme_spec !== null) return input;
|
|
63
|
+
const token = createVegaColorResolver(scheme);
|
|
64
|
+
const categorical = SERIES_TOKENS.map((name) => token(name));
|
|
65
|
+
return {
|
|
66
|
+
...input,
|
|
67
|
+
theme_spec: { ink: {
|
|
68
|
+
surface: { canvas: token("card") },
|
|
69
|
+
series: {
|
|
70
|
+
categorical,
|
|
71
|
+
categoricalExtended: [...categorical, ...categorical.map((colour) => shiftChannels(colour, TIER_TWO_SHIFT[scheme].towards, TIER_TWO_SHIFT[scheme].amount))],
|
|
72
|
+
overflow: token("muted-foreground"),
|
|
73
|
+
sequential: {
|
|
74
|
+
stops: [token("accent"), token("chart-1")],
|
|
75
|
+
space: "lab",
|
|
76
|
+
endpointsAgainstSurface: true
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
} }
|
|
80
|
+
};
|
|
81
|
+
};
|
|
82
|
+
//#endregion
|
|
83
|
+
//#region src/blocks/FlintChart/renderFlintSvg.ts
|
|
84
|
+
/**
|
|
85
|
+
* Compile a Flint `ChartAssemblyInput` to a static SVG string.
|
|
86
|
+
*
|
|
87
|
+
* - `assembleVegaLite` returns a Vega-Lite spec carrying `_`-prefixed internal
|
|
88
|
+
* hint keys (`_width`, `_options`, `_transform`, …) that are not part of the
|
|
89
|
+
* Vega-Lite schema — they are stripped before compiling.
|
|
90
|
+
* - `config` (the scheme-following theme) rides the compile options; flint's
|
|
91
|
+
* spec-side config sets no colours, so the two cannot conflict on merge.
|
|
92
|
+
* - The Vega view renders headless (`renderer: 'none'`); nothing mounts to the
|
|
93
|
+
* DOM, `toSVG()` is the only output.
|
|
94
|
+
*/
|
|
95
|
+
const renderFlintSvg = async (runtime, input, config) => {
|
|
96
|
+
const assembled = runtime.assembleVegaLite(input);
|
|
97
|
+
const vlSpec = Object.fromEntries(Object.entries(assembled).filter(([key]) => !key.startsWith("_")));
|
|
98
|
+
const { spec } = runtime.vegaLite.compile(vlSpec, { config });
|
|
99
|
+
const view = new runtime.vega.View(runtime.vega.parse(spec), { renderer: "none" });
|
|
100
|
+
try {
|
|
101
|
+
await view.runAsync();
|
|
102
|
+
return await view.toSVG();
|
|
103
|
+
} finally {
|
|
104
|
+
view.finalize();
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
//#endregion
|
|
108
|
+
//#region src/blocks/FlintChart/FlintChart.tsx
|
|
109
|
+
let runtimePromise = null;
|
|
110
|
+
const getFlintRuntime = () => {
|
|
111
|
+
if (!runtimePromise) runtimePromise = Promise.all([
|
|
112
|
+
import("flint-chart/vegalite"),
|
|
113
|
+
import("vega"),
|
|
114
|
+
import("vega-lite")
|
|
115
|
+
]).then(([flint, vega, vegaLite]) => ({
|
|
116
|
+
assembleVegaLite: flint.assembleVegaLite,
|
|
117
|
+
vega,
|
|
118
|
+
vegaLite
|
|
119
|
+
})).catch((err) => {
|
|
120
|
+
runtimePromise = null;
|
|
121
|
+
throw err;
|
|
122
|
+
});
|
|
123
|
+
return runtimePromise;
|
|
124
|
+
};
|
|
125
|
+
const RENDER_DEBOUNCE_MS = 300;
|
|
126
|
+
const MAX_SOURCE_CHARS = 2e5;
|
|
127
|
+
const MAX_CACHED_CHARTS = 24;
|
|
128
|
+
const svgCache = /* @__PURE__ */ new Map();
|
|
129
|
+
const cacheSvg = (key, svg) => {
|
|
130
|
+
if (!svgCache.has(key) && svgCache.size >= MAX_CACHED_CHARTS) {
|
|
131
|
+
const oldest = svgCache.keys().next();
|
|
132
|
+
if (!oldest.done) svgCache.delete(oldest.value);
|
|
133
|
+
}
|
|
134
|
+
svgCache.set(key, svg);
|
|
135
|
+
};
|
|
136
|
+
const chartCacheKey = (code, themeKey) => `${themeKey}\n${code}`;
|
|
137
|
+
const prevThemeKeyOf = (key) => key.slice(0, key.indexOf("\n"));
|
|
138
|
+
const FlintChart = ({ code, renderActions }) => {
|
|
139
|
+
const { scheme, cacheKey: themeKey } = useThemeAttributes();
|
|
140
|
+
const cacheKey = chartCacheKey(code, themeKey);
|
|
141
|
+
const [svg, setSvg] = useState(() => svgCache.get(cacheKey) ?? null);
|
|
142
|
+
const [renderFailed, setRenderFailed] = useState(false);
|
|
143
|
+
const [prevKey, setPrevKey] = useState(cacheKey);
|
|
144
|
+
const [prevCode, setPrevCode] = useState(code);
|
|
145
|
+
if (cacheKey !== prevKey) {
|
|
146
|
+
const cached = svgCache.get(cacheKey);
|
|
147
|
+
const sameThemeStillStreaming = themeKey === prevThemeKeyOf(prevKey) && code.startsWith(prevCode);
|
|
148
|
+
setPrevKey(cacheKey);
|
|
149
|
+
setPrevCode(code);
|
|
150
|
+
if (cached) setSvg(cached);
|
|
151
|
+
else if (!sameThemeStillStreaming) setSvg(null);
|
|
152
|
+
setRenderFailed(false);
|
|
153
|
+
}
|
|
154
|
+
useEffect(() => {
|
|
155
|
+
if (svgCache.has(cacheKey)) return;
|
|
156
|
+
let cancelled = false;
|
|
157
|
+
let graceTimer;
|
|
158
|
+
const debounceTimer = setTimeout(() => {
|
|
159
|
+
if (code.length > MAX_SOURCE_CHARS) {
|
|
160
|
+
console.error(`[FlintChart] source exceeds ${MAX_SOURCE_CHARS} characters (${code.length}); not rendering`);
|
|
161
|
+
setSvg(null);
|
|
162
|
+
setRenderFailed(true);
|
|
163
|
+
return;
|
|
164
|
+
}
|
|
165
|
+
let input;
|
|
166
|
+
try {
|
|
167
|
+
input = JSON.parse(code);
|
|
168
|
+
} catch (err) {
|
|
169
|
+
graceTimer = setTimeout(() => {
|
|
170
|
+
console.debug("[FlintChart] source never became parseable JSON:", err);
|
|
171
|
+
setSvg(null);
|
|
172
|
+
setRenderFailed(true);
|
|
173
|
+
}, 1200);
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
getFlintRuntime().then(async (runtime) => {
|
|
177
|
+
if (cancelled) return;
|
|
178
|
+
const svgOutput = makeResponsive(await renderFlintSvg(runtime, withFlintSeriesPalette(input, scheme), vegaTheme(scheme)));
|
|
179
|
+
if (cancelled) return;
|
|
180
|
+
cacheSvg(cacheKey, svgOutput);
|
|
181
|
+
setSvg(svgOutput);
|
|
182
|
+
setRenderFailed(false);
|
|
183
|
+
}).catch((err) => {
|
|
184
|
+
if (cancelled) return;
|
|
185
|
+
console.error("[FlintChart] render failed:", err);
|
|
186
|
+
setSvg(null);
|
|
187
|
+
setRenderFailed(true);
|
|
188
|
+
});
|
|
189
|
+
}, RENDER_DEBOUNCE_MS);
|
|
190
|
+
return () => {
|
|
191
|
+
cancelled = true;
|
|
192
|
+
clearTimeout(debounceTimer);
|
|
193
|
+
if (graceTimer) clearTimeout(graceTimer);
|
|
194
|
+
};
|
|
195
|
+
}, [
|
|
196
|
+
cacheKey,
|
|
197
|
+
code,
|
|
198
|
+
scheme
|
|
199
|
+
]);
|
|
200
|
+
if (renderFailed) return /* @__PURE__ */ jsx(DiagramSource, { code });
|
|
201
|
+
if (svg) return /* @__PURE__ */ jsx(ZoomableSvg, {
|
|
202
|
+
html: svg,
|
|
203
|
+
copyText: `\`\`\`flint\n${code}\n\`\`\``,
|
|
204
|
+
className: "tw:my-3",
|
|
205
|
+
renderActions
|
|
206
|
+
}, svg);
|
|
207
|
+
return /* @__PURE__ */ jsx(DiagramSkeleton, {});
|
|
208
|
+
};
|
|
209
|
+
//#endregion
|
|
210
|
+
export { FlintChart };
|
|
211
|
+
|
|
212
|
+
//# sourceMappingURL=flint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flint.js","names":[],"sources":["../src/blocks/FlintChart/flintTheme.ts","../src/blocks/FlintChart/renderFlintSvg.ts","../src/blocks/FlintChart/FlintChart.tsx"],"sourcesContent":["import type { ChartAssemblyInput } from 'flint-chart';\n\nimport type { ResolvedColorScheme } from '../../components/ThemeProvider/types';\nimport { createVegaColorResolver, SERIES_TOKENS, vegaRgb } from '../../vega/vegaTokens';\n\n/**\n * How the second palette tier (series 6-10) is derived from the core hues.\n *\n * - Each core hue is pushed *away* from its own surface, so the tier stays\n * in-family but reads as a distinct series: darkened on light, lightened on\n * dark. A single \"multiply the channels\" rule would darken in both, which on\n * a dark surface moves toward the backdrop — measured, that drops contrast\n * from ~6.7:1 to ~3.7:1, while lightening raises it to ~9:1.\n * - `amount` is the fraction of the distance travelled toward black (light) or\n * white (dark).\n */\nconst TIER_TWO_SHIFT = {\n light: { towards: 0, amount: 0.38 },\n dark: { towards: 255, amount: 0.35 },\n} as const;\n\n/**\n * Move an `rgb()` string's channels a fraction of the way toward `towards`\n * (0 = black, 255 = white). Returns the input unchanged if it is not that shape.\n */\nconst shiftChannels = (colour: string, towards: number, amount: number): string => {\n const channels = colour.match(/\\d+/g);\n if (!channels || channels.length < 3) return colour;\n const shifted = channels\n .slice(0, 3)\n .map((c) => Math.round(Number(c) + (towards - Number(c)) * amount));\n return vegaRgb(shifted.join(' '));\n};\n\n/**\n * Put the design system's categorical chart palette on a Flint input.\n *\n * Series colours are resolved by flint itself during assembly (they land in the\n * Vega-Lite `color` scale's `range`), so unlike the chrome in `vegaTheme` they\n * cannot be set through the compile `config` — they ride `theme_spec.ink.series`\n * on the input instead.\n *\n * `--chart-1..5` is the decorative palette the recharts wrappers in\n * `@keboola/design/charts` already use, so a Flint chart now matches the rest of\n * the platform's data-viz, follows the colour scheme, and re-skins with a brand\n * that overrides `colors.chart` / `colorsDark.chart`.\n *\n * An author-supplied `theme_spec` wins: a fence that names a Flint house (or its\n * own spec) asked for that look deliberately, so it is passed through untouched.\n *\n * `null` is not such a spec. The input is `JSON.parse`d model output, where\n * `\"theme_spec\": null` is valid JSON, and flint dereferences the value while\n * assembling (`reading 'extends'`) — so leaving it in place throws and the chart\n * falls back to raw source. It is replaced, exactly like a missing one.\n */\nexport const withFlintSeriesPalette = (\n input: ChartAssemblyInput,\n scheme: ResolvedColorScheme,\n): ChartAssemblyInput => {\n if (input.theme_spec !== undefined && input.theme_spec !== null) return input;\n\n const token = createVegaColorResolver(scheme);\n const categorical = SERIES_TOKENS.map((name) => token(name));\n\n return {\n ...input,\n theme_spec: {\n ink: {\n // `endpointsAgainstSurface` below needs to know what the chart sits on.\n surface: { canvas: token('card') },\n series: {\n categorical,\n // Past five series flint drops `categorical` wholesale for its own\n // `tableau10` — brand-blind and scheme-blind — so a six-region or\n // seven-month split would silently stop following the theme. The\n // extended set keeps those on our hues: a second tier shifted away\n // from the surface (darker on light, lighter on dark, per\n // `TIER_TWO_SHIFT`), distinct from the core five but the same family.\n categoricalExtended: [\n ...categorical,\n ...categorical.map((colour) =>\n shiftChannels(colour, TIER_TWO_SHIFT[scheme].towards, TIER_TWO_SHIFT[scheme].amount),\n ),\n ],\n // The tail past even the extended set.\n overflow: token('muted-foreground'),\n // A quantitative `color` field takes this ramp instead of the\n // categorical set. Without it flint synthesises `[black, series[0]]`,\n // which puts pure black at the low end in *both* schemes — invisible\n // cells on a dark surface.\n sequential: {\n stops: [token('accent'), token('chart-1')],\n space: 'lab',\n endpointsAgainstSurface: true,\n },\n },\n },\n },\n };\n};\n","import type { ChartAssemblyInput } from 'flint-chart';\nimport type { assembleVegaLite } from 'flint-chart/vegalite';\nimport type * as vega from 'vega';\nimport type * as vegaLite from 'vega-lite';\nimport type { Config, TopLevelSpec } from 'vega-lite';\n\n// The subset of the lazily imported modules the render pipeline needs. Kept as\n// a parameter (not module state) so the pipeline is unit-testable with a fake\n// runtime, without mocking dynamic imports.\nexport type FlintRuntime = {\n assembleVegaLite: typeof assembleVegaLite;\n vega: Pick<typeof vega, 'View' | 'parse'>;\n vegaLite: Pick<typeof vegaLite, 'compile'>;\n};\n\n/**\n * Compile a Flint `ChartAssemblyInput` to a static SVG string.\n *\n * - `assembleVegaLite` returns a Vega-Lite spec carrying `_`-prefixed internal\n * hint keys (`_width`, `_options`, `_transform`, …) that are not part of the\n * Vega-Lite schema — they are stripped before compiling.\n * - `config` (the scheme-following theme) rides the compile options; flint's\n * spec-side config sets no colours, so the two cannot conflict on merge.\n * - The Vega view renders headless (`renderer: 'none'`); nothing mounts to the\n * DOM, `toSVG()` is the only output.\n */\nexport const renderFlintSvg = async (\n runtime: FlintRuntime,\n input: ChartAssemblyInput,\n config: Config,\n): Promise<string> => {\n const assembled: Record<string, unknown> = runtime.assembleVegaLite(input);\n // `assembleVegaLite` is typed loosely upstream; once the hint keys are gone\n // the remainder is the Vega-Lite spec `compile` expects, which TypeScript\n // cannot see through the untyped boundary — hence the assertion.\n const vlSpec = Object.fromEntries(\n Object.entries(assembled).filter(([key]) => !key.startsWith('_')),\n ) as unknown as TopLevelSpec;\n const { spec } = runtime.vegaLite.compile(vlSpec, { config });\n const view = new runtime.vega.View(runtime.vega.parse(spec), { renderer: 'none' });\n try {\n await view.runAsync();\n return await view.toSVG();\n } finally {\n view.finalize();\n }\n};\n","import { useEffect, useState } from 'react';\nimport type { ReactNode } from 'react';\nimport type { ChartAssemblyInput } from 'flint-chart';\n\nimport { useThemeAttributes } from '../../components/ThemeProvider/useThemeAttributes';\nimport { ZoomableSvg } from '../../components/ZoomableSvg';\nimport { vegaTheme } from '../../vega/vegaTheme';\nimport { DiagramSkeleton } from '../DiagramShared/DiagramSkeleton';\nimport { DiagramSource } from '../DiagramShared/DiagramSource';\nimport { makeResponsive } from '../DiagramShared/svgTransforms';\n\nimport { withFlintSeriesPalette } from './flintTheme';\nimport type { FlintRuntime } from './renderFlintSvg';\nimport { renderFlintSvg } from './renderFlintSvg';\n\nlet runtimePromise: Promise<FlintRuntime> | null = null;\n\n// One memoized promise for the heavy chart stack (flint-chart + vega +\n// vega-lite), reset on failure so a transient chunk-load error can retry on the\n// next render — mirrors `getMermaid()` in `MermaidDiagram`.\nconst getFlintRuntime = (): Promise<FlintRuntime> => {\n if (!runtimePromise) {\n runtimePromise = Promise.all([\n import('flint-chart/vegalite'),\n import('vega'),\n import('vega-lite'),\n ])\n .then(([flint, vega, vegaLite]) => ({\n assembleVegaLite: flint.assembleVegaLite,\n vega,\n vegaLite,\n }))\n .catch((err) => {\n runtimePromise = null;\n throw err;\n });\n }\n return runtimePromise;\n};\n\nconst RENDER_DEBOUNCE_MS = 300;\n\n// No prefix of a JSON document parses, so while a ```flint fence streams in the\n// source is unparseable in exactly the same way a broken one is. Unparseable\n// source is treated as still-streaming (skeleton stays up) until it has been\n// unchanged this long — only then is it shown as raw source.\nconst PARSE_GRACE_MS = 1500;\n\n// Ceiling on the fence source, in characters. `JSON.parse` plus vega's compile\n// and layout are synchronous, so an oversized payload — a model dumping a raw\n// table into the block — would block the main thread and freeze the chat. The\n// prompt caps inline data at ~50 rows; this sits far above a legitimate spec of\n// that size while still refusing anything pathological.\nconst MAX_SOURCE_CHARS = 200_000;\n\n// Module-level SVG cache — persists across component remounts (e.g. tab switches\n// that cause React to remount the tree). The chart chrome colours are baked into\n// the markup, so the key is the code *plus* the theme key (scheme + brand): the\n// same spec is a different SVG under a different colour scheme or brand.\n// Values are stored already `makeResponsive`d, so the string identity is stable\n// and ZoomableSvg's sanitize memo never re-runs for an unchanged chart.\n//\n// Bounded, and evicted oldest-first: a vega SVG is mark-per-datum, so entries run\n// to hundreds of KB, and a long chat visits many distinct charts. `Map` iterates\n// in insertion order, so the first key is the oldest.\nconst MAX_CACHED_CHARTS = 24;\nconst svgCache = new Map<string, string>();\n\nconst cacheSvg = (key: string, svg: string): void => {\n // Overwriting an existing key adds no entry, so it must not evict one — two\n // instances of the same chart both missing the cache and both writing would\n // otherwise cost an unrelated chart its slot.\n if (!svgCache.has(key) && svgCache.size >= MAX_CACHED_CHARTS) {\n const oldest = svgCache.keys().next();\n if (!oldest.done) svgCache.delete(oldest.value);\n }\n svgCache.set(key, svg);\n};\n\nconst chartCacheKey = (code: string, themeKey: string): string => `${themeKey}\\n${code}`;\n\n// The theme half of a cache key — used to tell \"same theme, more source\" (a spec\n// still streaming) from a theme/brand switch, which must not keep a stale chart.\nconst prevThemeKeyOf = (key: string): string => key.slice(0, key.indexOf('\\n'));\n\ntype Props = {\n /** Raw source of a ```flint fence — a flint-chart `ChartAssemblyInput` as pure JSON\n * (`data.values` rows, optional `semantic_types`, and a `chart_spec` naming the\n * chartType and encodings). Rendered through the Vega-Lite backend. */\n code: string;\n /** Extra toolbar controls (e.g. an `ExportMenu`), forwarded to `ZoomableSvg`.\n * Receives the sanitized SVG. Omit to keep the default toolbar. */\n renderActions?: (safeSvg: string) => ReactNode;\n};\n\nexport const FlintChart = ({ code, renderActions }: Props) => {\n // Re-renders whenever the active colour scheme or brand changes, so the chart\n // chrome is re-rendered in the new palette instead of staying a light island\n // on a dark page — same contract as MermaidDiagram.\n const { scheme, cacheKey: themeKey } = useThemeAttributes();\n const cacheKey = chartCacheKey(code, themeKey);\n\n const [svg, setSvg] = useState<string | null>(() => svgCache.get(cacheKey) ?? null);\n const [renderFailed, setRenderFailed] = useState(false);\n\n // Synchronously reset stale state when the code or the theme changes, to avoid\n // a one-frame flash.\n //\n // A cache hit is applied immediately. On a miss the previous SVG is dropped\n // unless *only* the tail of the source grew — i.e. the same spec still\n // streaming in, where holding the last good chart avoids a skeleton flicker\n // between chunks. Anything else (a different spec, or a new theme/brand) must\n // clear: the colours are baked into the markup, so keeping it would show a\n // light chart on a dark page, and keeping a chart for a spec that is no longer\n // on screen is simply wrong.\n const [prevKey, setPrevKey] = useState(cacheKey);\n const [prevCode, setPrevCode] = useState(code);\n if (cacheKey !== prevKey) {\n const cached = svgCache.get(cacheKey);\n const sameThemeStillStreaming =\n themeKey === prevThemeKeyOf(prevKey) && code.startsWith(prevCode);\n setPrevKey(cacheKey);\n setPrevCode(code);\n if (cached) setSvg(cached);\n else if (!sameThemeStillStreaming) setSvg(null);\n setRenderFailed(false);\n }\n\n useEffect(() => {\n if (svgCache.has(cacheKey)) return;\n\n let cancelled = false;\n let graceTimer: ReturnType<typeof setTimeout> | undefined;\n\n const debounceTimer = setTimeout(() => {\n if (code.length > MAX_SOURCE_CHARS) {\n // Not a streaming artifact — a fence this size never becomes renderable,\n // so fail straight to the source instead of waiting out the grace period.\n console.error(\n `[FlintChart] source exceeds ${MAX_SOURCE_CHARS} characters (${code.length}); not rendering`,\n );\n setSvg(null);\n setRenderFailed(true);\n return;\n }\n\n let input: ChartAssemblyInput;\n try {\n input = JSON.parse(code);\n } catch (err) {\n // Likely a fence still streaming — declare failure (and log the parse\n // error) only if the code is still unchanged when the grace period ends.\n graceTimer = setTimeout(() => {\n console.debug('[FlintChart] source never became parseable JSON:', err);\n setSvg(null);\n setRenderFailed(true);\n }, PARSE_GRACE_MS - RENDER_DEBOUNCE_MS);\n return;\n }\n\n getFlintRuntime()\n .then(async (runtime) => {\n if (cancelled) return;\n // Theme resolved at render time, off the live CSS variables — the\n // scheme comes out of the same read as the cache key, so the palette\n // can never be resolved under one scheme and cached under the other.\n const svgOutput = makeResponsive(\n await renderFlintSvg(runtime, withFlintSeriesPalette(input, scheme), vegaTheme(scheme)),\n );\n if (cancelled) return;\n cacheSvg(cacheKey, svgOutput);\n setSvg(svgOutput);\n setRenderFailed(false);\n })\n .catch((err) => {\n if (cancelled) return;\n console.error('[FlintChart] render failed:', err);\n setSvg(null);\n setRenderFailed(true);\n });\n }, RENDER_DEBOUNCE_MS);\n\n return () => {\n cancelled = true;\n clearTimeout(debounceTimer);\n if (graceTimer) clearTimeout(graceTimer);\n };\n }, [cacheKey, code, scheme]);\n\n if (renderFailed) {\n return <DiagramSource code={code} />;\n }\n\n if (svg) {\n return (\n <ZoomableSvg\n // Keyed by the rendered SVG, not the source: while the same fence is\n // still streaming the chart is deliberately held (see above), and keying\n // on `code` would remount it on every chunk — dropping the reader's\n // zoom/pan and re-running the DOMPurify pass over an identical chart.\n key={svg}\n html={svg}\n copyText={`\\`\\`\\`flint\\n${code}\\n\\`\\`\\``}\n className=\"tw:my-3\"\n renderActions={renderActions}\n />\n );\n }\n\n return <DiagramSkeleton />;\n};\n"],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { BrandId,
|
|
1
|
+
import { BrandId, ColorScheme, ResolvedColorScheme, Theme, Tokens } from "./types-BPcAjMG0.js";
|
|
2
|
+
import { ChangeClassification, DiffChunk, FieldItemProps, MergeConflict } from "./FieldItem-vhIJW4pj.js";
|
|
2
3
|
import { LucideIcon } from "./index-m-kQEWiY.js";
|
|
3
4
|
import { Slot, Slot as Slot$1 } from "@radix-ui/react-slot";
|
|
4
5
|
import * as React$2 from "react";
|
|
@@ -4567,7 +4568,8 @@ declare const InlineStepLabel: ({ variant, children }: Props$2) => import("react
|
|
|
4567
4568
|
type Props$124 = {
|
|
4568
4569
|
/** Markdown source (GFM: tables, task lists, strikethrough, autolinks). Tables
|
|
4569
4570
|
* render through the design `Table`; fenced ```mermaid blocks render via
|
|
4570
|
-
* `MermaidDiagram`; other fenced blocks
|
|
4571
|
+
* `MermaidDiagram`; other fenced blocks — including ```flint, deliberately,
|
|
4572
|
+
* as this is the reduced-capability renderer — get a hover copy button. */
|
|
4571
4573
|
children: string;
|
|
4572
4574
|
className?: string;
|
|
4573
4575
|
};
|
|
@@ -5115,6 +5117,9 @@ type DotsLoaderProps = {
|
|
|
5115
5117
|
};
|
|
5116
5118
|
declare const DotsLoader: ({ className }: DotsLoaderProps) => import("react/jsx-runtime").JSX.Element;
|
|
5117
5119
|
//#endregion
|
|
5120
|
+
//#region src/blocks/DiagramShared/DiagramSkeleton.d.ts
|
|
5121
|
+
declare const DiagramSkeleton: () => import("react/jsx-runtime").JSX.Element;
|
|
5122
|
+
//#endregion
|
|
5118
5123
|
//#region src/components/Progress/Progress.d.ts
|
|
5119
5124
|
declare const variants$3: (props?: ({
|
|
5120
5125
|
variant?: "default" | "success" | null | undefined;
|
|
@@ -5161,8 +5166,22 @@ declare const PanelWithDetails: ({ defaultExpanded, labelCollapse, labelOpen, pl
|
|
|
5161
5166
|
* already full width.
|
|
5162
5167
|
*/
|
|
5163
5168
|
type AppShellHeaderSpan = 'content' | 'full';
|
|
5169
|
+
/**
|
|
5170
|
+
* The shell's grid areas, as stamped on each slot's `data-app-shell-slot`.
|
|
5171
|
+
*
|
|
5172
|
+
* - Pair it with `appShellSlotSelector` to target a slot from outside the shell.
|
|
5173
|
+
*/
|
|
5174
|
+
type AppShellSlot = 'header' | 'sidebar' | 'main' | 'aside';
|
|
5164
5175
|
//#endregion
|
|
5165
5176
|
//#region src/blocks/AppShell/AppShell.d.ts
|
|
5177
|
+
/**
|
|
5178
|
+
* Targets a shell slot from outside the shell.
|
|
5179
|
+
*
|
|
5180
|
+
* - Each slot component stamps `data-app-shell-slot` with its own name.
|
|
5181
|
+
* - Exported so a consumer never hand-types the attribute: renaming it then breaks the
|
|
5182
|
+
* build instead of silently matching nothing.
|
|
5183
|
+
*/
|
|
5184
|
+
declare const appShellSlotSelector: (slot: AppShellSlot) => string;
|
|
5166
5185
|
type RootProps$7 = ComponentPropsWithoutRef<'div'> & {
|
|
5167
5186
|
/**
|
|
5168
5187
|
* How far the header row stretches. `content` (default) gives it the middle
|
|
@@ -5182,6 +5201,24 @@ type SlotProps = ComponentPropsWithoutRef<'div'> & {
|
|
|
5182
5201
|
/** Render as the child element (Radix-Slot pattern), forwarding props onto it. */
|
|
5183
5202
|
asChild?: boolean;
|
|
5184
5203
|
};
|
|
5204
|
+
type MainProps = SlotProps & {
|
|
5205
|
+
/**
|
|
5206
|
+
* Classes for the padded content wrapper inside `Main`, where the page gutter lives.
|
|
5207
|
+
*
|
|
5208
|
+
* This is the one to reach for when overriding the gutter — `className` lands on the scroll
|
|
5209
|
+
* container, and a `p-*` there is what breaks every sticky header below it.
|
|
5210
|
+
*/
|
|
5211
|
+
contentClassName?: string;
|
|
5212
|
+
/**
|
|
5213
|
+
* Bounds the content wrapper to `Main`'s height instead of letting it grow with the content.
|
|
5214
|
+
*
|
|
5215
|
+
* - For a page that owns its `overflow-auto` scroller: a bounded wrapper is what gives a
|
|
5216
|
+
* `flex-1` descendant a definite height, so that descendant is what scrolls.
|
|
5217
|
+
* - Gives up the bottom-gutter guarantee below, so pair it with a gutter-free
|
|
5218
|
+
* `contentClassName`.
|
|
5219
|
+
*/
|
|
5220
|
+
clampContent?: boolean;
|
|
5221
|
+
};
|
|
5185
5222
|
type ChromeSlotProps = SlotProps & {
|
|
5186
5223
|
/**
|
|
5187
5224
|
* Drop the slot's own padding, background and border so a hosted chrome component
|
|
@@ -5201,7 +5238,7 @@ declare const Header$1: ({ ref, className, asChild, flush, children, ...props }:
|
|
|
5201
5238
|
declare const SidebarSlot$1: ({ ref, className, asChild, children, ...props }: SlotProps & {
|
|
5202
5239
|
ref?: Ref<ComponentRef<'div'>>;
|
|
5203
5240
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
5204
|
-
declare const Main: ({ ref, className, asChild, children, ...props }:
|
|
5241
|
+
declare const Main: ({ ref, className, contentClassName, clampContent, asChild, children, ...props }: MainProps & {
|
|
5205
5242
|
ref?: Ref<ComponentRef<'main'>>;
|
|
5206
5243
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
5207
5244
|
declare const Aside: ({ ref, className, asChild, flush, children, ...props }: ChromeSlotProps & {
|
|
@@ -5240,9 +5277,14 @@ declare const AppShell: typeof Root$16 & {
|
|
|
5240
5277
|
*/
|
|
5241
5278
|
Sidebar: typeof SidebarSlot$1;
|
|
5242
5279
|
/**
|
|
5243
|
-
* Main content outlet.
|
|
5244
|
-
*
|
|
5245
|
-
*
|
|
5280
|
+
* Main content outlet. Scrolls its own content, and applies an opinionated
|
|
5281
|
+
* default page gutter (`tw:p-6`) on a wrapper inside the scroll container.
|
|
5282
|
+
*
|
|
5283
|
+
* - Override the gutter through `contentClassName` (e.g. `tw:p-0`) when the
|
|
5284
|
+
* app owns its own.
|
|
5285
|
+
* - `className` lands on the scroll container itself — a `p-*` there parks
|
|
5286
|
+
* every `position: sticky` descendant one gutter below the scrollport's
|
|
5287
|
+
* visible top edge.
|
|
5246
5288
|
*/
|
|
5247
5289
|
Main: typeof Main;
|
|
5248
5290
|
/** Optional right rail. Present in both shells. */
|
|
@@ -7008,5 +7050,5 @@ declare const contrastRatio: (fg: string, bg: string) => number;
|
|
|
7008
7050
|
/** WCAG level for normal-size text at a given ratio. */
|
|
7009
7051
|
declare const wcagLevel: (ratio: number) => 'AAA' | 'AA' | 'fail';
|
|
7010
7052
|
//#endregion
|
|
7011
|
-
export { Alert, AlertModal, AnswerSummary, type AnswerItem as AnswerSummaryItem, type Props as AnswerSummaryProps, type Variant as AnswerSummaryVariant, AppShell, type AppShellHeaderSpan, ArgoDesignContext, AutoSaveTextarea, Avatar, Badge, type Brand, BrandEditor, type BrandEditorProps, BrandId, BrandLogo, Breadcrumb, Button, ButtonGroup, ButtonInline, Calendar, type CalendarProps, Card, type ChangeClassification, ChartPanel, type RootProps as ChartPanelProps, Checkbox, Clipboard, ClipboardButton, ClipboardInline, Collapsible, CollapsiblePanel, CollapsibleStepHeader, ColorInput, ColorModeSwitch, ColorScheme, type ColorSlot, Combobox, Command, CommandGroup, CommandInput, CommandItem, CommandList, ConflictStatusIndicator, CopyField, DEFAULT_COLOR_SCHEME, DEFAULT_FALLBACK_FONT, DEFAULT_FONT_OPTIONS, DEFAULT_BRAND_ID as DEFAULT_KEBOOLA_BRAND_ID, DEFAULT_WORKBENCH_BAR_HEIGHT_IN_REM, DEFAULT_WORKBENCH_PANEL_HEIGHT_IN_PX, DashboardHero, type RootProps$1 as DashboardHeroProps, DateInput, DatePicker, type DateRange, DateRangeInput, DateRangePicker, type DateRangePreset, type DiffChunk, type DiffInformation, type DiffRow, DiffType, DiffView, DotsLoader, DropdownMenu, EmptyConfigurationActionCard, EmptySearchContent, EmptyState, type RootProps$2 as EmptyStateProps, type Variant$1 as EmptyStateVariant, ErrorState, type RootProps$3 as ErrorStateProps, type Variant$2 as ErrorStateVariant, ExportMenu, ExportMenuItem, FileUpload, type FileUploadAccept, type FileUploadRejection, type FileUploadRejectionCode, FormGroup, FullScreenModal, FullScreenModalBody, FullScreenModalHeader, GoogleButton, HelpBlock, HoverCard, InlineStepDetail, type Props$1 as InlineStepDetailProps, InlineStepLabel, type Props$2 as InlineStepLabelProps, type Variant$3 as InlineStepLabelVariant, InputGroup, Kbd, Label, type LineInformation, Link, MIN_WORKBENCH_PANEL_HEIGHT_IN_PX, Markdown, MarkedText, type MergeConflict, MessageBubble, MicrosoftButton, Modal, MultiActionButtonGroup, MultiCombobox, MultiComboboxField, Navbar, NumberInput, OtpInput, type RootProps$4 as OtpInputProps, type OtpInputRenderSlotProps, PageHeader, PageLayout, PageToolbar, Pagination, PaneHeader, type PanelImperativeHandle, PanelWithDetails, PasswordInput, PlanApproval, type PlanApprovalProps, type PlanApprovalStatus, PlanRewritingIndicator, type PlanRewritingIndicatorProps, Popconfirm, Popover, Progress, type PromptCommand, PromptInput, Props$3 as Props, Question, type QuestionAnswers, QuestionBlock, type Props$4 as QuestionBlockProps, type QuestionOption, type Props$5 as QuestionProps, type QuestionStep, REGEXP_ONLY_CHARS, REGEXP_ONLY_DIGITS, REGEXP_ONLY_DIGITS_AND_CHARS, RadioGroup, type RadiusSize, ResizableHandle, ResizablePanel, ResizablePanelGroup, ResolvedColorScheme, ScrollArea, ScrollBar, Search, SearchForm, SearchInput, SearchInputWithNavigation, SectionNav, type SectionNavGroup, type SectionNavItem, type SectionNavItemRenderProps, Select, SelectItem, SelectItemGroup, Separator, type ServerFieldError, Sheet, type SideInformation, Sidebar, type SidebarMode, SidebarProvider, type SidebarSide, type SidebarSlot, Skeleton, SkeletonList, Slider, Slot, SplitButton, SpotlightBackdrop, SpotlightTarget, StatCard, StatCardGrid, type Props$6 as StatCardGridProps, type RootProps$5 as StatCardProps, type TrendDirection as StatCardTrendDirection, type TrendProps as StatCardTrendProps, type StepStatus, Stepper, type StepperOrientation, SuggestedPrompt, Switch, Table, type TableSortDirection, Tabs, TabsContent, TargetRect, TextInput, Textarea, Theme, ThemeProvider, ThinkingIndicator, ThumbTooltipFn, TimeInput, TimePicker, Timeline, type ToastOptions, Toaster, Toggle, ToggleGroup, Tokens, ToolCallApproval, type ToolCallApprovalProps, type ToolCallApprovalStatus, ToolCallChip, type ToolCallChipProps, type ToolCallState, Tooltip, type Props$7 as TooltipProps, TooltipProvider, type Trigger, Truncated, UsageStats, UsageStatsRing, UseAutosizeInputOptions, UseAutosizeInputReturn, type ValidityState, type WordInformation, Workbench, type WorkbenchState, ZoomableSvg, argoVariants, brandSchema, channelsToHex, cn, computeDiffRows, computeLineInformation, contrastRatio, copyToClipboard, defaultFilter, exampleCustomer, hexToChannels, isMac, kbdVariants, keboola, keboolaLegacySidebar, keboolaLegacyTopnav, keys, mergeRefs, setServerFieldErrors, setSubmitError, svgToPngBlob, tableAriaSort, toSvgFileContent, toast, useAppForm, useArgoDesign, useAutosizeInput, useCommandState, useDefaultLayout, useFileDropTarget, useFileUploadRejections, useMergeDiff, useNotification, useOptionalSidebar, useScrollbarPosition, useSidebar, useStableCallback, useTargetRect, useTheme, useWorkbench, wcagLevel, withForm };
|
|
7053
|
+
export { Alert, AlertModal, AnswerSummary, type AnswerItem as AnswerSummaryItem, type Props as AnswerSummaryProps, type Variant as AnswerSummaryVariant, AppShell, type AppShellHeaderSpan, type AppShellSlot, ArgoDesignContext, AutoSaveTextarea, Avatar, Badge, type Brand, BrandEditor, type BrandEditorProps, BrandId, BrandLogo, Breadcrumb, Button, ButtonGroup, ButtonInline, Calendar, type CalendarProps, Card, type ChangeClassification, ChartPanel, type RootProps as ChartPanelProps, Checkbox, Clipboard, ClipboardButton, ClipboardInline, Collapsible, CollapsiblePanel, CollapsibleStepHeader, ColorInput, ColorModeSwitch, ColorScheme, type ColorSlot, Combobox, Command, CommandGroup, CommandInput, CommandItem, CommandList, ConflictStatusIndicator, CopyField, DEFAULT_COLOR_SCHEME, DEFAULT_FALLBACK_FONT, DEFAULT_FONT_OPTIONS, DEFAULT_BRAND_ID as DEFAULT_KEBOOLA_BRAND_ID, DEFAULT_WORKBENCH_BAR_HEIGHT_IN_REM, DEFAULT_WORKBENCH_PANEL_HEIGHT_IN_PX, DashboardHero, type RootProps$1 as DashboardHeroProps, DateInput, DatePicker, type DateRange, DateRangeInput, DateRangePicker, type DateRangePreset, DiagramSkeleton, type DiffChunk, type DiffInformation, type DiffRow, DiffType, DiffView, DotsLoader, DropdownMenu, EmptyConfigurationActionCard, EmptySearchContent, EmptyState, type RootProps$2 as EmptyStateProps, type Variant$1 as EmptyStateVariant, ErrorState, type RootProps$3 as ErrorStateProps, type Variant$2 as ErrorStateVariant, ExportMenu, ExportMenuItem, FileUpload, type FileUploadAccept, type FileUploadRejection, type FileUploadRejectionCode, FormGroup, FullScreenModal, FullScreenModalBody, FullScreenModalHeader, GoogleButton, HelpBlock, HoverCard, InlineStepDetail, type Props$1 as InlineStepDetailProps, InlineStepLabel, type Props$2 as InlineStepLabelProps, type Variant$3 as InlineStepLabelVariant, InputGroup, Kbd, Label, type LineInformation, Link, MIN_WORKBENCH_PANEL_HEIGHT_IN_PX, Markdown, MarkedText, type MergeConflict, MessageBubble, MicrosoftButton, Modal, MultiActionButtonGroup, MultiCombobox, MultiComboboxField, Navbar, NumberInput, OtpInput, type RootProps$4 as OtpInputProps, type OtpInputRenderSlotProps, PageHeader, PageLayout, PageToolbar, Pagination, PaneHeader, type PanelImperativeHandle, PanelWithDetails, PasswordInput, PlanApproval, type PlanApprovalProps, type PlanApprovalStatus, PlanRewritingIndicator, type PlanRewritingIndicatorProps, Popconfirm, Popover, Progress, type PromptCommand, PromptInput, Props$3 as Props, Question, type QuestionAnswers, QuestionBlock, type Props$4 as QuestionBlockProps, type QuestionOption, type Props$5 as QuestionProps, type QuestionStep, REGEXP_ONLY_CHARS, REGEXP_ONLY_DIGITS, REGEXP_ONLY_DIGITS_AND_CHARS, RadioGroup, type RadiusSize, ResizableHandle, ResizablePanel, ResizablePanelGroup, ResolvedColorScheme, ScrollArea, ScrollBar, Search, SearchForm, SearchInput, SearchInputWithNavigation, SectionNav, type SectionNavGroup, type SectionNavItem, type SectionNavItemRenderProps, Select, SelectItem, SelectItemGroup, Separator, type ServerFieldError, Sheet, type SideInformation, Sidebar, type SidebarMode, SidebarProvider, type SidebarSide, type SidebarSlot, Skeleton, SkeletonList, Slider, Slot, SplitButton, SpotlightBackdrop, SpotlightTarget, StatCard, StatCardGrid, type Props$6 as StatCardGridProps, type RootProps$5 as StatCardProps, type TrendDirection as StatCardTrendDirection, type TrendProps as StatCardTrendProps, type StepStatus, Stepper, type StepperOrientation, SuggestedPrompt, Switch, Table, type TableSortDirection, Tabs, TabsContent, TargetRect, TextInput, Textarea, Theme, ThemeProvider, ThinkingIndicator, ThumbTooltipFn, TimeInput, TimePicker, Timeline, type ToastOptions, Toaster, Toggle, ToggleGroup, Tokens, ToolCallApproval, type ToolCallApprovalProps, type ToolCallApprovalStatus, ToolCallChip, type ToolCallChipProps, type ToolCallState, Tooltip, type Props$7 as TooltipProps, TooltipProvider, type Trigger, Truncated, UsageStats, UsageStatsRing, UseAutosizeInputOptions, UseAutosizeInputReturn, type ValidityState, type WordInformation, Workbench, type WorkbenchState, ZoomableSvg, appShellSlotSelector, argoVariants, brandSchema, channelsToHex, cn, computeDiffRows, computeLineInformation, contrastRatio, copyToClipboard, defaultFilter, exampleCustomer, hexToChannels, isMac, kbdVariants, keboola, keboolaLegacySidebar, keboolaLegacyTopnav, keys, mergeRefs, setServerFieldErrors, setSubmitError, svgToPngBlob, tableAriaSort, toSvgFileContent, toast, useAppForm, useArgoDesign, useAutosizeInput, useCommandState, useDefaultLayout, useFileDropTarget, useFileUploadRejections, useMergeDiff, useNotification, useOptionalSidebar, useScrollbarPosition, useSidebar, useStableCallback, useTargetRect, useTheme, useWorkbench, wcagLevel, withForm };
|
|
7012
7054
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
CHANGED
|
@@ -1,76 +1,78 @@
|
|
|
1
1
|
import { cn } from "./classNames-BzrkDnOD.js";
|
|
2
|
-
import { Tooltip, TooltipProvider, copyToClipboard, isMac } from "./utils-
|
|
3
|
-
import {
|
|
2
|
+
import { Tooltip, TooltipProvider, copyToClipboard, isMac } from "./utils-B-g7d_Jb.js";
|
|
3
|
+
import { DEFAULT_BRAND_ID, DEFAULT_COLOR_SCHEME } from "./defaults-CTfvj2KB.js";
|
|
4
|
+
import { ArgoDesignContext, useArgoDesign, useTheme } from "./context-BrNtMc1H.js";
|
|
4
5
|
import { mergeRefs } from "./internal/utils/mergeRefs.js";
|
|
5
|
-
import { Button, ButtonInline, argoVariants } from "./Button-
|
|
6
|
+
import { Button, ButtonInline, argoVariants } from "./Button-CPsEQuTN.js";
|
|
6
7
|
import { ButtonGroup } from "./internal/components/ButtonGroup.js";
|
|
7
|
-
import { DropdownMenu } from "./DropdownMenu-
|
|
8
|
+
import { DropdownMenu } from "./DropdownMenu-DpMEcyCq.js";
|
|
8
9
|
import { ScrollArea, ScrollBar } from "./internal/components/ScrollArea.js";
|
|
9
10
|
import { SplitButton } from "./internal/blocks/SplitButton.js";
|
|
10
|
-
import { MultiActionButtonGroup } from "./MultiActionButtonGroup-
|
|
11
|
+
import { MultiActionButtonGroup } from "./MultiActionButtonGroup-GTeFk-L8.js";
|
|
11
12
|
import { Toggle } from "./internal/components/Toggle.js";
|
|
12
13
|
import { ToggleGroup } from "./ToggleGroup-Cy_10Mvu.js";
|
|
13
|
-
import { Clipboard } from "./Clipboard-
|
|
14
|
-
import { ClipboardButton, ClipboardInline } from "./ClipboardButton-
|
|
14
|
+
import { Clipboard } from "./Clipboard-B7rckqV_.js";
|
|
15
|
+
import { ClipboardButton, ClipboardInline } from "./ClipboardButton-CQ6Aewpg.js";
|
|
15
16
|
import { ExportMenu } from "./internal/blocks/ExportMenu.js";
|
|
16
|
-
import { CopyField } from "./CopyField-
|
|
17
|
+
import { CopyField } from "./CopyField-DI66uY_g.js";
|
|
17
18
|
import { Label } from "./internal/components/Label.js";
|
|
18
19
|
import { MicrosoftButton } from "./internal/blocks/MicrosoftButton.js";
|
|
19
20
|
import { GoogleButton } from "./internal/blocks/GoogleButton.js";
|
|
20
21
|
import { Link } from "./internal/components/Link.js";
|
|
21
|
-
import { AlertModal } from "./AlertModal-
|
|
22
|
-
import { Modal } from "./Modal-
|
|
22
|
+
import { AlertModal } from "./AlertModal-DQAGpsEy.js";
|
|
23
|
+
import { Modal } from "./Modal-o4ATIexE.js";
|
|
23
24
|
import { Separator } from "./internal/components/Separator.js";
|
|
24
|
-
import { FullScreenModal, FullScreenModalBody, FullScreenModalHeader } from "./FullScreenModal-
|
|
25
|
+
import { FullScreenModal, FullScreenModalBody, FullScreenModalHeader } from "./FullScreenModal-j-M4aPFd.js";
|
|
25
26
|
import { Truncated } from "./internal/components/Truncated.js";
|
|
26
|
-
import { Sheet } from "./Sheet-
|
|
27
|
-
import { Popover } from "./Popover-
|
|
28
|
-
import { Popconfirm } from "./Popconfirm-
|
|
29
|
-
import { HoverCard } from "./HoverCard-
|
|
30
|
-
import { Command, CommandGroup, CommandInput, CommandItem, CommandList, defaultFilter, useCommandState } from "./Command-
|
|
31
|
-
import { InputGroup } from "./InputGroup-
|
|
32
|
-
import { TextInput } from "./TextInput-
|
|
27
|
+
import { Sheet } from "./Sheet-BIzs2K2H.js";
|
|
28
|
+
import { Popover } from "./Popover-DsbI2HKu.js";
|
|
29
|
+
import { Popconfirm } from "./Popconfirm-C2Ky5hJO.js";
|
|
30
|
+
import { HoverCard } from "./HoverCard-yQq-O49c.js";
|
|
31
|
+
import { Command, CommandGroup, CommandInput, CommandItem, CommandList, defaultFilter, useCommandState } from "./Command-Ds68v2rX.js";
|
|
32
|
+
import { InputGroup } from "./InputGroup-D7zlmqPB.js";
|
|
33
|
+
import { TextInput } from "./TextInput-DhdRk8qm.js";
|
|
33
34
|
import { SpotlightBackdrop, useTargetRect } from "./internal/components/SpotlightBackdrop.js";
|
|
34
35
|
import { Calendar } from "./Calendar-cG5NIJ4O.js";
|
|
35
|
-
import { DatePicker } from "./DatePicker-
|
|
36
|
-
import { TimePicker } from "./TimePicker-
|
|
37
|
-
import { DateRangePicker } from "./DateRangePicker-
|
|
38
|
-
import { Switch } from "./Switch-
|
|
39
|
-
import { RadioGroup } from "./RadioGroup-
|
|
40
|
-
import { Slider } from "./Slider-
|
|
41
|
-
import { Search, SearchForm } from "./Search-
|
|
42
|
-
import { Select } from "./Select-
|
|
43
|
-
import { Checkbox } from "./Checkbox-
|
|
36
|
+
import { DatePicker } from "./DatePicker-DyEGuW9m.js";
|
|
37
|
+
import { TimePicker } from "./TimePicker-B6d2rAbX.js";
|
|
38
|
+
import { DateRangePicker } from "./DateRangePicker-CYYhX6S7.js";
|
|
39
|
+
import { Switch } from "./Switch-BueTV03C.js";
|
|
40
|
+
import { RadioGroup } from "./RadioGroup-BMxuZEbT.js";
|
|
41
|
+
import { Slider } from "./Slider-CjxyfEty.js";
|
|
42
|
+
import { Search, SearchForm } from "./Search-DFeECt5D.js";
|
|
43
|
+
import { Select } from "./Select-D6IZVvwL.js";
|
|
44
|
+
import { Checkbox } from "./Checkbox-5VNCcV7E.js";
|
|
44
45
|
import { Badge } from "./Badge-Ch26CXoP.js";
|
|
45
|
-
import { Combobox } from "./Combobox-
|
|
46
|
+
import { Combobox } from "./Combobox-CyoRA7oY.js";
|
|
46
47
|
import { MultiCombobox } from "./internal/blocks/MultiCombobox.js";
|
|
47
|
-
import { FormGroup } from "./FormGroup-
|
|
48
|
-
import { ColorInput } from "./ColorInput-
|
|
48
|
+
import { FormGroup } from "./FormGroup-BnwP0jNu.js";
|
|
49
|
+
import { ColorInput } from "./ColorInput-Q1D9Vcc_.js";
|
|
49
50
|
import { HelpBlock } from "./internal/components/HelpBlock.js";
|
|
50
51
|
import { NumberInput } from "./internal/blocks/NumberInput.js";
|
|
51
52
|
import { Textarea } from "./internal/blocks/Textarea.js";
|
|
52
53
|
import { MultiComboboxField } from "./internal/blocks/Form/connectors/MultiComboboxField.js";
|
|
53
54
|
import { AutoSaveTextarea } from "./AutoSaveTextarea-BeuWuszr.js";
|
|
54
|
-
import { ColorModeSwitch } from "./ColorModeSwitch-
|
|
55
|
-
import { DateInput } from "./DateInput-
|
|
55
|
+
import { ColorModeSwitch } from "./ColorModeSwitch-B5PXCVqB.js";
|
|
56
|
+
import { DateInput } from "./DateInput-BPj2pzsn.js";
|
|
56
57
|
import { PasswordInput } from "./internal/blocks/PasswordInput.js";
|
|
57
58
|
import { TimeInput } from "./internal/blocks/TimeInput.js";
|
|
58
|
-
import { DateRangeInput } from "./DateRangeInput-
|
|
59
|
+
import { DateRangeInput } from "./DateRangeInput-u9DxNbHW.js";
|
|
59
60
|
import { OtpInput, REGEXP_ONLY_CHARS, REGEXP_ONLY_DIGITS, REGEXP_ONLY_DIGITS_AND_CHARS } from "./OtpInput-CbbymqYs.js";
|
|
60
|
-
import { SearchInput } from "./SearchInput-
|
|
61
|
+
import { SearchInput } from "./SearchInput-CCpdUego.js";
|
|
61
62
|
import { SearchInputWithNavigation } from "./internal/blocks/SearchInputWithNavigation.js";
|
|
62
|
-
import { FileUpload, useFileDropTarget, useFileUploadRejections } from "./FileUpload-
|
|
63
|
-
import { AnswerSummary, CollapsibleStepHeader, InlineStepDetail, InlineStepLabel, Markdown, MessageBubble, PlanApproval, PlanRewritingIndicator, PromptInput, Question, QuestionBlock, SuggestedPrompt, ThinkingIndicator, ToolCallApproval, ToolCallChip, UsageStats, UsageStatsRing } from "./AIKit-
|
|
63
|
+
import { FileUpload, useFileDropTarget, useFileUploadRejections } from "./FileUpload-C336MVnU.js";
|
|
64
|
+
import { AnswerSummary, CollapsibleStepHeader, InlineStepDetail, InlineStepLabel, Markdown, MessageBubble, PlanApproval, PlanRewritingIndicator, PromptInput, Question, QuestionBlock, SuggestedPrompt, ThinkingIndicator, ToolCallApproval, ToolCallChip, UsageStats, UsageStatsRing } from "./AIKit-DaFT7p92.js";
|
|
64
65
|
import { Table, tableAriaSort } from "./Table-CvYuTuNU.js";
|
|
65
66
|
import { Skeleton } from "./internal/components/Skeleton/Skeleton.js";
|
|
67
|
+
import { DiagramSkeleton } from "./internal/blocks/DiagramShared/DiagramSkeleton.js";
|
|
66
68
|
import { Avatar } from "./internal/components/Avatar.js";
|
|
67
69
|
import { Progress } from "./internal/components/Progress.js";
|
|
68
70
|
import { Collapsible } from "./Collapsible-BQXWEOBC.js";
|
|
69
|
-
import { Alert } from "./Alert-
|
|
70
|
-
import { toast } from "./toast-
|
|
71
|
-
import { Toaster, useNotification } from "./Toast-
|
|
71
|
+
import { Alert } from "./Alert-CseY3yAj.js";
|
|
72
|
+
import { toast } from "./toast-BweSoKn3.js";
|
|
73
|
+
import { Toaster, useNotification } from "./Toast-CxXUulYN.js";
|
|
72
74
|
import { EmptySearchContent } from "./internal/components/EmptySearchContent.js";
|
|
73
|
-
import { Card } from "./Card-
|
|
75
|
+
import { Card } from "./Card-Cd5HSBmv.js";
|
|
74
76
|
import { EmptyConfigurationActionCard } from "./internal/blocks/EmptyConfigurationActionCard.js";
|
|
75
77
|
import { EmptyState } from "./internal/blocks/EmptyState.js";
|
|
76
78
|
import { ErrorState } from "./internal/blocks/ErrorState.js";
|
|
@@ -78,25 +80,25 @@ import { SkeletonList } from "./internal/components/Skeleton/SkeletonList.js";
|
|
|
78
80
|
import { DotsLoader } from "./internal/components/DotsLoader.js";
|
|
79
81
|
import { CollapsiblePanel } from "./internal/components/CollapsiblePanel.js";
|
|
80
82
|
import { PanelWithDetails } from "./internal/components/PanelWithDetails.js";
|
|
81
|
-
import { ThemeProvider, brandSchema, exampleCustomer, keboola, keboolaLegacySidebar, keboolaLegacyTopnav } from "./ThemeProvider-
|
|
82
|
-
import { AppShell } from "./AppShell-
|
|
83
|
+
import { ThemeProvider, brandSchema, exampleCustomer, keboola, keboolaLegacySidebar, keboolaLegacyTopnav } from "./ThemeProvider-DZfGdf1v.js";
|
|
84
|
+
import { AppShell, appShellSlotSelector } from "./AppShell-BUoxM3fv.js";
|
|
83
85
|
import { PageLayout } from "./PageLayout-DSVM-ASz.js";
|
|
84
86
|
import { PageHeader } from "./PageHeader-Q3IpCnQd.js";
|
|
85
|
-
import { PageToolbar } from "./PageToolbar-
|
|
86
|
-
import { SectionNav } from "./SectionNav-
|
|
87
|
-
import { BrandLogo } from "./BrandLogo-
|
|
87
|
+
import { PageToolbar } from "./PageToolbar-bG2YtSa3.js";
|
|
88
|
+
import { SectionNav } from "./SectionNav-Bw_MVL0_.js";
|
|
89
|
+
import { BrandLogo } from "./BrandLogo-V2pRUAeO.js";
|
|
88
90
|
import { ResizableHandle, ResizablePanel, ResizablePanelGroup, useDefaultLayout } from "./Resizable-D3vYToZH.js";
|
|
89
|
-
import { Sidebar, SidebarProvider, useOptionalSidebar, useSidebar } from "./Sidebar-
|
|
91
|
+
import { Sidebar, SidebarProvider, useOptionalSidebar, useSidebar } from "./Sidebar-r1TW4g_b.js";
|
|
90
92
|
import { useScrollbarPosition } from "./internal/hooks/useScrollbarPosition.js";
|
|
91
|
-
import { Navbar } from "./Navbar-
|
|
93
|
+
import { Navbar } from "./Navbar-CAQs4BZz.js";
|
|
92
94
|
import { DEFAULT_WORKBENCH_BAR_HEIGHT_IN_REM, DEFAULT_WORKBENCH_PANEL_HEIGHT_IN_PX, MIN_WORKBENCH_PANEL_HEIGHT_IN_PX, Workbench, useWorkbench } from "./Workbench-BzE-Vvd9.js";
|
|
93
|
-
import { Breadcrumb } from "./Breadcrumb-
|
|
94
|
-
import { Tabs, TabsContent } from "./Tabs-
|
|
95
|
+
import { Breadcrumb } from "./Breadcrumb-CQTPn_KB.js";
|
|
96
|
+
import { Tabs, TabsContent } from "./Tabs-l72-WuhK.js";
|
|
95
97
|
import { Stepper } from "./Stepper-C8sm9ZFM.js";
|
|
96
98
|
import { Timeline } from "./Timeline-6btyJl4D.js";
|
|
97
99
|
import { MarkedText } from "./MarkedText-Ckbft5mw.js";
|
|
98
|
-
import { Kbd, kbdVariants, keys } from "./Kbd-
|
|
99
|
-
import { Pagination } from "./Pagination-
|
|
100
|
+
import { Kbd, kbdVariants, keys } from "./Kbd-D6LpR7G2.js";
|
|
101
|
+
import { Pagination } from "./Pagination-BB3X7ooY.js";
|
|
100
102
|
import { DiffType, DiffView, computeDiffRows, computeLineInformation } from "./DiffView-ppTIzh2h.js";
|
|
101
103
|
import { PaneHeader } from "./internal/components/MergeEditor/PaneHeader.js";
|
|
102
104
|
import { ConflictStatusIndicator } from "./internal/components/MergeEditor/ConflictStatus/ConflictStatusIndicator.js";
|
|
@@ -104,10 +106,10 @@ import { useMergeDiff } from "./useMergeDiff-CvowEXJ1.js";
|
|
|
104
106
|
import { DashboardHero } from "./internal/blocks/DashboardHero.js";
|
|
105
107
|
import { StatCard, StatCardGrid } from "./internal/blocks/StatCard.js";
|
|
106
108
|
import { ChartPanel } from "./internal/blocks/ChartPanel.js";
|
|
107
|
-
import { setServerFieldErrors, setSubmitError, useAppForm, withForm } from "./Form-
|
|
109
|
+
import { setServerFieldErrors, setSubmitError, useAppForm, withForm } from "./Form-CTygENDc.js";
|
|
108
110
|
import { useAutosizeInput } from "./internal/hooks/useAutosizeInput.js";
|
|
109
111
|
import { useStableCallback } from "./internal/hooks/useStableCallback.js";
|
|
110
|
-
import { ZoomableSvg, svgToPngBlob, toSvgFileContent } from "./ZoomableSvg-
|
|
111
|
-
import { BrandEditor, DEFAULT_FALLBACK_FONT, DEFAULT_FONT_OPTIONS, channelsToHex, contrastRatio, hexToChannels, wcagLevel } from "./BrandEditor-
|
|
112
|
+
import { ZoomableSvg, svgToPngBlob, toSvgFileContent } from "./ZoomableSvg-CNIzRHKH.js";
|
|
113
|
+
import { BrandEditor, DEFAULT_FALLBACK_FONT, DEFAULT_FONT_OPTIONS, channelsToHex, contrastRatio, hexToChannels, wcagLevel } from "./BrandEditor-BnTLMRMp.js";
|
|
112
114
|
import { Slot } from "@radix-ui/react-slot";
|
|
113
|
-
export { Alert, AlertModal, AnswerSummary, AppShell, ArgoDesignContext, AutoSaveTextarea, Avatar, Badge, BrandEditor, BrandLogo, Breadcrumb, Button, ButtonGroup, ButtonInline, Calendar, Card, ChartPanel, Checkbox, Clipboard, ClipboardButton, ClipboardInline, Collapsible, CollapsiblePanel, CollapsibleStepHeader, ColorInput, ColorModeSwitch, Combobox, Command, CommandGroup, CommandInput, CommandItem, CommandList, ConflictStatusIndicator, CopyField, DEFAULT_COLOR_SCHEME, DEFAULT_FALLBACK_FONT, DEFAULT_FONT_OPTIONS, DEFAULT_BRAND_ID as DEFAULT_KEBOOLA_BRAND_ID, DEFAULT_WORKBENCH_BAR_HEIGHT_IN_REM, DEFAULT_WORKBENCH_PANEL_HEIGHT_IN_PX, DashboardHero, DateInput, DatePicker, DateRangeInput, DateRangePicker, DiffType, DiffView, DotsLoader, DropdownMenu, EmptyConfigurationActionCard, EmptySearchContent, EmptyState, ErrorState, ExportMenu, FileUpload, FormGroup, FullScreenModal, FullScreenModalBody, FullScreenModalHeader, GoogleButton, HelpBlock, HoverCard, InlineStepDetail, InlineStepLabel, InputGroup, Kbd, Label, Link, MIN_WORKBENCH_PANEL_HEIGHT_IN_PX, Markdown, MarkedText, MessageBubble, MicrosoftButton, Modal, MultiActionButtonGroup, MultiCombobox, MultiComboboxField, Navbar, NumberInput, OtpInput, PageHeader, PageLayout, PageToolbar, Pagination, PaneHeader, PanelWithDetails, PasswordInput, PlanApproval, PlanRewritingIndicator, Popconfirm, Popover, Progress, PromptInput, Question, QuestionBlock, REGEXP_ONLY_CHARS, REGEXP_ONLY_DIGITS, REGEXP_ONLY_DIGITS_AND_CHARS, RadioGroup, ResizableHandle, ResizablePanel, ResizablePanelGroup, ScrollArea, ScrollBar, Search, SearchForm, SearchInput, SearchInputWithNavigation, SectionNav, Select, Separator, Sheet, Sidebar, SidebarProvider, Skeleton, SkeletonList, Slider, Slot, SplitButton, SpotlightBackdrop, StatCard, StatCardGrid, Stepper, SuggestedPrompt, Switch, Table, Tabs, TabsContent, TextInput, Textarea, ThemeProvider, ThinkingIndicator, TimeInput, TimePicker, Timeline, Toaster, Toggle, ToggleGroup, ToolCallApproval, ToolCallChip, Tooltip, TooltipProvider, Truncated, UsageStats, UsageStatsRing, Workbench, ZoomableSvg, argoVariants, brandSchema, channelsToHex, cn, computeDiffRows, computeLineInformation, contrastRatio, copyToClipboard, defaultFilter, exampleCustomer, hexToChannels, isMac, kbdVariants, keboola, keboolaLegacySidebar, keboolaLegacyTopnav, keys, mergeRefs, setServerFieldErrors, setSubmitError, svgToPngBlob, tableAriaSort, toSvgFileContent, toast, useAppForm, useArgoDesign, useAutosizeInput, useCommandState, useDefaultLayout, useFileDropTarget, useFileUploadRejections, useMergeDiff, useNotification, useOptionalSidebar, useScrollbarPosition, useSidebar, useStableCallback, useTargetRect, useTheme, useWorkbench, wcagLevel, withForm };
|
|
115
|
+
export { Alert, AlertModal, AnswerSummary, AppShell, ArgoDesignContext, AutoSaveTextarea, Avatar, Badge, BrandEditor, BrandLogo, Breadcrumb, Button, ButtonGroup, ButtonInline, Calendar, Card, ChartPanel, Checkbox, Clipboard, ClipboardButton, ClipboardInline, Collapsible, CollapsiblePanel, CollapsibleStepHeader, ColorInput, ColorModeSwitch, Combobox, Command, CommandGroup, CommandInput, CommandItem, CommandList, ConflictStatusIndicator, CopyField, DEFAULT_COLOR_SCHEME, DEFAULT_FALLBACK_FONT, DEFAULT_FONT_OPTIONS, DEFAULT_BRAND_ID as DEFAULT_KEBOOLA_BRAND_ID, DEFAULT_WORKBENCH_BAR_HEIGHT_IN_REM, DEFAULT_WORKBENCH_PANEL_HEIGHT_IN_PX, DashboardHero, DateInput, DatePicker, DateRangeInput, DateRangePicker, DiagramSkeleton, DiffType, DiffView, DotsLoader, DropdownMenu, EmptyConfigurationActionCard, EmptySearchContent, EmptyState, ErrorState, ExportMenu, FileUpload, FormGroup, FullScreenModal, FullScreenModalBody, FullScreenModalHeader, GoogleButton, HelpBlock, HoverCard, InlineStepDetail, InlineStepLabel, InputGroup, Kbd, Label, Link, MIN_WORKBENCH_PANEL_HEIGHT_IN_PX, Markdown, MarkedText, MessageBubble, MicrosoftButton, Modal, MultiActionButtonGroup, MultiCombobox, MultiComboboxField, Navbar, NumberInput, OtpInput, PageHeader, PageLayout, PageToolbar, Pagination, PaneHeader, PanelWithDetails, PasswordInput, PlanApproval, PlanRewritingIndicator, Popconfirm, Popover, Progress, PromptInput, Question, QuestionBlock, REGEXP_ONLY_CHARS, REGEXP_ONLY_DIGITS, REGEXP_ONLY_DIGITS_AND_CHARS, RadioGroup, ResizableHandle, ResizablePanel, ResizablePanelGroup, ScrollArea, ScrollBar, Search, SearchForm, SearchInput, SearchInputWithNavigation, SectionNav, Select, Separator, Sheet, Sidebar, SidebarProvider, Skeleton, SkeletonList, Slider, Slot, SplitButton, SpotlightBackdrop, StatCard, StatCardGrid, Stepper, SuggestedPrompt, Switch, Table, Tabs, TabsContent, TextInput, Textarea, ThemeProvider, ThinkingIndicator, TimeInput, TimePicker, Timeline, Toaster, Toggle, ToggleGroup, ToolCallApproval, ToolCallChip, Tooltip, TooltipProvider, Truncated, UsageStats, UsageStatsRing, Workbench, ZoomableSvg, appShellSlotSelector, argoVariants, brandSchema, channelsToHex, cn, computeDiffRows, computeLineInformation, contrastRatio, copyToClipboard, defaultFilter, exampleCustomer, hexToChannels, isMac, kbdVariants, keboola, keboolaLegacySidebar, keboolaLegacyTopnav, keys, mergeRefs, setServerFieldErrors, setSubmitError, svgToPngBlob, tableAriaSort, toSvgFileContent, toast, useAppForm, useArgoDesign, useAutosizeInput, useCommandState, useDefaultLayout, useFileDropTarget, useFileUploadRejections, useMergeDiff, useNotification, useOptionalSidebar, useScrollbarPosition, useSidebar, useStableCallback, useTargetRect, useTheme, useWorkbench, wcagLevel, withForm };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { AnswerSummary, CollapsibleStepHeader, InlineStepDetail, InlineStepLabel, Markdown, MessageBubble, PlanApproval, PlanRewritingIndicator, PromptInput, Question, QuestionBlock, SuggestedPrompt, ThinkingIndicator, ToolCallApproval, ToolCallChip, UsageStats, UsageStatsRing } from "../../AIKit-
|
|
1
|
+
import { AnswerSummary, CollapsibleStepHeader, InlineStepDetail, InlineStepLabel, Markdown, MessageBubble, PlanApproval, PlanRewritingIndicator, PromptInput, Question, QuestionBlock, SuggestedPrompt, ThinkingIndicator, ToolCallApproval, ToolCallChip, UsageStats, UsageStatsRing } from "../../AIKit-DaFT7p92.js";
|
|
2
2
|
export { AnswerSummary, CollapsibleStepHeader, InlineStepDetail, InlineStepLabel, Markdown, MessageBubble, PlanApproval, PlanRewritingIndicator, PromptInput, Question, QuestionBlock, SuggestedPrompt, ThinkingIndicator, ToolCallApproval, ToolCallChip, UsageStats, UsageStatsRing };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { AppShell } from "../../AppShell-
|
|
2
|
-
export { AppShell };
|
|
1
|
+
import { AppShell, appShellSlotSelector } from "../../AppShell-BUoxM3fv.js";
|
|
2
|
+
export { AppShell, appShellSlotSelector };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { BrandEditor, DEFAULT_FALLBACK_FONT, DEFAULT_FONT_OPTIONS, channelsToHex, contrastRatio, hexToChannels, wcagLevel } from "../../BrandEditor-
|
|
1
|
+
import { BrandEditor, DEFAULT_FALLBACK_FONT, DEFAULT_FONT_OPTIONS, channelsToHex, contrastRatio, hexToChannels, wcagLevel } from "../../BrandEditor-BnTLMRMp.js";
|
|
2
2
|
export { BrandEditor, DEFAULT_FALLBACK_FONT, DEFAULT_FONT_OPTIONS, channelsToHex, contrastRatio, hexToChannels, wcagLevel };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { ClipboardButton, ClipboardInline } from "../../ClipboardButton-
|
|
1
|
+
import { ClipboardButton, ClipboardInline } from "../../ClipboardButton-CQ6Aewpg.js";
|
|
2
2
|
export { ClipboardButton, ClipboardInline };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { ColorInput } from "../../ColorInput-
|
|
1
|
+
import { ColorInput } from "../../ColorInput-Q1D9Vcc_.js";
|
|
2
2
|
export { ColorInput };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { ColorModeSwitch } from "../../ColorModeSwitch-
|
|
1
|
+
import { ColorModeSwitch } from "../../ColorModeSwitch-B5PXCVqB.js";
|
|
2
2
|
export { ColorModeSwitch };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { Command, CommandGroup, CommandInput, CommandItem, CommandList, defaultFilter, useCommandState } from "../../Command-
|
|
1
|
+
import { Command, CommandGroup, CommandInput, CommandItem, CommandList, defaultFilter, useCommandState } from "../../Command-Ds68v2rX.js";
|
|
2
2
|
export { Command, CommandGroup, CommandInput, CommandItem, CommandList, defaultFilter, useCommandState };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { CopyField } from "../../CopyField-
|
|
1
|
+
import { CopyField } from "../../CopyField-DI66uY_g.js";
|
|
2
2
|
export { CopyField };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { DateInput } from "../../DateInput-
|
|
1
|
+
import { DateInput } from "../../DateInput-BPj2pzsn.js";
|
|
2
2
|
export { DateInput };
|