@rpg-engine/long-bow 0.1.82 → 0.1.85

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.
Files changed (89) hide show
  1. package/dist/components/Button.d.ts +1 -0
  2. package/dist/components/Equipment/EquipmentSet.d.ts +3 -1
  3. package/dist/components/Item/Cards/ItemTooltip.d.ts +6 -0
  4. package/dist/components/Item/Inventory/ItemContainer.d.ts +3 -5
  5. package/dist/components/Item/Inventory/ItemContainerTypes.d.ts +4 -0
  6. package/dist/components/Item/Inventory/ItemSlot.d.ts +4 -7
  7. package/dist/components/PropertySelect/PropertySelect.d.ts +12 -0
  8. package/dist/components/QuestInfo/QuestInfo.d.ts +14 -0
  9. package/dist/components/RelativeListMenu.d.ts +13 -0
  10. package/dist/components/shared/SpriteIcon.d.ts +2 -0
  11. package/dist/index.d.ts +1 -0
  12. package/dist/long-bow.cjs.development.js +407 -813
  13. package/dist/long-bow.cjs.development.js.map +1 -1
  14. package/dist/long-bow.cjs.production.min.js +1 -1
  15. package/dist/long-bow.cjs.production.min.js.map +1 -1
  16. package/dist/long-bow.esm.js +402 -811
  17. package/dist/long-bow.esm.js.map +1 -1
  18. package/dist/stories/Button.stories.d.ts +5 -0
  19. package/dist/stories/Chat.stories.d.ts +5 -0
  20. package/dist/stories/CheckButton.stories.d.ts +5 -0
  21. package/dist/stories/DraggableContainer.stories.d.ts +5 -0
  22. package/dist/stories/Dropdown.stories.d.ts +5 -0
  23. package/dist/stories/EquipmentSet.stories.d.ts +5 -0
  24. package/dist/stories/ItemContainer.stories.d.ts +5 -0
  25. package/dist/stories/ListMenu.stories.d.ts +5 -0
  26. package/dist/stories/Multitab.stories.d.ts +6 -0
  27. package/dist/stories/NPCDialog.stories.d.ts +7 -0
  28. package/dist/stories/ProgressBar.stories.d.ts +8 -0
  29. package/dist/stories/PropertySelect.stories.d.ts +5 -0
  30. package/dist/stories/QuestInfo.stories.d.ts +5 -0
  31. package/dist/stories/RPGUIContainers.stories.d.ts +5 -0
  32. package/dist/stories/RadioButton.stories.d.ts +5 -0
  33. package/dist/stories/RangeSlider.stories.d.ts +5 -0
  34. package/dist/stories/ScrollList.stories.d.ts +5 -0
  35. package/dist/stories/SimpleProgressBar.stories.d.ts +5 -0
  36. package/dist/stories/SkillProgressBar.stories.d.ts +5 -0
  37. package/dist/stories/SkillsContainer.stories.d.ts +5 -0
  38. package/dist/stories/Text.stories.d.ts +7 -0
  39. package/package.json +2 -2
  40. package/src/components/Button.tsx +3 -2
  41. package/src/components/Equipment/EquipmentSet.tsx +97 -142
  42. package/src/components/Item/Cards/ItemTooltip.tsx +32 -0
  43. package/src/components/Item/Inventory/ItemContainer.tsx +47 -95
  44. package/src/components/Item/Inventory/ItemContainerTypes.ts +4 -0
  45. package/src/components/Item/Inventory/ItemSlot.tsx +145 -104
  46. package/src/components/NPCDialog/QuestionDialog/QuestionDialog.tsx +0 -3
  47. package/src/components/PropertySelect/PropertySelect.tsx +101 -0
  48. package/src/components/PropertySelect/img/ui-arrows/arrow01-left-clicked.png +0 -0
  49. package/src/components/PropertySelect/img/ui-arrows/arrow01-left.png +0 -0
  50. package/src/components/PropertySelect/img/ui-arrows/arrow01-right-clicked.png +0 -0
  51. package/src/components/PropertySelect/img/ui-arrows/arrow01-right.png +0 -0
  52. package/src/components/PropertySelect/img/ui-arrows/arrow02-left-clicked.png +0 -0
  53. package/src/components/PropertySelect/img/ui-arrows/arrow02-left.png +0 -0
  54. package/src/components/PropertySelect/img/ui-arrows/arrow02-right-clicked.png +0 -0
  55. package/src/components/PropertySelect/img/ui-arrows/arrow02-right.png +0 -0
  56. package/src/components/QuestInfo/QuestInfo.tsx +143 -0
  57. package/src/components/QuestInfo/img/default.png +0 -0
  58. package/src/components/RelativeListMenu.tsx +83 -0
  59. package/src/components/SkillsContainer.tsx +15 -1
  60. package/src/components/shared/SpriteIcon.tsx +4 -2
  61. package/src/index.tsx +1 -0
  62. package/src/mocks/atlas/icons/icons.json +494 -62
  63. package/src/mocks/atlas/icons/icons.png +0 -0
  64. package/src/mocks/itemContainer.mocks.ts +1 -1
  65. package/src/stories/Button.stories.tsx +36 -0
  66. package/src/stories/Chat.stories.tsx +170 -0
  67. package/src/stories/CheckButton.stories.tsx +48 -0
  68. package/src/stories/DraggableContainer.stories.tsx +28 -0
  69. package/src/stories/Dropdown.stories.tsx +46 -0
  70. package/src/stories/EquipmentSet.stories.tsx +50 -0
  71. package/src/stories/ItemContainer.stories.tsx +50 -0
  72. package/src/stories/ListMenu.stories.tsx +56 -0
  73. package/src/stories/Multitab.stories.tsx +51 -0
  74. package/src/stories/NPCDialog.stories.tsx +130 -0
  75. package/src/stories/ProgressBar.stories.tsx +23 -0
  76. package/src/stories/PropertySelect.stories.tsx +41 -0
  77. package/src/stories/QuestInfo.stories.tsx +76 -0
  78. package/src/stories/RPGUIContainers.stories.tsx +42 -0
  79. package/src/stories/RadioButton.stories.tsx +49 -0
  80. package/src/stories/RangeSlider.stories.tsx +60 -0
  81. package/src/stories/ScrollList.stories.tsx +85 -0
  82. package/src/stories/SimpleProgressBar.stories.tsx +22 -0
  83. package/src/stories/SkillProgressBar.stories.tsx +30 -0
  84. package/src/stories/SkillsContainer.stories.tsx +31 -0
  85. package/src/stories/Text.stories.tsx +42 -0
  86. package/dist/components/Item/Cards/ItemCard.d.ts +0 -9
  87. package/dist/components/store/UI.store.d.ts +0 -34
  88. package/src/components/Item/Cards/ItemCard.tsx +0 -36
  89. package/src/components/store/UI.store.ts +0 -192
@@ -14,8 +14,7 @@ var uuid = require('uuid');
14
14
  require('rpgui/rpgui.min.css');
15
15
  require('rpgui/rpgui.min.js');
16
16
  var shared = require('@rpg-engine/shared');
17
- var mobxReact = require('mobx-react');
18
- var mobx = require('mobx');
17
+ var mobxReactLite = require('mobx-react-lite');
19
18
 
