@j2-health/design-system 0.6.8 → 0.6.10

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.
Files changed (42) hide show
  1. package/dist/index.cjs +2 -0
  2. package/dist/index.d.ts +1 -0
  3. package/dist/index.js +2 -1
  4. package/dist/index2.js +2 -1
  5. package/dist/src/components/checkboxTree/CheckboxTree.cjs +1 -1
  6. package/dist/src/components/checkboxTree/CheckboxTree.js +1 -1
  7. package/dist/src/components/filterform/FilterGroup.cjs +1 -1
  8. package/dist/src/components/filterform/FilterGroup.js +1 -1
  9. package/dist/src/components/filterform/FilterInput.cjs +1 -1
  10. package/dist/src/components/filterform/FilterInput.js +1 -1
  11. package/dist/src/components/form/FormItem.cjs +1 -1
  12. package/dist/src/components/form/FormItem.js +1 -1
  13. package/dist/src/components/input/AntdInput.d.ts +5 -8
  14. package/dist/src/components/input/AntdSearchInput.d.ts +5 -8
  15. package/dist/src/components/input/AntdTextArea.d.ts +4 -7
  16. package/dist/src/components/legacyNavMenu/LegacyNavMenu.cjs +1 -1
  17. package/dist/src/components/legacyNavMenu/LegacyNavMenu.js +1 -1
  18. package/dist/src/components/listpopover/ListPopover.cjs +1 -1
  19. package/dist/src/components/listpopover/ListPopover.js +1 -1
  20. package/dist/src/components/navMenu/NavMenu.cjs +2 -2
  21. package/dist/src/components/navMenu/NavMenu.js +2 -2
  22. package/dist/src/components/select/SummarizedSelect.cjs +97 -64
  23. package/dist/src/components/select/SummarizedSelect.cjs.map +1 -1
  24. package/dist/src/components/select/SummarizedSelect.d.ts +11 -2
  25. package/dist/src/components/select/SummarizedSelect.js +98 -65
  26. package/dist/src/components/select/SummarizedSelect.js.map +1 -1
  27. package/dist/src/components/select/SummarizedSelect.module.css.cjs +15 -12
  28. package/dist/src/components/select/SummarizedSelect.module.css.cjs.map +1 -1
  29. package/dist/src/components/select/SummarizedSelect.module.css.js +15 -13
  30. package/dist/src/components/select/SummarizedSelect.module.css.js.map +1 -1
  31. package/dist/src/components/swatchPicker/SwatchPicker.cjs +174 -0
  32. package/dist/src/components/swatchPicker/SwatchPicker.cjs.map +1 -0
  33. package/dist/src/components/swatchPicker/SwatchPicker.d.ts +44 -0
  34. package/dist/src/components/swatchPicker/SwatchPicker.js +171 -0
  35. package/dist/src/components/swatchPicker/SwatchPicker.js.map +1 -0
  36. package/dist/src/components/swatchPicker/index.d.ts +1 -0
  37. package/dist/src/components/swatchStrip/SwatchStrip.cjs +1 -1
  38. package/dist/src/components/swatchStrip/SwatchStrip.js +1 -1
  39. package/dist/src/components/table/Table.cjs +1 -1
  40. package/dist/src/components/table/Table.js +1 -1
  41. package/dist/style.css +35 -29
  42. package/package.json +16 -16
package/dist/index.cjs CHANGED
@@ -58,6 +58,7 @@ const require_StatusPill = require("./src/components/statusPill/StatusPill.cjs")
58
58
  const require_useSteps = require("./src/components/steps/useSteps.cjs");
59
59
  const require_Steps = require("./src/components/steps/Steps.cjs");
60
60
  const require_StepDrawer = require("./src/components/stepDrawer/StepDrawer.cjs");
61
+ const require_SwatchPicker = require("./src/components/swatchPicker/SwatchPicker.cjs");
61
62
  const require_SwatchStrip = require("./src/components/swatchStrip/SwatchStrip.cjs");
62
63
  const require_Switch = require("./src/components/switch/Switch.cjs");
63
64
  const require_Table = require("./src/components/table/Table.cjs");
@@ -126,6 +127,7 @@ exports.StepDrawer = require_StepDrawer.StepDrawer;
126
127
  exports.Steps = require_Steps.Steps;
127
128
  exports.SummarizedSelect = require_SummarizedSelect.SummarizedSelect;
128
129
  exports.Swatch = require_Swatch.Swatch;
130
+ exports.SwatchPicker = require_SwatchPicker.SwatchPicker;
129
131
  exports.SwatchStrip = require_SwatchStrip.SwatchStrip;
130
132
  exports.Switch = require_Switch.Switch;
131
133
  exports.Table = require_Table.Table;
package/dist/index.d.ts CHANGED
@@ -44,6 +44,7 @@ export * from './src/components/statusPill/index.js';
44
44
  export * from './src/components/stepDrawer/index.js';
45
45
  export * from './src/components/steps/index.js';
46
46
  export * from './src/components/swatch/index.js';
47
+ export * from './src/components/swatchPicker/index.js';
47
48
  export * from './src/components/swatchStrip/index.js';
48
49
  export * from './src/components/switch/index.js';
49
50
  export * from './src/components/table/index.js';
