opus-toolkit-components 0.3.2 → 0.3.3

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.
@@ -588,7 +588,7 @@ const Accordion = _ref => {
588
588
  return /*#__PURE__*/external_react_default().createElement("div", {
589
589
  className: "accordion rounded-md"
590
590
  }, /*#__PURE__*/external_react_default().createElement("div", {
591
- className: "accordion-item border-2 rounded-lg border-gray-200",
591
+ className: "accordion-item rounded-lg",
592
592
  key: index
593
593
  }, /*#__PURE__*/external_react_default().createElement("div", {
594
594
  className: "accordion-header flex justify-between p-2",
@@ -9071,20 +9071,23 @@ const ForwardRef = /*#__PURE__*/ external_react_.forwardRef(ChevronDownIcon);
9071
9071
  function Dropdown(_ref) {
9072
9072
  let {
9073
9073
  items,
9074
- label = "Test Label",
9074
+ label = 'Test Label',
9075
9075
  isValid = true,
9076
- placeholder = "Example Placeholder",
9076
+ placeholder = 'Example Placeholder',
9077
9077
  name,
9078
+ className = '',
9078
9079
  onChange,
9079
- value
9080
+ value,
9081
+ Icon // Left-aligned icon
9080
9082
  } = _ref;
9081
9083
  const initialSelectedItem = items.find(item => item.value === value) || null;
9082
9084
  const [selectedItem, setSelectedItem] = (0,external_react_.useState)(initialSelectedItem);
9085
+ const [isOpen, setIsOpen] = (0,external_react_.useState)(false);
9083
9086
  (0,external_react_.useEffect)(() => {
9084
9087
  const newSelectedItem = items.find(item => item.value === value) || null;
9085
9088
  setSelectedItem(newSelectedItem);
9086
9089
  }, [value, items]);
9087
- const inputClasses = `inline-flex w-full justify-center gap-x-1.5 rounded-md bg-white border px-4 py-3 text-md font-normal text-gray-900 ${isValid ? 'border-slate-500' : 'border-rose-500'}`;
9090
+ const inputClasses = `inline-flex w-full justify-between items-center rounded-md bg-white text-md font-normal border px-4 py-2 text-greyLight700 ${isValid ? 'border-greyLight500' : 'border-utilRed'} ${className}`;
9088
9091
  const handleSelect = item => {
9089
9092
  setSelectedItem(item);
9090
9093
  const event = {
@@ -9101,18 +9104,18 @@ function Dropdown(_ref) {
9101
9104
  name: name
9102
9105
  }, /*#__PURE__*/external_react_default().createElement("label", null, label), /*#__PURE__*/external_react_default().createElement("div", null, /*#__PURE__*/external_react_default().createElement(It, {
9103
9106
  className: inputClasses,
9104
- style: {
9105
- backgroundColor: 'white'
9106
- }
9107
- }, selectedItem ? selectedItem.label : placeholder, /*#__PURE__*/external_react_default().createElement(esm_ChevronDownIcon, {
9107
+ onClick: () => setIsOpen(prev => !prev)
9108
+ }, /*#__PURE__*/external_react_default().createElement("div", {
9109
+ className: "flex items-center gap-2"
9110
+ }, Icon && /*#__PURE__*/external_react_default().createElement(Icon, {
9111
+ className: "h-5 w-5 text-greyLight700"
9112
+ }), " ", /*#__PURE__*/external_react_default().createElement("span", null, selectedItem ? selectedItem.label : placeholder)), /*#__PURE__*/external_react_default().createElement(esm_ChevronDownIcon, {
9108
9113
  "aria-hidden": "true",
9109
- className: "-mr-1 h-5 w-5 text-gray-400"
9114
+ className: `-mr-1 h-5 w-5 text-greyLight700 transition-transform duration-200 ${isOpen ? 'rotate-180' : 'rotate-0'}`
9110
9115
  }))), /*#__PURE__*/external_react_default().createElement(gt, {
9111
9116
  transition: true,
9112
- className: "absolute right-0 z-10 mt-2 w-56 origin-top-right rounded-md bg-white shadow-lg ring-1 ring-black ring-opacity-5 transition focus:outline-none",
9113
- style: {
9114
- backgroundColor: 'white'
9115
- }
9117
+ className: "absolute right-0 z-10 mt-2 w-56 origin-top-right rounded-md bg-white shadow-lg ring-1 ring-black ring-opacity-5 transition focus:outline-none max-h-48 overflow-y-auto",
9118
+ onClick: () => setIsOpen(false)
9116
9119
  }, /*#__PURE__*/external_react_default().createElement("div", {
9117
9120
  className: "py-1"
9118
9121
  }, items.map((item, index) => /*#__PURE__*/external_react_default().createElement(Et, {
@@ -9124,10 +9127,10 @@ function Dropdown(_ref) {
9124
9127
  return /*#__PURE__*/external_react_default().createElement("button", {
9125
9128
  type: "button",
9126
9129
  onClick: () => handleSelect(item),
9127
- className: `block w-full px-4 py-2 text-left text-sm text-gray-700 ${active ? 'bg-gray-100 text-gray-900' : ''}`
9130
+ className: `block w-full px-4 py-2 text-left text-sm text-greyLight700 ${active ? 'bg-greyLight100 text-greyLight700' : ''} hover:bg-greyLight100`
9128
9131
  }, item.label);
9129
9132
  })))), !isValid && /*#__PURE__*/external_react_default().createElement("span", {
9130
- className: "text-rose-500 text-sm"
9133
+ className: "text-utilRed text-sm"
9131
9134
  }, "Please select a valid option"));
9132
9135
  }
9133
9136
  ;// ./src/index.js
@@ -9143,4 +9146,4 @@ function Dropdown(_ref) {
9143
9146
  /******/ })()
9144
9147
  ;
9145
9148
  });
9146
- //# sourceMappingURL=main.923c53023bac4e887eda.js.map
9149
+ //# sourceMappingURL=main.5f4fb2e84b8e3334491d.js.map