@qoretechnologies/reqore 0.68.0 → 0.68.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/components/DatePicker/index.d.ts +13 -1
- package/dist/components/DatePicker/index.d.ts.map +1 -1
- package/dist/components/DatePicker/index.js +79 -39
- package/dist/components/DatePicker/index.js.map +1 -1
- package/dist/esm/components/Accordion/index.js +142 -0
- package/dist/esm/components/Accordion/index.js.map +1 -0
- package/dist/esm/components/Breadcrumbs/index.js +122 -0
- package/dist/esm/components/Breadcrumbs/index.js.map +1 -0
- package/dist/esm/components/Breadcrumbs/item.js +14 -0
- package/dist/esm/components/Breadcrumbs/item.js.map +1 -0
- package/dist/esm/components/Button/index.js +315 -0
- package/dist/esm/components/Button/index.js.map +1 -0
- package/dist/esm/components/Callout/index.js +142 -0
- package/dist/esm/components/Callout/index.js.map +1 -0
- package/dist/esm/components/Checkbox/index.js +217 -0
- package/dist/esm/components/Checkbox/index.js.map +1 -0
- package/dist/esm/components/Collection/index.js +298 -0
- package/dist/esm/components/Collection/index.js.map +1 -0
- package/dist/esm/components/Collection/item.js +157 -0
- package/dist/esm/components/Collection/item.js.map +1 -0
- package/dist/esm/components/Columns/column.js +14 -0
- package/dist/esm/components/Columns/column.js.map +1 -0
- package/dist/esm/components/Columns/index.js +17 -0
- package/dist/esm/components/Columns/index.js.map +1 -0
- package/dist/esm/components/Comment/index.js +63 -0
- package/dist/esm/components/Comment/index.js.map +1 -0
- package/dist/esm/components/CommentFeed/index.js +17 -0
- package/dist/esm/components/CommentFeed/index.js.map +1 -0
- package/dist/esm/components/Content/index.js +16 -0
- package/dist/esm/components/Content/index.js.map +1 -0
- package/dist/esm/components/Content/wrapper.js +14 -0
- package/dist/esm/components/Content/wrapper.js.map +1 -0
- package/dist/esm/components/ControlGroup/index.js +351 -0
- package/dist/esm/components/ControlGroup/index.js.map +1 -0
- package/dist/esm/components/DatePicker/MonthYearDropdowns.js +30 -0
- package/dist/esm/components/DatePicker/MonthYearDropdowns.js.map +1 -0
- package/dist/esm/components/DatePicker/index.js +244 -0
- package/dist/esm/components/DatePicker/index.js.map +1 -0
- package/dist/esm/components/DescriptionList/index.js +132 -0
- package/dist/esm/components/DescriptionList/index.js.map +1 -0
- package/dist/esm/components/Drawer/backdrop.js +34 -0
- package/dist/esm/components/Drawer/backdrop.js.map +1 -0
- package/dist/esm/components/Drawer/index.js +286 -0
- package/dist/esm/components/Drawer/index.js.map +1 -0
- package/dist/esm/components/Dropdown/index.js +49 -0
- package/dist/esm/components/Dropdown/index.js.map +1 -0
- package/dist/esm/components/Dropdown/item.js +12 -0
- package/dist/esm/components/Dropdown/item.js.map +1 -0
- package/dist/esm/components/Dropdown/list.js +320 -0
- package/dist/esm/components/Dropdown/list.js.map +1 -0
- package/dist/esm/components/Effect/index.js +349 -0
- package/dist/esm/components/Effect/index.js.map +1 -0
- package/dist/esm/components/EmptyState/index.js +31 -0
- package/dist/esm/components/EmptyState/index.js.map +1 -0
- package/dist/esm/components/EntityRow/index.js +134 -0
- package/dist/esm/components/EntityRow/index.js.map +1 -0
- package/dist/esm/components/ErrorBoundary/index.js +57 -0
- package/dist/esm/components/ErrorBoundary/index.js.map +1 -0
- package/dist/esm/components/ExportModal/index.js +60 -0
- package/dist/esm/components/ExportModal/index.js.map +1 -0
- package/dist/esm/components/FeatureCard/index.js +139 -0
- package/dist/esm/components/FeatureCard/index.js.map +1 -0
- package/dist/esm/components/GlobalModalsWrapper/index.js +27 -0
- package/dist/esm/components/GlobalModalsWrapper/index.js.map +1 -0
- package/dist/esm/components/Header/index.js +55 -0
- package/dist/esm/components/Header/index.js.map +1 -0
- package/dist/esm/components/Icon/index.js +130 -0
- package/dist/esm/components/Icon/index.js.map +1 -0
- package/dist/esm/components/Input/index.js +136 -0
- package/dist/esm/components/Input/index.js.map +1 -0
- package/dist/esm/components/InputClearButton/index.js +32 -0
- package/dist/esm/components/InputClearButton/index.js.map +1 -0
- package/dist/esm/components/InternalPopover/index.js +244 -0
- package/dist/esm/components/InternalPopover/index.js.map +1 -0
- package/dist/esm/components/KeyValueTable/index.js +81 -0
- package/dist/esm/components/KeyValueTable/index.js.map +1 -0
- package/dist/esm/components/Label/index.js +7 -0
- package/dist/esm/components/Label/index.js.map +1 -0
- package/dist/esm/components/Layout/content.js +12 -0
- package/dist/esm/components/Layout/content.js.map +1 -0
- package/dist/esm/components/Layout/index.js +28 -0
- package/dist/esm/components/Layout/index.js.map +1 -0
- package/dist/esm/components/Menu/divider.js +41 -0
- package/dist/esm/components/Menu/divider.js.map +1 -0
- package/dist/esm/components/Menu/index.js +67 -0
- package/dist/esm/components/Menu/index.js.map +1 -0
- package/dist/esm/components/Menu/item.js +33 -0
- package/dist/esm/components/Menu/item.js.map +1 -0
- package/dist/esm/components/Menu/section.js +28 -0
- package/dist/esm/components/Menu/section.js.map +1 -0
- package/dist/esm/components/Message/index.js +52 -0
- package/dist/esm/components/Message/index.js.map +1 -0
- package/dist/esm/components/Modal/index.js +40 -0
- package/dist/esm/components/Modal/index.js.map +1 -0
- package/dist/esm/components/MultiSelect/index.js +146 -0
- package/dist/esm/components/MultiSelect/index.js.map +1 -0
- package/dist/esm/components/Navbar/divider.js +24 -0
- package/dist/esm/components/Navbar/divider.js.map +1 -0
- package/dist/esm/components/Navbar/group.js +27 -0
- package/dist/esm/components/Navbar/group.js.map +1 -0
- package/dist/esm/components/Navbar/index.js +39 -0
- package/dist/esm/components/Navbar/index.js.map +1 -0
- package/dist/esm/components/Navbar/item.js +51 -0
- package/dist/esm/components/Navbar/item.js.map +1 -0
- package/dist/esm/components/Notifications/index.js +28 -0
- package/dist/esm/components/Notifications/index.js.map +1 -0
- package/dist/esm/components/Notifications/notification.js +225 -0
- package/dist/esm/components/Notifications/notification.js.map +1 -0
- package/dist/esm/components/Paging/index.js +116 -0
- package/dist/esm/components/Paging/index.js.map +1 -0
- package/dist/esm/components/Panel/LabelEditor.js +33 -0
- package/dist/esm/components/Panel/LabelEditor.js.map +1 -0
- package/dist/esm/components/Panel/NonResponsiveActions.js +18 -0
- package/dist/esm/components/Panel/NonResponsiveActions.js.map +1 -0
- package/dist/esm/components/Panel/index.js +564 -0
- package/dist/esm/components/Panel/index.js.map +1 -0
- package/dist/esm/components/Panel/panel.screenshot.js +15 -0
- package/dist/esm/components/Panel/panel.screenshot.js.map +1 -0
- package/dist/esm/components/Paragraph/index.js +19 -0
- package/dist/esm/components/Paragraph/index.js.map +1 -0
- package/dist/esm/components/Popover/index.js +267 -0
- package/dist/esm/components/Popover/index.js.map +1 -0
- package/dist/esm/components/Progress/index.js +188 -0
- package/dist/esm/components/Progress/index.js.map +1 -0
- package/dist/esm/components/RadioGroup/index.js +9 -0
- package/dist/esm/components/RadioGroup/index.js.map +1 -0
- package/dist/esm/components/Rating/index.js +165 -0
- package/dist/esm/components/Rating/index.js.map +1 -0
- package/dist/esm/components/RichTextEditor/index.js +299 -0
- package/dist/esm/components/RichTextEditor/index.js.map +1 -0
- package/dist/esm/components/SegmentedControl/index.js +291 -0
- package/dist/esm/components/SegmentedControl/index.js.map +1 -0
- package/dist/esm/components/SeverityRow/index.js +106 -0
- package/dist/esm/components/SeverityRow/index.js.map +1 -0
- package/dist/esm/components/Skeleton/index.js +28 -0
- package/dist/esm/components/Skeleton/index.js.map +1 -0
- package/dist/esm/components/Slider/index.js +176 -0
- package/dist/esm/components/Slider/index.js.map +1 -0
- package/dist/esm/components/Spacer/index.js +96 -0
- package/dist/esm/components/Spacer/index.js.map +1 -0
- package/dist/esm/components/Span/index.js +18 -0
- package/dist/esm/components/Span/index.js.map +1 -0
- package/dist/esm/components/Spinner/index.js +14 -0
- package/dist/esm/components/Spinner/index.js.map +1 -0
- package/dist/esm/components/Statistic/index.js +166 -0
- package/dist/esm/components/Statistic/index.js.map +1 -0
- package/dist/esm/components/Table/body.js +72 -0
- package/dist/esm/components/Table/body.js.map +1 -0
- package/dist/esm/components/Table/cell.js +214 -0
- package/dist/esm/components/Table/cell.js.map +1 -0
- package/dist/esm/components/Table/header.js +158 -0
- package/dist/esm/components/Table/header.js.map +1 -0
- package/dist/esm/components/Table/headerCell.js +233 -0
- package/dist/esm/components/Table/headerCell.js.map +1 -0
- package/dist/esm/components/Table/helpers.js +285 -0
- package/dist/esm/components/Table/helpers.js.map +1 -0
- package/dist/esm/components/Table/index.js +472 -0
- package/dist/esm/components/Table/index.js.map +1 -0
- package/dist/esm/components/Table/row.js +176 -0
- package/dist/esm/components/Table/row.js.map +1 -0
- package/dist/esm/components/Table/value.js +19 -0
- package/dist/esm/components/Table/value.js.map +1 -0
- package/dist/esm/components/Tabs/content.js +23 -0
- package/dist/esm/components/Tabs/content.js.map +1 -0
- package/dist/esm/components/Tabs/index.js +44 -0
- package/dist/esm/components/Tabs/index.js.map +1 -0
- package/dist/esm/components/Tabs/item.js +122 -0
- package/dist/esm/components/Tabs/item.js.map +1 -0
- package/dist/esm/components/Tabs/list.js +208 -0
- package/dist/esm/components/Tabs/list.js.map +1 -0
- package/dist/esm/components/Tag/group.js +38 -0
- package/dist/esm/components/Tag/group.js.map +1 -0
- package/dist/esm/components/Tag/index.js +267 -0
- package/dist/esm/components/Tag/index.js.map +1 -0
- package/dist/esm/components/Testimonial/index.js +108 -0
- package/dist/esm/components/Testimonial/index.js.map +1 -0
- package/dist/esm/components/Textarea/index.js +135 -0
- package/dist/esm/components/Textarea/index.js.map +1 -0
- package/dist/esm/components/Tier/index.js +48 -0
- package/dist/esm/components/Tier/index.js.map +1 -0
- package/dist/esm/components/TimeAgo/index.js +19 -0
- package/dist/esm/components/TimeAgo/index.js.map +1 -0
- package/dist/esm/components/Timeline/index.js +271 -0
- package/dist/esm/components/Timeline/index.js.map +1 -0
- package/dist/esm/components/TooltipComponent/index.js +11 -0
- package/dist/esm/components/TooltipComponent/index.js.map +1 -0
- package/dist/esm/components/Tree/index.js +266 -0
- package/dist/esm/components/Tree/index.js.map +1 -0
- package/dist/esm/components/Tree/modal.js +30 -0
- package/dist/esm/components/Tree/modal.js.map +1 -0
- package/dist/esm/constants/animations.js +9 -0
- package/dist/esm/constants/animations.js.map +1 -0
- package/dist/esm/constants/colors.js +13 -0
- package/dist/esm/constants/colors.js.map +1 -0
- package/dist/esm/constants/paging.js +48 -0
- package/dist/esm/constants/paging.js.map +1 -0
- package/dist/esm/constants/sizes.js +363 -0
- package/dist/esm/constants/sizes.js.map +1 -0
- package/dist/esm/constants/theme.js +40 -0
- package/dist/esm/constants/theme.js.map +1 -0
- package/dist/esm/containers/Paging.js +29 -0
- package/dist/esm/containers/Paging.js.map +1 -0
- package/dist/esm/containers/ReqoreProvider.js +239 -0
- package/dist/esm/containers/ReqoreProvider.js.map +1 -0
- package/dist/esm/containers/ThemeProvider.js +11 -0
- package/dist/esm/containers/ThemeProvider.js.map +1 -0
- package/dist/esm/containers/UIProvider.js +53 -0
- package/dist/esm/containers/UIProvider.js.map +1 -0
- package/dist/esm/context/CustomThemeContext.js +4 -0
- package/dist/esm/context/CustomThemeContext.js.map +1 -0
- package/dist/esm/context/ReqoreContext.js +22 -0
- package/dist/esm/context/ReqoreContext.js.map +1 -0
- package/dist/esm/context/ThemeContext.js +4 -0
- package/dist/esm/context/ThemeContext.js.map +1 -0
- package/dist/esm/helpers/animations.js +13 -0
- package/dist/esm/helpers/animations.js.map +1 -0
- package/dist/esm/helpers/colors.js +240 -0
- package/dist/esm/helpers/colors.js.map +1 -0
- package/dist/esm/helpers/dates.js +52 -0
- package/dist/esm/helpers/dates.js.map +1 -0
- package/dist/esm/helpers/time.js +21 -0
- package/dist/esm/helpers/time.js.map +1 -0
- package/dist/esm/helpers/utils.js +174 -0
- package/dist/esm/helpers/utils.js.map +1 -0
- package/dist/esm/hooks/useAutoFocus.js +76 -0
- package/dist/esm/hooks/useAutoFocus.js.map +1 -0
- package/dist/esm/hooks/useCloneThroughFragments.js +26 -0
- package/dist/esm/hooks/useCloneThroughFragments.js.map +1 -0
- package/dist/esm/hooks/useCombinedRefs.js +25 -0
- package/dist/esm/hooks/useCombinedRefs.js.map +1 -0
- package/dist/esm/hooks/useComponentTooltip.js +28 -0
- package/dist/esm/hooks/useComponentTooltip.js.map +1 -0
- package/dist/esm/hooks/useFocusTrap.js +115 -0
- package/dist/esm/hooks/useFocusTrap.js.map +1 -0
- package/dist/esm/hooks/useLatestZIndex.js +10 -0
- package/dist/esm/hooks/useLatestZIndex.js.map +1 -0
- package/dist/esm/hooks/useOutsideClick.js +17 -0
- package/dist/esm/hooks/useOutsideClick.js.map +1 -0
- package/dist/esm/hooks/usePaging.js +92 -0
- package/dist/esm/hooks/usePaging.js.map +1 -0
- package/dist/esm/hooks/useQueryWithDelay.js +19 -0
- package/dist/esm/hooks/useQueryWithDelay.js.map +1 -0
- package/dist/esm/hooks/useReqore.js +10 -0
- package/dist/esm/hooks/useReqore.js.map +1 -0
- package/dist/esm/hooks/useReqoreContext.js +12 -0
- package/dist/esm/hooks/useReqoreContext.js.map +1 -0
- package/dist/esm/hooks/useReqoreEffect.js +21 -0
- package/dist/esm/hooks/useReqoreEffect.js.map +1 -0
- package/dist/esm/hooks/useTextareaAutoSize.js +16 -0
- package/dist/esm/hooks/useTextareaAutoSize.js.map +1 -0
- package/dist/esm/hooks/useTheme.js +39 -0
- package/dist/esm/hooks/useTheme.js.map +1 -0
- package/dist/esm/hooks/useWhyDidYouUpdate.js +32 -0
- package/dist/esm/hooks/useWhyDidYouUpdate.js.map +1 -0
- package/dist/esm/index.js +92 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/styles.js +122 -0
- package/dist/esm/styles.js.map +1 -0
- package/dist/esm/types/global.js +2 -0
- package/dist/esm/types/global.js.map +1 -0
- package/dist/esm/types/icons.js +2 -0
- package/dist/esm/types/icons.js.map +1 -0
- package/package.json +6 -2
- package/tests.json +1 -1
- package/tsconfig.esm.json +11 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/DatePicker/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { rgba } from 'polished';
|
|
3
|
+
import { forwardRef, memo, useMemo } from 'react';
|
|
4
|
+
import styled, { css } from 'styled-components';
|
|
5
|
+
import { changeLightness, getMainBackgroundColor } from '../../helpers/colors';
|
|
6
|
+
import { getOneHigherSize, getOneLessSize } from '../../helpers/utils';
|
|
7
|
+
import ReqoreIcon from '../Icon';
|
|
8
|
+
import { ReqorePanel } from '../Panel';
|
|
9
|
+
import { ReqoreP } from '../Paragraph';
|
|
10
|
+
/**
|
|
11
|
+
* Default leading-icon for a row carrying an `intent`. A single
|
|
12
|
+
* filled circle is rendered for every intent — only the icon's
|
|
13
|
+
* colour shifts (driven by `<ReqoreIcon intent={row.intent} />`).
|
|
14
|
+
* Callers can swap the glyph per-row via `intentIcon`.
|
|
15
|
+
*/
|
|
16
|
+
export const DESCRIPTION_LIST_DEFAULT_INTENT_ICON = 'CircleFill';
|
|
17
|
+
const StyledList = styled.div `
|
|
18
|
+
display: flex;
|
|
19
|
+
flex-flow: column;
|
|
20
|
+
width: 100%;
|
|
21
|
+
`;
|
|
22
|
+
const StyledRow = styled.div `
|
|
23
|
+
display: flex;
|
|
24
|
+
align-items: center;
|
|
25
|
+
gap: 8px;
|
|
26
|
+
padding: 10px 0;
|
|
27
|
+
|
|
28
|
+
${({ $isLast, $separatorOpacity, theme }) => !$isLast &&
|
|
29
|
+
$separatorOpacity > 0 &&
|
|
30
|
+
css `
|
|
31
|
+
border-bottom: 1px solid
|
|
32
|
+
${rgba(changeLightness(getMainBackgroundColor(theme), 0.16), $separatorOpacity)};
|
|
33
|
+
`}
|
|
34
|
+
`;
|
|
35
|
+
/**
|
|
36
|
+
* Fixed-width slot for the leading intent icon. Reserves space even
|
|
37
|
+
* when a row has no intent so rows with and without an intent icon
|
|
38
|
+
* stay flush-aligned across the list.
|
|
39
|
+
*/
|
|
40
|
+
const StyledIconSlot = styled.div `
|
|
41
|
+
flex: 0 0 auto;
|
|
42
|
+
display: flex;
|
|
43
|
+
align-items: center;
|
|
44
|
+
justify-content: center;
|
|
45
|
+
visibility: ${({ $visible }) => ($visible ? 'visible' : 'hidden')};
|
|
46
|
+
`;
|
|
47
|
+
const StyledLabel = styled.div `
|
|
48
|
+
flex: 0 0 ${({ $width }) => $width};
|
|
49
|
+
width: ${({ $width }) => $width};
|
|
50
|
+
min-width: 0;
|
|
51
|
+
display: flex;
|
|
52
|
+
align-items: baseline;
|
|
53
|
+
|
|
54
|
+
& > * {
|
|
55
|
+
${({ $uppercase }) => $uppercase &&
|
|
56
|
+
css `
|
|
57
|
+
text-transform: uppercase;
|
|
58
|
+
letter-spacing: 0.06em;
|
|
59
|
+
font-weight: 600;
|
|
60
|
+
opacity: 0.55;
|
|
61
|
+
`}
|
|
62
|
+
}
|
|
63
|
+
`;
|
|
64
|
+
const StyledContent = styled.div `
|
|
65
|
+
flex: 1 1 auto;
|
|
66
|
+
min-width: 0;
|
|
67
|
+
display: flex;
|
|
68
|
+
align-items: baseline;
|
|
69
|
+
gap: 8px;
|
|
70
|
+
font-variant-numeric: tabular-nums;
|
|
71
|
+
`;
|
|
72
|
+
/**
|
|
73
|
+
* Read-only description list — a `<dl>`-style key/value layout
|
|
74
|
+
* rendered inside a `ReqorePanel`. Distinct from `ReqoreKeyValueTable`:
|
|
75
|
+
*
|
|
76
|
+
* | Use this | When |
|
|
77
|
+
* |---|---|
|
|
78
|
+
* | `ReqoreDescriptionList` | A handful of labelled values the operator reads top-to-bottom (drawer lifecycle, panel metadata strip, document properties). No need for sort / filter / paging. |
|
|
79
|
+
* | `ReqoreKeyValueTable` | A dataset the operator searches, sorts, exports, or paginates. Full table behaviour. |
|
|
80
|
+
*
|
|
81
|
+
* Per-row `intent` renders a filled circle to the left of the
|
|
82
|
+
* label, tinted with the intent colour. If any row in the list has
|
|
83
|
+
* an intent, every row reserves the icon gutter so the label column
|
|
84
|
+
* stays flush-aligned. The label / content text colour is
|
|
85
|
+
* independent — use `labelIntent` / `contentIntent` to tint either
|
|
86
|
+
* side.
|
|
87
|
+
*
|
|
88
|
+
* Because the component wraps `ReqorePanel`, every panel knob is
|
|
89
|
+
* available via the spread props — `label`, `icon`, `badge`,
|
|
90
|
+
* `flat`, `raised`, `minimal`, `rounded`, `transparent`, `size`,
|
|
91
|
+
* `customTheme`, `effect`, `contentEffect`, `intent`, etc. Pass
|
|
92
|
+
* `transparent flat` (or `minimal flat`) when nesting inside an
|
|
93
|
+
* already-padded surface so the panel chrome drops out and the
|
|
94
|
+
* list rows align with the surrounding content.
|
|
95
|
+
*
|
|
96
|
+
* Sample:
|
|
97
|
+
*
|
|
98
|
+
* ```tsx
|
|
99
|
+
* <ReqoreDescriptionList
|
|
100
|
+
* label='Lifecycle'
|
|
101
|
+
* icon='TimeLine'
|
|
102
|
+
* flat
|
|
103
|
+
* raised
|
|
104
|
+
* items={[
|
|
105
|
+
* { key: 'created', label: 'Created', content: '5/16/2026, 11:00 PM · 1 day ago' },
|
|
106
|
+
* { key: 'started', label: 'Started', content: '5/16/2026, 11:00 PM · 1 day ago' },
|
|
107
|
+
* { key: 'completed', label: 'Completed', content: '5/17/2026, 12:00 AM · 1 day ago' },
|
|
108
|
+
* { key: 'duration', label: 'Duration', intent: 'success', content: '1h' },
|
|
109
|
+
* ]}
|
|
110
|
+
* />
|
|
111
|
+
* ```
|
|
112
|
+
*/
|
|
113
|
+
export const ReqoreDescriptionList = memo(forwardRef(({ items, labelWidth = '160px', uppercaseLabels = true, separatorOpacity = 0.06, size = 'normal', padded, className, ...panelRest }, ref) => {
|
|
114
|
+
// Default the panel's padding one size up from the list's text
|
|
115
|
+
// size — gives the rows visible breathing room from the panel
|
|
116
|
+
// edge without callers having to size it manually. The caller
|
|
117
|
+
// can still override with any `boolean | TSizes` value.
|
|
118
|
+
const resolvedPadded = padded ?? getOneHigherSize(size);
|
|
119
|
+
// If any row carries an intent, every row reserves the icon
|
|
120
|
+
// gutter so the label column stays vertically aligned across
|
|
121
|
+
// rows with and without an intent.
|
|
122
|
+
const anyRowHasIntent = useMemo(() => items.some((row) => Boolean(row.intent)), [items]);
|
|
123
|
+
return (_jsx(ReqorePanel, { ...panelRest, size: size, padded: resolvedPadded, ref: ref, className: `${className || ''} reqore-description-list`, children: _jsx(StyledList, { className: 'reqore-description-list-body', children: items.map((row, index) => {
|
|
124
|
+
const isLast = index === items.length - 1;
|
|
125
|
+
const labelUppercase = row.uppercaseLabel ?? uppercaseLabels;
|
|
126
|
+
const iconName = row.intent
|
|
127
|
+
? row.intentIcon ?? DESCRIPTION_LIST_DEFAULT_INTENT_ICON
|
|
128
|
+
: undefined;
|
|
129
|
+
return (_jsxs(StyledRow, { "$separatorOpacity": separatorOpacity, "$isLast": isLast, className: 'reqore-description-list-row', "data-key": row.key, children: [anyRowHasIntent ? (_jsx(StyledIconSlot, { "$visible": Boolean(iconName), className: 'reqore-description-list-intent-icon', "aria-hidden": !iconName, children: iconName ? (_jsx(ReqoreIcon, { icon: iconName, intent: row.intent, size: getOneLessSize(size) })) : null })) : null, row.label !== undefined ? (_jsx(StyledLabel, { "$width": labelWidth, "$uppercase": labelUppercase, className: 'reqore-description-list-label', children: _jsx(ReqoreP, { size: size, intent: row.labelIntent, children: row.label }) })) : null, _jsx(StyledContent, { className: 'reqore-description-list-content', children: typeof row.content === 'string' || typeof row.content === 'number' ? (_jsx(ReqoreP, { size: size, intent: row.contentIntent, children: row.content })) : (row.content) })] }, row.key));
|
|
130
|
+
}) }) }));
|
|
131
|
+
}));
|
|
132
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/DescriptionList/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { animated } from '@react-spring/web';
|
|
3
|
+
import { rgba } from 'polished';
|
|
4
|
+
import { memo, useCallback, useMemo } from 'react';
|
|
5
|
+
import styled from 'styled-components';
|
|
6
|
+
import { useReqoreProperty } from '../..';
|
|
7
|
+
import { getMainBackgroundColor } from '../../helpers/colors';
|
|
8
|
+
export const StyledBackdrop = styled(animated.div) `
|
|
9
|
+
position: fixed;
|
|
10
|
+
top: 0;
|
|
11
|
+
bottom: 0;
|
|
12
|
+
right: 0;
|
|
13
|
+
left: 0;
|
|
14
|
+
backdrop-filter: ${({ blur }) => (blur ? `blur(${blur}px)` : undefined)};
|
|
15
|
+
z-index: ${({ zIndex }) => zIndex};
|
|
16
|
+
background-color: ${({ theme }) => rgba(getMainBackgroundColor(theme), 0.3)};
|
|
17
|
+
cursor: ${({ closable }) => (closable ? 'pointer' : 'initial')};
|
|
18
|
+
`;
|
|
19
|
+
export const ReqoreBackdrop = memo(({ onClose, zIndex, blur, opacity, ...rest }) => {
|
|
20
|
+
const getAndIncreaseZIndex = useReqoreProperty('getAndIncreaseZIndex');
|
|
21
|
+
const finalZIndex = useMemo(() => zIndex || getAndIncreaseZIndex(), [zIndex, getAndIncreaseZIndex]);
|
|
22
|
+
const handleClick = useCallback((event) => {
|
|
23
|
+
event.stopPropagation();
|
|
24
|
+
// Only close if the click is on the backdrop itself
|
|
25
|
+
if (event.target === event.currentTarget) {
|
|
26
|
+
onClose?.();
|
|
27
|
+
}
|
|
28
|
+
}, [onClose]);
|
|
29
|
+
const style = useMemo(() => ({
|
|
30
|
+
opacity,
|
|
31
|
+
}), [opacity]);
|
|
32
|
+
return (_jsx(StyledBackdrop, { ...rest, className: `${rest.className || ''} reqore-drawer-backdrop`, onClick: handleClick, closable: !!onClose, zIndex: finalZIndex, blur: blur, style: style }));
|
|
33
|
+
});
|
|
34
|
+
//# sourceMappingURL=backdrop.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backdrop.js","sourceRoot":"","sources":["../../../../src/components/Drawer/backdrop.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAS9D,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAEjD;;;;;;qBAMoB,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;aAC5D,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM;sBACb,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC;YACjE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;CAC/D,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAChC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,EAAwB,EAAE,EAAE;IACpE,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,sBAAsB,CAAC,CAAC;IACvE,MAAM,WAAW,GAAG,OAAO,CACzB,GAAG,EAAE,CAAC,MAAM,IAAI,oBAAoB,EAAE,EACtC,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAC/B,CAAC;IAEF,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,KAAK,EAAE,EAAE;QACR,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,oDAAoD;QACpD,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,aAAa,EAAE;YACxC,OAAO,EAAE,EAAE,CAAC;SACb;IACH,CAAC,EACD,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE,CAAC,CAAC;QACL,OAAO;KACR,CAAC,EACF,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,OAAO,CACL,KAAC,cAAc,OACT,IAAI,EACR,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,yBAAyB,EAC3D,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,CAAC,CAAC,OAAO,EACnB,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,GACZ,CACH,CAAC;AACJ,CAAC,CACF,CAAC"}
|
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { animated, useTransition } from '@react-spring/web';
|
|
3
|
+
import { Resizable } from 're-resizable';
|
|
4
|
+
import { memo, useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
5
|
+
import { createPortal } from 'react-dom';
|
|
6
|
+
import styled, { css } from 'styled-components';
|
|
7
|
+
import { useReqoreProperty } from '../..';
|
|
8
|
+
import { SPRING_CONFIG, SPRING_CONFIG_NO_ANIMATIONS } from '../../constants/animations';
|
|
9
|
+
import ReqoreThemeProvider from '../../containers/ThemeProvider';
|
|
10
|
+
import { useFocusTrap } from '../../hooks/useFocusTrap';
|
|
11
|
+
import { useReqoreTheme } from '../../hooks/useTheme';
|
|
12
|
+
import ReqoreButton from '../Button';
|
|
13
|
+
import { ReqorePanel } from '../Panel';
|
|
14
|
+
import { ReqoreBackdrop } from './backdrop';
|
|
15
|
+
export const StyledWrapper = styled.div `
|
|
16
|
+
z-index: ${({ zIndex }) => zIndex};
|
|
17
|
+
position: fixed;
|
|
18
|
+
inset: 0;
|
|
19
|
+
display: flex;
|
|
20
|
+
justify-content: center;
|
|
21
|
+
align-items: center;
|
|
22
|
+
pointer-events: none;
|
|
23
|
+
`;
|
|
24
|
+
export const StyledCloseWrapper = styled.div `
|
|
25
|
+
position: absolute;
|
|
26
|
+
|
|
27
|
+
${({ position, w, h }) => {
|
|
28
|
+
switch (position) {
|
|
29
|
+
case 'bottom':
|
|
30
|
+
return css `
|
|
31
|
+
display: flex;
|
|
32
|
+
right: 0;
|
|
33
|
+
justify-content: flex-end;
|
|
34
|
+
margin-top: -35px;
|
|
35
|
+
> * {
|
|
36
|
+
margin-right: 5px;
|
|
37
|
+
}
|
|
38
|
+
`;
|
|
39
|
+
case 'top':
|
|
40
|
+
return css `
|
|
41
|
+
display: flex;
|
|
42
|
+
right: 0;
|
|
43
|
+
justify-content: flex-end;
|
|
44
|
+
margin-top: calc(${h || '0px'} + 5px);
|
|
45
|
+
> * {
|
|
46
|
+
margin-right: 5px;
|
|
47
|
+
}
|
|
48
|
+
`;
|
|
49
|
+
case 'left':
|
|
50
|
+
return css `
|
|
51
|
+
display: flex;
|
|
52
|
+
flex-flow: column;
|
|
53
|
+
top: 0;
|
|
54
|
+
margin-left: calc(${w || '0px'} + 5px);
|
|
55
|
+
> * {
|
|
56
|
+
margin-top: 5px;
|
|
57
|
+
}
|
|
58
|
+
`;
|
|
59
|
+
case 'right':
|
|
60
|
+
return css `
|
|
61
|
+
display: flex;
|
|
62
|
+
flex-flow: column;
|
|
63
|
+
top: 0;
|
|
64
|
+
margin-left: -35px;
|
|
65
|
+
> * {
|
|
66
|
+
margin-top: 5px;
|
|
67
|
+
}
|
|
68
|
+
`;
|
|
69
|
+
}
|
|
70
|
+
}}
|
|
71
|
+
`;
|
|
72
|
+
export const StyledDrawerResizable = styled(animated.div) `
|
|
73
|
+
pointer-events: auto;
|
|
74
|
+
|
|
75
|
+
${({ $edgelessPosition }) => {
|
|
76
|
+
if (!$edgelessPosition) {
|
|
77
|
+
return undefined;
|
|
78
|
+
}
|
|
79
|
+
// The edges touching the viewport don't need a border. Strip the three sides that meet the
|
|
80
|
+
// document edge so only the single side facing the content keeps its stroke.
|
|
81
|
+
const sidesToStrip = {
|
|
82
|
+
right: ['top', 'right', 'bottom'],
|
|
83
|
+
left: ['top', 'left', 'bottom'],
|
|
84
|
+
top: ['top', 'left', 'right'],
|
|
85
|
+
bottom: ['bottom', 'left', 'right'],
|
|
86
|
+
};
|
|
87
|
+
return css `
|
|
88
|
+
> .reqore-drawer {
|
|
89
|
+
${sidesToStrip[$edgelessPosition].map((side) => css `
|
|
90
|
+
border-${side}: none;
|
|
91
|
+
`)}
|
|
92
|
+
}
|
|
93
|
+
`;
|
|
94
|
+
}}
|
|
95
|
+
`;
|
|
96
|
+
/**
|
|
97
|
+
* It returns an icon name based on the position and whether the panel is hidden or not
|
|
98
|
+
* @param {'top' | 'bottom' | 'left' | 'right'} position - The position of the panel.
|
|
99
|
+
* @param {boolean} isHidden - boolean - This is a boolean value that determines whether the panel is
|
|
100
|
+
* hidden or not.
|
|
101
|
+
* @returns A function that takes two arguments, position and isHidden, and returns an IReqoreIconName.
|
|
102
|
+
*/
|
|
103
|
+
const getHideShowIcon = (position, isHidden) => {
|
|
104
|
+
switch (position) {
|
|
105
|
+
case 'top':
|
|
106
|
+
return isHidden ? 'ArrowDownSLine' : 'ArrowUpSLine';
|
|
107
|
+
case 'bottom':
|
|
108
|
+
return isHidden ? 'ArrowUpSLine' : 'ArrowDownSLine';
|
|
109
|
+
case 'left':
|
|
110
|
+
return isHidden ? 'ArrowRightSLine' : 'ArrowLeftSLine';
|
|
111
|
+
case 'right':
|
|
112
|
+
return isHidden ? 'ArrowLeftSLine' : 'ArrowRightSLine';
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
const getSpringConfig = (isModal, position, floating) => isModal
|
|
116
|
+
? {
|
|
117
|
+
from: { opacity: 0, transform: 'scale(0.5)' },
|
|
118
|
+
enter: { opacity: 1, transform: 'scale(1)' },
|
|
119
|
+
leave: { opacity: 0, transform: 'scale(0.5)' },
|
|
120
|
+
}
|
|
121
|
+
: {
|
|
122
|
+
from: { opacity: 0, [position]: '-80px' },
|
|
123
|
+
enter: { opacity: 1, [position]: floating ? '10px' : '0px' },
|
|
124
|
+
leave: { opacity: 0, [position]: '-80px' },
|
|
125
|
+
};
|
|
126
|
+
export const ReqoreDrawer = memo(({ children, isOpen, isHidden, customTheme, inheritCustomTheme, position = 'right', maxSize, minSize = '150px', onClose, hasBackdrop = true, size, resizable = true, hidable, onHideToggle, className, flat, floating, blur, opacity, intent, _isModal, width, height, actions = [], customZIndex, panelSize, confirmOnClose, focusTrap, ...rest }) => {
|
|
127
|
+
// Ref for the drawer wrapper to enable focus trapping
|
|
128
|
+
const drawerRef = useRef(null);
|
|
129
|
+
const animations = useReqoreProperty('animations');
|
|
130
|
+
const confirmAction = useReqoreProperty('confirmAction');
|
|
131
|
+
const customPortalId = useReqoreProperty('customPortalId');
|
|
132
|
+
const getAndIncreaseZIndex = useReqoreProperty('getAndIncreaseZIndex');
|
|
133
|
+
const theme = useReqoreTheme('main', customTheme, intent, undefined, inheritCustomTheme);
|
|
134
|
+
const layout = useMemo(() => _isModal
|
|
135
|
+
? 'center'
|
|
136
|
+
: position === 'top' || position === 'bottom'
|
|
137
|
+
? 'horizontal'
|
|
138
|
+
: 'vertical', [position, _isModal]);
|
|
139
|
+
const [_isHidden, setIsHidden] = useState(isHidden || false);
|
|
140
|
+
const [_size, setSize] = useState({
|
|
141
|
+
width: width || (layout === 'horizontal' ? 'auto' : size || '300px'),
|
|
142
|
+
height: height || (layout === 'vertical' ? 'auto' : size || '300px'),
|
|
143
|
+
});
|
|
144
|
+
// Determine if focus trap should be active
|
|
145
|
+
// By default, enable focus trap for modals and drawers with backdrop
|
|
146
|
+
const shouldTrapFocus = focusTrap ?? (_isModal || hasBackdrop);
|
|
147
|
+
// Use focus trap to keep focus within the drawer when open
|
|
148
|
+
useFocusTrap(drawerRef, {
|
|
149
|
+
active: isOpen && shouldTrapFocus && !_isHidden,
|
|
150
|
+
restoreFocus: true,
|
|
151
|
+
autoFocus: true,
|
|
152
|
+
});
|
|
153
|
+
useEffect(() => {
|
|
154
|
+
setSize({
|
|
155
|
+
width: width || (layout === 'horizontal' ? 'auto' : size || '300px'),
|
|
156
|
+
height: height || (layout === 'vertical' ? 'auto' : size || '300px'),
|
|
157
|
+
});
|
|
158
|
+
}, [position, size, width, height]);
|
|
159
|
+
const transitions = useTransition(isOpen, {
|
|
160
|
+
...getSpringConfig(_isModal, position, floating),
|
|
161
|
+
config: animations.dialogs ? SPRING_CONFIG : SPRING_CONFIG_NO_ANIMATIONS,
|
|
162
|
+
});
|
|
163
|
+
const zIndex = useMemo(() => customZIndex || getAndIncreaseZIndex(), [customZIndex, getAndIncreaseZIndex]);
|
|
164
|
+
const wrapperZIndex = useMemo(() => customZIndex + 1 || getAndIncreaseZIndex(), [customZIndex, getAndIncreaseZIndex]);
|
|
165
|
+
const _actions = useMemo(() => {
|
|
166
|
+
const builtActions = [...actions];
|
|
167
|
+
/* Adding a hide/show button to the drawer. */
|
|
168
|
+
if (hidable) {
|
|
169
|
+
builtActions.push({
|
|
170
|
+
responsive: false,
|
|
171
|
+
icon: getHideShowIcon(position, _isHidden),
|
|
172
|
+
onClick: () => {
|
|
173
|
+
setIsHidden(!_isHidden);
|
|
174
|
+
if (onHideToggle) {
|
|
175
|
+
onHideToggle(!_isHidden);
|
|
176
|
+
}
|
|
177
|
+
},
|
|
178
|
+
className: 'reqore-drawer-hide-button',
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
return builtActions;
|
|
182
|
+
}, [hidable, position, onClose, actions, _isHidden]);
|
|
183
|
+
const positions = useMemo(() => {
|
|
184
|
+
/* Centering the modal. */
|
|
185
|
+
if (_isModal) {
|
|
186
|
+
return {};
|
|
187
|
+
}
|
|
188
|
+
return {
|
|
189
|
+
top: position === 'top' || layout === 'vertical' ? (floating ? '10px' : 0) : undefined,
|
|
190
|
+
bottom: position === 'bottom' || layout === 'vertical' ? (floating ? '10px' : 0) : undefined,
|
|
191
|
+
right: position === 'right' || layout === 'horizontal' ? (floating ? '10px' : 0) : undefined,
|
|
192
|
+
left: position === 'left' || layout === 'horizontal' ? (floating ? '10px' : 0) : undefined,
|
|
193
|
+
};
|
|
194
|
+
}, [_isModal, position, layout, floating]);
|
|
195
|
+
const handleClose = onClose
|
|
196
|
+
? () => {
|
|
197
|
+
if (confirmOnClose) {
|
|
198
|
+
confirmAction({
|
|
199
|
+
...(typeof confirmOnClose === 'object' ? confirmOnClose : {}),
|
|
200
|
+
onConfirm: onClose,
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
else {
|
|
204
|
+
onClose?.();
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
: undefined;
|
|
208
|
+
const closeButtonProps = useMemo(() => ({
|
|
209
|
+
className: 'reqore-drawer-close-button',
|
|
210
|
+
...(rest.closeButtonProps || {}),
|
|
211
|
+
}), [rest.closeButtonProps]);
|
|
212
|
+
const panelStyle = useMemo(() => ({
|
|
213
|
+
width: '100%',
|
|
214
|
+
maxHeight: '100%',
|
|
215
|
+
...rest.style,
|
|
216
|
+
}), [JSON.stringify(rest.style)]);
|
|
217
|
+
const resizeableStyle = useMemo(() => ({
|
|
218
|
+
zIndex: wrapperZIndex,
|
|
219
|
+
display: 'flex',
|
|
220
|
+
position: 'fixed',
|
|
221
|
+
overflow: hidable ? undefined : 'hidden',
|
|
222
|
+
transformOrigin: 'center center',
|
|
223
|
+
backfaceVisibility: 'hidden',
|
|
224
|
+
...positions,
|
|
225
|
+
}), [wrapperZIndex, hidable, positions]);
|
|
226
|
+
const handleWrapperStyle = useMemo(() => ({
|
|
227
|
+
zIndex: wrapperZIndex + 1,
|
|
228
|
+
}), [wrapperZIndex]);
|
|
229
|
+
const sizeObject = useMemo(() => ({
|
|
230
|
+
width: _isModal
|
|
231
|
+
? _size.width
|
|
232
|
+
: layout === 'vertical'
|
|
233
|
+
? _isHidden
|
|
234
|
+
? 0
|
|
235
|
+
: _size.width
|
|
236
|
+
: 'auto',
|
|
237
|
+
height: _isModal
|
|
238
|
+
? _size.height
|
|
239
|
+
: layout === 'horizontal'
|
|
240
|
+
? _isHidden
|
|
241
|
+
? 0
|
|
242
|
+
: _size.height
|
|
243
|
+
: 'auto',
|
|
244
|
+
}), [_isModal, layout, _isHidden, _size]);
|
|
245
|
+
const onHideToggleClick = useCallback(() => {
|
|
246
|
+
setIsHidden(!_isHidden);
|
|
247
|
+
onHideToggle?.(!_isHidden);
|
|
248
|
+
}, [_isHidden, onHideToggle]);
|
|
249
|
+
const handleResize = useCallback((_, _direction, component) => {
|
|
250
|
+
if (resizable) {
|
|
251
|
+
setSize({
|
|
252
|
+
width: component.style.width,
|
|
253
|
+
height: component.style.height,
|
|
254
|
+
});
|
|
255
|
+
}
|
|
256
|
+
}, [resizable]);
|
|
257
|
+
const enable = useMemo(() => ({
|
|
258
|
+
top: (resizable && position === 'bottom') || _isModal ? true : false,
|
|
259
|
+
right: (resizable && position === 'left') || _isModal ? true : false,
|
|
260
|
+
left: (resizable && position === 'right') || _isModal ? true : false,
|
|
261
|
+
bottom: (resizable && position === 'top') || _isModal ? true : false,
|
|
262
|
+
bottomLeft: _isModal,
|
|
263
|
+
bottomRight: _isModal,
|
|
264
|
+
topLeft: _isModal,
|
|
265
|
+
topRight: _isModal,
|
|
266
|
+
}), [resizable, position, _isModal]);
|
|
267
|
+
return createPortal(transitions((styles, item) => item ? (_jsxs(ReqoreThemeProvider, { theme: theme, customTheme: customTheme, children: [hasBackdrop && !_isHidden ? (_jsx(ReqoreBackdrop, { onClose: handleClose, zIndex: zIndex, blur: blur, opacity: styles.opacity })) : null, _jsx(StyledWrapper, { ref: drawerRef, zIndex: wrapperZIndex, className: 'reqore-drawer-wrapper', role: _isModal || hasBackdrop ? 'dialog' : undefined, "aria-modal": _isModal || hasBackdrop ? 'true' : undefined, children: _jsxs(Resizable, { className: `${className || ''} reqore-drawer-resizable`, maxHeight: layout === 'horizontal' || layout === 'center' ? maxSize || '90vh' : undefined, minHeight: layout === 'center'
|
|
268
|
+
? '40px'
|
|
269
|
+
: layout === 'horizontal'
|
|
270
|
+
? _isHidden
|
|
271
|
+
? 0
|
|
272
|
+
: minSize || '40px'
|
|
273
|
+
: undefined, maxWidth: layout === 'vertical' || layout === 'center' ? maxSize || '90vw' : undefined, minWidth: layout === 'center'
|
|
274
|
+
? '40px'
|
|
275
|
+
: layout === 'vertical'
|
|
276
|
+
? _isHidden
|
|
277
|
+
? 0
|
|
278
|
+
: minSize || '40px'
|
|
279
|
+
: undefined, as: StyledDrawerResizable, ...{
|
|
280
|
+
$edgelessPosition: !floating && !_isModal ? position : undefined,
|
|
281
|
+
}, style: {
|
|
282
|
+
...resizeableStyle,
|
|
283
|
+
...styles,
|
|
284
|
+
}, handleWrapperStyle: handleWrapperStyle, size: sizeObject, onResize: handleResize, enable: enable, children: [_isHidden && hidable ? (_jsx(StyledCloseWrapper, { className: 'reqore-drawer-controls', position: position, w: layout === 'vertical' ? 0 : _size.width, h: layout === 'horizontal' ? 0 : _size.height, children: _jsx(ReqoreButton, { flat: true, customTheme: theme, className: 'reqore-drawer-control reqore-drawer-hide-button', icon: getHideShowIcon(position, _isHidden), onClick: onHideToggleClick }) })) : null, !_isHidden && (_jsx(ReqorePanel, { ...rest, size: panelSize, opacity: opacity, blur: hasBackdrop ? 0 : blur, actions: _actions, customTheme: customTheme, intent: intent, rounded: floating || _isModal ? true : false, flat: flat, onClose: handleClose, closeButtonProps: closeButtonProps, className: `reqore-drawer`, style: panelStyle, children: children }))] }) })] })) : null), document.querySelector(customPortalId || '#reqore-portal'));
|
|
285
|
+
});
|
|
286
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Drawer/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { size } from 'lodash';
|
|
3
|
+
import { memo, useCallback, useMemo, useState } from 'react';
|
|
4
|
+
import { ReqorePanel, ReqorePopover } from '../..';
|
|
5
|
+
import ReqoreButton from '../Button';
|
|
6
|
+
import ReqoreDropdownList from './list';
|
|
7
|
+
const ReqoreDropdownListWrapper = memo(({ wrapperProps, selectedItems, onSelectedItemsChange, _onNavigateToLevel, ...rest }) => {
|
|
8
|
+
return (_jsx(ReqorePanel, { size: 'small', customTheme: rest.customTheme, intent: rest.intent, ...wrapperProps, children: _jsx(ReqoreDropdownList, { ...rest, selectedItems: selectedItems, onSelectedItemsChange: onSelectedItemsChange, _onNavigateToLevel: _onNavigateToLevel }) }));
|
|
9
|
+
});
|
|
10
|
+
function ReqoreDropdown({ items, component, label, children, multiSelect, buttonStyle, listStyle, handler, placement, filterable, onFilterChange, filterPlaceholder, filter, icon, rightIcon, caretPosition = 'left', isDefaultOpen = false, onItemSelect, closeOnOutsideClick, closeOnInsideClick, closeOnTargetClick, blur, closeOnAnyClick, delay, maxHeight, maxWidth, minWidth, noArrow = true, transparent, useTargetWidth, listWidth, listHeight, passPopoverData, inputProps, scrollToSelected, paging, show, onToggleChange, customElements, wrapperProps, listCustomTheme, listIntent, showCaret = true, readOnlyOnEmpty, keyboardNavigation = true, passKeyHandler, listId, onBeforeClose, onBeforeOpen, popoverId, ...rest }) {
|
|
11
|
+
// Track the selected item at each navigation level
|
|
12
|
+
// selectedItems[0] is the root level item, selectedItems[1] is the first submenu item, etc.
|
|
13
|
+
const [selectedItems, setSelectedItems] = useState([]);
|
|
14
|
+
const componentProps = useMemo(() => ({
|
|
15
|
+
...rest,
|
|
16
|
+
icon: caretPosition === 'left' ? icon || (showCaret ? 'ArrowDownSFill' : undefined) : rightIcon,
|
|
17
|
+
rightIcon: caretPosition === 'right'
|
|
18
|
+
? icon || (showCaret ? 'ArrowDownSFill' : undefined)
|
|
19
|
+
: rightIcon,
|
|
20
|
+
style: buttonStyle || rest.style,
|
|
21
|
+
disabled: (!size(items) && !readOnlyOnEmpty) || rest.disabled,
|
|
22
|
+
readOnly: (!size(items) && readOnlyOnEmpty) || rest.readOnly,
|
|
23
|
+
className: `${rest?.className || ''} reqore-dropdown-control`,
|
|
24
|
+
transparent,
|
|
25
|
+
}), [items, icon, rightIcon, buttonStyle, caretPosition, rest]);
|
|
26
|
+
// Handle navigation to a specific submenu level via breadcrumb click
|
|
27
|
+
const handleNavigateToLevel = useCallback((level) => {
|
|
28
|
+
// Trim to requested level and explicitly clear the slot to prevent auto-entering
|
|
29
|
+
// a submenu when there's a single item at that level (breadcrumb click).
|
|
30
|
+
setSelectedItems((prev) => {
|
|
31
|
+
const next = prev.slice(0, level + 1);
|
|
32
|
+
next[level] = undefined;
|
|
33
|
+
return next;
|
|
34
|
+
});
|
|
35
|
+
}, []);
|
|
36
|
+
// Reset selection when the dropdown closes so auto-enter works again on next open
|
|
37
|
+
const handleToggleChange = useCallback((isOpen, data) => {
|
|
38
|
+
if (!isOpen) {
|
|
39
|
+
setSelectedItems([]);
|
|
40
|
+
}
|
|
41
|
+
onToggleChange?.(isOpen, data);
|
|
42
|
+
}, [onToggleChange]);
|
|
43
|
+
const popoverContent = useMemo(() => {
|
|
44
|
+
return size(items) || size(customElements) ? (_jsx(ReqoreDropdownListWrapper, { multiSelect: multiSelect, listStyle: listStyle, width: useTargetWidth ? '100%' : listWidth, height: listHeight, items: items || [], filterable: filterable, onItemSelect: onItemSelect, inputProps: inputProps, scrollToSelected: scrollToSelected, paging: paging, onFilterChange: onFilterChange, filterPlaceholder: filterPlaceholder, filter: filter, customElements: customElements, wrapperProps: wrapperProps, customTheme: listCustomTheme, intent: listIntent, keyboardNavigation: keyboardNavigation, passKeyHandler: passKeyHandler, listId: listId, _onNavigateToLevel: handleNavigateToLevel, selectedItems: selectedItems, onSelectedItemsChange: setSelectedItems })) : undefined;
|
|
45
|
+
}, [items, onItemSelect, customElements, selectedItems, handleNavigateToLevel]);
|
|
46
|
+
return (_jsx(ReqorePopover, { closeOnOutsideClick: closeOnOutsideClick, closeOnInsideClick: closeOnInsideClick ?? false, closeOnTargetClick: closeOnTargetClick, blur: blur, closeOnAnyClick: closeOnAnyClick, delay: delay, maxHeight: maxHeight, maxWidth: maxWidth, minWidth: minWidth, noArrow: noArrow, transparent: transparent, useTargetWidth: useTargetWidth, component: component || ReqoreButton, componentProps: componentProps, isReqoreComponent: true, noWrapper: true, placement: placement || 'bottom-start', handler: handler || 'click', openOnMount: isDefaultOpen, content: popoverContent, passPopoverData: passPopoverData, show: show, onToggleChange: handleToggleChange, onBeforeClose: onBeforeClose, onBeforeOpen: onBeforeOpen, id: popoverId, children: children || label }));
|
|
47
|
+
}
|
|
48
|
+
export default memo(ReqoreDropdown);
|
|
49
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Dropdown/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { memo, useCallback } from 'react';
|
|
3
|
+
import { ReqoreMenuItem } from '../..';
|
|
4
|
+
import ReqoreMenuDivider from '../Menu/divider';
|
|
5
|
+
export const ReqoreDropdownItem = memo(({ onItemClick, scrollIntoView, keyboardFocused, ...rest }) => {
|
|
6
|
+
const handleItemClick = useCallback((event) => {
|
|
7
|
+
onItemClick(rest, event);
|
|
8
|
+
}, [onItemClick, rest]);
|
|
9
|
+
return (_jsx(ReqoreMenuItem, { ...rest, label: rest.label || rest.value, onClick: handleItemClick, rightIcon: rest.selected ? 'CheckLine' : rest.rightIcon, scrollIntoView: scrollIntoView || keyboardFocused, selected: keyboardFocused ? true : rest.selected }));
|
|
10
|
+
});
|
|
11
|
+
export const ReqoreDropdownDivider = (props) => (_jsx(ReqoreMenuDivider, { ...props }));
|
|
12
|
+
//# sourceMappingURL=item.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"item.js","sourceRoot":"","sources":["../../../../src/components/Dropdown/item.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,iBAA8C,MAAM,iBAAiB,CAAC;AAS7E,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CACpC,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,IAAI,EAA4B,EAAE,EAAE;IACtF,MAAM,eAAe,GAAG,WAAW,CACjC,CAAC,KAAoC,EAAE,EAAE;QACvC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3B,CAAC,EACD,CAAC,WAAW,EAAE,IAAI,CAAC,CACpB,CAAC;IAEF,OAAO,CACL,KAAC,cAAc,OACT,IAAI,EACR,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAC/B,OAAO,EAAE,eAAe,EACxB,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EACvD,cAAc,EAAE,cAAc,IAAI,eAAe,EACjD,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,GAChD,CACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAA8B,EAAE,EAAE,CAAC,CACvE,KAAC,iBAAiB,OAAK,KAAK,GAAI,CACjC,CAAC"}
|