package/dist/index.js CHANGED
@@ -57,6 +57,7 @@ import { StatusPill } from "./src/components/statusPill/StatusPill.js";
57
57
  import { useSteps } from "./src/components/steps/useSteps.js";
58
58
  import { Steps } from "./src/components/steps/Steps.js";
59
59
  import { StepDrawer, useStepDrawerSlots } from "./src/components/stepDrawer/StepDrawer.js";
60
+ import { SwatchPicker } from "./src/components/swatchPicker/SwatchPicker.js";
60
61
  import { SwatchStrip } from "./src/components/swatchStrip/SwatchStrip.js";
61
62
  import { Switch } from "./src/components/switch/Switch.js";
62
63
  import { Table } from "./src/components/table/Table.js";
@@ -66,4 +67,4 @@ import { VennDiagram } from "./src/components/vennDiagram/VennDiagram.js";
66
67
  import { UserProfile } from "./src/components/legacyNavMenu/UserProfile.js";
67
68
  import { LegacyNavMenu } from "./src/components/legacyNavMenu/LegacyNavMenu.js";
68
69
  import { icons } from "./index2.js";
69
- export { Alert, AntdInput, AntdSearchInput, AntdSelect, AntdTextArea, AppConfigProvider, BarChart, BareButton, Breadcrumb, BulkActionBar, Button, Callout, Card, ChangeChip, Checkbox, CheckboxTree, Collapse, Drawer, Dropdown, EmptyState, FileDropzone, FiltersForm, Form, HighchartsReact, Input, InputNumber, LegacyNavMenu, ListPopover, ListRow, ManageColumnsPanel, Menu, Modal, MultiValueTextOperatorOptions, NavMenu, NotificationModal, Pagination, Popover, Progress, Radio, RadioCardGroup, RadioGroup, Rate, Select, SelectAll, Skeleton, Slider, Spinner, StatusPill, StepDrawer, Steps, SummarizedSelect, Swatch, SwatchStrip, Switch, Table, Tabs, Tag, ThresholdBar, Tooltip, UserProfile, VennDiagram, appTheme, icons, isMultiValueTextOperator, mergeProps, normalizeMultiValues, operatorOptionsFor, tailwindPreset, useMessage, useNotification, useStepDrawerSlots, useSteps, withDesignSystemPaginationOverrides };
70
+ export { Alert, AntdInput, AntdSearchInput, AntdSelect, AntdTextArea, AppConfigProvider, BarChart, BareButton, Breadcrumb, BulkActionBar, Button, Callout, Card, ChangeChip, Checkbox, CheckboxTree, Collapse, Drawer, Dropdown, EmptyState, FileDropzone, FiltersForm, Form, HighchartsReact, Input, InputNumber, LegacyNavMenu, ListPopover, ListRow, ManageColumnsPanel, Menu, Modal, MultiValueTextOperatorOptions, NavMenu, NotificationModal, Pagination, Popover, Progress, Radio, RadioCardGroup, RadioGroup, Rate, Select, SelectAll, Skeleton, Slider, Spinner, StatusPill, StepDrawer, Steps, SummarizedSelect, Swatch, SwatchPicker, SwatchStrip, Switch, Table, Tabs, Tag, ThresholdBar, Tooltip, UserProfile, VennDiagram, appTheme, icons, isMultiValueTextOperator, mergeProps, normalizeMultiValues, operatorOptionsFor, tailwindPreset, useMessage, useNotification, useStepDrawerSlots, useSteps, withDesignSystemPaginationOverrides };
package/dist/index2.js CHANGED
@@ -57,6 +57,7 @@ import { StatusPill } from "./src/components/statusPill/StatusPill.js";
57
57
  import { useSteps } from "./src/components/steps/useSteps.js";
58
58
  import { Steps } from "./src/components/steps/Steps.js";
59
59
  import { StepDrawer, useStepDrawerSlots } from "./src/components/stepDrawer/StepDrawer.js";
60
+ import { SwatchPicker } from "./src/components/swatchPicker/SwatchPicker.js";
60
61
  import { SwatchStrip } from "./src/components/swatchStrip/SwatchStrip.js";
61
62
  import { Switch } from "./src/components/switch/Switch.js";
62
63
  import { Table } from "./src/components/table/Table.js";
@@ -66,4 +67,4 @@ import { VennDiagram } from "./src/components/vennDiagram/VennDiagram.js";
66
67
  import { UserProfile } from "./src/components/legacyNavMenu/UserProfile.js";
67
68
  import { LegacyNavMenu } from "./src/components/legacyNavMenu/LegacyNavMenu.js";
68
69
  import * as icons from "@phosphor-icons/react";
