@raystack/apsara 0.32.0 → 0.33.1-alpha
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/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.cjs +92 -0
- package/dist/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.cjs.map +1 -1
- package/dist/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js +89 -1
- package/dist/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js.map +1 -1
- package/dist/node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.cjs +1 -0
- package/dist/node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.cjs.map +1 -1
- package/dist/node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.js +1 -1
- package/dist/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.cjs +20 -0
- package/dist/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.cjs.map +1 -1
- package/dist/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.js +20 -1
- package/dist/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.js.map +1 -1
- package/dist/sidebar/sidebar.cjs +6 -6
- package/dist/sidebar/sidebar.cjs.map +1 -1
- package/dist/sidebar/sidebar.d.ts +4 -4
- package/dist/sidebar/sidebar.js +6 -6
- package/dist/sidebar/sidebar.js.map +1 -1
- package/dist/style.css +1 -1
- package/dist/v1/_virtual/isSameOrAfter.cjs +6 -0
- package/dist/v1/_virtual/isSameOrAfter.cjs.map +1 -0
- package/dist/v1/_virtual/isSameOrAfter.js +4 -0
- package/dist/v1/_virtual/isSameOrAfter.js.map +1 -0
- package/dist/v1/_virtual/isSameOrBefore.cjs +6 -0
- package/dist/v1/_virtual/isSameOrBefore.cjs.map +1 -0
- package/dist/v1/_virtual/isSameOrBefore.js +4 -0
- package/dist/v1/_virtual/isSameOrBefore.js.map +1 -0
- package/dist/v1/components/calendar/calendar.cjs +1 -1
- package/dist/v1/components/calendar/calendar.cjs.map +1 -1
- package/dist/v1/components/calendar/calendar.js +1 -1
- package/dist/v1/components/calendar/calendar.js.map +1 -1
- package/dist/v1/components/calendar/date-picker.cjs +26 -17
- package/dist/v1/components/calendar/date-picker.cjs.map +1 -1
- package/dist/v1/components/calendar/date-picker.d.ts.map +1 -1
- package/dist/v1/components/calendar/date-picker.js +26 -17
- package/dist/v1/components/calendar/date-picker.js.map +1 -1
- package/dist/v1/components/chip/chip.cjs +3 -3
- package/dist/v1/components/chip/chip.cjs.map +1 -1
- package/dist/v1/components/chip/chip.d.ts +2 -1
- package/dist/v1/components/chip/chip.d.ts.map +1 -1
- package/dist/v1/components/chip/chip.js +3 -3
- package/dist/v1/components/chip/chip.js.map +1 -1
- package/dist/v1/components/data-table/components/content.cjs +81 -0
- package/dist/v1/components/data-table/components/content.cjs.map +1 -0
- package/dist/v1/components/data-table/components/content.d.ts +3 -0
- package/dist/v1/components/data-table/components/content.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/content.js +79 -0
- package/dist/v1/components/data-table/components/content.js.map +1 -0
- package/dist/v1/components/data-table/components/display-properties.cjs +14 -0
- package/dist/v1/components/data-table/components/display-properties.cjs.map +1 -0
- package/dist/v1/components/data-table/components/display-properties.d.ts +5 -0
- package/dist/v1/components/data-table/components/display-properties.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/display-properties.js +12 -0
- package/dist/v1/components/data-table/components/display-properties.js.map +1 -0
- package/dist/v1/components/data-table/components/display-settings.cjs +51 -0
- package/dist/v1/components/data-table/components/display-settings.cjs.map +1 -0
- package/dist/v1/components/data-table/components/display-settings.d.ts +2 -0
- package/dist/v1/components/data-table/components/display-settings.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/display-settings.js +49 -0
- package/dist/v1/components/data-table/components/display-settings.js.map +1 -0
- package/dist/v1/components/data-table/components/filters.cjs +44 -0
- package/dist/v1/components/data-table/components/filters.cjs.map +1 -0
- package/dist/v1/components/data-table/components/filters.d.ts +2 -0
- package/dist/v1/components/data-table/components/filters.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/filters.js +42 -0
- package/dist/v1/components/data-table/components/filters.js.map +1 -0
- package/dist/v1/components/data-table/components/grouping.cjs +31 -0
- package/dist/v1/components/data-table/components/grouping.cjs.map +1 -0
- package/dist/v1/components/data-table/components/grouping.d.ts +9 -0
- package/dist/v1/components/data-table/components/grouping.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/grouping.js +29 -0
- package/dist/v1/components/data-table/components/grouping.js.map +1 -0
- package/dist/v1/components/data-table/components/ordering.cjs +24 -0
- package/dist/v1/components/data-table/components/ordering.cjs.map +1 -0
- package/dist/v1/components/data-table/components/ordering.d.ts +8 -0
- package/dist/v1/components/data-table/components/ordering.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/ordering.js +22 -0
- package/dist/v1/components/data-table/components/ordering.js.map +1 -0
- package/dist/v1/components/data-table/components/search.cjs +30 -0
- package/dist/v1/components/data-table/components/search.cjs.map +1 -0
- package/dist/v1/components/data-table/components/search.d.ts +3 -0
- package/dist/v1/components/data-table/components/search.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/search.js +28 -0
- package/dist/v1/components/data-table/components/search.js.map +1 -0
- package/dist/v1/components/data-table/components/toolbar.cjs +15 -0
- package/dist/v1/components/data-table/components/toolbar.cjs.map +1 -0
- package/dist/v1/components/data-table/components/toolbar.d.ts +4 -0
- package/dist/v1/components/data-table/components/toolbar.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/toolbar.js +13 -0
- package/dist/v1/components/data-table/components/toolbar.js.map +1 -0
- package/dist/v1/components/data-table/context.cjs +8 -0
- package/dist/v1/components/data-table/context.cjs.map +1 -0
- package/dist/v1/components/data-table/context.d.ts +3 -0
- package/dist/v1/components/data-table/context.d.ts.map +1 -0
- package/dist/v1/components/data-table/context.js +6 -0
- package/dist/v1/components/data-table/context.js.map +1 -0
- package/dist/v1/components/data-table/data-table.cjs +87 -0
- package/dist/v1/components/data-table/data-table.cjs.map +1 -0
- package/dist/v1/components/data-table/data-table.d.ts +12 -0
- package/dist/v1/components/data-table/data-table.d.ts.map +1 -0
- package/dist/v1/components/data-table/data-table.js +85 -0
- package/dist/v1/components/data-table/data-table.js.map +1 -0
- package/dist/v1/components/data-table/data-table.module.css.cjs +8 -0
- package/dist/v1/components/data-table/data-table.module.css.cjs.map +1 -0
- package/dist/v1/components/data-table/data-table.module.css.js +4 -0
- package/dist/v1/components/data-table/data-table.module.css.js.map +1 -0
- package/dist/v1/components/data-table/data-table.types.cjs +9 -0
- package/dist/v1/components/data-table/data-table.types.cjs.map +1 -0
- package/dist/v1/components/data-table/data-table.types.d.ts +102 -0
- package/dist/v1/components/data-table/data-table.types.d.ts.map +1 -0
- package/dist/v1/components/data-table/data-table.types.js +7 -0
- package/dist/v1/components/data-table/data-table.types.js.map +1 -0
- package/dist/v1/components/data-table/hooks/useDataTable.cjs +15 -0
- package/dist/v1/components/data-table/hooks/useDataTable.cjs.map +1 -0
- package/dist/v1/components/data-table/hooks/useDataTable.d.ts +2 -0
- package/dist/v1/components/data-table/hooks/useDataTable.d.ts.map +1 -0
- package/dist/v1/components/data-table/hooks/useDataTable.js +13 -0
- package/dist/v1/components/data-table/hooks/useDataTable.js.map +1 -0
- package/dist/v1/components/data-table/hooks/useFilters.cjs +78 -0
- package/dist/v1/components/data-table/hooks/useFilters.cjs.map +1 -0
- package/dist/v1/components/data-table/hooks/useFilters.d.ts +9 -0
- package/dist/v1/components/data-table/hooks/useFilters.d.ts.map +1 -0
- package/dist/v1/components/data-table/hooks/useFilters.js +76 -0
- package/dist/v1/components/data-table/hooks/useFilters.js.map +1 -0
- package/dist/v1/components/data-table/index.d.ts +4 -0
- package/dist/v1/components/data-table/index.d.ts.map +1 -0
- package/dist/v1/components/data-table/utils/filter-operations.cjs +83 -0
- package/dist/v1/components/data-table/utils/filter-operations.cjs.map +1 -0
- package/dist/v1/components/data-table/utils/filter-operations.d.ts +11 -0
- package/dist/v1/components/data-table/utils/filter-operations.d.ts.map +1 -0
- package/dist/v1/components/data-table/utils/filter-operations.js +80 -0
- package/dist/v1/components/data-table/utils/filter-operations.js.map +1 -0
- package/dist/v1/components/data-table/utils/index.cjs +156 -0
- package/dist/v1/components/data-table/utils/index.cjs.map +1 -0
- package/dist/v1/components/data-table/utils/index.d.ts +14 -0
- package/dist/v1/components/data-table/utils/index.d.ts.map +1 -0
- package/dist/v1/components/data-table/utils/index.js +147 -0
- package/dist/v1/components/data-table/utils/index.js.map +1 -0
- package/dist/v1/components/dialog/dialog.cjs +4 -3
- package/dist/v1/components/dialog/dialog.cjs.map +1 -1
- package/dist/v1/components/dialog/dialog.d.ts +9 -2
- package/dist/v1/components/dialog/dialog.d.ts.map +1 -1
- package/dist/v1/components/dialog/dialog.js +5 -4
- package/dist/v1/components/dialog/dialog.js.map +1 -1
- package/dist/v1/components/dialog/dialog.module.css.cjs +1 -1
- package/dist/v1/components/dialog/dialog.module.css.js +1 -1
- package/dist/v1/components/filter-chip/filter-chip.cjs +28 -19
- package/dist/v1/components/filter-chip/filter-chip.cjs.map +1 -1
- package/dist/v1/components/filter-chip/filter-chip.d.ts +3 -7
- package/dist/v1/components/filter-chip/filter-chip.d.ts.map +1 -1
- package/dist/v1/components/filter-chip/filter-chip.js +28 -19
- package/dist/v1/components/filter-chip/filter-chip.js.map +1 -1
- package/dist/v1/components/icons/assets/filter.svg.cjs +41 -0
- package/dist/v1/components/icons/assets/filter.svg.cjs.map +1 -0
- package/dist/v1/components/icons/assets/filter.svg.js +20 -0
- package/dist/v1/components/icons/assets/filter.svg.js.map +1 -0
- package/dist/v1/components/icons/icons.d.ts +3 -0
- package/dist/v1/components/icons/icons.d.ts.map +1 -0
- package/dist/v1/components/icons/index.d.ts +2 -0
- package/dist/v1/components/icons/index.d.ts.map +1 -0
- package/dist/v1/components/input-field/input-field.cjs +1 -1
- package/dist/v1/components/input-field/input-field.cjs.map +1 -1
- package/dist/v1/components/input-field/input-field.js +1 -1
- package/dist/v1/components/input-field/input-field.js.map +1 -1
- package/dist/v1/components/sidebar/index.d.ts +2 -0
- package/dist/v1/components/sidebar/index.d.ts.map +1 -0
- package/dist/v1/components/sidebar/sidebar.cjs +46 -0
- package/dist/v1/components/sidebar/sidebar.cjs.map +1 -0
- package/dist/v1/components/sidebar/sidebar.d.ts +61 -0
- package/dist/v1/components/sidebar/sidebar.d.ts.map +1 -0
- package/dist/v1/components/sidebar/sidebar.js +44 -0
- package/dist/v1/components/sidebar/sidebar.js.map +1 -0
- package/dist/v1/components/sidebar/sidebar.module.css.cjs +8 -0
- package/dist/v1/components/sidebar/sidebar.module.css.cjs.map +1 -0
- package/dist/v1/components/sidebar/sidebar.module.css.js +4 -0
- package/dist/v1/components/sidebar/sidebar.module.css.js.map +1 -0
- package/dist/v1/components/table/table.cjs.map +1 -1
- package/dist/v1/components/table/table.d.ts +2 -2
- package/dist/v1/components/table/table.js.map +1 -1
- package/dist/v1/components/tooltip/tooltip.cjs +2 -2
- package/dist/v1/components/tooltip/tooltip.cjs.map +1 -1
- package/dist/v1/components/tooltip/tooltip.d.ts +1 -1
- package/dist/v1/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/v1/components/tooltip/tooltip.js +2 -2
- package/dist/v1/components/tooltip/tooltip.js.map +1 -1
- package/dist/v1/index.cjs +6 -2
- package/dist/v1/index.cjs.map +1 -1
- package/dist/v1/index.d.ts +2 -1
- package/dist/v1/index.d.ts.map +1 -1
- package/dist/v1/index.js +4 -1
- package/dist/v1/index.js.map +1 -1
- package/dist/v1/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.cjs +92 -0
- package/dist/v1/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.cjs.map +1 -1
- package/dist/v1/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js +89 -1
- package/dist/v1/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js.map +1 -1
- package/dist/v1/node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.cjs +131 -0
- package/dist/v1/node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.cjs.map +1 -0
- package/dist/v1/node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.js +72 -0
- package/dist/v1/node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.js.map +1 -0
- package/dist/v1/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.cjs +3338 -0
- package/dist/v1/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.cjs.map +1 -0
- package/dist/v1/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.js +3299 -0
- package/dist/v1/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.js.map +1 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrAfter.cjs +16 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrAfter.cjs.map +1 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrAfter.js +12 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrAfter.js.map +1 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrBefore.cjs +16 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrBefore.cjs.map +1 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrBefore.js +12 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrBefore.js.map +1 -0
- package/dist/v1/style.css +1 -1
- package/dist/v1/types/filters.cjs +39 -0
- package/dist/v1/types/filters.cjs.map +1 -0
- package/dist/v1/types/filters.d.ts +42 -0
- package/dist/v1/types/filters.d.ts.map +1 -0
- package/dist/v1/types/filters.js +36 -0
- package/dist/v1/types/filters.js.map +1 -0
- package/package.json +2 -1
- package/dist/v1/components/sidepanel/index.d.ts +0 -2
- package/dist/v1/components/sidepanel/index.d.ts.map +0 -1
- package/dist/v1/components/sidepanel/sidepanel.cjs +0 -44
- package/dist/v1/components/sidepanel/sidepanel.cjs.map +0 -1
- package/dist/v1/components/sidepanel/sidepanel.d.ts +0 -51
- package/dist/v1/components/sidepanel/sidepanel.d.ts.map +0 -1
- package/dist/v1/components/sidepanel/sidepanel.js +0 -42
- package/dist/v1/components/sidepanel/sidepanel.js.map +0 -1
- package/dist/v1/components/sidepanel/sidepanel.module.css.cjs +0 -8
- package/dist/v1/components/sidepanel/sidepanel.module.css.cjs.map +0 -1
- package/dist/v1/components/sidepanel/sidepanel.module.css.js +0 -4
- package/dist/v1/components/sidepanel/sidepanel.module.css.js.map +0 -1
|
@@ -12,22 +12,33 @@ require('../../node_modules/.pnpm/react-day-picker@9.0.4_react@18.2.0/node_modul
|
|
|
12
12
|
require('../../node_modules/.pnpm/react-day-picker@9.0.4_react@18.2.0/node_modules/react-day-picker/dist/esm/useDayPicker.cjs');
|
|
13
13
|
require('../tooltip/tooltip.cjs');
|
|
14
14
|
var datePicker = require('../calendar/date-picker.cjs');
|
|
15
|
-
|
|
15
|
+
require('../../node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/dayjs.min.cjs');
|
|
16
|
+
require('../popover/popover.cjs');
|
|
16
17
|
var filterChip_module = require('./filter-chip.module.css.cjs');
|
|
18
|
+
var filters = require('../../types/filters.cjs');
|
|
17
19
|
|
|
18
|
-
const
|
|
19
|
-
const [
|
|
20
|
-
|
|
21
|
-
const
|
|
22
|
-
{ label: 'is', value: 'is' },
|
|
23
|
-
{ label: 'is not', value: 'is not' },
|
|
24
|
-
{ label: 'contains', value: 'contains' },
|
|
25
|
-
];
|
|
20
|
+
const Operation = ({ label, columnType = filters.FilterType.text, onOperationSelect, }) => {
|
|
21
|
+
const filterOptions = filters.filterOperators[columnType] || [];
|
|
22
|
+
// FilterOperatorTypes gives error as Select returns string
|
|
23
|
+
const [value, setValue] = React.useState(filterOptions?.[0]?.value);
|
|
26
24
|
React.useEffect(() => {
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
const selectedOption = filterOptions.find((o) => o.value === value);
|
|
26
|
+
if (selectedOption) {
|
|
27
|
+
onOperationSelect(selectedOption);
|
|
29
28
|
}
|
|
30
|
-
}, [
|
|
29
|
+
}, [value]);
|
|
30
|
+
return (jsxRuntime.jsxRuntimeExports.jsxs(select.Select, { value: value, onValueChange: setValue, "aria-labelledby": `${label}-label`, children: [jsxRuntime.jsxRuntimeExports.jsx(select.Select.Trigger, { variant: "filter", className: filterChip_module.default.operation, "aria-label": `${label} filter operation`, children: jsxRuntime.jsxRuntimeExports.jsx(select.Select.Value, { placeholder: "Select operation", className: filterChip_module.default.operationText }) }), jsxRuntime.jsxRuntimeExports.jsx(select.Select.Content, { "data-variant": "filter", children: filterOptions.map((opt) => {
|
|
31
|
+
return (jsxRuntime.jsxRuntimeExports.jsx(select.Select.Item, { value: opt.value, "aria-label": `Filter ${label} ${opt.label}`, children: opt.label }, opt.value));
|
|
32
|
+
}) })] }));
|
|
33
|
+
};
|
|
34
|
+
const FilterChip = ({ label, value, onRemove = () => null, className, ref, columnType = "text", options = [], onValueChange, onOperationChange, leadingIcon, ...props }) => {
|
|
35
|
+
const [operation, setOperation] = React.useState();
|
|
36
|
+
const [filterValue, setFilterValue] = React.useState(value || "");
|
|
37
|
+
React.useEffect(() => {
|
|
38
|
+
if (onOperationChange && operation?.value) {
|
|
39
|
+
onOperationChange(operation?.value);
|
|
40
|
+
}
|
|
41
|
+
}, [operation?.value]);
|
|
31
42
|
React.useEffect(() => {
|
|
32
43
|
if (onValueChange) {
|
|
33
44
|
onValueChange(filterValue);
|
|
@@ -35,17 +46,15 @@ const FilterChip = ({ label, value, onRemove = () => null, className, ref, colum
|
|
|
35
46
|
}, [filterValue]);
|
|
36
47
|
const renderValueInput = () => {
|
|
37
48
|
switch (columnType) {
|
|
38
|
-
case
|
|
39
|
-
return (jsxRuntime.jsxRuntimeExports.jsxs(select.Select, { value: filterValue, onValueChange: setFilterValue, children: [jsxRuntime.jsxRuntimeExports.jsx(select.Select.Trigger, { variant: "filter",
|
|
40
|
-
case
|
|
41
|
-
return (jsxRuntime.jsxRuntimeExports.jsx("div", { className: filterChip_module.default.dateFieldWrapper, children: jsxRuntime.jsxRuntimeExports.jsx(datePicker.DatePicker, { onSelect: (date) => setFilterValue(date), showCalendarIcon: false, textFieldProps: { className: filterChip_module.default.dateField } }) }));
|
|
42
|
-
case 'range':
|
|
43
|
-
return (jsxRuntime.jsxRuntimeExports.jsx("div", { className: filterChip_module.default.dateFieldWrapper, children: jsxRuntime.jsxRuntimeExports.jsx(rangePicker.RangePicker, { textFieldProps: { className: filterChip_module.default.dateField }, onSelect: (range) => setFilterValue(range), showCalendarIcon: false, value: filterValue }) }));
|
|
49
|
+
case filters.FilterType.select:
|
|
50
|
+
return (jsxRuntime.jsxRuntimeExports.jsxs(select.Select, { value: filterValue.toString(), onValueChange: setFilterValue, children: [jsxRuntime.jsxRuntimeExports.jsx(select.Select.Trigger, { variant: "filter", className: filterChip_module.default.selectValue, children: jsxRuntime.jsxRuntimeExports.jsx(select.Select.Value, { placeholder: "Select value" }) }), jsxRuntime.jsxRuntimeExports.jsx(select.Select.Content, { "data-variant": "filter", children: options.map((opt) => (jsxRuntime.jsxRuntimeExports.jsx(select.Select.Item, { value: opt.value.toString(), children: opt.label }, opt.value.toString()))) })] }));
|
|
51
|
+
case filters.FilterType.date:
|
|
52
|
+
return (jsxRuntime.jsxRuntimeExports.jsx("div", { className: filterChip_module.default.dateFieldWrapper, children: jsxRuntime.jsxRuntimeExports.jsx(datePicker.DatePicker, { value: filterValue, onSelect: (date) => setFilterValue(date), showCalendarIcon: false, textFieldProps: { className: filterChip_module.default.dateField } }) }));
|
|
44
53
|
default:
|
|
45
54
|
return (jsxRuntime.jsxRuntimeExports.jsx("div", { className: filterChip_module.default.textFieldWrapper, children: jsxRuntime.jsxRuntimeExports.jsx(textfield.TextField, { className: filterChip_module.default.textField, value: filterValue, onChange: (e) => setFilterValue(e.target.value) }) }));
|
|
46
55
|
}
|
|
47
56
|
};
|
|
48
|
-
return (jsxRuntime.jsxRuntimeExports.jsx(box.Box, { ref: ref, className: [filterChip_module.default.chip, className].filter(Boolean).join(" "), role: "group", "aria-label": `Filter by ${label}`, ...props, children: jsxRuntime.jsxRuntimeExports.jsxs(flex.Flex, { align: "center", children: [jsxRuntime.jsxRuntimeExports.jsxs(flex.Flex, { align: "center",
|
|
57
|
+
return (jsxRuntime.jsxRuntimeExports.jsx(box.Box, { ref: ref, className: [filterChip_module.default.chip, className].filter(Boolean).join(" "), role: "group", "aria-label": `Filter by ${label}`, ...props, children: jsxRuntime.jsxRuntimeExports.jsxs(flex.Flex, { align: "center", children: [jsxRuntime.jsxRuntimeExports.jsxs(flex.Flex, { align: "center", gap: 2, children: [leadingIcon && (jsxRuntime.jsxRuntimeExports.jsx("span", { className: filterChip_module.default.leadingIcon, "aria-hidden": "true", children: leadingIcon })), jsxRuntime.jsxRuntimeExports.jsx(text.Text, { size: 2, weight: "normal", children: label })] }), jsxRuntime.jsxRuntimeExports.jsx(Operation, { columnType: columnType, label: label, onOperationSelect: setOperation }), renderValueInput(), jsxRuntime.jsxRuntimeExports.jsx("div", { className: filterChip_module.default.removeIconContainer, role: "button", tabIndex: 0, "aria-label": `Remove ${label} filter`, children: jsxRuntime.jsxRuntimeExports.jsx(reactIcons_esm.Cross1Icon, { className: filterChip_module.default.removeIcon, onClick: onRemove }) })] }) }));
|
|
49
58
|
};
|
|
50
59
|
FilterChip.displayName = "FilterChip";
|
|
51
60
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter-chip.cjs","sources":["../../../../v1/components/filter-chip/filter-chip.tsx"],"sourcesContent":["import { Cross1Icon } from \"@radix-ui/react-icons\";\nimport { ReactNode, useEffect, useState, ReactElement } from \"react\";\nimport { Box } from \"../box\";\nimport { Flex } from \"../flex\";\nimport { Select } from \"../select\";\nimport { Text } from \"../text\";\nimport { TextField } from \"../textfield\";\nimport { DatePicker
|
|
1
|
+
{"version":3,"file":"filter-chip.cjs","sources":["../../../../v1/components/filter-chip/filter-chip.tsx"],"sourcesContent":["import { Cross1Icon } from \"@radix-ui/react-icons\";\nimport { ReactNode, useEffect, useState, ReactElement } from \"react\";\nimport { Box } from \"../box\";\nimport { Flex } from \"../flex\";\nimport { Select } from \"../select\";\nimport { Text } from \"../text\";\nimport { TextField } from \"../textfield\";\nimport { DatePicker } from \"../calendar\";\nimport styles from \"./filter-chip.module.css\";\nimport {\n FilterSelectOption,\n FilterOperation,\n FilterType,\n FilterTypes,\n filterOperators,\n} from \"~/v1/types/filters\";\n\nexport interface FilterChipProps {\n label: string;\n value?: string;\n onRemove?: () => void;\n className?: string;\n ref?: React.RefObject<HTMLDivElement>;\n children?: ReactNode;\n columnType?: FilterTypes;\n options?: FilterSelectOption[];\n onValueChange?: (value: any) => void;\n onOperationChange?: (operation: string) => void;\n leadingIcon?: ReactElement;\n}\n\ninterface OperationProps {\n label: string;\n columnType: FilterTypes;\n onOperationSelect: (op: FilterOperation) => void;\n}\n\nconst Operation = ({\n label,\n columnType = FilterType.text,\n onOperationSelect,\n}: OperationProps) => {\n const filterOptions = filterOperators[columnType] || [];\n // FilterOperatorTypes gives error as Select returns string\n const [value, setValue] = useState<string>(filterOptions?.[0]?.value);\n\n useEffect(() => {\n const selectedOption = filterOptions.find((o) => o.value === value);\n if (selectedOption) {\n onOperationSelect(selectedOption);\n }\n }, [value]);\n\n return (\n <Select\n value={value}\n onValueChange={setValue}\n aria-labelledby={`${label}-label`}\n >\n <Select.Trigger\n variant=\"filter\"\n className={styles.operation}\n aria-label={`${label} filter operation`}\n >\n <Select.Value\n placeholder=\"Select operation\"\n className={styles.operationText}\n />\n </Select.Trigger>\n <Select.Content data-variant=\"filter\">\n {filterOptions.map((opt) => {\n return (\n <Select.Item\n key={opt.value}\n value={opt.value}\n aria-label={`Filter ${label} ${opt.label}`}\n >\n {opt.label}\n </Select.Item>\n );\n })}\n </Select.Content>\n </Select>\n );\n};\n\nexport const FilterChip = ({\n label,\n value,\n onRemove = () => null,\n className,\n ref,\n columnType = \"text\",\n options = [],\n onValueChange,\n onOperationChange,\n leadingIcon,\n ...props\n}: FilterChipProps) => {\n const [operation, setOperation] = useState<FilterOperation>();\n const [filterValue, setFilterValue] = useState<any>(value || \"\");\n\n useEffect(() => {\n if (onOperationChange && operation?.value) {\n onOperationChange(operation?.value);\n }\n }, [operation?.value]);\n\n useEffect(() => {\n if (onValueChange) {\n onValueChange(filterValue);\n }\n }, [filterValue]);\n\n const renderValueInput = () => {\n switch (columnType) {\n case FilterType.select:\n return (\n <Select value={filterValue.toString()} onValueChange={setFilterValue}>\n <Select.Trigger variant=\"filter\" className={styles.selectValue}>\n <Select.Value placeholder=\"Select value\" />\n </Select.Trigger>\n <Select.Content data-variant=\"filter\">\n {options.map((opt) => (\n <Select.Item\n key={opt.value.toString()}\n value={opt.value.toString()}\n >\n {opt.label}\n </Select.Item>\n ))}\n </Select.Content>\n </Select>\n );\n case FilterType.date:\n return (\n <div className={styles.dateFieldWrapper}>\n <DatePicker\n value={filterValue}\n onSelect={(date) => setFilterValue(date)}\n showCalendarIcon={false}\n textFieldProps={{ className: styles.dateField }}\n />\n </div>\n );\n default:\n return (\n <div className={styles.textFieldWrapper}>\n <TextField\n className={styles.textField}\n value={filterValue}\n onChange={(e) => setFilterValue(e.target.value)}\n />\n </div>\n );\n }\n };\n\n return (\n <Box\n ref={ref}\n className={[styles.chip, className].filter(Boolean).join(\" \")}\n role=\"group\"\n aria-label={`Filter by ${label}`}\n {...props}\n >\n <Flex align=\"center\">\n <Flex align=\"center\" gap={2}>\n {leadingIcon && (\n <span className={styles.leadingIcon} aria-hidden=\"true\">\n {leadingIcon}\n </span>\n )}\n <Text size={2} weight=\"normal\">\n {label}\n </Text>\n </Flex>\n <Operation\n columnType={columnType}\n label={label}\n onOperationSelect={setOperation}\n />\n {renderValueInput()}\n <div\n className={styles.removeIconContainer}\n role=\"button\"\n tabIndex={0}\n aria-label={`Remove ${label} filter`}\n >\n <Cross1Icon className={styles.removeIcon} onClick={onRemove} />\n </div>\n </Flex>\n </Box>\n );\n};\n\nFilterChip.displayName = \"FilterChip\";\n"],"names":["FilterType","filterOperators","useState","useEffect","_jsxs","Select","_jsx","styles","DatePicker","TextField","Box","Flex","Text","Cross1Icon"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ReactNode, ReactElement } from "react";
|
|
2
|
-
|
|
2
|
+
import { FilterSelectOption, FilterTypes } from "~/v1/types/filters";
|
|
3
3
|
export interface FilterChipProps {
|
|
4
4
|
label: string;
|
|
5
5
|
value?: string;
|
|
@@ -7,11 +7,8 @@ export interface FilterChipProps {
|
|
|
7
7
|
className?: string;
|
|
8
8
|
ref?: React.RefObject<HTMLDivElement>;
|
|
9
9
|
children?: ReactNode;
|
|
10
|
-
columnType?:
|
|
11
|
-
options?:
|
|
12
|
-
label: string;
|
|
13
|
-
value: string;
|
|
14
|
-
}>;
|
|
10
|
+
columnType?: FilterTypes;
|
|
11
|
+
options?: FilterSelectOption[];
|
|
15
12
|
onValueChange?: (value: any) => void;
|
|
16
13
|
onOperationChange?: (operation: string) => void;
|
|
17
14
|
leadingIcon?: ReactElement;
|
|
@@ -20,5 +17,4 @@ export declare const FilterChip: {
|
|
|
20
17
|
({ label, value, onRemove, className, ref, columnType, options, onValueChange, onOperationChange, leadingIcon, ...props }: FilterChipProps): import("react/jsx-runtime").JSX.Element;
|
|
21
18
|
displayName: string;
|
|
22
19
|
};
|
|
23
|
-
export {};
|
|
24
20
|
//# sourceMappingURL=filter-chip.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter-chip.d.ts","sourceRoot":"","sources":["../../../../v1/components/filter-chip/filter-chip.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAuB,YAAY,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"filter-chip.d.ts","sourceRoot":"","sources":["../../../../v1/components/filter-chip/filter-chip.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAuB,YAAY,EAAE,MAAM,OAAO,CAAC;AAQrE,OAAO,EACL,kBAAkB,EAGlB,WAAW,EAEZ,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IACtC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC/B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACrC,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,WAAW,CAAC,EAAE,YAAY,CAAC;CAC5B;AAyDD,eAAO,MAAM,UAAU;+HAYpB,eAAe;;CAgGjB,CAAC"}
|
|
@@ -10,22 +10,33 @@ import '../../node_modules/.pnpm/react-day-picker@9.0.4_react@18.2.0/node_module
|
|
|
10
10
|
import '../../node_modules/.pnpm/react-day-picker@9.0.4_react@18.2.0/node_modules/react-day-picker/dist/esm/useDayPicker.js';
|
|
11
11
|
import '../tooltip/tooltip.js';
|
|
12
12
|
import { DatePicker } from '../calendar/date-picker.js';
|
|
13
|
-
import
|
|
13
|
+
import '../../node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/dayjs.min.js';
|
|
14
|
+
import '../popover/popover.js';
|
|
14
15
|
import styles from './filter-chip.module.css.js';
|
|
16
|
+
import { FilterType, filterOperators } from '../../types/filters.js';
|
|
15
17
|
|
|
16
|
-
const
|
|
17
|
-
const [
|
|
18
|
-
|
|
19
|
-
const
|
|
20
|
-
{ label: 'is', value: 'is' },
|
|
21
|
-
{ label: 'is not', value: 'is not' },
|
|
22
|
-
{ label: 'contains', value: 'contains' },
|
|
23
|
-
];
|
|
18
|
+
const Operation = ({ label, columnType = FilterType.text, onOperationSelect, }) => {
|
|
19
|
+
const filterOptions = filterOperators[columnType] || [];
|
|
20
|
+
// FilterOperatorTypes gives error as Select returns string
|
|
21
|
+
const [value, setValue] = useState(filterOptions?.[0]?.value);
|
|
24
22
|
useEffect(() => {
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
const selectedOption = filterOptions.find((o) => o.value === value);
|
|
24
|
+
if (selectedOption) {
|
|
25
|
+
onOperationSelect(selectedOption);
|
|
27
26
|
}
|
|
28
|
-
}, [
|
|
27
|
+
}, [value]);
|
|
28
|
+
return (jsxRuntimeExports.jsxs(Select, { value: value, onValueChange: setValue, "aria-labelledby": `${label}-label`, children: [jsxRuntimeExports.jsx(Select.Trigger, { variant: "filter", className: styles.operation, "aria-label": `${label} filter operation`, children: jsxRuntimeExports.jsx(Select.Value, { placeholder: "Select operation", className: styles.operationText }) }), jsxRuntimeExports.jsx(Select.Content, { "data-variant": "filter", children: filterOptions.map((opt) => {
|
|
29
|
+
return (jsxRuntimeExports.jsx(Select.Item, { value: opt.value, "aria-label": `Filter ${label} ${opt.label}`, children: opt.label }, opt.value));
|
|
30
|
+
}) })] }));
|
|
31
|
+
};
|
|
32
|
+
const FilterChip = ({ label, value, onRemove = () => null, className, ref, columnType = "text", options = [], onValueChange, onOperationChange, leadingIcon, ...props }) => {
|
|
33
|
+
const [operation, setOperation] = useState();
|
|
34
|
+
const [filterValue, setFilterValue] = useState(value || "");
|
|
35
|
+
useEffect(() => {
|
|
36
|
+
if (onOperationChange && operation?.value) {
|
|
37
|
+
onOperationChange(operation?.value);
|
|
38
|
+
}
|
|
39
|
+
}, [operation?.value]);
|
|
29
40
|
useEffect(() => {
|
|
30
41
|
if (onValueChange) {
|
|
31
42
|
onValueChange(filterValue);
|
|
@@ -33,17 +44,15 @@ const FilterChip = ({ label, value, onRemove = () => null, className, ref, colum
|
|
|
33
44
|
}, [filterValue]);
|
|
34
45
|
const renderValueInput = () => {
|
|
35
46
|
switch (columnType) {
|
|
36
|
-
case
|
|
37
|
-
return (jsxRuntimeExports.jsxs(Select, { value: filterValue, onValueChange: setFilterValue, children: [jsxRuntimeExports.jsx(Select.Trigger, { variant: "filter",
|
|
38
|
-
case
|
|
39
|
-
return (jsxRuntimeExports.jsx("div", { className: styles.dateFieldWrapper, children: jsxRuntimeExports.jsx(DatePicker, { onSelect: (date) => setFilterValue(date), showCalendarIcon: false, textFieldProps: { className: styles.dateField } }) }));
|
|
40
|
-
case 'range':
|
|
41
|
-
return (jsxRuntimeExports.jsx("div", { className: styles.dateFieldWrapper, children: jsxRuntimeExports.jsx(RangePicker, { textFieldProps: { className: styles.dateField }, onSelect: (range) => setFilterValue(range), showCalendarIcon: false, value: filterValue }) }));
|
|
47
|
+
case FilterType.select:
|
|
48
|
+
return (jsxRuntimeExports.jsxs(Select, { value: filterValue.toString(), onValueChange: setFilterValue, children: [jsxRuntimeExports.jsx(Select.Trigger, { variant: "filter", className: styles.selectValue, children: jsxRuntimeExports.jsx(Select.Value, { placeholder: "Select value" }) }), jsxRuntimeExports.jsx(Select.Content, { "data-variant": "filter", children: options.map((opt) => (jsxRuntimeExports.jsx(Select.Item, { value: opt.value.toString(), children: opt.label }, opt.value.toString()))) })] }));
|
|
49
|
+
case FilterType.date:
|
|
50
|
+
return (jsxRuntimeExports.jsx("div", { className: styles.dateFieldWrapper, children: jsxRuntimeExports.jsx(DatePicker, { value: filterValue, onSelect: (date) => setFilterValue(date), showCalendarIcon: false, textFieldProps: { className: styles.dateField } }) }));
|
|
42
51
|
default:
|
|
43
52
|
return (jsxRuntimeExports.jsx("div", { className: styles.textFieldWrapper, children: jsxRuntimeExports.jsx(TextField, { className: styles.textField, value: filterValue, onChange: (e) => setFilterValue(e.target.value) }) }));
|
|
44
53
|
}
|
|
45
54
|
};
|
|
46
|
-
return (jsxRuntimeExports.jsx(Box, { ref: ref, className: [styles.chip, className].filter(Boolean).join(" "), role: "group", "aria-label": `Filter by ${label}`, ...props, children: jsxRuntimeExports.jsxs(Flex, { align: "center", children: [jsxRuntimeExports.jsxs(Flex, { align: "center",
|
|
55
|
+
return (jsxRuntimeExports.jsx(Box, { ref: ref, className: [styles.chip, className].filter(Boolean).join(" "), role: "group", "aria-label": `Filter by ${label}`, ...props, children: jsxRuntimeExports.jsxs(Flex, { align: "center", children: [jsxRuntimeExports.jsxs(Flex, { align: "center", gap: 2, children: [leadingIcon && (jsxRuntimeExports.jsx("span", { className: styles.leadingIcon, "aria-hidden": "true", children: leadingIcon })), jsxRuntimeExports.jsx(Text, { size: 2, weight: "normal", children: label })] }), jsxRuntimeExports.jsx(Operation, { columnType: columnType, label: label, onOperationSelect: setOperation }), renderValueInput(), jsxRuntimeExports.jsx("div", { className: styles.removeIconContainer, role: "button", tabIndex: 0, "aria-label": `Remove ${label} filter`, children: jsxRuntimeExports.jsx(Cross1Icon, { className: styles.removeIcon, onClick: onRemove }) })] }) }));
|
|
47
56
|
};
|
|
48
57
|
FilterChip.displayName = "FilterChip";
|
|
49
58
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter-chip.js","sources":["../../../../v1/components/filter-chip/filter-chip.tsx"],"sourcesContent":["import { Cross1Icon } from \"@radix-ui/react-icons\";\nimport { ReactNode, useEffect, useState, ReactElement } from \"react\";\nimport { Box } from \"../box\";\nimport { Flex } from \"../flex\";\nimport { Select } from \"../select\";\nimport { Text } from \"../text\";\nimport { TextField } from \"../textfield\";\nimport { DatePicker
|
|
1
|
+
{"version":3,"file":"filter-chip.js","sources":["../../../../v1/components/filter-chip/filter-chip.tsx"],"sourcesContent":["import { Cross1Icon } from \"@radix-ui/react-icons\";\nimport { ReactNode, useEffect, useState, ReactElement } from \"react\";\nimport { Box } from \"../box\";\nimport { Flex } from \"../flex\";\nimport { Select } from \"../select\";\nimport { Text } from \"../text\";\nimport { TextField } from \"../textfield\";\nimport { DatePicker } from \"../calendar\";\nimport styles from \"./filter-chip.module.css\";\nimport {\n FilterSelectOption,\n FilterOperation,\n FilterType,\n FilterTypes,\n filterOperators,\n} from \"~/v1/types/filters\";\n\nexport interface FilterChipProps {\n label: string;\n value?: string;\n onRemove?: () => void;\n className?: string;\n ref?: React.RefObject<HTMLDivElement>;\n children?: ReactNode;\n columnType?: FilterTypes;\n options?: FilterSelectOption[];\n onValueChange?: (value: any) => void;\n onOperationChange?: (operation: string) => void;\n leadingIcon?: ReactElement;\n}\n\ninterface OperationProps {\n label: string;\n columnType: FilterTypes;\n onOperationSelect: (op: FilterOperation) => void;\n}\n\nconst Operation = ({\n label,\n columnType = FilterType.text,\n onOperationSelect,\n}: OperationProps) => {\n const filterOptions = filterOperators[columnType] || [];\n // FilterOperatorTypes gives error as Select returns string\n const [value, setValue] = useState<string>(filterOptions?.[0]?.value);\n\n useEffect(() => {\n const selectedOption = filterOptions.find((o) => o.value === value);\n if (selectedOption) {\n onOperationSelect(selectedOption);\n }\n }, [value]);\n\n return (\n <Select\n value={value}\n onValueChange={setValue}\n aria-labelledby={`${label}-label`}\n >\n <Select.Trigger\n variant=\"filter\"\n className={styles.operation}\n aria-label={`${label} filter operation`}\n >\n <Select.Value\n placeholder=\"Select operation\"\n className={styles.operationText}\n />\n </Select.Trigger>\n <Select.Content data-variant=\"filter\">\n {filterOptions.map((opt) => {\n return (\n <Select.Item\n key={opt.value}\n value={opt.value}\n aria-label={`Filter ${label} ${opt.label}`}\n >\n {opt.label}\n </Select.Item>\n );\n })}\n </Select.Content>\n </Select>\n );\n};\n\nexport const FilterChip = ({\n label,\n value,\n onRemove = () => null,\n className,\n ref,\n columnType = \"text\",\n options = [],\n onValueChange,\n onOperationChange,\n leadingIcon,\n ...props\n}: FilterChipProps) => {\n const [operation, setOperation] = useState<FilterOperation>();\n const [filterValue, setFilterValue] = useState<any>(value || \"\");\n\n useEffect(() => {\n if (onOperationChange && operation?.value) {\n onOperationChange(operation?.value);\n }\n }, [operation?.value]);\n\n useEffect(() => {\n if (onValueChange) {\n onValueChange(filterValue);\n }\n }, [filterValue]);\n\n const renderValueInput = () => {\n switch (columnType) {\n case FilterType.select:\n return (\n <Select value={filterValue.toString()} onValueChange={setFilterValue}>\n <Select.Trigger variant=\"filter\" className={styles.selectValue}>\n <Select.Value placeholder=\"Select value\" />\n </Select.Trigger>\n <Select.Content data-variant=\"filter\">\n {options.map((opt) => (\n <Select.Item\n key={opt.value.toString()}\n value={opt.value.toString()}\n >\n {opt.label}\n </Select.Item>\n ))}\n </Select.Content>\n </Select>\n );\n case FilterType.date:\n return (\n <div className={styles.dateFieldWrapper}>\n <DatePicker\n value={filterValue}\n onSelect={(date) => setFilterValue(date)}\n showCalendarIcon={false}\n textFieldProps={{ className: styles.dateField }}\n />\n </div>\n );\n default:\n return (\n <div className={styles.textFieldWrapper}>\n <TextField\n className={styles.textField}\n value={filterValue}\n onChange={(e) => setFilterValue(e.target.value)}\n />\n </div>\n );\n }\n };\n\n return (\n <Box\n ref={ref}\n className={[styles.chip, className].filter(Boolean).join(\" \")}\n role=\"group\"\n aria-label={`Filter by ${label}`}\n {...props}\n >\n <Flex align=\"center\">\n <Flex align=\"center\" gap={2}>\n {leadingIcon && (\n <span className={styles.leadingIcon} aria-hidden=\"true\">\n {leadingIcon}\n </span>\n )}\n <Text size={2} weight=\"normal\">\n {label}\n </Text>\n </Flex>\n <Operation\n columnType={columnType}\n label={label}\n onOperationSelect={setOperation}\n />\n {renderValueInput()}\n <div\n className={styles.removeIconContainer}\n role=\"button\"\n tabIndex={0}\n aria-label={`Remove ${label} filter`}\n >\n <Cross1Icon className={styles.removeIcon} onClick={onRemove} />\n </div>\n </Flex>\n </Box>\n );\n};\n\nFilterChip.displayName = \"FilterChip\";\n"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;;;;;;;;;;;AAqCA,MAAM,SAAS,GAAG,CAAC,EACjB,KAAK,EACL,UAAU,GAAG,UAAU,CAAC,IAAI,EAC5B,iBAAiB,GACF,KAAI;IACnB,MAAM,aAAa,GAAG,eAAe,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;;AAExD,IAAA,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAS,aAAa,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAEtE,SAAS,CAAC,MAAK;AACb,QAAA,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QACpE,IAAI,cAAc,EAAE;YAClB,iBAAiB,CAAC,cAAc,CAAC,CAAC;SACnC;AACH,KAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAEZ,IAAA,QACEA,sBAAA,CAAC,MAAM,EAAA,EACL,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,QAAQ,EAAA,iBAAA,EACN,GAAG,KAAK,CAAA,MAAA,CAAQ,EAEjC,QAAA,EAAA,CAAAC,qBAAA,CAAC,MAAM,CAAC,OAAO,EAAA,EACb,OAAO,EAAC,QAAQ,EAChB,SAAS,EAAE,MAAM,CAAC,SAAS,gBACf,CAAG,EAAA,KAAK,CAAmB,iBAAA,CAAA,EAAA,QAAA,EAEvCA,qBAAC,CAAA,MAAM,CAAC,KAAK,EACX,EAAA,WAAW,EAAC,kBAAkB,EAC9B,SAAS,EAAE,MAAM,CAAC,aAAa,EAAA,CAC/B,EACa,CAAA,EACjBA,qBAAC,CAAA,MAAM,CAAC,OAAO,oBAAc,QAAQ,EAAA,QAAA,EAClC,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,KAAI;AACzB,oBAAA,QACEA,qBAAA,CAAC,MAAM,CAAC,IAAI,EAAA,EAEV,KAAK,EAAE,GAAG,CAAC,KAAK,EAAA,YAAA,EACJ,CAAU,OAAA,EAAA,KAAK,CAAI,CAAA,EAAA,GAAG,CAAC,KAAK,CAAE,CAAA,EAAA,QAAA,EAEzC,GAAG,CAAC,KAAK,EAAA,EAJL,GAAG,CAAC,KAAK,CAKF,EACd;AACJ,iBAAC,CAAC,EAAA,CACa,CACV,EAAA,CAAA,EACT;AACJ,CAAC,CAAC;AAEW,MAAA,UAAU,GAAG,CAAC,EACzB,KAAK,EACL,KAAK,EACL,QAAQ,GAAG,MAAM,IAAI,EACrB,SAAS,EACT,GAAG,EACH,UAAU,GAAG,MAAM,EACnB,OAAO,GAAG,EAAE,EACZ,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,GAAG,KAAK,EACQ,KAAI;IACpB,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,EAAmB,CAAC;AAC9D,IAAA,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAEjE,SAAS,CAAC,MAAK;AACb,QAAA,IAAI,iBAAiB,IAAI,SAAS,EAAE,KAAK,EAAE;AACzC,YAAA,iBAAiB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;SACrC;AACH,KAAC,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAEvB,SAAS,CAAC,MAAK;QACb,IAAI,aAAa,EAAE;YACjB,aAAa,CAAC,WAAW,CAAC,CAAC;SAC5B;AACH,KAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,gBAAgB,GAAG,MAAK;QAC5B,QAAQ,UAAU;YAChB,KAAK,UAAU,CAAC,MAAM;AACpB,gBAAA,QACED,sBAAC,CAAA,MAAM,IAAC,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,aAAa,EAAE,cAAc,EAAA,QAAA,EAAA,CAClEC,sBAAC,MAAM,CAAC,OAAO,EAAC,EAAA,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAE,MAAM,CAAC,WAAW,YAC5DA,qBAAC,CAAA,MAAM,CAAC,KAAK,EAAA,EAAC,WAAW,EAAC,cAAc,GAAG,EAC5B,CAAA,EACjBA,sBAAC,MAAM,CAAC,OAAO,EAAA,EAAA,cAAA,EAAc,QAAQ,EAClC,QAAA,EAAA,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,MACfA,sBAAC,MAAM,CAAC,IAAI,EAEV,EAAA,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAA,QAAA,EAE1B,GAAG,CAAC,KAAK,IAHL,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAIb,CACf,CAAC,EACa,CAAA,CAAA,EAAA,CACV,EACT;YACJ,KAAK,UAAU,CAAC,IAAI;AAClB,gBAAA,QACEA,qBAAK,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,MAAM,CAAC,gBAAgB,EACrC,QAAA,EAAAA,qBAAA,CAAC,UAAU,EACT,EAAA,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,CAAC,IAAI,KAAK,cAAc,CAAC,IAAI,CAAC,EACxC,gBAAgB,EAAE,KAAK,EACvB,cAAc,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,EAC/C,CAAA,EAAA,CACE,EACN;AACJ,YAAA;AACE,gBAAA,QACEA,qBAAK,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,MAAM,CAAC,gBAAgB,EAAA,QAAA,EACrCA,qBAAC,CAAA,SAAS,IACR,SAAS,EAAE,MAAM,CAAC,SAAS,EAC3B,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC/C,CAAA,EAAA,CACE,EACN;SACL;AACH,KAAC,CAAC;AAEF,IAAA,QACEA,qBAAA,CAAC,GAAG,EAAA,EACF,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAC7D,IAAI,EAAC,OAAO,gBACA,CAAa,UAAA,EAAA,KAAK,CAAE,CAAA,EAAA,GAC5B,KAAK,EAAA,QAAA,EAETD,sBAAC,CAAA,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAA,QAAA,EAAA,CAClBA,sBAAC,CAAA,IAAI,EAAC,EAAA,KAAK,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,EAAA,QAAA,EAAA,CACxB,WAAW,KACVC,qBAAM,CAAA,MAAA,EAAA,EAAA,SAAS,EAAE,MAAM,CAAC,WAAW,EAAA,aAAA,EAAc,MAAM,EAAA,QAAA,EACpD,WAAW,EACP,CAAA,CACR,EACDA,qBAAA,CAAC,IAAI,EAAA,EAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAC,QAAQ,EAC3B,QAAA,EAAA,KAAK,EACD,CAAA,CAAA,EAAA,CACF,EACPA,qBAAC,CAAA,SAAS,EACR,EAAA,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,KAAK,EACZ,iBAAiB,EAAE,YAAY,EAAA,CAC/B,EACD,gBAAgB,EAAE,EACnBA,qBAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAE,MAAM,CAAC,mBAAmB,EACrC,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,EACC,YAAA,EAAA,CAAA,OAAA,EAAU,KAAK,CAAS,OAAA,CAAA,EAAA,QAAA,EAEpCA,qBAAC,CAAA,UAAU,EAAC,EAAA,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAI,CAAA,EAAA,CAC3D,CACD,EAAA,CAAA,EAAA,CACH,EACN;AACJ,EAAE;AAEF,UAAU,CAAC,WAAW,GAAG,YAAY;;;;"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
|
|
5
|
+
function _interopNamespaceDefault(e) {
|
|
6
|
+
var n = Object.create(null);
|
|
7
|
+
if (e) {
|
|
8
|
+
Object.keys(e).forEach(function (k) {
|
|
9
|
+
if (k !== 'default') {
|
|
10
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
11
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
12
|
+
enumerable: true,
|
|
13
|
+
get: function () { return e[k]; }
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
n.default = e;
|
|
19
|
+
return Object.freeze(n);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
|
|
23
|
+
|
|
24
|
+
var _path;
|
|
25
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
26
|
+
var SvgFilter = function SvgFilter(props) {
|
|
27
|
+
return /*#__PURE__*/React__namespace.createElement("svg", _extends({
|
|
28
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
29
|
+
width: 16,
|
|
30
|
+
height: 16,
|
|
31
|
+
fill: "none"
|
|
32
|
+
}, props), _path || (_path = /*#__PURE__*/React__namespace.createElement("path", {
|
|
33
|
+
fill: "var(--rs-color-foreground-base-secondary)",
|
|
34
|
+
fillRule: "evenodd",
|
|
35
|
+
d: "M2.167 4.8a.5.5 0 0 1 .5-.5h10.666a.5.5 0 1 1 0 1H2.667a.5.5 0 0 1-.5-.5M4.3 8a.5.5 0 0 1 .5-.5h6.4a.5.5 0 0 1 0 1H4.8a.5.5 0 0 1-.5-.5m.933 3.2a.5.5 0 0 1 .5-.5h4.534a.5.5 0 1 1 0 1H5.733a.5.5 0 0 1-.5-.5",
|
|
36
|
+
clipRule: "evenodd"
|
|
37
|
+
})));
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
exports.ReactComponent = SvgFilter;
|
|
41
|
+
//# sourceMappingURL=filter.svg.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter.svg.cjs","sources":["../../../../../v1/components/icons/assets/filter.svg"],"sourcesContent":["var img = \"data:image/svg+xml,%3csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3cg id='Filter'%3e %3cpath id='Shape' fill-rule='evenodd' clip-rule='evenodd' d='M2.16675 4.80005C2.16675 4.52391 2.39061 4.30005 2.66675 4.30005H13.3334C13.6096 4.30005 13.8334 4.52391 13.8334 4.80005C13.8334 5.07619 13.6096 5.30005 13.3334 5.30005H2.66675C2.39061 5.30005 2.16675 5.07619 2.16675 4.80005ZM4.30008 8.00005C4.30008 7.72391 4.52394 7.50005 4.80008 7.50005H11.2001C11.4762 7.50005 11.7001 7.72391 11.7001 8.00005C11.7001 8.27619 11.4762 8.50005 11.2001 8.50005H4.80008C4.52394 8.50005 4.30008 8.27619 4.30008 8.00005ZM5.23341 11.2C5.23341 10.9239 5.45727 10.7 5.73341 10.7H10.2667C10.5429 10.7 10.7667 10.9239 10.7667 11.2C10.7667 11.4762 10.5429 11.7 10.2667 11.7H5.73341C5.45727 11.7 5.23341 11.4762 5.23341 11.2Z' fill='var(--rs-color-foreground-base-secondary)' /%3e %3c/g%3e%3c/svg%3e\";\n export default img;"],"names":["React"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAI,KAAK,CAAC;AACV,SAAS,QAAQ,GAAG,EAAE,OAAO,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,UAAU,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE;AAEjR,IAAC,SAAS,GAAG,SAAS,SAAS,CAAC,KAAK,EAAE;AAC1C,EAAE,oBAAoBA,gBAAK,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC;AAC1D,IAAI,KAAK,EAAE,4BAA4B;AACvC,IAAI,KAAK,EAAE,EAAE;AACb,IAAI,MAAM,EAAE,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG,EAAE,KAAK,CAAC,EAAE,KAAK,KAAK,KAAK,gBAAgBA,gBAAK,CAAC,aAAa,CAAC,MAAM,EAAE;AACxE,IAAI,IAAI,EAAE,2CAA2C;AACrD,IAAI,QAAQ,EAAE,SAAS;AACvB,IAAI,CAAC,EAAE,+MAA+M;AACtN,IAAI,QAAQ,EAAE,SAAS;AACvB,GAAG,CAAC,CAAC,CAAC,CAAC;AACP;;;;"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
var _path;
|
|
4
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
5
|
+
var SvgFilter = function SvgFilter(props) {
|
|
6
|
+
return /*#__PURE__*/React.createElement("svg", _extends({
|
|
7
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
8
|
+
width: 16,
|
|
9
|
+
height: 16,
|
|
10
|
+
fill: "none"
|
|
11
|
+
}, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
|
|
12
|
+
fill: "var(--rs-color-foreground-base-secondary)",
|
|
13
|
+
fillRule: "evenodd",
|
|
14
|
+
d: "M2.167 4.8a.5.5 0 0 1 .5-.5h10.666a.5.5 0 1 1 0 1H2.667a.5.5 0 0 1-.5-.5M4.3 8a.5.5 0 0 1 .5-.5h6.4a.5.5 0 0 1 0 1H4.8a.5.5 0 0 1-.5-.5m.933 3.2a.5.5 0 0 1 .5-.5h4.534a.5.5 0 1 1 0 1H5.733a.5.5 0 0 1-.5-.5",
|
|
15
|
+
clipRule: "evenodd"
|
|
16
|
+
})));
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export { SvgFilter as ReactComponent };
|
|
20
|
+
//# sourceMappingURL=filter.svg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter.svg.js","sources":["../../../../../v1/components/icons/assets/filter.svg"],"sourcesContent":["var img = \"data:image/svg+xml,%3csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3cg id='Filter'%3e %3cpath id='Shape' fill-rule='evenodd' clip-rule='evenodd' d='M2.16675 4.80005C2.16675 4.52391 2.39061 4.30005 2.66675 4.30005H13.3334C13.6096 4.30005 13.8334 4.52391 13.8334 4.80005C13.8334 5.07619 13.6096 5.30005 13.3334 5.30005H2.66675C2.39061 5.30005 2.16675 5.07619 2.16675 4.80005ZM4.30008 8.00005C4.30008 7.72391 4.52394 7.50005 4.80008 7.50005H11.2001C11.4762 7.50005 11.7001 7.72391 11.7001 8.00005C11.7001 8.27619 11.4762 8.50005 11.2001 8.50005H4.80008C4.52394 8.50005 4.30008 8.27619 4.30008 8.00005ZM5.23341 11.2C5.23341 10.9239 5.45727 10.7 5.73341 10.7H10.2667C10.5429 10.7 10.7667 10.9239 10.7667 11.2C10.7667 11.4762 10.5429 11.7 10.2667 11.7H5.73341C5.45727 11.7 5.23341 11.4762 5.23341 11.2Z' fill='var(--rs-color-foreground-base-secondary)' /%3e %3c/g%3e%3c/svg%3e\";\n export default img;"],"names":[],"mappings":";;AAAA,IAAI,KAAK,CAAC;AACV,SAAS,QAAQ,GAAG,EAAE,OAAO,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,UAAU,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE;AAEjR,IAAC,SAAS,GAAG,SAAS,SAAS,CAAC,KAAK,EAAE;AAC1C,EAAE,oBAAoB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC;AAC1D,IAAI,KAAK,EAAE,4BAA4B;AACvC,IAAI,KAAK,EAAE,EAAE;AACb,IAAI,MAAM,EAAE,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG,EAAE,KAAK,CAAC,EAAE,KAAK,KAAK,KAAK,gBAAgB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE;AACxE,IAAI,IAAI,EAAE,2CAA2C;AACrD,IAAI,QAAQ,EAAE,SAAS;AACvB,IAAI,CAAC,EAAE,+MAA+M;AACtN,IAAI,QAAQ,EAAE,SAAS;AACvB,GAAG,CAAC,CAAC,CAAC,CAAC;AACP;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../../../v1/components/icons/icons.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEnE,OAAO,EAAE,UAAU,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../v1/components/icons/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -6,7 +6,7 @@ var clsx = require('../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/c
|
|
|
6
6
|
var chip = require('../chip/chip.cjs');
|
|
7
7
|
var inputField_module = require('./input-field.module.css.cjs');
|
|
8
8
|
|
|
9
|
-
// Todo: Add a dropdown
|
|
9
|
+
// Todo: Add a dropdown support
|
|
10
10
|
const inputWrapper = index.cva(inputField_module.default.inputWrapper, {
|
|
11
11
|
variants: {
|
|
12
12
|
size: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input-field.cjs","sources":["../../../../v1/components/input-field/input-field.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport clsx from \"clsx\";\nimport { ComponentPropsWithoutRef, ReactNode } from \"react\";\n\nimport { Chip } from \"../chip\";\nimport styles from \"./input-field.module.css\";\n\n// Todo: Add a dropdown
|
|
1
|
+
{"version":3,"file":"input-field.cjs","sources":["../../../../v1/components/input-field/input-field.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport clsx from \"clsx\";\nimport { ComponentPropsWithoutRef, ReactNode } from \"react\";\n\nimport { Chip } from \"../chip\";\nimport styles from \"./input-field.module.css\";\n\n// Todo: Add a dropdown support\n\nconst inputWrapper = cva(styles.inputWrapper, {\n variants: {\n size: {\n small: styles[\"size-small\"],\n large: styles[\"size-large\"],\n }\n },\n defaultVariants: {\n size: \"large\",\n }\n});\n\nexport interface InputFieldProps\n extends Omit<ComponentPropsWithoutRef<\"input\">, \"error\" | \"size\">,\n VariantProps<typeof inputWrapper> {\n label?: string;\n helperText?: string;\n error?: string;\n disabled?: boolean;\n leadingIcon?: ReactNode;\n trailingIcon?: ReactNode;\n optional?: boolean;\n prefix?: string;\n suffix?: string;\n width?: string | number;\n chips?: Array<{ label: string; onRemove?: () => void }>;\n maxChipsVisible?: number;\n ref?: React.RefObject<HTMLInputElement>;\n}\n\nexport const InputField = ({ \n className,\n disabled,\n label,\n helperText,\n placeholder,\n error,\n leadingIcon,\n trailingIcon,\n optional,\n prefix,\n suffix,\n width,\n chips,\n maxChipsVisible = 2,\n ref,\n size,\n ...props \n}: InputFieldProps) => {\n return (\n <div className={styles.container} style={{ width: width || '100%' }}>\n {label && (\n <label className={clsx(styles.label, disabled && styles[\"label-disabled\"])}>\n {label}\n {optional && <span className={styles.optional}>(optional)</span>}\n </label>\n )}\n <div \n className={clsx(\n inputWrapper({ size, className }),\n chips?.length && styles['has-chips']\n )}\n >\n {leadingIcon && <span className={styles['leading-icon']}>{leadingIcon}</span>}\n {prefix && <span className={styles.prefix}>{prefix}</span>}\n <div className={styles['chip-input-container']}>\n {chips?.slice(0, maxChipsVisible).map((chip, index) => (\n <Chip\n key={index}\n variant=\"outline\"\n isDismissible={!!chip.onRemove}\n onDismiss={chip.onRemove}\n className={styles.chip}\n >\n {chip.label}\n </Chip>\n ))}\n {chips && chips.length > maxChipsVisible && (\n <span className={styles['chip-overflow']}>\n +{chips.length - maxChipsVisible}\n </span>\n )}\n <input\n ref={ref}\n className={clsx(\n styles['input-field'],\n leadingIcon && styles['has-leading-icon'],\n trailingIcon && styles['has-trailing-icon'],\n prefix && styles['has-prefix'],\n suffix && styles['has-suffix'],\n error && styles['input-error'],\n disabled && styles['input-disabled'],\n className\n )}\n aria-invalid={!!error}\n placeholder={placeholder}\n disabled={disabled}\n {...props}\n />\n </div>\n {suffix && <span className={styles.suffix}>{suffix}</span>}\n {trailingIcon && <span className={styles['trailing-icon']}>{trailingIcon}</span>}\n </div>\n {(error || helperText) && (\n <span \n className={clsx(\n styles['helper-text'], \n error && styles['helper-text-error'],\n disabled && styles['helper-text-disabled']\n )}\n >\n {error || helperText}\n </span>\n )}\n </div>\n );\n};\n\nInputField.displayName = \"InputField\";"],"names":["cva","styles","_jsxs","clsx","_jsx","chip","Chip"],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { clsx } from '../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist
|
|
|
4
4
|
import { Chip } from '../chip/chip.js';
|
|
5
5
|
import styles from './input-field.module.css.js';
|
|
6
6
|
|
|
7
|
-
// Todo: Add a dropdown
|
|
7
|
+
// Todo: Add a dropdown support
|
|
8
8
|
const inputWrapper = cva(styles.inputWrapper, {
|
|
9
9
|
variants: {
|
|
10
10
|
size: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input-field.js","sources":["../../../../v1/components/input-field/input-field.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport clsx from \"clsx\";\nimport { ComponentPropsWithoutRef, ReactNode } from \"react\";\n\nimport { Chip } from \"../chip\";\nimport styles from \"./input-field.module.css\";\n\n// Todo: Add a dropdown
|
|
1
|
+
{"version":3,"file":"input-field.js","sources":["../../../../v1/components/input-field/input-field.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport clsx from \"clsx\";\nimport { ComponentPropsWithoutRef, ReactNode } from \"react\";\n\nimport { Chip } from \"../chip\";\nimport styles from \"./input-field.module.css\";\n\n// Todo: Add a dropdown support\n\nconst inputWrapper = cva(styles.inputWrapper, {\n variants: {\n size: {\n small: styles[\"size-small\"],\n large: styles[\"size-large\"],\n }\n },\n defaultVariants: {\n size: \"large\",\n }\n});\n\nexport interface InputFieldProps\n extends Omit<ComponentPropsWithoutRef<\"input\">, \"error\" | \"size\">,\n VariantProps<typeof inputWrapper> {\n label?: string;\n helperText?: string;\n error?: string;\n disabled?: boolean;\n leadingIcon?: ReactNode;\n trailingIcon?: ReactNode;\n optional?: boolean;\n prefix?: string;\n suffix?: string;\n width?: string | number;\n chips?: Array<{ label: string; onRemove?: () => void }>;\n maxChipsVisible?: number;\n ref?: React.RefObject<HTMLInputElement>;\n}\n\nexport const InputField = ({ \n className,\n disabled,\n label,\n helperText,\n placeholder,\n error,\n leadingIcon,\n trailingIcon,\n optional,\n prefix,\n suffix,\n width,\n chips,\n maxChipsVisible = 2,\n ref,\n size,\n ...props \n}: InputFieldProps) => {\n return (\n <div className={styles.container} style={{ width: width || '100%' }}>\n {label && (\n <label className={clsx(styles.label, disabled && styles[\"label-disabled\"])}>\n {label}\n {optional && <span className={styles.optional}>(optional)</span>}\n </label>\n )}\n <div \n className={clsx(\n inputWrapper({ size, className }),\n chips?.length && styles['has-chips']\n )}\n >\n {leadingIcon && <span className={styles['leading-icon']}>{leadingIcon}</span>}\n {prefix && <span className={styles.prefix}>{prefix}</span>}\n <div className={styles['chip-input-container']}>\n {chips?.slice(0, maxChipsVisible).map((chip, index) => (\n <Chip\n key={index}\n variant=\"outline\"\n isDismissible={!!chip.onRemove}\n onDismiss={chip.onRemove}\n className={styles.chip}\n >\n {chip.label}\n </Chip>\n ))}\n {chips && chips.length > maxChipsVisible && (\n <span className={styles['chip-overflow']}>\n +{chips.length - maxChipsVisible}\n </span>\n )}\n <input\n ref={ref}\n className={clsx(\n styles['input-field'],\n leadingIcon && styles['has-leading-icon'],\n trailingIcon && styles['has-trailing-icon'],\n prefix && styles['has-prefix'],\n suffix && styles['has-suffix'],\n error && styles['input-error'],\n disabled && styles['input-disabled'],\n className\n )}\n aria-invalid={!!error}\n placeholder={placeholder}\n disabled={disabled}\n {...props}\n />\n </div>\n {suffix && <span className={styles.suffix}>{suffix}</span>}\n {trailingIcon && <span className={styles['trailing-icon']}>{trailingIcon}</span>}\n </div>\n {(error || helperText) && (\n <span \n className={clsx(\n styles['helper-text'], \n error && styles['helper-text-error'],\n disabled && styles['helper-text-disabled']\n )}\n >\n {error || helperText}\n </span>\n )}\n </div>\n );\n};\n\nInputField.displayName = \"InputField\";"],"names":["_jsxs","_jsx"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../v1/components/sidebar/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.cjs');
|
|
4
|
+
var index = require('../../node_modules/.pnpm/@radix-ui_react-collapsible@1.1.2_@types_react-dom@18.0.11_@types_react@18.2.12_react-dom@18._hjslo7xm5vmo3b4sx344jkbtcq/node_modules/@radix-ui/react-collapsible/dist/index.cjs');
|
|
5
|
+
var index$1 = require('../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.cjs');
|
|
6
|
+
var tooltip = require('../tooltip/tooltip.cjs');
|
|
7
|
+
var sidebar_module = require('./sidebar.module.css.cjs');
|
|
8
|
+
|
|
9
|
+
const root = index$1.cva(sidebar_module.default.root);
|
|
10
|
+
const SidebarRoot = ({ className, position = 'left', open, onOpenChange, children, profile, ref, ...props }) => (jsxRuntime.jsxRuntimeExports.jsx(tooltip.TooltipProvider, { children: jsxRuntime.jsxRuntimeExports.jsx(index.Root, { ref: ref, className: root({ className }), "data-position": position, "data-state": open ? 'expanded' : 'collapsed', open: open, onOpenChange: onOpenChange, "aria-label": "Navigation Sidebar", "aria-expanded": open, role: "navigation", ...props, asChild: true, children: jsxRuntime.jsxRuntimeExports.jsxs("aside", { children: [jsxRuntime.jsxRuntimeExports.jsx(tooltip.Tooltip, { message: open ? "Click to collapse" : "Click to expand", side: position === 'left' ? 'right' : 'left', asChild: true, children: jsxRuntime.jsxRuntimeExports.jsx("div", { className: sidebar_module.default.resizeHandle, onClick: () => onOpenChange?.(!open), role: "button", tabIndex: 0, "aria-label": open ? "Collapse sidebar" : "Expand sidebar", onKeyDown: (e) => {
|
|
11
|
+
if (e.key === 'Enter' || e.key === ' ') {
|
|
12
|
+
e.preventDefault();
|
|
13
|
+
onOpenChange?.(!open);
|
|
14
|
+
}
|
|
15
|
+
} }) }), children, profile && (jsxRuntime.jsxRuntimeExports.jsxs("a", { href: profile.href, className: sidebar_module.default.account, role: "button", "aria-label": `Profile: ${profile.label}`, onClick: (e) => {
|
|
16
|
+
if (profile.onIconClick) {
|
|
17
|
+
e.preventDefault();
|
|
18
|
+
profile.onIconClick();
|
|
19
|
+
}
|
|
20
|
+
}, children: [jsxRuntime.jsxRuntimeExports.jsx("span", { className: sidebar_module.default['nav-icon'], "aria-hidden": "true", style: { cursor: profile.onIconClick ? 'pointer' : undefined }, children: profile.icon }), jsxRuntime.jsxRuntimeExports.jsx("span", { className: sidebar_module.default['nav-text'], children: profile.label })] }))] }) }) }));
|
|
21
|
+
const SidebarHeader = ({ className, logo, title, onLogoClick, ref, ...props }) => (jsxRuntime.jsxRuntimeExports.jsxs("div", { ref: ref, className: sidebar_module.default.header, role: "banner", ...props, children: [jsxRuntime.jsxRuntimeExports.jsx("div", { className: sidebar_module.default.logo, onClick: onLogoClick, role: onLogoClick ? "button" : undefined, tabIndex: onLogoClick ? 0 : undefined, onKeyDown: (e) => {
|
|
22
|
+
if (onLogoClick && (e.key === 'Enter' || e.key === ' ')) {
|
|
23
|
+
e.preventDefault();
|
|
24
|
+
onLogoClick();
|
|
25
|
+
}
|
|
26
|
+
}, style: { cursor: onLogoClick ? 'pointer' : undefined }, children: logo }), jsxRuntime.jsxRuntimeExports.jsx("div", { className: sidebar_module.default.title, role: "heading", "aria-level": 1, children: title })] }));
|
|
27
|
+
const SidebarMain = ({ className, children, ref, ...props }) => (jsxRuntime.jsxRuntimeExports.jsx("div", { ref: ref, className: sidebar_module.default.main, role: "group", "aria-label": "Main navigation", ...props, children: children }));
|
|
28
|
+
const SidebarFooter = ({ className, children, ref, ...props }) => (jsxRuntime.jsxRuntimeExports.jsx("div", { ref: ref, className: sidebar_module.default.footer, role: "group", "aria-label": "Footer navigation", ...props, children: children }));
|
|
29
|
+
const SidebarItem = ({ className, icon, children, active, disabled, ref, ...props }) => (jsxRuntime.jsxRuntimeExports.jsxs("a", { ref: ref, className: sidebar_module.default['nav-item'], "data-active": active, "data-disabled": disabled, role: "menuitem", "aria-current": active ? "page" : undefined, "aria-disabled": disabled, ...props, children: [jsxRuntime.jsxRuntimeExports.jsx("span", { className: sidebar_module.default['nav-icon'], "aria-hidden": "true", children: icon }), jsxRuntime.jsxRuntimeExports.jsx("span", { className: sidebar_module.default['nav-text'], children: children })] }));
|
|
30
|
+
const SidebarNavigationGroup = ({ className, name, icon, children, ref, ...props }) => (jsxRuntime.jsxRuntimeExports.jsxs("section", { ref: ref, className: className, "aria-label": name, ...props, children: [jsxRuntime.jsxRuntimeExports.jsxs("div", { className: sidebar_module.default['nav-group-header'], children: [icon && jsxRuntime.jsxRuntimeExports.jsx("span", { className: sidebar_module.default['nav-icon'], children: icon }), jsxRuntime.jsxRuntimeExports.jsx("span", { className: sidebar_module.default['nav-group-name'], children: name })] }), jsxRuntime.jsxRuntimeExports.jsx("div", { className: sidebar_module.default['nav-group-items'], role: "list", children: children })] }));
|
|
31
|
+
SidebarRoot.displayName = "Sidebar.Root";
|
|
32
|
+
SidebarHeader.displayName = "Sidebar.Header";
|
|
33
|
+
SidebarMain.displayName = "Sidebar.Main";
|
|
34
|
+
SidebarFooter.displayName = "Sidebar.Footer";
|
|
35
|
+
SidebarItem.displayName = "Sidebar.Item";
|
|
36
|
+
SidebarNavigationGroup.displayName = "Sidebar.Group";
|
|
37
|
+
const Sidebar = Object.assign(SidebarRoot, {
|
|
38
|
+
Header: SidebarHeader,
|
|
39
|
+
Main: SidebarMain,
|
|
40
|
+
Footer: SidebarFooter,
|
|
41
|
+
Item: SidebarItem,
|
|
42
|
+
Group: SidebarNavigationGroup,
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
exports.Sidebar = Sidebar;
|
|
46
|
+
//# sourceMappingURL=sidebar.cjs.map
|