@deepnoid/ui 0.1.120 → 0.1.121

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 (108) hide show
  1. package/.turbo/turbo-build.log +178 -178
  2. package/dist/{chunk-IJS5AWD2.mjs → chunk-27K5BTEL.mjs} +1 -1
  3. package/dist/{chunk-EXUHHLSA.mjs → chunk-2IOTRPCS.mjs} +1 -1
  4. package/dist/{chunk-CMMVXFHD.mjs → chunk-3F6OF2QS.mjs} +1 -1
  5. package/dist/{chunk-MIVGSJFF.mjs → chunk-3YT4YJNJ.mjs} +189 -94
  6. package/dist/{chunk-YLHOBT6S.mjs → chunk-5MINOKNM.mjs} +1 -1
  7. package/dist/{chunk-NV5Z6ZUO.mjs → chunk-6JLHCQH7.mjs} +1 -1
  8. package/dist/{chunk-YUS5SELP.mjs → chunk-AT6GNVOQ.mjs} +1 -1
  9. package/dist/{chunk-CTWYY7Z2.mjs → chunk-BG4DIGKH.mjs} +14 -8
  10. package/dist/{chunk-3M6VYLOU.mjs → chunk-D6MHTE5L.mjs} +6 -6
  11. package/dist/{chunk-NMZFSNPE.mjs → chunk-DD6HAIW3.mjs} +1 -1
  12. package/dist/{chunk-OBMO6LRA.mjs → chunk-DLNGJVFS.mjs} +1 -1
  13. package/dist/{chunk-BBQNVDIA.mjs → chunk-HX64P3XQ.mjs} +2 -2
  14. package/dist/{chunk-KCOS2KC6.mjs → chunk-LOYDOCOR.mjs} +2 -2
  15. package/dist/{chunk-Q5634WTM.mjs → chunk-RVFSQFWS.mjs} +3 -3
  16. package/dist/{chunk-MHZ4BO5M.mjs → chunk-UEJJBAHG.mjs} +2 -2
  17. package/dist/{chunk-27WK5334.mjs → chunk-VEBJS4SC.mjs} +2 -2
  18. package/dist/{chunk-RJPBLIEF.mjs → chunk-VOKDAIUY.mjs} +1 -1
  19. package/dist/{chunk-NITERGU5.mjs → chunk-WB7Z54CF.mjs} +4 -4
  20. package/dist/{chunk-SS6EG5JO.mjs → chunk-XOUAUSP4.mjs} +1 -1
  21. package/dist/{chunk-EM2NIGNZ.mjs → chunk-YZ57UYAS.mjs} +1 -1
  22. package/dist/components/avatar/avatar.js +14 -8
  23. package/dist/components/avatar/avatar.mjs +2 -2
  24. package/dist/components/avatar/index.js +14 -8
  25. package/dist/components/avatar/index.mjs +2 -2
  26. package/dist/components/breadcrumb/breadcrumb.js +14 -8
  27. package/dist/components/breadcrumb/breadcrumb.mjs +5 -5
  28. package/dist/components/breadcrumb/index.js +14 -8
  29. package/dist/components/breadcrumb/index.mjs +5 -5
  30. package/dist/components/button/button.js +14 -8
  31. package/dist/components/button/button.mjs +3 -3
  32. package/dist/components/button/icon-button.js +14 -8
  33. package/dist/components/button/icon-button.mjs +3 -3
  34. package/dist/components/button/index.js +14 -8
  35. package/dist/components/button/index.mjs +4 -4
  36. package/dist/components/chip/chip.js +14 -8
  37. package/dist/components/chip/chip.mjs +3 -3
  38. package/dist/components/chip/index.js +14 -8
  39. package/dist/components/chip/index.mjs +3 -3
  40. package/dist/components/fileUpload/fileUpload.js +14 -8
  41. package/dist/components/fileUpload/fileUpload.mjs +6 -6
  42. package/dist/components/fileUpload/index.js +14 -8
  43. package/dist/components/fileUpload/index.mjs +6 -6
  44. package/dist/components/icon/Icon.d.mts +1 -1
  45. package/dist/components/icon/Icon.d.ts +1 -1
  46. package/dist/components/icon/Icon.js +14 -8
  47. package/dist/components/icon/Icon.mjs +2 -2
  48. package/dist/components/icon/index.js +14 -8
  49. package/dist/components/icon/index.mjs +2 -2
  50. package/dist/components/icon/template.d.mts +1 -1
  51. package/dist/components/icon/template.d.ts +1 -1
  52. package/dist/components/icon/template.js +14 -8
  53. package/dist/components/icon/template.mjs +1 -1
  54. package/dist/components/input/index.js +14 -8
  55. package/dist/components/input/index.mjs +3 -3
  56. package/dist/components/input/input.js +14 -8
  57. package/dist/components/input/input.mjs +3 -3
  58. package/dist/components/list/index.js +14 -8
  59. package/dist/components/list/index.mjs +4 -4
  60. package/dist/components/list/listItem.js +14 -8
  61. package/dist/components/list/listItem.mjs +4 -4
  62. package/dist/components/modal/index.js +14 -8
  63. package/dist/components/modal/index.mjs +5 -5
  64. package/dist/components/modal/modal.js +14 -8
  65. package/dist/components/modal/modal.mjs +5 -5
  66. package/dist/components/pagination/index.js +14 -8
  67. package/dist/components/pagination/index.mjs +4 -4
  68. package/dist/components/pagination/pagination.js +14 -8
  69. package/dist/components/pagination/pagination.mjs +4 -4
  70. package/dist/components/picker/datePicker.js +14 -8
  71. package/dist/components/picker/datePicker.mjs +6 -6
  72. package/dist/components/picker/index.js +202 -101
  73. package/dist/components/picker/index.mjs +8 -8
  74. package/dist/components/picker/timePicker.js +202 -101
  75. package/dist/components/picker/timePicker.mjs +4 -4
  76. package/dist/components/select/index.d.mts +3 -0
  77. package/dist/components/select/index.d.ts +3 -0
  78. package/dist/components/select/index.js +202 -101
  79. package/dist/components/select/index.mjs +3 -3
  80. package/dist/components/select/select.d.mts +79 -9
  81. package/dist/components/select/select.d.ts +79 -9
  82. package/dist/components/select/select.js +202 -101
  83. package/dist/components/select/select.mjs +3 -3
  84. package/dist/components/table/definition-table.d.mts +2 -2
  85. package/dist/components/table/definition-table.d.ts +2 -2
  86. package/dist/components/table/definition-table.js +6 -6
  87. package/dist/components/table/definition-table.mjs +1 -1
  88. package/dist/components/table/index.js +20 -14
  89. package/dist/components/table/index.mjs +6 -6
  90. package/dist/components/table/table-body.js +14 -8
  91. package/dist/components/table/table-body.mjs +5 -5
  92. package/dist/components/table/table-head.js +14 -8
  93. package/dist/components/table/table-head.mjs +5 -5
  94. package/dist/components/table/table.js +14 -8
  95. package/dist/components/table/table.mjs +5 -5
  96. package/dist/components/toast/index.js +14 -8
  97. package/dist/components/toast/index.mjs +4 -4
  98. package/dist/components/toast/toast.js +14 -8
  99. package/dist/components/toast/toast.mjs +3 -3
  100. package/dist/components/toast/use-toast.js +14 -8
  101. package/dist/components/toast/use-toast.mjs +4 -4
  102. package/dist/components/tree/index.js +14 -8
  103. package/dist/components/tree/index.mjs +3 -3
  104. package/dist/components/tree/tree.js +14 -8
  105. package/dist/components/tree/tree.mjs +3 -3
  106. package/dist/index.js +208 -107
  107. package/dist/index.mjs +30 -30
  108. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -2399,22 +2399,28 @@ var template = {
2399
2399
  }
