@rpg-engine/long-bow 0.3.86 → 0.3.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.
Files changed (148) hide show
  1. package/LICENSE +20 -20
  2. package/README.md +181 -181
  3. package/dist/long-bow.cjs.development.js +958 -952
  4. package/dist/long-bow.cjs.development.js.map +1 -1
  5. package/dist/long-bow.cjs.production.min.js +1 -1
  6. package/dist/long-bow.cjs.production.min.js.map +1 -1
  7. package/dist/long-bow.esm.js +739 -733
  8. package/dist/long-bow.esm.js.map +1 -1
  9. package/package.json +100 -100
  10. package/src/components/Abstractions/ModalPortal.tsx +22 -22
  11. package/src/components/Abstractions/SlotsContainer.tsx +62 -62
  12. package/src/components/Arrow/SelectArrow.tsx +69 -69
  13. package/src/components/Arrow/img/arrow01-left-clicked.png +0 -0
  14. package/src/components/Arrow/img/arrow01-left.png +0 -0
  15. package/src/components/Arrow/img/arrow01-right-clicked.png +0 -0
  16. package/src/components/Arrow/img/arrow01-right.png +0 -0
  17. package/src/components/Arrow/img/arrow02-left-clicked.png +0 -0
  18. package/src/components/Arrow/img/arrow02-left.png +0 -0
  19. package/src/components/Arrow/img/arrow02-right-clicked.png +0 -0
  20. package/src/components/Arrow/img/arrow02-right.png +0 -0
  21. package/src/components/Button.tsx +40 -40
  22. package/src/components/Character/CharacterSelection.tsx +96 -96
  23. package/src/components/CharacterStatus/CharacterStatus.tsx +120 -120
  24. package/src/components/Chat/Chat.tsx +196 -196
  25. package/src/components/Chatdeprecated/ChatDeprecated.tsx +198 -198
  26. package/src/components/CheckButton.tsx +65 -65
  27. package/src/components/CircularController/CircularController.tsx +249 -248
  28. package/src/components/CraftBook/CraftBook.tsx +241 -241
  29. package/src/components/CraftBook/MockItems.ts +77 -77
  30. package/src/components/DraggableContainer.tsx +176 -176
  31. package/src/components/Dropdown.tsx +90 -90
  32. package/src/components/DropdownSelectorContainer.tsx +42 -42
  33. package/src/components/Equipment/EquipmentSet.tsx +199 -199
  34. package/src/components/HistoryDialog.tsx +104 -104
  35. package/src/components/Input.tsx +15 -15
  36. package/src/components/Item/Cards/ItemInfo.tsx +252 -252
  37. package/src/components/Item/Cards/ItemInfoDisplay.tsx +128 -128
  38. package/src/components/Item/Cards/ItemInfoWrapper.tsx +62 -62
  39. package/src/components/Item/Cards/ItemTooltip.tsx +83 -83
  40. package/src/components/Item/Cards/MobileItemTooltip.tsx +149 -149
  41. package/src/components/Item/Inventory/ErrorBoundary.tsx +42 -42
  42. package/src/components/Item/Inventory/ItemContainer.tsx +227 -227
  43. package/src/components/Item/Inventory/ItemContainerTypes.ts +6 -6
  44. package/src/components/Item/Inventory/ItemQuantitySelector.tsx +138 -138
  45. package/src/components/Item/Inventory/ItemSlot.tsx +566 -564
  46. package/src/components/Item/Inventory/itemContainerHelper.ts +175 -175
  47. package/src/components/ListMenu.tsx +63 -63
  48. package/src/components/Multitab/Tab.tsx +66 -66
  49. package/src/components/Multitab/TabBody.tsx +13 -13
  50. package/src/components/Multitab/TabsContainer.tsx +97 -97
  51. package/src/components/NPCDialog/NPCDialog.tsx +121 -121
  52. package/src/components/NPCDialog/NPCDialogText.tsx +113 -113
  53. package/src/components/NPCDialog/NPCMultiDialog.tsx +159 -159
  54. package/src/components/NPCDialog/QuestionDialog/QuestionDialog.tsx +237 -237
  55. package/src/components/ProgressBar.tsx +92 -92
  56. package/src/components/PropertySelect/PropertySelect.tsx +106 -106
  57. package/src/components/QuestInfo/QuestInfo.tsx +233 -233
  58. package/src/components/QuestList.tsx +135 -135
  59. package/src/components/RPGUIContainer.tsx +47 -47
  60. package/src/components/RPGUIForceRenderStart.tsx +45 -45
  61. package/src/components/RPGUIRoot.tsx +14 -14
  62. package/src/components/RadioButton.tsx +53 -53
  63. package/src/components/RadioInput/RadioButton.tsx +96 -96
  64. package/src/components/RadioInput/RadioInput.tsx +102 -102
  65. package/src/components/RadioInput/instruments.ts +15 -15
  66. package/src/components/RangeSlider.tsx +78 -78
  67. package/src/components/RelativeListMenu.tsx +90 -90
  68. package/src/components/ScrollList.tsx +79 -79
  69. package/src/components/Shortcuts/Shortcuts.tsx +152 -151
  70. package/src/components/Shortcuts/ShortcutsSetter.tsx +133 -132
  71. package/src/components/Shortcuts/SingleShortcut.ts +62 -62
  72. package/src/components/SimpleProgressBar.tsx +62 -62
  73. package/src/components/SkillProgressBar.tsx +133 -133
  74. package/src/components/SkillsContainer.tsx +206 -206
  75. package/src/components/Spellbook/Spell.tsx +201 -201
  76. package/src/components/Spellbook/Spellbook.tsx +153 -153
  77. package/src/components/Spellbook/constants.ts +8 -8
  78. package/src/components/Spellbook/mockSpells.ts +60 -60
  79. package/src/components/StaticBook/StaticBook.tsx +103 -103
  80. package/src/components/TextArea.tsx +11 -11
  81. package/src/components/TimeWidget/DayNightPeriod/DayNightPeriod.tsx +35 -35
  82. package/src/components/TimeWidget/TimeWidget.tsx +65 -65
  83. package/src/components/TradingMenu/TradingItemRow.tsx +199 -198
  84. package/src/components/TradingMenu/TradingMenu.tsx +216 -216
  85. package/src/components/TradingMenu/items.mock.ts +48 -48
  86. package/src/components/Truncate.tsx +25 -25
  87. package/src/components/itemSelector/ItemSelector.tsx +136 -136
  88. package/src/components/shared/Column.tsx +16 -16
  89. package/src/components/shared/Ellipsis.tsx +65 -65
  90. package/src/components/shared/SpriteFromAtlas.tsx +104 -104
  91. package/src/components/typography/DynamicText.tsx +49 -49
  92. package/src/constants/uiColors.ts +20 -20
  93. package/src/constants/uiDevices.ts +3 -3
  94. package/src/constants/uiFonts.ts +12 -12
  95. package/src/hooks/useEventListener.ts +21 -21
  96. package/src/hooks/useOutsideAlerter.ts +25 -25
  97. package/src/index.tsx +40 -40
  98. package/src/libs/StringHelpers.ts +3 -3
  99. package/src/mocks/atlas/entities/entities.json +20215 -20215
  100. package/src/mocks/atlas/icons/icons.json +735 -735
  101. package/src/mocks/atlas/items/items.json +12086 -12086
  102. package/src/mocks/equipmentSet.mocks.ts +391 -391
  103. package/src/mocks/itemContainer.mocks.ts +563 -563
  104. package/src/mocks/skills.mocks.ts +128 -128
  105. package/src/stories/Arrow.stories.tsx +26 -26
  106. package/src/stories/Button.stories.tsx +36 -36
  107. package/src/stories/CharacterSelection.stories.tsx +45 -45
  108. package/src/stories/CharacterStatus.stories.tsx +29 -29
  109. package/src/stories/Chat.stories.tsx +187 -187
  110. package/src/stories/ChatDeprecated.stories.tsx +170 -170
  111. package/src/stories/CheckButton.stories.tsx +48 -48
  112. package/src/stories/CircullarController.stories.tsx +37 -37
  113. package/src/stories/CraftBook.stories.tsx +42 -42
  114. package/src/stories/DayNightPeriod.stories.tsx +27 -27
  115. package/src/stories/DraggableContainer.stories.tsx +28 -28
  116. package/src/stories/Dropdown.stories.tsx +46 -46
  117. package/src/stories/DropdownSelectorContainer.stories.tsx +41 -41
  118. package/src/stories/EquipmentSet.stories.tsx +65 -65
  119. package/src/stories/HistoryDialog.stories.tsx +61 -61
  120. package/src/stories/ItemContainer.stories.tsx +201 -201
  121. package/src/stories/ItemInfoDisplay.stories.tsx +33 -33
  122. package/src/stories/ItemQuantitySelector.stories.tsx +26 -26
  123. package/src/stories/ItemSelector.stories.tsx +77 -77
  124. package/src/stories/ItemTradingComponent.stories.tsx +35 -35
  125. package/src/stories/ListMenu.stories.tsx +56 -56
  126. package/src/stories/Multitab.stories.tsx +51 -51
  127. package/src/stories/NPCDialog.stories.tsx +130 -130
  128. package/src/stories/NPCMultiDialog.stories.tsx +71 -71
  129. package/src/stories/ProgressBar.stories.tsx +23 -23
  130. package/src/stories/PropertySelect.stories.tsx +40 -40
  131. package/src/stories/QuestInfo.stories.tsx +107 -107
  132. package/src/stories/QuestList.stories.tsx +82 -82
  133. package/src/stories/RPGUIContainers.stories.tsx +42 -42
  134. package/src/stories/RadioButton.stories.tsx +49 -49
  135. package/src/stories/RadioInput.stories.tsx +34 -34
  136. package/src/stories/RangeSlider.stories.tsx +64 -64
  137. package/src/stories/ScrollList.stories.tsx +85 -85
  138. package/src/stories/Shortcuts.stories.tsx +39 -39
  139. package/src/stories/SimpleProgressBar.stories.tsx +22 -22
  140. package/src/stories/SkillProgressBar.stories.tsx +34 -34
  141. package/src/stories/SkillsContainer.stories.tsx +35 -35
  142. package/src/stories/Spellbook.stories.tsx +104 -104
  143. package/src/stories/StaticBook.stories.tsx +32 -32
  144. package/src/stories/Text.stories.tsx +42 -42
  145. package/src/stories/TimeWidget.stories.tsx +27 -27
  146. package/src/stories/TradingMenu.stories.tsx +47 -47
  147. package/src/types/eventTypes.ts +4 -4
  148. package/src/types/index.d.ts +2 -2