69
- export { Alert, AntdInput, AntdSearchInput, AntdSelect, AntdTextArea, AppConfigProvider, BarChart, BareButton, Breadcrumb, BulkActionBar, Button, Callout, Card, ChangeChip, Checkbox, CheckboxTree, Collapse, Drawer, Dropdown, EmptyState, FileDropzone, FiltersForm, Form, HighchartsReact, Input, InputNumber, LegacyNavMenu, ListPopover, ListRow, ManageColumnsPanel, Menu, Modal, MultiValueTextOperatorOptions, NavMenu, NotificationModal, Pagination, Popover, Progress, Radio, RadioCardGroup, RadioGroup, Rate, Select, SelectAll, Skeleton, Slider, Spinner, StatusPill, StepDrawer, Steps, SummarizedSelect, Swatch, SwatchStrip, Switch, Table, Tabs, Tag, ThresholdBar, Tooltip, UserProfile, VennDiagram, appTheme, icons, isMultiValueTextOperator, mergeProps, normalizeMultiValues, operatorOptionsFor, tailwindPreset, useMessage, useNotification, useStepDrawerSlots, useSteps, withDesignSystemPaginationOverrides };
70
+ export { Alert, AntdInput, AntdSearchInput, AntdSelect, AntdTextArea, AppConfigProvider, BarChart, BareButton, Breadcrumb, BulkActionBar, Button, Callout, Card, ChangeChip, Checkbox, CheckboxTree, Collapse, Drawer, Dropdown, EmptyState, FileDropzone, FiltersForm, Form, HighchartsReact, Input, InputNumber, LegacyNavMenu, ListPopover, ListRow, ManageColumnsPanel, Menu, Modal, MultiValueTextOperatorOptions, NavMenu, NotificationModal, Pagination, Popover, Progress, Radio, RadioCardGroup, RadioGroup, Rate, Select, SelectAll, Skeleton, Slider, Spinner, StatusPill, StepDrawer, Steps, SummarizedSelect, Swatch, SwatchPicker, SwatchStrip, Switch, Table, Tabs, Tag, ThresholdBar, Tooltip, UserProfile, VennDiagram, appTheme, icons, isMultiValueTextOperator, mergeProps, normalizeMultiValues, operatorOptionsFor, tailwindPreset, useMessage, useNotification, useStepDrawerSlots, useSteps, withDesignSystemPaginationOverrides };
@@ -1,6 +1,6 @@
1
1
  const require_runtime = require("../../../_virtual/_rolldown/runtime.cjs");
2
- const require_utils = require("./utils.cjs");
3
2
  const require_TreeNode = require("./TreeNode.cjs");
3
+ const require_utils = require("./utils.cjs");
4
4
  let react = require("react");
5
5
  react = require_runtime.__toESM(react, 1);
6
6
  let react_jsx_runtime = require("react/jsx-runtime");
@@ -1,5 +1,5 @@
1
- import { getAllLeafKeys, getAllParentKeys, getLeafKeys } from "./utils.js";
2
1
  import { TreeNode } from "./TreeNode.js";
2
+ import { getAllLeafKeys, getAllParentKeys, getLeafKeys } from "./utils.js";
3
3
  import { useCallback, useEffect, useMemo, useState } from "react";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
  // src/components/checkboxTree/CheckboxTree.tsx
@@ -1,7 +1,7 @@
1
1
  const require_runtime = require("../../../_virtual/_rolldown/runtime.cjs");
2
2
  const require_Button = require("../button/Button.cjs");
3
- const require_FiltersForm_module = require("./FiltersForm.module.css.cjs");
4
3
  const require_FilterInput = require("./FilterInput.cjs");
4
+ const require_FiltersForm_module = require("./FiltersForm.module.css.cjs");
5
5
  let _phosphor_icons_react = require("@phosphor-icons/react");
6
6
  _phosphor_icons_react = require_runtime.__toESM(_phosphor_icons_react, 1);
7
7
  let react_jsx_runtime = require("react/jsx-runtime");
@@ -1,6 +1,6 @@
1
1
  import { Button } from "../button/Button.js";
2
- import FiltersForm_module_default from "./FiltersForm.module.css.js";
3
2
  import { FilterInput } from "./FilterInput.js";
3
+ import FiltersForm_module_default from "./FiltersForm.module.css.js";
4
4
  import { TrashIcon } from "@phosphor-icons/react";
5
5
  import { jsx, jsxs } from "react/jsx-runtime";
6
6
  import cx from "classnames";
@@ -1,6 +1,6 @@
1
1
  const require_runtime = require("../../../_virtual/_rolldown/runtime.cjs");
2
- const require_filterHelpers = require("./filterHelpers.cjs");
3
2
  const require_useFilterField = require("./useFilterField.cjs");
3
+ const require_filterHelpers = require("./filterHelpers.cjs");
4
4
  let react = require("react");
5
5
  let react$1 = require_runtime.__toESM(react, 1);
6
6
  react = require_runtime.__toESM(react);
@@ -1,5 +1,5 @@
1
- import { normalizeMultiValues, tooManyValuesMessage } from "./filterHelpers.js";
2
1
  import { useFilterField } from "./useFilterField.js";
2
+ import { normalizeMultiValues, tooManyValuesMessage } from "./filterHelpers.js";
3
3
  import * as React from "react";
4
4
  import { Input, InputNumber, Select, Typography } from "antd";
5
5
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -1,5 +1,5 @@
1
- const require_FormItemFieldContext = require("./FormItemFieldContext.cjs");
2
1
  const require_FormikField = require("./FormikField.cjs");
2
+ const require_FormItemFieldContext = require("./FormItemFieldContext.cjs");
3
3
  let antd = require("antd");