2400
2400
  );
2401
2401
  },
2402
- // ----------------------------------- old ---------------------------------
2403
- // ** Status **
2404
- check: ({ className, fill }) => {
2402
+ check: ({ className }) => {
2405
2403
  return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
2406
2404
  "svg",
2407
2405
  {
2408
- width: "24",
2409
- height: "24",
2410
- viewBox: "0 0 24 24",
2411
- fill: "none",
2412
2406
  xmlns: "http://www.w3.org/2000/svg",
2407
+ width: "27",
2408
+ height: "28",
2409
+ viewBox: "0 0 27 28",
2410
+ fill: "none",
2413
2411
  className,
2414
- children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("path", { d: "M4.5 12.75L10.5 18.75L19.5 5.25", stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round" })
2412
+ children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
2413
+ "path",
2414
+ {
2415
+ d: "M21.9264 5.20931C22.1812 5.39338 22.3846 5.59774 22.4858 5.90334C22.5588 6.45228 22.3415 6.78579 22.0286 7.20666C21.9576 7.30047 21.8864 7.39405 21.8151 7.48762C21.6895 7.65415 21.5677 7.8235 21.4454 7.99253C21.2259 8.29482 21.0028 8.59408 20.7773 8.89185C20.4766 9.2892 20.1815 9.69044 19.889 10.094C19.8125 10.1993 19.7358 10.3044 19.659 10.4094C19.4079 10.7529 19.1577 11.0971 18.91 11.4431C18.8896 11.4716 18.8692 11.5001 18.8482 11.5294C18.7754 11.6314 18.703 11.7337 18.6307 11.8361C18.6035 11.8747 18.6035 11.8747 18.5756 11.9141C18.2362 12.3955 17.9059 12.8824 17.5821 13.3746C17.5478 13.4267 17.5478 13.4267 17.5128 13.4798C16.951 14.3338 16.425 15.1996 15.9364 16.0988C15.8817 16.1993 15.8266 16.2995 15.7713 16.3996C14.803 18.183 14.0974 20.1792 13.8032 22.1948C13.7275 22.4843 13.5304 22.7004 13.2862 22.8603C12.8671 23.0504 12.4792 23.0344 12.0524 22.8851C11.7159 22.6982 11.4492 22.3832 11.1807 22.1105C11.1305 22.06 11.1305 22.06 11.0793 22.0085C11.0463 21.9751 11.0133 21.9417 10.9793 21.9072C10.9355 21.8629 10.9355 21.8629 10.8908 21.8177C10.812 21.7336 10.738 21.6487 10.664 21.5606C10.4051 21.26 10.1208 20.9832 9.84198 20.7018C9.77941 20.6385 9.71685 20.5753 9.65429 20.512C9.52361 20.3798 9.39285 20.2478 9.26203 20.1158C9.0951 19.9473 8.92837 19.7787 8.76169 19.61C8.63267 19.4794 8.50355 19.349 8.37439 19.2186C8.3129 19.1564 8.25145 19.0943 8.19002 19.0321C7.78034 18.6148 7.78034 18.6148 7.3481 18.2218C7.26354 18.1493 7.18628 18.0708 7.1093 17.9902C6.97131 17.8488 6.8284 17.7169 6.67944 17.5876C6.56805 17.4895 6.45958 17.3885 6.35088 17.2873C6.15574 17.1075 5.95513 16.937 5.74972 16.7694C5.52338 16.5822 5.30225 16.3888 5.08115 16.1954C5.02902 16.1502 4.97647 16.1055 4.92361 16.0611C4.88291 16.0268 4.88291 16.0268 4.84139 15.9918C4.81684 15.9713 4.79228 15.9509 4.76699 15.9298C4.5693 15.7391 4.51301 15.5207 4.5 15.2507C4.5151 14.872 4.65787 14.6052 4.92439 14.3431C5.23566 14.0858 5.58225 13.9705 5.98399 13.9889C6.39409 14.0467 6.67261 14.2696 6.97788 14.5368C7.04531 14.5941 7.11275 14.6513 7.18024 14.7085C7.27801 14.7916 7.37519 14.8755 7.47238 14.9593C7.54704 15.0235 7.62196 15.0874 7.69694 15.1513C8.02915 15.4353 8.34957 15.7298 8.66619 16.0314C8.78965 16.1489 8.91524 16.2635 9.04232 16.3769C9.24098 16.556 9.42848 16.745 9.61441 16.9374C9.73206 17.0583 9.85175 17.1731 9.97956 17.283C10.2352 17.5064 10.4711 17.7507 10.7095 17.9925C10.7917 18.0758 10.8741 18.1589 10.9566 18.2419C11.4347 18.7249 11.4347 18.7249 11.6464 18.9799C11.7218 19.0675 11.8025 19.1485 11.8843 19.2299C11.898 19.1896 11.9116 19.1493 11.9257 19.1078C12.2024 18.2927 12.4869 17.488 12.8481 16.7062C12.8687 16.6616 12.8892 16.617 12.9104 16.571C13.6549 14.9617 14.5337 13.4385 15.5204 11.9689C15.553 11.9203 15.553 11.9203 15.5863 11.8707C16.0931 11.1161 16.6136 10.3732 17.1508 9.6404C17.2538 9.49984 17.3564 9.35903 17.4591 9.2182C17.5357 9.11296 17.6125 9.00777 17.6892 8.90257C17.7905 8.76367 17.8916 8.62462 17.9924 8.48543C18.2637 8.11165 18.5381 7.74072 18.8169 7.37269C19.0086 7.11969 19.1989 6.86631 19.381 6.6062C19.4144 6.55854 19.4478 6.51089 19.4823 6.46179C19.5085 6.42434 19.5085 6.42434 19.5353 6.38614C19.6584 6.21085 19.782 6.03602 19.9066 5.86184C19.9313 5.8267 19.9559 5.79157 19.9813 5.75537C20.4573 5.09349 21.1643 4.75205 21.9264 5.20931Z",
2416
+ fill: "currentColor"
2417
+ }
2418
+ )
2415
2419
  }
2416
2420
  );
2417
2421
  },
2422
+ // ----------------------------------- old ---------------------------------
2423
+ // ** Status **
2418
2424
  "plus-circle": ({ className, fill }) => {
2419
2425
  return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
2420
2426
  "svg",
@@ -8918,7 +8924,7 @@ var getCellStyle = (column) => {
8918
8924
  // src/components/table/definition-table.tsx
8919
8925
  var import_react18 = require("react");
8920
8926
  var import_jsx_runtime23 = require("react/jsx-runtime");
8921
- var DEFAULT_CELL_CLASSES = "px-[10px] py-[9.5px] text-md border-r border-neutral-light";
8927
+ var DEFAULT_CELL_CLASSES = "px-[10px] py-[8px] text-md border-r border-neutral-light h-[50px]";
8922
8928
  var FIRST_CELL_WIDTH_CLASS = "w-[120px] font-bold text-md text-body-foreground";
8923
8929
  var renderColGroup = (rows) => {
8924
8930
  let maxCols = 0;
@@ -8947,7 +8953,7 @@ var renderColGroup = (rows) => {
8947
8953
  }
8948
8954
  return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("colgroup", { children: cols });
8949
8955
  };
8950
- var DefinitionTableRow = ({ cells, className }) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("tr", { className: `border-neutral-light min-h-[50px] border-b ${className || ""}`, children: cells.map((cell, colIndex) => {
8956
+ var DefinitionTableRow = ({ cells, className }) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("tr", { className: `border-neutral-light border-b ${className || ""}`, children: cells.map((cell, colIndex) => {
8951
8957
  const isFirstCell = colIndex === 0;
8952
8958
  const combinedClassName = [isFirstCell ? FIRST_CELL_WIDTH_CLASS : "", clsx(DEFAULT_CELL_CLASSES, cell.className)].filter(Boolean).join(" ");
8953
8959
  let cellStyle;
@@ -8964,13 +8970,13 @@ var DefinitionTableRow = ({ cells, className }) => /* @__PURE__ */ (0, import_js
8964
8970
  className: combinedClassName,
8965
8971
  colSpan: cell.colSpan,
8966
8972
  rowSpan: cell.rowSpan,
8967
- style: cellStyle,
8973
+ style: { ...cellStyle, height: "50px" },
8968
8974
  children: cell.content
8969
8975
  },
8970
8976
  colIndex
8971
8977
  );
8972
8978
  }) });
8973
- var DefinitionTable2 = (0, import_react18.forwardRef)(({ rows = [], footer, classNames }, ref) => {
8979
+ var DefinitionTable = (0, import_react18.forwardRef)(({ rows = [], footer, classNames }, ref) => {
8974
8980
  const slots = (0, import_react18.useMemo)(() => DefinitionTableStyle(), []);
8975
8981
  return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { ref, className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: [
8976
8982
  /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("table", { className: slots.table({ class: classNames == null ? void 0 : classNames.table }), children: [
@@ -8980,8 +8986,8 @@ var DefinitionTable2 = (0, import_react18.forwardRef)(({ rows = [], footer, clas
8980
8986
  footer && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { children: footer })
8981
8987
  ] });
8982
8988
  });
8983
- DefinitionTable2.displayName = "DefinitionTable2";
8984
- var definition_table_default = DefinitionTable2;
8989
+ DefinitionTable.displayName = "DefinitionTable";
8990
+ var definition_table_default = DefinitionTable;
8985
8991
  var DefinitionTableStyle = tv({
8986
8992
  slots: {
8987
8993
  base: ["flex", "flex-col", "gap-[30px]"],
@@ -9005,6 +9011,9 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
9005
9011
  defaultSelectedOptions,
9006
9012
  onChange,
9007
9013
  multiple,
9014
+ dropdownIconName = "brace-up",
9015
+ optionIconName,
9016
+ optionIconPlacement,
9008
9017
  ...inputProps
9009
9018
  } = props;
9010
9019
  const slots = (0, import_react19.useMemo)(() => select({ ...variantProps }), [variantProps]);
@@ -9015,19 +9024,22 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
9015
9024
  const [isOpen, setIsOpen] = (0, import_react19.useState)(false);
9016
9025
  const selectWrapperRef = (0, import_react19.useRef)(null);
9017
9026
  const optionWrapperRef = (0, import_react19.useRef)(null);
9018
- const handleToggleSelect = () => {
9019
- if (isOpen) {
9020
- setIsOpen(false);
9021
- setTimeout(() => setIsVisible(false), 150);
9022
- } else {
9023
- if (selectWrapperRef.current) {
9024
- const rect = selectWrapperRef.current.getBoundingClientRect();
9025
- setTargetRect(rect);
9026
- setIsVisible(true);
9027
- requestAnimationFrame(() => setIsOpen(true));
9028
- }
9027
+ const isControlled = originalProps.value !== void 0;
9028
+ const openSelect = () => {
9029
+ if (selectWrapperRef.current) {
9030
+ const rect = selectWrapperRef.current.getBoundingClientRect();
9031
+ setTargetRect(rect);
9032
+ setIsVisible(true);
9033
+ requestAnimationFrame(() => setIsOpen(true));
9029
9034
  }
9030
9035
  };
9036
+ const closeSelect = () => {
9037
+ setIsOpen(false);
9038
+ setTimeout(() => setIsVisible(false), 150);
9039
+ };
9040
+ const handleToggleSelect = () => {
9041
+ isOpen ? closeSelect() : openSelect();
9042
+ };
9031
9043
  const calculatePositionWithScroll = (rect, height) => {
9032
9044
  const scrollTop = window.scrollY;
9033
9045
  const scrollLeft = window.scrollX;
@@ -9046,8 +9058,7 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
9046
9058
  nextOptions = exists ? selectedOptions.filter((o) => o.value !== option.value) : [...selectedOptions, option];
9047
9059
  } else {
9048
9060
  nextOptions = [option];
9049
- setIsOpen(false);
9050
- setTimeout(() => setIsVisible(false), 150);
9061
+ closeSelect();
9051
9062
  }
9052
9063
  setSelectedOptions(nextOptions);
9053
9064
  onChange == null ? void 0 : onChange(nextOptions);
@@ -9055,9 +9066,9 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
9055
9066
  (0, import_react19.useEffect)(() => {
9056
9067
  const handleClickOutside = (e) => {
9057
9068
  var _a2;
9058
- if (optionWrapperRef.current && !optionWrapperRef.current.contains(e.target) && !((_a2 = selectWrapperRef.current) == null ? void 0 : _a2.contains(e.target))) {
9059
- setIsOpen(false);
9060
- setTimeout(() => setIsVisible(false), 150);
9069
+ const target = e.target;
9070
+ if (optionWrapperRef.current && !optionWrapperRef.current.contains(target) && !((_a2 = selectWrapperRef.current) == null ? void 0 : _a2.contains(target))) {
9071
+ closeSelect();
9061
9072
  }
9062
9073
  };
9063
9074
  window.addEventListener("mousedown", handleClickOutside);
@@ -9068,42 +9079,63 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
9068
9079
  setOptionWrapperHeight(optionWrapperRef.current.getBoundingClientRect().height);
9069
9080
  }
9070
9081
  }, [targetRect]);
9071
- const position = targetRect ? calculatePositionWithScroll(targetRect, optionWrapperHeight) : null;
9072
- const displayValue = multiple ? selectedOptions.map((opt) => opt.label).join(", ") : ((_a = selectedOptions[0]) == null ? void 0 : _a.label) || "";
9073
- const selectedValue = multiple ? selectedOptions.map((opt) => opt.value).join(", ") : ((_b = selectedOptions[0]) == null ? void 0 : _b.value) || "";
9074
- const Option = ({
9075
- option,
9076
- isSelected,
9077
- onClick
9078
- }) => {
9079
- const slot = select({ ...variantProps, isSelected });
9080
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
9081
- "div",
9082
- {
9083
- role: "option",
9084
- title: option.label,
9085
- onClick,
9086
- className: clsx(slot.option({ class: classNames == null ? void 0 : classNames.option })),
9087
- children: [
9088
- option.label,
9089
- isSelected && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Icon_default, { name: "check", size: originalProps.size })
9090
- ]
9091
- }
9092
- );
9093
- };
9094
- const isControlled = originalProps.value !== void 0;
9095
9082
  (0, import_react19.useEffect)(() => {
9096
9083
  if (isControlled) {
9097
9084
  const valueArray = Array.isArray(originalProps.value) ? originalProps.value : [originalProps.value];
9098
- const matchedOptions = options.filter((opt) => valueArray.includes(opt.value));
9099
- setSelectedOptions(matchedOptions);
9100
- }
9101
- }, [originalProps.value, options]);
9102
- (0, import_react19.useEffect)(() => {
9103
- if (!isControlled && defaultSelectedOptions) {
9085
+ const matched = options.filter((opt) => valueArray.includes(opt.value));
9086
+ setSelectedOptions(matched);
9087
+ } else if (defaultSelectedOptions) {
9104
9088
  setSelectedOptions(defaultSelectedOptions);
9105
9089
  }
9106
- }, [defaultSelectedOptions]);
9090
+ }, [originalProps.value, defaultSelectedOptions, options]);
9091
+ const position = targetRect ? calculatePositionWithScroll(targetRect, optionWrapperHeight) : null;
9092
+ const displayValue = multiple ? selectedOptions.map((opt) => opt.label).join(", ") : ((_a = selectedOptions[0]) == null ? void 0 : _a.label) || "";
9093
+ const selectedValue = multiple ? selectedOptions.map((opt) => opt.value).join(",") : ((_b = selectedOptions[0]) == null ? void 0 : _b.value) || "";
9094
+ const renderOptions = () => {
9095
+ if (!isVisible) return null;
9096
+ return (0, import_react_dom.createPortal)(
9097
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
9098
+ "div",
9099
+ {
9100
+ ref: optionWrapperRef,
9101
+ role: "listbox",
9102
+ className: slots.optionsWrapper({ class: classNames == null ? void 0 : classNames.optionsWrapper }),
9103
+ style: {
9104
+ position: "absolute",
9105
+ top: position == null ? void 0 : position.top,
9106
+ left: position == null ? void 0 : position.left,
9107
+ width: targetRect == null ? void 0 : targetRect.width,
9108
+ zIndex: 1e3,
9109
+ opacity: isOpen ? 1 : 0,
9110
+ transform: isOpen ? "translateY(0)" : "translateY(-0.25rem)",
9111
+ transition: "opacity 150ms ease-out, transform 150ms ease-out"
9112
+ },
9113
+ children: options.map((option) => {
9114
+ const isSelected = selectedOptions.some((o) => o.value === option.value);
9115
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
9116
+ "div",
9117
+ {
9118
+ role: "option",
9119
+ title: option.label,
9120
+ onClick: () => handleChangeOption(option),
9121
+ className: clsx(
9122
+ select({ ...variantProps, isSelected }).option({ class: classNames == null ? void 0 : classNames.option }),
9123
+ optionIconPlacement === "end" ? "justify-between" : ""
9124
+ ),
9125
+ children: [
9126
+ optionIconName && optionIconPlacement === "start" && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Icon_default, { name: optionIconName, size: originalProps.size }),
9127
+ option.label,
9128
+ optionIconName && optionIconPlacement === "end" && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Icon_default, { name: optionIconName, size: originalProps.size })
9129
+ ]
9130
+ },
9131
+ option.value
9132
+ );
9133
+ })
9134
+ }
9135
+ ),
9136
+ document.body
9137
+ );
9138
+ };
9107
9139
  return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(import_jsx_runtime24.Fragment, { children: [
9108
9140
  /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
9109
9141
  "div",
@@ -9145,7 +9177,7 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
9145
9177
  /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
9146
9178
  Icon_default,
9147
9179
  {
9148
- name: "brace-up",
9180
+ name: dropdownIconName,
9149
9181
  size: originalProps.size,
9150
9182
  className: `transition-transform duration-200 ${isOpen ? "rotate-0" : "rotate-180"}`
9151
9183
  }
@@ -9159,39 +9191,7 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
9159
9191
  ]
9160
9192
  }
9161
9193
  ),
9162
- isVisible && (0, import_react_dom.createPortal)(
9163
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
9164
- "div",
9165
- {
9166
- ref: optionWrapperRef,
9167
- role: "listbox",
9168
- className: slots.optionsWrapper({ class: classNames == null ? void 0 : classNames.optionsWrapper }),
9169
- style: {
9170
- position: "absolute",
9171
- top: position == null ? void 0 : position.top,
9172
- left: position == null ? void 0 : position.left,
9173
- width: targetRect == null ? void 0 : targetRect.width,
9174
- zIndex: 1e3,
9175
- opacity: isOpen ? 1 : 0,
9176
- transform: isOpen ? "translateY(0)" : "translateY(-0.25rem)",
9177
- transition: "opacity 150ms ease-out, transform 150ms ease-out"
9178
- },
9179
- children: options.map((option) => {
9180
- const isSelected = selectedOptions.some((o) => o.value === option.value);
9181
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
9182
- Option,
9183
- {
9184
- option,
9185
- isSelected,
9186
- onClick: () => handleChangeOption(option)
9187
- },
9188
- option.value
9189
- );
9190
- })
9191
- }
9192
- ),
9193
- document.body
9194
- )
9194
+ renderOptions()
9195
9195
  ] });
9196
9196
  });
9197
9197
  Select.displayName = "Select";
@@ -9207,7 +9207,6 @@ var select = tv({
9207
9207
  "flex",
9208
9208
  "items-center",
9209
9209
  "justify-between",
9210
- "border",
9211
9210
  "cursor-pointer",
9212
9211
  "text-neutral-main",
9213
9212
  "hover:bg-trans-soft",
@@ -9225,22 +9224,59 @@ var select = tv({
9225
9224
  "group-has-[p.error]/select:text-danger-main",
9226
9225
  "group-has-[p.error]/select:placeholder:text-danger-main"
9227
9226
  ],
9228
- optionsWrapper: ["border", "rounded", "bg-body-background", "shadow", "overflow-auto"],
9229
- option: ["flex", "justify-between", "items-center", "cursor-pointer"],
9227
+ optionsWrapper: ["bg-body-background", "overflow-auto", "flex", "flex-col", "gap-[10px]"],
9228
+ option: [
9229
+ "flex",
9230
+ "items-center",
9231
+ "cursor-pointer",
9232
+ "text-neutral-dark",
9233
+ "hover:bg-trans-soft",
9234
+ "hover:text-neutral-strong"
9235
+ ],
9230
9236
  helperMessage: ["text-neutral-main"],
9231
9237
  errorMessage: ["text-danger-main"],
9232
9238
  readonly: ["pointer-events-none", "!bg-trans-soft"]
9233
9239
  },
9234
9240
  variants: {
9241
+ variant: {
9242
+ solid: {
9243
+ selectWrapper: ["border-transparent", "bg-trans-soft"],
9244
+ option: [],
9245
+ readonlyWrapper: ["!bg-trans-light"]
9246
+ },
9247
+ outline: {
9248
+ selectWrapper: [
9249
+ "border-neutral-light",
9250
+ "border",
9251
+ "group-has-[:hover]/select:bg-trans-soft",
9252
+ "group-has-[:focus]/select:bg-body-background",
9253
+ "group-has-[p.error]/select:border-danger-main"
9254
+ ],
9255
+ option: [],
9256
+ readonlyWrapper: ["!bg-trans-soft"]
9257
+ },
9258
+ underline: {
9259
+ selectWrapper: [
9260
+ "bg-transparent",
9261
+ "border-neutral-light",
9262
+ "!rounded-none",
9263
+ "group-has-[:hover]/select:bg-trans-soft",
9264
+ "group-has-[:focus]/select:bg-body-background",
9265
+ "group-has-[p.error]/select:border-danger-main"
9266
+ ],
9267
+ option: ["!rounded-none"],
9268
+ readonlyWrapper: ["!bg-trans-soft"]
9269
+ }
9270
+ },
9235
9271
  color: {
9236
9272
  primary: {
9237
9273
  selectWrapper: ["text-primary-main"],
9238
- option: ["hover:bg-primary-soft", "hover:text-primary-main"],
9274
+ option: [],
9239
9275
  helperMessage: ["text-primary-main"]
9240
9276
  },
9241
9277
  secondary: {
9242
9278
  selectWrapper: ["text-secondary-main"],
9243
- option: ["hover:bg-secondary-soft", "hover:text-secondary-main"],
9279
+ option: [],
9244
9280
  helperMessage: ["text-secondary-main"]
9245
9281
  }
9246
9282
  },
@@ -9251,7 +9287,8 @@ var select = tv({
9251
9287
  wrapper: ["gap-[4px]"],
9252
9288
  selectWrapper: ["w-[240px]", "h-[24px]", "rounded-sm", "px-[4px]"],
9253
9289
  select: ["text-sm"],
9254
- option: ["px-[4px]", "py-[3px]", "text-sm"],
9290
+ optionsWrapper: ["shadow-drop-sm", "rounded-sm", "p-[4px]"],
9291
+ option: ["px-[4px]", "py-[3px]", "rounded-sm", "text-sm", "gap-[4px]"],
9255
9292
  helperMessage: ["text-sm"],
9256
9293
  errorMessage: ["text-sm"]
9257
9294
  },
@@ -9261,7 +9298,8 @@ var select = tv({
9261
9298
  wrapper: ["gap-[6px]"],
9262
9299
  selectWrapper: ["w-[240px]", "h-[32px]", "rounded-md", "px-[6px]"],
9263
9300
  select: ["text-md"],
9264
- option: ["px-[6px]", "py-[5.5px]", "text-md"],
9301
+ optionsWrapper: ["shadow-drop-md", "rounded-md", "p-[6px]"],
9302
+ option: ["px-[6px]", "py-[5.5px]", "rounded-md", "text-md", "gap-[6px]"],
9265
9303
  helperMessage: ["text-sm"],
9266
9304
  errorMessage: ["text-sm"]
9267
9305
  },
@@ -9271,7 +9309,8 @@ var select = tv({
9271
9309
  wrapper: ["gap-[8px]"],
9272
9310
  selectWrapper: ["w-[240px]", "h-[40px]", "rounded-lg", "px-[8px]"],
9273
9311
  select: ["text-lg"],
9274
- option: ["px-[8px]", "py-[8px]", "text-lg"],
9312
+ optionsWrapper: ["shadow-drop-lg", "rounded-lg", "p-[8px]"],
9313
+ option: ["px-[8px]", "py-[8px]", "rounded-lg", "text-lg", "gap-[8px]"],
9275
9314
  helperMessage: ["text-md"],
9276
9315
  errorMessage: ["text-md"]
9277
9316
  },
@@ -9279,9 +9318,10 @@ var select = tv({
9279
9318
  base: ["text-xl", "gap-[10px]"],
9280
9319
  label: ["text-xl"],
9281
9320
  wrapper: ["gap-[10px]"],
9282
- selectWrapper: ["w-[240px]", "h-[50px]", "rounded-lg", "px-[10px]"],
9321
+ selectWrapper: ["w-[240px]", "h-[50px]", "rounded-xl", "px-[10px]"],
9283
9322
  select: ["text-xl"],
9284
- option: ["px-[10px]", "py-[11.5px]"],
9323
+ optionsWrapper: ["shadow-drop-xl", "rounded-xl", "p-[10px]"],
9324
+ option: ["px-[10px]", "py-[11.5px]", , "rounded-xl", "text-xl", "gap-[10px]"],
9285
9325
  helperMessage: ["text-md"],
9286
9326
  errorMessage: ["text-md"]
9287
9327
  }
@@ -9323,22 +9363,83 @@ var select = tv({
9323
9363
  }
9324
9364
  },
9325
9365
  compoundVariants: [
9366
+ {
9367
+ variant: "outline",
9368
+ size: "sm",
9369
+ class: {
9370
+ option: ["hover:shadow-[inset_0_0_0_1px_var(--dn-neutral-light)]"]
9371
+ }
9372
+ },
9373
+ {
9374
+ variant: "outline",
9375
+ size: "md",
9376
+ class: {
9377
+ option: ["hover:shadow-[inset_0_0_0_1.25px_var(--dn-neutral-light)]"]
9378
+ }
9379
+ },
9380
+ {
9381
+ variant: "outline",
9382
+ size: "lg",
9383
+ class: {
9384
+ option: ["hover:shadow-[inset_0_0_0_1.5px_var(--dn-neutral-light)]"]
9385
+ }
9386
+ },
9387
+ {
9388
+ variant: "outline",
9389
+ size: "xl",
9390
+ class: {
9391
+ option: ["hover:shadow-[inset_0_0_0_1.75px_var(--dn-neutral-light)]"]
9392
+ }
9393
+ },
9394
+ {
9395
+ variant: "underline",
9396
+ size: "sm",
9397
+ class: {
9398
+ selectWrapper: ["border-b-sm"],
9399
+ option: ["hover:shadow-[inset_0_-1px_0_0_var(--dn-neutral-light)]"]
9400
+ }
9401
+ },
9402
+ {
9403
+ variant: "underline",
9404
+ size: "md",
9405
+ class: {
9406
+ selectWrapper: ["border-b-md"],
9407
+ option: ["hover:shadow-[inset_0_-1.25px_0_0_var(--dn-neutral-light)]"]
9408
+ }
9409
+ },
9410
+ {
9411
+ variant: "underline",
9412
+ size: "lg",
9413
+ class: {
9414
+ selectWrapper: ["border-b-lg"],
9415
+ option: ["hover:shadow-[inset_0_-1.5px_0_0_var(--dn-neutral-light)]"]
9416
+ }
9417
+ },
9418
+ {
9419
+ variant: "underline",
9420
+ size: "xl",
9421
+ class: {
9422
+ selectWrapper: ["border-b-xl"],
9423
+ option: ["hover:shadow-[inset_0_-1.75px_0_0_var(--dn-neutral-light)]"]
9424
+ }
9425
+ },
9326
9426
  {
9327
9427
  color: "primary",
9328
9428
  isSelected: true,
9329
9429
  class: {
9330
- option: "bg-primary-soft text-primary-main"
9430
+ option: ["text-primary-main"]
9331
9431
  }
9332
9432
  },
9333
9433
  {
9334
9434
  color: "secondary",
9335
9435
  isSelected: true,
9336
9436
  class: {
9337
- option: "bg-secondary-soft text-secondary-main"
9437
+ option: ["text-secondary-main"]
9338
9438
  }
9339
9439
  }
9340
9440
  ],
9341
9441
  defaultVariants: {
9442
+ variant: "solid",
9342
9443
  color: "primary",
9343
9444
  size: "md",
9344
9445
  direction: "vertical",
package/dist/index.mjs CHANGED
@@ -2,16 +2,11 @@
2
2
  import "./chunk-MBLZYQCN.mjs";
3
3
  import {
4
4
  tree_default
5
- } from "./chunk-YLHOBT6S.mjs";
6
- import "./chunk-LUWGOKLG.mjs";
7
- import {
8
- ToastProvider,
9
- useToast
10
- } from "./chunk-NMZFSNPE.mjs";
11
- import "./chunk-ZOTHPHXA.mjs";
5
+ } from "./chunk-5MINOKNM.mjs";
6
+ import "./chunk-RRAZM5D3.mjs";
12
7
  import {
13
- toast_default
14
- } from "./chunk-OBMO6LRA.mjs";
8
+ textarea_default
9
+ } from "./chunk-3CRSSRCH.mjs";
15
10
  import "./chunk-HIE2YRGA.mjs";
16
11
  import {
17
12
  tooltip_default
@@ -21,15 +16,20 @@ import "./chunk-WSIADHVC.mjs";
21
16
  import "./chunk-DX3KXNP6.mjs";
22
17
  import {
23
18
  table_default
24
- } from "./chunk-IJS5AWD2.mjs";
25
- import "./chunk-RRAZM5D3.mjs";
26
- import {
27
- textarea_default
28
- } from "./chunk-3CRSSRCH.mjs";
19
+ } from "./chunk-27K5BTEL.mjs";
29
20
  import "./chunk-3MY6LO7N.mjs";
30
21
  import {
31
22
  tabs_default
32
23
  } from "./chunk-NBJHZ4X2.mjs";
24
+ import "./chunk-LUWGOKLG.mjs";
25
+ import {
26
+ ToastProvider,
27
+ useToast
28
+ } from "./chunk-DD6HAIW3.mjs";
29
+ import "./chunk-ZOTHPHXA.mjs";
30
+ import {
31
+ toast_default
32
+ } from "./chunk-DLNGJVFS.mjs";
33
33
  import "./chunk-MZ76AA76.mjs";
34
34
  import {
35
35
  skeleton_default
@@ -40,7 +40,7 @@ import {
40
40
  } from "./chunk-AGE57VDD.mjs";
41
41
  import {
42
42
  definition_table_default
43
- } from "./chunk-3M6VYLOU.mjs";
43
+ } from "./chunk-D6MHTE5L.mjs";
44
44
  import "./chunk-TPFN22HR.mjs";
45
45
  import {
46
46
  radio_default
@@ -52,22 +52,22 @@ import {
52
52
  import "./chunk-7B7LRG5J.mjs";
53
53
  import {
54
54
  pagination_default
55
- } from "./chunk-BBQNVDIA.mjs";
55
+ } from "./chunk-HX64P3XQ.mjs";
56
56
  import "./chunk-F3HENRVM.mjs";
57
57
  import "./chunk-4VWG4726.mjs";
58
58
  import {
59
59
  datePicker_default
60
- } from "./chunk-NITERGU5.mjs";
60
+ } from "./chunk-WB7Z54CF.mjs";
61
61
  import {
62
62
  day_default
63
63
  } from "./chunk-4DESGO3D.mjs";
64
64
  import {
65
65
  timePicker_default
66
- } from "./chunk-MHZ4BO5M.mjs";
66
+ } from "./chunk-UEJJBAHG.mjs";
67
67
  import "./chunk-QCEKPS7U.mjs";
68
68
  import {
69
69
  select_default
70
- } from "./chunk-MIVGSJFF.mjs";
70
+ } from "./chunk-3YT4YJNJ.mjs";
71
71
  import "./chunk-FWFEKWWD.mjs";
72
72
  import "./chunk-7MVEAQ7Z.mjs";
73
73
  import {
@@ -75,15 +75,15 @@ import {
75
75
  } from "./chunk-3IILPVRA.mjs";
76
76
  import {
77
77
  listItem_default
78
- } from "./chunk-KCOS2KC6.mjs";
78
+ } from "./chunk-LOYDOCOR.mjs";
79
79
  import "./chunk-DJOG6Z35.mjs";
80
80
  import {
81
81
  modal_default
82
- } from "./chunk-27WK5334.mjs";
82
+ } from "./chunk-VEBJS4SC.mjs";
83
83
  import "./chunk-MGEWSREV.mjs";
84
84
  import {
85
85
  chip_default
86
- } from "./chunk-YUS5SELP.mjs";
86
+ } from "./chunk-AT6GNVOQ.mjs";
87
87
  import "./chunk-32GA3YW4.mjs";
88
88
  import {
89
89
  drawer_default
@@ -91,7 +91,7 @@ import {
91
91
  import "./chunk-RLXOHILK.mjs";
92
92
  import {
93
93
  fileUpload_default
94
- } from "./chunk-Q5634WTM.mjs";
94
+ } from "./chunk-RVFSQFWS.mjs";
95
95
  import "./chunk-7VOQKIIK.mjs";
96
96
  import {
97
97
  progress_default
@@ -99,7 +99,7 @@ import {
99
99
  import "./chunk-2GCSFWHD.mjs";
100
100
  import {
101
101
  input_default
102
- } from "./chunk-CMMVXFHD.mjs";
102
+ } from "./chunk-3F6OF2QS.mjs";
103
103
  import "./chunk-VYNBJBXD.mjs";
104
104
  import {
105
105
  areaChart_default
@@ -124,7 +124,7 @@ import {
124
124
  import "./chunk-KYIODWXL.mjs";
125
125
  import {
126
126
  breadcrumb_default
127
- } from "./chunk-EXUHHLSA.mjs";
127
+ } from "./chunk-2IOTRPCS.mjs";
128
128
  import "./chunk-MY5U63QO.mjs";
129
129
  import {
130
130
  text_button_default
@@ -134,10 +134,10 @@ import {
134
134
  } from "./chunk-ITWKPTSD.mjs";
135
135
  import {
136
136
  button_default
137
- } from "./chunk-SS6EG5JO.mjs";
137
+ } from "./chunk-XOUAUSP4.mjs";
138
138
  import {
139
139
  icon_button_default
140
- } from "./chunk-NV5Z6ZUO.mjs";
140
+ } from "./chunk-6JLHCQH7.mjs";
141
141
  import "./chunk-6WSACUIB.mjs";
142
142
  import "./chunk-LXHUO6VM.mjs";
143
143
  import "./chunk-SZL743JC.mjs";
@@ -145,7 +145,7 @@ import "./chunk-ZYIIXWVY.mjs";
145
145
  import {
146
146
  Icon_default,
147
147
  iconTemplate
148
- } from "./chunk-EM2NIGNZ.mjs";
148
+ } from "./chunk-YZ57UYAS.mjs";
149
149
  import "./chunk-NMSDSEBD.mjs";
150
150
  import {
151
151
  accordion_default
@@ -157,8 +157,8 @@ import "./chunk-E3G5QXSH.mjs";
157
157
  import "./chunk-7DLOYKVC.mjs";
158
158
  import {
159
159
  avatar_default
160
- } from "./chunk-RJPBLIEF.mjs";
161
- import "./chunk-CTWYY7Z2.mjs";
160
+ } from "./chunk-VOKDAIUY.mjs";
161
+ import "./chunk-BG4DIGKH.mjs";
162
162
  import {
163
163
  deepnoidUi,
164
164
  tv
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deepnoid/ui",
3
- "version": "0.1.120",
3
+ "version": "0.1.121",
4
4
  "license": "MIT",
5
5
  "sideEffects": false,
6
6
  "exports": {