@rpg-engine/long-bow 0.7.90 → 0.7.91

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.
@@ -28642,9 +28642,12 @@ var CraftBook = function CraftBook(_ref) {
28642
28642
  var _useState3 = useState(),
28643
28643
  size = _useState3[0],
28644
28644
  setSize = _useState3[1];
28645
- var _useState4 = useState(false),
28646
- isCraftingDisabled = _useState4[0],
28647
- setIsCraftingDisabled = _useState4[1];
28645
+ var _useState4 = useState(''),
28646
+ searchTerm = _useState4[0],
28647
+ setSearchTerm = _useState4[1];
28648
+ var _useState5 = useState(false),
28649
+ isCraftingDisabled = _useState5[0],
28650
+ setIsCraftingDisabled = _useState5[1];
28648
28651
  useEffect(function () {
28649
28652
  var handleResize = function handleResize() {
28650
28653
  if (window.innerWidth < 500 && (size == null ? void 0 : size.width) !== mobilePortrait.width && (!scale || scale < 1)) {
@@ -28710,6 +28713,11 @@ var CraftBook = function CraftBook(_ref) {
28710
28713
  }, row);
28711
28714
  });
28712
28715
  };
28716
+ var filteredCraftableItems = craftablesItems == null ? void 0 : craftablesItems.filter(function (item) {
28717
+ var matchesSearch = item.name.toLowerCase().includes(searchTerm.toLowerCase());
28718
+ var matchesCategory = selectedType === 'Suggested' || item.type === selectedType;
28719
+ return matchesSearch && matchesCategory;
28720
+ });
28713
28721
  if (!size) return null;
28714
28722
  return React.createElement(DraggableContainer, {
28715
28723
  type: RPGUIContainerTypes.Framed,
@@ -28726,13 +28734,21 @@ var CraftBook = function CraftBook(_ref) {
28726
28734
  style: {
28727
28735
  width: '100%'
28728
28736
  }
28729
- }, React.createElement(Title$2, null, "Craftbook"), React.createElement(Subtitle, null, "Select an item to craft"), React.createElement("hr", {
28737
+ }, React.createElement(Title$2, null, "Craftbook"), React.createElement(Subtitle, null, "Select an item to craft"), React.createElement(SearchContainer$1, null, React.createElement("input", {
28738
+ type: "text",
28739
+ className: "rpgui-input",
28740
+ placeholder: "Search items...",
28741
+ value: searchTerm,
28742
+ onChange: function onChange(e) {
28743
+ return setSearchTerm(e.target.value);
28744
+ }
28745
+ })), React.createElement("hr", {
28730
28746
  className: "golden"
28731
28747
  })), React.createElement(ContentContainer, null, React.createElement(ItemTypes, {
28732
28748
  className: "inputRadioCraftBook"
28733
28749
  }, renderItemTypes()), React.createElement(RadioInputScroller, {
28734
28750
  className: "inputRadioCraftBook"
28735
- }, craftablesItems == null ? void 0 : craftablesItems.map(function (item) {
28751
+ }, filteredCraftableItems == null ? void 0 : filteredCraftableItems.map(function (item) {
28736
28752
  return React.createElement(CraftingRecipe, {
28737
28753
  key: item.key,
28738
28754
  atlasIMG: atlasIMG,
@@ -28793,6 +28809,10 @@ var ItemTypes = /*#__PURE__*/styled.div.withConfig({
28793
28809
  displayName: "CraftBook__ItemTypes",
28794
28810
  componentId: "sc-19q95ue-6"
28795
28811
  })(["display:flex;overflow-y:scroll;overflow-x:hidden;width:max-content;flex-direction:column;padding-right:5px;@media (max-width:", "){overflow-x:scroll;overflow-y:hidden;padding-right:0;width:100%;}"], mobilePortrait.width);
28812
+ var SearchContainer$1 = /*#__PURE__*/styled.div.withConfig({
28813
+ displayName: "CraftBook__SearchContainer",
28814
+ componentId: "sc-19q95ue-7"
28815
+ })(["margin:8px 0;padding:0 16px;input{width:100%;font-size:0.8rem;padding:8px 12px;background-color:rgba(0,0,0,0.3);border:none;color:white;border-radius:4px;&::placeholder{color:rgba(255,255,255,0.5);}&:focus{outline:none;background-color:rgba(0,0,0,0.4);}}"]);
28796
28816
 
28797
28817
  var Dropdown = function Dropdown(_ref) {
28798
28818
  var options = _ref.options,