4
4
  let react_jsx_runtime = require("react/jsx-runtime");
5
5
  let formik = require("formik");
@@ -1,5 +1,5 @@
1
- import { FormItemFieldContext } from "./FormItemFieldContext.js";
2
1
  import { FormikField } from "./FormikField.js";
2
+ import { FormItemFieldContext } from "./FormItemFieldContext.js";
3
3
  import { Form } from "antd";
4
4
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
5
5
  import { getIn, useFormikContext } from "formik";
@@ -61,7 +61,7 @@ export declare const AntdInput: import('react').ForwardRefExoticComponent<{
61
61
  name?: string | undefined | undefined;
62
62
  nonce?: string | undefined | undefined;
63
63
  part?: string | undefined | undefined;
64
- type?: import('@rc-component/input/lib/utils/types').LiteralUnion<"button" | "checkbox" | "color" | "date" | "datetime-local" | "email" | "file" | "hidden" | "image" | "month" | "number" | "password" | "radio" | "range" | "reset" | "search" | "submit" | "tel" | "text" | "time" | "url" | "week", string> | undefined;
64
+ type?: import('@rc-component/input/es/utils/types').LiteralUnion<"button" | "checkbox" | "color" | "date" | "datetime-local" | "email" | "file" | "hidden" | "image" | "month" | "number" | "password" | "radio" | "range" | "reset" | "search" | "submit" | "tel" | "text" | "time" | "url" | "week", string> | undefined;
65
65
  width?: number | string | undefined | undefined;
66
66
  role?: import('react').AriaRole | undefined;
67
67
  tabIndex?: number | undefined | undefined;
@@ -289,7 +289,7 @@ export declare const AntdInput: import('react').ForwardRefExoticComponent<{
289
289
  onTransitionRunCapture?: import('react').TransitionEventHandler<HTMLInputElement> | undefined;
290
290
  onTransitionStart?: import('react').TransitionEventHandler<HTMLInputElement> | undefined;
291
291
  onTransitionStartCapture?: import('react').TransitionEventHandler<HTMLInputElement> | undefined;
292
- value?: import('@rc-component/input/lib/interface').ValueType;
292
+ value?: import('@rc-component/input/es/interface').ValueType;
293
293
  prefixCls?: string | undefined;
294
294
  list?: string | undefined | undefined;
295
295
  step?: number | string | undefined | undefined;
@@ -342,7 +342,7 @@ export declare const AntdInput: import('react').ForwardRefExoticComponent<{
342
342
  is?: string | undefined | undefined;
343
343
  exportparts?: string | undefined | undefined;
344
344
  multiple?: boolean | undefined | undefined;
345
- count?: import('@rc-component/input/lib/interface').CountConfig | undefined;
345
+ count?: import('@rc-component/input/es/interface').CountConfig | undefined;
346
346
  placeholder?: string | undefined | undefined;
347
347
  checked?: boolean | undefined | undefined;
348
348
  required?: boolean | undefined | undefined;
@@ -355,14 +355,11 @@ export declare const AntdInput: import('react').ForwardRefExoticComponent<{
355
355
  src?: string | undefined | undefined;
356
356
  readOnly?: boolean | undefined | undefined;
357
357
  onClear?: (() => void) | undefined;
358
- allowClear?: boolean | {
359
- disabled?: boolean;
360
- clearIcon?: import('react').ReactNode;
361
- } | undefined;
358
+ allowClear?: (boolean | import('@rc-component/util').AllowClearConfig) | undefined;
362
359
  suffix?: import('react').ReactNode;
363
360
  onPressEnter?: import('react').KeyboardEventHandler<HTMLInputElement> | undefined;
364
361
  showCount?: boolean | {
365
- formatter: import('@rc-component/input/lib/interface').ShowCountFormatter;
362
+ formatter: import('@rc-component/input/es/interface').ShowCountFormatter;
366
363
  } | undefined;
367
364
  htmlSize?: number | undefined;
368
365
  } & import('react').RefAttributes<InputRef>>;
@@ -73,7 +73,7 @@ export declare const AntdSearchInput: import('react').ForwardRefExoticComponent<
73
73
  name?: string | undefined | undefined;
74
74
  nonce?: string | undefined | undefined;
75
75
  part?: string | undefined | undefined;
76
- type?: import('@rc-component/input/lib/utils/types').LiteralUnion<"button" | "checkbox" | "color" | "date" | "datetime-local" | "email" | "file" | "hidden" | "image" | "month" | "number" | "password" | "radio" | "range" | "reset" | "search" | "submit" | "tel" | "text" | "time" | "url" | "week", string> | undefined;
76
+ type?: import('@rc-component/input/es/utils/types').LiteralUnion<"button" | "checkbox" | "color" | "date" | "datetime-local" | "email" | "file" | "hidden" | "image" | "month" | "number" | "password" | "radio" | "range" | "reset" | "search" | "submit" | "tel" | "text" | "time" | "url" | "week", string> | undefined;
77
77
  width?: number | string | undefined | undefined;
78
78
  role?: import('react').AriaRole | undefined;
79
79
  tabIndex?: number | undefined | undefined;
@@ -301,7 +301,7 @@ export declare const AntdSearchInput: import('react').ForwardRefExoticComponent<
301
301
  onTransitionRunCapture?: import('react').TransitionEventHandler<HTMLInputElement> | undefined;
302
302
  onTransitionStart?: import('react').TransitionEventHandler<HTMLInputElement> | undefined;
303
303
  onTransitionStartCapture?: import('react').TransitionEventHandler<HTMLInputElement> | undefined;
304
- value?: import('@rc-component/input/lib/interface').ValueType;
304
+ value?: import('@rc-component/input/es/interface').ValueType;
305
305
  prefixCls?: string | undefined;
306
306
  list?: string | undefined | undefined;
307
307
  step?: number | string | undefined | undefined;
@@ -354,7 +354,7 @@ export declare const AntdSearchInput: import('react').ForwardRefExoticComponent<
354
354
  is?: string | undefined | undefined;
355
355
  exportparts?: string | undefined | undefined;
356
356
  multiple?: boolean | undefined | undefined;
357
- count?: import('@rc-component/input/lib/interface').CountConfig | undefined;
357
+ count?: import('@rc-component/input/es/interface').CountConfig | undefined;
358
358
  placeholder?: string | undefined | undefined;
359
359
  checked?: boolean | undefined | undefined;
360
360
  required?: boolean | undefined | undefined;
@@ -367,13 +367,10 @@ export declare const AntdSearchInput: import('react').ForwardRefExoticComponent<
367
367
  src?: string | undefined | undefined;
368
368
  readOnly?: boolean | undefined | undefined;
369
369
  onClear?: (() => void) | undefined;
370
- allowClear?: boolean | {
371
- disabled?: boolean;
372
- clearIcon?: import('react').ReactNode;
373
- } | undefined;
370
+ allowClear?: (boolean | import('@rc-component/util').AllowClearConfig) | undefined;
374
371
  suffix?: import('react').ReactNode;
375
372
  showCount?: boolean | {
376
- formatter: import('@rc-component/input/lib/interface').ShowCountFormatter;
373
+ formatter: import('@rc-component/input/es/interface').ShowCountFormatter;
377
374
  } | undefined;
378
375
  htmlSize?: number | undefined;
379
376
  } & import('react').RefAttributes<InputRef>>;
@@ -273,7 +273,7 @@ export declare const AntdTextArea: import('react').ForwardRefExoticComponent<{
273
273
  onTransitionRunCapture?: import('react').TransitionEventHandler<HTMLTextAreaElement> | undefined;
274
274
  onTransitionStart?: import('react').TransitionEventHandler<HTMLTextAreaElement> | undefined;
275
275
  onTransitionStartCapture?: import('react').TransitionEventHandler<HTMLTextAreaElement> | undefined;
276
- value?: import('@rc-component/input/lib/interface').ValueOrTextAreaValue;
276
+ value?: import('@rc-component/input/es/interface').ValueOrTextAreaValue;
277
277
  prefixCls?: string | undefined;
278
278
  disabled?: boolean | undefined | undefined;
279
279
  defaultChecked?: boolean | undefined | undefined;
@@ -321,7 +321,7 @@ export declare const AntdTextArea: import('react').ForwardRefExoticComponent<{
321
321
  exportparts?: string | undefined | undefined;
322
322
  wrap?: string | undefined | undefined;
323
323
  rows?: number | undefined | undefined;
324
- count?: import('@rc-component/input/lib/interface').CountConfig | undefined;
324
+ count?: import('@rc-component/input/es/interface').CountConfig | undefined;
325
325
  placeholder?: string | undefined | undefined;
326
326
  required?: boolean | undefined | undefined;
327
327
  autoComplete?: string | undefined | undefined;
@@ -331,13 +331,10 @@ export declare const AntdTextArea: import('react').ForwardRefExoticComponent<{
331
331
  minLength?: number | undefined | undefined;
332
332
  readOnly?: boolean | undefined | undefined;
333
333
  onClear?: (() => void) | undefined;
334
- allowClear?: boolean | {
335
- disabled?: boolean;
336
- clearIcon?: import('react').ReactNode;
337
- } | undefined;
334
+ allowClear?: (boolean | import('@rc-component/util').AllowClearConfig) | undefined;
338
335
  onPressEnter?: import('react').KeyboardEventHandler<HTMLTextAreaElement> | undefined;
339
336
  showCount?: boolean | {
340
- formatter: import('@rc-component/input/lib/interface').ShowCountFormatter;
337
+ formatter: import('@rc-component/input/es/interface').ShowCountFormatter;
341
338
  } | undefined;
342
339
  onResize?: ((size: {
343
340
  width: number;
@@ -1,6 +1,6 @@
1
1
  const require_runtime = require("../../../_virtual/_rolldown/runtime.cjs");
2
- const require_j2_logo_menu_collapse = require("../../svgs/j2-logo-menu-collapse.svg.cjs");
3
2
  const require_LegacyNavMenu_module = require("./LegacyNavMenu.module.css.cjs");
3
+ const require_j2_logo_menu_collapse = require("../../svgs/j2-logo-menu-collapse.svg.cjs");
4
4
  const require_UserProfile = require("./UserProfile.cjs");
5
5
  let react = require("react");
6
6
  react = require_runtime.__toESM(react, 1);
@@ -1,5 +1,5 @@
1
- import SvgJ2LogoMenuCollapse from "../../svgs/j2-logo-menu-collapse.svg.js";
2
1
  import LegacyNavMenu_module_default from "./LegacyNavMenu.module.css.js";
2
+ import SvgJ2LogoMenuCollapse from "../../svgs/j2-logo-menu-collapse.svg.js";
3
3
  import { UserProfile } from "./UserProfile.js";
4
4
  import "react";
5
5
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -1,6 +1,6 @@
1
1
  const require_runtime = require("../../../_virtual/_rolldown/runtime.cjs");
2
- const require_Button = require("../button/Button.cjs");
3
2
  const require_Popover = require("../popover/Popover.cjs");
3
+ const require_Button = require("../button/Button.cjs");
4
4
  const require_Tooltip = require("../tooltip/Tooltip.cjs");
5
5
  const require_ListPopover_module = require("./ListPopover.module.css.cjs");
6
6
  let _phosphor_icons_react = require("@phosphor-icons/react");
@@ -1,5 +1,5 @@
1
- import { Button } from "../button/Button.js";
2
1
  import { Popover } from "../popover/Popover.js";
2
+ import { Button } from "../button/Button.js";
3
3
  import { Tooltip } from "../tooltip/Tooltip.js";
4
4
  import ListPopover_module_default from "./ListPopover.module.css.js";
5
5
  import { CopyIcon } from "@phosphor-icons/react";
@@ -1,12 +1,12 @@
1
1
  const require_runtime = require("../../../_virtual/_rolldown/runtime.cjs");
2
- const require_Button = require("../button/Button.cjs");
3
- const require_Tooltip = require("../tooltip/Tooltip.cjs");
4
2
  const require_Menu = require("../menu/Menu.cjs");
5
3
  const require_j2_logo_menu_collapse = require("../../svgs/j2-logo-menu-collapse.svg.cjs");
6
4
  const require_j2_logo_menu = require("../../svgs/j2-logo-menu.svg.cjs");
7
5
  const require_menu_sidebar_expand = require("../../svgs/menu-sidebar-expand.svg.cjs");
8
6
  const require_menu_sidebar_collapse = require("../../svgs/menu-sidebar-collapse.svg.cjs");
7
+ const require_Button = require("../button/Button.cjs");
9
8
  const require_NavMenu_module = require("./NavMenu.module.css.cjs");
9
+ const require_Tooltip = require("../tooltip/Tooltip.cjs");
10
10
  let react = require("react");
11
11
  let react$1 = require_runtime.__toESM(react, 1);
12
12
  react = require_runtime.__toESM(react);
@@ -1,11 +1,11 @@
1
- import { Button } from "../button/Button.js";
2
- import { Tooltip } from "../tooltip/Tooltip.js";
3
1
  import { Menu } from "../menu/Menu.js";
4
2
  import SvgJ2LogoMenuCollapse from "../../svgs/j2-logo-menu-collapse.svg.js";
5
3
  import SvgJ2LogoMenu from "../../svgs/j2-logo-menu.svg.js";
6
4
  import SvgMenuSidebarExpand from "../../svgs/menu-sidebar-expand.svg.js";
7
5
  import SvgMenuSidebarCollapse from "../../svgs/menu-sidebar-collapse.svg.js";
6
+ import { Button } from "../button/Button.js";
8
7
  import NavMenu_module_default from "./NavMenu.module.css.js";
8
+ import { Tooltip } from "../tooltip/Tooltip.js";
9
9
  import * as React from "react";
10
10
  import { jsx, jsxs } from "react/jsx-runtime";
11
11
  import cx from "classnames";
@@ -82,7 +82,7 @@ var OpenAtTop = ({ openCount, selectRef, children }) => {
82
82
  }, [openCount, selectRef]);
83
83
  return children;
84
84
  };
85
- function SummarizedSelect({ searchPlaceholder, formControlPlaceholder, loading, multiple, value, onChange, options, renderLabel, rootClassName, popupClassName, variant, trigger = "select", triggerWeight, defaultOpen = false, flattenOnSearch = false, scrollToSelectedOnOpen = true, groupDividers = false, ...props }) {
85
+ function SummarizedSelect({ searchPlaceholder, formControlPlaceholder, loading, multiple, value, onChange, options, renderLabel, rootClassName, popupClassName, variant, trigger = "select", triggerWeight, defaultOpen = false, flattenOnSearch = false, scrollToSelectedOnOpen = true, groupDividers = false, searchSuffix, ...props }) {
86
86
  const isHeadline = variant === "headlined";
87
87
  const isField = variant === "field";
88
88
  const antVariant = isHeadline ? "borderless" : isField ? "outlined" : variant;
@@ -91,6 +91,7 @@ function SummarizedSelect({ searchPlaceholder, formControlPlaceholder, loading,
91
91
  const [focusTrigger, setFocusTrigger] = (0, react.useState)(defaultOpen ? 1 : 0);
92
92
  const [isOpen, setIsOpen] = (0, react.useState)(defaultOpen);
93
93
  const inputRef = (0, react.useRef)(null);
94
+ const popupRef = (0, react.useRef)(null);
94
95
  const selectRef = (0, react.useRef)(null);
95
96
  const measureSpanRef = (0, react.useRef)(null);
96
97
  const [measuredWidth, setMeasuredWidth] = (0, react.useState)();
@@ -137,6 +138,7 @@ function SummarizedSelect({ searchPlaceholder, formControlPlaceholder, loading,
137
138
  const flatFilteredOptions = (0, react.useMemo)(() => {
138
139
  return getAllOptions(filteredOptions);
139
140
  }, [filteredOptions]);
141
+ const shownValues = (0, react.useMemo)(() => flatFilteredOptions.map((o) => String(o.value)).join("\0"), [flatFilteredOptions]);
140
142
  const allFlatOptions = (0, react.useMemo)(() => {
141
143
  return getAllOptions(options);
142
144
  }, [options]);
@@ -204,77 +206,101 @@ function SummarizedSelect({ searchPlaceholder, formControlPlaceholder, loading,
204
206
  });
205
207
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", { children: option.label });
206
208
  };
209
+ const focusSearch = () => setTimeout(() => inputRef.current?.focus({ preventScroll: true }));
210
+ const renderSearchSuffix = () => searchSuffix ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("span", {
211
+ className: "flex items-center gap-2",
212
+ onClick: (e) => {
213
+ e.stopPropagation();
214
+ if (e.target.closest(".ant-select-item-option, [role=\"option\"]")) focusSearch();
215
+ },
216
+ onKeyDownCapture: (e) => {
217
+ if (e.key === "Escape" || e.key === "Enter") focusSearch();
218
+ },
219
+ onKeyDown: (e) => e.stopPropagation(),
220
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
221
+ "aria-hidden": true,
222
+ className: "h-4 w-px bg-j2-border-secondary"
223
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(antd.ConfigProvider, {
224
+ getPopupContainer: () => popupRef.current ?? document.body,
225
+ children: searchSuffix
226
+ })]
227
+ }) : void 0;
207
228
  const popupRender = (menu) => {
208
229
  const valueToLabel = (val) => {
209
230
  const option = allFlatOptions.find((opt) => opt.value === val);
210
231
  return option ? option.label : val;
211
232
  };
212
- return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [
213
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
214
- className: "mb-2 px-2 pb-2 border-b -mx-1 mt-1",
215
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(antd.Input, {
216
- ref: inputRef,
217
- placeholder: searchPlaceholder || "Search...",
218
- value: searchValue,
219
- onChange: (e) => {
220
- setSearchValue(e.target.value);
221
- e.stopPropagation();
222
- e.preventDefault();
223
- },
224
- onKeyDown: handleKeyDown,
225
- onClick: (e) => e.stopPropagation(),
226
- prefix: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_phosphor_icons_react.MagnifyingGlassIcon, {
227
- size: 16,
228
- className: "text-j2-text-placeholder"
229
- }),
230
- allowClear: true
231
- }, focusTrigger)
232
- }),
233
- multiple && value.length > 0 ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
234
- className: "px-2 pb-2",
235
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
236
- className: "flex flex-wrap gap-y-1",
237
- children: value.map((value) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Tag.Tag, {
238
- className: "opacity-100 z-10 flex max-w-full",
239
- status: "default",
240
- closable: true,
241
- onClose: () => handleTagClose(value),
242
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
243
- className: "overflow-ellipsis overflow-hidden",
244
- title: valueToLabel(value),
245
- children: valueToLabel(value)
246
- })
247
- }, value))
248
- })
249
- }) : null,
250
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
251
- className: (0, classnames.default)(require_SummarizedSelect_module.default.menuContainer, "rounded-lg", {
252
- [require_SummarizedSelect_module.default.headlinedMenuContainer]: isHeadline,
253
- [require_SummarizedSelect_module.default.menuContainerMultiple]: multiple
233
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
234
+ ref: popupRef,
235
+ className: (0, classnames.default)({ relative: searchSuffix != null }),
236
+ children: [
237
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
238
+ className: "mb-2 px-2 pb-2 border-b -mx-1 mt-1",
239
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(antd.Input, {
240
+ ref: inputRef,
241
+ placeholder: searchPlaceholder || "Search...",
242
+ value: searchValue,
243
+ onChange: (e) => {
244
+ setSearchValue(e.target.value);
245
+ e.stopPropagation();
246
+ e.preventDefault();
247
+ },
248
+ onKeyDown: handleKeyDown,
249
+ onClick: (e) => e.stopPropagation(),
250
+ prefix: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_phosphor_icons_react.MagnifyingGlassIcon, {
251
+ size: 16,
252
+ className: "text-j2-text-placeholder"
253
+ }),
254
+ suffix: renderSearchSuffix(),
255
+ allowClear: true
256
+ }, focusTrigger)
254
257
  }),
255
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react.Fragment, { children: scrollToSelectedOnOpen ? menu : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(OpenAtTop, {
256
- openCount: focusTrigger,
257
- selectRef,
258
- children: menu
259
- }) }, searchValue)
260
- }),
261
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
262
- className: "flex justify-between items-center",
263
- children: multiple && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
264
- className: "w-full mt-1 pt-1 border-t border-j2-border-secondary",
258
+ multiple && value.length > 0 ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
259
+ className: "px-2 pb-2",
265
260
  children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
