@rpg-engine/long-bow 0.2.86 → 0.2.88
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.
- package/dist/components/Abstractions/SlotsContainer.d.ts +1 -0
- package/dist/components/DraggableContainer.d.ts +1 -0
- package/dist/components/Equipment/EquipmentSet.d.ts +4 -0
- package/dist/components/Input.d.ts +1 -0
- package/dist/components/Item/Inventory/ItemContainer.d.ts +8 -0
- package/dist/components/Item/Inventory/ItemQuantitySelector.d.ts +7 -0
- package/dist/components/Item/Inventory/ItemSlot.d.ts +5 -0
- package/dist/components/RangeSlider.d.ts +1 -0
- package/dist/long-bow.cjs.development.js +382 -77
- package/dist/long-bow.cjs.development.js.map +1 -1
- package/dist/long-bow.cjs.production.min.js +1 -1
- package/dist/long-bow.cjs.production.min.js.map +1 -1
- package/dist/long-bow.esm.js +383 -78
- package/dist/long-bow.esm.js.map +1 -1
- package/dist/stories/ItemQuantitySelector.stories.d.ts +5 -0
- package/package.json +1 -1
- package/src/components/Abstractions/SlotsContainer.tsx +3 -0
- package/src/components/DraggableContainer.tsx +3 -0
- package/src/components/Equipment/EquipmentSet.tsx +37 -0
- package/src/components/Input.tsx +6 -2
- package/src/components/Item/Inventory/ItemContainer.tsx +92 -6
- package/src/components/Item/Inventory/ItemQuantitySelector.tsx +142 -0
- package/src/components/Item/Inventory/ItemSlot.tsx +147 -24
- package/src/components/ListMenu.tsx +1 -2
- package/src/components/RangeSlider.tsx +37 -14
- package/src/mocks/itemContainer.mocks.ts +1 -1
- package/src/stories/EquipmentSet.stories.tsx +4 -0
- package/src/stories/ItemContainer.stories.tsx +82 -15
- package/src/stories/ItemQuantitySelector.stories.tsx +26 -0
- package/src/stories/RangeSlider.stories.tsx +10 -9
- package/src/.DS_Store +0 -0
- package/src/components/NPCDialog/.DS_Store +0 -0
- package/src/components/NPCDialog/img/.DS_Store +0 -0
- package/src/mocks/.DS_Store +0 -0
- package/src/mocks/atlas/.DS_Store +0 -0
package/dist/long-bow.esm.js
CHANGED
|
@@ -32718,9 +32718,13 @@ var uiColors = {
|
|
|
32718
32718
|
brownGreen: '#346524'
|
|
32719
32719
|
};
|
|
32720
32720
|
|
|
32721
|
+
var _excluded$2 = ["innerRef"];
|
|
32721
32722
|
var Input = function Input(_ref) {
|
|
32722
32723
|
var props = _extends({}, (_objectDestructuringEmpty(_ref), _ref));
|
|
32723
|
-
|
|
32724
|
+
var rest = _objectWithoutPropertiesLoose(props, _excluded$2);
|
|
32725
|
+
return React.createElement("input", Object.assign({}, rest, {
|
|
32726
|
+
ref: props.innerRef
|
|
32727
|
+
}));
|
|
32724
32728
|
};
|
|
32725
32729
|
|
|
32726
32730
|
var RPGUIContainerTypes;
|
|
@@ -32960,7 +32964,12 @@ var DraggableContainer = function DraggableContainer(_ref) {
|
|
|
32960
32964
|
imgWidth = _ref$imgWidth === void 0 ? '20px' : _ref$imgWidth,
|
|
32961
32965
|
cancelDrag = _ref.cancelDrag,
|
|
32962
32966
|
onPositionChange = _ref.onPositionChange,
|
|
32963
|
-
onOutsideClick = _ref.onOutsideClick
|
|
32967
|
+
onOutsideClick = _ref.onOutsideClick,
|
|
32968
|
+
_ref$initialPosition = _ref.initialPosition,
|
|
32969
|
+
initialPosition = _ref$initialPosition === void 0 ? {
|
|
32970
|
+
x: 0,
|
|
32971
|
+
y: 0
|
|
32972
|
+
} : _ref$initialPosition;
|
|
32964
32973
|
var draggableRef = useRef(null);
|
|
32965
32974
|
useOutsideClick(draggableRef, 'item-container');
|
|
32966
32975
|
useEffect(function () {
|
|
@@ -32985,7 +32994,8 @@ var DraggableContainer = function DraggableContainer(_ref) {
|
|
|
32985
32994
|
y: data.y
|
|
32986
32995
|
});
|
|
32987
32996
|
}
|
|
32988
|
-
}
|
|
32997
|
+
},
|
|
32998
|
+
defaultPosition: initialPosition
|
|
32989
32999
|
}, React.createElement(Container$6, {
|
|
32990
33000
|
ref: draggableRef,
|
|
32991
33001
|
width: width,
|
|
@@ -33458,22 +33468,44 @@ var ItemSlot = /*#__PURE__*/observer(function (_ref) {
|
|
|
33458
33468
|
slotSpriteMask = _ref.slotSpriteMask,
|
|
33459
33469
|
_onMouseOver = _ref.onMouseOver,
|
|
33460
33470
|
_onMouseOut = _ref.onMouseOut,
|
|
33461
|
-
|
|
33471
|
+
onClick = _ref.onClick,
|
|
33462
33472
|
_onSelected = _ref.onSelected,
|
|
33463
33473
|
atlasJSON = _ref.atlasJSON,
|
|
33464
33474
|
atlasIMG = _ref.atlasIMG,
|
|
33465
33475
|
_ref$isContextMenuDis = _ref.isContextMenuDisabled,
|
|
33466
|
-
isContextMenuDisabled = _ref$isContextMenuDis === void 0 ? false : _ref$isContextMenuDis
|
|
33476
|
+
isContextMenuDisabled = _ref$isContextMenuDis === void 0 ? false : _ref$isContextMenuDis,
|
|
33477
|
+
onDragEnd = _ref.onDragEnd,
|
|
33478
|
+
onDragStart = _ref.onDragStart,
|
|
33479
|
+
onPlaceDrop = _ref.onPlaceDrop,
|
|
33480
|
+
checkIfItemCanBeMoved = _ref.checkIfItemCanBeMoved,
|
|
33481
|
+
openQuantitySelector = _ref.openQuantitySelector;
|
|
33467
33482
|
var _useState = useState(false),
|
|
33468
33483
|
isTooltipVisible = _useState[0],
|
|
33469
33484
|
setTooltipVisible = _useState[1];
|
|
33470
33485
|
var _useState2 = useState(false),
|
|
33471
33486
|
isContextMenuVisible = _useState2[0],
|
|
33472
33487
|
setIsContextMenuVisible = _useState2[1];
|
|
33473
|
-
var _useState3 = useState(
|
|
33474
|
-
|
|
33475
|
-
|
|
33488
|
+
var _useState3 = useState(false),
|
|
33489
|
+
isFocused = _useState3[0],
|
|
33490
|
+
setIsFocused = _useState3[1];
|
|
33491
|
+
var _useState4 = useState(false),
|
|
33492
|
+
wasDragged = _useState4[0],
|
|
33493
|
+
setWasDragged = _useState4[1];
|
|
33494
|
+
var _useState5 = useState({
|
|
33495
|
+
x: 0,
|
|
33496
|
+
y: 0
|
|
33497
|
+
}),
|
|
33498
|
+
dragPosition = _useState5[0],
|
|
33499
|
+
setDragPosition = _useState5[1];
|
|
33500
|
+
var dragContainer = useRef(null);
|
|
33501
|
+
var _useState6 = useState([]),
|
|
33502
|
+
contextActions = _useState6[0],
|
|
33503
|
+
setContextActions = _useState6[1];
|
|
33476
33504
|
useEffect(function () {
|
|
33505
|
+
setDragPosition({
|
|
33506
|
+
x: 0,
|
|
33507
|
+
y: 0
|
|
33508
|
+
});
|
|
33477
33509
|
if (item) {
|
|
33478
33510
|
setContextActions(generateContextMenu(item, containerType));
|
|
33479
33511
|
}
|
|
@@ -33565,30 +33597,105 @@ var ItemSlot = /*#__PURE__*/observer(function (_ref) {
|
|
|
33565
33597
|
return renderItem(itemToRender);
|
|
33566
33598
|
}
|
|
33567
33599
|
};
|
|
33600
|
+
var resetItem = function resetItem() {
|
|
33601
|
+
setTooltipVisible(false);
|
|
33602
|
+
setIsFocused(false);
|
|
33603
|
+
setWasDragged(false);
|
|
33604
|
+
};
|
|
33605
|
+
var onSuccesfulDrag = function onSuccesfulDrag(quantity) {
|
|
33606
|
+
resetItem();
|
|
33607
|
+
if (quantity === -1) setDragPosition({
|
|
33608
|
+
x: 0,
|
|
33609
|
+
y: 0
|
|
33610
|
+
});else if (item) {
|
|
33611
|
+
onDragEnd(quantity);
|
|
33612
|
+
resetItem();
|
|
33613
|
+
}
|
|
33614
|
+
};
|
|
33568
33615
|
return React.createElement(Container$a, {
|
|
33569
33616
|
className: "rpgui-icon empty-slot",
|
|
33617
|
+
onMouseUp: function onMouseUp() {
|
|
33618
|
+
var data = item ? item : null;
|
|
33619
|
+
if (onPlaceDrop) onPlaceDrop(data, slotIndex, containerType);
|
|
33620
|
+
},
|
|
33621
|
+
onTouchEnd: function onTouchEnd(e) {
|
|
33622
|
+
var _document$elementFrom;
|
|
33623
|
+
var _e$changedTouches$ = e.changedTouches[0],
|
|
33624
|
+
clientX = _e$changedTouches$.clientX,
|
|
33625
|
+
clientY = _e$changedTouches$.clientY;
|
|
33626
|
+
var simulatedEvent = new MouseEvent('mouseup', {
|
|
33627
|
+
clientX: clientX,
|
|
33628
|
+
clientY: clientY,
|
|
33629
|
+
bubbles: true
|
|
33630
|
+
});
|
|
33631
|
+
(_document$elementFrom = document.elementFromPoint(clientX, clientY)) == null ? void 0 : _document$elementFrom.dispatchEvent(simulatedEvent);
|
|
33632
|
+
}
|
|
33633
|
+
}, React.createElement(Draggable, {
|
|
33634
|
+
defaultClassName: item ? 'draggable' : 'empty-slot',
|
|
33635
|
+
onStop: function onStop() {
|
|
33636
|
+
if (!item) {
|
|
33637
|
+
return;
|
|
33638
|
+
}
|
|
33639
|
+
if (wasDragged) {
|
|
33640
|
+
setWasDragged(false);
|
|
33641
|
+
var target = dragContainer.current;
|
|
33642
|
+
if (!target || !wasDragged) return;
|
|
33643
|
+
var style = window.getComputedStyle(target);
|
|
33644
|
+
var matrix = new DOMMatrixReadOnly(style.transform);
|
|
33645
|
+
var x = matrix.m41;
|
|
33646
|
+
var y = matrix.m42;
|
|
33647
|
+
setDragPosition({
|
|
33648
|
+
x: x,
|
|
33649
|
+
y: y
|
|
33650
|
+
});
|
|
33651
|
+
setTimeout(function () {
|
|
33652
|
+
if (checkIfItemCanBeMoved()) {
|
|
33653
|
+
if (item.stackQty && item.stackQty !== 1 && openQuantitySelector) openQuantitySelector(item.stackQty, onSuccesfulDrag);else onSuccesfulDrag(item.stackQty);
|
|
33654
|
+
} else {
|
|
33655
|
+
resetItem();
|
|
33656
|
+
setDragPosition({
|
|
33657
|
+
x: 0,
|
|
33658
|
+
y: 0
|
|
33659
|
+
});
|
|
33660
|
+
}
|
|
33661
|
+
}, 100);
|
|
33662
|
+
} else if (item) {
|
|
33663
|
+
if (!isContextMenuDisabled) setIsContextMenuVisible(!isContextMenuVisible);
|
|
33664
|
+
onClick(item.type, containerType, item);
|
|
33665
|
+
}
|
|
33666
|
+
},
|
|
33667
|
+
onStart: function onStart() {
|
|
33668
|
+
if (!item) {
|
|
33669
|
+
return;
|
|
33670
|
+
}
|
|
33671
|
+
if (onDragStart) {
|
|
33672
|
+
onDragStart(item, slotIndex, containerType);
|
|
33673
|
+
}
|
|
33674
|
+
},
|
|
33675
|
+
onDrag: function onDrag() {
|
|
33676
|
+
setWasDragged(true);
|
|
33677
|
+
setIsFocused(true);
|
|
33678
|
+
},
|
|
33679
|
+
position: dragPosition,
|
|
33680
|
+
cancel: ".empty-slot"
|
|
33681
|
+
}, React.createElement(ItemContainer, {
|
|
33682
|
+
ref: dragContainer,
|
|
33683
|
+
isFocused: isFocused,
|
|
33570
33684
|
onMouseOver: function onMouseOver(event) {
|
|
33571
|
-
|
|
33685
|
+
_onMouseOver(event, slotIndex, item, event.clientX, event.clientY);
|
|
33572
33686
|
},
|
|
33573
33687
|
onMouseOut: function onMouseOut() {
|
|
33574
33688
|
if (_onMouseOut) _onMouseOut();
|
|
33575
33689
|
},
|
|
33576
33690
|
onMouseEnter: function onMouseEnter() {
|
|
33577
|
-
|
|
33691
|
+
setTooltipVisible(true);
|
|
33578
33692
|
},
|
|
33579
33693
|
onMouseLeave: function onMouseLeave() {
|
|
33580
|
-
return setTooltipVisible(false);
|
|
33581
|
-
},
|
|
33582
|
-
onClick: function onClick() {
|
|
33583
33694
|
setTooltipVisible(false);
|
|
33584
|
-
if (item) {
|
|
33585
|
-
if (!isContextMenuDisabled) {
|
|
33586
|
-
setIsContextMenuVisible(!isContextMenuVisible);
|
|
33587
|
-
}
|
|
33588
|
-
_onClick(item.type, containerType, item);
|
|
33589
|
-
}
|
|
33590
33695
|
}
|
|
33591
|
-
},
|
|
33696
|
+
}, onRenderSlot(item))), isTooltipVisible && item && React.createElement(ItemTooltip, {
|
|
33697
|
+
label: item.name
|
|
33698
|
+
}), !isContextMenuDisabled && isContextMenuVisible && contextActions && React.createElement(RelativeListMenu, {
|
|
33592
33699
|
options: contextActions,
|
|
33593
33700
|
onSelected: function onSelected(optionId) {
|
|
33594
33701
|
setIsContextMenuVisible(false);
|
|
@@ -33599,21 +33706,25 @@ var ItemSlot = /*#__PURE__*/observer(function (_ref) {
|
|
|
33599
33706
|
onOutsideClick: function onOutsideClick() {
|
|
33600
33707
|
setIsContextMenuVisible(false);
|
|
33601
33708
|
}
|
|
33602
|
-
})
|
|
33603
|
-
label: item.name
|
|
33604
|
-
}), onRenderSlot(item));
|
|
33709
|
+
}));
|
|
33605
33710
|
});
|
|
33606
33711
|
var Container$a = /*#__PURE__*/styled.div.withConfig({
|
|
33607
33712
|
displayName: "ItemSlot__Container",
|
|
33608
33713
|
componentId: "sc-l2j5ef-0"
|
|
33609
33714
|
})(["margin:0.1rem;.sprite-from-atlas-img{position:relative;top:1.5rem;left:1.5rem;}position:relative;"]);
|
|
33715
|
+
var ItemContainer = /*#__PURE__*/styled.div.withConfig({
|
|
33716
|
+
displayName: "ItemSlot__ItemContainer",
|
|
33717
|
+
componentId: "sc-l2j5ef-1"
|
|
33718
|
+
})(["width:100%;height:100%;position:relative;", ""], function (props) {
|
|
33719
|
+
return props.isFocused && 'z-index: 100; pointer-events: none;';
|
|
33720
|
+
});
|
|
33610
33721
|
var ItemQtyContainer = /*#__PURE__*/styled.div.withConfig({
|
|
33611
33722
|
displayName: "ItemSlot__ItemQtyContainer",
|
|
33612
|
-
componentId: "sc-l2j5ef-
|
|
33613
|
-
})(["position:relative;width:85%;height:16px;top:25px;left:2px;display:flex;justify-content:flex-end;"]);
|
|
33723
|
+
componentId: "sc-l2j5ef-2"
|
|
33724
|
+
})(["position:relative;width:85%;height:16px;top:25px;left:2px;pointer-events:none;display:flex;justify-content:flex-end;"]);
|
|
33614
33725
|
var ItemQty = /*#__PURE__*/styled.span.withConfig({
|
|
33615
33726
|
displayName: "ItemSlot__ItemQty",
|
|
33616
|
-
componentId: "sc-l2j5ef-
|
|
33727
|
+
componentId: "sc-l2j5ef-3"
|
|
33617
33728
|
})(["&.regular{font-size:", ";}&.small{font-size:", ";}"], uiFonts.size.small, uiFonts.size.xsmall);
|
|
33618
33729
|
|
|
33619
33730
|
var EquipmentSet = function EquipmentSet(_ref) {
|
|
@@ -33623,7 +33734,11 @@ var EquipmentSet = function EquipmentSet(_ref) {
|
|
|
33623
33734
|
_onSelected = _ref.onSelected,
|
|
33624
33735
|
onItemClick = _ref.onItemClick,
|
|
33625
33736
|
atlasIMG = _ref.atlasIMG,
|
|
33626
|
-
atlasJSON = _ref.atlasJSON
|
|
33737
|
+
atlasJSON = _ref.atlasJSON,
|
|
33738
|
+
onItemDragEnd = _ref.onItemDragEnd,
|
|
33739
|
+
onItemDragStart = _ref.onItemDragStart,
|
|
33740
|
+
onItemPlaceDrop = _ref.onItemPlaceDrop,
|
|
33741
|
+
checkIfItemCanBeMoved = _ref.checkIfItemCanBeMoved;
|
|
33627
33742
|
var neck = equipmentSet.neck,
|
|
33628
33743
|
leftHand = equipmentSet.leftHand,
|
|
33629
33744
|
ring = equipmentSet.ring,
|
|
@@ -33659,6 +33774,22 @@ var EquipmentSet = function EquipmentSet(_ref) {
|
|
|
33659
33774
|
onSelected: function onSelected(optionId) {
|
|
33660
33775
|
if (_onSelected) _onSelected(optionId);
|
|
33661
33776
|
},
|
|
33777
|
+
onDragStart: function onDragStart(item, slotIndex, itemContainerType) {
|
|
33778
|
+
if (!item) {
|
|
33779
|
+
return;
|
|
33780
|
+
}
|
|
33781
|
+
if (onItemDragStart) onItemDragStart(item, slotIndex, itemContainerType);
|
|
33782
|
+
},
|
|
33783
|
+
onDragEnd: function onDragEnd(quantity) {
|
|
33784
|
+
if (onItemDragEnd) onItemDragEnd(quantity);
|
|
33785
|
+
},
|
|
33786
|
+
checkIfItemCanBeMoved: checkIfItemCanBeMoved,
|
|
33787
|
+
onPlaceDrop: function onPlaceDrop(item, slotIndex, itemContainerType) {
|
|
33788
|
+
if (!item) {
|
|
33789
|
+
return;
|
|
33790
|
+
}
|
|
33791
|
+
if (onItemPlaceDrop) onItemPlaceDrop(item, slotIndex, itemContainerType);
|
|
33792
|
+
},
|
|
33662
33793
|
atlasIMG: atlasIMG,
|
|
33663
33794
|
atlasJSON: atlasJSON
|
|
33664
33795
|
});
|
|
@@ -33679,11 +33810,11 @@ var EquipmentSet = function EquipmentSet(_ref) {
|
|
|
33679
33810
|
var EquipmentSetContainer = /*#__PURE__*/styled.div.withConfig({
|
|
33680
33811
|
displayName: "EquipmentSet__EquipmentSetContainer",
|
|
33681
33812
|
componentId: "sc-1wuddg2-0"
|
|
33682
|
-
})(["width:inherit;display:flex;justify-content:center;flex-wrap:wrap;flex-direction:row;"]);
|
|
33813
|
+
})(["width:inherit;display:flex;justify-content:center;flex-wrap:wrap;flex-direction:row;touch-action:none;"]);
|
|
33683
33814
|
var EquipmentColumn = /*#__PURE__*/styled.div.withConfig({
|
|
33684
33815
|
displayName: "EquipmentSet__EquipmentColumn",
|
|
33685
33816
|
componentId: "sc-1wuddg2-1"
|
|
33686
|
-
})(["display:flex;justify-content:center;flex-wrap:wrap;flex-direction:column;"]);
|
|
33817
|
+
})(["display:flex;justify-content:center;flex-wrap:wrap;flex-direction:column;touch-action:none;"]);
|
|
33687
33818
|
|
|
33688
33819
|
var IS_MOBILE_OR_TABLET = /*#__PURE__*/isMobile({
|
|
33689
33820
|
tablet: true
|
|
@@ -34232,7 +34363,8 @@ var SlotsContainer = function SlotsContainer(_ref) {
|
|
|
34232
34363
|
title = _ref.title,
|
|
34233
34364
|
onClose = _ref.onClose,
|
|
34234
34365
|
_onPositionChange = _ref.onPositionChange,
|
|
34235
|
-
onOutsideClick = _ref.onOutsideClick
|
|
34366
|
+
onOutsideClick = _ref.onOutsideClick,
|
|
34367
|
+
initialPosition = _ref.initialPosition;
|
|
34236
34368
|
return React.createElement(DraggableContainer, {
|
|
34237
34369
|
title: title,
|
|
34238
34370
|
type: RPGUIContainerTypes.Framed,
|
|
@@ -34253,11 +34385,168 @@ var SlotsContainer = function SlotsContainer(_ref) {
|
|
|
34253
34385
|
});
|
|
34254
34386
|
}
|
|
34255
34387
|
},
|
|
34256
|
-
onOutsideClick: onOutsideClick
|
|
34388
|
+
onOutsideClick: onOutsideClick,
|
|
34389
|
+
initialPosition: initialPosition
|
|
34257
34390
|
}, children);
|
|
34258
34391
|
};
|
|
34259
34392
|
|
|
34260
|
-
var
|
|
34393
|
+
var RangeSliderType;
|
|
34394
|
+
(function (RangeSliderType) {
|
|
34395
|
+
RangeSliderType["Slider"] = "rpgui-slider";
|
|
34396
|
+
RangeSliderType["GoldSlider"] = "rpgui-slider golden";
|
|
34397
|
+
})(RangeSliderType || (RangeSliderType = {}));
|
|
34398
|
+
var RangeSlider = function RangeSlider(_ref) {
|
|
34399
|
+
var type = _ref.type,
|
|
34400
|
+
valueMin = _ref.valueMin,
|
|
34401
|
+
valueMax = _ref.valueMax,
|
|
34402
|
+
width = _ref.width,
|
|
34403
|
+
_onChange = _ref.onChange,
|
|
34404
|
+
value = _ref.value;
|
|
34405
|
+
var sliderId = v4();
|
|
34406
|
+
var containerRef = useRef(null);
|
|
34407
|
+
var _useState = useState(0),
|
|
34408
|
+
left = _useState[0],
|
|
34409
|
+
setLeft = _useState[1];
|
|
34410
|
+
useEffect(function () {
|
|
34411
|
+
var _containerRef$current;
|
|
34412
|
+
var calculatedWidth = ((_containerRef$current = containerRef.current) == null ? void 0 : _containerRef$current.clientWidth) || 0;
|
|
34413
|
+
setLeft(Math.max((value - valueMin) / (valueMax - valueMin) * (calculatedWidth - 35) + 10));
|
|
34414
|
+
}, [value, valueMin, valueMax]);
|
|
34415
|
+
var typeClass = type === RangeSliderType.GoldSlider ? 'golden' : '';
|
|
34416
|
+
return React.createElement("div", {
|
|
34417
|
+
style: {
|
|
34418
|
+
width: width,
|
|
34419
|
+
position: 'relative'
|
|
34420
|
+
},
|
|
34421
|
+
className: "rpgui-slider-container " + typeClass,
|
|
34422
|
+
id: "rpgui-slider-" + sliderId,
|
|
34423
|
+
ref: containerRef
|
|
34424
|
+
}, React.createElement("div", {
|
|
34425
|
+
style: {
|
|
34426
|
+
pointerEvents: 'none'
|
|
34427
|
+
}
|
|
34428
|
+
}, React.createElement("div", {
|
|
34429
|
+
className: "rpgui-slider-track " + typeClass
|
|
34430
|
+
}), React.createElement("div", {
|
|
34431
|
+
className: "rpgui-slider-left-edge " + typeClass
|
|
34432
|
+
}), React.createElement("div", {
|
|
34433
|
+
className: "rpgui-slider-right-edge " + typeClass
|
|
34434
|
+
}), React.createElement("div", {
|
|
34435
|
+
className: "rpgui-slider-thumb " + typeClass,
|
|
34436
|
+
style: {
|
|
34437
|
+
left: left
|
|
34438
|
+
}
|
|
34439
|
+
})), React.createElement(Input$1, {
|
|
34440
|
+
type: "range",
|
|
34441
|
+
style: {
|
|
34442
|
+
width: width
|
|
34443
|
+
},
|
|
34444
|
+
min: valueMin,
|
|
34445
|
+
max: valueMax,
|
|
34446
|
+
onChange: function onChange(e) {
|
|
34447
|
+
return _onChange(Number(e.target.value));
|
|
34448
|
+
},
|
|
34449
|
+
value: value,
|
|
34450
|
+
className: "rpgui-cursor-point"
|
|
34451
|
+
}));
|
|
34452
|
+
};
|
|
34453
|
+
var Input$1 = /*#__PURE__*/styled.input.withConfig({
|
|
34454
|
+
displayName: "RangeSlider__Input",
|
|
34455
|
+
componentId: "sc-v8mte9-0"
|
|
34456
|
+
})(["opacity:0;position:absolute;width:100%;height:100%;top:0;left:0;margin-top:-5px;"]);
|
|
34457
|
+
|
|
34458
|
+
var ItemQuantitySelector = function ItemQuantitySelector(_ref) {
|
|
34459
|
+
var quantity = _ref.quantity,
|
|
34460
|
+
onConfirm = _ref.onConfirm,
|
|
34461
|
+
onClose = _ref.onClose;
|
|
34462
|
+
var _useState = useState(quantity),
|
|
34463
|
+
value = _useState[0],
|
|
34464
|
+
setValue = _useState[1];
|
|
34465
|
+
var inputRef = useRef(null);
|
|
34466
|
+
useEffect(function () {
|
|
34467
|
+
if (inputRef.current) {
|
|
34468
|
+
inputRef.current.focus();
|
|
34469
|
+
inputRef.current.select();
|
|
34470
|
+
var closeSelector = function closeSelector(e) {
|
|
34471
|
+
if (e.key === 'Escape') {
|
|
34472
|
+
onClose();
|
|
34473
|
+
}
|
|
34474
|
+
};
|
|
34475
|
+
document.addEventListener('keydown', closeSelector);
|
|
34476
|
+
return function () {
|
|
34477
|
+
document.removeEventListener('keydown', closeSelector);
|
|
34478
|
+
};
|
|
34479
|
+
}
|
|
34480
|
+
return function () {};
|
|
34481
|
+
}, []);
|
|
34482
|
+
return React.createElement(StyledContainer, {
|
|
34483
|
+
type: RPGUIContainerTypes.Framed,
|
|
34484
|
+
width: "25rem"
|
|
34485
|
+
}, React.createElement(CloseButton$2, {
|
|
34486
|
+
className: "container-close",
|
|
34487
|
+
onClick: onClose,
|
|
34488
|
+
onTouchStart: onClose
|
|
34489
|
+
}, "X"), React.createElement("h2", null, "Select quantity to move"), React.createElement(StyledForm, {
|
|
34490
|
+
style: {
|
|
34491
|
+
width: '100%'
|
|
34492
|
+
},
|
|
34493
|
+
onSubmit: function onSubmit(e) {
|
|
34494
|
+
e.preventDefault();
|
|
34495
|
+
var numberValue = Number(value);
|
|
34496
|
+
if (Number.isNaN(numberValue)) {
|
|
34497
|
+
return;
|
|
34498
|
+
}
|
|
34499
|
+
onConfirm(Math.max(1, Math.min(quantity, numberValue)));
|
|
34500
|
+
},
|
|
34501
|
+
noValidate: true
|
|
34502
|
+
}, React.createElement(StyledInput, {
|
|
34503
|
+
innerRef: inputRef,
|
|
34504
|
+
placeholder: "Enter quantity",
|
|
34505
|
+
type: "number",
|
|
34506
|
+
min: 1,
|
|
34507
|
+
max: quantity,
|
|
34508
|
+
value: value,
|
|
34509
|
+
onChange: function onChange(e) {
|
|
34510
|
+
if (Number(e.target.value) >= quantity) {
|
|
34511
|
+
setValue(quantity);
|
|
34512
|
+
return;
|
|
34513
|
+
}
|
|
34514
|
+
setValue(e.target.value);
|
|
34515
|
+
},
|
|
34516
|
+
onBlur: function onBlur(e) {
|
|
34517
|
+
var newValue = Math.max(1, Math.min(quantity, Number(e.target.value)));
|
|
34518
|
+
setValue(newValue);
|
|
34519
|
+
}
|
|
34520
|
+
}), React.createElement(RangeSlider, {
|
|
34521
|
+
type: RangeSliderType.Slider,
|
|
34522
|
+
valueMin: 1,
|
|
34523
|
+
valueMax: quantity,
|
|
34524
|
+
width: "100%",
|
|
34525
|
+
onChange: setValue,
|
|
34526
|
+
value: value
|
|
34527
|
+
}), React.createElement(Button, {
|
|
34528
|
+
buttonType: ButtonTypes.RPGUIButton,
|
|
34529
|
+
type: "submit"
|
|
34530
|
+
}, "Confirm")));
|
|
34531
|
+
};
|
|
34532
|
+
var StyledContainer = /*#__PURE__*/styled(RPGUIContainer).withConfig({
|
|
34533
|
+
displayName: "ItemQuantitySelector__StyledContainer",
|
|
34534
|
+
componentId: "sc-yfdtpn-0"
|
|
34535
|
+
})(["display:flex;flex-direction:column;align-items:center;"]);
|
|
34536
|
+
var StyledForm = /*#__PURE__*/styled.form.withConfig({
|
|
34537
|
+
displayName: "ItemQuantitySelector__StyledForm",
|
|
34538
|
+
componentId: "sc-yfdtpn-1"
|
|
34539
|
+
})(["display:flex;flex-direction:column;align-items:center;width:100%;"]);
|
|
34540
|
+
var StyledInput = /*#__PURE__*/styled(Input).withConfig({
|
|
34541
|
+
displayName: "ItemQuantitySelector__StyledInput",
|
|
34542
|
+
componentId: "sc-yfdtpn-2"
|
|
34543
|
+
})(["text-align:center;&::-webkit-outer-spin-button,&::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}&[type='number']{-moz-appearance:textfield;}"]);
|
|
34544
|
+
var CloseButton$2 = /*#__PURE__*/styled.div.withConfig({
|
|
34545
|
+
displayName: "ItemQuantitySelector__CloseButton",
|
|
34546
|
+
componentId: "sc-yfdtpn-3"
|
|
34547
|
+
})(["position:absolute;top:3px;right:0px;color:white;z-index:22;font-size:0.8rem;"]);
|
|
34548
|
+
|
|
34549
|
+
var ItemContainer$1 = function ItemContainer(_ref) {
|
|
34261
34550
|
var itemContainer = _ref.itemContainer,
|
|
34262
34551
|
onClose = _ref.onClose,
|
|
34263
34552
|
_onMouseOver = _ref.onMouseOver,
|
|
@@ -34267,7 +34556,19 @@ var ItemContainer = function ItemContainer(_ref) {
|
|
|
34267
34556
|
atlasJSON = _ref.atlasJSON,
|
|
34268
34557
|
atlasIMG = _ref.atlasIMG,
|
|
34269
34558
|
_ref$disableContextMe = _ref.disableContextMenu,
|
|
34270
|
-
disableContextMenu = _ref$disableContextMe === void 0 ? false : _ref$disableContextMe
|
|
34559
|
+
disableContextMenu = _ref$disableContextMe === void 0 ? false : _ref$disableContextMe,
|
|
34560
|
+
onItemDragEnd = _ref.onItemDragEnd,
|
|
34561
|
+
onItemDragStart = _ref.onItemDragStart,
|
|
34562
|
+
onItemPlaceDrop = _ref.onItemPlaceDrop,
|
|
34563
|
+
checkIfItemCanBeMoved = _ref.checkIfItemCanBeMoved,
|
|
34564
|
+
initialPosition = _ref.initialPosition;
|
|
34565
|
+
var _useState = useState({
|
|
34566
|
+
isOpen: false,
|
|
34567
|
+
maxQuantity: 1,
|
|
34568
|
+
callback: function callback(_quantity) {}
|
|
34569
|
+
}),
|
|
34570
|
+
quantitySelect = _useState[0],
|
|
34571
|
+
setQuantitySelect = _useState[1];
|
|
34271
34572
|
var onRenderSlots = function onRenderSlots() {
|
|
34272
34573
|
var slots = [];
|
|
34273
34574
|
for (var i = 0; i < itemContainer.slotQty; i++) {
|
|
@@ -34287,23 +34588,63 @@ var ItemContainer = function ItemContainer(_ref) {
|
|
|
34287
34588
|
onSelected: function onSelected(optionId, item) {
|
|
34288
34589
|
if (_onSelected) _onSelected(optionId, item);
|
|
34289
34590
|
},
|
|
34591
|
+
onDragStart: function onDragStart(item, slotIndex, itemContainerType) {
|
|
34592
|
+
if (onItemDragStart) onItemDragStart(item, slotIndex, itemContainerType);
|
|
34593
|
+
},
|
|
34594
|
+
onDragEnd: function onDragEnd(quantity) {
|
|
34595
|
+
if (onItemDragEnd) onItemDragEnd(quantity);
|
|
34596
|
+
},
|
|
34597
|
+
checkIfItemCanBeMoved: checkIfItemCanBeMoved,
|
|
34598
|
+
openQuantitySelector: function openQuantitySelector(maxQuantity, callback) {
|
|
34599
|
+
setQuantitySelect({
|
|
34600
|
+
isOpen: true,
|
|
34601
|
+
maxQuantity: maxQuantity,
|
|
34602
|
+
callback: callback
|
|
34603
|
+
});
|
|
34604
|
+
},
|
|
34605
|
+
onPlaceDrop: function onPlaceDrop(item, slotIndex, itemContainerType) {
|
|
34606
|
+
if (onItemPlaceDrop) onItemPlaceDrop(item, slotIndex, itemContainerType);
|
|
34607
|
+
},
|
|
34290
34608
|
atlasIMG: atlasIMG,
|
|
34291
34609
|
atlasJSON: atlasJSON
|
|
34292
34610
|
}));
|
|
34293
34611
|
}
|
|
34294
34612
|
return slots;
|
|
34295
34613
|
};
|
|
34296
|
-
return React.createElement(SlotsContainer, {
|
|
34614
|
+
return React.createElement(React.Fragment, null, React.createElement(SlotsContainer, {
|
|
34297
34615
|
title: itemContainer.name || 'Container',
|
|
34298
|
-
onClose: onClose
|
|
34616
|
+
onClose: onClose,
|
|
34617
|
+
initialPosition: initialPosition
|
|
34299
34618
|
}, React.createElement(ItemsContainer, {
|
|
34300
34619
|
className: "item-container-body"
|
|
34301
|
-
}, onRenderSlots()))
|
|
34620
|
+
}, onRenderSlots())), quantitySelect.isOpen && React.createElement(QuantitySelectorContainer, null, React.createElement(ItemQuantitySelector, {
|
|
34621
|
+
quantity: quantitySelect.maxQuantity,
|
|
34622
|
+
onConfirm: function onConfirm(quantity) {
|
|
34623
|
+
quantitySelect.callback(quantity);
|
|
34624
|
+
setQuantitySelect({
|
|
34625
|
+
isOpen: false,
|
|
34626
|
+
maxQuantity: 1,
|
|
34627
|
+
callback: function callback() {}
|
|
34628
|
+
});
|
|
34629
|
+
},
|
|
34630
|
+
onClose: function onClose() {
|
|
34631
|
+
quantitySelect.callback(-1);
|
|
34632
|
+
setQuantitySelect({
|
|
34633
|
+
isOpen: false,
|
|
34634
|
+
maxQuantity: 1,
|
|
34635
|
+
callback: function callback() {}
|
|
34636
|
+
});
|
|
34637
|
+
}
|
|
34638
|
+
})));
|
|
34302
34639
|
};
|
|
34303
34640
|
var ItemsContainer = /*#__PURE__*/styled.div.withConfig({
|
|
34304
34641
|
displayName: "ItemContainer__ItemsContainer",
|
|
34305
34642
|
componentId: "sc-15y5p9l-0"
|
|
34306
34643
|
})(["max-width:280px;display:flex;justify-content:center;flex-wrap:wrap;"]);
|
|
34644
|
+
var QuantitySelectorContainer = /*#__PURE__*/styled.div.withConfig({
|
|
34645
|
+
displayName: "ItemContainer__QuantitySelectorContainer",
|
|
34646
|
+
componentId: "sc-15y5p9l-1"
|
|
34647
|
+
})(["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);"]);
|
|
34307
34648
|
|
|
34308
34649
|
var ListMenu = function ListMenu(_ref) {
|
|
34309
34650
|
var options = _ref.options,
|
|
@@ -34321,8 +34662,7 @@ var ListMenu = function ListMenu(_ref) {
|
|
|
34321
34662
|
}, options.map(function (params, index) {
|
|
34322
34663
|
return React.createElement(ListElement$1, {
|
|
34323
34664
|
key: (params == null ? void 0 : params.id) || index,
|
|
34324
|
-
onClick: function onClick(
|
|
34325
|
-
e.stopPropagation();
|
|
34665
|
+
onClick: function onClick() {
|
|
34326
34666
|
onSelected(params == null ? void 0 : params.id);
|
|
34327
34667
|
}
|
|
34328
34668
|
}, (params == null ? void 0 : params.text) || 'No text');
|
|
@@ -34604,41 +34944,6 @@ var InputRadio = function InputRadio(_ref) {
|
|
|
34604
34944
|
}));
|
|
34605
34945
|
};
|
|
34606
34946
|
|
|
34607
|
-
var RangeSliderType;
|
|
34608
|
-
(function (RangeSliderType) {
|
|
34609
|
-
RangeSliderType["Slider"] = "rpgui-slider";
|
|
34610
|
-
RangeSliderType["GoldSlider"] = "rpgui-slider golden";
|
|
34611
|
-
})(RangeSliderType || (RangeSliderType = {}));
|
|
34612
|
-
var RangeSlider = function RangeSlider(_ref) {
|
|
34613
|
-
var type = _ref.type,
|
|
34614
|
-
valueMin = _ref.valueMin,
|
|
34615
|
-
valueMax = _ref.valueMax,
|
|
34616
|
-
width = _ref.width,
|
|
34617
|
-
onChange = _ref.onChange;
|
|
34618
|
-
var sliderId = v4();
|
|
34619
|
-
var onHandleMouseUp = function onHandleMouseUp() {
|
|
34620
|
-
var rpguiSlider = document.getElementById("rpgui-slider-" + sliderId);
|
|
34621
|
-
var value = _RPGUI.get_value(rpguiSlider);
|
|
34622
|
-
onChange(Number(value));
|
|
34623
|
-
};
|
|
34624
|
-
return React.createElement("div", {
|
|
34625
|
-
onMouseUp: onHandleMouseUp
|
|
34626
|
-
}, React.createElement(Input$1, {
|
|
34627
|
-
className: type === RangeSliderType.Slider ? RangeSliderType.Slider : RangeSliderType.GoldSlider,
|
|
34628
|
-
type: "range",
|
|
34629
|
-
style: {
|
|
34630
|
-
width: width
|
|
34631
|
-
},
|
|
34632
|
-
min: valueMin,
|
|
34633
|
-
max: valueMax,
|
|
34634
|
-
id: "rpgui-slider-" + sliderId
|
|
34635
|
-
}));
|
|
34636
|
-
};
|
|
34637
|
-
var Input$1 = /*#__PURE__*/styled.input.withConfig({
|
|
34638
|
-
displayName: "RangeSlider__Input",
|
|
34639
|
-
componentId: "sc-v8mte9-0"
|
|
34640
|
-
})(["opacity:0;"]);
|
|
34641
|
-
|
|
34642
34947
|
var SimpleProgressBar = function SimpleProgressBar(_ref) {
|
|
34643
34948
|
var value = _ref.value,
|
|
34644
34949
|
_ref$bgColor = _ref.bgColor,
|
|
@@ -34808,7 +35113,7 @@ var SkillsContainer = function SkillsContainer(_ref) {
|
|
|
34808
35113
|
};
|
|
34809
35114
|
return React.createElement(SkillsDraggableContainer, {
|
|
34810
35115
|
title: "Skills"
|
|
34811
|
-
}, onCloseButton && React.createElement(CloseButton$
|
|
35116
|
+
}, onCloseButton && React.createElement(CloseButton$3, {
|
|
34812
35117
|
onClick: onCloseButton,
|
|
34813
35118
|
onTouchStart: onCloseButton
|
|
34814
35119
|
}, "X"), React.createElement(SkillSplitDiv, null, React.createElement("p", null, "General"), React.createElement("hr", {
|
|
@@ -34838,7 +35143,7 @@ var SkillSplitDiv = /*#__PURE__*/styled.div.withConfig({
|
|
|
34838
35143
|
displayName: "SkillsContainer__SkillSplitDiv",
|
|
34839
35144
|
componentId: "sc-1g0c67q-1"
|
|
34840
35145
|
})(["width:100%;font-size:11px;hr{margin:0;margin-bottom:1rem;padding:0px;}p{margin-bottom:0px;}"]);
|
|
34841
|
-
var CloseButton$
|
|
35146
|
+
var CloseButton$3 = /*#__PURE__*/styled.div.withConfig({
|
|
34842
35147
|
displayName: "SkillsContainer__CloseButton",
|
|
34843
35148
|
componentId: "sc-1g0c67q-2"
|
|
34844
35149
|
})(["position:absolute;top:2px;right:2px;color:white;z-index:22;font-size:0.7rem;"]);
|
|
@@ -34873,7 +35178,7 @@ var TimeWidget = function TimeWidget(_ref) {
|
|
|
34873
35178
|
var onClose = _ref.onClose,
|
|
34874
35179
|
TimeClock = _ref.TimeClock,
|
|
34875
35180
|
periodOfDay = _ref.periodOfDay;
|
|
34876
|
-
return React.createElement(Draggable, null, React.createElement(WidgetContainer, null, React.createElement(CloseButton$
|
|
35181
|
+
return React.createElement(Draggable, null, React.createElement(WidgetContainer, null, React.createElement(CloseButton$4, {
|
|
34877
35182
|
onClick: onClose
|
|
34878
35183
|
}, "X"), React.createElement(DayNightContainer, null, React.createElement(DayNightPeriod, {
|
|
34879
35184
|
periodOfDay: periodOfDay
|
|
@@ -34887,7 +35192,7 @@ var Time = /*#__PURE__*/styled.div.withConfig({
|
|
|
34887
35192
|
displayName: "TimeWidget__Time",
|
|
34888
35193
|
componentId: "sc-1ja236h-1"
|
|
34889
35194
|
})(["top:0.75rem;right:0.5rem;position:absolute;font-size:", ";color:white;"], uiFonts.size.small);
|
|
34890
|
-
var CloseButton$
|
|
35195
|
+
var CloseButton$4 = /*#__PURE__*/styled.p.withConfig({
|
|
34891
35196
|
displayName: "TimeWidget__CloseButton",
|
|
34892
35197
|
componentId: "sc-1ja236h-2"
|
|
34893
35198
|
})(["position:absolute;top:-0.5rem;margin:0;right:-0.2rem;font-size:", " !important;z-index:1;"], uiFonts.size.small);
|
|
@@ -35200,5 +35505,5 @@ var ButtonWrapper$2 = /*#__PURE__*/styled.div.withConfig({
|
|
|
35200
35505
|
componentId: "sc-gptoxp-5"
|
|
35201
35506
|
})(["display:flex;justify-content:space-around;padding-top:20px;width:100%;"]);
|
|
35202
35507
|
|
|
35203
|
-
export { Button, ButtonTypes, CharacterSelection, Chat, CheckButton, CraftBook, DraggableContainer, Dropdown, DropdownSelectorContainer, DynamicText, EquipmentSet, ErrorBoundary, HistoryDialog, ImgSide, Input, InputRadio, ItemContainer, ItemSelector, ItemSlot, ListMenu, NPCDialog, NPCDialogType, NPCMultiDialog, ProgressBar, PropertySelect, QuestInfo, QuestList, QuestionDialog, RPGUIContainer, RPGUIContainerTypes, RPGUIRoot, RangeSlider, RangeSliderType, SkillProgressBar, SkillsContainer, SpriteFromAtlas, TextArea, TimeWidget, TradingMenu, Truncate, _RPGUI, useEventListener };
|
|
35508
|
+
export { Button, ButtonTypes, CharacterSelection, Chat, CheckButton, CraftBook, DraggableContainer, Dropdown, DropdownSelectorContainer, DynamicText, EquipmentSet, ErrorBoundary, HistoryDialog, ImgSide, Input, InputRadio, ItemContainer$1 as ItemContainer, ItemSelector, ItemSlot, ListMenu, NPCDialog, NPCDialogType, NPCMultiDialog, ProgressBar, PropertySelect, QuestInfo, QuestList, QuestionDialog, RPGUIContainer, RPGUIContainerTypes, RPGUIRoot, RangeSlider, RangeSliderType, SkillProgressBar, SkillsContainer, SpriteFromAtlas, TextArea, TimeWidget, TradingMenu, Truncate, _RPGUI, useEventListener };
|
|
35204
35509
|
//# sourceMappingURL=long-bow.esm.js.map
|