20
19
  function _extends() {
21
20
  _extends = Object.assign ? Object.assign.bind() : function (target) {
@@ -49,7 +48,7 @@ function _objectWithoutPropertiesLoose(source, excluded) {
49
48
  return target;
50
49
  }
51
50
 
52
- var _excluded = ["children", "buttonType"];
51
+ var _excluded = ["disabled", "children", "buttonType"];
53
52
 
54
53
  (function (ButtonTypes) {
55
54
  ButtonTypes["RPGUIButton"] = "rpgui-button";
@@ -57,12 +56,15 @@ var _excluded = ["children", "buttonType"];
57
56
  })(exports.ButtonTypes || (exports.ButtonTypes = {}));
58
57
 
59
58
  var Button = function Button(_ref) {
60
- var children = _ref.children,
59
+ var _ref$disabled = _ref.disabled,
60
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
61
+ children = _ref.children,
61
62
  buttonType = _ref.buttonType,
62
63
  props = _objectWithoutPropertiesLoose(_ref, _excluded);
63
64
 
64
65
  return React__default.createElement(ButtonContainer, Object.assign({
65
- className: "" + buttonType
66
+ className: "" + buttonType,
67
+ disabled: disabled
66
68
  }, props), React__default.createElement("p", null, children));
67
69
  };
68
70
  var ButtonContainer = /*#__PURE__*/styled.button.withConfig({
@@ -454,23 +456,12 @@ var Dropdown = function Dropdown(_ref) {
454
456
  }));
455
457
  };
456
458
 
457
- var ItemCard = function ItemCard(_ref) {
458
- var item = _ref.item,
459
- x = _ref.x,
460
- y = _ref.y;
461
- return React__default.createElement(Container$3, {
462
- x: x,
463
- y: y
464
- }, item == null ? void 0 : item.name);
465
- };
466
- var Container$3 = /*#__PURE__*/styled.div.withConfig({
467
- displayName: "ItemCard__Container",
468
- componentId: "sc-170rits-0"
469
- })(["position:absolute;top:", "px;left:", "px;font-size:0.5rem;color:white;background-color:black;border-radius:5px;padding:0.5rem;min-width:20px;opacity:0.5;"], function (props) {
470
- return props.y || 0;
471
- }, function (props) {
472
- return props.x || 0;
473
- });
459
+ var SlotContainerType;
460
+
461
+ (function (SlotContainerType) {
462
+ SlotContainerType["INVENTORY"] = "Inventory";
463
+ SlotContainerType["EQUIPMENT_SET"] = "EquipmentSet";
464
+ })(SlotContainerType || (SlotContainerType = {}));
474
465
 
475
466
  var frames = {
476
467
  "helmets/brass-helmet.png": {
@@ -5692,6 +5683,56 @@ var atlasJSON = {
5692
5683
 
5693
5684
  var img = 'data:image/png;base64,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';
5694
5685
 
5686
+ var RelativeListMenu = function RelativeListMenu(_ref) {
5687
+ var options = _ref.options,
5688
+ onSelected = _ref.onSelected,
5689
+ onOutsideClick = _ref.onOutsideClick,
5690
+ _ref$fontSize = _ref.fontSize,
5691
+ fontSize = _ref$fontSize === void 0 ? 0.8 : _ref$fontSize;
5692
+ var ref = React.useRef(null);
5693
+ useOutsideClick(ref, 'relative-context-menu');
5694
+ React.useEffect(function () {
5695
+ document.addEventListener('clickOutside', function (event) {
5696
+ var e = event;
5697
+
5698
+ if (e.detail.id === 'relative-context-menu') {
5699
+ if (onOutsideClick) {
5700
+ onOutsideClick();
5701
+ }
5702
+ }
5703
+ });
5704
+ return function () {
5705
+ document.removeEventListener('clickOutside', function (_e) {});
5706
+ };
5707
+ }, []);
5708
+ return React__default.createElement(Container$3, {
5709
+ fontSize: fontSize,
5710
+ ref: ref
5711
+ }, React__default.createElement("ul", {
5712
+ className: "rpgui-list-imp",
5713
+ style: {
5714
+ overflow: 'hidden'
5715
+ }
5716
+ }, options.map(function (params, index) {
5717
+ return React__default.createElement(ListElement, {
5718
+ key: (params == null ? void 0 : params.id) || index,
5719
+ onClick: function onClick() {
5720
+ onSelected(params == null ? void 0 : params.id);
5721
+ }
5722
+ }, (params == null ? void 0 : params.text) || 'No text');
5723
+ })));
5724
+ };
5725
+ var Container$3 = /*#__PURE__*/styled.div.withConfig({
5726
+ displayName: "RelativeListMenu__Container",
5727
+ componentId: "sc-7hohf-0"
5728
+ })(["position:absolute;top:1rem;left:4rem;display:flex;flex-direction:column;width:100%;justify-content:start;align-items:flex-start;li{font-size:", "em;}"], function (props) {
5729
+ return props.fontSize;
5730
+ });
5731
+ var ListElement = /*#__PURE__*/styled.li.withConfig({
5732
+ displayName: "RelativeListMenu__ListElement",
5733
+ componentId: "sc-7hohf-1"
5734
+ })(["margin-right:0.5rem;"]);
5735
+
5695
5736
  var SpriteFromAtlas = function SpriteFromAtlas(_ref) {
5696
5737
  var atlasJSON = _ref.atlasJSON,
5697
5738
  atlasIMG = _ref.atlasIMG,
@@ -5759,10 +5800,55 @@ var ImgSprite = /*#__PURE__*/styled.div.withConfig({
5759
5800
  return props.opacity;
5760
5801
  });
5761
5802
 
5762
- (function (SlotContainerType) {
5763
- SlotContainerType["INVENTORY"] = "Inventory";
5764
- SlotContainerType["EQUIPMENT_SET"] = "EquipmentSet";
5765
- })(exports.SlotContainerType || (exports.SlotContainerType = {}));
5803
+ var ItemTooltip = function ItemTooltip(_ref) {
5804
+ var label = _ref.label;
5805
+ return React__default.createElement(Container$5, null, React__default.createElement("div", null, label));
5806
+ };
5807
+ var Container$5 = /*#__PURE__*/styled.div.withConfig({
5808
+ displayName: "ItemTooltip__Container",
5809
+ componentId: "sc-11d9r7x-0"
5810
+ })(["z-index:2;position:absolute;top:1rem;left:4rem;font-size:0.5rem;color:white;background-color:black;border-radius:5px;padding:0.5rem;min-width:20px;width:100%;text-align:center;opacity:0.75;"]);
5811
+
5812
+ var ContainerType;
5813
+
5814
+ (function (ContainerType) {
5815
+ ContainerType["INVENTORY"] = "Inventory";
5816
+ ContainerType["EQUIPMENT_SET"] = "EquipmentSet";
5817
+ })(ContainerType || (ContainerType = {})); // TODO: Refactor this file
5818
+
5819
+
5820
+ var generateContextList = function generateContextList(actionsByTypeList) {
5821
+ var contextMenu = actionsByTypeList.map(function (action) {
5822
+ return {
5823
+ id: action,
5824
+ text: shared.ItemSocketEventsDisplayLabels[action]
5825
+ };
5826
+ });
5827
+ return contextMenu;
5828
+ };
5829
+ var handleEquipmentContextMenuList = function handleEquipmentContextMenuList(itemType) {
5830
+ var contextActionMenu = [];
5831
+
5832
+ switch (itemType) {
5833
+ case shared.ItemType.Weapon:
5834
+ case shared.ItemType.Armor:
5835
+ case shared.ItemType.Accessory:
5836
+ case shared.ItemType.Jewelry:
5837
+ case shared.ItemType.Tool:
5838
+ contextActionMenu = generateContextList(shared.ActionsByItemType.EquipmenSetItems);
5839
+ break;
5840
+
5841
+ case shared.ItemType.Container:
5842
+ contextActionMenu = generateContextList(shared.ActionsByItemType.EquipmenSetContainer);
5843
+ break;
5844
+
5845
+ default:
5846
+ contextActionMenu = generateContextList(shared.ActionsByItemType.EquipmenSetItems);
5847
+ break;
5848
+ }
5849
+
5850
+ return contextActionMenu;
5851
+ };
5766
5852
 
5767
5853
  var EquipmentSlotSpriteByType = {
5768
5854
  Neck: 'accessories/corruption-necklace.png',
@@ -5776,7 +5862,7 @@ var EquipmentSlotSpriteByType = {
5776
5862
  RightHand: 'shields/plate-shield.png',
5777
5863
  Accessory: 'gloves/plate-gloves.png'
5778
5864
  };
5779
- var ItemSlot = function ItemSlot(_ref) {
5865
+ var ItemSlot = /*#__PURE__*/mobxReactLite.observer(function (_ref) {
5780
5866
  var slotIndex = _ref.slotIndex,
5781
5867
  item = _ref.item,
5782
5868
  slotContainerType = _ref.slotContainerType,
@@ -5784,7 +5870,25 @@ var ItemSlot = function ItemSlot(_ref) {
5784
5870
  _onMouseOver = _ref.onMouseOver,
5785
5871
  _onMouseOut = _ref.onMouseOut,
5786
5872
  _onClick = _ref.onClick,
5787
- onCancelContextMenu = _ref.onCancelContextMenu;
5873
+ _onSelected = _ref.onSelected;
5874
+
5875
+ var _useState = React.useState(false),
5876
+ isTooltipVisible = _useState[0],
5877
+ setTooltipVisible = _useState[1];
5878
+
5879
+ var _useState2 = React.useState(false),
5880
+ isContextMenuVisible = _useState2[0],
5881
+ setIsContextMenuVisible = _useState2[1];
5882
+
5883
+ var _useState3 = React.useState([]),
5884
+ contextActions = _useState3[0],
5885
+ setContextActions = _useState3[1];
5886
+
5887
+ React.useEffect(function () {
5888
+ if (item) {
5889
+ setContextActions(handleEquipmentContextMenuList(item.type));
5890
+ }
5891
+ }, [item]);
5788
5892
 
5789
5893
  var getLeftPositionValue = function getLeftPositionValue(quantity) {
5790
5894
  if (quantity > 0 && quantity < 10) return '2.5rem';else if (quantity > 9 && quantity < 100) return '2.0rem';else if (quantity > 99) return '1rem';
@@ -5796,6 +5900,7 @@ var ItemSlot = function ItemSlot(_ref) {
5796
5900
 
5797
5901
  if (itemToRender != null && itemToRender.texturePath) {
5798
5902
  element.push(React__default.createElement(SpriteFromAtlas, {
5903
+ key: itemToRender._id,
5799
5904
  atlasIMG: img,
5800
5905
  atlasJSON: atlasJSON,
5801
5906
  spriteKey: itemToRender.texturePath,
@@ -5805,7 +5910,8 @@ var ItemSlot = function ItemSlot(_ref) {
5805
5910
 
5806
5911
  if (itemToRender != null && itemToRender.isStackable && itemToRender != null && itemToRender.stackQty) {
5807
5912
  element.push(React__default.createElement(ItemQty, {
5808
- left: getLeftPositionValue(itemToRender.stackQty)
5913
+ left: getLeftPositionValue(itemToRender.stackQty),
5914
+ key: "qty-" + itemToRender._id
5809
5915
  }, ' ', itemToRender.stackQty, ' '));
5810
5916
  }
5811
5917
 
@@ -5817,6 +5923,7 @@ var ItemSlot = function ItemSlot(_ref) {
5817
5923
 
5818
5924
  if (itemToRender != null && itemToRender.texturePath && (_itemToRender$allowed = itemToRender.allowedEquipSlotType) != null && _itemToRender$allowed.includes(slotSpriteMask)) {
5819
5925
  return React__default.createElement(SpriteFromAtlas, {
5926
+ key: itemToRender._id,
5820
5927
  atlasIMG: img,
5821
5928
  atlasJSON: atlasJSON,
5822
5929
  spriteKey: itemToRender.texturePath,
@@ -5835,31 +5942,51 @@ var ItemSlot = function ItemSlot(_ref) {
5835
5942
  };
5836
5943
 
5837
5944
  var onRenderSlot = function onRenderSlot(itemToRender) {
5838
- if (slotContainerType === exports.SlotContainerType.EQUIPMENT_SET) return renderEquipment(itemToRender);
5945
+ if (slotContainerType === SlotContainerType.EQUIPMENT_SET) return renderEquipment(itemToRender);
5839
5946
  return renderItem(itemToRender);
5840
5947
  };
5841
5948
 
5842
- return React__default.createElement(Container$5, {
5949
+ return React__default.createElement(Container$6, {
5843
5950
  className: "rpgui-icon empty-slot",
5844
5951
  onMouseOver: function onMouseOver(event) {
5845
5952
  return _onMouseOver(event, slotIndex, item, event.clientX, event.clientY);
5846
5953
  },
5847
5954
  onMouseOut: function onMouseOut() {
5848
- return _onMouseOut();
5955
+ if (_onMouseOut) _onMouseOut();
5956
+ },
5957
+ onMouseEnter: function onMouseEnter() {
5958
+ return setTooltipVisible(true);
5849
5959
  },
5850
- onClick: function onClick(e) {
5960
+ onMouseLeave: function onMouseLeave() {
5961
+ return setTooltipVisible(false);
5962
+ },
5963
+ onClick: function onClick() {
5964
+ setTooltipVisible(false);
5965
+
5851
5966
  if (item) {
5852
- _onClick(item, e.clientX, e.clientY, slotContainerType);
5853
- } else {
5854
- onCancelContextMenu();
5967
+ setIsContextMenuVisible(!isContextMenuVisible);
5968
+
5969
+ _onClick(item, slotContainerType);
5855
5970
  }
5856
5971
  }
5857
- }, onRenderSlot(item));
5858
- };
5859
- var Container$5 = /*#__PURE__*/styled.div.withConfig({
5972
+ }, isContextMenuVisible && contextActions && React__default.createElement(RelativeListMenu, {
5973
+ options: contextActions,
5974
+ onSelected: function onSelected(optionId) {
5975
+ setIsContextMenuVisible(false);
5976
+
5977
+ _onSelected(optionId);
5978
+ },
5979
+ onOutsideClick: function onOutsideClick() {
5980
+ setIsContextMenuVisible(false);
5981
+ }
5982
+ }), isTooltipVisible && item && React__default.createElement(ItemTooltip, {
5983
+ label: item.name
5984
+ }), onRenderSlot(item));
5985
+ });
5986
+ var Container$6 = /*#__PURE__*/styled.div.withConfig({
5860
5987
  displayName: "ItemSlot__Container",
5861
5988
  componentId: "sc-l2j5ef-0"
5862
- })(["margin:0.1rem;.sprite-from-atlas-img{position:relative;top:1.5rem;left:1.5rem;}"]);
5989
+ })(["margin:0.1rem;.sprite-from-atlas-img{position:relative;top:1.5rem;left:1.5rem;}position:relative;"]);
5863
5990
  var ItemQty = /*#__PURE__*/styled.span.withConfig({
5864
5991
  displayName: "ItemSlot__ItemQty",
5865
5992
  componentId: "sc-l2j5ef-1"
@@ -5867,6 +5994,150 @@ var ItemQty = /*#__PURE__*/styled.span.withConfig({
5867
5994
  return props.left;
5868
5995
  });
5869
5996
 
5997
+ var EquipmentSet = function EquipmentSet(_ref) {
5998
+ var equipmentSet = _ref.equipmentSet,
5999
+ onClose = _ref.onClose,
6000
+ _onMouseOver = _ref.onMouseOver,
6001
+ _onSelected = _ref.onSelected,
6002
+ onItemClick = _ref.onItemClick;
6003
+ var neck = equipmentSet.neck,
6004
+ leftHand = equipmentSet.leftHand,
6005
+ ring = equipmentSet.ring,
6006
+ head = equipmentSet.head,
6007
+ armor = equipmentSet.armor,
6008
+ legs = equipmentSet.legs,
6009
+ boot = equipmentSet.boot,
6010
+ inventory = equipmentSet.inventory,
6011
+ rightHand = equipmentSet.rightHand,
6012
+ accessory = equipmentSet.accessory;
6013
+ var equipmentData = [neck, leftHand, ring, head, armor, legs, boot, inventory, rightHand, accessory];
6014
+ var equipmentMaskSlots = [shared.ItemSlotType.Neck, shared.ItemSlotType.LeftHand, shared.ItemSlotType.Ring, shared.ItemSlotType.Head, shared.ItemSlotType.Torso, shared.ItemSlotType.Legs, shared.ItemSlotType.Feet, shared.ItemSlotType.Inventory, shared.ItemSlotType.RightHand, shared.ItemSlotType.Accessory];
6015
+
6016
+ var onRenderEquipmentSlotRange = function onRenderEquipmentSlotRange(start, end) {
6017
+ var equipmentRange = equipmentData.slice(start, end);
6018
+ var slotMaksRange = equipmentMaskSlots.slice(start, end);
6019
+ return equipmentRange.map(function (data, i) {
6020
+ var _ref2;
6021
+
6022
+ var item = data;
6023
+ var itemContainer = (_ref2 = item && item.itemContainer) != null ? _ref2 : null;
6024
+ return React__default.createElement(ItemSlot, {
6025
+ key: i,
6026
+ slotIndex: i,
6027
+ item: item,
6028
+ itemContainer: itemContainer,
6029
+ slotContainerType: SlotContainerType.EQUIPMENT_SET,
6030
+ slotSpriteMask: slotMaksRange[i],
6031
+ onMouseOver: function onMouseOver(event, slotIndex, item) {
6032
+ if (_onMouseOver) _onMouseOver(event, slotIndex, item);
6033
+ },
6034
+ onClick: function onClick(item, slotContainerType) {
6035
+ if (onItemClick) onItemClick(item, slotContainerType);
6036
+ },
6037
+ onSelected: function onSelected(optionId) {
6038
+ if (_onSelected) _onSelected(optionId);
6039
+ }
6040
+ });
6041
+ });
6042
+ };
6043
+
6044
+ return React__default.createElement(DraggableContainer, {
6045
+ title: 'Equipments',
6046
+ type: exports.RPGUIContainerTypes.Framed,
6047
+ onCloseButton: function onCloseButton() {
6048
+ if (onClose) onClose();
6049
+ },
6050
+ width: "330px",
6051
+ cancelDrag: ".equipment-container-body"
6052
+ }, React__default.createElement(EquipmentSetContainer, {
6053
+ className: "equipment-container-body"
6054
+ }, React__default.createElement(EquipmentColumn, null, onRenderEquipmentSlotRange(0, 3)), React__default.createElement(EquipmentColumn, null, onRenderEquipmentSlotRange(3, 7)), React__default.createElement(EquipmentColumn, null, onRenderEquipmentSlotRange(7, 10))));
6055
+ };
6056
+ var EquipmentSetContainer = /*#__PURE__*/styled.div.withConfig({
6057
+ displayName: "EquipmentSet__EquipmentSetContainer",
6058
+ componentId: "sc-1wuddg2-0"
6059
+ })(["width:inherit;display:flex;justify-content:center;flex-wrap:wrap;flex-direction:row;"]);
6060
+ var EquipmentColumn = /*#__PURE__*/styled.div.withConfig({
6061
+ displayName: "EquipmentSet__EquipmentColumn",
6062
+ componentId: "sc-1wuddg2-1"
6063
+ })(["display:flex;justify-content:center;flex-wrap:wrap;flex-direction:column;"]);
6064
+
6065
+ var SlotsContainer = function SlotsContainer(_ref) {
6066
+ var children = _ref.children,
6067
+ title = _ref.title,
6068
+ onClose = _ref.onClose,
6069
+ _onPositionChange = _ref.onPositionChange,
6070
+ onOutsideClick = _ref.onOutsideClick;
6071
+ return React__default.createElement(DraggableContainer, {
6072
+ title: title,
6073
+ type: exports.RPGUIContainerTypes.Framed,
6074
+ onCloseButton: function onCloseButton() {
6075
+ if (onClose) {
6076
+ onClose();
6077
+ }
6078
+ },
6079
+ width: "330px",
6080
+ cancelDrag: ".item-container-body",
6081
+ onPositionChange: function onPositionChange(_ref2) {
6082
+ var x = _ref2.x,
6083
+ y = _ref2.y;
6084
+
6085
+ if (_onPositionChange) {
6086
+ _onPositionChange({
6087
+ x: x,
6088
+ y: y
6089
+ });
6090
+ }
6091
+ },
6092
+ onOutsideClick: onOutsideClick
6093
+ }, children);
6094
+ };
6095
+
6096
+ var ItemContainer = function ItemContainer(_ref) {
6097
+ var itemContainer = _ref.itemContainer,
6098
+ onClose = _ref.onClose,
6099
+ _onMouseOver = _ref.onMouseOver,
6100
+ _onSelected = _ref.onSelected,
6101
+ onItemClick = _ref.onItemClick;
6102
+
6103
+ var onRenderSlots = function onRenderSlots() {
6104
+ var slots = [];
6105
+
6106
+ for (var i = 0; i < itemContainer.slotQty; i++) {
6107
+ var _itemContainer$slots;
6108
+
6109
+ slots.push(React__default.createElement(ItemSlot, {
6110
+ key: i,
6111
+ slotIndex: i,
6112
+ item: ((_itemContainer$slots = itemContainer.slots) == null ? void 0 : _itemContainer$slots[i]) || null,
6113
+ slotContainerType: SlotContainerType.INVENTORY,
6114
+ onMouseOver: function onMouseOver(event, slotIndex, item) {
6115
+ if (_onMouseOver) _onMouseOver(event, slotIndex, item);
6116
+ },
6117
+ onClick: function onClick(item, slotContainerType) {
6118
+ if (onItemClick) onItemClick(item, slotContainerType);
6119
+ },
6120
+ onSelected: function onSelected(optionId) {
6121
+ if (_onSelected) _onSelected(optionId);
6122
+ }
6123
+ }));
6124
+ }
6125
+
6126
+ return slots;
6127
+ };
6128
+
6129
+ return React__default.createElement(SlotsContainer, {
6130
+ title: itemContainer.name || 'Container',
6131
+ onClose: onClose
6132
+ }, React__default.createElement(ItemsContainer, {
6133
+ className: "item-container-body"
6134
+ }, onRenderSlots()));
6135
+ };
6136
+ var ItemsContainer = /*#__PURE__*/styled.div.withConfig({
6137
+ displayName: "ItemContainer__ItemsContainer",
6138
+ componentId: "sc-15y5p9l-0"
6139
+ })(["max-width:280px;display:flex;justify-content:center;flex-wrap:wrap;"]);
6140
+
5870
6141
  var ListMenu = function ListMenu(_ref) {
5871
6142
  var options = _ref.options,
5872
6143
  onSelected = _ref.onSelected,
@@ -5874,7 +6145,7 @@ var ListMenu = function ListMenu(_ref) {
5874
6145
  y = _ref.y,
5875
6146
  _ref$fontSize = _ref.fontSize,
5876
6147
  fontSize = _ref$fontSize === void 0 ? 0.8 : _ref$fontSize;
5877
- return React__default.createElement(Container$6, {
6148
+ return React__default.createElement(Container$7, {
5878
6149
  x: x,
5879
6150
  y: y,
5880
6151
  fontSize: fontSize
@@ -5884,7 +6155,7 @@ var ListMenu = function ListMenu(_ref) {
5884
6155
  overflow: 'hidden'
5885
6156
  }
5886
6157
  }, options.map(function (params, index) {
5887
- return React__default.createElement(ListElement, {
6158
+ return React__default.createElement(ListElement$1, {
5888
6159
  key: (params == null ? void 0 : params.id) || index,
5889
6160
  onClick: function onClick() {
5890
6161
  onSelected(params == null ? void 0 : params.id);
@@ -5892,7 +6163,7 @@ var ListMenu = function ListMenu(_ref) {
5892
6163
  }, (params == null ? void 0 : params.text) || 'No text');
5893
6164
  })));
5894
6165
  };
5895
- var Container$6 = /*#__PURE__*/styled.div.withConfig({
6166
+ var Container$7 = /*#__PURE__*/styled.div.withConfig({
5896
6167
  displayName: "ListMenu__Container",
5897
6168
  componentId: "sc-i9097t-0"
5898
6169
  })(["display:flex;flex-direction:column;width:100%;justify-content:start;align-items:flex-start;position:absolute;top:", "px;left:", "px;li{font-size:", "em;}"], function (props) {
@@ -5902,454 +6173,18 @@ var Container$6 = /*#__PURE__*/styled.div.withConfig({
5902
6173
  }, function (props) {
5903
6174
  return props.fontSize;
5904
6175
  });
5905
- var ListElement = /*#__PURE__*/styled.li.withConfig({
6176
+ var ListElement$1 = /*#__PURE__*/styled.li.withConfig({
5906
6177
  displayName: "ListMenu__ListElement",
5907
6178
  componentId: "sc-i9097t-1"
5908
6179
  })(["margin-right:0.5rem;"]);
5909
6180
 
5910
- var ContainerType;
6181
+ var img$1 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAP1BMVEUAAAA7FyVxQTsUEBPj5v////+5v/tCJDOOUlIiHBr1oJfptaO6dWr61rhzFy1bMTjoanMUNGQoXMQkn97+88DQ3IhAAAAAAXRSTlMAQObYZgAAAAFiS0dEBfhv6ccAAAAHdElNRQfmAw4VOBC7c5LYAAABM0lEQVQ4y3XRi5KDIAwFUAUkbrBgpP//rZsHVHQ009qZ3tPboNN0zmwzvcw8O5sX4y0NOg/Et3jRCXF+ziULorjkOQ9gE24dvuUAzq08DiCO4pe3WN7zCP56vmpubBReQYC11YPS86ySxxCsAABTSgjb5m4g8nfbxvFHBkH2OEEvAItVuCuIsgGgl+Gcr7kDXxhEAx55A2SQEEeQeZwUaIP8Tbo05B0RFPhItAjgj1w6cDnhLluDj+Egkh3pCCP4pKQAw1IPO0W9Nti5gW9RP2dKA3BZd2Dw+baYX+Nt4GM00O4S3kEpF6Alb2Bv4LeC3kkGfAW0/p0RPoJVKr63ghHsKuRh5DIUKOAlGOwrtt9fQekAEfmhZslHUDoglB0zjfkJigN7UnTQQ4GBWomoVhEN/AOPSBh38gy+fwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMi0wMy0xNFQyMTo1NTo1MSswMDowMJcc0eEAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjItMDMtMTRUMjE6NTU6NTErMDA6MDDmQWldAAAAAElFTkSuQmCC';
5911
6182
 
5912
- (function (ContainerType) {
5913
- ContainerType["INVENTORY"] = "Inventory";
5914
- ContainerType["EQUIPMENT_SET"] = "EquipmentSet";
5915
- })(ContainerType || (ContainerType = {})); // TODO: Refactor this file
6183
+ var img$2 = 'data:image/gif;base64,R0lGODlhQAAgAPIAAAAAAA0NDRERESIiIigoKFlZWf///wAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtJbWFnZU1hZ2ljaw5nYW1tYT0wLjQ1NDU0NQAh+QQBFAAAACwAAAAAQAAgAAAD/wi63P4wykmrvTjrzbv/YAgIZGmeaKquakQWcCzPdG3fNukIeO//PQGDBywafcIF8chswpKKZcxApTqvNOiIZi0YsODncFaFlcNOrdTbJVff0/c3Lp/Xs2N37cy2ndt6ZnhKXHdsc4d7VnwyfIxqPWWOXXWLgHSGYoSNbZKVZp2WiJyjg1GFcaClqaqJhasyUAFrh3Cur3KqubWXBQIBAAEDtDeMaEEDAcLEx2gCycvN0jHPysPT09XR2M3a19zH3gTM4EYCBNDD4yzs7e4r48nB6gT19vf4+fr7/P3P8sKGvRtIkMUAeQoCHlzIsKHDhxAjSoTWQJnFixgzatzIsQWjRQYJAAAh/wtJbWFnZU1hZ2ljaw5nYW1tYT0wLjQ1NDU0NQAh+QQBFAAAACwAAAAAQAAgAAAD8Ai63P4wykmrvTjrzbv/YCiOlGCeaKqubMtGZiHPdG3feI6bjqD/wOBPwPAJj0ggcWFMOp+ypaI5M1it0KxNCqDKsAWDdhwt1q5fMPnJ9aJt17g4HafJ3/et+Tzn99V+aThqfTNtcHlhhIBVWG+BdDSHOmiPeHdij3aYhZONf46YkZGanzpSAV6KjaOIpqWtNwIBAAEDqqKKhZuJnHSwAgMBtqo5sGs5wcO3yM01ysTO0gXQzNPN1cXXUNnbyNna3kcmwrW3Lujp6ugD5bbn6/HyLe20Cu/t+fr7/P3+/wCF2VswrKDBgwgTKlzIsCCDBAA7';
5916
6184
 
5917
-
5918
- var generateContextList = function generateContextList(actionsByTypeList) {
5919
- var contextMenu = actionsByTypeList.map(function (action) {
5920
- return {
5921
- id: action,
5922
- text: shared.ItemSocketEventsDisplayLabels[action]
5923
- };
5924
- });
5925
- return contextMenu;
5926
- };
5927
-
5928
- var handleContextMenuList = function handleContextMenuList(itemType) {
5929
- var contextActionMenu = [];
5930
-
5931
- switch (itemType) {
5932
- case shared.ItemType.Weapon:
5933
- case shared.ItemType.Armor:
5934
- case shared.ItemType.Accessory:
5935
- case shared.ItemType.Jewelry:
5936
- case shared.ItemType.Tool:
5937
- contextActionMenu = generateContextList(shared.ActionsByItemType.Equipment);
5938
- break;
5939
-
5940
- case shared.ItemType.Consumable:
5941
- contextActionMenu = generateContextList(shared.ActionsByItemType.Consumable);
5942
- break;
5943
-
5944
- case shared.ItemType.CraftMaterial:
5945
- contextActionMenu = generateContextList(shared.ActionsByItemType.CraftMaterial);
5946
- break;
5947
-
5948
- case shared.ItemType.Other:
5949
- case shared.ItemType.Information:
5950
- case shared.ItemType.Quest:
5951
- case shared.ItemType.Container:
5952
- contextActionMenu = generateContextList(shared.ActionsByItemType.Other);
5953
- break;
5954
-
5955
- default:
5956
- contextActionMenu = generateContextList(shared.ActionsByItemType.Other);
5957
- break;
5958
- }
5959
-
5960
- return contextActionMenu;
5961
- };
5962
- var handleEquipmentContextMenuList = function handleEquipmentContextMenuList(itemType) {
5963
- var contextActionMenu = [];
5964
-
5965
- switch (itemType) {
5966
- case shared.ItemType.Weapon:
5967
- case shared.ItemType.Armor:
5968
- case shared.ItemType.Accessory:
5969
- case shared.ItemType.Jewelry:
5970
- case shared.ItemType.Tool:
5971
- contextActionMenu = generateContextList(shared.ActionsByItemType.EquipmenSetItems);
5972
- break;
5973
-
5974
- case shared.ItemType.Container:
5975
- contextActionMenu = generateContextList(shared.ActionsByItemType.EquipmenSetContainer);
5976
- break;
5977
-
5978
- default:
5979
- contextActionMenu = generateContextList(shared.ActionsByItemType.EquipmenSetItems);
5980
- break;
5981
- }
5982
-
5983
- return contextActionMenu;
5984
- };
5985
-
5986
- var initialState = {
5987
- visible: false,
5988
- posX: 0,
5989
- posY: 0,
5990
- contextActions: [],
5991
- slotItem: null
5992
- };
5993
- var initialHoverState = {
5994
- visible: false,
5995
- posX: 0,
5996
- posY: 0,
5997
- item: null
5998
- };
5999
-
6000
- var UIStore = /*#__PURE__*/function () {
6001
- function UIStore() {
6002
- var _this = this;
6003
-
6004
- this.contextMenu = initialState;
6005
- this.onHoverDetail = initialHoverState;
6006
-
6007
- this.handleOnItemClick = function (item, posX, posY, slotContainerType) {
6008
- var _this$contextMenu;
6009
-
6010
- if (!item || JSON.stringify((_this$contextMenu = _this.contextMenu) == null ? void 0 : _this$contextMenu.slotItem) === JSON.stringify(item)) {
6011
- _this.clearContextMenu();
6012
-
6013
- _this.clearItemHoverDetail();
6014
-
6015
- return;
6016
- }
6017
-
6018
- switch (slotContainerType) {
6019
- case exports.SlotContainerType.EQUIPMENT_SET:
6020
- _this.setEquipContextMenu({
6021
- visible: true,
6022
- posX: posX,
6023
- posY: posY,
6024
- slotItem: item
6025
- }, item.type, item.isItemContainer);
6026
-
6027
- break;
6028
-
6029
- case exports.SlotContainerType.INVENTORY:
6030
- _this.setContextMenu({
6031
- visible: true,
6032
- posX: posX,
6033
- posY: posY,
6034
- slotItem: item
6035
- }, item.type);
6036
-
6037
- break;
6038
-
6039
- default:
6040
- _this.setContextMenu({
6041
- visible: true,
6042
- posX: posX,
6043
- posY: posY,
6044
- slotItem: item
6045
- }, item.type);
6046
-
6047
- }
6048
-
6049
- _this.clearItemHoverDetail();
6050
- };
6051
-
6052
- this.handleOnMouseHover = function (event, slotIndex, item, posX, posY, onMouseOver) {
6053
- if (item) {
6054
- _this.setItemHoverDetail({
6055
- visible: true,
6056
- posX: posX,
6057
- posY: posY,
6058
- item: item
6059
- });
6060
- }
6061
-
6062
- if (onMouseOver) {
6063
- onMouseOver(event, slotIndex, item);
6064
- }
6065
- };
6066
-
6067
- mobx.makeAutoObservable(this);
6068
- }
6069
-
6070
- var _proto = UIStore.prototype;
6071
-
6072
- _proto.setContextMenu = function setContextMenu(contextMenu, itemType) {
6073
- var contextActions = handleContextMenuList(itemType);
6074
- this.contextMenu = _extends({}, contextMenu, {
6075
- contextActions: contextActions
6076
- });
6077
- console.log(mobx.toJS(this.contextMenu));
6078
- };
6079
-
6080
- _proto.setEquipContextMenu = function setEquipContextMenu(contextMenu, itemType, isItemContainer) {
6081
- var contextActions = handleEquipmentContextMenuList(itemType);
6082
- if (isItemContainer) contextActions.push({
6083
- id: shared.ItemSocketEvents.ContainerOpen,
6084
- text: shared.ItemSocketEventsDisplayLabels[shared.ItemSocketEvents.ContainerOpen]
6085
- });
6086
- this.contextMenu = _extends({}, contextMenu, {
6087
- contextActions: contextActions
6088
- });
6089
- console.log(mobx.toJS(this.contextMenu));
6090
- };
6091
-
6092
- _proto.clearContextMenu = function clearContextMenu() {
6093
- this.contextMenu = initialState;
6094
- };
6095
-
6096
- _proto.setItemHoverDetail = function setItemHoverDetail(hoverDetail) {
6097
- if ((hoverDetail == null ? void 0 : hoverDetail.item) === null) this.clearItemHoverDetail();
6098
- this.onHoverDetail = _extends({}, hoverDetail);
6099
- };
6100
-
6101
- _proto.clearItemHoverDetail = function clearItemHoverDetail() {
6102
- this.onHoverDetail = initialHoverState;
6103
- };
6104
-
6105
- _proto.onSelected = function onSelected(selectedActionId, onActionSelected) {
6106
- var _this$contextMenu2;
6107
-
6108
- var payloadData = {
6109
- actionType: selectedActionId,
6110
- item: (_this$contextMenu2 = this.contextMenu) == null ? void 0 : _this$contextMenu2.slotItem
6111
- };
6112
-
6113
- if (onActionSelected) {
6114
- onActionSelected(payloadData);
6115
- }
6116
-
6117
- this.clearContextMenu();
6118
- };
6119
-
6120
- return UIStore;
6121
- }();
6122
-
6123
- var uiStore = /*#__PURE__*/new UIStore();
6124
-
6125
- var EquipmentSet = /*#__PURE__*/mobxReact.observer(function (_ref) {
6126
- var _uiStore$contextMenu, _uiStore$onHoverDetai;
6127
-
6128
- var equipmentSet = _ref.equipmentSet,
6129
- onClose = _ref.onClose,
6130
- onMouseOver = _ref.onMouseOver,
6131
- onActionSelected = _ref.onActionSelected,
6132
- _ref$initialPosition = _ref.initialPosition,
6133
- initialPosition = _ref$initialPosition === void 0 ? {
6134
- x: 0,
6135
- y: 0
6136
- } : _ref$initialPosition;
6137
- var neck = equipmentSet.neck,
6138
- leftHand = equipmentSet.leftHand,
6139
- ring = equipmentSet.ring,
6140
- head = equipmentSet.head,
6141
- armor = equipmentSet.armor,
6142
- legs = equipmentSet.legs,
6143
- boot = equipmentSet.boot,
6144
- inventory = equipmentSet.inventory,
6145
- rightHand = equipmentSet.rightHand,
6146
- accessory = equipmentSet.accessory;
6147
- var equipmentData = [neck, leftHand, ring, head, armor, legs, boot, inventory, rightHand, accessory];
6148
- var equipmentMaskSlots = [shared.ItemSlotType.Neck, shared.ItemSlotType.LeftHand, shared.ItemSlotType.Ring, shared.ItemSlotType.Head, shared.ItemSlotType.Torso, shared.ItemSlotType.Legs, shared.ItemSlotType.Feet, shared.ItemSlotType.Inventory, shared.ItemSlotType.RightHand, shared.ItemSlotType.Accessory]; // we use this draggable position to offset the menu position, after the container is dragged (otherwise, it bugs!)
6149
-
6150
- var _useState = React.useState(initialPosition),
6151
- draggablePosition = _useState[0],
6152
- setDraggablePosition = _useState[1];
6153
-
6154
- var handleOnMouseHover = function handleOnMouseHover(event, slotIndex, item, x, y) {
6155
- uiStore.handleOnMouseHover(event, slotIndex, item, x, y, onMouseOver);
6156
- };
6157
-
6158
- var onSelected = function onSelected(selectedActionId) {
6159
- uiStore.onSelected(selectedActionId, onActionSelected);
6160
- };
6161
-
6162
- var onRenderEquipmentSlotRange = function onRenderEquipmentSlotRange(start, end) {
6163
- var equipmentRange = equipmentData.slice(start, end);
6164
- var slotMaksRange = equipmentMaskSlots.slice(start, end);
6165
- return equipmentRange.map(function (data, i) {
6166
- var _ref2;
6167
-
6168
- var item = data;
6169
- var itemContainer = (_ref2 = item && item.itemContainer) != null ? _ref2 : null;
6170
- return React__default.createElement(ItemSlot, {
6171
- key: i,
6172
- slotIndex: i,
6173
- item: item,
6174
- itemContainer: itemContainer,
6175
- slotContainerType: exports.SlotContainerType.EQUIPMENT_SET,
6176
- slotSpriteMask: slotMaksRange[i],
6177
- onMouseOver: handleOnMouseHover,
6178
- onMouseOut: function onMouseOut() {
6179
- uiStore.clearItemHoverDetail();
6180
- },
6181
- onClick: uiStore.handleOnItemClick,
6182
- onCancelContextMenu: function onCancelContextMenu() {
6183
- uiStore.clearContextMenu();
6184
- }
6185
- });
6186
- });
6187
- };
6188
-
6189
- return React__default.createElement(DraggableContainer, {
6190
- title: 'Equipments',
6191
- type: exports.RPGUIContainerTypes.Framed,
6192
- onCloseButton: function onCloseButton() {
6193
- if (onClose) onClose();
6194
- },
6195
- width: "330px",
6196
- cancelDrag: ".equipment-container-body",
6197
- onPositionChange: function onPositionChange(_ref3) {
6198
- var x = _ref3.x,
6199
- y = _ref3.y;
6200
- setDraggablePosition({
6201
- x: x,
6202
- y: y
6203
- });
6204
- },
6205
- onOutsideClick: function onOutsideClick() {
6206
- uiStore.clearContextMenu();
6207
- uiStore.clearItemHoverDetail();
6208
- }
6209
- }, React__default.createElement(EquipmentSetContainer, {
6210
- className: "equipment-container-body"
6211
- }, React__default.createElement(EquipmentColumn, null, onRenderEquipmentSlotRange(0, 3)), React__default.createElement(EquipmentColumn, null, onRenderEquipmentSlotRange(3, 7)), React__default.createElement(EquipmentColumn, null, onRenderEquipmentSlotRange(7, 10))), (_uiStore$contextMenu = uiStore.contextMenu) != null && _uiStore$contextMenu.visible ? React__default.createElement(ListMenu, {
6212
- x: uiStore.contextMenu.posX - draggablePosition.x,
6213
- y: uiStore.contextMenu.posY - draggablePosition.y,
6214
- options: uiStore.contextMenu.contextActions,
6215
- onSelected: onSelected
6216
- }) : null, (_uiStore$onHoverDetai = uiStore.onHoverDetail) != null && _uiStore$onHoverDetai.visible ? React__default.createElement(ItemCard, {
6217
- item: uiStore.onHoverDetail.item,
6218
- x: uiStore.onHoverDetail.posX - draggablePosition.x,
6219
- y: uiStore.onHoverDetail.posY - draggablePosition.y
6220
- }) : null);
6221
- });
6222
- var EquipmentSetContainer = /*#__PURE__*/styled.div.withConfig({
6223
- displayName: "EquipmentSet__EquipmentSetContainer",
6224
- componentId: "sc-1wuddg2-0"
6225
- })(["width:inherit;display:flex;justify-content:center;flex-wrap:wrap;flex-direction:row;"]);
6226
- var EquipmentColumn = /*#__PURE__*/styled.div.withConfig({
6227
- displayName: "EquipmentSet__EquipmentColumn",
6228
- componentId: "sc-1wuddg2-1"
6229
- })(["display:flex;justify-content:center;flex-wrap:wrap;flex-direction:column;"]);
6230
-
6231
- var SlotsContainer = function SlotsContainer(_ref) {
6232
- var children = _ref.children,
6233
- title = _ref.title,
6234
- onClose = _ref.onClose,
6235
- _onPositionChange = _ref.onPositionChange,
6236
- onOutsideClick = _ref.onOutsideClick;
6237
- return React__default.createElement(DraggableContainer, {
6238
- title: title,
6239
- type: exports.RPGUIContainerTypes.Framed,
6240
- onCloseButton: function onCloseButton() {
6241
- if (onClose) {
6242
- onClose();
6243
- }
6244
- },
6245
- width: "330px",
6246
- cancelDrag: ".item-container-body",
6247
- onPositionChange: function onPositionChange(_ref2) {
6248
- var x = _ref2.x,
6249
- y = _ref2.y;
6250
-
6251
- if (_onPositionChange) {
6252
- _onPositionChange({
6253
- x: x,
6254
- y: y
6255
- });
6256
- }
6257
- },
6258
- onOutsideClick: onOutsideClick
6259
- }, children);
6260
- };
6261
-
6262
- var ItemContainer = /*#__PURE__*/mobxReact.observer(function (_ref) {
6263
- var _uiStore$contextMenu, _uiStore$onHoverDetai;
6264
-
6265
- var itemContainer = _ref.itemContainer,
6266
- onClose = _ref.onClose,
6267
- onMouseOver = _ref.onMouseOver,
6268
- onActionSelected = _ref.onActionSelected,
6269
- _ref$initialPosition = _ref.initialPosition,
6270
- initialPosition = _ref$initialPosition === void 0 ? {
6271
- x: 0,
6272
- y: 0
6273
- } : _ref$initialPosition;
6274
-
6275
- // we use this draggable position to offset the menu position, after the container is dragged (otherwise, it bugs!)
6276
- var _useState = React.useState(initialPosition),
6277
- draggablePosition = _useState[0],
6278
- setDraggablePosition = _useState[1];
6279
-
6280
- var handleOnMouseHover = function handleOnMouseHover(event, slotIndex, item, x, y) {
6281
- uiStore.handleOnMouseHover(event, slotIndex, item, x, y, onMouseOver);
6282
- };
6283
-
6284
- var onSelected = function onSelected(selectedActionId) {
6285
- uiStore.onSelected(selectedActionId, onActionSelected);
6286
- };
6287
-
6288
- var onRenderSlots = function onRenderSlots() {
6289
- var slots = [];
6290
-
6291
- for (var i = 0; i < itemContainer.slotQty; i++) {
6292
- var _itemContainer$slots;
6293
-
6294
- slots.push(React__default.createElement(ItemSlot, {
6295
- key: i,
6296
- slotIndex: i,
6297
- item: ((_itemContainer$slots = itemContainer.slots) == null ? void 0 : _itemContainer$slots[i]) || null,
6298
- slotContainerType: exports.SlotContainerType.INVENTORY,
6299
- onMouseOver: handleOnMouseHover,
6300
- onClick: uiStore.handleOnItemClick,
6301
- onMouseOut: function onMouseOut() {
6302
- uiStore.clearItemHoverDetail();
6303
- },
6304
- onCancelContextMenu: function onCancelContextMenu() {
6305
- uiStore.clearContextMenu();
6306
- }
6307
- }));
6308
- }
6309
-
6310
- return slots;
6311
- };
6312
-
6313
- return React__default.createElement(SlotsContainer, {
6314
- title: itemContainer.name || 'Container',
6315
- onPositionChange: function onPositionChange(_ref2) {
6316
- var x = _ref2.x,
6317
- y = _ref2.y;
6318
- setDraggablePosition({
6319
- x: x,
6320
- y: y
6321
- });
6322
- },
6323
- onOutsideClick: function onOutsideClick() {
6324
- uiStore.clearContextMenu();
6325
- uiStore.clearItemHoverDetail();
6326
- },
6327
- onClose: onClose
6328
- }, React__default.createElement(ItemsContainer, {
6329
- className: "item-container-body"
6330
- }, onRenderSlots()), (_uiStore$contextMenu = uiStore.contextMenu) != null && _uiStore$contextMenu.visible ? React__default.createElement(ListMenu, {
6331
- x: uiStore.contextMenu.posX - draggablePosition.x,
6332
- y: uiStore.contextMenu.posY - draggablePosition.y,
6333
- options: uiStore.contextMenu.contextActions,
6334
- onSelected: onSelected
6335
- }) : null, (_uiStore$onHoverDetai = uiStore.onHoverDetail) != null && _uiStore$onHoverDetai.visible ? React__default.createElement(ItemCard, {
6336
- item: uiStore.onHoverDetail.item,
6337
- x: uiStore.onHoverDetail.posX - draggablePosition.x,
6338
- y: uiStore.onHoverDetail.posY - draggablePosition.y
6339
- }) : null);
6340
- });
6341
- var ItemsContainer = /*#__PURE__*/styled.div.withConfig({
6342
- displayName: "ItemContainer__ItemsContainer",
6343
- componentId: "sc-15y5p9l-0"
6344
- })(["max-width:280px;display:flex;justify-content:center;flex-wrap:wrap;"]);
6345
-
6346
- var img$1 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAP1BMVEUAAAA7FyVxQTsUEBPj5v////+5v/tCJDOOUlIiHBr1oJfptaO6dWr61rhzFy1bMTjoanMUNGQoXMQkn97+88DQ3IhAAAAAAXRSTlMAQObYZgAAAAFiS0dEBfhv6ccAAAAHdElNRQfmAw4VOBC7c5LYAAABM0lEQVQ4y3XRi5KDIAwFUAUkbrBgpP//rZsHVHQ009qZ3tPboNN0zmwzvcw8O5sX4y0NOg/Et3jRCXF+ziULorjkOQ9gE24dvuUAzq08DiCO4pe3WN7zCP56vmpubBReQYC11YPS86ySxxCsAABTSgjb5m4g8nfbxvFHBkH2OEEvAItVuCuIsgGgl+Gcr7kDXxhEAx55A2SQEEeQeZwUaIP8Tbo05B0RFPhItAjgj1w6cDnhLluDj+Egkh3pCCP4pKQAw1IPO0W9Nti5gW9RP2dKA3BZd2Dw+baYX+Nt4GM00O4S3kEpF6Alb2Bv4LeC3kkGfAW0/p0RPoJVKr63ghHsKuRh5DIUKOAlGOwrtt9fQekAEfmhZslHUDoglB0zjfkJigN7UnTQQ4GBWomoVhEN/AOPSBh38gy+fwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMi0wMy0xNFQyMTo1NTo1MSswMDowMJcc0eEAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjItMDMtMTRUMjE6NTU6NTErMDA6MDDmQWldAAAAAElFTkSuQmCC';
6347
-
6348
- var img$2 = 'data:image/gif;base64,R0lGODlhQAAgAPIAAAAAAA0NDRERESIiIigoKFlZWf///wAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtJbWFnZU1hZ2ljaw5nYW1tYT0wLjQ1NDU0NQAh+QQBFAAAACwAAAAAQAAgAAAD/wi63P4wykmrvTjrzbv/YAgIZGmeaKquakQWcCzPdG3fNukIeO//PQGDBywafcIF8chswpKKZcxApTqvNOiIZi0YsODncFaFlcNOrdTbJVff0/c3Lp/Xs2N37cy2ndt6ZnhKXHdsc4d7VnwyfIxqPWWOXXWLgHSGYoSNbZKVZp2WiJyjg1GFcaClqaqJhasyUAFrh3Cur3KqubWXBQIBAAEDtDeMaEEDAcLEx2gCycvN0jHPysPT09XR2M3a19zH3gTM4EYCBNDD4yzs7e4r48nB6gT19vf4+fr7/P3P8sKGvRtIkMUAeQoCHlzIsKHDhxAjSoTWQJnFixgzatzIsQWjRQYJAAAh/wtJbWFnZU1hZ2ljaw5nYW1tYT0wLjQ1NDU0NQAh+QQBFAAAACwAAAAAQAAgAAAD8Ai63P4wykmrvTjrzbv/YCiOlGCeaKqubMtGZiHPdG3feI6bjqD/wOBPwPAJj0ggcWFMOp+ypaI5M1it0KxNCqDKsAWDdhwt1q5fMPnJ9aJt17g4HafJ3/et+Tzn99V+aThqfTNtcHlhhIBVWG+BdDSHOmiPeHdij3aYhZONf46YkZGanzpSAV6KjaOIpqWtNwIBAAEDqqKKhZuJnHSwAgMBtqo5sGs5wcO3yM01ysTO0gXQzNPN1cXXUNnbyNna3kcmwrW3Lujp6ugD5bbn6/HyLe20Cu/t+fr7/P3+/wCF2VswrKDBgwgTKlzIsCCDBAA7';
6349
-
6350
- var chunkString = function chunkString(str, length) {
6351
- return str.match(new RegExp('.{1,' + length + '}', 'g'));
6352
- };
6185
+ var chunkString = function chunkString(str, length) {
6186
+ return str.match(new RegExp('.{1,' + length + '}', 'g'));
6187
+ };
6353
6188
 
6354
6189
  var DynamicText = function DynamicText(_ref) {
6355
6190
  var text = _ref.text,
@@ -6424,13 +6259,13 @@ var NPCDialogText = function NPCDialogText(_ref) {
6424
6259
  return document.removeEventListener('keydown', onHandleSpacePress);
6425
6260
  };
6426
6261
  }, [chunkIndex]);
6427
- return React__default.createElement(Container$7, null, React__default.createElement(DynamicText, {
6262
+ return React__default.createElement(Container$8, null, React__default.createElement(DynamicText, {
6428
6263
  text: (textChunks == null ? void 0 : textChunks[chunkIndex]) || '',
6429
6264
  onFinish: onEndStep,
6430
6265
  onStart: onStartStep
6431
6266
  }));
6432
6267
  };
6433
- var Container$7 = /*#__PURE__*/styled.div.withConfig({
6268
+ var Container$8 = /*#__PURE__*/styled.div.withConfig({
6434
6269
  displayName: "NPCDialogText__Container",
6435
6270
  componentId: "sc-1cxkdh9-0"
6436
6271
  })([""]);
@@ -6602,7 +6437,7 @@ var QuestionDialog = function QuestionDialog(_ref) {
6602
6437
  });
6603
6438
  };
6604
6439
 
6605
- return React__default.createElement(Container$8, null, React__default.createElement(QuestionContainer, null, React__default.createElement(DynamicText, {
6440
+ return React__default.createElement(Container$9, null, React__default.createElement(QuestionContainer, null, React__default.createElement(DynamicText, {
6606
6441
  text: currentQuestion.text,
6607
6442
  onStart: function onStart() {
6608
6443
  return setCanShowAnswers(false);
@@ -6612,7 +6447,7 @@ var QuestionDialog = function QuestionDialog(_ref) {
6612
6447
  }
6613
6448
  })), canShowAnswers && React__default.createElement(AnswersContainer, null, onRenderCurrentAnswers()));
6614
6449
  };
6615
- var Container$8 = /*#__PURE__*/styled.div.withConfig({
6450
+ var Container$9 = /*#__PURE__*/styled.div.withConfig({
6616
6451
  displayName: "QuestionDialog__Container",
6617
6452
  componentId: "sc-bxc5u0-0"
6618
6453
  })(["display:flex;word-break:break-all;box-sizing:border-box;justify-content:flex-start;align-items:flex-start;flex-wrap:wrap;"]);
@@ -6676,7 +6511,7 @@ var NPCDialog = function NPCDialog(_ref) {
6676
6511
  }
6677
6512
  })), type === exports.NPCDialogType.TextAndThumbnail && React__default.createElement(ThumbnailContainer, null, React__default.createElement(NPCThumbnail, {
6678
6513
  src: imagePath || img$1
6679
- }))) : React__default.createElement(React__default.Fragment, null, React__default.createElement(Container$9, null, React__default.createElement(TextContainer$1, {
6514
+ }))) : React__default.createElement(React__default.Fragment, null, React__default.createElement(Container$a, null, React__default.createElement(TextContainer$1, {
6680
6515
  flex: type === exports.NPCDialogType.TextAndThumbnail ? '70%' : '100%'
6681
6516
  }, React__default.createElement(NPCDialogText, {
6682
6517
  onStartStep: function onStartStep() {
@@ -6698,7 +6533,7 @@ var NPCDialog = function NPCDialog(_ref) {
6698
6533
  src: img$2
6699
6534
  })));
6700
6535
  };
6701
- var Container$9 = /*#__PURE__*/styled.div.withConfig({
6536
+ var Container$a = /*#__PURE__*/styled.div.withConfig({
6702
6537
  displayName: "NPCDialog__Container",
6703
6538
  componentId: "sc-1b4aw74-0"
6704
6539
  })(["display:flex;width:100%;height:100%;box-sizing:border-box;justify-content:center;align-items:flex-start;position:relative;"]);
@@ -6745,7 +6580,7 @@ var ProgressBar = function ProgressBar(_ref) {
6745
6580
  return value * 100 / max;
6746
6581
  };
6747
6582
 
6748
- return React__default.createElement(Container$a, {
6583
+ return React__default.createElement(Container$b, {
6749
6584
  className: "rpgui-progress",
6750
6585
  "data-value": calculatePercentageValue(max, value) / 100,
6751
6586
  "data-rpguitype": "progress",
@@ -6774,7 +6609,7 @@ var TextOverlay = /*#__PURE__*/styled.div.withConfig({
6774
6609
  displayName: "ProgressBar__TextOverlay",
6775
6610
  componentId: "sc-qa6fzh-1"
6776
6611
  })(["width:100%;position:relative;"]);
6777
- var Container$a = /*#__PURE__*/styled.div.withConfig({
6612
+ var Container$b = /*#__PURE__*/styled.div.withConfig({
6778
6613
  displayName: "ProgressBar__Container",
6779
6614
  componentId: "sc-qa6fzh-2"
6780
6615
  })(["display:flex;flex-direction:column;min-width:", "px;width:", "%;justify-content:start;align-items:flex-start;", ""], function (props) {
@@ -6785,6 +6620,64 @@ var Container$a = /*#__PURE__*/styled.div.withConfig({
6785
6620
  return props.style;
6786
6621
  });
6787
6622
 
6623
+ var img$3 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAASRJREFUWIXtl7EKwjAQhn8llg4dOig4uApu+gaib+Fj+CL6MO6Kk6N1ExRdHDJ06NChFEEnL6kmGkE5wf7TJVzbn+96uRb4d1VcE+tB62VO4HkUp3l+MeWEvk/P3Md7VF0NfEvsBsT9hg21C940zynuNZvG+0RS6tdW2AmwGxBAEXvo+xQnWUa4XPAOOmdtpeLF9qHSJHYC7AYEYMfuhtosHXskJcWB59FBFOMHCLAbEIAduwvqd6V3E/ADBNgN3LqA3kz9rJ6MQkqcre2HyTvSZ0rZBYDqAtrot2tUjuE0MY7d+Tg0bT+R6qxyHN9LAECcnmhjuSt8EVE5ui3VBbbS6LKVKZLFNTsBdgMf/S/Qy7Q5nY1lajfUOF4dD/wE2A2UYtcVzKJVOti5A44AAAAASUVORK5CYII=';
6624
+
6625
+ var img$4 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAASZJREFUWIVjYBjpgJFYhSI8MgTVGBoJwNnnz334j02Nk5MY3M5Vm84xMBHrAFqBAXcARhTgCmpighcZHDvhhFXcymIfnP3myxPGAQ+BAXcAIwMDarA7OYnB2fv2vcIa1LiC98fKc1jFOcKN4OzRKEAHLAwMuIOd1KDGBZCD3dBIAJ7zdh96MvAhMOAOYGFgwB3spAY1MeD8uQ8o/AEPgQF3ACwXwFOmlcU+eHTsKxTApocioC/DAmfvvTEIQmDAHYBRF9irssLZB2//xloXFDqIEDTY1/APVnGnfkQuGK0LGBigueDNlydwgYO3UVpE8NwhI4CImv4Dbwi2iBgYCEcTA8MgCIEBdwBV+wXI0fTkA/YcpCrKBrfz+P17Ax8CA+6AUTDgAACD+FSXdO/L2QAAAABJRU5ErkJggg==';
6626
+
6627
+ var img$5 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAARlJREFUWIXtl78KwjAQxr9IFIcODh0cuigKburoJLr7bD6S+ga6CV07CHZw6FCqoFPzp1w0g3KK/abjeinH78s1DfDvEgAwCAcqccnzO1UYtFqijLOiePniNEu8Gmh4VX1Q7A1IwMY+6XbJwv3pRFpjyrQJQUTWVK1hJ8DegHz2cDG6GXGo4s2RXuayqdNua2ugrUmzhJ8AewMSsHevjVFPhG2Hjm29niDTjjT7AgLsDUjA79vuIx9rKpMi2AmwN1BOgUq8y47VVNux3qYqrqegKgEAYRCRx7G5q02kLi3XFzI/HzYV9l18Vfn6LACI49iF3YXX1DiSCvUh0Wur2E2xE2BvQADArNdXifhckH81Lrwu1feCWj+jBx1LX0kx8GexAAAAAElFTkSuQmCC';
6628
+
6629
+ var img$6 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAS5JREFUWIXtl7Fqw0AMhv8LLmTI4KFk8pJAtkKJpzRDCoasHZvnyJP0OZqx3Y90KZ3OdM7qKfHgIUNpAu1U+TA654YGUXr/JGRx/vmEdDbw36UA4P4upYTW2y+ucJzG6ifOTXXy4HJfeBnoeFWdUeIGFABc9hLC/vqWsYXTiT55mE+bmq0RJyBuIGp7+PFoKNbLmOLuIuXKMZ1odoKyrE+t0VYny30hT0DcgAKA+eyKErmpCKON3UctraHYbsfqycgTEDcQAX673Uf21Niyl1tjUpQ4AXEDEQBcJ/U+ei+Ov/4S9xSERcRcx67l85y3XhsAgId1yeZvRxeE/WVzoHy4CwDmOnahduG1lcQ16qKqUTex2xInIG5AAcDNYEiJze6T/apx4XUp/BcE/Rl9A77uW6caXAGtAAAAAElFTkSuQmCC';
6630
+
6631
+ var PropertySelect = function PropertySelect(_ref) {
6632
+ var availableProperties = _ref.availableProperties;
6633
+
6634
+ var _useState = React.useState(0),
6635
+ currentIndex = _useState[0],
6636
+ setCurrentIndex = _useState[1];
6637
+
6638
+ var propertiesLength = availableProperties.length - 1;
6639
+
6640
+ var onLeftClick = function onLeftClick() {
6641
+ if (currentIndex === 0) setCurrentIndex(propertiesLength);else setCurrentIndex(function (index) {
6642
+ return index - 1;
6643
+ });
6644
+ };
6645
+
6646
+ var onRightClick = function onRightClick() {
6647
+ if (currentIndex === propertiesLength) setCurrentIndex(0);else setCurrentIndex(function (index) {
6648
+ return index + 1;
6649
+ });
6650
+ };
6651
+
6652
+ return React__default.createElement(Container$c, null, React__default.createElement(TextOverlay$1, null, React__default.createElement(Item, null, availableProperties[currentIndex].name)), React__default.createElement("div", {
6653
+ className: "rpgui-progress-track"
6654
+ }), React__default.createElement(LeftArrow, {
6655
+ onClick: onLeftClick
6656
+ }), React__default.createElement(RightArrow, {
6657
+ onClick: onRightClick
6658
+ }));
6659
+ };
6660
+ var Item = /*#__PURE__*/styled.span.withConfig({
6661
+ displayName: "PropertySelect__Item",
6662
+ componentId: "sc-12uqx6s-0"
6663
+ })(["font-size:1rem;color:white;text-align:center;z-index:1;position:absolute;left:50%;transform:translateX(-50%);top:12px;"]);
6664
+ var TextOverlay$1 = /*#__PURE__*/styled.div.withConfig({
6665
+ displayName: "PropertySelect__TextOverlay",
6666
+ componentId: "sc-12uqx6s-1"
6667
+ })(["width:100%;position:relative;"]);
6668
+ var Container$c = /*#__PURE__*/styled.div.withConfig({
6669
+ displayName: "PropertySelect__Container",
6670
+ componentId: "sc-12uqx6s-2"
6671
+ })(["position:relative;display:flex;flex-direction:column;justify-content:start;align-items:flex-start;min-width:100px;width:40%;"]);
6672
+ var LeftArrow = /*#__PURE__*/styled.div.withConfig({
6673
+ displayName: "PropertySelect__LeftArrow",
6674
+ componentId: "sc-12uqx6s-3"
6675
+ })(["background-image:url(", ");background-size:100% 100%;left:0;position:absolute;width:40px;height:42px;:active{background-image:url(", ");}"], img$4, img$3);
6676
+ var RightArrow = /*#__PURE__*/styled.div.withConfig({
6677
+ displayName: "PropertySelect__RightArrow",
6678
+ componentId: "sc-12uqx6s-4"
6679
+ })(["background-image:url(", ");right:0;position:absolute;width:40px;background-size:100% 100%;height:42px;:active{background-image:url(", ");}"], img$6, img$5);
6680
+
6788
6681
  var InputRadio = function InputRadio(_ref) {
6789
6682
  var name = _ref.name,
6790
6683
  items = _ref.items,
@@ -6874,323 +6767,17 @@ var Input$1 = /*#__PURE__*/styled.input.withConfig({
6874
6767
  componentId: "sc-v8mte9-0"
6875
6768
  })(["opacity:0;"]);
6876
6769
 
6877
- var frames$1 = {
6878
- "metamask-large.png": {
6879
- frame: {
6880
- x: 0,
6881
- y: 0,
6882
- w: 33,
6883
- h: 30
6884
- },
6885
- rotated: false,
6886
- trimmed: false,
6887
- spriteSourceSize: {
6888
- x: 0,
6889
- y: 0,
6890
- w: 33,
6891
- h: 30
6892
- },
6893
- sourceSize: {
6894
- w: 33,
6895
- h: 30
6896
- },
6897
- pivot: {
6898
- x: 0.5,
6899
- y: 0.5
6900
- }
6901
- },
6902
- "chat-large.png": {
6903
- frame: {
6904
- x: 0,
6905
- y: 30,
6906
- w: 31,
6907
- h: 29
6908
- },
6909
- rotated: false,
6910
- trimmed: true,
6911
- spriteSourceSize: {
6912
- x: 1,
6913
- y: 3,
6914
- w: 31,
6915
- h: 29
6916
- },
6917
- sourceSize: {
6918
- w: 32,
6919
- h: 32
6920
- },
6921
- pivot: {
6922
- x: 0.5,
6923
- y: 0.5
6924
- }
6925
- },
6926
- "equipment.png": {
6927
- frame: {
6928
- x: 33,
6929
- y: 0,
6930
- w: 17,
6931
- h: 16
6932
- },
6933
- rotated: false,
6934
- trimmed: false,
6935
- spriteSourceSize: {
6936
- x: 0,
6937
- y: 0,
6938
- w: 17,
6939
- h: 16
6940
- },
6941
- sourceSize: {
6942
- w: 17,
6943
- h: 16
6944
- },
6945
- pivot: {
6946
- x: 0.5,
6947
- y: 0.5
6948
- }
6949
- },
6950
- "inventory.png": {
6951
- frame: {
6952
- x: 33,
6953
- y: 16,
6954
- w: 17,
6955
- h: 16
6956
- },
6957
- rotated: false,
6958
- trimmed: false,
6959
- spriteSourceSize: {
6960
- x: 0,
6961
- y: 0,
6962
- w: 17,
6963
- h: 16
6964
- },
6965
- sourceSize: {
6966
- w: 17,
6967
- h: 16
6968
- },
6969
- pivot: {
6970
- x: 0.5,
6971
- y: 0.5
6972
- }
6973
- },
6974
- "icon-base-blue.png": {
6975
- frame: {
6976
- x: 31,
6977
- y: 32,
6978
- w: 16,
6979
- h: 16
6980
- },
6981
- rotated: false,
6982
- trimmed: false,
6983
- spriteSourceSize: {
6984
- x: 0,
6985
- y: 0,
6986
- w: 16,
6987
- h: 16
6988
- },
6989
- sourceSize: {
6990
- w: 16,
6991
- h: 16
6992
- },
6993
- pivot: {
6994
- x: 0.5,
6995
- y: 0.5
6996
- }
6997
- },
6998
- "icon-base-brown.png": {
6999
- frame: {
7000
- x: 50,
7001
- y: 0,
7002
- w: 16,
7003
- h: 16
7004
- },
7005
- rotated: false,
7006
- trimmed: false,
7007
- spriteSourceSize: {
7008
- x: 0,
7009
- y: 0,
7010
- w: 16,
7011
- h: 16
7012
- },
7013
- sourceSize: {
7014
- w: 16,
7015
- h: 16
7016
- },
7017
- pivot: {
7018
- x: 0.5,
7019
- y: 0.5
7020
- }
7021
- },
7022
- "chat-small.png": {
7023
- frame: {
7024
- x: 50,
7025
- y: 16,
7026
- w: 16,
7027
- h: 16
7028
- },
7029
- rotated: false,
7030
- trimmed: true,
7031
- spriteSourceSize: {
7032
- x: 1,
7033
- y: 0,
7034
- w: 16,
7035
- h: 16
7036
- },
7037
- sourceSize: {
7038
- w: 17,
7039
- h: 16
7040
- },
7041
- pivot: {
7042
- x: 0.5,
7043
- y: 0.5
7044
- }
7045
- },
7046
- "icon-base-gold.png": {
7047
- frame: {
7048
- x: 47,
7049
- y: 32,
7050
- w: 16,
7051
- h: 16
7052
- },
7053
- rotated: false,
7054
- trimmed: false,
7055
- spriteSourceSize: {
7056
- x: 0,
7057
- y: 0,
7058
- w: 16,
7059
- h: 16
7060
- },
7061
- sourceSize: {
7062
- w: 16,
7063
- h: 16
7064
- },
7065
- pivot: {
7066
- x: 0.5,
7067
- y: 0.5
7068
- }
7069
- },
7070
- "equipment-raw.png": {
7071
- frame: {
7072
- x: 0,
7073
- y: 59,
7074
- w: 15,
7075
- h: 13
7076
- },
7077
- rotated: false,
7078
- trimmed: true,
7079
- spriteSourceSize: {
7080
- x: 0,
7081
- y: 0,
7082
- w: 15,
7083
- h: 13
7084
- },
7085
- sourceSize: {
7086
- w: 16,
7087
- h: 13
7088
- },
7089
- pivot: {
7090
- x: 0.5,
7091
- y: 0.5
7092
- }
7093
- },
7094
- "metamask-small.png": {
7095
- frame: {
7096
- x: 31,
7097
- y: 48,
7098
- w: 15,
7099
- h: 15
7100
- },
7101
- rotated: false,
7102
- trimmed: true,
7103
- spriteSourceSize: {
7104
- x: 1,
7105
- y: 0,
7106
- w: 15,
7107
- h: 15
7108
- },
7109
- sourceSize: {
7110
- w: 16,
7111
- h: 16
7112
- },
7113
- pivot: {
7114
- x: 0.5,
7115
- y: 0.5
7116
- }
7117
- },
7118
- "settings.png": {
7119
- frame: {
7120
- x: 46,
7121
- y: 48,
7122
- w: 14,
7123
- h: 14
7124
- },
7125
- rotated: false,
7126
- trimmed: true,
7127
- spriteSourceSize: {
7128
- x: 1,
7129
- y: 1,
7130
- w: 14,
7131
- h: 14
7132
- },
7133
- sourceSize: {
7134
- w: 16,
7135
- h: 16
7136
- },
7137
- pivot: {
7138
- x: 0.5,
7139
- y: 0.5
7140
- }
7141
- },
7142
- "inventory-raw.png": {
7143
- frame: {
7144
- x: 15,
7145
- y: 59,
7146
- w: 13,
7147
- h: 13
7148
- },
7149
- rotated: false,
7150
- trimmed: true,
7151
- spriteSourceSize: {
7152
- x: 1,
7153
- y: 2,
7154
- w: 13,
7155
- h: 13
7156
- },
7157
- sourceSize: {
7158
- w: 16,
7159
- h: 16
7160
- },
7161
- pivot: {
7162
- x: 0.5,
7163
- y: 0.5
7164
- }
7165
- }
7166
- };
7167
- var meta$1 = {
7168
- app: "http://free-tex-packer.com",
7169
- version: "0.6.7",
7170
- image: "icons.png",
7171
- format: "RGBA8888",
7172
- size: {
7173
- w: 66,
7174
- h: 72
7175
- },
7176
- scale: 1
7177
- };
7178
- var iconsAtlasJSON = {
7179
- frames: frames$1,
7180
- meta: meta$1
7181
- };
7182
-
7183
- var img$3 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEIAAABICAMAAAB1EdO8AAAAkFBMVEUAAADtgCT////1hB92PhridiXX19dVPioVFRXQt0W2nSuIdWScgxFuW0mpfFInt+iGmqJ7UTEUpNXEmWxUanQBZolmZmLj+P/MYiguIhhtZWVOMRxNLRWWlpG7vrq6vbmoqKjArJ3VwLQWFhZ7eXl6ZlTq7OzutCkhM0eqfVHBrZ6/q5z/5HjKYSj83SDxgSCOHfTqAAAAAnRSTlMADpEr4D8AAAN0SURBVFjDrdcBW9owEAbgGyNtF2m1CDhBtDIR1Dn//7/b3TXtl6SUtTz7HmlusrxPEgqcRN+oP/rsLAxRGoQkU2PoVIyZEgs/wszSqyCpCFM2zAnA8DNM2B+r1UomyyhEHhIiwIgECRN2tX1aifC0rYm8Q6gRIkYEEE9iyNUReUTA+N5EBRcm1KgFR+Qe4QQYEEA4QwVH5D6BgHAACLcXj8hjAgYEEBsWamMDIgfhxxHTkNiUG3cWXIHIGyI0lAh+Q7KKggXZS4FVSEB0NxITZbGxIpUgNB3CNIRvkG6Ef9wgBFIT1AIggBDNZLrVVVhhhEBAyERHoHIET0XcKhAlSKZ1CQ3RsDc75pmoVCKNp2RBvEX8lGipVbuM9CpMmlWJlyoDYZqJdQGCj6yUpOn9vRJJMmmTJJkIzvg6Hh1xPH6pIGEiLwuNGEpMvIBoHH1oQOzL4va2uK2NLgEhJJCUhTogXqqJewwn/vwOiZeJewhhJHqWnwbSp56oJt3vy/JwkPPs2YhneB85ECjd80kcDrd8HP8gjEza/ZLs9B8+wekhkoAwu11N8GjOEZXOxa0F48MjPlqhS1AmQnCDN/+X3p93zxy+vnu/TvOiUKAAwQIFwZfQc53gibS5OfUWvxIiFrJzUSIvJSrkuRCxUCX9qdTofD6EApOcyakknIyWQeIPIEdM+pNky+s7L9fLWdRsDCHurr3cLWf2AmIeEfYCYh4R9gJiHhF2NMGJCHuCSNbrdXcEMY8I2yVeqqRa87gORxDziLBdIpkkOjUaQcwjwo5chSYi7Miz0ESEHfWKuESEHU4gEWEHEvPobWb9DCD+y5udpmjNzdQViwUhAwgxnDCtpy9ubhZgQPR8akUNrU5vHi2BL5ZuKiHUUEGJNiAyFqqsJ9Q2xXVBaiwWENTQrybqSdsUG6OE7uD1VfcSEtQbXoEQepF9iED0qsVAgqR9Y0JaOeojzguygKORB1fUs5HzgoaJugiPEwYNJ7ovqob/gPXHtk1t/tpsG1qucWuFxPZxJcPjVga0qTB20reIcPIG17li6FUJtKk10XYdQnTeZjAg1AHhWpemRrqGChS0qTQsMEiDNnUE8cCCGlxR0KYOFsoHdxZcERrEUat4c6/I2wNdSpQ8V6QSxOiN8E8zBG3qcIEvUmjttakj9hHWpWSU8BfjYZgnq0kqDAAAAABJRU5ErkJggg==';
7184
-
7185
6770
  var SpriteIcon = function SpriteIcon(_ref) {
7186
6771
  var onClick = _ref.onClick,
7187
6772
  spriteKey = _ref.spriteKey,
7188
6773
  baseSpriteKey = _ref.baseSpriteKey,
7189
- imgStyle = _ref.imgStyle;
7190
- return React__default.createElement(Container$b, null, baseSpriteKey && React__default.createElement(Slot, null, React__default.createElement(SpriteFromAtlas, {
6774
+ imgStyle = _ref.imgStyle,
6775
+ iconsAtlasJSON = _ref.iconsAtlasJSON,
6776
+ iconsAtlasIMG = _ref.iconsAtlasIMG;
6777
+ return React__default.createElement(Container$d, null, baseSpriteKey && React__default.createElement(Slot, null, React__default.createElement(SpriteFromAtlas, {
7191
6778
  onClick: onClick,
7192
6779
  atlasJSON: iconsAtlasJSON,
7193
- atlasIMG: img$3,
6780
+ atlasIMG: iconsAtlasIMG,
7194
6781
  spriteKey: baseSpriteKey,
7195
6782
  width: 32,
7196
6783
  height: 32,
@@ -7200,7 +6787,7 @@ var SpriteIcon = function SpriteIcon(_ref) {
7200
6787
  })), React__default.createElement(Slot, null, React__default.createElement(SpriteFromAtlas, {
7201
6788
  onClick: onClick,
7202
6789
  atlasJSON: iconsAtlasJSON,
7203
- atlasIMG: img$3,
6790
+ atlasIMG: iconsAtlasIMG,
7204
6791
  spriteKey: spriteKey,
7205
6792
  width: 28,
7206
6793
  height: 28,
@@ -7211,7 +6798,7 @@ var SpriteIcon = function SpriteIcon(_ref) {
7211
6798
  imgStyle: imgStyle
7212
6799
  })));
7213
6800
  };
7214
- var Container$b = /*#__PURE__*/styled.div.withConfig({
6801
+ var Container$d = /*#__PURE__*/styled.div.withConfig({
7215
6802
  displayName: "SpriteIcon__Container",
7216
6803
  componentId: "sc-vi5t1x-0"
7217
6804
  })(["position:relative;width:32px;height:32px;display:flex;justify-content:center;align-items:center;"]);
@@ -7226,7 +6813,7 @@ var SimpleProgressBar = function SimpleProgressBar(_ref) {
7226
6813
  bgColor = _ref$bgColor === void 0 ? 'red' : _ref$bgColor,
7227
6814
  _ref$margin = _ref.margin,
7228
6815
  margin = _ref$margin === void 0 ? 20 : _ref$margin;
7229
- return React__default.createElement(Container$c, {
6816
+ return React__default.createElement(Container$e, {
7230
6817
  className: "simple-progress-bar"
7231
6818
  }, React__default.createElement(ProgressBarContainer, {
7232
6819
  margin: margin
@@ -7235,7 +6822,7 @@ var SimpleProgressBar = function SimpleProgressBar(_ref) {
7235
6822
  bgColor: bgColor
7236
6823
  }))));
7237
6824
  };
7238
- var Container$c = /*#__PURE__*/styled.div.withConfig({
6825
+ var Container$e = /*#__PURE__*/styled.div.withConfig({
7239
6826
  displayName: "SimpleProgressBar__Container",
7240
6827
  componentId: "sc-mbeil3-0"
7241
6828
  })(["display:flex;justify-content:center;align-items:center;width:100%;"]);
@@ -7323,9 +6910,11 @@ var SkillsContainer = function SkillsContainer(_ref) {
7323
6910
  var onCloseButton = _ref.onCloseButton,
7324
6911
  skill = _ref.skill;
7325
6912
  return React__default.createElement(SkillsDraggableContainer, {
7326
- title: "Skills",
7327
- onCloseButton: onCloseButton
7328
- }, React__default.createElement(SkillSplitDiv, null, React__default.createElement("p", null, "Combat Skills"), React__default.createElement("hr", {
6913
+ title: "Skills"
6914
+ }, onCloseButton && React__default.createElement(CloseButton$2, {
6915
+ onClick: onCloseButton,
6916
+ onTouchStart: onCloseButton
6917
+ }, "X"), React__default.createElement(SkillSplitDiv, null, React__default.createElement("p", null, "Combat Skills"), React__default.createElement("hr", {
7329
6918
  className: "golden"
7330
6919
  })), React__default.createElement(SkillProgressBar, {
7331
6920
  skillName: 'First',
@@ -7460,6 +7049,10 @@ var SkillSplitDiv = /*#__PURE__*/styled.div.withConfig({
7460
7049
  displayName: "SkillsContainer__SkillSplitDiv",
7461
7050
  componentId: "sc-1g0c67q-1"
7462
7051
  })(["width:100%;font-size:11px;margin-top:10px;hr{margin:0px;padding:0px;}p{margin-bottom:0px;}"]);
7052
+ var CloseButton$2 = /*#__PURE__*/styled.div.withConfig({
7053
+ displayName: "SkillsContainer__CloseButton",
7054
+ componentId: "sc-1g0c67q-2"
7055
+ })(["position:absolute;top:2px;right:2px;color:white;z-index:22;font-size:0.7rem;"]);
7463
7056
 
7464
7057
  var TextArea = function TextArea(_ref) {
7465
7058
  var props = _extends({}, _ref);
@@ -7472,11 +7065,11 @@ var Truncate = function Truncate(_ref) {
7472
7065
  var _ref$maxLines = _ref.maxLines,
7473
7066
  maxLines = _ref$maxLines === void 0 ? 1 : _ref$maxLines,
7474
7067
  children = _ref.children;
7475
- return React__default.createElement(Container$d, {
7068
+ return React__default.createElement(Container$f, {
7476
7069
  maxLines: maxLines
7477
7070
  }, children);
7478
7071
  };
7479
- var Container$d = /*#__PURE__*/styled.div.withConfig({
7072
+ var Container$f = /*#__PURE__*/styled.div.withConfig({
7480
7073
  displayName: "Truncate__Container",
7481
7074
  componentId: "sc-6x00qb-0"
7482
7075
  })(["display:-webkit-box;max-width:100%;max-height:100%;-webkit-line-clamp:", ";-webkit-box-orient:vertical;overflow:hidden;"], function (props) {
@@ -7497,6 +7090,7 @@ exports.ItemSlot = ItemSlot;
7497
7090
  exports.ListMenu = ListMenu;
7498
7091
  exports.NPCDialog = NPCDialog;
7499
7092
  exports.ProgressBar = ProgressBar;
7093
+ exports.PropertySelect = PropertySelect;
7500
7094
  exports.QuestionDialog = QuestionDialog;
7501
7095
  exports.RPGUIContainer = RPGUIContainer;
7502
7096
  exports.RPGUIRoot = RPGUIRoot;