266
- "aria-selected": "false",
267
- className: (0, classnames.default)("ant-select-item ant-select-item-option w-full", require_SummarizedSelect_module.default.clearAllButton),
268
- title: "Clear all",
269
- onClick: handleToggleAll,
261
+ className: "flex flex-wrap gap-y-1",
262
+ children: value.map((value) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Tag.Tag, {
263
+ className: "opacity-100 z-10 flex max-w-full",
264
+ status: "default",
265
+ closable: true,
266
+ onClose: () => handleTagClose(value),
267
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
268
+ className: "overflow-ellipsis overflow-hidden",
269
+ title: valueToLabel(value),
270
+ children: valueToLabel(value)
271
+ })
272
+ }, value))
273
+ })
274
+ }) : null,
275
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
276
+ className: (0, classnames.default)(require_SummarizedSelect_module.default.menuContainer, "rounded-lg", {
277
+ [require_SummarizedSelect_module.default.headlinedMenuContainer]: isHeadline,
278
+ [require_SummarizedSelect_module.default.menuContainerMultiple]: multiple
279
+ }),
280
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react.Fragment, { children: scrollToSelectedOnOpen ? menu : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(OpenAtTop, {
281
+ openCount: focusTrigger,
282
+ selectRef,
283
+ children: menu
284
+ }) }, `${searchValue}\u0000${shownValues}`)
285
+ }),
286
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
287
+ className: "flex justify-between items-center",
288
+ children: multiple && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
289
+ className: "w-full mt-1 pt-1 border-t border-j2-border-secondary",
270
290
  children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
