@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.
@@ -28648,9 +28648,12 @@ var CraftBook = function CraftBook(_ref) {
28648
28648
  var _useState3 = React.useState(),
28649
28649
  size = _useState3[0],
28650
28650
  setSize = _useState3[1];
28651
- var _useState4 = React.useState(false),
28652
- isCraftingDisabled = _useState4[0],
28653
- setIsCraftingDisabled = _useState4[1];
28651
+ var _useState4 = React.useState(''),
28652
+ searchTerm = _useState4[0],
28653
+ setSearchTerm = _useState4[1];
28654
+ var _useState5 = React.useState(false),
28655
+ isCraftingDisabled = _useState5[0],
28656
+ setIsCraftingDisabled = _useState5[1];
28654
28657
  React.useEffect(function () {
28655
28658
  var handleResize = function handleResize() {
28656
28659
  if (window.innerWidth < 500 && (size == null ? void 0 : size.width) !== mobilePortrait.width && (!scale || scale < 1)) {
@@ -28716,6 +28719,11 @@ var CraftBook = function CraftBook(_ref) {
28716
28719
  }, row);
28717
28720
  });
28718
28721
  };
28722
+ var filteredCraftableItems = craftablesItems == null ? void 0 : craftablesItems.filter(function (item) {
28723
+ var matchesSearch = item.name.toLowerCase().includes(searchTerm.toLowerCase());
28724
+ var matchesCategory = selectedType === 'Suggested' || item.type === selectedType;
28725
+ return matchesSearch && matchesCategory;
28726
+ });
28719
28727
  if (!size) return null;
28720
28728
  return React__default.createElement(DraggableContainer, {
28721
28729
  type: exports.RPGUIContainerTypes.Framed,
@@ -28732,13 +28740,21 @@ var CraftBook = function CraftBook(_ref) {
28732
28740
  style: {
28733
28741
  width: '100%'
28734
28742
  }
28735
- }, React__default.createElement(Title$2, null, "Craftbook"), React__default.createElement(Subtitle, null, "Select an item to craft"), React__default.createElement("hr", {
28743
+ }, React__default.createElement(Title$2, null, "Craftbook"), React__default.createElement(Subtitle, null, "Select an item to craft"), React__default.createElement(SearchContainer$1, null, React__default.createElement("input", {
28744
+ type: "text",
28745
+ className: "rpgui-input",
28746
+ placeholder: "Search items...",
28747
+ value: searchTerm,
28748
+ onChange: function onChange(e) {
28749
+ return setSearchTerm(e.target.value);
28750
+ }
28751
+ })), React__default.createElement("hr", {
28736
28752
  className: "golden"
28737
28753
  })), React__default.createElement(ContentContainer, null, React__default.createElement(ItemTypes, {
28738
28754
  className: "inputRadioCraftBook"
28739
28755
  }, renderItemTypes()), React__default.createElement(RadioInputScroller, {
28740
28756
  className: "inputRadioCraftBook"
28741
- }, craftablesItems == null ? void 0 : craftablesItems.map(function (item) {
28757
+ }, filteredCraftableItems == null ? void 0 : filteredCraftableItems.map(function (item) {
28742
28758
  return React__default.createElement(CraftingRecipe, {
28743
28759
  key: item.key,
28744
28760
  atlasIMG: atlasIMG,
@@ -28799,6 +28815,10 @@ var ItemTypes = /*#__PURE__*/styled__default.div.withConfig({
28799
28815
  displayName: "CraftBook__ItemTypes",
28800
28816
  componentId: "sc-19q95ue-6"
28801
28817
  })(["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);
28818
+ var SearchContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
28819
+ displayName: "CraftBook__SearchContainer",
28820
+ componentId: "sc-19q95ue-7"
28821
+ })(["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);}}"]);
28802
28822
 
28803
28823
  var Dropdown = function Dropdown(_ref) {
28804
28824
  var options = _ref.options,