@@ -33116,7 +33116,8 @@ var CircularController = function CircularController(_ref) {
33116
33116
  spriteKey: shared.getItemTextureKeyPath({
33117
33117
  key: _payload.texturePath,
33118
33118
  texturePath: _payload.texturePath,
33119
- stackQty: _payload.stackQty || 1
33119
+ stackQty: _payload.stackQty || 1,
33120
+ isStackable: _payload.isStackable
33120
33121
  }, atlasJSON),
33121
33122
  width: 32,
33122
33123
  height: 32,
@@ -33739,7 +33740,8 @@ var ItemSlot = /*#__PURE__*/mobxReactLite.observer(function (_ref) {
33739
33740
  spriteKey: shared.getItemTextureKeyPath({
33740
33741
  key: itemToRender.texturePath,
33741
33742
  texturePath: itemToRender.texturePath,
33742
- stackQty: itemToRender.stackQty || 1
33743
+ stackQty: itemToRender.stackQty || 1,
33744
+ isStackable: itemToRender.isStackable
33743
33745
  }, atlasJSON),
33744
33746
  imgScale: 3,
33745
33747
  imgClassname: "sprite-from-atlas-img--item"
@@ -33765,7 +33767,8 @@ var ItemSlot = /*#__PURE__*/mobxReactLite.observer(function (_ref) {
33765
33767
  spriteKey: shared.getItemTextureKeyPath({
33766
33768
  key: itemToRender.texturePath,
33767
33769
  texturePath: itemToRender.texturePath,
33768
- stackQty: itemToRender.stackQty || 1
33770
+ stackQty: itemToRender.stackQty || 1,
33771
+ isStackable: itemToRender.isStackable
33769
33772
  }, atlasJSON),
33770
33773
  imgScale: 3,
33771
33774
  imgClassname: "sprite-from-atlas-img--item"
@@ -34589,542 +34592,374 @@ var EquipmentColumn = /*#__PURE__*/styled.div.withConfig({
34589
34592
  componentId: "sc-1wuddg2-1"
34590
34593
  })(["display:flex;justify-content:center;flex-wrap:wrap;flex-direction:column;touch-action:none;"]);
34591
34594
 
34592
- var SlotsContainer = function SlotsContainer(_ref) {
34593
- var children = _ref.children,
34594
- title = _ref.title,
34595
- onClose = _ref.onClose,
34596
- _onPositionChange = _ref.onPositionChange,
34597
- _onPositionChangeEnd = _ref.onPositionChangeEnd,
34598
- _onPositionChangeStart = _ref.onPositionChangeStart,
34599
- onOutsideClick = _ref.onOutsideClick,
34600
- initialPosition = _ref.initialPosition,
34601
- scale = _ref.scale;
34602
- return React__default.createElement(DraggableContainer, {
34603
- title: title,
34604
- type: exports.RPGUIContainerTypes.Framed,
34605
- onCloseButton: function onCloseButton() {
34606
- if (onClose) {
34607
- onClose();
34608
- }
34609
- },
34610
- width: "400px",
34611
- cancelDrag: ".item-container-body, #shortcuts_list",
34612
- onPositionChange: function onPositionChange(_ref2) {
34613
- var x = _ref2.x,
34614
- y = _ref2.y;
34615
- if (_onPositionChange) {
34616
- _onPositionChange({
34617
- x: x,
34618
- y: y
34619
- });
34620
- }
34621
- },
34622
- onPositionChangeEnd: function onPositionChangeEnd(_ref3) {
34623
- var x = _ref3.x,
34624
- y = _ref3.y;
34625
- if (_onPositionChangeEnd) {
34626
- _onPositionChangeEnd({
34627
- x: x,
34628
- y: y
34629
- });
34595
+ var IS_MOBILE_OR_TABLET = /*#__PURE__*/shared.isMobileOrTablet();
34596
+
34597
+ var chunkString = function chunkString(str, length) {
34598
+ return str.match(new RegExp('.{1,' + length + '}', 'g'));
34599
+ };
34600
+
34601
+ var DynamicText = function DynamicText(_ref) {
34602
+ var text = _ref.text,
34603
+ onFinish = _ref.onFinish,
34604
+ onStart = _ref.onStart;
34605
+ var _useState = React.useState(''),
34606
+ textState = _useState[0],
34607
+ setTextState = _useState[1];
34608
+ React.useEffect(function () {
34609
+ var i = 0;
34610
+ var interval = setInterval(function () {
34611
+ // on every interval, show one more character
34612
+ if (i === 0) {
34613
+ if (onStart) {
34614
+ onStart();
34615
+ }
34630
34616
  }
34631
- },
34632
- onPositionChangeStart: function onPositionChangeStart(_ref4) {
34633
- var x = _ref4.x,
34634
- y = _ref4.y;
34635
- if (_onPositionChangeStart) {
34636
- _onPositionChangeStart({
34637
- x: x,
34638
- y: y
34639
- });
34617
+ if (i < text.length) {
34618
+ setTextState(text.substring(0, i + 1));
34619
+ i++;
34620
+ } else {
34621
+ clearInterval(interval);
34622
+ if (onFinish) {
34623
+ onFinish();
34624
+ }
34640
34625
  }
34641
- },
34642
- onOutsideClick: onOutsideClick,
34643
- initialPosition: initialPosition,
34644
- scale: scale
34645
- }, children);
34626
+ }, 50);
34627
+ return function () {
34628
+ clearInterval(interval);
34629
+ };
34630
+ }, [text]);
34631
+ return React__default.createElement(TextContainer, null, textState);
34646
34632
  };
34633
+ var TextContainer = /*#__PURE__*/styled.p.withConfig({
34634
+ displayName: "DynamicText__TextContainer",
34635
+ componentId: "sc-1ggl9nd-0"
34636
+ })(["font-size:0.7rem !important;color:white;text-shadow:1px 1px 0px #000000;letter-spacing:1.2px;word-break:normal;"]);
34647
34637
 
34648
- (function (RangeSliderType) {
34649
- RangeSliderType["Slider"] = "rpgui-slider";
34650
- RangeSliderType["GoldSlider"] = "rpgui-slider golden";
34651
- })(exports.RangeSliderType || (exports.RangeSliderType = {}));
34652
- var RangeSlider = function RangeSlider(_ref) {
34653
- var type = _ref.type,
34654
- valueMin = _ref.valueMin,
34655
- valueMax = _ref.valueMax,
34656
- width = _ref.width,
34657
- _onChange = _ref.onChange,
34658
- value = _ref.value;
34659
- var sliderId = uuid.v4();
34660
- var containerRef = React.useRef(null);
34638
+ var img$6 = 'data:image/gif;base64,R0lGODlhEAAQAPIAAAAAABQYLiw1TUBJc2hvmQAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAALAAAAAAQABAAAAM9CLrc/lCFGSKYJJP5AhlguDnBMIVgxXgmJapSSp3mKs/pKrT0IMCXUk+2Cgh2oSOnaDz+lswZpSOFUq2KBAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAALAAAAAAQABAAAAIzhI+py90Bg4OjDrjCELxfFQhQx0mIJkaeaYRp5LJADMdnqXbyOJLYTdKBejjZoRaZJBMFACH/C0ltYWdlTWFnaWNrDWdhbW1hPTAuNDU0NTUAIfkEARQAAAAsAAAAABAAEAAAAjKEj6nL7Y+CDE6OO+QKQ/ifKYEgfR4VddPohQe7lmR0xidNTib65uacYP2AQWGuMlEUAAA7';
34639
+
34640
+ var img$7 = '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';
34641
+
34642
+ var NPCDialogText = function NPCDialogText(_ref) {
34643
+ var text = _ref.text,
34644
+ onClose = _ref.onClose,
34645
+ onEndStep = _ref.onEndStep,
34646
+ onStartStep = _ref.onStartStep,
34647
+ type = _ref.type;
34648
+ var windowSize = React.useRef([window.innerWidth, window.innerHeight]);
34649
+ function maxCharacters(width) {
34650
+ // Set the font size to 16 pixels
34651
+ var fontSize = 11.2;
34652
+ // Calculate the number of characters that can fit in one line
34653
+ var charactersPerLine = Math.floor(width / 2 / fontSize);
34654
+ // Calculate the number of lines that can fit in the div
34655
+ var linesPerDiv = Math.floor(180 / fontSize);
34656
+ // Calculate the maximum number of characters that can fit in the div
34657
+ var maxCharacters = charactersPerLine * linesPerDiv;
34658
+ // Return the maximum number of characters
34659
+ return Math.round(maxCharacters / 5);
34660
+ }
34661
+ var textChunks = chunkString(text, maxCharacters(windowSize.current[0]));
34661
34662
  var _useState = React.useState(0),
34662
- left = _useState[0],
34663
- setLeft = _useState[1];
34663
+ chunkIndex = _useState[0],
34664
+ setChunkIndex = _useState[1];
34665
+ var onHandleSpacePress = function onHandleSpacePress(event) {
34666
+ if (event.code === 'Space') {
34667
+ goToNextStep();
34668
+ }
34669
+ };
34670
+ var goToNextStep = function goToNextStep() {
34671
+ var hasNextChunk = (textChunks == null ? void 0 : textChunks[chunkIndex + 1]) || false;
34672
+ if (hasNextChunk) {
34673
+ setChunkIndex(function (prev) {
34674
+ return prev + 1;
34675
+ });
34676
+ } else {
34677
+ // if there's no more text chunks, close the dialog
34678
+ onClose();
34679
+ }
34680
+ };
34664
34681
  React.useEffect(function () {
34665
- var _containerRef$current;
34666
- var calculatedWidth = ((_containerRef$current = containerRef.current) == null ? void 0 : _containerRef$current.clientWidth) || 0;
34667
- setLeft(Math.max((value - valueMin) / (valueMax - valueMin) * (calculatedWidth - 35) + 10));
34668
- }, [value, valueMin, valueMax]);
34669
- var typeClass = type === exports.RangeSliderType.GoldSlider ? 'golden' : '';
34670
- return React__default.createElement("div", {
34671
- style: {
34672
- width: width,
34673
- position: 'relative'
34682
+ document.addEventListener('keydown', onHandleSpacePress);
34683
+ return function () {
34684
+ return document.removeEventListener('keydown', onHandleSpacePress);
34685
+ };
34686
+ }, [chunkIndex]);
34687
+ var _useState2 = React.useState(false),
34688
+ showGoNextIndicator = _useState2[0],
34689
+ setShowGoNextIndicator = _useState2[1];
34690
+ return React__default.createElement(Container$e, null, React__default.createElement(DynamicText, {
34691
+ text: (textChunks == null ? void 0 : textChunks[chunkIndex]) || '',
34692
+ onFinish: function onFinish() {
34693
+ setShowGoNextIndicator(true);
34694
+ onEndStep && onEndStep();
34674
34695
  },
34675
- className: "rpgui-slider-container " + typeClass,
34676
- id: "rpgui-slider-" + sliderId,
34677
- ref: containerRef
34678
- }, React__default.createElement("div", {
34679
- style: {
34680
- pointerEvents: 'none'
34696
+ onStart: function onStart() {
34697
+ setShowGoNextIndicator(false);
34698
+ onStartStep && onStartStep();
34681
34699
  }
34682
- }, React__default.createElement("div", {
34683
- className: "rpgui-slider-track " + typeClass
34684
- }), React__default.createElement("div", {
34685
- className: "rpgui-slider-left-edge " + typeClass
34686
- }), React__default.createElement("div", {
34687
- className: "rpgui-slider-right-edge " + typeClass
34688
- }), React__default.createElement("div", {
34689
- className: "rpgui-slider-thumb " + typeClass,
34690
- style: {
34691
- left: left
34700
+ }), showGoNextIndicator && React__default.createElement(PressSpaceIndicator, {
34701
+ right: type === exports.NPCDialogType.TextOnly ? '1rem' : '10.5rem',
34702
+ src: IS_MOBILE_OR_TABLET ? img$6 : img$7,
34703
+ onPointerDown: function onPointerDown() {
34704
+ goToNextStep();
34692
34705
  }
34693
- })), React__default.createElement(Input$1, {
34694
- type: "range",
34695
- style: {
34696
- width: width
34697
- },
34698
- min: valueMin,
34699
- max: valueMax,
34700
- onChange: function onChange(e) {
34701
- return _onChange(Number(e.target.value));
34702
- },
34703
- value: value,
34704
- className: "rpgui-cursor-point"
34705
34706
  }));
34706
34707
  };
34707
- var Input$1 = /*#__PURE__*/styled.input.withConfig({
34708
- displayName: "RangeSlider__Input",
34709
- componentId: "sc-v8mte9-0"
34710
- })(["opacity:0;position:absolute;width:100%;height:100%;top:0;left:0;margin-top:-5px;"]);
34708
+ var Container$e = /*#__PURE__*/styled.div.withConfig({
34709
+ displayName: "NPCDialogText__Container",
34710
+ componentId: "sc-1cxkdh9-0"
34711
+ })([""]);
34712
+ var PressSpaceIndicator = /*#__PURE__*/styled.img.withConfig({
34713
+ displayName: "NPCDialogText__PressSpaceIndicator",
34714
+ componentId: "sc-1cxkdh9-1"
34715
+ })(["position:absolute;right:", ";bottom:1rem;height:20.7px;image-rendering:-webkit-optimize-contrast;"], function (_ref2) {
34716
+ var right = _ref2.right;
34717
+ return right;
34718
+ });
34711
34719
 
34712
- var ItemQuantitySelector = function ItemQuantitySelector(_ref) {
34713
- var quantity = _ref.quantity,
34714
- onConfirm = _ref.onConfirm,
34720
+ //@ts-ignore
34721
+ var useEventListener = function useEventListener(type, handler, el) {
34722
+ if (el === void 0) {
34723
+ el = window;
34724
+ }
34725
+ var savedHandler = React__default.useRef();
34726
+ React__default.useEffect(function () {
34727
+ savedHandler.current = handler;
34728
+ }, [handler]);
34729
+ React__default.useEffect(function () {
34730
+ //@ts-ignore
34731
+ var listener = function listener(e) {
34732
+ return savedHandler.current(e);
34733
+ };
34734
+ el.addEventListener(type, listener);
34735
+ return function () {
34736
+ el.removeEventListener(type, listener);
34737
+ };
34738
+ }, [type, el]);
34739
+ };
34740
+
34741
+ var QuestionDialog = function QuestionDialog(_ref) {
34742
+ var questions = _ref.questions,
34743
+ answers = _ref.answers,
34715
34744
  onClose = _ref.onClose;
34716
- var _useState = React.useState(quantity),
34717
- value = _useState[0],
34718
- setValue = _useState[1];
34719
- var inputRef = React.useRef(null);
34720
- React.useEffect(function () {
34721
- if (inputRef.current) {
34722
- inputRef.current.focus();
34723
- inputRef.current.select();
34724
- var closeSelector = function closeSelector(e) {
34725
- if (e.key === 'Escape') {
34726
- onClose();
34727
- }
34728
- };
34729
- document.addEventListener('keydown', closeSelector);
34730
- return function () {
34731
- document.removeEventListener('keydown', closeSelector);
34732
- };
34733
- }
34734
- return function () {};
34735
- }, []);
34736
- return React__default.createElement(StyledContainer, {
34737
- type: exports.RPGUIContainerTypes.Framed,
34738
- width: "25rem"
34739
- }, React__default.createElement(CloseButton$2, {
34740
- className: "container-close",
34741
- onPointerDown: onClose
34742
- }, "X"), React__default.createElement("h2", null, "Select quantity to move"), React__default.createElement(StyledForm, {
34743
- style: {
34744
- width: '100%'
34745
- },
34746
- onSubmit: function onSubmit(e) {
34747
- e.preventDefault();
34748
- var numberValue = Number(value);
34749
- if (Number.isNaN(numberValue)) {
34750
- return;
34751
- }
34752
- onConfirm(Math.max(1, Math.min(quantity, numberValue)));
34753
- },
34754
- noValidate: true
34755
- }, React__default.createElement(StyledInput, {
34756
- innerRef: inputRef,
34757
- placeholder: "Enter quantity",
34758
- type: "number",
34759
- min: 1,
34760
- max: quantity,
34761
- value: value,
34762
- onChange: function onChange(e) {
34763
- if (Number(e.target.value) >= quantity) {
34764
- setValue(quantity);
34765
- return;
34766
- }
34767
- setValue(e.target.value);
34768
- },
34769
- onBlur: function onBlur(e) {
34770
- var newValue = Math.max(1, Math.min(quantity, Number(e.target.value)));
34771
- setValue(newValue);
34745
+ var _useState = React.useState(questions[0]),
34746
+ currentQuestion = _useState[0],
34747
+ setCurrentQuestion = _useState[1];
34748
+ var _useState2 = React.useState(false),
34749
+ canShowAnswers = _useState2[0],
34750
+ setCanShowAnswers = _useState2[1];
34751
+ var onGetFirstAnswer = function onGetFirstAnswer() {
34752
+ if (!currentQuestion.answerIds || currentQuestion.answerIds.length === 0) {
34753
+ return null;
34772
34754
  }
34773
- }), React__default.createElement(RangeSlider, {
34774
- type: exports.RangeSliderType.Slider,
34775
- valueMin: 1,
34776
- valueMax: quantity,
34777
- width: "100%",
34778
- onChange: setValue,
34779
- value: value
34780
- }), React__default.createElement(Button, {
34781
- buttonType: exports.ButtonTypes.RPGUIButton,
34782
- type: "submit"
34783
- }, "Confirm")));
34784
- };
34785
- var StyledContainer = /*#__PURE__*/styled(RPGUIContainer).withConfig({
34786
- displayName: "ItemQuantitySelector__StyledContainer",
34787
- componentId: "sc-yfdtpn-0"
34788
- })(["display:flex;flex-direction:column;align-items:center;"]);
34789
- var StyledForm = /*#__PURE__*/styled.form.withConfig({
34790
- displayName: "ItemQuantitySelector__StyledForm",
34791
- componentId: "sc-yfdtpn-1"
34792
- })(["display:flex;flex-direction:column;align-items:center;width:100%;"]);
34793
- var StyledInput = /*#__PURE__*/styled(Input).withConfig({
34794
- displayName: "ItemQuantitySelector__StyledInput",
34795
- componentId: "sc-yfdtpn-2"
34796
- })(["text-align:center;&::-webkit-outer-spin-button,&::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}&[type='number']{-moz-appearance:textfield;}"]);
34797
- var CloseButton$2 = /*#__PURE__*/styled.div.withConfig({
34798
- displayName: "ItemQuantitySelector__CloseButton",
34799
- componentId: "sc-yfdtpn-3"
34800
- })(["position:absolute;top:3px;right:0px;color:white;z-index:22;font-size:0.8rem;"]);
34801
-
34802
- var ShortcutsSetter = function ShortcutsSetter(_ref) {
34803
- var setSettingShortcutIndex = _ref.setSettingShortcutIndex,
34804
- settingShortcutIndex = _ref.settingShortcutIndex,
34805
- shortcuts = _ref.shortcuts,
34806
- removeShortcut = _ref.removeShortcut,
34807
- atlasJSON = _ref.atlasJSON,
34808
- atlasIMG = _ref.atlasIMG;
34809
- var getContent = function getContent(index) {
34810
- var _shortcuts$index, _shortcuts$index3;
34811
- if (((_shortcuts$index = shortcuts[index]) == null ? void 0 : _shortcuts$index.type) === shared.ShortcutType.Item) {
34812
- var _shortcuts$index2;
34813
- var _payload = (_shortcuts$index2 = shortcuts[index]) == null ? void 0 : _shortcuts$index2.payload;
34814
- if (!_payload) return null;
34815
- return React__default.createElement(SpriteFromAtlas, {
34816
- atlasIMG: atlasIMG,
34817
- atlasJSON: atlasJSON,
34818
- spriteKey: shared.getItemTextureKeyPath({
34819
- key: _payload.texturePath,
34820
- texturePath: _payload.texturePath,
34821
- stackQty: _payload.stackQty || 1
34822
- }, atlasJSON),
34823
- width: 32,
34824
- height: 32,
34825
- imgScale: 1.6,
34826
- imgStyle: {
34827
- left: '5px'
34828
- }
34755
+ var firstAnswerId = currentQuestion.answerIds[0];
34756
+ return answers.find(function (answer) {
34757
+ return answer.id === firstAnswerId;
34758
+ });
34759
+ };
34760
+ var _useState3 = React.useState(onGetFirstAnswer()),
34761
+ currentAnswer = _useState3[0],
34762
+ setCurrentAnswer = _useState3[1];
34763
+ React.useEffect(function () {
34764
+ setCurrentAnswer(onGetFirstAnswer());
34765
+ }, [currentQuestion]);
34766
+ var onGetAnswers = function onGetAnswers(answerIds) {
34767
+ return answerIds.map(function (answerId) {
34768
+ return answers.find(function (answer) {
34769
+ return answer.id === answerId;
34829
34770
  });
34830
- }
34831
- var payload = (_shortcuts$index3 = shortcuts[index]) == null ? void 0 : _shortcuts$index3.payload;
34832
- return React__default.createElement("span", null, payload == null ? void 0 : payload.magicWords.split(' ').map(function (word) {
34833
- return word[0];
34834
- }));
34771
+ });
34835
34772
  };
34836
- return React__default.createElement(Container$e, null, React__default.createElement("p", null, "Shortcuts:"), React__default.createElement(List, {
34837
- id: "shortcuts_list"
34838
- }, Array.from({
34839
- length: 6
34840
- }).map(function (_, i) {
34841
- return React__default.createElement(Shortcut, {
34842
- key: i,
34843
- onPointerDown: function onPointerDown() {
34844
- removeShortcut(i);
34845
- if (!shortcuts[i] || shortcuts[i].type === shared.ShortcutType.None) setSettingShortcutIndex(i);
34846
- },
34847
- disabled: settingShortcutIndex !== -1 && settingShortcutIndex !== i,
34848
- isBeingSet: settingShortcutIndex === i
34849
- }, getContent(i));
34850
- })));
34851
- };
34852
- var Container$e = /*#__PURE__*/styled.div.withConfig({
34853
- displayName: "ShortcutsSetter__Container",
34854
- componentId: "sc-xuouuf-0"
34855
- })(["p{margin:0;margin-left:0.5rem;}"]);
34856
- var Shortcut = /*#__PURE__*/styled.button.withConfig({
34857
- displayName: "ShortcutsSetter__Shortcut",
34858
- componentId: "sc-xuouuf-1"
34859
- })(["width:2.6rem;height:2.6rem;background-color:", ";border:2px solid ", ";border-radius:50%;text-transform:uppercase;font-size:0.7rem;font-weight:bold;display:flex;align-items:center;justify-content:center;span{margin-top:4px;}&:hover,&:focus{background-color:", ";}&:active{background-color:", ";}&:disabled{opacity:0.5;}"], uiColors.lightGray, function (_ref2) {
34860
- var isBeingSet = _ref2.isBeingSet;
34861
- return isBeingSet ? uiColors.yellow : uiColors.darkGray;
34862
- }, uiColors.darkGray, uiColors.gray);
34863
- var List = /*#__PURE__*/styled.div.withConfig({
34864
- displayName: "ShortcutsSetter__List",
34865
- componentId: "sc-xuouuf-2"
34866
- })(["width:100%;display:flex;align-items:center;gap:0.5rem;padding-bottom:0.5rem;padding-left:0.5rem;box-sizing:border-box;margin:0 !important;"]);
34867
-
34868
- var ItemContainer$1 = function ItemContainer(_ref) {
34869
- var itemContainer = _ref.itemContainer,
34870
- onClose = _ref.onClose,
34871
- _onMouseOver = _ref.onMouseOver,
34872
- _onSelected = _ref.onSelected,
34873
- onItemClick = _ref.onItemClick,
34874
- type = _ref.type,
34875
- atlasJSON = _ref.atlasJSON,
34876
- atlasIMG = _ref.atlasIMG,
34877
- _ref$disableContextMe = _ref.disableContextMenu,
34878
- disableContextMenu = _ref$disableContextMe === void 0 ? false : _ref$disableContextMe,
34879
- onItemDragEnd = _ref.onItemDragEnd,
34880
- onItemDragStart = _ref.onItemDragStart,
34881
- onItemPlaceDrop = _ref.onItemPlaceDrop,
34882
- _onOutsideDrop = _ref.onOutsideDrop,
34883
- checkIfItemCanBeMoved = _ref.checkIfItemCanBeMoved,
34884
- initialPosition = _ref.initialPosition,
34885
- checkIfItemShouldDragEnd = _ref.checkIfItemShouldDragEnd,
34886
- scale = _ref.scale,
34887
- shortcuts = _ref.shortcuts,
34888
- setItemShortcut = _ref.setItemShortcut,
34889
- removeShortcut = _ref.removeShortcut,
34890
- equipmentSet = _ref.equipmentSet,
34891
- isDepotSystem = _ref.isDepotSystem,
34892
- onPositionChangeEnd = _ref.onPositionChangeEnd,
34893
- onPositionChangeStart = _ref.onPositionChangeStart;
34894
- var _useState = React.useState({
34895
- isOpen: false,
34896
- maxQuantity: 1,
34897
- callback: function callback(_quantity) {}
34898
- }),
34899
- quantitySelect = _useState[0],
34900
- setQuantitySelect = _useState[1];
34901
- var _useState2 = React.useState(-1),
34902
- settingShortcutIndex = _useState2[0],
34903
- setSettingShortcutIndex = _useState2[1];
34904
- var onRenderSlots = function onRenderSlots() {
34905
- var slots = [];
34906
- for (var i = 0; i < itemContainer.slotQty; i++) {
34907
- var _itemContainer$slots;
34908
- slots.push(React__default.createElement(ItemSlot, {
34909
- isContextMenuDisabled: disableContextMenu,
34910
- key: i,
34911
- slotIndex: i,
34912
- item: ((_itemContainer$slots = itemContainer.slots) == null ? void 0 : _itemContainer$slots[i]) || null,
34913
- itemContainerType: type,
34914
- onMouseOver: function onMouseOver(event, slotIndex, item) {
34915
- if (_onMouseOver) _onMouseOver(event, slotIndex, item);
34916
- },
34917
- onPointerDown: function onPointerDown(itemType, containerType, item) {
34918
- if (settingShortcutIndex !== -1) {
34919
- setSettingShortcutIndex(-1);
34920
- if (itemType === shared.ItemType.Consumable || itemType === shared.ItemType.Tool) {
34921
- setItemShortcut == null ? void 0 : setItemShortcut(item.key, settingShortcutIndex);
34922
- }
34923
- } else if (onItemClick) onItemClick(item, itemType, containerType);
34924
- },
34925
- onSelected: function onSelected(optionId, item) {
34926
- if (_onSelected) _onSelected(optionId, item);
34927
- },
34928
- onDragStart: function onDragStart(item, slotIndex, itemContainerType) {
34929
- if (onItemDragStart) onItemDragStart(item, slotIndex, itemContainerType);
34930
- },
34931
- onDragEnd: function onDragEnd(quantity) {
34932
- if (onItemDragEnd) onItemDragEnd(quantity);
34933
- },
34934
- dragScale: scale,
34935
- checkIfItemCanBeMoved: checkIfItemCanBeMoved,
34936
- checkIfItemShouldDragEnd: checkIfItemShouldDragEnd,
34937
- openQuantitySelector: function openQuantitySelector(maxQuantity, callback) {
34938
- setQuantitySelect({
34939
- isOpen: true,
34940
- maxQuantity: maxQuantity,
34941
- callback: callback
34942
- });
34943
- },
34944
- onPlaceDrop: function onPlaceDrop(item, slotIndex, itemContainerType) {
34945
- if (onItemPlaceDrop) onItemPlaceDrop(item, slotIndex, itemContainerType);
34946
- },
34947
- onOutsideDrop: function onOutsideDrop(item, position) {
34948
- if (_onOutsideDrop) _onOutsideDrop(item, position);
34949
- },
34950
- atlasIMG: atlasIMG,
34951
- atlasJSON: atlasJSON,
34952
- isSelectingShortcut: settingShortcutIndex !== -1,
34953
- equipmentSet: equipmentSet,
34954
- isDepotSystem: isDepotSystem
34955
- }));
34773
+ var onKeyPress = function onKeyPress(e) {
34774
+ switch (e.key) {
34775
+ case 'ArrowDown':
34776
+ // select next answer, if any.
34777
+ // if no next answer, select first answer
34778
+ // const nextAnswer = onGetAnswers(currentQuestion.answerIds!).find(
34779
+ // (answer) => answer?.id === currentAnswer!.id + 1
34780
+ // );
34781
+ var nextAnswerIndex = onGetAnswers(currentQuestion.answerIds).findIndex(function (answer) {
34782
+ return (answer == null ? void 0 : answer.id) === currentAnswer.id + 1;
34783
+ });
34784
+ var nextAnswerID = currentQuestion.answerIds[nextAnswerIndex];
34785
+ var nextAnswer = onGetAnswers(currentQuestion.answerIds).find(function (answer) {
34786
+ return (answer == null ? void 0 : answer.id) === nextAnswerID;
34787
+ });
34788
+ setCurrentAnswer(nextAnswer || onGetFirstAnswer());
34789
+ break;
34790
+ case 'ArrowUp':
34791
+ // select previous answer, if any.
34792
+ // if no previous answer, select last answer
34793
+ var previousAnswerIndex = onGetAnswers(currentQuestion.answerIds).findIndex(function (answer) {
34794
+ return (answer == null ? void 0 : answer.id) === currentAnswer.id - 1;
34795
+ });
34796
+ var previousAnswerID = currentQuestion.answerIds && currentQuestion.answerIds[previousAnswerIndex];
34797
+ var previousAnswer = onGetAnswers(currentQuestion.answerIds).find(function (answer) {
34798
+ return (answer == null ? void 0 : answer.id) === previousAnswerID;
34799
+ });
34800
+ if (previousAnswer) {
34801
+ setCurrentAnswer(previousAnswer);
34802
+ } else {
34803
+ setCurrentAnswer(onGetAnswers(currentQuestion.answerIds).pop());
34804
+ }
34805
+ break;
34806
+ case 'Enter':
34807
+ setCanShowAnswers(false);
34808
+ if (!(currentAnswer != null && currentAnswer.nextQuestionId)) {
34809
+ onClose();
34810
+ return;
34811
+ } else {
34812
+ setCurrentQuestion(questions.find(function (question) {
34813
+ return question.id === currentAnswer.nextQuestionId;
34814
+ }));
34815
+ }
34816
+ break;
34956
34817
  }
34957
- return slots;
34958
34818
  };
34959
- return React__default.createElement(React__default.Fragment, null, React__default.createElement(SlotsContainer, {
34960
- title: itemContainer.name || 'Container',
34961
- onClose: onClose,
34962
- initialPosition: initialPosition,
34963
- scale: scale,
34964
- onPositionChangeEnd: onPositionChangeEnd,
34965
- onPositionChangeStart: onPositionChangeStart
34966
- }, type === shared.ItemContainerType.Inventory && shortcuts && removeShortcut && React__default.createElement(ShortcutsSetter, {
34967
- setSettingShortcutIndex: setSettingShortcutIndex,
34968
- settingShortcutIndex: settingShortcutIndex,
34969
- shortcuts: shortcuts,
34970
- removeShortcut: removeShortcut,
34971
- atlasIMG: atlasIMG,
34972
- atlasJSON: atlasJSON
34973
- }), React__default.createElement(ItemsContainer, {
34974
- className: "item-container-body"
34975
- }, onRenderSlots())), quantitySelect.isOpen && React__default.createElement(ModalPortal, null, React__default.createElement(QuantitySelectorContainer, null, React__default.createElement(ItemQuantitySelector, {
34976
- quantity: quantitySelect.maxQuantity,
34977
- onConfirm: function onConfirm(quantity) {
34978
- quantitySelect.callback(quantity);
34979
- setQuantitySelect({
34980
- isOpen: false,
34981
- maxQuantity: 1,
34982
- callback: function callback() {}
34983
- });
34984
- },
34985
- onClose: function onClose() {
34986
- quantitySelect.callback(-1);
34987
- setQuantitySelect({
34988
- isOpen: false,
34989
- maxQuantity: 1,
34990
- callback: function callback() {}
34991
- });
34819
+ useEventListener('keydown', onKeyPress);
34820
+ var onAnswerClick = function onAnswerClick(answer) {
34821
+ setCanShowAnswers(false);
34822
+ if (answer.nextQuestionId) {
34823
+ // if there is a next question, go to it
34824
+ setCurrentQuestion(questions.find(function (question) {
34825
+ return question.id === answer.nextQuestionId;
34826
+ }));
34827
+ } else {
34828
+ // else, finish dialog!
34829
+ onClose();
34992
34830
  }
34993
- }))));
34994
- };
34995
- var ItemsContainer = /*#__PURE__*/styled.div.withConfig({
34996
- displayName: "ItemContainer__ItemsContainer",
34997
- componentId: "sc-15y5p9l-0"
34998
- })(["display:flex;justify-content:center;flex-wrap:wrap;"]);
34999
- var QuantitySelectorContainer = /*#__PURE__*/styled.div.withConfig({
35000
- displayName: "ItemContainer__QuantitySelectorContainer",
35001
- componentId: "sc-15y5p9l-1"
35002
- })(["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);"]);
35003
-
35004
- var ItemSelector = function ItemSelector(_ref) {
35005
- var atlasIMG = _ref.atlasIMG,
35006
- atlasJSON = _ref.atlasJSON,
35007
- options = _ref.options,
35008
- onClose = _ref.onClose,
35009
- onSelect = _ref.onSelect;
35010
- var _useState = React.useState(),
35011
- selectedValue = _useState[0],
35012
- setSelectedValue = _useState[1];
35013
- var handleClick = function handleClick() {
35014
- var element = document.querySelector("input[name='test']:checked");
35015
- var elementValue = element.value;
35016
- setSelectedValue(elementValue);
35017
34831
  };
35018
- React.useEffect(function () {
35019
- if (selectedValue) {
35020
- onSelect(selectedValue);
35021
- }
35022
- }, [selectedValue]);
35023
- return React__default.createElement(DraggableContainer, {
35024
- type: exports.RPGUIContainerTypes.Framed,
35025
- width: "500px",
35026
- cancelDrag: ".equipment-container-body .arrow-selector",
35027
- onCloseButton: function onCloseButton() {
35028
- if (onClose) {
35029
- onClose();
35030
- }
34832
+ var onRenderCurrentAnswers = function onRenderCurrentAnswers() {
34833
+ var answerIds = currentQuestion.answerIds;
34834
+ if (!answerIds) {
34835
+ return null;
35031
34836
  }
35032
- }, React__default.createElement("div", {
35033
- style: {
35034
- width: '100%'
34837
+ var answers = onGetAnswers(answerIds);
34838
+ if (!answers) {
34839
+ return null;
35035
34840
  }
35036
- }, React__default.createElement(Title$3, null, 'Harvesting instruments'), React__default.createElement(Subtitle$1, null, 'Use the tool, you need it'), React__default.createElement("hr", {
35037
- className: "golden"
35038
- })), React__default.createElement(RadioInputScroller$1, null, options == null ? void 0 : options.map(function (option, index) {
35039
- return React__default.createElement(RadioOptionsWrapper$1, {
35040
- key: index
35041
- }, React__default.createElement(SpriteAtlasWrapper$1, null, React__default.createElement(SpriteFromAtlas, {
35042
- atlasIMG: atlasIMG,
35043
- atlasJSON: atlasJSON,
35044
- spriteKey: option.imageKey,
35045
- imgScale: 3
35046
- })), React__default.createElement("div", null, React__default.createElement("input", {
35047
- className: "rpgui-radio",
35048
- type: "radio",
35049
- value: option.name,
35050
- name: "test"
35051
- }), React__default.createElement("label", {
35052
- onPointerDown: handleClick,
35053
- style: {
35054
- display: 'flex',
35055
- alignItems: 'center'
34841
+ return answers.map(function (answer) {
34842
+ var isSelected = (currentAnswer == null ? void 0 : currentAnswer.id) === (answer == null ? void 0 : answer.id);
34843
+ var selectedColor = isSelected ? 'yellow' : 'white';
34844
+ if (answer) {
34845
+ return React__default.createElement(AnswerRow, {
34846
+ key: "answer_" + answer.id
34847
+ }, React__default.createElement(AnswerSelectedIcon, {
34848
+ color: selectedColor
34849
+ }, isSelected ? 'X' : null), React__default.createElement(Answer, {
34850
+ key: answer.id,
34851
+ onPointerDown: function onPointerDown() {
34852
+ return onAnswerClick(answer);
34853
+ },
34854
+ color: selectedColor
34855
+ }, answer.text));
35056
34856
  }
35057
- }, option.name, " ", React__default.createElement("br", null), option.description)));
35058
- })), React__default.createElement(ButtonWrapper$1, null, React__default.createElement(Button, {
35059
- buttonType: exports.ButtonTypes.RPGUIButton,
35060
- onPointerDown: onClose
35061
- }, "Cancel"), React__default.createElement(Button, {
35062
- buttonType: exports.ButtonTypes.RPGUIButton
35063
- }, "Select")));
34857
+ return null;
34858
+ });
34859
+ };
34860
+ return React__default.createElement(Container$f, null, React__default.createElement(QuestionContainer, null, React__default.createElement(DynamicText, {
34861
+ text: currentQuestion.text,
34862
+ onStart: function onStart() {
34863
+ return setCanShowAnswers(false);
34864
+ },
34865
+ onFinish: function onFinish() {
34866
+ return setCanShowAnswers(true);
34867
+ }
34868
+ })), canShowAnswers && React__default.createElement(AnswersContainer, null, onRenderCurrentAnswers()));
35064
34869
  };
35065
- var Title$3 = /*#__PURE__*/styled.h1.withConfig({
35066
- displayName: "ItemSelector__Title",
35067
- componentId: "sc-gptoxp-0"
35068
- })(["font-size:0.6rem;color:yellow !important;"]);
35069
- var Subtitle$1 = /*#__PURE__*/styled.h1.withConfig({
35070
- displayName: "ItemSelector__Subtitle",
35071
- componentId: "sc-gptoxp-1"
35072
- })(["font-size:0.4rem;color:yellow !important;"]);
35073
- var RadioInputScroller$1 = /*#__PURE__*/styled.div.withConfig({
35074
- displayName: "ItemSelector__RadioInputScroller",
35075
- componentId: "sc-gptoxp-2"
35076
- })(["padding-left:15px;padding-top:10px;width:100%;margin-top:1rem;align-items:center;margin-left:20px;align-items:flex-start;overflow-y:scroll;height:360px;"]);
35077
- var SpriteAtlasWrapper$1 = /*#__PURE__*/styled.div.withConfig({
35078
- displayName: "ItemSelector__SpriteAtlasWrapper",
35079
- componentId: "sc-gptoxp-3"
35080
- })(["margin-right:40px;"]);
35081
- var RadioOptionsWrapper$1 = /*#__PURE__*/styled.div.withConfig({
35082
- displayName: "ItemSelector__RadioOptionsWrapper",
35083
- componentId: "sc-gptoxp-4"
35084
- })(["display:flex;align-items:stretch;margin-bottom:40px;"]);
35085
- var ButtonWrapper$1 = /*#__PURE__*/styled.div.withConfig({
35086
- displayName: "ItemSelector__ButtonWrapper",
35087
- componentId: "sc-gptoxp-5"
35088
- })(["display:flex;justify-content:space-around;padding-top:20px;width:100%;"]);
34870
+ var Container$f = /*#__PURE__*/styled.div.withConfig({
34871
+ displayName: "QuestionDialog__Container",
34872
+ componentId: "sc-bxc5u0-0"
34873
+ })(["display:flex;word-break:break-all;box-sizing:border-box;justify-content:flex-start;align-items:flex-start;flex-wrap:wrap;"]);
34874
+ var QuestionContainer = /*#__PURE__*/styled.div.withConfig({
34875
+ displayName: "QuestionDialog__QuestionContainer",
34876
+ componentId: "sc-bxc5u0-1"
34877
+ })(["flex:100%;width:100%;"]);
34878
+ var AnswersContainer = /*#__PURE__*/styled.div.withConfig({
34879
+ displayName: "QuestionDialog__AnswersContainer",
34880
+ componentId: "sc-bxc5u0-2"
34881
+ })(["flex:100%;"]);
34882
+ var Answer = /*#__PURE__*/styled.p.withConfig({
34883
+ displayName: "QuestionDialog__Answer",
34884
+ componentId: "sc-bxc5u0-3"
34885
+ })(["flex:auto;color:", " !important;font-size:0.65rem !important;background:inherit;border:none;"], function (props) {
34886
+ return props.color;
34887
+ });
34888
+ var AnswerSelectedIcon = /*#__PURE__*/styled.span.withConfig({
34889
+ displayName: "QuestionDialog__AnswerSelectedIcon",
34890
+ componentId: "sc-bxc5u0-4"
34891
+ })(["flex:5% 0 0;color:", " !important;"], function (props) {
34892
+ return props.color;
34893
+ });
34894
+ var AnswerRow = /*#__PURE__*/styled.div.withConfig({
34895
+ displayName: "QuestionDialog__AnswerRow",
34896
+ componentId: "sc-bxc5u0-5"
34897
+ })(["display:flex;flex-wrap:wrap;justify-content:center;align-items:center;margin-bottom:0.5rem;height:22px;p{line-height:unset;margin-top:0;margin-bottom:0rem;}"]);
35089
34898
 
35090
- var ListMenu = function ListMenu(_ref) {
35091
- var options = _ref.options,
35092
- onSelected = _ref.onSelected,
35093
- x = _ref.x,
35094
- y = _ref.y;
35095
- return React__default.createElement(Container$f, {
35096
- x: x,
35097
- y: y
35098
- }, React__default.createElement("ul", {
35099
- className: "rpgui-list-imp",
35100
- style: {
35101
- overflow: 'hidden'
34899
+ var img$8 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAP1BMVEUAAAA7FyVxQTsUEBPj5v////+5v/tCJDOOUlIiHBr1oJfptaO6dWr61rhzFy1bMTjoanMUNGQoXMQkn97+88DQ3IhAAAAAAXRSTlMAQObYZgAAAAFiS0dEBfhv6ccAAAAHdElNRQfmAw4VOBC7c5LYAAABM0lEQVQ4y3XRi5KDIAwFUAUkbrBgpP//rZsHVHQ009qZ3tPboNN0zmwzvcw8O5sX4y0NOg/Et3jRCXF+ziULorjkOQ9gE24dvuUAzq08DiCO4pe3WN7zCP56vmpubBReQYC11YPS86ySxxCsAABTSgjb5m4g8nfbxvFHBkH2OEEvAItVuCuIsgGgl+Gcr7kDXxhEAx55A2SQEEeQeZwUaIP8Tbo05B0RFPhItAjgj1w6cDnhLluDj+Egkh3pCCP4pKQAw1IPO0W9Nti5gW9RP2dKA3BZd2Dw+baYX+Nt4GM00O4S3kEpF6Alb2Bv4LeC3kkGfAW0/p0RPoJVKr63ghHsKuRh5DIUKOAlGOwrtt9fQekAEfmhZslHUDoglB0zjfkJigN7UnTQQ4GBWomoVhEN/AOPSBh38gy+fwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMi0wMy0xNFQyMTo1NTo1MSswMDowMJcc0eEAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjItMDMtMTRUMjE6NTU6NTErMDA6MDDmQWldAAAAAElFTkSuQmCC';
34900
+
34901
+ (function (NPCDialogType) {
34902
+ NPCDialogType["TextOnly"] = "TextOnly";
34903
+ NPCDialogType["TextAndThumbnail"] = "TextAndThumbnail";
34904
+ })(exports.NPCDialogType || (exports.NPCDialogType = {}));
34905
+ var NPCDialog = function NPCDialog(_ref) {
34906
+ var text = _ref.text,
34907
+ type = _ref.type,
34908
+ _onClose = _ref.onClose,
34909
+ imagePath = _ref.imagePath,
34910
+ _ref$isQuestionDialog = _ref.isQuestionDialog,
34911
+ isQuestionDialog = _ref$isQuestionDialog === void 0 ? false : _ref$isQuestionDialog,
34912
+ questions = _ref.questions,
34913
+ answers = _ref.answers;
34914
+ return React__default.createElement(RPGUIContainer, {
34915
+ type: exports.RPGUIContainerTypes.FramedGold,
34916
+ width: isQuestionDialog ? '600px' : '80%',
34917
+ height: '180px'
34918
+ }, isQuestionDialog && questions && answers ? React__default.createElement(React__default.Fragment, null, React__default.createElement(TextContainer$1, {
34919
+ flex: type === exports.NPCDialogType.TextAndThumbnail ? '70%' : '100%'
34920
+ }, React__default.createElement(QuestionDialog, {
34921
+ questions: questions,
34922
+ answers: answers,
34923
+ onClose: function onClose() {
34924
+ if (_onClose) {
34925
+ _onClose();
34926
+ }
35102
34927
  }
35103
- }, options.map(function (params, index) {
35104
- return React__default.createElement(ListElement$1, {
35105
- key: (params == null ? void 0 : params.id) || index,
35106
- onPointerDown: function onPointerDown() {
35107
- onSelected(params == null ? void 0 : params.id);
34928
+ })), type === exports.NPCDialogType.TextAndThumbnail && React__default.createElement(ThumbnailContainer, null, React__default.createElement(NPCThumbnail, {
34929
+ src: imagePath || img$8
34930
+ }))) : React__default.createElement(React__default.Fragment, null, React__default.createElement(Container$g, null, React__default.createElement(TextContainer$1, {
34931
+ flex: type === exports.NPCDialogType.TextAndThumbnail ? '70%' : '100%'
34932
+ }, React__default.createElement(NPCDialogText, {
34933
+ type: type,
34934
+ text: text || 'No text provided.',
34935
+ onClose: function onClose() {
34936
+ if (_onClose) {
34937
+ _onClose();
35108
34938
  }
35109
- }, (params == null ? void 0 : params.text) || 'No text');
35110
- })));
34939
+ }
34940
+ })), type === exports.NPCDialogType.TextAndThumbnail && React__default.createElement(ThumbnailContainer, null, React__default.createElement(NPCThumbnail, {
34941
+ src: imagePath || img$8
34942
+ })))));
35111
34943
  };
35112
- var Container$f = /*#__PURE__*/styled.div.withConfig({
35113
- displayName: "ListMenu__Container",
35114
- componentId: "sc-i9097t-0"
35115
- })(["display:flex;flex-direction:column;width:100%;justify-content:start;align-items:flex-start;position:absolute;top:", "px;left:", "px;li{font-size:", ";}"], function (props) {
35116
- return props.y || 0;
35117
- }, function (props) {
35118
- return props.x || 0;
35119
- }, uiFonts.size.xsmall);
35120
- var ListElement$1 = /*#__PURE__*/styled.li.withConfig({
35121
- displayName: "ListMenu__ListElement",
35122
- componentId: "sc-i9097t-1"
35123
- })(["margin-right:0.5rem;"]);
35124
-
35125
- var img$6 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAP1BMVEUAAAA7FyVxQTsUEBPj5v////+5v/tCJDOOUlIiHBr1oJfptaO6dWr61rhzFy1bMTjoanMUNGQoXMQkn97+88DQ3IhAAAAAAXRSTlMAQObYZgAAAAFiS0dEBfhv6ccAAAAHdElNRQfmAw4VOBC7c5LYAAABM0lEQVQ4y3XRi5KDIAwFUAUkbrBgpP//rZsHVHQ009qZ3tPboNN0zmwzvcw8O5sX4y0NOg/Et3jRCXF+ziULorjkOQ9gE24dvuUAzq08DiCO4pe3WN7zCP56vmpubBReQYC11YPS86ySxxCsAABTSgjb5m4g8nfbxvFHBkH2OEEvAItVuCuIsgGgl+Gcr7kDXxhEAx55A2SQEEeQeZwUaIP8Tbo05B0RFPhItAjgj1w6cDnhLluDj+Egkh3pCCP4pKQAw1IPO0W9Nti5gW9RP2dKA3BZd2Dw+baYX+Nt4GM00O4S3kEpF6Alb2Bv4LeC3kkGfAW0/p0RPoJVKr63ghHsKuRh5DIUKOAlGOwrtt9fQekAEfmhZslHUDoglB0zjfkJigN7UnTQQ4GBWomoVhEN/AOPSBh38gy+fwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMi0wMy0xNFQyMTo1NTo1MSswMDowMJcc0eEAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjItMDMtMTRUMjE6NTU6NTErMDA6MDDmQWldAAAAAElFTkSuQmCC';
35126
-
35127
- var img$7 = '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';
34944
+ var Container$g = /*#__PURE__*/styled.div.withConfig({
34945
+ displayName: "NPCDialog__Container",
34946
+ componentId: "sc-1b4aw74-0"
34947
+ })(["display:flex;width:100%;height:100%;box-sizing:border-box;justify-content:center;align-items:flex-start;position:relative;"]);
34948
+ var TextContainer$1 = /*#__PURE__*/styled.div.withConfig({
34949
+ displayName: "NPCDialog__TextContainer",
34950
+ componentId: "sc-1b4aw74-1"
34951
+ })(["flex:", " 0 0;width:355px;"], function (_ref2) {
34952
+ var flex = _ref2.flex;
34953
+ return flex;
34954
+ });
34955
+ var ThumbnailContainer = /*#__PURE__*/styled.div.withConfig({
34956
+ displayName: "NPCDialog__ThumbnailContainer",
34957
+ componentId: "sc-1b4aw74-2"
34958
+ })(["flex:30% 0 0;display:flex;justify-content:flex-end;"]);
34959
+ var NPCThumbnail = /*#__PURE__*/styled.img.withConfig({
34960
+ displayName: "NPCDialog__NPCThumbnail",
34961
+ componentId: "sc-1b4aw74-3"
34962
+ })(["image-rendering:pixelated;height:128px;width:128px;"]);
35128
34963
 
35129
34964
  (function (ImgSide) {
35130
34965
  ImgSide["right"] = "right";
@@ -35162,7 +34997,7 @@ var NPCMultiDialog = function NPCMultiDialog(_ref) {
35162
34997
  type: exports.RPGUIContainerTypes.FramedGold,
35163
34998
  width: '50%',
35164
34999
  height: '180px'
35165
- }, React__default.createElement(React__default.Fragment, null, React__default.createElement(Container$g, null, ((_textAndTypeArray$sli = textAndTypeArray[slide]) == null ? void 0 : _textAndTypeArray$sli.imageSide) === 'right' && React__default.createElement(React__default.Fragment, null, React__default.createElement(TextContainer, {
35000
+ }, React__default.createElement(React__default.Fragment, null, React__default.createElement(Container$h, null, ((_textAndTypeArray$sli = textAndTypeArray[slide]) == null ? void 0 : _textAndTypeArray$sli.imageSide) === 'right' && React__default.createElement(React__default.Fragment, null, React__default.createElement(TextContainer$2, {
35166
35001
  flex: '70%'
35167
35002
  }, React__default.createElement(NPCDialogText, {
35168
35003
  onStartStep: function onStartStep() {
@@ -35177,14 +35012,14 @@ var NPCMultiDialog = function NPCMultiDialog(_ref) {
35177
35012
  _onClose();
35178
35013
  }
35179
35014
  }
35180
- })), React__default.createElement(ThumbnailContainer, null, React__default.createElement(NPCThumbnail, {
35181
- src: textAndTypeArray[slide].imagePath || img$6
35182
- })), showGoNextIndicator && React__default.createElement(PressSpaceIndicator, {
35015
+ })), React__default.createElement(ThumbnailContainer$1, null, React__default.createElement(NPCThumbnail$1, {
35016
+ src: textAndTypeArray[slide].imagePath || img$8
35017
+ })), showGoNextIndicator && React__default.createElement(PressSpaceIndicator$1, {
35183
35018
  right: '10.5rem',
35184
35019
  src: img$7
35185
- })), textAndTypeArray[slide].imageSide === 'left' && React__default.createElement(React__default.Fragment, null, React__default.createElement(ThumbnailContainer, null, React__default.createElement(NPCThumbnail, {
35186
- src: textAndTypeArray[slide].imagePath || img$6
35187
- })), React__default.createElement(TextContainer, {
35020
+ })), textAndTypeArray[slide].imageSide === 'left' && React__default.createElement(React__default.Fragment, null, React__default.createElement(ThumbnailContainer$1, null, React__default.createElement(NPCThumbnail$1, {
35021
+ src: textAndTypeArray[slide].imagePath || img$8
35022
+ })), React__default.createElement(TextContainer$2, {
35188
35023
  flex: '70%'
35189
35024
  }, React__default.createElement(NPCDialogText, {
35190
35025
  onStartStep: function onStartStep() {
@@ -35199,31 +35034,31 @@ var NPCMultiDialog = function NPCMultiDialog(_ref) {
35199
35034
  _onClose();
35200
35035
  }
35201
35036
  }
35202
- })), showGoNextIndicator && React__default.createElement(PressSpaceIndicator, {
35037
+ })), showGoNextIndicator && React__default.createElement(PressSpaceIndicator$1, {
35203
35038
  right: '1rem',
35204
35039
  src: img$7
35205
35040
  }))), ")"));
35206
35041
  };
35207
- var Container$g = /*#__PURE__*/styled.div.withConfig({
35042
+ var Container$h = /*#__PURE__*/styled.div.withConfig({
35208
35043
  displayName: "NPCMultiDialog__Container",
35209
35044
  componentId: "sc-rvu5wg-0"
35210
35045
  })(["display:flex;width:100%;height:100%;box-sizing:border-box;justify-content:center;align-items:flex-start;position:relative;"]);
35211
- var TextContainer = /*#__PURE__*/styled.div.withConfig({
35046
+ var TextContainer$2 = /*#__PURE__*/styled.div.withConfig({
35212
35047
  displayName: "NPCMultiDialog__TextContainer",
35213
35048
  componentId: "sc-rvu5wg-1"
35214
35049
  })(["flex:", " 0 0;width:355px;"], function (_ref2) {
35215
35050
  var flex = _ref2.flex;
35216
35051
  return flex;
35217
35052
  });
35218
- var ThumbnailContainer = /*#__PURE__*/styled.div.withConfig({
35053
+ var ThumbnailContainer$1 = /*#__PURE__*/styled.div.withConfig({
35219
35054
  displayName: "NPCMultiDialog__ThumbnailContainer",
35220
35055
  componentId: "sc-rvu5wg-2"
35221
35056
  })(["flex:30% 0 0;display:flex;justify-content:flex-end;"]);
35222
- var NPCThumbnail = /*#__PURE__*/styled.img.withConfig({
35057
+ var NPCThumbnail$1 = /*#__PURE__*/styled.img.withConfig({
35223
35058
  displayName: "NPCMultiDialog__NPCThumbnail",
35224
35059
  componentId: "sc-rvu5wg-3"
35225
35060
  })(["image-rendering:pixelated;height:128px;width:128px;"]);
35226
- var PressSpaceIndicator = /*#__PURE__*/styled.img.withConfig({
35061
+ var PressSpaceIndicator$1 = /*#__PURE__*/styled.img.withConfig({
35227
35062
  displayName: "NPCMultiDialog__PressSpaceIndicator",
35228
35063
  componentId: "sc-rvu5wg-4"
35229
35064
  })(["position:absolute;right:", ";bottom:1rem;height:20.7px;image-rendering:-webkit-optimize-contrast;"], function (_ref3) {
@@ -35231,221 +35066,603 @@ var PressSpaceIndicator = /*#__PURE__*/styled.img.withConfig({
35231
35066
  return right;
35232
35067
  });
35233
35068
 
35234
- //@ts-ignore
35235
- var useEventListener = function useEventListener(type, handler, el) {
35236
- if (el === void 0) {
35237
- el = window;
35238
- }
35239
- var savedHandler = React__default.useRef();
35240
- React__default.useEffect(function () {
35241
- savedHandler.current = handler;
35242
- }, [handler]);
35243
- React__default.useEffect(function () {
35244
- //@ts-ignore
35245
- var listener = function listener(e) {
35246
- return savedHandler.current(e);
35247
- };
35248
- el.addEventListener(type, listener);
35069
+ var HistoryDialog = function HistoryDialog(_ref) {
35070
+ var backgroundImgPath = _ref.backgroundImgPath,
35071
+ fullCoverBackground = _ref.fullCoverBackground,
35072
+ questions = _ref.questions,
35073
+ answers = _ref.answers,
35074
+ text = _ref.text,
35075
+ imagePath = _ref.imagePath,
35076
+ textAndTypeArray = _ref.textAndTypeArray,
35077
+ onClose = _ref.onClose;
35078
+ var _useState = React.useState(0),
35079
+ img = _useState[0],
35080
+ setImage = _useState[1];
35081
+ var onHandleSpacePress = function onHandleSpacePress(event) {
35082
+ if (event.code === 'Space') {
35083
+ if (img < (backgroundImgPath == null ? void 0 : backgroundImgPath.length) - 1) {
35084
+ setImage(function (prev) {
35085
+ return prev + 1;
35086
+ });
35087
+ } else {
35088
+ // if there's no more text chunks, close the dialog
35089
+ onClose();
35090
+ }
35091
+ }
35092
+ };
35093
+ React.useEffect(function () {
35094
+ document.addEventListener('keydown', onHandleSpacePress);
35249
35095
  return function () {
35250
- el.removeEventListener(type, listener);
35096
+ return document.removeEventListener('keydown', onHandleSpacePress);
35251
35097
  };
35252
- }, [type, el]);
35098
+ }, [backgroundImgPath]);
35099
+ return React__default.createElement(BackgroundContainer, {
35100
+ imgPath: backgroundImgPath[img],
35101
+ fullImg: fullCoverBackground
35102
+ }, React__default.createElement(DialogContainer, null, textAndTypeArray ? React__default.createElement(NPCMultiDialog, {
35103
+ textAndTypeArray: textAndTypeArray,
35104
+ onClose: onClose
35105
+ }) : questions && answers ? React__default.createElement(QuestionDialog, {
35106
+ questions: questions,
35107
+ answers: answers,
35108
+ onClose: onClose
35109
+ }) : text && imagePath ? React__default.createElement(NPCDialog, {
35110
+ text: text,
35111
+ imagePath: imagePath,
35112
+ onClose: onClose,
35113
+ type: exports.NPCDialogType.TextAndThumbnail
35114
+ }) : React__default.createElement(NPCDialog, {
35115
+ text: text,
35116
+ onClose: onClose,
35117
+ type: exports.NPCDialogType.TextOnly
35118
+ })));
35253
35119
  };
35120
+ var BackgroundContainer = /*#__PURE__*/styled.div.withConfig({
35121
+ displayName: "HistoryDialog__BackgroundContainer",
35122
+ componentId: "sc-u6oe75-0"
35123
+ })(["width:100%;height:100%;background-image:url(", ");background-size:", ";display:flex;justify-content:space-evenly;align-items:center;"], function (props) {
35124
+ return props.imgPath;
35125
+ }, function (props) {
35126
+ return props.imgPath ? 'cover' : 'auto';
35127
+ });
35128
+ var DialogContainer = /*#__PURE__*/styled.div.withConfig({
35129
+ displayName: "HistoryDialog__DialogContainer",
35130
+ componentId: "sc-u6oe75-1"
35131
+ })(["display:flex;justify-content:center;padding-top:200px;"]);
35254
35132
 
35255
- var DynamicText = function DynamicText(_ref) {
35256
- var text = _ref.text,
35257
- onFinish = _ref.onFinish,
35258
- onStart = _ref.onStart;
35259
- var _useState = React.useState(''),
35260
- textState = _useState[0],
35261
- setTextState = _useState[1];
35133
+ var SlotsContainer = function SlotsContainer(_ref) {
35134
+ var children = _ref.children,
35135
+ title = _ref.title,
35136
+ onClose = _ref.onClose,
35137
+ _onPositionChange = _ref.onPositionChange,
35138
+ _onPositionChangeEnd = _ref.onPositionChangeEnd,
35139
+ _onPositionChangeStart = _ref.onPositionChangeStart,
35140
+ onOutsideClick = _ref.onOutsideClick,
35141
+ initialPosition = _ref.initialPosition,
35142
+ scale = _ref.scale;
35143
+ return React__default.createElement(DraggableContainer, {
35144
+ title: title,
35145
+ type: exports.RPGUIContainerTypes.Framed,
35146
+ onCloseButton: function onCloseButton() {
35147
+ if (onClose) {
35148
+ onClose();
35149
+ }
35150
+ },
35151
+ width: "400px",
35152
+ cancelDrag: ".item-container-body, #shortcuts_list",
35153
+ onPositionChange: function onPositionChange(_ref2) {
35154
+ var x = _ref2.x,
35155
+ y = _ref2.y;
35156
+ if (_onPositionChange) {
35157
+ _onPositionChange({
35158
+ x: x,
35159
+ y: y
35160
+ });
35161
+ }
35162
+ },
35163
+ onPositionChangeEnd: function onPositionChangeEnd(_ref3) {
35164
+ var x = _ref3.x,
35165
+ y = _ref3.y;
35166
+ if (_onPositionChangeEnd) {
35167
+ _onPositionChangeEnd({
35168
+ x: x,
35169
+ y: y
35170
+ });
35171
+ }
35172
+ },
35173
+ onPositionChangeStart: function onPositionChangeStart(_ref4) {
35174
+ var x = _ref4.x,
35175
+ y = _ref4.y;
35176
+ if (_onPositionChangeStart) {
35177
+ _onPositionChangeStart({
35178
+ x: x,
35179
+ y: y
35180
+ });
35181
+ }
35182
+ },
35183
+ onOutsideClick: onOutsideClick,
35184
+ initialPosition: initialPosition,
35185
+ scale: scale
35186
+ }, children);
35187
+ };
35188
+
35189
+ (function (RangeSliderType) {
35190
+ RangeSliderType["Slider"] = "rpgui-slider";
35191
+ RangeSliderType["GoldSlider"] = "rpgui-slider golden";
35192
+ })(exports.RangeSliderType || (exports.RangeSliderType = {}));
35193
+ var RangeSlider = function RangeSlider(_ref) {
35194
+ var type = _ref.type,
35195
+ valueMin = _ref.valueMin,
35196
+ valueMax = _ref.valueMax,
35197
+ width = _ref.width,
35198
+ _onChange = _ref.onChange,
35199
+ value = _ref.value;
35200
+ var sliderId = uuid.v4();
35201
+ var containerRef = React.useRef(null);
35202
+ var _useState = React.useState(0),
35203
+ left = _useState[0],
35204
+ setLeft = _useState[1];
35205
+ React.useEffect(function () {
35206
+ var _containerRef$current;
35207
+ var calculatedWidth = ((_containerRef$current = containerRef.current) == null ? void 0 : _containerRef$current.clientWidth) || 0;
35208
+ setLeft(Math.max((value - valueMin) / (valueMax - valueMin) * (calculatedWidth - 35) + 10));
35209
+ }, [value, valueMin, valueMax]);
35210
+ var typeClass = type === exports.RangeSliderType.GoldSlider ? 'golden' : '';
35211
+ return React__default.createElement("div", {
35212
+ style: {
35213
+ width: width,
35214
+ position: 'relative'
35215
+ },
35216
+ className: "rpgui-slider-container " + typeClass,
35217
+ id: "rpgui-slider-" + sliderId,
35218
+ ref: containerRef
35219
+ }, React__default.createElement("div", {
35220
+ style: {
35221
+ pointerEvents: 'none'
35222
+ }
35223
+ }, React__default.createElement("div", {
35224
+ className: "rpgui-slider-track " + typeClass
35225
+ }), React__default.createElement("div", {
35226
+ className: "rpgui-slider-left-edge " + typeClass
35227
+ }), React__default.createElement("div", {
35228
+ className: "rpgui-slider-right-edge " + typeClass
35229
+ }), React__default.createElement("div", {
35230
+ className: "rpgui-slider-thumb " + typeClass,
35231
+ style: {
35232
+ left: left
35233
+ }
35234
+ })), React__default.createElement(Input$1, {
35235
+ type: "range",
35236
+ style: {
35237
+ width: width
35238
+ },
35239
+ min: valueMin,
35240
+ max: valueMax,
35241
+ onChange: function onChange(e) {
35242
+ return _onChange(Number(e.target.value));
35243
+ },
35244
+ value: value,
35245
+ className: "rpgui-cursor-point"
35246
+ }));
35247
+ };
35248
+ var Input$1 = /*#__PURE__*/styled.input.withConfig({
35249
+ displayName: "RangeSlider__Input",
35250
+ componentId: "sc-v8mte9-0"
35251
+ })(["opacity:0;position:absolute;width:100%;height:100%;top:0;left:0;margin-top:-5px;"]);
35252
+
35253
+ var ItemQuantitySelector = function ItemQuantitySelector(_ref) {
35254
+ var quantity = _ref.quantity,
35255
+ onConfirm = _ref.onConfirm,
35256
+ onClose = _ref.onClose;
35257
+ var _useState = React.useState(quantity),
35258
+ value = _useState[0],
35259
+ setValue = _useState[1];
35260
+ var inputRef = React.useRef(null);
35262
35261
  React.useEffect(function () {
35263
- var i = 0;
35264
- var interval = setInterval(function () {
35265
- // on every interval, show one more character
35266
- if (i === 0) {
35267
- if (onStart) {
35268
- onStart();
35262
+ if (inputRef.current) {
35263
+ inputRef.current.focus();
35264
+ inputRef.current.select();
35265
+ var closeSelector = function closeSelector(e) {
35266
+ if (e.key === 'Escape') {
35267
+ onClose();
35269
35268
  }
35269
+ };
35270
+ document.addEventListener('keydown', closeSelector);
35271
+ return function () {
35272
+ document.removeEventListener('keydown', closeSelector);
35273
+ };
35274
+ }
35275
+ return function () {};
35276
+ }, []);
35277
+ return React__default.createElement(StyledContainer, {
35278
+ type: exports.RPGUIContainerTypes.Framed,
35279
+ width: "25rem"
35280
+ }, React__default.createElement(CloseButton$2, {
35281
+ className: "container-close",
35282
+ onPointerDown: onClose
35283
+ }, "X"), React__default.createElement("h2", null, "Select quantity to move"), React__default.createElement(StyledForm, {
35284
+ style: {
35285
+ width: '100%'
35286
+ },
35287
+ onSubmit: function onSubmit(e) {
35288
+ e.preventDefault();
35289
+ var numberValue = Number(value);
35290
+ if (Number.isNaN(numberValue)) {
35291
+ return;
35270
35292
  }
35271
- if (i < text.length) {
35272
- setTextState(text.substring(0, i + 1));
35273
- i++;
35274
- } else {
35275
- clearInterval(interval);
35276
- if (onFinish) {
35277
- onFinish();
35278
- }
35293
+ onConfirm(Math.max(1, Math.min(quantity, numberValue)));
35294
+ },
35295
+ noValidate: true
35296
+ }, React__default.createElement(StyledInput, {
35297
+ innerRef: inputRef,
35298
+ placeholder: "Enter quantity",
35299
+ type: "number",
35300
+ min: 1,
35301
+ max: quantity,
35302
+ value: value,
35303
+ onChange: function onChange(e) {
35304
+ if (Number(e.target.value) >= quantity) {
35305
+ setValue(quantity);
35306
+ return;
35279
35307
  }
35280
- }, 50);
35281
- return function () {
35282
- clearInterval(interval);
35283
- };
35284
- }, [text]);
35285
- return React__default.createElement(TextContainer$1, null, textState);
35308
+ setValue(e.target.value);
35309
+ },
35310
+ onBlur: function onBlur(e) {
35311
+ var newValue = Math.max(1, Math.min(quantity, Number(e.target.value)));
35312
+ setValue(newValue);
35313
+ }
35314
+ }), React__default.createElement(RangeSlider, {
35315
+ type: exports.RangeSliderType.Slider,
35316
+ valueMin: 1,
35317
+ valueMax: quantity,
35318
+ width: "100%",
35319
+ onChange: setValue,
35320
+ value: value
35321
+ }), React__default.createElement(Button, {
35322
+ buttonType: exports.ButtonTypes.RPGUIButton,
35323
+ type: "submit"
35324
+ }, "Confirm")));
35286
35325
  };
35287
- var TextContainer$1 = /*#__PURE__*/styled.p.withConfig({
35288
- displayName: "DynamicText__TextContainer",
35289
- componentId: "sc-1ggl9nd-0"
35290
- })(["font-size:0.7rem !important;color:white;text-shadow:1px 1px 0px #000000;letter-spacing:1.2px;word-break:normal;"]);
35326
+ var StyledContainer = /*#__PURE__*/styled(RPGUIContainer).withConfig({
35327
+ displayName: "ItemQuantitySelector__StyledContainer",
35328
+ componentId: "sc-yfdtpn-0"
35329
+ })(["display:flex;flex-direction:column;align-items:center;"]);
35330
+ var StyledForm = /*#__PURE__*/styled.form.withConfig({
35331
+ displayName: "ItemQuantitySelector__StyledForm",
35332
+ componentId: "sc-yfdtpn-1"
35333
+ })(["display:flex;flex-direction:column;align-items:center;width:100%;"]);
35334
+ var StyledInput = /*#__PURE__*/styled(Input).withConfig({
35335
+ displayName: "ItemQuantitySelector__StyledInput",
35336
+ componentId: "sc-yfdtpn-2"
35337
+ })(["text-align:center;&::-webkit-outer-spin-button,&::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}&[type='number']{-moz-appearance:textfield;}"]);
35338
+ var CloseButton$2 = /*#__PURE__*/styled.div.withConfig({
35339
+ displayName: "ItemQuantitySelector__CloseButton",
35340
+ componentId: "sc-yfdtpn-3"
35341
+ })(["position:absolute;top:3px;right:0px;color:white;z-index:22;font-size:0.8rem;"]);
35291
35342
 
35292
- var QuestionDialog = function QuestionDialog(_ref) {
35293
- var questions = _ref.questions,
35294
- answers = _ref.answers,
35295
- onClose = _ref.onClose;
35296
- var _useState = React.useState(questions[0]),
35297
- currentQuestion = _useState[0],
35298
- setCurrentQuestion = _useState[1];
35299
- var _useState2 = React.useState(false),
35300
- canShowAnswers = _useState2[0],
35301
- setCanShowAnswers = _useState2[1];
35302
- var onGetFirstAnswer = function onGetFirstAnswer() {
35303
- if (!currentQuestion.answerIds || currentQuestion.answerIds.length === 0) {
35304
- return null;
35343
+ var ShortcutsSetter = function ShortcutsSetter(_ref) {
35344
+ var setSettingShortcutIndex = _ref.setSettingShortcutIndex,
35345
+ settingShortcutIndex = _ref.settingShortcutIndex,
35346
+ shortcuts = _ref.shortcuts,
35347
+ removeShortcut = _ref.removeShortcut,
35348
+ atlasJSON = _ref.atlasJSON,
35349
+ atlasIMG = _ref.atlasIMG;
35350
+ var getContent = function getContent(index) {
35351
+ var _shortcuts$index, _shortcuts$index3;
35352
+ if (((_shortcuts$index = shortcuts[index]) == null ? void 0 : _shortcuts$index.type) === shared.ShortcutType.Item) {
35353
+ var _shortcuts$index2;
35354
+ var _payload = (_shortcuts$index2 = shortcuts[index]) == null ? void 0 : _shortcuts$index2.payload;
35355
+ if (!_payload) return null;
35356
+ return React__default.createElement(SpriteFromAtlas, {
35357
+ atlasIMG: atlasIMG,
35358
+ atlasJSON: atlasJSON,
35359
+ spriteKey: shared.getItemTextureKeyPath({
35360
+ key: _payload.texturePath,
35361
+ texturePath: _payload.texturePath,
35362
+ stackQty: _payload.stackQty || 1,
35363
+ isStackable: _payload.isStackable
35364
+ }, atlasJSON),
35365
+ width: 32,
35366
+ height: 32,
35367
+ imgScale: 1.6,
35368
+ imgStyle: {
35369
+ left: '5px'
35370
+ }
35371
+ });
35372
+ }
35373
+ var payload = (_shortcuts$index3 = shortcuts[index]) == null ? void 0 : _shortcuts$index3.payload;
35374
+ return React__default.createElement("span", null, payload == null ? void 0 : payload.magicWords.split(' ').map(function (word) {
35375
+ return word[0];
35376
+ }));
35377
+ };
35378
+ return React__default.createElement(Container$i, null, React__default.createElement("p", null, "Shortcuts:"), React__default.createElement(List, {
35379
+ id: "shortcuts_list"
35380
+ }, Array.from({
35381
+ length: 6
35382
+ }).map(function (_, i) {
35383
+ return React__default.createElement(Shortcut, {
35384
+ key: i,
35385
+ onPointerDown: function onPointerDown() {
35386
+ removeShortcut(i);
35387
+ if (!shortcuts[i] || shortcuts[i].type === shared.ShortcutType.None) setSettingShortcutIndex(i);
35388
+ },
35389
+ disabled: settingShortcutIndex !== -1 && settingShortcutIndex !== i,
35390
+ isBeingSet: settingShortcutIndex === i
35391
+ }, getContent(i));
35392
+ })));
35393
+ };
35394
+ var Container$i = /*#__PURE__*/styled.div.withConfig({
35395
+ displayName: "ShortcutsSetter__Container",
35396
+ componentId: "sc-xuouuf-0"
35397
+ })(["p{margin:0;margin-left:0.5rem;}"]);
35398
+ var Shortcut = /*#__PURE__*/styled.button.withConfig({
35399
+ displayName: "ShortcutsSetter__Shortcut",
35400
+ componentId: "sc-xuouuf-1"
35401
+ })(["width:2.6rem;height:2.6rem;background-color:", ";border:2px solid ", ";border-radius:50%;text-transform:uppercase;font-size:0.7rem;font-weight:bold;display:flex;align-items:center;justify-content:center;span{margin-top:4px;}&:hover,&:focus{background-color:", ";}&:active{background-color:", ";}&:disabled{opacity:0.5;}"], uiColors.lightGray, function (_ref2) {
35402
+ var isBeingSet = _ref2.isBeingSet;
35403
+ return isBeingSet ? uiColors.yellow : uiColors.darkGray;
35404
+ }, uiColors.darkGray, uiColors.gray);
35405
+ var List = /*#__PURE__*/styled.div.withConfig({
35406
+ displayName: "ShortcutsSetter__List",
35407
+ componentId: "sc-xuouuf-2"
35408
+ })(["width:100%;display:flex;align-items:center;gap:0.5rem;padding-bottom:0.5rem;padding-left:0.5rem;box-sizing:border-box;margin:0 !important;"]);
35409
+
35410
+ var ItemContainer$1 = function ItemContainer(_ref) {
35411
+ var itemContainer = _ref.itemContainer,
35412
+ onClose = _ref.onClose,
35413
+ _onMouseOver = _ref.onMouseOver,
35414
+ _onSelected = _ref.onSelected,
35415
+ onItemClick = _ref.onItemClick,
35416
+ type = _ref.type,
35417
+ atlasJSON = _ref.atlasJSON,
35418
+ atlasIMG = _ref.atlasIMG,
35419
+ _ref$disableContextMe = _ref.disableContextMenu,
35420
+ disableContextMenu = _ref$disableContextMe === void 0 ? false : _ref$disableContextMe,
35421
+ onItemDragEnd = _ref.onItemDragEnd,
35422
+ onItemDragStart = _ref.onItemDragStart,
35423
+ onItemPlaceDrop = _ref.onItemPlaceDrop,
35424
+ _onOutsideDrop = _ref.onOutsideDrop,
35425
+ checkIfItemCanBeMoved = _ref.checkIfItemCanBeMoved,
35426
+ initialPosition = _ref.initialPosition,
35427
+ checkIfItemShouldDragEnd = _ref.checkIfItemShouldDragEnd,
35428
+ scale = _ref.scale,
35429
+ shortcuts = _ref.shortcuts,
35430
+ setItemShortcut = _ref.setItemShortcut,
35431
+ removeShortcut = _ref.removeShortcut,
35432
+ equipmentSet = _ref.equipmentSet,
35433
+ isDepotSystem = _ref.isDepotSystem,
35434
+ onPositionChangeEnd = _ref.onPositionChangeEnd,
35435
+ onPositionChangeStart = _ref.onPositionChangeStart;
35436
+ var _useState = React.useState({
35437
+ isOpen: false,
35438
+ maxQuantity: 1,
35439
+ callback: function callback(_quantity) {}
35440
+ }),
35441
+ quantitySelect = _useState[0],
35442
+ setQuantitySelect = _useState[1];
35443
+ var _useState2 = React.useState(-1),
35444
+ settingShortcutIndex = _useState2[0],
35445
+ setSettingShortcutIndex = _useState2[1];
35446
+ var onRenderSlots = function onRenderSlots() {
35447
+ var slots = [];
35448
+ for (var i = 0; i < itemContainer.slotQty; i++) {
35449
+ var _itemContainer$slots;
35450
+ slots.push(React__default.createElement(ItemSlot, {
35451
+ isContextMenuDisabled: disableContextMenu,
35452
+ key: i,
35453
+ slotIndex: i,
35454
+ item: ((_itemContainer$slots = itemContainer.slots) == null ? void 0 : _itemContainer$slots[i]) || null,
35455
+ itemContainerType: type,
35456
+ onMouseOver: function onMouseOver(event, slotIndex, item) {
35457
+ if (_onMouseOver) _onMouseOver(event, slotIndex, item);
35458
+ },
35459
+ onPointerDown: function onPointerDown(itemType, containerType, item) {
35460
+ if (settingShortcutIndex !== -1) {
35461
+ setSettingShortcutIndex(-1);
35462
+ if (itemType === shared.ItemType.Consumable || itemType === shared.ItemType.Tool) {
35463
+ setItemShortcut == null ? void 0 : setItemShortcut(item.key, settingShortcutIndex);
35464
+ }
35465
+ } else if (onItemClick) onItemClick(item, itemType, containerType);
35466
+ },
35467
+ onSelected: function onSelected(optionId, item) {
35468
+ if (_onSelected) _onSelected(optionId, item);
35469
+ },
35470
+ onDragStart: function onDragStart(item, slotIndex, itemContainerType) {
35471
+ if (onItemDragStart) onItemDragStart(item, slotIndex, itemContainerType);
35472
+ },
35473
+ onDragEnd: function onDragEnd(quantity) {
35474
+ if (onItemDragEnd) onItemDragEnd(quantity);
35475
+ },
35476
+ dragScale: scale,
35477
+ checkIfItemCanBeMoved: checkIfItemCanBeMoved,
35478
+ checkIfItemShouldDragEnd: checkIfItemShouldDragEnd,
35479
+ openQuantitySelector: function openQuantitySelector(maxQuantity, callback) {
35480
+ setQuantitySelect({
35481
+ isOpen: true,
35482
+ maxQuantity: maxQuantity,
35483
+ callback: callback
35484
+ });
35485
+ },
35486
+ onPlaceDrop: function onPlaceDrop(item, slotIndex, itemContainerType) {
35487
+ if (onItemPlaceDrop) onItemPlaceDrop(item, slotIndex, itemContainerType);
35488
+ },
35489
+ onOutsideDrop: function onOutsideDrop(item, position) {
35490
+ if (_onOutsideDrop) _onOutsideDrop(item, position);
35491
+ },
35492
+ atlasIMG: atlasIMG,
35493
+ atlasJSON: atlasJSON,
35494
+ isSelectingShortcut: settingShortcutIndex !== -1,
35495
+ equipmentSet: equipmentSet,
35496
+ isDepotSystem: isDepotSystem
35497
+ }));
35305
35498
  }
35306
- var firstAnswerId = currentQuestion.answerIds[0];
35307
- return answers.find(function (answer) {
35308
- return answer.id === firstAnswerId;
35309
- });
35499
+ return slots;
35310
35500
  };
35311
- var _useState3 = React.useState(onGetFirstAnswer()),
35312
- currentAnswer = _useState3[0],
35313
- setCurrentAnswer = _useState3[1];
35314
- React.useEffect(function () {
35315
- setCurrentAnswer(onGetFirstAnswer());
35316
- }, [currentQuestion]);
35317
- var onGetAnswers = function onGetAnswers(answerIds) {
35318
- return answerIds.map(function (answerId) {
35319
- return answers.find(function (answer) {
35320
- return answer.id === answerId;
35501
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement(SlotsContainer, {
35502
+ title: itemContainer.name || 'Container',
35503
+ onClose: onClose,
35504
+ initialPosition: initialPosition,
35505
+ scale: scale,
35506
+ onPositionChangeEnd: onPositionChangeEnd,
35507
+ onPositionChangeStart: onPositionChangeStart
35508
+ }, type === shared.ItemContainerType.Inventory && shortcuts && removeShortcut && React__default.createElement(ShortcutsSetter, {
35509
+ setSettingShortcutIndex: setSettingShortcutIndex,
35510
+ settingShortcutIndex: settingShortcutIndex,
35511
+ shortcuts: shortcuts,
35512
+ removeShortcut: removeShortcut,
35513
+ atlasIMG: atlasIMG,
35514
+ atlasJSON: atlasJSON
35515
+ }), React__default.createElement(ItemsContainer, {
35516
+ className: "item-container-body"
35517
+ }, onRenderSlots())), quantitySelect.isOpen && React__default.createElement(ModalPortal, null, React__default.createElement(QuantitySelectorContainer, null, React__default.createElement(ItemQuantitySelector, {
35518
+ quantity: quantitySelect.maxQuantity,
35519
+ onConfirm: function onConfirm(quantity) {
35520
+ quantitySelect.callback(quantity);
35521
+ setQuantitySelect({
35522
+ isOpen: false,
35523
+ maxQuantity: 1,
35524
+ callback: function callback() {}
35525
+ });
35526
+ },
35527
+ onClose: function onClose() {
35528
+ quantitySelect.callback(-1);
35529
+ setQuantitySelect({
35530
+ isOpen: false,
35531
+ maxQuantity: 1,
35532
+ callback: function callback() {}
35321
35533
  });
35322
- });
35323
- };
35324
- var onKeyPress = function onKeyPress(e) {
35325
- switch (e.key) {
35326
- case 'ArrowDown':
35327
- // select next answer, if any.
35328
- // if no next answer, select first answer
35329
- // const nextAnswer = onGetAnswers(currentQuestion.answerIds!).find(
35330
- // (answer) => answer?.id === currentAnswer!.id + 1
35331
- // );
35332
- var nextAnswerIndex = onGetAnswers(currentQuestion.answerIds).findIndex(function (answer) {
35333
- return (answer == null ? void 0 : answer.id) === currentAnswer.id + 1;
35334
- });
35335
- var nextAnswerID = currentQuestion.answerIds[nextAnswerIndex];
35336
- var nextAnswer = onGetAnswers(currentQuestion.answerIds).find(function (answer) {
35337
- return (answer == null ? void 0 : answer.id) === nextAnswerID;
35338
- });
35339
- setCurrentAnswer(nextAnswer || onGetFirstAnswer());
35340
- break;
35341
- case 'ArrowUp':
35342
- // select previous answer, if any.
35343
- // if no previous answer, select last answer
35344
- var previousAnswerIndex = onGetAnswers(currentQuestion.answerIds).findIndex(function (answer) {
35345
- return (answer == null ? void 0 : answer.id) === currentAnswer.id - 1;
35346
- });
35347
- var previousAnswerID = currentQuestion.answerIds && currentQuestion.answerIds[previousAnswerIndex];
35348
- var previousAnswer = onGetAnswers(currentQuestion.answerIds).find(function (answer) {
35349
- return (answer == null ? void 0 : answer.id) === previousAnswerID;
35350
- });
35351
- if (previousAnswer) {
35352
- setCurrentAnswer(previousAnswer);
35353
- } else {
35354
- setCurrentAnswer(onGetAnswers(currentQuestion.answerIds).pop());
35355
- }
35356
- break;
35357
- case 'Enter':
35358
- setCanShowAnswers(false);
35359
- if (!(currentAnswer != null && currentAnswer.nextQuestionId)) {
35360
- onClose();
35361
- return;
35362
- } else {
35363
- setCurrentQuestion(questions.find(function (question) {
35364
- return question.id === currentAnswer.nextQuestionId;
35365
- }));
35366
- }
35367
- break;
35368
35534
  }
35535
+ }))));
35536
+ };
35537
+ var ItemsContainer = /*#__PURE__*/styled.div.withConfig({
35538
+ displayName: "ItemContainer__ItemsContainer",
35539
+ componentId: "sc-15y5p9l-0"
35540
+ })(["display:flex;justify-content:center;flex-wrap:wrap;"]);
35541
+ var QuantitySelectorContainer = /*#__PURE__*/styled.div.withConfig({
35542
+ displayName: "ItemContainer__QuantitySelectorContainer",
35543
+ componentId: "sc-15y5p9l-1"
35544
+ })(["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);"]);
35545
+
35546
+ var ItemSelector = function ItemSelector(_ref) {
35547
+ var atlasIMG = _ref.atlasIMG,
35548
+ atlasJSON = _ref.atlasJSON,
35549
+ options = _ref.options,
35550
+ onClose = _ref.onClose,
35551
+ onSelect = _ref.onSelect;
35552
+ var _useState = React.useState(),
35553
+ selectedValue = _useState[0],
35554
+ setSelectedValue = _useState[1];
35555
+ var handleClick = function handleClick() {
35556
+ var element = document.querySelector("input[name='test']:checked");
35557
+ var elementValue = element.value;
35558
+ setSelectedValue(elementValue);
35369
35559
  };
35370
- useEventListener('keydown', onKeyPress);
35371
- var onAnswerClick = function onAnswerClick(answer) {
35372
- setCanShowAnswers(false);
35373
- if (answer.nextQuestionId) {
35374
- // if there is a next question, go to it
35375
- setCurrentQuestion(questions.find(function (question) {
35376
- return question.id === answer.nextQuestionId;
35377
- }));
35378
- } else {
35379
- // else, finish dialog!
35380
- onClose();
35560
+ React.useEffect(function () {
35561
+ if (selectedValue) {
35562
+ onSelect(selectedValue);
35381
35563
  }
35382
- };
35383
- var onRenderCurrentAnswers = function onRenderCurrentAnswers() {
35384
- var answerIds = currentQuestion.answerIds;
35385
- if (!answerIds) {
35386
- return null;
35564
+ }, [selectedValue]);
35565
+ return React__default.createElement(DraggableContainer, {
35566
+ type: exports.RPGUIContainerTypes.Framed,
35567
+ width: "500px",
35568
+ cancelDrag: ".equipment-container-body .arrow-selector",
35569
+ onCloseButton: function onCloseButton() {
35570
+ if (onClose) {
35571
+ onClose();
35572
+ }
35387
35573
  }
35388
- var answers = onGetAnswers(answerIds);
35389
- if (!answers) {
35390
- return null;
35574
+ }, React__default.createElement("div", {
35575
+ style: {
35576
+ width: '100%'
35391
35577
  }
35392
- return answers.map(function (answer) {
35393
- var isSelected = (currentAnswer == null ? void 0 : currentAnswer.id) === (answer == null ? void 0 : answer.id);
35394
- var selectedColor = isSelected ? 'yellow' : 'white';
35395
- if (answer) {
35396
- return React__default.createElement(AnswerRow, {
35397
- key: "answer_" + answer.id
35398
- }, React__default.createElement(AnswerSelectedIcon, {
35399
- color: selectedColor
35400
- }, isSelected ? 'X' : null), React__default.createElement(Answer, {
35401
- key: answer.id,
35402
- onPointerDown: function onPointerDown() {
35403
- return onAnswerClick(answer);
35404
- },
35405
- color: selectedColor
35406
- }, answer.text));
35578
+ }, React__default.createElement(Title$3, null, 'Harvesting instruments'), React__default.createElement(Subtitle$1, null, 'Use the tool, you need it'), React__default.createElement("hr", {
35579
+ className: "golden"
35580
+ })), React__default.createElement(RadioInputScroller$1, null, options == null ? void 0 : options.map(function (option, index) {
35581
+ return React__default.createElement(RadioOptionsWrapper$1, {
35582
+ key: index
35583
+ }, React__default.createElement(SpriteAtlasWrapper$1, null, React__default.createElement(SpriteFromAtlas, {
35584
+ atlasIMG: atlasIMG,
35585
+ atlasJSON: atlasJSON,
35586
+ spriteKey: option.imageKey,
35587
+ imgScale: 3
35588
+ })), React__default.createElement("div", null, React__default.createElement("input", {
35589
+ className: "rpgui-radio",
35590
+ type: "radio",
35591
+ value: option.name,
35592
+ name: "test"
35593
+ }), React__default.createElement("label", {
35594
+ onPointerDown: handleClick,
35595
+ style: {
35596
+ display: 'flex',
35597
+ alignItems: 'center'
35407
35598
  }
35408
- return null;
35409
- });
35410
- };
35411
- return React__default.createElement(Container$h, null, React__default.createElement(QuestionContainer, null, React__default.createElement(DynamicText, {
35412
- text: currentQuestion.text,
35413
- onStart: function onStart() {
35414
- return setCanShowAnswers(false);
35415
- },
35416
- onFinish: function onFinish() {
35417
- return setCanShowAnswers(true);
35599
+ }, option.name, " ", React__default.createElement("br", null), option.description)));
35600
+ })), React__default.createElement(ButtonWrapper$1, null, React__default.createElement(Button, {
35601
+ buttonType: exports.ButtonTypes.RPGUIButton,
35602
+ onPointerDown: onClose
35603
+ }, "Cancel"), React__default.createElement(Button, {
35604
+ buttonType: exports.ButtonTypes.RPGUIButton
35605
+ }, "Select")));
35606
+ };
35607
+ var Title$3 = /*#__PURE__*/styled.h1.withConfig({
35608
+ displayName: "ItemSelector__Title",
35609
+ componentId: "sc-gptoxp-0"
35610
+ })(["font-size:0.6rem;color:yellow !important;"]);
35611
+ var Subtitle$1 = /*#__PURE__*/styled.h1.withConfig({
35612
+ displayName: "ItemSelector__Subtitle",
35613
+ componentId: "sc-gptoxp-1"
35614
+ })(["font-size:0.4rem;color:yellow !important;"]);
35615
+ var RadioInputScroller$1 = /*#__PURE__*/styled.div.withConfig({
35616
+ displayName: "ItemSelector__RadioInputScroller",
35617
+ componentId: "sc-gptoxp-2"
35618
+ })(["padding-left:15px;padding-top:10px;width:100%;margin-top:1rem;align-items:center;margin-left:20px;align-items:flex-start;overflow-y:scroll;height:360px;"]);
35619
+ var SpriteAtlasWrapper$1 = /*#__PURE__*/styled.div.withConfig({
35620
+ displayName: "ItemSelector__SpriteAtlasWrapper",
35621
+ componentId: "sc-gptoxp-3"
35622
+ })(["margin-right:40px;"]);
35623
+ var RadioOptionsWrapper$1 = /*#__PURE__*/styled.div.withConfig({
35624
+ displayName: "ItemSelector__RadioOptionsWrapper",
35625
+ componentId: "sc-gptoxp-4"
35626
+ })(["display:flex;align-items:stretch;margin-bottom:40px;"]);
35627
+ var ButtonWrapper$1 = /*#__PURE__*/styled.div.withConfig({
35628
+ displayName: "ItemSelector__ButtonWrapper",
35629
+ componentId: "sc-gptoxp-5"
35630
+ })(["display:flex;justify-content:space-around;padding-top:20px;width:100%;"]);
35631
+
35632
+ var ListMenu = function ListMenu(_ref) {
35633
+ var options = _ref.options,
35634
+ onSelected = _ref.onSelected,
35635
+ x = _ref.x,
35636
+ y = _ref.y;
35637
+ return React__default.createElement(Container$j, {
35638
+ x: x,
35639
+ y: y
35640
+ }, React__default.createElement("ul", {
35641
+ className: "rpgui-list-imp",
35642
+ style: {
35643
+ overflow: 'hidden'
35418
35644
  }
35419
- })), canShowAnswers && React__default.createElement(AnswersContainer, null, onRenderCurrentAnswers()));
35645
+ }, options.map(function (params, index) {
35646
+ return React__default.createElement(ListElement$1, {
35647
+ key: (params == null ? void 0 : params.id) || index,
35648
+ onPointerDown: function onPointerDown() {
35649
+ onSelected(params == null ? void 0 : params.id);
35650
+ }
35651
+ }, (params == null ? void 0 : params.text) || 'No text');
35652
+ })));
35420
35653
  };
35421
- var Container$h = /*#__PURE__*/styled.div.withConfig({
35422
- displayName: "QuestionDialog__Container",
35423
- componentId: "sc-bxc5u0-0"
35424
- })(["display:flex;word-break:break-all;box-sizing:border-box;justify-content:flex-start;align-items:flex-start;flex-wrap:wrap;"]);
35425
- var QuestionContainer = /*#__PURE__*/styled.div.withConfig({
35426
- displayName: "QuestionDialog__QuestionContainer",
35427
- componentId: "sc-bxc5u0-1"
35428
- })(["flex:100%;width:100%;"]);
35429
- var AnswersContainer = /*#__PURE__*/styled.div.withConfig({
35430
- displayName: "QuestionDialog__AnswersContainer",
35431
- componentId: "sc-bxc5u0-2"
35432
- })(["flex:100%;"]);
35433
- var Answer = /*#__PURE__*/styled.p.withConfig({
35434
- displayName: "QuestionDialog__Answer",
35435
- componentId: "sc-bxc5u0-3"
35436
- })(["flex:auto;color:", " !important;font-size:0.65rem !important;background:inherit;border:none;"], function (props) {
35437
- return props.color;
35438
- });
35439
- var AnswerSelectedIcon = /*#__PURE__*/styled.span.withConfig({
35440
- displayName: "QuestionDialog__AnswerSelectedIcon",
35441
- componentId: "sc-bxc5u0-4"
35442
- })(["flex:5% 0 0;color:", " !important;"], function (props) {
35443
- return props.color;
35444
- });
35445
- var AnswerRow = /*#__PURE__*/styled.div.withConfig({
35446
- displayName: "QuestionDialog__AnswerRow",
35447
- componentId: "sc-bxc5u0-5"
35448
- })(["display:flex;flex-wrap:wrap;justify-content:center;align-items:center;margin-bottom:0.5rem;height:22px;p{line-height:unset;margin-top:0;margin-bottom:0rem;}"]);
35654
+ var Container$j = /*#__PURE__*/styled.div.withConfig({
35655
+ displayName: "ListMenu__Container",
35656
+ componentId: "sc-i9097t-0"
35657
+ })(["display:flex;flex-direction:column;width:100%;justify-content:start;align-items:flex-start;position:absolute;top:", "px;left:", "px;li{font-size:", ";}"], function (props) {
35658
+ return props.y || 0;
35659
+ }, function (props) {
35660
+ return props.x || 0;
35661
+ }, uiFonts.size.xsmall);
35662
+ var ListElement$1 = /*#__PURE__*/styled.li.withConfig({
35663
+ displayName: "ListMenu__ListElement",
35664
+ componentId: "sc-i9097t-1"
35665
+ })(["margin-right:0.5rem;"]);
35449
35666
 
35450
35667
  var ProgressBar = function ProgressBar(_ref) {
35451
35668
  var max = _ref.max,
@@ -35464,7 +35681,7 @@ var ProgressBar = function ProgressBar(_ref) {
35464
35681
  }
35465
35682
  return value * 100 / max;
35466
35683
  };
35467
- return React__default.createElement(Container$i, {
35684
+ return React__default.createElement(Container$k, {
35468
35685
  className: "rpgui-progress",
35469
35686
  "data-value": calculatePercentageValue(max, value) / 100,
35470
35687
  "data-rpguitype": "progress",
@@ -35493,7 +35710,7 @@ var TextOverlay$1 = /*#__PURE__*/styled.div.withConfig({
35493
35710
  displayName: "ProgressBar__TextOverlay",
35494
35711
  componentId: "sc-qa6fzh-1"
35495
35712
  })(["width:100%;position:relative;"]);
35496
- var Container$i = /*#__PURE__*/styled.div.withConfig({
35713
+ var Container$k = /*#__PURE__*/styled.div.withConfig({
35497
35714
  displayName: "ProgressBar__Container",
35498
35715
  componentId: "sc-qa6fzh-2"
35499
35716
  })(["display:flex;flex-direction:column;min-width:", "px;width:", "%;justify-content:start;align-items:flex-start;", ""], function (props) {
@@ -35504,7 +35721,7 @@ var Container$i = /*#__PURE__*/styled.div.withConfig({
35504
35721
  return props.style;
35505
35722
  });
35506
35723
 
35507
- var img$8 = 'data:image/png;base64,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';
35724
+ var img$9 = 'data:image/png;base64,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';
35508
35725
 
35509
35726
  var QuestInfo = function QuestInfo(_ref) {
35510
35727
  var quests = _ref.quests,
@@ -35548,7 +35765,7 @@ var QuestInfo = function QuestInfo(_ref) {
35548
35765
  }), React__default.createElement(QuestContainer, null, React__default.createElement(TitleContainer$1, {
35549
35766
  className: "drag-handler"
35550
35767
  }, React__default.createElement(Title$4, null, React__default.createElement(Thumbnail, {
35551
- src: quests[currentIndex].thumbnail || img$8
35768
+ src: quests[currentIndex].thumbnail || img$9
35552
35769
  }), quests[currentIndex].title), React__default.createElement(QuestSplitDiv, null, React__default.createElement("hr", {
35553
35770
  className: "golden"
35554
35771
  }))), React__default.createElement(Content, null, React__default.createElement("p", null, quests[currentIndex].description)), React__default.createElement(QuestColumn, {
@@ -35567,7 +35784,7 @@ var QuestInfo = function QuestInfo(_ref) {
35567
35784
  })))) : React__default.createElement(QuestsContainer, null, React__default.createElement(QuestContainer, null, React__default.createElement(TitleContainer$1, {
35568
35785
  className: "drag-handler"
35569
35786
  }, React__default.createElement(Title$4, null, React__default.createElement(Thumbnail, {
35570
- src: quests[0].thumbnail || img$8
35787
+ src: quests[0].thumbnail || img$9
35571
35788
  }), quests[0].title), React__default.createElement(QuestSplitDiv, null, React__default.createElement("hr", {
35572
35789
  className: "golden"
35573
35790
  }))), React__default.createElement(Content, null, React__default.createElement("p", null, quests[0].description)), React__default.createElement(QuestColumn, {
@@ -35774,7 +35991,8 @@ var Shortcuts = function Shortcuts(_ref) {
35774
35991
  spriteKey: shared.getItemTextureKeyPath({
35775
35992
  key: _payload.texturePath,
35776
35993
  texturePath: _payload.texturePath,
35777
- stackQty: _payload.stackQty || 1
35994
+ stackQty: _payload.stackQty || 1,
35995
+ isStackable: _payload.isStackable
35778
35996
  }, atlasJSON),
35779
35997
  width: 32,
35780
35998
  height: 32
@@ -35818,7 +36036,7 @@ var SimpleProgressBar = function SimpleProgressBar(_ref) {
35818
36036
  bgColor = _ref$bgColor === void 0 ? 'red' : _ref$bgColor,
35819
36037
  _ref$margin = _ref.margin,
35820
36038
  margin = _ref$margin === void 0 ? 20 : _ref$margin;
35821
- return React__default.createElement(Container$j, {
36039
+ return React__default.createElement(Container$l, {
35822
36040
  className: "simple-progress-bar"
35823
36041
  }, React__default.createElement(ProgressBarContainer, {
35824
36042
  margin: margin
@@ -35827,7 +36045,7 @@ var SimpleProgressBar = function SimpleProgressBar(_ref) {
35827
36045
  bgColor: bgColor
35828
36046
  }))));
35829
36047
  };
35830
- var Container$j = /*#__PURE__*/styled.div.withConfig({
36048
+ var Container$l = /*#__PURE__*/styled.div.withConfig({
35831
36049
  displayName: "SimpleProgressBar__Container",
35832
36050
  componentId: "sc-mbeil3-0"
35833
36051
  })(["display:flex;justify-content:center;align-items:center;width:100%;"]);
@@ -36058,7 +36276,7 @@ var Spell = function Spell(_ref) {
36058
36276
  isSettingShortcut = _ref.isSettingShortcut,
36059
36277
  minMagicLevelRequired = _ref.minMagicLevelRequired;
36060
36278
  var disabled = isSettingShortcut ? charMagicLevel < minMagicLevelRequired : manaCost > charMana || charMagicLevel < minMagicLevelRequired;
36061
- return React__default.createElement(Container$k, {
36279
+ return React__default.createElement(Container$m, {
36062
36280
  disabled: disabled,
36063
36281
  onPointerDown: onPointerDown == null ? void 0 : onPointerDown.bind(null, spellKey),
36064
36282
  isSettingShortcut: isSettingShortcut && !disabled,
@@ -36071,7 +36289,7 @@ var Spell = function Spell(_ref) {
36071
36289
  className: "mana"
36072
36290
  }, manaCost)));
36073
36291
  };
36074
- var Container$k = /*#__PURE__*/styled.button.withConfig({
36292
+ var Container$m = /*#__PURE__*/styled.button.withConfig({
36075
36293
  displayName: "Spell__Container",
36076
36294
  componentId: "sc-j96fa2-0"
36077
36295
  })(["display:block;background:none;border:2px solid transparent;border-radius:1rem;width:100%;display:flex;height:5rem;gap:1rem;align-items:center;padding:0 1rem;text-align:left;position:relative;animation:", ";@keyframes border-color-change{0%{border-color:", ";}50%{border-color:transparent;}100%{border-color:", ";}}&:hover,&:focus{background-color:", ";}&:active{background:none;}"], function (_ref2) {
@@ -36158,7 +36376,7 @@ var Spellbook = function Spellbook(_ref) {
36158
36376
  height: "inherit",
36159
36377
  cancelDrag: "#spellbook-search, #shortcuts_list, .spell",
36160
36378
  scale: scale
36161
- }, React__default.createElement(Container$l, null, React__default.createElement(Title$7, null, "Learned Spells"), React__default.createElement(ShortcutsSetter, {
36379
+ }, React__default.createElement(Container$n, null, React__default.createElement(Title$7, null, "Learned Spells"), React__default.createElement(ShortcutsSetter, {
36162
36380
  setSettingShortcutIndex: setSettingShortcutIndex,
36163
36381
  settingShortcutIndex: settingShortcutIndex,
36164
36382
  shortcuts: shortcuts,
@@ -36190,7 +36408,7 @@ var Title$7 = /*#__PURE__*/styled.h1.withConfig({
36190
36408
  displayName: "Spellbook__Title",
36191
36409
  componentId: "sc-r02nfq-0"
36192
36410
  })(["font-size:", " !important;margin-bottom:0 !important;"], uiFonts.size.large);
36193
- var Container$l = /*#__PURE__*/styled.div.withConfig({
36411
+ var Container$n = /*#__PURE__*/styled.div.withConfig({
36194
36412
  displayName: "Spellbook__Container",
36195
36413
  componentId: "sc-r02nfq-1"
36196
36414
  })(["width:100%;height:100%;color:white;display:flex;flex-direction:column;"]);
@@ -36204,16 +36422,16 @@ var TextArea = function TextArea(_ref) {
36204
36422
  return React__default.createElement("textarea", Object.assign({}, props));
36205
36423
  };
36206
36424
 
36207
- var img$9 = 'data:image/gif;base64,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';
36425
+ var img$a = 'data:image/gif;base64,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';
36208
36426
 
36209
- var img$a = 'data:image/gif;base64,R0lGODlhTgBNAPMAAAAAALcILyZ31ESZ+lrC/1Ds//vvpv3wo4G8//////38+QAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAAIf4gQ3JlYXRlZCB3aXRoIGV6Z2lmLmNvbSBHSUYgbWFrZXIALAAAAABOAE0AAAT/EMhJq7046827/2AojmRpnmiqrmzrvnAsz2tg37hNq7jg/0AfbjeyAQfIpBIJ1BE5N99ySmUKbk9M4FftUn+BLMXoLXev4exWYG5/r8+te/5Nz+T0vBIu2yL+gIGCg4SFgXwvfoaLjIyILIqNkpOAjymRlAgHm5ybmZV2KHh0naWcepYlo22mradzqUUClK61nJSxIJiMrgm+v664oSKrXqa/yMmmbrkexVXHydK+y2bNULON0dPTppLXGs9UpdzlCaVt4FpsZuTm5ejWwx3iU53v753p89jtnPj49JVRZ2ELgYMFoP0DaE6gF4JjBBycSCChEncMucV7yC+DQYoI/y8uzAjvFUddEkGGRHKPZMlN8lCqXDmgpctuJs90XDdzpc2bynJWgSjh40yLP4ECE1pHZs8CB5MqPcd0ClEARlVCjTpy6kadTrWC7KpU4NaDVndeyNqT64GpSzedBblHbcGUbSmSddlprsokV7HizUtAKsO+hAkMCCw48UTD+RAnZsw2L0aApfy2pTw48eWGczX3ZNzYsdtNAf2KVkm6tOnC2+JqXg2ytWBStiSLzWv7dh5XBnS/Pti7nj9TW2kT7u1bT03dBZSPtuuMnfMkqqXXpl79uhLR2icyj+gdSfjN3FF6Pz89kXU3itnPHO/xfXlm6VXZv3+ShnH+gOUnikAUAFpFny7/XYeGGBOssR8qQjBYQRQPpoOGgHc4WOEeYGAYB4VBBDGEhMTkYCKJKKao4oostujiizDGKOOMF0QAACH/C0ltYWdlTWFnaWNrDWdhbW1hPTAuNDU0NTUAIfkEARQAAAAsAAAAAE4ATQAABP8QyEmrvTjrzbv/YCiOZGmeaKqubOu+cCzPa2DfuE2ruOD/QB9uN7IBB8ikEgnUETk333JKZQpuT0zgV+1Sf4Esxegtd6/h7FZgbn+vz617/k3P5PS8Ei7bIv6AgYKDhIWBfC9+houMjIgsio2Sk4CPKZGUmY2WJnh6B6ChoHpMdieec6KqoXqcRQKaq7Khmq4gmI2zurSUth6oZbMJw8Szc74dwF2rxM3Oq27IG7iGzM7Xw6uT0hnKVNbY2NBm3Bfe36Lh6gmq0aa/bGaq6+vt5O/J8cGh9PSibeUqbCFAoMAyfv38sSoTcMJAggQNTkmXsN5Chvg0PIRYcMm8iur/7HlpCGAjR4lIKIIMefFMxm4COEJEOUDlSnEtq5A0eTKJzZvPcta5FVNmRJ8IgV77h5Go0YgEayZV2ozpyJdaihotAPEnVXZCp+zUepLjx69gF3KFuGTsU6Negf5bazSJ27dmp1IVRfdpqRA838YFyRcvRJISAj89e1NV37eIS5I1zLiiY8OHscLEnFevP7oHHkPWvJkzwcohH4s2GjnxZMyol4peLbO161SyloKiTZug7du4dRkobLo26Wn6gs9a29vwb+B5ls9s/vS5w+R0Lp+kztH6dVJTVnP3ffzDOTrjR7c43yZ99fIi2FchMMA9a/ivwIP3jlx/Hv5QYOefQUtxSDGgTgCaJx8paIhxnYH+geGgQEYIGA0a+NFQIYRngJGhGlEEIeIQE8aXw4klpqjiiiy26OKLMMYo44w0XhABACH/C0ltYWdlTWFnaWNrDWdhbW1hPTAuNDU0NTUAIfkEARQAAAAsAAAAAE4ATQAABP8QyEmrvTjrzbv/YCiOZGmeaKqubOu+cCzPa2DfuE2ruOD/QB9uN7IBB8ikEgnUETk333JKZQpuT0zgV+1Sf4Esxegtd6/h7FZgbn+vz617/k3P5PS8Ei7bIv6AgYKDhIWBfC9+houMjIgsio2Sk4CPKZGUmY2WJnh6n2d2J555B6anpqCcRQKaf6iwp64IqyCYk7G5spq1HqRmusGndL0dv166CcrLunPFG7eLscvU1bGUzxnHVdPV3sqxbtkX21Td39/hbeMV5VOw6PEJsOKivmzAqPLy9GbsYwIIFCijbx+/Yf7sQQlIoOFAc6cMGkS1TqGGLQ0zPlxSUGI8ign/bTHMKJBjR4/pQHr5BwAjyZJKTqJMmaoMS5cvNw6QOdMawpUWtY0kqZNnT2Y/Q4l86bAhEqNH5yWtcnOoxow7I0b1plLpB5xXSUI9qrIAyT1BtVhlSgDeVqTDzLJlkpbcWrZjUVKUy5bAAJYt777M6xEV376AA/cdrHXr3sUNE4Nd7JasYciR66rFnLGyXr4DDiPWvJnzOYkHRItmmljCZMqe+a1e/bK1a3z5CM+jLXCx7dtzklFTcJlzbdIXcbcRVpw35N/A6TDnW8A5W+gT3HXRpdo6SezZlUuHRdt75hriQZkf3UJ7m/XXkYtwX8UvfNbyWYFSlZ8E/f1LgGdMRXoAUtXfKFIUSJWAtvyXBxpihJcggGBE2I4RBK6DxoF9rDHhGWBwSEQPQZQ4hIXz5aAiiiy26OKLMMYo44w01mjjjRdEAAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAALAAAAABOAE0AAAT/EMhJq7046827/2AojmRpnmiqrmzrvnAsz2tg37hNq7jg/0AfbjeyAQfIpBIJ1BE5N99ySmUKbk9M4FftUn+BLMXoLXev4exWYG5/r8+te/5Nz+T0vBIu2yL+gIGCg4SFgXwvfoaLjIyILIqNkpOAjymRlJmNliZ4ep9ndieeoKV7oiWYmgesrayah6giqpSutq2wf5wgpG63v616ux+9ZcDHwXPDHbSLwAnQ0cCZyxvFXbfR2tu3yrLMbL622+TStt6z4WbZ5e3dbdVa6sau7fYJ5/Df1gIF6/X37OUrE8/CFgII/WFrFTCgKzcFxwhAmLAKwIb3HpqJOOEgRQIK/5dcxOguGcF98j6CnDKOpECNXjhK8PgxJJKRLsvBDMVrokqbA3Dm5GaSJzGfNREmETrUHKuNKC/QpFiA4k2GTXUWrSITwFSQKoNizUr0aZKqVplENYhU5UemWTWidTug61e3BFqShXZuLt6uXtvizTt270O/bgEHHvy2MNnDjAkovosXLknIkScLHqx36IG5AxAnXpsyMsLOlxGL/qh45ubKqB2KXk2xtes27Bp+Hkzb9m3csaMp4LvbtErfgec8I4qWNmPkycUhYzW3gPPRl+b9O6b6em3SHq7R+7Xau2Tw4bVLd2X+L/qjppC0x+5CvBkCoY27j2E/Ptf3JPTn30cpOwg4IHQ9qTdgXQiGQMaCSaAhRkdcxAfGhBVEoSA8aAB4xxpSEASGh3FoGEQQQ2A4Sw4squjiizDGKOOMNNZo44045nhBBAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAALAAAAABOAE0AAAT/EMhJq7046827/2AojmRpnmiqrmzrvnAsz2tg37hNq7jg/0AfbjeyAQfIpBIJ1BE5N99ySmUKbk9M4FftUn+BLMXoLXev4exWYG5/r8+te/5Nz+T0vBIu2yL+gIGCg4SFgXwvfoaLjIyILIqNkpOAjymRlJmNliZ4ep9ndieeoKV7oiWYmgesrayah6giqpSutq2wf5wgpG63v616ux+9ZcDHwXPDHbSLwAnQ0cCZyxvFXbfR2tu3yrLMbL622+TStt6z4WbZ5e3dbdVa6sau7fYJ5/Df1gIF6/X37OUrE8/CFgII/WFrFTCgKzcFxwhAmLAKwIb3HpqJOOEgRQIK/5dcxOguGcF98j6CnDKOpECNXjhK8PgxJJKRLsvBDMVrokqbA3Dm5GaSJzGfNREmETrUHKuNKC/QpFiA4k2GTXUWrSITwFSQKoNizUr0aZKqVplENYhU5UemWTWidTug61e3BFqShXZuLt6uXtvizTt270O/bgEHHvy2MNnDjAkovosXLknIkScLHqx36IG5AxAnXpsyMsLOlxGL/qh45ubKqB2KXk2xtes27Bp+Hkzb9m3csaMp4LvbtErfgec8I4qWNmPkycUhYzW3gPPRl+b9O6b6em3SHq7R+7Xau2Tw4bVLd2X+L/qjppC0x+5CvBkCoY27j2E/Ptf3JPTn30cpOwg4IHQ9qTdgXQiGQMaCSaAhRkdcxAfGhBVEoSA8aAB4xxpSEASGh3FoGEQQQ2A4Sw4squjiizDGKOOMNNZo44045nhBBAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAALAAAAABOAE0AAAT/EMhJq7046827/2AojmRpnmiqrmzrvnAsz2tg37hNq7jg/0AfbjeyAQfIpBIJ1BE5N99ySmUKbk9M4FftUn+BLMXoLXev4exWYG5/r8+te/5Nz+T0vBIu2yL+gIGCg4SFgXwvfoaLjIyILIqNkpOAjymRlJmNliZ4ep9ndieeeQemp6agnEUCmn+osKeuCKsgmJOxubKatR6kZrrBp3S9Hb9eugnKy7pzxRu3i7HL1NWxlM8Zx1XT1d7KsW7ZF9tU3d/f4W3jFeVTsOjxCbDior5swKjy8vRm7GMCCBQoo28fv2H+7EEJSKDhQHOnDBpEtU6hhi0NMz5cUlBiPIoJ/20xzCiQY0eP6UB6+QcAI8mSSk6iTJmqDEuXLzcOkDnTGsKVFrWNJKmTZ09mP0OJfOmwIRKjR+clrXJzqMaMOyNG9aZS6QecV0lCPaqyAMk9QbVYZUoA3lakw8yyZZKW3Fq2Y1FSlMuWwACWLe++zOsRFd++gAP3Hax1697FDRODXeyWrGHIkeuqxZyxsl6+Aw4j1ryZ8zmJB0SLZppYwmTKnvmtXv2ytWt8+QjPoy1wse3bc5JRU3CZc23SF3G3EVacN+TfwOkw51vAOVvoE9x10aXaOkns2ZVLh0Xbe+Ya4kGZH91Ce5v115GLcF/FL3zW8lmBUpWfBP39S4BnTEV6AFLV3yhSFEiVgLb8lwcaYoSXIIBgRNiOEQSug8aBfawx4RlgcEhED0GUOISF8+WgIoostujiizDGKOOMNNZo440XRAAAIf8LSW1hZ2VNYWdpY2sNZ2FtbWE9MC40NTQ1NQAh+QQBFAAAACwAAAAATgBNAAAE/xDISau9OOvNu/9gKI5kaZ5oqq5s675wLM9rYN+4Tau44P9AH243sgEHyKQSCdQROTffckplCm5PTOBX7VJ/gSzF6C13r+HsVmBuf6/PrXv+Tc/k9LwSLtsi/oCBgoOEhYF8L36Gi4yMiCyKjZKTgI8pkZSZjZYmeHoHoKGgekx2J55zoqqhepxFApqrsqGariCYjbO6tJS2HqhlswnDxLNzvh3AXavEzc6rbsgbuIbMztfDq5PSGcpU1tjY0GbcF97fouHqCarRpr9sZqrr6+3k78nxwaH09KJt5SpsIUCgwDJ+/fyxKhNwwkCCBA1OSZew3kKG+DQ8hFhwybyK6v/seWkIYCNHiUgoggx58UzGbgI4QkQ5QOVKcS2rkDR5MonNm89y1rkVU2ZEnwiBXvuHkajRiARrJlXajOnIl1qKGi0A8SdVdkKn7NR6kuPHr2AXcoW4ZOxTo16B/ltrNInbt2anUhVF92mpEDzfxgXJFy9EkhICPz17U1Xft4hLkjXMuKJjw4exwsTctbI/ugceQ9a8mTMBcJ9lijYaOfFkyp6Xil4ts7XrVLKWgqJNm6Dt27h1GShsujbpafqCz1rb2/Bv4HmWz2z+9LnD5HQun6TO0fp1UlNWc/d9/MM5OuNHtzjfJn318iLYVyEwwD1r+K/Ag/eOXH8e/lBg559BS3FIMaBOAJonHyloiHGdgf6B4aBARggYDRr40VAhhGeAkaEaUQQh4hATxpfDiSWmqOKKLLbo4oswxijjjDReEAEAIf8LSW1hZ2VNYWdpY2sNZ2FtbWE9MC40NTQ1NQAh+QQBFAAAACwAAAAATgBNAAAE/xDISau9OOvNu/9gKI5kaZ5oqq5s675wLM9rYN+4Tau44P9AH243sgEHyKQSCdQROTffckplCm5PTOBX7VJ/gSzF6C13r+HsVmBuf6/PrXv+Tc/k9LwSLtsi/oCBgoOEhYF8L36Gi4yMiCyKjZKTgI8pkZQIB5ucm5mVdih4dJ2lnHqWJaNtpq2nc6lFApSutZyUsSCYjK4Jvr+uuKEiq16mv8jJpm65HsVVx8nSvstmzVCzjdHT06aS1xrPVKXc5QmlbeBabGbk5uXo1sMd4lOd7++d6fPY7Zz4+PSVUWdhC4GDBaD9A2hOoBeCYwQcnEggoRJ3DLnFe8gvg0GKCP8vLswI7xVHXRJBhkRyj2TJTfJQqlw5oKXLbibPdFw3c6XNm8pyVoEo4eNMiz+BAhNaR2bPAgeTKj3HdApRAEZVQo06cupGnU61guyqVODWg1Z3Xsjak+uBqUs3nQW5R23BlG0pknXZaa7KJFex4s1LQCrDvoQJDAgsOPFEw/kQJ2bMNi9GgKX8tqU8OPHlhnM192Tc2LHbTQH9ilZJurTpwtvial4NsrVgUrYki81r+3YeVwZ0vz7Yu54/U1tpE+7tW09N3QWUj7brjJ3zJKql16Ze/boS0donMo/oHUn4zdxRej8/PZF1N4rZzxzv8X15ZulV2b9/koZx/oDlJ4pAFABaRZ8u/12HhhgTrLEfKkIwWEEUD6aDhoB3OFjhHmBgGAeFQQQxhITE5GAiiSimqOKKLLbo4oswxijjjBdEAAA7';
36427
+ var img$b = 'data:image/gif;base64,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';
36210
36428
 
36211
- var img$b = 'data:image/gif;base64,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';
36429
+ var img$c = 'data:image/gif;base64,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';
36212
36430
 
36213
36431
  var DayNightPeriod = function DayNightPeriod(_ref) {
36214
36432
  var _periodOfDaySrcFiles;
36215
36433
  var periodOfDay = _ref.periodOfDay;
36216
- var periodOfDaySrcFiles = (_periodOfDaySrcFiles = {}, _periodOfDaySrcFiles[shared.PeriodOfDay.Morning] = img$a, _periodOfDaySrcFiles[shared.PeriodOfDay.Afternoon] = img$9, _periodOfDaySrcFiles[shared.PeriodOfDay.Night] = img$b, _periodOfDaySrcFiles);
36434
+ var periodOfDaySrcFiles = (_periodOfDaySrcFiles = {}, _periodOfDaySrcFiles[shared.PeriodOfDay.Morning] = img$b, _periodOfDaySrcFiles[shared.PeriodOfDay.Afternoon] = img$a, _periodOfDaySrcFiles[shared.PeriodOfDay.Night] = img$c, _periodOfDaySrcFiles);
36217
36435
  return React__default.createElement(GifContainer, null, React__default.createElement("img", {
36218
36436
  src: periodOfDaySrcFiles[periodOfDay]
36219
36437
  }));
@@ -36223,7 +36441,7 @@ var GifContainer = /*#__PURE__*/styled.div.withConfig({
36223
36441
  componentId: "sc-10t97fw-0"
36224
36442
  })(["width:100%;img{width:67%;}"]);
36225
36443
 
36226
- var img$c = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHMAAABHCAYAAAA0qHhdAAAAAXNSR0IArs4c6QAABGRJREFUeJztnb9PGzEUx7+JMjC0Uge6tVsVdTghQP0D2qgjzGz8D8woE2LO/5CNOcwlU9WJRCgDYmWJRAYkFgak6wDv5HPsO9/P8J79WUhicr7nzz3bOV8uHbRPXOXN2x++1LUfYnh4uu8AQK+FulLy7hbHxn96vrh22tjW0b7xPVtH+87bkMbnj1/jh6f7TqfBOmKgurwy6MJ10VRuKqNylwMl7wBy3U5WuetBOhg9om6ZSRaqEtvImJ2zRfL4/GA3eXy494LJzNwBmcpc//9w7wUAMJn1ktdt5bbnaj228qw6VeqWGbctUEXNxn40Fj+2/jn5lHpel8xUd+oqcedsUajum2HkNHEiqf1oDAD4/e1HkWrYMF8uE6GTWQ+j6aryBCh2lVhUXt77bXJpP2i/+tE41e1y5uo2W1cVmfHd4rhxiXnbdZEqReiv76/jpE1q2YbOFNmUwDxsYreO9lkLvbrtJSLp+Xy5xN9/g8TBYPSIboltv0uRWXU/X1zjbnGM08t527tUC7aM1B0UbXiryE1KNGHKUu4ZqjKarpLMpAlQkcxkIxIw7xP3DLVBnzldZbISSUgXqvtwkclSJCFNqDpu0mdqOkOUJ5O1SEKSUHVWWyQzRYgkJAml7KTMzBszRYkkJAhVu1ny49rNpuAskuAaw9VtL/d0nikwY1ZybQQb+udQ+gzKZbXFtGqiq3Y63yoR6m770Rg3wyi1gK1iel1dQNbLqazsX9M2dKib1bPNi6wkbNl5M4w2tUulGIwe8fB031nrhH0RCbzGpgrVJxSEaYXfdoWCrdxE1lUNtnJ9+6PpKrmgSxUVm45IyTIB8zncnbPF2th58nMbo+kq9zUX8t5XpC4SCQSZVpkovzy4MWiHvRRJSBFaZj0z8E6xyvQlKwE5sYbMFEQXlvHSd97apNL3YtomZKYgjDKljCFFkBBzyExBBJmCCDIFEWQKIsgURJApiCBTEEGmILqA26q4b3Bsk5CZgjDKdL1/gCQkxJzI5NitNAXXtugC6HC5NL9N3tqE1cn3MGYKIiVT7V4kjCGuqLFy7WIBw61jOAdTFikxp66bPT/YXbsnm4RF2yz0Hmgy67EcLwHDmCnlKC0D99hVmcmslntQZaCYuWYlYPgWmOkeOaeXc5bB5XF+sLs2yeMs05iC+rh5uBfF0sbO17EyHSf3HkkfMzunl3P2QZWB88SHsO246JmtpBmsSuYZoMmsJ+5Egn6CQFIvlHUkrk2GKFO5ZiiJ1AVKyEogPwDj7BbgN8M1zVwBOSIBtyDYC/VBJOAeCFuhvogEigXDTqhPIoESd4LmItQ3kUC5oKxCgc1LtUkEZIsEKvx6wnsU6rNIoFpwmUKJpsVmCVT2ARAuEqgeoJNQoH6pLhLf6gU8EAnUE2QMoPDPSxSV6ypP2T499EIkUG+gzlnaND5lo0pjv5/Ztljt2l/vRALNBl2q+y2Kj92pjTYaIDXWVZVruPree4nEJhqi6ppokGfhP6xr60VVr5O+AAAAAElFTkSuQmCC';
36444
+ var img$d = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHMAAABHCAYAAAA0qHhdAAAAAXNSR0IArs4c6QAABGRJREFUeJztnb9PGzEUx7+JMjC0Uge6tVsVdTghQP0D2qgjzGz8D8woE2LO/5CNOcwlU9WJRCgDYmWJRAYkFgak6wDv5HPsO9/P8J79WUhicr7nzz3bOV8uHbRPXOXN2x++1LUfYnh4uu8AQK+FulLy7hbHxn96vrh22tjW0b7xPVtH+87bkMbnj1/jh6f7TqfBOmKgurwy6MJ10VRuKqNylwMl7wBy3U5WuetBOhg9om6ZSRaqEtvImJ2zRfL4/GA3eXy494LJzNwBmcpc//9w7wUAMJn1ktdt5bbnaj228qw6VeqWGbctUEXNxn40Fj+2/jn5lHpel8xUd+oqcedsUajum2HkNHEiqf1oDAD4/e1HkWrYMF8uE6GTWQ+j6aryBCh2lVhUXt77bXJpP2i/+tE41e1y5uo2W1cVmfHd4rhxiXnbdZEqReiv76/jpE1q2YbOFNmUwDxsYreO9lkLvbrtJSLp+Xy5xN9/g8TBYPSIboltv0uRWXU/X1zjbnGM08t527tUC7aM1B0UbXiryE1KNGHKUu4ZqjKarpLMpAlQkcxkIxIw7xP3DLVBnzldZbISSUgXqvtwkclSJCFNqDpu0mdqOkOUJ5O1SEKSUHVWWyQzRYgkJAml7KTMzBszRYkkJAhVu1ny49rNpuAskuAaw9VtL/d0nikwY1ZybQQb+udQ+gzKZbXFtGqiq3Y63yoR6m770Rg3wyi1gK1iel1dQNbLqazsX9M2dKib1bPNi6wkbNl5M4w2tUulGIwe8fB031nrhH0RCbzGpgrVJxSEaYXfdoWCrdxE1lUNtnJ9+6PpKrmgSxUVm45IyTIB8zncnbPF2th58nMbo+kq9zUX8t5XpC4SCQSZVpkovzy4MWiHvRRJSBFaZj0z8E6xyvQlKwE5sYbMFEQXlvHSd97apNL3YtomZKYgjDKljCFFkBBzyExBBJmCCDIFEWQKIsgURJApiCBTEEGmILqA26q4b3Bsk5CZgjDKdL1/gCQkxJzI5NitNAXXtugC6HC5NL9N3tqE1cn3MGYKIiVT7V4kjCGuqLFy7WIBw61jOAdTFikxp66bPT/YXbsnm4RF2yz0Hmgy67EcLwHDmCnlKC0D99hVmcmslntQZaCYuWYlYPgWmOkeOaeXc5bB5XF+sLs2yeMs05iC+rh5uBfF0sbO17EyHSf3HkkfMzunl3P2QZWB88SHsO246JmtpBmsSuYZoMmsJ+5Egn6CQFIvlHUkrk2GKFO5ZiiJ1AVKyEogPwDj7BbgN8M1zVwBOSIBtyDYC/VBJOAeCFuhvogEigXDTqhPIoESd4LmItQ3kUC5oKxCgc1LtUkEZIsEKvx6wnsU6rNIoFpwmUKJpsVmCVT2ARAuEqgeoJNQoH6pLhLf6gU8EAnUE2QMoPDPSxSV6ypP2T499EIkUG+gzlnaND5lo0pjv5/Ztljt2l/vRALNBl2q+y2Kj92pjTYaIDXWVZVruPree4nEJhqi6ppokGfhP6xr60VVr5O+AAAAAElFTkSuQmCC';
36227
36445
 
36228
36446
  var TimeWidget = function TimeWidget(_ref) {
36229
36447
  var onClose = _ref.onClose,
@@ -36241,7 +36459,7 @@ var TimeWidget = function TimeWidget(_ref) {
36241
36459
  var WidgetContainer = /*#__PURE__*/styled.div.withConfig({
36242
36460
  displayName: "TimeWidget__WidgetContainer",
36243
36461
  componentId: "sc-1ja236h-0"
36244
- })(["background-image:url(", ");background-size:10rem;background-repeat:no-repeat;width:10rem;position:absolute;height:100px;"], img$c);
36462
+ })(["background-image:url(", ");background-size:10rem;background-repeat:no-repeat;width:10rem;position:absolute;height:100px;"], img$d);
36245
36463
  var Time = /*#__PURE__*/styled.div.withConfig({
36246
36464
  displayName: "TimeWidget__Time",
36247
36465
  componentId: "sc-1ja236h-1"
@@ -36289,7 +36507,8 @@ var TradingItemRow = function TradingItemRow(_ref) {
36289
36507
  spriteKey: shared.getItemTextureKeyPath({
36290
36508
  key: traderItem.key,
36291
36509
  stackQty: traderItem.stackQty || 1,
36292
- texturePath: traderItem.texturePath
36510
+ texturePath: traderItem.texturePath,
36511
+ isStackable: traderItem.isStackable
36293
36512
  }, atlasJSON),
36294
36513
  imgScale: 2.5
36295
36514
  })))), React__default.createElement(ItemNameContainer, null, React__default.createElement(NameValue, null, React__default.createElement("p", null, React__default.createElement(Ellipsis, {
@@ -36490,230 +36709,17 @@ var Truncate = function Truncate(_ref) {
36490
36709
  var _ref$maxLines = _ref.maxLines,
36491
36710
  maxLines = _ref$maxLines === void 0 ? 1 : _ref$maxLines,
36492
36711
  children = _ref.children;
36493
- return React__default.createElement(Container$m, {
36712
+ return React__default.createElement(Container$o, {
36494
36713
  maxLines: maxLines
36495
36714
  }, children);
36496
36715
  };
36497
- var Container$m = /*#__PURE__*/styled.div.withConfig({
36716
+ var Container$o = /*#__PURE__*/styled.div.withConfig({
36498
36717
  displayName: "Truncate__Container",
36499
36718
  componentId: "sc-6x00qb-0"
36500
36719
  })(["display:-webkit-box;max-width:100%;max-height:100%;-webkit-line-clamp:", ";-webkit-box-orient:vertical;overflow:hidden;"], function (props) {
36501
36720
  return props.maxLines;
36502
36721
  });
36503
36722
 
36504
- var IS_MOBILE_OR_TABLET = /*#__PURE__*/shared.isMobileOrTablet();
36505
-
36506
- var chunkString = function chunkString(str, length) {
36507
- return str.match(new RegExp('.{1,' + length + '}', 'g'));
36508
- };
36509
-
36510
- var img$d = 'data:image/gif;base64,R0lGODlhEAAQAPIAAAAAABQYLiw1TUBJc2hvmQAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAALAAAAAAQABAAAAM9CLrc/lCFGSKYJJP5AhlguDnBMIVgxXgmJapSSp3mKs/pKrT0IMCXUk+2Cgh2oSOnaDz+lswZpSOFUq2KBAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAALAAAAAAQABAAAAIzhI+py90Bg4OjDrjCELxfFQhQx0mIJkaeaYRp5LJADMdnqXbyOJLYTdKBejjZoRaZJBMFACH/C0ltYWdlTWFnaWNrDWdhbW1hPTAuNDU0NTUAIfkEARQAAAAsAAAAABAAEAAAAjKEj6nL7Y+CDE6OO+QKQ/ifKYEgfR4VddPohQe7lmR0xidNTib65uacYP2AQWGuMlEUAAA7';
36511
-
36512
- var NPCDialogText = function NPCDialogText(_ref) {
36513
- var text = _ref.text,
36514
- onClose = _ref.onClose,
36515
- onEndStep = _ref.onEndStep,
36516
- onStartStep = _ref.onStartStep,
36517
- type = _ref.type;
36518
- var windowSize = React.useRef([window.innerWidth, window.innerHeight]);
36519
- function maxCharacters(width) {
36520
- // Set the font size to 16 pixels
36521
- var fontSize = 11.2;
36522
- // Calculate the number of characters that can fit in one line
36523
- var charactersPerLine = Math.floor(width / 2 / fontSize);
36524
- // Calculate the number of lines that can fit in the div
36525
- var linesPerDiv = Math.floor(180 / fontSize);
36526
- // Calculate the maximum number of characters that can fit in the div
36527
- var maxCharacters = charactersPerLine * linesPerDiv;
36528
- // Return the maximum number of characters
36529
- return Math.round(maxCharacters / 5);
36530
- }
36531
- var textChunks = chunkString(text, maxCharacters(windowSize.current[0]));
36532
- var _useState = React.useState(0),
36533
- chunkIndex = _useState[0],
36534
- setChunkIndex = _useState[1];
36535
- var onHandleSpacePress = function onHandleSpacePress(event) {
36536
- if (event.code === 'Space') {
36537
- goToNextStep();
36538
- }
36539
- };
36540
- var goToNextStep = function goToNextStep() {
36541
- var hasNextChunk = (textChunks == null ? void 0 : textChunks[chunkIndex + 1]) || false;
36542
- if (hasNextChunk) {
36543
- setChunkIndex(function (prev) {
36544
- return prev + 1;
36545
- });
36546
- } else {
36547
- // if there's no more text chunks, close the dialog
36548
- onClose();
36549
- }
36550
- };
36551
- React.useEffect(function () {
36552
- document.addEventListener('keydown', onHandleSpacePress);
36553
- return function () {
36554
- return document.removeEventListener('keydown', onHandleSpacePress);
36555
- };
36556
- }, [chunkIndex]);
36557
- var _useState2 = React.useState(false),
36558
- showGoNextIndicator = _useState2[0],
36559
- setShowGoNextIndicator = _useState2[1];
36560
- return React__default.createElement(Container$n, null, React__default.createElement(DynamicText, {
36561
- text: (textChunks == null ? void 0 : textChunks[chunkIndex]) || '',
36562
- onFinish: function onFinish() {
36563
- setShowGoNextIndicator(true);
36564
- onEndStep && onEndStep();
36565
- },
36566
- onStart: function onStart() {
36567
- setShowGoNextIndicator(false);
36568
- onStartStep && onStartStep();
36569
- }
36570
- }), showGoNextIndicator && React__default.createElement(PressSpaceIndicator$1, {
36571
- right: type === exports.NPCDialogType.TextOnly ? '1rem' : '10.5rem',
36572
- src: IS_MOBILE_OR_TABLET ? img$d : img$7,
36573
- onPointerDown: function onPointerDown() {
36574
- goToNextStep();
36575
- }
36576
- }));
36577
- };
36578
- var Container$n = /*#__PURE__*/styled.div.withConfig({
36579
- displayName: "NPCDialogText__Container",
36580
- componentId: "sc-1cxkdh9-0"
36581
- })([""]);
36582
- var PressSpaceIndicator$1 = /*#__PURE__*/styled.img.withConfig({
36583
- displayName: "NPCDialogText__PressSpaceIndicator",
36584
- componentId: "sc-1cxkdh9-1"
36585
- })(["position:absolute;right:", ";bottom:1rem;height:20.7px;image-rendering:-webkit-optimize-contrast;"], function (_ref2) {
36586
- var right = _ref2.right;
36587
- return right;
36588
- });
36589
-
36590
- (function (NPCDialogType) {
36591
- NPCDialogType["TextOnly"] = "TextOnly";
36592
- NPCDialogType["TextAndThumbnail"] = "TextAndThumbnail";
36593
- })(exports.NPCDialogType || (exports.NPCDialogType = {}));
36594
- var NPCDialog = function NPCDialog(_ref) {
36595
- var text = _ref.text,
36596
- type = _ref.type,
36597
- _onClose = _ref.onClose,
36598
- imagePath = _ref.imagePath,
36599
- _ref$isQuestionDialog = _ref.isQuestionDialog,
36600
- isQuestionDialog = _ref$isQuestionDialog === void 0 ? false : _ref$isQuestionDialog,
36601
- questions = _ref.questions,
36602
- answers = _ref.answers;
36603
- return React__default.createElement(RPGUIContainer, {
36604
- type: exports.RPGUIContainerTypes.FramedGold,
36605
- width: isQuestionDialog ? '600px' : '80%',
36606
- height: '180px'
36607
- }, isQuestionDialog && questions && answers ? React__default.createElement(React__default.Fragment, null, React__default.createElement(TextContainer$2, {
36608
- flex: type === exports.NPCDialogType.TextAndThumbnail ? '70%' : '100%'
36609
- }, React__default.createElement(QuestionDialog, {
36610
- questions: questions,
36611
- answers: answers,
36612
- onClose: function onClose() {
36613
- if (_onClose) {
36614
- _onClose();
36615
- }
36616
- }
36617
- })), type === exports.NPCDialogType.TextAndThumbnail && React__default.createElement(ThumbnailContainer$1, null, React__default.createElement(NPCThumbnail$1, {
36618
- src: imagePath || img$6
36619
- }))) : React__default.createElement(React__default.Fragment, null, React__default.createElement(Container$o, null, React__default.createElement(TextContainer$2, {
36620
- flex: type === exports.NPCDialogType.TextAndThumbnail ? '70%' : '100%'
36621
- }, React__default.createElement(NPCDialogText, {
36622
- type: type,
36623
- text: text || 'No text provided.',
36624
- onClose: function onClose() {
36625
- if (_onClose) {
36626
- _onClose();
36627
- }
36628
- }
36629
- })), type === exports.NPCDialogType.TextAndThumbnail && React__default.createElement(ThumbnailContainer$1, null, React__default.createElement(NPCThumbnail$1, {
36630
- src: imagePath || img$6
36631
- })))));
36632
- };
36633
- var Container$o = /*#__PURE__*/styled.div.withConfig({
36634
- displayName: "NPCDialog__Container",
36635
- componentId: "sc-1b4aw74-0"
36636
- })(["display:flex;width:100%;height:100%;box-sizing:border-box;justify-content:center;align-items:flex-start;position:relative;"]);
36637
- var TextContainer$2 = /*#__PURE__*/styled.div.withConfig({
36638
- displayName: "NPCDialog__TextContainer",
36639
- componentId: "sc-1b4aw74-1"
36640
- })(["flex:", " 0 0;width:355px;"], function (_ref2) {
36641
- var flex = _ref2.flex;
36642
- return flex;
36643
- });
36644
- var ThumbnailContainer$1 = /*#__PURE__*/styled.div.withConfig({
36645
- displayName: "NPCDialog__ThumbnailContainer",
36646
- componentId: "sc-1b4aw74-2"
36647
- })(["flex:30% 0 0;display:flex;justify-content:flex-end;"]);
36648
- var NPCThumbnail$1 = /*#__PURE__*/styled.img.withConfig({
36649
- displayName: "NPCDialog__NPCThumbnail",
36650
- componentId: "sc-1b4aw74-3"
36651
- })(["image-rendering:pixelated;height:128px;width:128px;"]);
36652
-
36653
- var HistoryDialog = function HistoryDialog(_ref) {
36654
- var backgroundImgPath = _ref.backgroundImgPath,
36655
- fullCoverBackground = _ref.fullCoverBackground,
36656
- questions = _ref.questions,
36657
- answers = _ref.answers,
36658
- text = _ref.text,
36659
- imagePath = _ref.imagePath,
36660
- textAndTypeArray = _ref.textAndTypeArray,
36661
- onClose = _ref.onClose;
36662
- var _useState = React.useState(0),
36663
- img = _useState[0],
36664
- setImage = _useState[1];
36665
- var onHandleSpacePress = function onHandleSpacePress(event) {
36666
- if (event.code === 'Space') {
36667
- if (img < (backgroundImgPath == null ? void 0 : backgroundImgPath.length) - 1) {
36668
- setImage(function (prev) {
36669
- return prev + 1;
36670
- });
36671
- } else {
36672
- // if there's no more text chunks, close the dialog
36673
- onClose();
36674
- }
36675
- }
36676
- };
36677
- React.useEffect(function () {
36678
- document.addEventListener('keydown', onHandleSpacePress);
36679
- return function () {
36680
- return document.removeEventListener('keydown', onHandleSpacePress);
36681
- };
36682
- }, [backgroundImgPath]);
36683
- return React__default.createElement(BackgroundContainer, {
36684
- imgPath: backgroundImgPath[img],
36685
- fullImg: fullCoverBackground
36686
- }, React__default.createElement(DialogContainer, null, textAndTypeArray ? React__default.createElement(NPCMultiDialog, {
36687
- textAndTypeArray: textAndTypeArray,
36688
- onClose: onClose
36689
- }) : questions && answers ? React__default.createElement(QuestionDialog, {
36690
- questions: questions,
36691
- answers: answers,
36692
- onClose: onClose
36693
- }) : text && imagePath ? React__default.createElement(NPCDialog, {
36694
- text: text,
36695
- imagePath: imagePath,
36696
- onClose: onClose,
36697
- type: exports.NPCDialogType.TextAndThumbnail
36698
- }) : React__default.createElement(NPCDialog, {
36699
- text: text,
36700
- onClose: onClose,
36701
- type: exports.NPCDialogType.TextOnly
36702
- })));
36703
- };
36704
- var BackgroundContainer = /*#__PURE__*/styled.div.withConfig({
36705
- displayName: "HistoryDialog__BackgroundContainer",
36706
- componentId: "sc-u6oe75-0"
36707
- })(["width:100%;height:100%;background-image:url(", ");background-size:", ";display:flex;justify-content:space-evenly;align-items:center;"], function (props) {
36708
- return props.imgPath;
36709
- }, function (props) {
36710
- return props.imgPath ? 'cover' : 'auto';
36711
- });
36712
- var DialogContainer = /*#__PURE__*/styled.div.withConfig({
36713
- displayName: "HistoryDialog__DialogContainer",
36714
- componentId: "sc-u6oe75-1"
36715
- })(["display:flex;justify-content:center;padding-top:200px;"]);
36716
-
36717
36723
  exports.Button = Button;
36718
36724
  exports.CharacterSelection = CharacterSelection;
36719
36725
  exports.Chat = Chat;