271
- className: "ant-select-item-option-content text-center font-semibold",
272
- children: "Clear all"
291
+ "aria-selected": "false",
292
+ className: (0, classnames.default)("ant-select-item ant-select-item-option w-full", require_SummarizedSelect_module.default.clearAllButton),
293
+ title: "Clear all",
294
+ onClick: handleToggleAll,
295
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
296
+ className: "ant-select-item-option-content text-center font-semibold",
297
+ children: "Clear all"
298
+ })
273
299
  })
274
300
  })
275
301
  })
276
- })
277
- ] });
302
+ ]
303
+ });
278
304
  };
279
305
  const handleOpenChange = (open) => {
280
306
  setIsOpen(open);
@@ -290,7 +316,11 @@ function SummarizedSelect({ searchPlaceholder, formControlPlaceholder, loading,
290
316
  "aria-selected": isSelected,
291
317
  onClick: () => handleOptionClick(optionValue),
292
318
  className: (0, classnames.default)("px-3 py-1.5 rounded cursor-pointer text-sm", isSelected ? "bg-[var(--j2-color-primary-bg-hover)] font-semibold text-[var(--j2-color-primary)] hover:bg-[var(--j2-color-primary-bg-hover)]" : "hover:bg-[var(--j2-color-bg-hover)]"),
293
- children: hasLogo ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
319
+ children: props.optionRender ? props.optionRender({
320
+ ...option,
321
+ key: optionValue,
322
+ data: option
323
+ }, { index: flatFilteredOptions.indexOf(option) }) : hasLogo ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
294
324
  className: "flex items-center gap-2",
295
325
  children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
296
326
  className: "h-4 shrink-0",
@@ -308,7 +338,8 @@ function SummarizedSelect({ searchPlaceholder, formControlPlaceholder, loading,
308
338
  return option ? option.label : val;
309
339
  };
310
340
  return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
311
- className: "bg-white rounded-lg shadow-md p-2 min-w-[240px]",
341
+ ref: popupRef,
342
+ className: "relative bg-white rounded-lg shadow-md p-2 min-w-[240px]",
312
343
  children: [
313
344
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
314
345
  className: "pb-2 border-b border-j2-border-secondary",
@@ -326,6 +357,7 @@ function SummarizedSelect({ searchPlaceholder, formControlPlaceholder, loading,
326
357
  size: 16,
327
358
  className: "text-j2-text-placeholder"
328
359
  }),
360
+ suffix: renderSearchSuffix(),
329
361
  allowClear: true
330
362
  }, focusTrigger)
331
363
  }),
@@ -396,6 +428,7 @@ function SummarizedSelect({ searchPlaceholder, formControlPlaceholder, loading,
396
428
  onOpenChange: handleOpenChange,
397
429
  trigger: ["click"],
398
430
  disabled: props.disabled,
431
+ getPopupContainer: props.getPopupContainer,
399
432
  popupRender: dropdownPopupRender,
400
433
  children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(antd.Typography.Link, {
401
434
  disabled: props.disabled,
@@ -451,7 +484,7 @@ function SummarizedSelect({ searchPlaceholder, formControlPlaceholder, loading,
451
484
  [require_SummarizedSelect_module.default.headlinedSelect]: isHeadline,
452
485
  [require_SummarizedSelect_module.default.fieldSelect]: isField
453
486
  }),
454
- popup: { root: popupClassName }
487
+ popup: { root: (0, classnames.default)(popupClassName, { [require_SummarizedSelect_module.default.hasSearchSuffix]: searchSuffix != null }) }
455
488
  },
456
489
  variant: antVariant,
457
490
  ...props