@rpg-engine/long-bow 0.5.9 → 0.5.11

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.
@@ -15578,6 +15578,7 @@ var ItemContainer$1 = function ItemContainer(_ref) {
15578
15578
  isDepotSystem = _ref.isDepotSystem,
15579
15579
  onPositionChangeEnd = _ref.onPositionChangeEnd,
15580
15580
  onPositionChangeStart = _ref.onPositionChangeStart;
15581
+ var MAX_SLOTS_PER_PAGE = 20;
15581
15582
  var _useState = useState({
15582
15583
  isOpen: false,
15583
15584
  maxQuantity: 1,
@@ -15588,6 +15589,10 @@ var ItemContainer$1 = function ItemContainer(_ref) {
15588
15589
  var _useState2 = useState(-1),
15589
15590
  settingShortcutIndex = _useState2[0],
15590
15591
  setSettingShortcutIndex = _useState2[1];
15592
+ var _useState3 = useState(1),
15593
+ currentPage = _useState3[0],
15594
+ setCurrentPage = _useState3[1];
15595
+ var totalPages = Math.ceil(itemContainer.slotQty / MAX_SLOTS_PER_PAGE);
15591
15596
  var handleSetShortcut = function handleSetShortcut(item, index) {
15592
15597
  if (item.type === ItemType.Consumable || item.type === ItemType.Tool) {
15593
15598
  setItemShortcut == null ? void 0 : setItemShortcut(item.key, index);
@@ -15595,7 +15600,9 @@ var ItemContainer$1 = function ItemContainer(_ref) {
15595
15600
  };
15596
15601
  var onRenderSlots = function onRenderSlots() {
15597
15602
  var slots = [];
15598
- for (var i = 0; i < itemContainer.slotQty; i++) {
15603
+ var start = (currentPage - 1) * MAX_SLOTS_PER_PAGE;
15604
+ var end = start + MAX_SLOTS_PER_PAGE;
15605
+ for (var i = start; i < end && i < itemContainer.slotQty; i++) {
15599
15606
  var _itemContainer$slots;
15600
15607
  slots.push(React.createElement(ItemSlot, {
15601
15608
  isContextMenuDisabled: disableContextMenu,
@@ -15647,6 +15654,16 @@ var ItemContainer$1 = function ItemContainer(_ref) {
15647
15654
  }
15648
15655
  return slots;
15649
15656
  };
15657
+ var goToNextPage = function goToNextPage() {
15658
+ setCurrentPage(function (current) {
15659
+ return Math.min(current + 1, totalPages);
15660
+ });
15661
+ };
15662
+ var goToPreviousPage = function goToPreviousPage() {
15663
+ setCurrentPage(function (current) {
15664
+ return Math.max(current - 1, 1);
15665
+ });
15666
+ };
15650
15667
  return React.createElement(React.Fragment, null, React.createElement(SlotsContainer, {
15651
15668
  title: itemContainer.name || 'Container',
15652
15669
  onClose: onClose,
@@ -15663,7 +15680,23 @@ var ItemContainer$1 = function ItemContainer(_ref) {
15663
15680
  atlasJSON: atlasJSON
15664
15681
  }), React.createElement(ItemsContainer, {
15665
15682
  className: "item-container-body"
15666
- }, onRenderSlots())), quantitySelect.isOpen && React.createElement(ModalPortal, null, React.createElement(QuantitySelectorContainer, null, React.createElement(ItemQuantitySelector, {
15683
+ }, onRenderSlots()), totalPages > 1 && React.createElement(ArrowContainer$1, null, currentPage > 1 && React.createElement(SelectArrow, {
15684
+ className: 'arrow .arrow-up',
15685
+ direction: "left",
15686
+ onPointerDown: function onPointerDown() {
15687
+ if (currentPage > 1) {
15688
+ goToPreviousPage();
15689
+ }
15690
+ }
15691
+ }), currentPage < totalPages && React.createElement(SelectArrow, {
15692
+ className: 'arrow .arrow-down',
15693
+ direction: "right",
15694
+ onPointerDown: function onPointerDown() {
15695
+ if (currentPage < totalPages) {
15696
+ goToNextPage();
15697
+ }
15698
+ }
15699
+ }))), quantitySelect.isOpen && React.createElement(ModalPortal, null, React.createElement(QuantitySelectorContainer, null, React.createElement(ItemQuantitySelector, {
15667
15700
  quantity: quantitySelect.maxQuantity,
15668
15701
  onConfirm: function onConfirm(quantity) {
15669
15702
  quantitySelect.callback(quantity);
@@ -15691,6 +15724,10 @@ var QuantitySelectorContainer = /*#__PURE__*/styled.div.withConfig({
15691
15724
  displayName: "ItemContainer__QuantitySelectorContainer",
15692
15725
  componentId: "sc-15y5p9l-1"
15693
15726
  })(["position:absolute;top:0;left:0;width:100vw;height:100vh;z-index:100;display:flex;justify-content:center;align-items:center;background-color:rgba(0,0,0,0.5);"]);
15727
+ var ArrowContainer$1 = /*#__PURE__*/styled.div.withConfig({
15728
+ displayName: "ItemContainer__ArrowContainer",
15729
+ componentId: "sc-15y5p9l-2"
15730
+ })(["margin-top:10px;margin-bottom:30px;span:first-child{margin-left:20px;}span:last-child{margin-right:20px;}"]);
15694
15731
 
15695
15732
  var LeaderboardTable = function LeaderboardTable(props) {
15696
15733
  var items = props.items,