@rpg-engine/long-bow 0.3.50 → 0.3.52

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 (157) hide show
  1. package/LICENSE +20 -20
  2. package/README.md +181 -181
  3. package/dist/components/CircularController/CircularController.d.ts +7 -3
  4. package/dist/components/Item/Inventory/ItemContainer.d.ts +4 -0
  5. package/dist/components/Item/Inventory/ItemSlot.d.ts +1 -0
  6. package/dist/components/Shortcuts/Shortcuts.d.ts +21 -0
  7. package/dist/components/Shortcuts/ShortcutsSetter.d.ts +12 -0
  8. package/dist/components/Shortcuts/SingleShortcut.d.ts +1 -0
  9. package/dist/components/Spellbook/Spellbook.d.ts +5 -2
  10. package/dist/components/Spellbook/constants.d.ts +3 -3
  11. package/dist/index.d.ts +1 -1
  12. package/dist/long-bow.cjs.development.js +1158 -1004
  13. package/dist/long-bow.cjs.development.js.map +1 -1
  14. package/dist/long-bow.cjs.production.min.js +1 -1
  15. package/dist/long-bow.cjs.production.min.js.map +1 -1
  16. package/dist/long-bow.esm.js +985 -829
  17. package/dist/long-bow.esm.js.map +1 -1
  18. package/dist/stories/{QuickSpells.stories.d.ts → Shortcuts.stories.d.ts} +2 -2
  19. package/package.json +100 -100
  20. package/src/components/Abstractions/SlotsContainer.tsx +45 -45
  21. package/src/components/Arrow/SelectArrow.tsx +65 -65
  22. package/src/components/Arrow/img/arrow01-left-clicked.png +0 -0
  23. package/src/components/Arrow/img/arrow01-left.png +0 -0
  24. package/src/components/Arrow/img/arrow01-right-clicked.png +0 -0
  25. package/src/components/Arrow/img/arrow01-right.png +0 -0
  26. package/src/components/Arrow/img/arrow02-left-clicked.png +0 -0
  27. package/src/components/Arrow/img/arrow02-left.png +0 -0
  28. package/src/components/Arrow/img/arrow02-right-clicked.png +0 -0
  29. package/src/components/Arrow/img/arrow02-right.png +0 -0
  30. package/src/components/Button.tsx +41 -41
  31. package/src/components/Character/CharacterSelection.tsx +96 -96
  32. package/src/components/CharacterStatus/CharacterStatus.tsx +120 -120
  33. package/src/components/Chat/Chat.tsx +195 -195
  34. package/src/components/Chatdeprecated/ChatDeprecated.tsx +200 -200
  35. package/src/components/CheckButton.tsx +65 -65
  36. package/src/components/CircularController/CircularController.tsx +244 -162
  37. package/src/components/CraftBook/CraftBook.tsx +235 -235
  38. package/src/components/CraftBook/MockItems.ts +46 -46
  39. package/src/components/DraggableContainer.tsx +154 -154
  40. package/src/components/Dropdown.tsx +96 -96
  41. package/src/components/DropdownSelectorContainer.tsx +42 -42
  42. package/src/components/Equipment/EquipmentSet.tsx +190 -190
  43. package/src/components/HistoryDialog.tsx +104 -104
  44. package/src/components/Input.tsx +15 -15
  45. package/src/components/Item/Cards/ItemTooltip.tsx +33 -33
  46. package/src/components/Item/Inventory/ErrorBoundary.tsx +42 -42
  47. package/src/components/Item/Inventory/ItemContainer.tsx +210 -175
  48. package/src/components/Item/Inventory/ItemContainerTypes.ts +6 -6
  49. package/src/components/Item/Inventory/ItemQuantitySelector.tsx +142 -142
  50. package/src/components/Item/Inventory/ItemSlot.tsx +502 -465
  51. package/src/components/Item/Inventory/itemContainerHelper.ts +156 -156
  52. package/src/components/ListMenu.tsx +63 -63
  53. package/src/components/Multitab/Tab.tsx +57 -57
  54. package/src/components/Multitab/TabBody.tsx +13 -13
  55. package/src/components/Multitab/TabsContainer.tsx +97 -97
  56. package/src/components/NPCDialog/NPCDialog.tsx +121 -121
  57. package/src/components/NPCDialog/NPCDialogText.tsx +113 -113
  58. package/src/components/NPCDialog/NPCMultiDialog.tsx +159 -159
  59. package/src/components/NPCDialog/QuestionDialog/QuestionDialog.tsx +237 -237
  60. package/src/components/ProgressBar.tsx +92 -92
  61. package/src/components/PropertySelect/PropertySelect.tsx +114 -114
  62. package/src/components/QuestInfo/QuestInfo.tsx +232 -232
  63. package/src/components/QuestList.tsx +129 -129
  64. package/src/components/RPGUIContainer.tsx +47 -47
  65. package/src/components/RPGUIForceRenderStart.tsx +45 -45
  66. package/src/components/RPGUIRoot.tsx +14 -14
  67. package/src/components/RadioButton.tsx +53 -53
  68. package/src/components/RadioInput/RadioButton.tsx +98 -98
  69. package/src/components/RadioInput/RadioInput.tsx +98 -98
  70. package/src/components/RadioInput/instruments.ts +15 -15
  71. package/src/components/RangeSlider.tsx +78 -78
  72. package/src/components/RelativeListMenu.tsx +83 -83
  73. package/src/components/ScrollList.tsx +79 -79
  74. package/src/components/Shortcuts/Shortcuts.tsx +138 -0
  75. package/src/components/Shortcuts/ShortcutsSetter.tsx +127 -0
  76. package/src/components/Shortcuts/SingleShortcut.ts +61 -0
  77. package/src/components/SimpleProgressBar.tsx +62 -62
  78. package/src/components/SkillProgressBar.tsx +133 -133
  79. package/src/components/SkillsContainer.tsx +200 -200
  80. package/src/components/Spellbook/Spell.tsx +201 -201
  81. package/src/components/Spellbook/Spellbook.tsx +151 -144
  82. package/src/components/Spellbook/constants.ts +8 -12
  83. package/src/components/Spellbook/mockSpells.ts +60 -60
  84. package/src/components/StaticBook/StaticBook.tsx +105 -105
  85. package/src/components/TextArea.tsx +11 -11
  86. package/src/components/TimeWidget/DayNightPeriod/DayNightPeriod.tsx +35 -35
  87. package/src/components/TimeWidget/TimeWidget.tsx +63 -63
  88. package/src/components/TradingMenu/TradingItemRow.tsx +197 -197
  89. package/src/components/TradingMenu/TradingMenu.tsx +203 -203
  90. package/src/components/TradingMenu/items.mock.ts +96 -37
  91. package/src/components/Truncate.tsx +25 -25
  92. package/src/components/itemSelector/ItemSelector.tsx +136 -136
  93. package/src/components/shared/Column.tsx +16 -16
  94. package/src/components/shared/Ellipsis.tsx +65 -65
  95. package/src/components/shared/SpriteFromAtlas.tsx +102 -102
  96. package/src/components/typography/DynamicText.tsx +49 -49
  97. package/src/constants/uiColors.ts +20 -20
  98. package/src/constants/uiDevices.ts +3 -3
  99. package/src/constants/uiFonts.ts +12 -12
  100. package/src/hooks/useEventListener.ts +21 -21
  101. package/src/hooks/useOutsideAlerter.ts +25 -25
  102. package/src/index.tsx +40 -40
  103. package/src/libs/StringHelpers.ts +3 -3
  104. package/src/mocks/atlas/entities/entities.json +20215 -20215
  105. package/src/mocks/atlas/icons/icons.json +735 -735
  106. package/src/mocks/atlas/items/items.json +12086 -12086
  107. package/src/mocks/equipmentSet.mocks.ts +393 -393
  108. package/src/mocks/itemContainer.mocks.ts +562 -560
  109. package/src/mocks/skills.mocks.ts +128 -128
  110. package/src/stories/Arrow.stories.tsx +26 -26
  111. package/src/stories/Button.stories.tsx +36 -36
  112. package/src/stories/CharacterSelection.stories.tsx +45 -45
  113. package/src/stories/CharacterStatus.stories.tsx +29 -29
  114. package/src/stories/Chat.stories.tsx +187 -187
  115. package/src/stories/ChatDeprecated.stories.tsx +170 -170
  116. package/src/stories/CheckButton.stories.tsx +48 -48
  117. package/src/stories/CircullarController.stories.tsx +37 -33
  118. package/src/stories/CraftBook.stories.tsx +40 -40
  119. package/src/stories/DayNightPeriod.stories.tsx +27 -27
  120. package/src/stories/DraggableContainer.stories.tsx +28 -28
  121. package/src/stories/Dropdown.stories.tsx +46 -46
  122. package/src/stories/DropdownSelectorContainer.stories.tsx +41 -41
  123. package/src/stories/EquipmentSet.stories.tsx +65 -65
  124. package/src/stories/HistoryDialog.stories.tsx +61 -61
  125. package/src/stories/ItemContainer.stories.tsx +193 -124
  126. package/src/stories/ItemQuantitySelector.stories.tsx +26 -26
  127. package/src/stories/ItemSelector.stories.tsx +77 -77
  128. package/src/stories/ItemTradingComponent.stories.tsx +35 -35
  129. package/src/stories/ListMenu.stories.tsx +56 -56
  130. package/src/stories/Multitab.stories.tsx +51 -51
  131. package/src/stories/NPCDialog.stories.tsx +130 -130
  132. package/src/stories/NPCMultiDialog.stories.tsx +71 -71
  133. package/src/stories/ProgressBar.stories.tsx +23 -23
  134. package/src/stories/PropertySelect.stories.tsx +40 -40
  135. package/src/stories/QuestInfo.stories.tsx +107 -107
  136. package/src/stories/QuestList.stories.tsx +82 -82
  137. package/src/stories/RPGUIContainers.stories.tsx +42 -42
  138. package/src/stories/RadioButton.stories.tsx +49 -49
  139. package/src/stories/RadioInput.stories.tsx +34 -34
  140. package/src/stories/RangeSlider.stories.tsx +64 -64
  141. package/src/stories/ScrollList.stories.tsx +85 -85
  142. package/src/stories/Shortcuts.stories.tsx +39 -0
  143. package/src/stories/SimpleProgressBar.stories.tsx +22 -22
  144. package/src/stories/SkillProgressBar.stories.tsx +34 -34
  145. package/src/stories/SkillsContainer.stories.tsx +35 -35
  146. package/src/stories/Spellbook.stories.tsx +104 -107
  147. package/src/stories/StaticBook.stories.tsx +32 -32
  148. package/src/stories/Text.stories.tsx +42 -42
  149. package/src/stories/TimeWidget.stories.tsx +27 -27
  150. package/src/stories/TradingMenu.stories.tsx +45 -45
  151. package/src/types/eventTypes.ts +4 -4
  152. package/src/types/index.d.ts +2 -2
  153. package/dist/components/Spellbook/QuickSpells.d.ts +0 -10
  154. package/dist/components/Spellbook/SpellbookShortcuts.d.ts +0 -10
  155. package/src/components/Spellbook/QuickSpells.tsx +0 -120
  156. package/src/components/Spellbook/SpellbookShortcuts.tsx +0 -77
  157. package/src/stories/QuickSpells.stories.tsx +0 -38
@@ -33058,62 +33058,108 @@ var CheckButton = function CheckButton(_ref) {
33058
33058
  }));
33059
33059
  };
33060
33060
 
33061
- var QuickSpells = function QuickSpells(_ref) {
33062
- var quickSpells = _ref.quickSpells,
33063
- onSpellCast = _ref.onSpellCast,
33061
+ var SingleShortcut = /*#__PURE__*/styled.button.withConfig({
33062
+ displayName: "SingleShortcut",
33063
+ componentId: "sc-vz5ev8-0"
33064
+ })(["width:3rem;height:3rem;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;position:relative;span{pointer-events:none;}.mana{position:absolute;top:-5px;right:0;font-size:0.65rem;color:", ";}.qty{position:absolute;top:-5px;right:0;font-size:0.65rem;}.magicWords{margin-top:4px;}.keyboard{position:absolute;bottom:-5px;left:0;font-size:0.65rem;color:", ";}&:hover,&:focus{background-color:", ";}&:active{background-color:", ";}&:disabled{opacity:0.5;}"], uiColors.lightGray, uiColors.darkGray, uiColors.blue, uiColors.yellow, uiColors.darkGray, uiColors.gray);
33065
+
33066
+ (function (ShortcutType) {
33067
+ ShortcutType[ShortcutType["Spell"] = 0] = "Spell";
33068
+ ShortcutType[ShortcutType["Item"] = 1] = "Item";
33069
+ ShortcutType[ShortcutType["None"] = 2] = "None";
33070
+ })(exports.ShortcutType || (exports.ShortcutType = {}));
33071
+ var Shortcuts = function Shortcuts(_ref) {
33072
+ var shortcuts = _ref.shortcuts,
33073
+ onShortcutCast = _ref.onShortcutCast,
33064
33074
  mana = _ref.mana,
33065
33075
  _ref$isBlockedCasting = _ref.isBlockedCastingByKeyboard,
33066
- isBlockedCastingByKeyboard = _ref$isBlockedCasting === void 0 ? false : _ref$isBlockedCasting;
33076
+ isBlockedCastingByKeyboard = _ref$isBlockedCasting === void 0 ? false : _ref$isBlockedCasting,
33077
+ atlasJSON = _ref.atlasJSON,
33078
+ atlasIMG = _ref.atlasIMG,
33079
+ inventory = _ref.inventory;
33067
33080
  React.useEffect(function () {
33068
33081
  var handleKeyDown = function handleKeyDown(e) {
33069
33082
  if (isBlockedCastingByKeyboard) return;
33070
33083
  var shortcutIndex = Number(e.key) - 1;
33071
- if (shortcutIndex >= 0 && shortcutIndex <= 3) {
33072
- var shortcut = quickSpells[shortcutIndex];
33073
- if (shortcut != null && shortcut.key && mana >= (shortcut == null ? void 0 : shortcut.manaCost)) {
33074
- onSpellCast(shortcut.key);
33075
- }
33084
+ if (shortcutIndex >= 0 && shortcutIndex <= 5) {
33085
+ onShortcutCast(shortcutIndex);
33076
33086
  }
33077
33087
  };
33078
33088
  window.addEventListener('keydown', handleKeyDown);
33079
33089
  return function () {
33080
33090
  window.removeEventListener('keydown', handleKeyDown);
33081
33091
  };
33082
- }, [quickSpells, isBlockedCastingByKeyboard]);
33092
+ }, [shortcuts, isBlockedCastingByKeyboard]);
33083
33093
  return React__default.createElement(List, null, Array.from({
33084
- length: 4
33094
+ length: 6
33085
33095
  }).map(function (_, i) {
33086
- var _quickSpells$i, _quickSpells$i2, _quickSpells$i3, _quickSpells$i4, _quickSpells$i5;
33087
- return React__default.createElement(SpellShortcut, {
33096
+ var _shortcuts$i, _shortcuts$i3, _payload$manaCost;
33097
+ if (((_shortcuts$i = shortcuts[i]) == null ? void 0 : _shortcuts$i.type) === exports.ShortcutType.Item) {
33098
+ var _shortcuts$i2;
33099
+ var _payload = (_shortcuts$i2 = shortcuts[i]) == null ? void 0 : _shortcuts$i2.payload;
33100
+ var itemsFromEquipment = [];
33101
+ if (inventory) {
33102
+ Object.keys(inventory.slots).forEach(function (i) {
33103
+ var _inventory$slots$inde;
33104
+ var index = parseInt(i);
33105
+ if (((_inventory$slots$inde = inventory.slots[index]) == null ? void 0 : _inventory$slots$inde.key) === (_payload == null ? void 0 : _payload.key)) {
33106
+ itemsFromEquipment.push(inventory.slots[index]);
33107
+ }
33108
+ });
33109
+ }
33110
+ var totalQty = itemsFromEquipment.reduce(function (acc, item) {
33111
+ return acc + ((item == null ? void 0 : item.stackQty) || 1);
33112
+ }, 0);
33113
+ return React__default.createElement(SingleShortcut, {
33114
+ key: i,
33115
+ onClick: onShortcutCast.bind(null, i),
33116
+ disabled: false
33117
+ }, _payload && React__default.createElement(SpriteFromAtlas, {
33118
+ atlasIMG: atlasIMG,
33119
+ atlasJSON: atlasJSON,
33120
+ spriteKey: shared.getItemTextureKeyPath({
33121
+ key: _payload.texturePath,
33122
+ texturePath: _payload.texturePath,
33123
+ stackQty: _payload.stackQty || 1
33124
+ }, atlasJSON),
33125
+ width: 32,
33126
+ height: 32
33127
+ }), React__default.createElement("span", {
33128
+ className: "qty"
33129
+ }, totalQty), React__default.createElement("span", {
33130
+ className: "keyboard"
33131
+ }, i + 1));
33132
+ }
33133
+ var payload = (_shortcuts$i3 = shortcuts[i]) == null ? void 0 : _shortcuts$i3.payload;
33134
+ return React__default.createElement(SingleShortcut, {
33088
33135
  key: i,
33089
- onClick: onSpellCast.bind(null, (_quickSpells$i = quickSpells[i]) == null ? void 0 : _quickSpells$i.key),
33090
- disabled: mana < ((_quickSpells$i2 = quickSpells[i]) == null ? void 0 : _quickSpells$i2.manaCost)
33136
+ onClick: onShortcutCast.bind(null, i),
33137
+ disabled: mana < ((_payload$manaCost = payload == null ? void 0 : payload.manaCost) != null ? _payload$manaCost : 0)
33091
33138
  }, React__default.createElement("span", {
33092
33139
  className: "mana"
33093
- }, ((_quickSpells$i3 = quickSpells[i]) == null ? void 0 : _quickSpells$i3.key) && ((_quickSpells$i4 = quickSpells[i]) == null ? void 0 : _quickSpells$i4.manaCost)), React__default.createElement("span", {
33140
+ }, payload && payload.manaCost), React__default.createElement("span", {
33094
33141
  className: "magicWords"
33095
- }, (_quickSpells$i5 = quickSpells[i]) == null ? void 0 : _quickSpells$i5.magicWords.split(' ').map(function (word) {
33142
+ }, payload == null ? void 0 : payload.magicWords.split(' ').map(function (word) {
33096
33143
  return word[0];
33097
33144
  })), React__default.createElement("span", {
33098
33145
  className: "keyboard"
33099
33146
  }, i + 1));
33100
33147
  }));
33101
33148
  };
33102
- var SpellShortcut = /*#__PURE__*/styled.button.withConfig({
33103
- displayName: "QuickSpells__SpellShortcut",
33104
- componentId: "sc-41yq7s-0"
33105
- })(["width:3rem;height:3rem;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;position:relative;span{pointer-events:none;}.mana{position:absolute;top:-5px;right:0;font-size:0.65rem;color:", ";}.magicWords{margin-top:4px;}.keyboard{position:absolute;bottom:-5px;left:0;font-size:0.65rem;color:", ";}&:hover,&:focus{background-color:", ";}&:active{background-color:", ";}&:disabled{opacity:0.5;}"], uiColors.lightGray, uiColors.darkGray, uiColors.blue, uiColors.yellow, uiColors.darkGray, uiColors.gray);
33106
33149
  var List = /*#__PURE__*/styled.p.withConfig({
33107
- displayName: "QuickSpells__List",
33108
- componentId: "sc-41yq7s-1"
33150
+ displayName: "Shortcuts__List",
33151
+ componentId: "sc-kgtsi7-0"
33109
33152
  })(["width:100%;display:flex;align-items:center;justify-content:center;gap:0.5rem;box-sizing:border-box;margin:0 !important;"]);
33110
33153
 
33111
33154
  var CircularController = function CircularController(_ref) {
33112
33155
  var onActionClick = _ref.onActionClick,
33113
33156
  onCancelClick = _ref.onCancelClick,
33114
- onSpellClick = _ref.onSpellClick,
33157
+ onShortcutClick = _ref.onShortcutClick,
33115
33158
  mana = _ref.mana,
33116
- spells = _ref.spells;
33159
+ shortcuts = _ref.shortcuts,
33160
+ inventory = _ref.inventory,
33161
+ atlasIMG = _ref.atlasIMG,
33162
+ atlasJSON = _ref.atlasJSON;
33117
33163
  var onTouchStart = function onTouchStart(e) {
33118
33164
  var target = e.target;
33119
33165
  target == null ? void 0 : target.classList.add('active');
@@ -33125,25 +33171,70 @@ var CircularController = function CircularController(_ref) {
33125
33171
  }, 100);
33126
33172
  action();
33127
33173
  };
33128
- return React__default.createElement(ButtonsContainer, null, React__default.createElement(SpellsContainer, null, Array.from({
33129
- length: 4
33130
- }).map(function (_, i) {
33131
- var variant = i === 0 ? 'top' : i === 3 ? 'bottom' : '';
33132
- var spell = spells[i];
33133
- var onSpellClickBinded = spell ? onSpellClick.bind(null, spell.key) : function () {};
33174
+ var renderShortcut = function renderShortcut(i) {
33175
+ var _shortcuts$i, _shortcuts$i2, _shortcuts$i4, _payload$manaCost;
33176
+ var variant = '';
33177
+ if (i === 0) variant = 'top';else if (i >= 3) variant = "bottom-" + (i - 3);
33178
+ var onShortcutClickBinded = ((_shortcuts$i = shortcuts[i]) == null ? void 0 : _shortcuts$i.type) !== exports.ShortcutType.None ? onShortcutClick.bind(null, i) : function () {};
33179
+ if (((_shortcuts$i2 = shortcuts[i]) == null ? void 0 : _shortcuts$i2.type) === exports.ShortcutType.Item) {
33180
+ var _shortcuts$i3;
33181
+ var _payload = (_shortcuts$i3 = shortcuts[i]) == null ? void 0 : _shortcuts$i3.payload;
33182
+ var itemsFromEquipment = [];
33183
+ if (inventory) {
33184
+ Object.keys(inventory.slots).forEach(function (i) {
33185
+ var _inventory$slots$inde;
33186
+ var index = parseInt(i);
33187
+ if (((_inventory$slots$inde = inventory.slots[index]) == null ? void 0 : _inventory$slots$inde.key) === (_payload == null ? void 0 : _payload.key)) {
33188
+ itemsFromEquipment.push(inventory.slots[index]);
33189
+ }
33190
+ });
33191
+ }
33192
+ var totalQty = itemsFromEquipment.reduce(function (acc, item) {
33193
+ return acc + ((item == null ? void 0 : item.stackQty) || 1);
33194
+ }, 0);
33195
+ return React__default.createElement(StyledShortcut, {
33196
+ key: i,
33197
+ onTouchStart: onTouchStart,
33198
+ onTouchEnd: onTouchEnd.bind(null, onShortcutClickBinded),
33199
+ disabled: false,
33200
+ className: variant
33201
+ }, _payload && React__default.createElement(SpriteFromAtlas, {
33202
+ atlasIMG: atlasIMG,
33203
+ atlasJSON: atlasJSON,
33204
+ spriteKey: shared.getItemTextureKeyPath({
33205
+ key: _payload.texturePath,
33206
+ texturePath: _payload.texturePath,
33207
+ stackQty: _payload.stackQty || 1
33208
+ }, atlasJSON),
33209
+ width: 32,
33210
+ height: 32,
33211
+ imgScale: 1.4,
33212
+ imgStyle: {
33213
+ left: '4px'
33214
+ }
33215
+ }), React__default.createElement("span", {
33216
+ className: "qty"
33217
+ }, totalQty));
33218
+ }
33219
+ var payload = (_shortcuts$i4 = shortcuts[i]) == null ? void 0 : _shortcuts$i4.payload;
33134
33220
  return React__default.createElement(StyledShortcut, {
33135
33221
  key: i,
33136
- disabled: mana < (spell == null ? void 0 : spell.manaCost),
33137
33222
  onTouchStart: onTouchStart,
33138
- onTouchEnd: onTouchEnd.bind(null, onSpellClickBinded),
33223
+ onTouchEnd: onTouchEnd.bind(null, onShortcutClickBinded),
33224
+ disabled: mana < ((_payload$manaCost = payload == null ? void 0 : payload.manaCost) != null ? _payload$manaCost : 0),
33139
33225
  className: variant
33140
33226
  }, React__default.createElement("span", {
33141
33227
  className: "mana"
33142
- }, (spell == null ? void 0 : spell.key) && (spell == null ? void 0 : spell.manaCost)), React__default.createElement("span", {
33228
+ }, payload && payload.manaCost), React__default.createElement("span", {
33143
33229
  className: "magicWords"
33144
- }, spell == null ? void 0 : spell.magicWords.split(' ').map(function (word) {
33230
+ }, payload == null ? void 0 : payload.magicWords.split(' ').map(function (word) {
33145
33231
  return word[0];
33146
33232
  })));
33233
+ };
33234
+ return React__default.createElement(ButtonsContainer, null, React__default.createElement(ShortcutsContainer, null, Array.from({
33235
+ length: 6
33236
+ }).map(function (_, i) {
33237
+ return renderShortcut(i);
33147
33238
  })), React__default.createElement(Button$2, {
33148
33239
  onTouchStart: onTouchStart,
33149
33240
  onTouchEnd: onTouchEnd.bind(null, onActionClick)
@@ -33157,7 +33248,7 @@ var CircularController = function CircularController(_ref) {
33157
33248
  var Button$2 = /*#__PURE__*/styled.button.withConfig({
33158
33249
  displayName: "CircularController__Button",
33159
33250
  componentId: "sc-1fewf3h-0"
33160
- })(["width:4.3rem;height:4.3rem;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;position:relative;transition:background-color 0.1s;&.active{background-color:", ";}.sword{transform:rotate(-45deg);height:2.5rem;width:1.9rem;pointer-events:none;}"], uiColors.lightGray, uiColors.darkGray, uiColors.gray);
33251
+ })(["width:4.3rem;height:4.3rem;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;position:relative;transition:background-color 0.1s;margin-top:-3rem;&.active{background-color:", ";}.sword{transform:rotate(-45deg);height:2.5rem;width:1.9rem;pointer-events:none;}"], uiColors.lightGray, uiColors.darkGray, uiColors.gray);
33161
33252
  var CancelButton = /*#__PURE__*/styled(Button$2).withConfig({
33162
33253
  displayName: "CircularController__CancelButton",
33163
33254
  componentId: "sc-1fewf3h-1"
@@ -33166,14 +33257,14 @@ var ButtonsContainer = /*#__PURE__*/styled.div.withConfig({
33166
33257
  displayName: "CircularController__ButtonsContainer",
33167
33258
  componentId: "sc-1fewf3h-2"
33168
33259
  })(["display:flex;align-items:center;justify-content:center;gap:0.5rem;"]);
33169
- var SpellsContainer = /*#__PURE__*/styled.div.withConfig({
33170
- displayName: "CircularController__SpellsContainer",
33260
+ var ShortcutsContainer = /*#__PURE__*/styled.div.withConfig({
33261
+ displayName: "CircularController__ShortcutsContainer",
33171
33262
  componentId: "sc-1fewf3h-3"
33172
- })(["display:flex;align-items:center;justify-content:center;gap:0.4rem;flex-direction:column;.top{transform:translate(93%,25%);}.bottom{transform:translate(93%,-25%);}"]);
33173
- var StyledShortcut = /*#__PURE__*/styled(SpellShortcut).withConfig({
33263
+ })(["display:flex;align-items:center;justify-content:center;gap:0.5rem;flex-direction:column;margin-top:3rem;.top{transform:translate(93%,25%);}.bottom-0{transform:translate(93%,-25%);}.bottom-1{transform:translate(-120%,calc(-5.5rem));}.bottom-2{transform:translate(-30%,calc(-5.5rem - 25%));}"]);
33264
+ var StyledShortcut = /*#__PURE__*/styled(SingleShortcut).withConfig({
33174
33265
  displayName: "CircularController__StyledShortcut",
33175
33266
  componentId: "sc-1fewf3h-4"
33176
- })(["width:2.5rem;height:2.5rem;transition:background-color 0.1s;.mana{font-size:0.5rem;}&:hover,&:focus,&:active{background-color:", ";}&.active{background-color:", ";}"], uiColors.lightGray, uiColors.gray);
33267
+ })(["width:2.5rem;height:2.5rem;transition:background-color 0.1s;.mana,.qty{font-size:0.5rem;}&:hover,&:focus,&:active{background-color:", ";}&.active{background-color:", ";}"], uiColors.lightGray, uiColors.gray);
33177
33268
 
33178
33269
  function useOutsideClick(ref, id) {
33179
33270
  React.useEffect(function () {
@@ -33762,7 +33853,8 @@ var ItemSlot = /*#__PURE__*/mobxReactLite.observer(function (_ref) {
33762
33853
  checkIfItemCanBeMoved = _ref.checkIfItemCanBeMoved,
33763
33854
  openQuantitySelector = _ref.openQuantitySelector,
33764
33855
  checkIfItemShouldDragEnd = _ref.checkIfItemShouldDragEnd,
33765
- dragScale = _ref.dragScale;
33856
+ dragScale = _ref.dragScale,
33857
+ isSelectingShortcut = _ref.isSelectingShortcut;
33766
33858
  var _useState = React.useState(false),
33767
33859
  isTooltipVisible = _useState[0],
33768
33860
  setTooltipVisible = _useState[1];
@@ -33795,6 +33887,7 @@ var ItemSlot = /*#__PURE__*/mobxReactLite.observer(function (_ref) {
33795
33887
  });
33796
33888
  setIsFocused(false);
33797
33889
  if (item) {
33890
+ console.log(item);
33798
33891
  setContextActions(generateContextMenu(item, containerType));
33799
33892
  }
33800
33893
  }, [item]);
@@ -33895,14 +33988,16 @@ var ItemSlot = /*#__PURE__*/mobxReactLite.observer(function (_ref) {
33895
33988
  var resetItem = function resetItem() {
33896
33989
  setTooltipVisible(false);
33897
33990
  setWasDragged(false);
33898
- setIsFocused(false);
33899
33991
  };
33900
33992
  var onSuccesfulDrag = function onSuccesfulDrag(quantity) {
33901
33993
  resetItem();
33902
- if (quantity === -1) setDragPosition({
33903
- x: 0,
33904
- y: 0
33905
- });else if (item) {
33994
+ if (quantity === -1) {
33995
+ setDragPosition({
33996
+ x: 0,
33997
+ y: 0
33998
+ });
33999
+ setIsFocused(false);
34000
+ } else if (item) {
33906
34001
  onDragEnd(quantity);
33907
34002
  }
33908
34003
  };
@@ -33924,12 +34019,14 @@ var ItemSlot = /*#__PURE__*/mobxReactLite.observer(function (_ref) {
33924
34019
  bubbles: true
33925
34020
  });
33926
34021
  (_document$elementFrom = document.elementFromPoint(clientX, clientY)) == null ? void 0 : _document$elementFrom.dispatchEvent(simulatedEvent);
33927
- }
34022
+ },
34023
+ isSelectingShortcut: isSelectingShortcut && ((item == null ? void 0 : item.type) === shared.ItemType.Consumable || (item == null ? void 0 : item.type) === shared.ItemType.Tool)
33928
34024
  }, React__default.createElement(Draggable, {
34025
+ axis: isSelectingShortcut ? 'none' : 'both',
33929
34026
  defaultClassName: item ? 'draggable' : 'empty-slot',
33930
34027
  scale: dragScale,
33931
34028
  onStop: function onStop(e, data) {
33932
- if (wasDragged && item) {
34029
+ if (wasDragged && item && !isSelectingShortcut) {
33933
34030
  var _e$target;
33934
34031
  //@ts-ignore
33935
34032
  var classes = Array.from((_e$target = e.target) == null ? void 0 : _e$target.classList);
@@ -33959,6 +34056,7 @@ var ItemSlot = /*#__PURE__*/mobxReactLite.observer(function (_ref) {
33959
34056
  if (item.stackQty && item.stackQty !== 1 && openQuantitySelector) openQuantitySelector(item.stackQty, onSuccesfulDrag);else onSuccesfulDrag(item.stackQty);
33960
34057
  } else {
33961
34058
  resetItem();
34059
+ setIsFocused(false);
33962
34060
  setDragPosition({
33963
34061
  x: 0,
33964
34062
  y: 0
@@ -33966,12 +34064,12 @@ var ItemSlot = /*#__PURE__*/mobxReactLite.observer(function (_ref) {
33966
34064
  }
33967
34065
  }, 100);
33968
34066
  } else if (item) {
33969
- if (!isContextMenuDisabled) setIsContextMenuVisible(!isContextMenuVisible);
34067
+ if (!isContextMenuDisabled && !isSelectingShortcut) setIsContextMenuVisible(!isContextMenuVisible);
33970
34068
  onClick(item.type, containerType, item);
33971
34069
  }
33972
34070
  },
33973
34071
  onStart: function onStart() {
33974
- if (!item) {
34072
+ if (!item || isSelectingShortcut) {
33975
34073
  return;
33976
34074
  }
33977
34075
  if (onDragStart) {
@@ -34033,7 +34131,7 @@ var rarityColor = function rarityColor(item) {
34033
34131
  var Container$a = /*#__PURE__*/styled.div.withConfig({
34034
34132
  displayName: "ItemSlot__Container",
34035
34133
  componentId: "sc-l2j5ef-0"
34036
- })(["margin:0.1rem;.sprite-from-atlas-img{position:relative;top:1.5rem;left:1.5rem;border-color:", ";box-shadow:", " inset,", ";}position:relative;"], function (_ref2) {
34134
+ })(["margin:0.1rem;.sprite-from-atlas-img{position:relative;top:1.5rem;left:1.5rem;border-color:", ";box-shadow:", " inset,", ";}position:relative;&::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;border-radius:12px;pointer-events:none;animation:", ";@keyframes bg-color-change{0%{background-color:rgba(255 255 255 / 0.5);}50%{background-color:transparent;}100%{background-color:rgba(255 255 255 / 0.5);}}}"], function (_ref2) {
34037
34135
  var item = _ref2.item;
34038
34136
  return rarityColor(item);
34039
34137
  }, function (_ref3) {
@@ -34042,6 +34140,9 @@ var Container$a = /*#__PURE__*/styled.div.withConfig({
34042
34140
  }, function (_ref4) {
34043
34141
  var item = _ref4.item;
34044
34142
  return "0 0 4px 3px " + rarityColor(item);
34143
+ }, function (_ref5) {
34144
+ var isSelectingShortcut = _ref5.isSelectingShortcut;
34145
+ return isSelectingShortcut ? 'bg-color-change 1s infinite' : 'none';
34045
34146
  });
34046
34147
  var ItemContainer = /*#__PURE__*/styled.div.withConfig({
34047
34148
  displayName: "ItemSlot__ItemContainer",
@@ -34152,959 +34253,831 @@ var EquipmentColumn = /*#__PURE__*/styled.div.withConfig({
34152
34253
  componentId: "sc-1wuddg2-1"
34153
34254
  })(["display:flex;justify-content:center;flex-wrap:wrap;flex-direction:column;touch-action:none;"]);
34154
34255
 
34155
- var IS_MOBILE_OR_TABLET = /*#__PURE__*/shared.isMobileOrTablet();
34156
-
34157
- var chunkString = function chunkString(str, length) {
34158
- return str.match(new RegExp('.{1,' + length + '}', 'g'));
34159
- };
34160
-
34161
- var DynamicText = function DynamicText(_ref) {
34162
- var text = _ref.text,
34163
- onFinish = _ref.onFinish,
34164
- onStart = _ref.onStart;
34165
- var _useState = React.useState(''),
34166
- textState = _useState[0],
34167
- setTextState = _useState[1];
34168
- React.useEffect(function () {
34169
- var i = 0;
34170
- var interval = setInterval(function () {
34171
- // on every interval, show one more character
34172
- if (i === 0) {
34173
- if (onStart) {
34174
- onStart();
34175
- }
34256
+ var SlotsContainer = function SlotsContainer(_ref) {
34257
+ var children = _ref.children,
34258
+ title = _ref.title,
34259
+ onClose = _ref.onClose,
34260
+ _onPositionChange = _ref.onPositionChange,
34261
+ onOutsideClick = _ref.onOutsideClick,
34262
+ initialPosition = _ref.initialPosition;
34263
+ return React__default.createElement(DraggableContainer, {
34264
+ title: title,
34265
+ type: exports.RPGUIContainerTypes.Framed,
34266
+ onCloseButton: function onCloseButton() {
34267
+ if (onClose) {
34268
+ onClose();
34176
34269
  }
34177
- if (i < text.length) {
34178
- setTextState(text.substring(0, i + 1));
34179
- i++;
34180
- } else {
34181
- clearInterval(interval);
34182
- if (onFinish) {
34183
- onFinish();
34184
- }
34270
+ },
34271
+ width: "400px",
34272
+ cancelDrag: ".item-container-body, #shortcuts_list",
34273
+ onPositionChange: function onPositionChange(_ref2) {
34274
+ var x = _ref2.x,
34275
+ y = _ref2.y;
34276
+ if (_onPositionChange) {
34277
+ _onPositionChange({
34278
+ x: x,
34279
+ y: y
34280
+ });
34185
34281
  }
34186
- }, 50);
34187
- return function () {
34188
- clearInterval(interval);
34189
- };
34190
- }, [text]);
34191
- return React__default.createElement(TextContainer, null, textState);
34282
+ },
34283
+ onOutsideClick: onOutsideClick,
34284
+ initialPosition: initialPosition
34285
+ }, children);
34192
34286
  };
34193
- var TextContainer = /*#__PURE__*/styled.p.withConfig({
34194
- displayName: "DynamicText__TextContainer",
34195
- componentId: "sc-1ggl9nd-0"
34196
- })(["font-size:0.7rem !important;color:white;text-shadow:1px 1px 0px #000000;letter-spacing:1.2px;word-break:normal;"]);
34197
34287
 
34198
- var img$6 = 'data:image/gif;base64,R0lGODlhEAAQAPIAAAAAABQYLiw1TUBJc2hvmQAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAALAAAAAAQABAAAAM9CLrc/lCFGSKYJJP5AhlguDnBMIVgxXgmJapSSp3mKs/pKrT0IMCXUk+2Cgh2oSOnaDz+lswZpSOFUq2KBAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAALAAAAAAQABAAAAIzhI+py90Bg4OjDrjCELxfFQhQx0mIJkaeaYRp5LJADMdnqXbyOJLYTdKBejjZoRaZJBMFACH/C0ltYWdlTWFnaWNrDWdhbW1hPTAuNDU0NTUAIfkEARQAAAAsAAAAABAAEAAAAjKEj6nL7Y+CDE6OO+QKQ/ifKYEgfR4VddPohQe7lmR0xidNTib65uacYP2AQWGuMlEUAAA7';
34199
-
34200
- 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';
34201
-
34202
- var NPCDialogText = function NPCDialogText(_ref) {
34203
- var text = _ref.text,
34204
- onClose = _ref.onClose,
34205
- onEndStep = _ref.onEndStep,
34206
- onStartStep = _ref.onStartStep,
34207
- type = _ref.type;
34208
- var windowSize = React.useRef([window.innerWidth, window.innerHeight]);
34209
- function maxCharacters(width) {
34210
- // Set the font size to 16 pixels
34211
- var fontSize = 11.2;
34212
- // Calculate the number of characters that can fit in one line
34213
- var charactersPerLine = Math.floor(width / 2 / fontSize);
34214
- // Calculate the number of lines that can fit in the div
34215
- var linesPerDiv = Math.floor(180 / fontSize);
34216
- // Calculate the maximum number of characters that can fit in the div
34217
- var maxCharacters = charactersPerLine * linesPerDiv;
34218
- // Return the maximum number of characters
34219
- return Math.round(maxCharacters / 5);
34220
- }
34221
- var textChunks = chunkString(text, maxCharacters(windowSize.current[0]));
34288
+ (function (RangeSliderType) {
34289
+ RangeSliderType["Slider"] = "rpgui-slider";
34290
+ RangeSliderType["GoldSlider"] = "rpgui-slider golden";
34291
+ })(exports.RangeSliderType || (exports.RangeSliderType = {}));
34292
+ var RangeSlider = function RangeSlider(_ref) {
34293
+ var type = _ref.type,
34294
+ valueMin = _ref.valueMin,
34295
+ valueMax = _ref.valueMax,
34296
+ width = _ref.width,
34297
+ _onChange = _ref.onChange,
34298
+ value = _ref.value;
34299
+ var sliderId = uuid.v4();
34300
+ var containerRef = React.useRef(null);
34222
34301
  var _useState = React.useState(0),
34223
- chunkIndex = _useState[0],
34224
- setChunkIndex = _useState[1];
34225
- var onHandleSpacePress = function onHandleSpacePress(event) {
34226
- if (event.code === 'Space') {
34227
- goToNextStep();
34228
- }
34229
- };
34230
- var goToNextStep = function goToNextStep() {
34231
- var hasNextChunk = (textChunks == null ? void 0 : textChunks[chunkIndex + 1]) || false;
34232
- if (hasNextChunk) {
34233
- setChunkIndex(function (prev) {
34234
- return prev + 1;
34235
- });
34236
- } else {
34237
- // if there's no more text chunks, close the dialog
34238
- onClose();
34239
- }
34240
- };
34302
+ left = _useState[0],
34303
+ setLeft = _useState[1];
34241
34304
  React.useEffect(function () {
34242
- document.addEventListener('keydown', onHandleSpacePress);
34243
- return function () {
34244
- return document.removeEventListener('keydown', onHandleSpacePress);
34245
- };
34246
- }, [chunkIndex]);
34247
- var _useState2 = React.useState(false),
34248
- showGoNextIndicator = _useState2[0],
34249
- setShowGoNextIndicator = _useState2[1];
34250
- return React__default.createElement(Container$b, null, React__default.createElement(DynamicText, {
34251
- text: (textChunks == null ? void 0 : textChunks[chunkIndex]) || '',
34252
- onFinish: function onFinish() {
34253
- setShowGoNextIndicator(true);
34254
- onEndStep && onEndStep();
34305
+ var _containerRef$current;
34306
+ var calculatedWidth = ((_containerRef$current = containerRef.current) == null ? void 0 : _containerRef$current.clientWidth) || 0;
34307
+ setLeft(Math.max((value - valueMin) / (valueMax - valueMin) * (calculatedWidth - 35) + 10));
34308
+ }, [value, valueMin, valueMax]);
34309
+ var typeClass = type === exports.RangeSliderType.GoldSlider ? 'golden' : '';
34310
+ return React__default.createElement("div", {
34311
+ style: {
34312
+ width: width,
34313
+ position: 'relative'
34255
34314
  },
34256
- onStart: function onStart() {
34257
- setShowGoNextIndicator(false);
34258
- onStartStep && onStartStep();
34315
+ className: "rpgui-slider-container " + typeClass,
34316
+ id: "rpgui-slider-" + sliderId,
34317
+ ref: containerRef
34318
+ }, React__default.createElement("div", {
34319
+ style: {
34320
+ pointerEvents: 'none'
34259
34321
  }
34260
- }), showGoNextIndicator && React__default.createElement(PressSpaceIndicator, {
34261
- right: type === exports.NPCDialogType.TextOnly ? '1rem' : '10.5rem',
34262
- src: IS_MOBILE_OR_TABLET ? img$6 : img$7,
34263
- onClick: function onClick() {
34264
- goToNextStep();
34322
+ }, React__default.createElement("div", {
34323
+ className: "rpgui-slider-track " + typeClass
34324
+ }), React__default.createElement("div", {
34325
+ className: "rpgui-slider-left-edge " + typeClass
34326
+ }), React__default.createElement("div", {
34327
+ className: "rpgui-slider-right-edge " + typeClass
34328
+ }), React__default.createElement("div", {
34329
+ className: "rpgui-slider-thumb " + typeClass,
34330
+ style: {
34331
+ left: left
34265
34332
  }
34333
+ })), React__default.createElement(Input$1, {
34334
+ type: "range",
34335
+ style: {
34336
+ width: width
34337
+ },
34338
+ min: valueMin,
34339
+ max: valueMax,
34340
+ onChange: function onChange(e) {
34341
+ return _onChange(Number(e.target.value));
34342
+ },
34343
+ value: value,
34344
+ className: "rpgui-cursor-point"
34266
34345
  }));
34267
34346
  };
34268
- var Container$b = /*#__PURE__*/styled.div.withConfig({
34269
- displayName: "NPCDialogText__Container",
34270
- componentId: "sc-1cxkdh9-0"
34271
- })([""]);
34272
- var PressSpaceIndicator = /*#__PURE__*/styled.img.withConfig({
34273
- displayName: "NPCDialogText__PressSpaceIndicator",
34274
- componentId: "sc-1cxkdh9-1"
34275
- })(["position:absolute;right:", ";bottom:1rem;height:20.7px;image-rendering:-webkit-optimize-contrast;"], function (_ref2) {
34276
- var right = _ref2.right;
34277
- return right;
34278
- });
34279
-
34280
- //@ts-ignore
34281
- var useEventListener = function useEventListener(type, handler, el) {
34282
- if (el === void 0) {
34283
- el = window;
34284
- }
34285
- var savedHandler = React__default.useRef();
34286
- React__default.useEffect(function () {
34287
- savedHandler.current = handler;
34288
- }, [handler]);
34289
- React__default.useEffect(function () {
34290
- //@ts-ignore
34291
- var listener = function listener(e) {
34292
- return savedHandler.current(e);
34293
- };
34294
- el.addEventListener(type, listener);
34295
- return function () {
34296
- el.removeEventListener(type, listener);
34297
- };
34298
- }, [type, el]);
34299
- };
34347
+ var Input$1 = /*#__PURE__*/styled.input.withConfig({
34348
+ displayName: "RangeSlider__Input",
34349
+ componentId: "sc-v8mte9-0"
34350
+ })(["opacity:0;position:absolute;width:100%;height:100%;top:0;left:0;margin-top:-5px;"]);
34300
34351
 
34301
- var QuestionDialog = function QuestionDialog(_ref) {
34302
- var questions = _ref.questions,
34303
- answers = _ref.answers,
34352
+ var ItemQuantitySelector = function ItemQuantitySelector(_ref) {
34353
+ var quantity = _ref.quantity,
34354
+ onConfirm = _ref.onConfirm,
34304
34355
  onClose = _ref.onClose;
34305
- var _useState = React.useState(questions[0]),
34306
- currentQuestion = _useState[0],
34307
- setCurrentQuestion = _useState[1];
34308
- var _useState2 = React.useState(false),
34309
- canShowAnswers = _useState2[0],
34310
- setCanShowAnswers = _useState2[1];
34311
- var onGetFirstAnswer = function onGetFirstAnswer() {
34312
- if (!currentQuestion.answerIds || currentQuestion.answerIds.length === 0) {
34313
- return null;
34314
- }
34315
- var firstAnswerId = currentQuestion.answerIds[0];
34316
- return answers.find(function (answer) {
34317
- return answer.id === firstAnswerId;
34318
- });
34319
- };
34320
- var _useState3 = React.useState(onGetFirstAnswer()),
34321
- currentAnswer = _useState3[0],
34322
- setCurrentAnswer = _useState3[1];
34356
+ var _useState = React.useState(quantity),
34357
+ value = _useState[0],
34358
+ setValue = _useState[1];
34359
+ var inputRef = React.useRef(null);
34323
34360
  React.useEffect(function () {
34324
- setCurrentAnswer(onGetFirstAnswer());
34325
- }, [currentQuestion]);
34326
- var onGetAnswers = function onGetAnswers(answerIds) {
34327
- return answerIds.map(function (answerId) {
34328
- return answers.find(function (answer) {
34329
- return answer.id === answerId;
34330
- });
34331
- });
34332
- };
34333
- var onKeyPress = function onKeyPress(e) {
34334
- switch (e.key) {
34335
- case 'ArrowDown':
34336
- // select next answer, if any.
34337
- // if no next answer, select first answer
34338
- // const nextAnswer = onGetAnswers(currentQuestion.answerIds!).find(
34339
- // (answer) => answer?.id === currentAnswer!.id + 1
34340
- // );
34341
- var nextAnswerIndex = onGetAnswers(currentQuestion.answerIds).findIndex(function (answer) {
34342
- return (answer == null ? void 0 : answer.id) === currentAnswer.id + 1;
34343
- });
34344
- var nextAnswerID = currentQuestion.answerIds[nextAnswerIndex];
34345
- var nextAnswer = onGetAnswers(currentQuestion.answerIds).find(function (answer) {
34346
- return (answer == null ? void 0 : answer.id) === nextAnswerID;
34347
- });
34348
- setCurrentAnswer(nextAnswer || onGetFirstAnswer());
34349
- break;
34350
- case 'ArrowUp':
34351
- // select previous answer, if any.
34352
- // if no previous answer, select last answer
34353
- var previousAnswerIndex = onGetAnswers(currentQuestion.answerIds).findIndex(function (answer) {
34354
- return (answer == null ? void 0 : answer.id) === currentAnswer.id - 1;
34355
- });
34356
- var previousAnswerID = currentQuestion.answerIds && currentQuestion.answerIds[previousAnswerIndex];
34357
- var previousAnswer = onGetAnswers(currentQuestion.answerIds).find(function (answer) {
34358
- return (answer == null ? void 0 : answer.id) === previousAnswerID;
34359
- });
34360
- if (previousAnswer) {
34361
- setCurrentAnswer(previousAnswer);
34362
- } else {
34363
- setCurrentAnswer(onGetAnswers(currentQuestion.answerIds).pop());
34364
- }
34365
- break;
34366
- case 'Enter':
34367
- setCanShowAnswers(false);
34368
- if (!(currentAnswer != null && currentAnswer.nextQuestionId)) {
34361
+ if (inputRef.current) {
34362
+ inputRef.current.focus();
34363
+ inputRef.current.select();
34364
+ var closeSelector = function closeSelector(e) {
34365
+ if (e.key === 'Escape') {
34369
34366
  onClose();
34370
- return;
34371
- } else {
34372
- setCurrentQuestion(questions.find(function (question) {
34373
- return question.id === currentAnswer.nextQuestionId;
34374
- }));
34375
34367
  }
34376
- break;
34377
- }
34378
- };
34379
- useEventListener('keydown', onKeyPress);
34380
- var onAnswerClick = function onAnswerClick(answer) {
34381
- setCanShowAnswers(false);
34382
- if (answer.nextQuestionId) {
34383
- // if there is a next question, go to it
34384
- setCurrentQuestion(questions.find(function (question) {
34385
- return question.id === answer.nextQuestionId;
34386
- }));
34387
- } else {
34388
- // else, finish dialog!
34389
- onClose();
34390
- }
34391
- };
34392
- var onRenderCurrentAnswers = function onRenderCurrentAnswers() {
34393
- var answerIds = currentQuestion.answerIds;
34394
- if (!answerIds) {
34395
- return null;
34396
- }
34397
- var answers = onGetAnswers(answerIds);
34398
- if (!answers) {
34399
- return null;
34368
+ };
34369
+ document.addEventListener('keydown', closeSelector);
34370
+ return function () {
34371
+ document.removeEventListener('keydown', closeSelector);
34372
+ };
34400
34373
  }
34401
- return answers.map(function (answer) {
34402
- var isSelected = (currentAnswer == null ? void 0 : currentAnswer.id) === (answer == null ? void 0 : answer.id);
34403
- var selectedColor = isSelected ? 'yellow' : 'white';
34404
- if (answer) {
34405
- return React__default.createElement(AnswerRow, {
34406
- key: "answer_" + answer.id
34407
- }, React__default.createElement(AnswerSelectedIcon, {
34408
- color: selectedColor
34409
- }, isSelected ? 'X' : null), React__default.createElement(Answer, {
34410
- key: answer.id,
34411
- onClick: function onClick() {
34412
- return onAnswerClick(answer);
34413
- },
34414
- color: selectedColor
34415
- }, answer.text));
34374
+ return function () {};
34375
+ }, []);
34376
+ return React__default.createElement(StyledContainer, {
34377
+ type: exports.RPGUIContainerTypes.Framed,
34378
+ width: "25rem"
34379
+ }, React__default.createElement(CloseButton$2, {
34380
+ className: "container-close",
34381
+ onClick: onClose,
34382
+ onTouchStart: onClose
34383
+ }, "X"), React__default.createElement("h2", null, "Select quantity to move"), React__default.createElement(StyledForm, {
34384
+ style: {
34385
+ width: '100%'
34386
+ },
34387
+ onSubmit: function onSubmit(e) {
34388
+ e.preventDefault();
34389
+ var numberValue = Number(value);
34390
+ if (Number.isNaN(numberValue)) {
34391
+ return;
34416
34392
  }
34417
- return null;
34418
- });
34419
- };
34420
- return React__default.createElement(Container$c, null, React__default.createElement(QuestionContainer, null, React__default.createElement(DynamicText, {
34421
- text: currentQuestion.text,
34422
- onStart: function onStart() {
34423
- return setCanShowAnswers(false);
34393
+ onConfirm(Math.max(1, Math.min(quantity, numberValue)));
34424
34394
  },
34425
- onFinish: function onFinish() {
34426
- return setCanShowAnswers(true);
34395
+ noValidate: true
34396
+ }, React__default.createElement(StyledInput, {
34397
+ innerRef: inputRef,
34398
+ placeholder: "Enter quantity",
34399
+ type: "number",
34400
+ min: 1,
34401
+ max: quantity,
34402
+ value: value,
34403
+ onChange: function onChange(e) {
34404
+ if (Number(e.target.value) >= quantity) {
34405
+ setValue(quantity);
34406
+ return;
34407
+ }
34408
+ setValue(e.target.value);
34409
+ },
34410
+ onBlur: function onBlur(e) {
34411
+ var newValue = Math.max(1, Math.min(quantity, Number(e.target.value)));
34412
+ setValue(newValue);
34427
34413
  }
34428
- })), canShowAnswers && React__default.createElement(AnswersContainer, null, onRenderCurrentAnswers()));
34414
+ }), React__default.createElement(RangeSlider, {
34415
+ type: exports.RangeSliderType.Slider,
34416
+ valueMin: 1,
34417
+ valueMax: quantity,
34418
+ width: "100%",
34419
+ onChange: setValue,
34420
+ value: value
34421
+ }), React__default.createElement(Button, {
34422
+ buttonType: exports.ButtonTypes.RPGUIButton,
34423
+ type: "submit"
34424
+ }, "Confirm")));
34429
34425
  };
34430
- var Container$c = /*#__PURE__*/styled.div.withConfig({
34431
- displayName: "QuestionDialog__Container",
34432
- componentId: "sc-bxc5u0-0"
34433
- })(["display:flex;word-break:break-all;box-sizing:border-box;justify-content:flex-start;align-items:flex-start;flex-wrap:wrap;"]);
34434
- var QuestionContainer = /*#__PURE__*/styled.div.withConfig({
34435
- displayName: "QuestionDialog__QuestionContainer",
34436
- componentId: "sc-bxc5u0-1"
34437
- })(["flex:100%;width:100%;"]);
34438
- var AnswersContainer = /*#__PURE__*/styled.div.withConfig({
34439
- displayName: "QuestionDialog__AnswersContainer",
34440
- componentId: "sc-bxc5u0-2"
34441
- })(["flex:100%;"]);
34442
- var Answer = /*#__PURE__*/styled.p.withConfig({
34443
- displayName: "QuestionDialog__Answer",
34444
- componentId: "sc-bxc5u0-3"
34445
- })(["flex:auto;color:", " !important;font-size:0.65rem !important;background:inherit;border:none;"], function (props) {
34446
- return props.color;
34447
- });
34448
- var AnswerSelectedIcon = /*#__PURE__*/styled.span.withConfig({
34449
- displayName: "QuestionDialog__AnswerSelectedIcon",
34450
- componentId: "sc-bxc5u0-4"
34451
- })(["flex:5% 0 0;color:", " !important;"], function (props) {
34452
- return props.color;
34453
- });
34454
- var AnswerRow = /*#__PURE__*/styled.div.withConfig({
34455
- displayName: "QuestionDialog__AnswerRow",
34456
- componentId: "sc-bxc5u0-5"
34457
- })(["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;}"]);
34458
-
34459
- var img$8 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAP1BMVEUAAAA7FyVxQTsUEBPj5v////+5v/tCJDOOUlIiHBr1oJfptaO6dWr61rhzFy1bMTjoanMUNGQoXMQkn97+88DQ3IhAAAAAAXRSTlMAQObYZgAAAAFiS0dEBfhv6ccAAAAHdElNRQfmAw4VOBC7c5LYAAABM0lEQVQ4y3XRi5KDIAwFUAUkbrBgpP//rZsHVHQ009qZ3tPboNN0zmwzvcw8O5sX4y0NOg/Et3jRCXF+ziULorjkOQ9gE24dvuUAzq08DiCO4pe3WN7zCP56vmpubBReQYC11YPS86ySxxCsAABTSgjb5m4g8nfbxvFHBkH2OEEvAItVuCuIsgGgl+Gcr7kDXxhEAx55A2SQEEeQeZwUaIP8Tbo05B0RFPhItAjgj1w6cDnhLluDj+Egkh3pCCP4pKQAw1IPO0W9Nti5gW9RP2dKA3BZd2Dw+baYX+Nt4GM00O4S3kEpF6Alb2Bv4LeC3kkGfAW0/p0RPoJVKr63ghHsKuRh5DIUKOAlGOwrtt9fQekAEfmhZslHUDoglB0zjfkJigN7UnTQQ4GBWomoVhEN/AOPSBh38gy+fwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMi0wMy0xNFQyMTo1NTo1MSswMDowMJcc0eEAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjItMDMtMTRUMjE6NTU6NTErMDA6MDDmQWldAAAAAElFTkSuQmCC';
34426
+ var StyledContainer = /*#__PURE__*/styled(RPGUIContainer).withConfig({
34427
+ displayName: "ItemQuantitySelector__StyledContainer",
34428
+ componentId: "sc-yfdtpn-0"
34429
+ })(["display:flex;flex-direction:column;align-items:center;"]);
34430
+ var StyledForm = /*#__PURE__*/styled.form.withConfig({
34431
+ displayName: "ItemQuantitySelector__StyledForm",
34432
+ componentId: "sc-yfdtpn-1"
34433
+ })(["display:flex;flex-direction:column;align-items:center;width:100%;"]);
34434
+ var StyledInput = /*#__PURE__*/styled(Input).withConfig({
34435
+ displayName: "ItemQuantitySelector__StyledInput",
34436
+ componentId: "sc-yfdtpn-2"
34437
+ })(["text-align:center;&::-webkit-outer-spin-button,&::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}&[type='number']{-moz-appearance:textfield;}"]);
34438
+ var CloseButton$2 = /*#__PURE__*/styled.div.withConfig({
34439
+ displayName: "ItemQuantitySelector__CloseButton",
34440
+ componentId: "sc-yfdtpn-3"
34441
+ })(["position:absolute;top:3px;right:0px;color:white;z-index:22;font-size:0.8rem;"]);
34460
34442
 
34461
- (function (NPCDialogType) {
34462
- NPCDialogType["TextOnly"] = "TextOnly";
34463
- NPCDialogType["TextAndThumbnail"] = "TextAndThumbnail";
34464
- })(exports.NPCDialogType || (exports.NPCDialogType = {}));
34465
- var NPCDialog = function NPCDialog(_ref) {
34466
- var text = _ref.text,
34467
- type = _ref.type,
34468
- _onClose = _ref.onClose,
34469
- imagePath = _ref.imagePath,
34470
- _ref$isQuestionDialog = _ref.isQuestionDialog,
34471
- isQuestionDialog = _ref$isQuestionDialog === void 0 ? false : _ref$isQuestionDialog,
34472
- questions = _ref.questions,
34473
- answers = _ref.answers;
34474
- return React__default.createElement(RPGUIContainer, {
34475
- type: exports.RPGUIContainerTypes.FramedGold,
34476
- width: isQuestionDialog ? '600px' : '80%',
34477
- height: '180px'
34478
- }, isQuestionDialog && questions && answers ? React__default.createElement(React__default.Fragment, null, React__default.createElement(TextContainer$1, {
34479
- flex: type === exports.NPCDialogType.TextAndThumbnail ? '70%' : '100%'
34480
- }, React__default.createElement(QuestionDialog, {
34481
- questions: questions,
34482
- answers: answers,
34483
- onClose: function onClose() {
34484
- if (_onClose) {
34485
- _onClose();
34486
- }
34443
+ var ShortcutsSetter = function ShortcutsSetter(_ref) {
34444
+ var setSettingShortcutIndex = _ref.setSettingShortcutIndex,
34445
+ settingShortcutIndex = _ref.settingShortcutIndex,
34446
+ shortcuts = _ref.shortcuts,
34447
+ removeShortcut = _ref.removeShortcut,
34448
+ atlasJSON = _ref.atlasJSON,
34449
+ atlasIMG = _ref.atlasIMG;
34450
+ var getContent = function getContent(index) {
34451
+ var _shortcuts$index, _shortcuts$index3;
34452
+ if (((_shortcuts$index = shortcuts[index]) == null ? void 0 : _shortcuts$index.type) === exports.ShortcutType.Item) {
34453
+ var _shortcuts$index2;
34454
+ var _payload = (_shortcuts$index2 = shortcuts[index]) == null ? void 0 : _shortcuts$index2.payload;
34455
+ if (!_payload) return null;
34456
+ return React__default.createElement(SpriteFromAtlas, {
34457
+ atlasIMG: atlasIMG,
34458
+ atlasJSON: atlasJSON,
34459
+ spriteKey: shared.getItemTextureKeyPath({
34460
+ key: _payload.texturePath,
34461
+ texturePath: _payload.texturePath,
34462
+ stackQty: _payload.stackQty || 1
34463
+ }, atlasJSON),
34464
+ width: 32,
34465
+ height: 32,
34466
+ imgScale: 1.6,
34467
+ imgStyle: {
34468
+ left: '5px'
34469
+ }
34470
+ });
34487
34471
  }
34488
- })), type === exports.NPCDialogType.TextAndThumbnail && React__default.createElement(ThumbnailContainer, null, React__default.createElement(NPCThumbnail, {
34489
- src: imagePath || img$8
34490
- }))) : React__default.createElement(React__default.Fragment, null, React__default.createElement(Container$d, null, React__default.createElement(TextContainer$1, {
34491
- flex: type === exports.NPCDialogType.TextAndThumbnail ? '70%' : '100%'
34492
- }, React__default.createElement(NPCDialogText, {
34493
- type: type,
34494
- text: text || 'No text provided.',
34495
- onClose: function onClose() {
34496
- if (_onClose) {
34497
- _onClose();
34498
- }
34499
- }
34500
- })), type === exports.NPCDialogType.TextAndThumbnail && React__default.createElement(ThumbnailContainer, null, React__default.createElement(NPCThumbnail, {
34501
- src: imagePath || img$8
34502
- })))));
34472
+ var payload = (_shortcuts$index3 = shortcuts[index]) == null ? void 0 : _shortcuts$index3.payload;
34473
+ return React__default.createElement("span", null, payload == null ? void 0 : payload.magicWords.split(' ').map(function (word) {
34474
+ return word[0];
34475
+ }));
34476
+ };
34477
+ return React__default.createElement(Container$b, null, React__default.createElement("p", null, "Shortcuts:"), React__default.createElement(List$1, {
34478
+ id: "shortcuts_list"
34479
+ }, Array.from({
34480
+ length: 6
34481
+ }).map(function (_, i) {
34482
+ return React__default.createElement(Shortcut, {
34483
+ key: i,
34484
+ onClick: function onClick() {
34485
+ removeShortcut(i);
34486
+ if (!shortcuts[i] || shortcuts[i].type === exports.ShortcutType.None) setSettingShortcutIndex(i);
34487
+ },
34488
+ disabled: settingShortcutIndex !== -1 && settingShortcutIndex !== i,
34489
+ isBeingSet: settingShortcutIndex === i
34490
+ }, getContent(i));
34491
+ })));
34503
34492
  };
34504
- var Container$d = /*#__PURE__*/styled.div.withConfig({
34505
- displayName: "NPCDialog__Container",
34506
- componentId: "sc-1b4aw74-0"
34507
- })(["display:flex;width:100%;height:100%;box-sizing:border-box;justify-content:center;align-items:flex-start;position:relative;"]);
34508
- var TextContainer$1 = /*#__PURE__*/styled.div.withConfig({
34509
- displayName: "NPCDialog__TextContainer",
34510
- componentId: "sc-1b4aw74-1"
34511
- })(["flex:", " 0 0;width:355px;"], function (_ref2) {
34512
- var flex = _ref2.flex;
34513
- return flex;
34514
- });
34515
- var ThumbnailContainer = /*#__PURE__*/styled.div.withConfig({
34516
- displayName: "NPCDialog__ThumbnailContainer",
34517
- componentId: "sc-1b4aw74-2"
34518
- })(["flex:30% 0 0;display:flex;justify-content:flex-end;"]);
34519
- var NPCThumbnail = /*#__PURE__*/styled.img.withConfig({
34520
- displayName: "NPCDialog__NPCThumbnail",
34521
- componentId: "sc-1b4aw74-3"
34522
- })(["image-rendering:pixelated;height:128px;width:128px;"]);
34493
+ var Container$b = /*#__PURE__*/styled.div.withConfig({
34494
+ displayName: "ShortcutsSetter__Container",
34495
+ componentId: "sc-xuouuf-0"
34496
+ })(["p{margin:0;margin-left:0.5rem;}"]);
34497
+ var Shortcut = /*#__PURE__*/styled.button.withConfig({
34498
+ displayName: "ShortcutsSetter__Shortcut",
34499
+ componentId: "sc-xuouuf-1"
34500
+ })(["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) {
34501
+ var isBeingSet = _ref2.isBeingSet;
34502
+ return isBeingSet ? uiColors.yellow : uiColors.darkGray;
34503
+ }, uiColors.darkGray, uiColors.gray);
34504
+ var List$1 = /*#__PURE__*/styled.div.withConfig({
34505
+ displayName: "ShortcutsSetter__List",
34506
+ componentId: "sc-xuouuf-2"
34507
+ })(["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;"]);
34523
34508
 
34524
- (function (ImgSide) {
34525
- ImgSide["right"] = "right";
34526
- ImgSide["left"] = "left";
34527
- })(exports.ImgSide || (exports.ImgSide = {}));
34528
- var NPCMultiDialog = function NPCMultiDialog(_ref) {
34529
- var _textAndTypeArray$sli;
34530
- var _onClose = _ref.onClose,
34531
- textAndTypeArray = _ref.textAndTypeArray;
34532
- var _useState = React.useState(false),
34533
- showGoNextIndicator = _useState[0],
34534
- setShowGoNextIndicator = _useState[1];
34535
- var _useState2 = React.useState(0),
34536
- slide = _useState2[0],
34537
- setSlide = _useState2[1];
34538
- var onHandleSpacePress = function onHandleSpacePress(event) {
34539
- if (event.code === 'Space') {
34540
- if (slide < (textAndTypeArray == null ? void 0 : textAndTypeArray.length) - 1) {
34541
- setSlide(function (prev) {
34542
- return prev + 1;
34543
- });
34544
- } else {
34545
- // if there's no more text chunks, close the dialog
34546
- _onClose();
34547
- }
34509
+ var ItemContainer$1 = function ItemContainer(_ref) {
34510
+ var itemContainer = _ref.itemContainer,
34511
+ onClose = _ref.onClose,
34512
+ _onMouseOver = _ref.onMouseOver,
34513
+ _onSelected = _ref.onSelected,
34514
+ onItemClick = _ref.onItemClick,
34515
+ type = _ref.type,
34516
+ atlasJSON = _ref.atlasJSON,
34517
+ atlasIMG = _ref.atlasIMG,
34518
+ _ref$disableContextMe = _ref.disableContextMenu,
34519
+ disableContextMenu = _ref$disableContextMe === void 0 ? false : _ref$disableContextMe,
34520
+ onItemDragEnd = _ref.onItemDragEnd,
34521
+ onItemDragStart = _ref.onItemDragStart,
34522
+ onItemPlaceDrop = _ref.onItemPlaceDrop,
34523
+ _onOutsideDrop = _ref.onOutsideDrop,
34524
+ checkIfItemCanBeMoved = _ref.checkIfItemCanBeMoved,
34525
+ initialPosition = _ref.initialPosition,
34526
+ checkIfItemShouldDragEnd = _ref.checkIfItemShouldDragEnd,
34527
+ dragScale = _ref.dragScale,
34528
+ shortcuts = _ref.shortcuts,
34529
+ setItemShortcut = _ref.setItemShortcut,
34530
+ removeShortcut = _ref.removeShortcut;
34531
+ var _useState = React.useState({
34532
+ isOpen: false,
34533
+ maxQuantity: 1,
34534
+ callback: function callback(_quantity) {}
34535
+ }),
34536
+ quantitySelect = _useState[0],
34537
+ setQuantitySelect = _useState[1];
34538
+ var _useState2 = React.useState(-1),
34539
+ settingShortcutIndex = _useState2[0],
34540
+ setSettingShortcutIndex = _useState2[1];
34541
+ var onRenderSlots = function onRenderSlots() {
34542
+ var slots = [];
34543
+ for (var i = 0; i < itemContainer.slotQty; i++) {
34544
+ var _itemContainer$slots;
34545
+ slots.push(React__default.createElement(ItemSlot, {
34546
+ isContextMenuDisabled: disableContextMenu,
34547
+ key: i,
34548
+ slotIndex: i,
34549
+ item: ((_itemContainer$slots = itemContainer.slots) == null ? void 0 : _itemContainer$slots[i]) || null,
34550
+ itemContainerType: type,
34551
+ onMouseOver: function onMouseOver(event, slotIndex, item) {
34552
+ if (_onMouseOver) _onMouseOver(event, slotIndex, item);
34553
+ },
34554
+ onClick: function onClick(itemType, containerType, item) {
34555
+ if (settingShortcutIndex !== -1) {
34556
+ setSettingShortcutIndex(-1);
34557
+ if (itemType === shared.ItemType.Consumable || itemType === shared.ItemType.Tool) {
34558
+ setItemShortcut == null ? void 0 : setItemShortcut(item.key, settingShortcutIndex);
34559
+ }
34560
+ } else if (onItemClick) onItemClick(item, itemType, containerType);
34561
+ },
34562
+ onSelected: function onSelected(optionId, item) {
34563
+ if (_onSelected) _onSelected(optionId, item);
34564
+ },
34565
+ onDragStart: function onDragStart(item, slotIndex, itemContainerType) {
34566
+ if (onItemDragStart) onItemDragStart(item, slotIndex, itemContainerType);
34567
+ },
34568
+ onDragEnd: function onDragEnd(quantity) {
34569
+ if (onItemDragEnd) onItemDragEnd(quantity);
34570
+ },
34571
+ dragScale: dragScale,
34572
+ checkIfItemCanBeMoved: checkIfItemCanBeMoved,
34573
+ checkIfItemShouldDragEnd: checkIfItemShouldDragEnd,
34574
+ openQuantitySelector: function openQuantitySelector(maxQuantity, callback) {
34575
+ setQuantitySelect({
34576
+ isOpen: true,
34577
+ maxQuantity: maxQuantity,
34578
+ callback: callback
34579
+ });
34580
+ },
34581
+ onPlaceDrop: function onPlaceDrop(item, slotIndex, itemContainerType) {
34582
+ if (onItemPlaceDrop) onItemPlaceDrop(item, slotIndex, itemContainerType);
34583
+ },
34584
+ onOutsideDrop: function onOutsideDrop(item, position) {
34585
+ if (_onOutsideDrop) _onOutsideDrop(item, position);
34586
+ },
34587
+ atlasIMG: atlasIMG,
34588
+ atlasJSON: atlasJSON,
34589
+ isSelectingShortcut: settingShortcutIndex !== -1
34590
+ }));
34548
34591
  }
34592
+ return slots;
34549
34593
  };
34550
- React.useEffect(function () {
34551
- document.addEventListener('keydown', onHandleSpacePress);
34552
- return function () {
34553
- return document.removeEventListener('keydown', onHandleSpacePress);
34554
- };
34555
- }, [slide]);
34556
- return React__default.createElement(RPGUIContainer, {
34557
- type: exports.RPGUIContainerTypes.FramedGold,
34558
- width: '50%',
34559
- height: '180px'
34560
- }, React__default.createElement(React__default.Fragment, null, React__default.createElement(Container$e, null, ((_textAndTypeArray$sli = textAndTypeArray[slide]) == null ? void 0 : _textAndTypeArray$sli.imageSide) === 'right' && React__default.createElement(React__default.Fragment, null, React__default.createElement(TextContainer$2, {
34561
- flex: '70%'
34562
- }, React__default.createElement(NPCDialogText, {
34563
- onStartStep: function onStartStep() {
34564
- return setShowGoNextIndicator(false);
34565
- },
34566
- onEndStep: function onEndStep() {
34567
- return setShowGoNextIndicator(true);
34568
- },
34569
- text: textAndTypeArray[slide].text || 'No text provided.',
34570
- onClose: function onClose() {
34571
- if (_onClose) {
34572
- _onClose();
34573
- }
34574
- }
34575
- })), React__default.createElement(ThumbnailContainer$1, null, React__default.createElement(NPCThumbnail$1, {
34576
- src: textAndTypeArray[slide].imagePath || img$8
34577
- })), showGoNextIndicator && React__default.createElement(PressSpaceIndicator$1, {
34578
- right: '10.5rem',
34579
- src: img$7
34580
- })), textAndTypeArray[slide].imageSide === 'left' && React__default.createElement(React__default.Fragment, null, React__default.createElement(ThumbnailContainer$1, null, React__default.createElement(NPCThumbnail$1, {
34581
- src: textAndTypeArray[slide].imagePath || img$8
34582
- })), React__default.createElement(TextContainer$2, {
34583
- flex: '70%'
34584
- }, React__default.createElement(NPCDialogText, {
34585
- onStartStep: function onStartStep() {
34586
- return setShowGoNextIndicator(false);
34587
- },
34588
- onEndStep: function onEndStep() {
34589
- return setShowGoNextIndicator(true);
34594
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement(SlotsContainer, {
34595
+ title: itemContainer.name || 'Container',
34596
+ onClose: onClose,
34597
+ initialPosition: initialPosition
34598
+ }, type === shared.ItemContainerType.Inventory && shortcuts && removeShortcut && React__default.createElement(ShortcutsSetter, {
34599
+ setSettingShortcutIndex: setSettingShortcutIndex,
34600
+ settingShortcutIndex: settingShortcutIndex,
34601
+ shortcuts: shortcuts,
34602
+ removeShortcut: removeShortcut,
34603
+ atlasIMG: atlasIMG,
34604
+ atlasJSON: atlasJSON
34605
+ }), React__default.createElement(ItemsContainer, {
34606
+ className: "item-container-body"
34607
+ }, onRenderSlots())), quantitySelect.isOpen && React__default.createElement(QuantitySelectorContainer, null, React__default.createElement(ItemQuantitySelector, {
34608
+ quantity: quantitySelect.maxQuantity,
34609
+ onConfirm: function onConfirm(quantity) {
34610
+ quantitySelect.callback(quantity);
34611
+ setQuantitySelect({
34612
+ isOpen: false,
34613
+ maxQuantity: 1,
34614
+ callback: function callback() {}
34615
+ });
34590
34616
  },
34591
- text: textAndTypeArray[slide].text || 'No text provided.',
34592
34617
  onClose: function onClose() {
34593
- if (_onClose) {
34594
- _onClose();
34595
- }
34618
+ quantitySelect.callback(-1);
34619
+ setQuantitySelect({
34620
+ isOpen: false,
34621
+ maxQuantity: 1,
34622
+ callback: function callback() {}
34623
+ });
34596
34624
  }
34597
- })), showGoNextIndicator && React__default.createElement(PressSpaceIndicator$1, {
34598
- right: '1rem',
34599
- src: img$7
34600
- }))), ")"));
34625
+ })));
34601
34626
  };
34602
- var Container$e = /*#__PURE__*/styled.div.withConfig({
34603
- displayName: "NPCMultiDialog__Container",
34604
- componentId: "sc-rvu5wg-0"
34605
- })(["display:flex;width:100%;height:100%;box-sizing:border-box;justify-content:center;align-items:flex-start;position:relative;"]);
34606
- var TextContainer$2 = /*#__PURE__*/styled.div.withConfig({
34607
- displayName: "NPCMultiDialog__TextContainer",
34608
- componentId: "sc-rvu5wg-1"
34609
- })(["flex:", " 0 0;width:355px;"], function (_ref2) {
34610
- var flex = _ref2.flex;
34611
- return flex;
34612
- });
34613
- var ThumbnailContainer$1 = /*#__PURE__*/styled.div.withConfig({
34614
- displayName: "NPCMultiDialog__ThumbnailContainer",
34615
- componentId: "sc-rvu5wg-2"
34616
- })(["flex:30% 0 0;display:flex;justify-content:flex-end;"]);
34617
- var NPCThumbnail$1 = /*#__PURE__*/styled.img.withConfig({
34618
- displayName: "NPCMultiDialog__NPCThumbnail",
34619
- componentId: "sc-rvu5wg-3"
34620
- })(["image-rendering:pixelated;height:128px;width:128px;"]);
34621
- var PressSpaceIndicator$1 = /*#__PURE__*/styled.img.withConfig({
34622
- displayName: "NPCMultiDialog__PressSpaceIndicator",
34623
- componentId: "sc-rvu5wg-4"
34624
- })(["position:absolute;right:", ";bottom:1rem;height:20.7px;image-rendering:-webkit-optimize-contrast;"], function (_ref3) {
34625
- var right = _ref3.right;
34626
- return right;
34627
- });
34627
+ var ItemsContainer = /*#__PURE__*/styled.div.withConfig({
34628
+ displayName: "ItemContainer__ItemsContainer",
34629
+ componentId: "sc-15y5p9l-0"
34630
+ })(["display:flex;justify-content:center;flex-wrap:wrap;"]);
34631
+ var QuantitySelectorContainer = /*#__PURE__*/styled.div.withConfig({
34632
+ displayName: "ItemContainer__QuantitySelectorContainer",
34633
+ componentId: "sc-15y5p9l-1"
34634
+ })(["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);"]);
34628
34635
 
34629
- var HistoryDialog = function HistoryDialog(_ref) {
34630
- var backgroundImgPath = _ref.backgroundImgPath,
34631
- fullCoverBackground = _ref.fullCoverBackground,
34632
- questions = _ref.questions,
34633
- answers = _ref.answers,
34634
- text = _ref.text,
34635
- imagePath = _ref.imagePath,
34636
- textAndTypeArray = _ref.textAndTypeArray,
34637
- onClose = _ref.onClose;
34638
- var _useState = React.useState(0),
34639
- img = _useState[0],
34640
- setImage = _useState[1];
34641
- var onHandleSpacePress = function onHandleSpacePress(event) {
34642
- if (event.code === 'Space') {
34643
- if (img < (backgroundImgPath == null ? void 0 : backgroundImgPath.length) - 1) {
34644
- setImage(function (prev) {
34645
- return prev + 1;
34646
- });
34647
- } else {
34648
- // if there's no more text chunks, close the dialog
34649
- onClose();
34650
- }
34651
- }
34636
+ var ItemSelector = function ItemSelector(_ref) {
34637
+ var atlasIMG = _ref.atlasIMG,
34638
+ atlasJSON = _ref.atlasJSON,
34639
+ options = _ref.options,
34640
+ onClose = _ref.onClose,
34641
+ onSelect = _ref.onSelect;
34642
+ var _useState = React.useState(),
34643
+ selectedValue = _useState[0],
34644
+ setSelectedValue = _useState[1];
34645
+ var handleClick = function handleClick() {
34646
+ var element = document.querySelector("input[name='test']:checked");
34647
+ var elementValue = element.value;
34648
+ setSelectedValue(elementValue);
34652
34649
  };
34653
34650
  React.useEffect(function () {
34654
- document.addEventListener('keydown', onHandleSpacePress);
34655
- return function () {
34656
- return document.removeEventListener('keydown', onHandleSpacePress);
34657
- };
34658
- }, [backgroundImgPath]);
34659
- return React__default.createElement(BackgroundContainer, {
34660
- imgPath: backgroundImgPath[img],
34661
- fullImg: fullCoverBackground
34662
- }, React__default.createElement(DialogContainer, null, textAndTypeArray ? React__default.createElement(NPCMultiDialog, {
34663
- textAndTypeArray: textAndTypeArray,
34664
- onClose: onClose
34665
- }) : questions && answers ? React__default.createElement(QuestionDialog, {
34666
- questions: questions,
34667
- answers: answers,
34668
- onClose: onClose
34669
- }) : text && imagePath ? React__default.createElement(NPCDialog, {
34670
- text: text,
34671
- imagePath: imagePath,
34672
- onClose: onClose,
34673
- type: exports.NPCDialogType.TextAndThumbnail
34674
- }) : React__default.createElement(NPCDialog, {
34675
- text: text,
34676
- onClose: onClose,
34677
- type: exports.NPCDialogType.TextOnly
34678
- })));
34679
- };
34680
- var BackgroundContainer = /*#__PURE__*/styled.div.withConfig({
34681
- displayName: "HistoryDialog__BackgroundContainer",
34682
- componentId: "sc-u6oe75-0"
34683
- })(["width:100%;height:100%;background-image:url(", ");background-size:", ";display:flex;justify-content:space-evenly;align-items:center;"], function (props) {
34684
- return props.imgPath;
34685
- }, function (props) {
34686
- return props.imgPath ? 'cover' : 'auto';
34687
- });
34688
- var DialogContainer = /*#__PURE__*/styled.div.withConfig({
34689
- displayName: "HistoryDialog__DialogContainer",
34690
- componentId: "sc-u6oe75-1"
34691
- })(["display:flex;justify-content:center;padding-top:200px;"]);
34692
-
34693
- var SlotsContainer = function SlotsContainer(_ref) {
34694
- var children = _ref.children,
34695
- title = _ref.title,
34696
- onClose = _ref.onClose,
34697
- _onPositionChange = _ref.onPositionChange,
34698
- onOutsideClick = _ref.onOutsideClick,
34699
- initialPosition = _ref.initialPosition;
34651
+ if (selectedValue) {
34652
+ onSelect(selectedValue);
34653
+ }
34654
+ }, [selectedValue]);
34700
34655
  return React__default.createElement(DraggableContainer, {
34701
- title: title,
34702
34656
  type: exports.RPGUIContainerTypes.Framed,
34657
+ width: "500px",
34658
+ cancelDrag: ".equipment-container-body .arrow-selector",
34703
34659
  onCloseButton: function onCloseButton() {
34704
34660
  if (onClose) {
34705
34661
  onClose();
34706
34662
  }
34707
- },
34708
- width: "330px",
34709
- cancelDrag: ".item-container-body",
34710
- onPositionChange: function onPositionChange(_ref2) {
34711
- var x = _ref2.x,
34712
- y = _ref2.y;
34713
- if (_onPositionChange) {
34714
- _onPositionChange({
34715
- x: x,
34716
- y: y
34717
- });
34718
- }
34719
- },
34720
- onOutsideClick: onOutsideClick,
34721
- initialPosition: initialPosition
34722
- }, children);
34723
- };
34724
-
34725
- (function (RangeSliderType) {
34726
- RangeSliderType["Slider"] = "rpgui-slider";
34727
- RangeSliderType["GoldSlider"] = "rpgui-slider golden";
34728
- })(exports.RangeSliderType || (exports.RangeSliderType = {}));
34729
- var RangeSlider = function RangeSlider(_ref) {
34730
- var type = _ref.type,
34731
- valueMin = _ref.valueMin,
34732
- valueMax = _ref.valueMax,
34733
- width = _ref.width,
34734
- _onChange = _ref.onChange,
34735
- value = _ref.value;
34736
- var sliderId = uuid.v4();
34737
- var containerRef = React.useRef(null);
34738
- var _useState = React.useState(0),
34739
- left = _useState[0],
34740
- setLeft = _useState[1];
34741
- React.useEffect(function () {
34742
- var _containerRef$current;
34743
- var calculatedWidth = ((_containerRef$current = containerRef.current) == null ? void 0 : _containerRef$current.clientWidth) || 0;
34744
- setLeft(Math.max((value - valueMin) / (valueMax - valueMin) * (calculatedWidth - 35) + 10));
34745
- }, [value, valueMin, valueMax]);
34746
- var typeClass = type === exports.RangeSliderType.GoldSlider ? 'golden' : '';
34747
- return React__default.createElement("div", {
34748
- style: {
34749
- width: width,
34750
- position: 'relative'
34751
- },
34752
- className: "rpgui-slider-container " + typeClass,
34753
- id: "rpgui-slider-" + sliderId,
34754
- ref: containerRef
34755
- }, React__default.createElement("div", {
34756
- style: {
34757
- pointerEvents: 'none'
34758
34663
  }
34759
34664
  }, React__default.createElement("div", {
34760
- className: "rpgui-slider-track " + typeClass
34761
- }), React__default.createElement("div", {
34762
- className: "rpgui-slider-left-edge " + typeClass
34763
- }), React__default.createElement("div", {
34764
- className: "rpgui-slider-right-edge " + typeClass
34765
- }), React__default.createElement("div", {
34766
- className: "rpgui-slider-thumb " + typeClass,
34767
34665
  style: {
34768
- left: left
34666
+ width: '100%'
34769
34667
  }
34770
- })), React__default.createElement(Input$1, {
34771
- type: "range",
34772
- style: {
34773
- width: width
34774
- },
34775
- min: valueMin,
34776
- max: valueMax,
34777
- onChange: function onChange(e) {
34778
- return _onChange(Number(e.target.value));
34779
- },
34780
- value: value,
34781
- className: "rpgui-cursor-point"
34782
- }));
34668
+ }, React__default.createElement(Title$2, null, 'Harvesting instruments'), React__default.createElement(Subtitle$1, null, 'Use the tool, you need it'), React__default.createElement("hr", {
34669
+ className: "golden"
34670
+ })), React__default.createElement(RadioInputScroller$1, null, options == null ? void 0 : options.map(function (option, index) {
34671
+ return React__default.createElement(RadioOptionsWrapper$1, {
34672
+ key: index
34673
+ }, React__default.createElement(SpriteAtlasWrapper$1, null, React__default.createElement(SpriteFromAtlas, {
34674
+ atlasIMG: atlasIMG,
34675
+ atlasJSON: atlasJSON,
34676
+ spriteKey: option.imageKey,
34677
+ imgScale: 3
34678
+ })), React__default.createElement("div", null, React__default.createElement("input", {
34679
+ className: "rpgui-radio",
34680
+ type: "radio",
34681
+ value: option.name,
34682
+ name: "test"
34683
+ }), React__default.createElement("label", {
34684
+ onClick: handleClick,
34685
+ style: {
34686
+ display: 'flex',
34687
+ alignItems: 'center'
34688
+ }
34689
+ }, option.name, " ", React__default.createElement("br", null), option.description)));
34690
+ })), React__default.createElement(ButtonWrapper$1, null, React__default.createElement(Button, {
34691
+ buttonType: exports.ButtonTypes.RPGUIButton,
34692
+ onClick: onClose
34693
+ }, "Cancel"), React__default.createElement(Button, {
34694
+ buttonType: exports.ButtonTypes.RPGUIButton
34695
+ }, "Select")));
34783
34696
  };
34784
- var Input$1 = /*#__PURE__*/styled.input.withConfig({
34785
- displayName: "RangeSlider__Input",
34786
- componentId: "sc-v8mte9-0"
34787
- })(["opacity:0;position:absolute;width:100%;height:100%;top:0;left:0;margin-top:-5px;"]);
34697
+ var Title$2 = /*#__PURE__*/styled.h1.withConfig({
34698
+ displayName: "ItemSelector__Title",
34699
+ componentId: "sc-gptoxp-0"
34700
+ })(["font-size:0.6rem;color:yellow !important;"]);
34701
+ var Subtitle$1 = /*#__PURE__*/styled.h1.withConfig({
34702
+ displayName: "ItemSelector__Subtitle",
34703
+ componentId: "sc-gptoxp-1"
34704
+ })(["font-size:0.4rem;color:yellow !important;"]);
34705
+ var RadioInputScroller$1 = /*#__PURE__*/styled.div.withConfig({
34706
+ displayName: "ItemSelector__RadioInputScroller",
34707
+ componentId: "sc-gptoxp-2"
34708
+ })(["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;"]);
34709
+ var SpriteAtlasWrapper$1 = /*#__PURE__*/styled.div.withConfig({
34710
+ displayName: "ItemSelector__SpriteAtlasWrapper",
34711
+ componentId: "sc-gptoxp-3"
34712
+ })(["margin-right:40px;"]);
34713
+ var RadioOptionsWrapper$1 = /*#__PURE__*/styled.div.withConfig({
34714
+ displayName: "ItemSelector__RadioOptionsWrapper",
34715
+ componentId: "sc-gptoxp-4"
34716
+ })(["display:flex;align-items:stretch;margin-bottom:40px;"]);
34717
+ var ButtonWrapper$1 = /*#__PURE__*/styled.div.withConfig({
34718
+ displayName: "ItemSelector__ButtonWrapper",
34719
+ componentId: "sc-gptoxp-5"
34720
+ })(["display:flex;justify-content:space-around;padding-top:20px;width:100%;"]);
34788
34721
 
34789
- var ItemQuantitySelector = function ItemQuantitySelector(_ref) {
34790
- var quantity = _ref.quantity,
34791
- onConfirm = _ref.onConfirm,
34792
- onClose = _ref.onClose;
34793
- var _useState = React.useState(quantity),
34794
- value = _useState[0],
34795
- setValue = _useState[1];
34796
- var inputRef = React.useRef(null);
34797
- React.useEffect(function () {
34798
- if (inputRef.current) {
34799
- inputRef.current.focus();
34800
- inputRef.current.select();
34801
- var closeSelector = function closeSelector(e) {
34802
- if (e.key === 'Escape') {
34803
- onClose();
34804
- }
34805
- };
34806
- document.addEventListener('keydown', closeSelector);
34807
- return function () {
34808
- document.removeEventListener('keydown', closeSelector);
34809
- };
34810
- }
34811
- return function () {};
34812
- }, []);
34813
- return React__default.createElement(StyledContainer, {
34814
- type: exports.RPGUIContainerTypes.Framed,
34815
- width: "25rem"
34816
- }, React__default.createElement(CloseButton$2, {
34817
- className: "container-close",
34818
- onClick: onClose,
34819
- onTouchStart: onClose
34820
- }, "X"), React__default.createElement("h2", null, "Select quantity to move"), React__default.createElement(StyledForm, {
34722
+ var ListMenu = function ListMenu(_ref) {
34723
+ var options = _ref.options,
34724
+ onSelected = _ref.onSelected,
34725
+ x = _ref.x,
34726
+ y = _ref.y;
34727
+ return React__default.createElement(Container$c, {
34728
+ x: x,
34729
+ y: y
34730
+ }, React__default.createElement("ul", {
34731
+ className: "rpgui-list-imp",
34821
34732
  style: {
34822
- width: '100%'
34823
- },
34824
- onSubmit: function onSubmit(e) {
34825
- e.preventDefault();
34826
- var numberValue = Number(value);
34827
- if (Number.isNaN(numberValue)) {
34828
- return;
34733
+ overflow: 'hidden'
34734
+ }
34735
+ }, options.map(function (params, index) {
34736
+ return React__default.createElement(ListElement$1, {
34737
+ key: (params == null ? void 0 : params.id) || index,
34738
+ onClick: function onClick() {
34739
+ onSelected(params == null ? void 0 : params.id);
34829
34740
  }
34830
- onConfirm(Math.max(1, Math.min(quantity, numberValue)));
34831
- },
34832
- noValidate: true
34833
- }, React__default.createElement(StyledInput, {
34834
- innerRef: inputRef,
34835
- placeholder: "Enter quantity",
34836
- type: "number",
34837
- min: 1,
34838
- max: quantity,
34839
- value: value,
34840
- onChange: function onChange(e) {
34841
- if (Number(e.target.value) >= quantity) {
34842
- setValue(quantity);
34843
- return;
34844
- }
34845
- setValue(e.target.value);
34846
- },
34847
- onBlur: function onBlur(e) {
34848
- var newValue = Math.max(1, Math.min(quantity, Number(e.target.value)));
34849
- setValue(newValue);
34850
- }
34851
- }), React__default.createElement(RangeSlider, {
34852
- type: exports.RangeSliderType.Slider,
34853
- valueMin: 1,
34854
- valueMax: quantity,
34855
- width: "100%",
34856
- onChange: setValue,
34857
- value: value
34858
- }), React__default.createElement(Button, {
34859
- buttonType: exports.ButtonTypes.RPGUIButton,
34860
- type: "submit"
34861
- }, "Confirm")));
34741
+ }, (params == null ? void 0 : params.text) || 'No text');
34742
+ })));
34862
34743
  };
34863
- var StyledContainer = /*#__PURE__*/styled(RPGUIContainer).withConfig({
34864
- displayName: "ItemQuantitySelector__StyledContainer",
34865
- componentId: "sc-yfdtpn-0"
34866
- })(["display:flex;flex-direction:column;align-items:center;"]);
34867
- var StyledForm = /*#__PURE__*/styled.form.withConfig({
34868
- displayName: "ItemQuantitySelector__StyledForm",
34869
- componentId: "sc-yfdtpn-1"
34870
- })(["display:flex;flex-direction:column;align-items:center;width:100%;"]);
34871
- var StyledInput = /*#__PURE__*/styled(Input).withConfig({
34872
- displayName: "ItemQuantitySelector__StyledInput",
34873
- componentId: "sc-yfdtpn-2"
34874
- })(["text-align:center;&::-webkit-outer-spin-button,&::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}&[type='number']{-moz-appearance:textfield;}"]);
34875
- var CloseButton$2 = /*#__PURE__*/styled.div.withConfig({
34876
- displayName: "ItemQuantitySelector__CloseButton",
34877
- componentId: "sc-yfdtpn-3"
34878
- })(["position:absolute;top:3px;right:0px;color:white;z-index:22;font-size:0.8rem;"]);
34744
+ var Container$c = /*#__PURE__*/styled.div.withConfig({
34745
+ displayName: "ListMenu__Container",
34746
+ componentId: "sc-i9097t-0"
34747
+ })(["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) {
34748
+ return props.y || 0;
34749
+ }, function (props) {
34750
+ return props.x || 0;
34751
+ }, uiFonts.size.xsmall);
34752
+ var ListElement$1 = /*#__PURE__*/styled.li.withConfig({
34753
+ displayName: "ListMenu__ListElement",
34754
+ componentId: "sc-i9097t-1"
34755
+ })(["margin-right:0.5rem;"]);
34879
34756
 
34880
- var ItemContainer$1 = function ItemContainer(_ref) {
34881
- var itemContainer = _ref.itemContainer,
34882
- onClose = _ref.onClose,
34883
- _onMouseOver = _ref.onMouseOver,
34884
- _onSelected = _ref.onSelected,
34885
- onItemClick = _ref.onItemClick,
34886
- type = _ref.type,
34887
- atlasJSON = _ref.atlasJSON,
34888
- atlasIMG = _ref.atlasIMG,
34889
- _ref$disableContextMe = _ref.disableContextMenu,
34890
- disableContextMenu = _ref$disableContextMe === void 0 ? false : _ref$disableContextMe,
34891
- onItemDragEnd = _ref.onItemDragEnd,
34892
- onItemDragStart = _ref.onItemDragStart,
34893
- onItemPlaceDrop = _ref.onItemPlaceDrop,
34894
- _onOutsideDrop = _ref.onOutsideDrop,
34895
- checkIfItemCanBeMoved = _ref.checkIfItemCanBeMoved,
34896
- initialPosition = _ref.initialPosition,
34897
- checkIfItemShouldDragEnd = _ref.checkIfItemShouldDragEnd,
34898
- dragScale = _ref.dragScale;
34899
- var _useState = React.useState({
34900
- isOpen: false,
34901
- maxQuantity: 1,
34902
- callback: function callback(_quantity) {}
34903
- }),
34904
- quantitySelect = _useState[0],
34905
- setQuantitySelect = _useState[1];
34906
- var onRenderSlots = function onRenderSlots() {
34907
- var slots = [];
34908
- for (var i = 0; i < itemContainer.slotQty; i++) {
34909
- var _itemContainer$slots;
34910
- slots.push(React__default.createElement(ItemSlot, {
34911
- isContextMenuDisabled: disableContextMenu,
34912
- key: i,
34913
- slotIndex: i,
34914
- item: ((_itemContainer$slots = itemContainer.slots) == null ? void 0 : _itemContainer$slots[i]) || null,
34915
- itemContainerType: type,
34916
- onMouseOver: function onMouseOver(event, slotIndex, item) {
34917
- if (_onMouseOver) _onMouseOver(event, slotIndex, item);
34918
- },
34919
- onClick: function onClick(ItemType, ContainerType, item) {
34920
- if (onItemClick) onItemClick(item, ItemType, ContainerType);
34921
- },
34922
- onSelected: function onSelected(optionId, item) {
34923
- if (_onSelected) _onSelected(optionId, item);
34924
- },
34925
- onDragStart: function onDragStart(item, slotIndex, itemContainerType) {
34926
- if (onItemDragStart) onItemDragStart(item, slotIndex, itemContainerType);
34927
- },
34928
- onDragEnd: function onDragEnd(quantity) {
34929
- if (onItemDragEnd) onItemDragEnd(quantity);
34930
- },
34931
- dragScale: dragScale,
34932
- checkIfItemCanBeMoved: checkIfItemCanBeMoved,
34933
- checkIfItemShouldDragEnd: checkIfItemShouldDragEnd,
34934
- openQuantitySelector: function openQuantitySelector(maxQuantity, callback) {
34935
- setQuantitySelect({
34936
- isOpen: true,
34937
- maxQuantity: maxQuantity,
34938
- callback: callback
34939
- });
34940
- },
34941
- onPlaceDrop: function onPlaceDrop(item, slotIndex, itemContainerType) {
34942
- if (onItemPlaceDrop) onItemPlaceDrop(item, slotIndex, itemContainerType);
34943
- },
34944
- onOutsideDrop: function onOutsideDrop(item, position) {
34945
- if (_onOutsideDrop) _onOutsideDrop(item, position);
34946
- },
34947
- atlasIMG: atlasIMG,
34948
- atlasJSON: atlasJSON
34949
- }));
34757
+ var img$6 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAP1BMVEUAAAA7FyVxQTsUEBPj5v////+5v/tCJDOOUlIiHBr1oJfptaO6dWr61rhzFy1bMTjoanMUNGQoXMQkn97+88DQ3IhAAAAAAXRSTlMAQObYZgAAAAFiS0dEBfhv6ccAAAAHdElNRQfmAw4VOBC7c5LYAAABM0lEQVQ4y3XRi5KDIAwFUAUkbrBgpP//rZsHVHQ009qZ3tPboNN0zmwzvcw8O5sX4y0NOg/Et3jRCXF+ziULorjkOQ9gE24dvuUAzq08DiCO4pe3WN7zCP56vmpubBReQYC11YPS86ySxxCsAABTSgjb5m4g8nfbxvFHBkH2OEEvAItVuCuIsgGgl+Gcr7kDXxhEAx55A2SQEEeQeZwUaIP8Tbo05B0RFPhItAjgj1w6cDnhLluDj+Egkh3pCCP4pKQAw1IPO0W9Nti5gW9RP2dKA3BZd2Dw+baYX+Nt4GM00O4S3kEpF6Alb2Bv4LeC3kkGfAW0/p0RPoJVKr63ghHsKuRh5DIUKOAlGOwrtt9fQekAEfmhZslHUDoglB0zjfkJigN7UnTQQ4GBWomoVhEN/AOPSBh38gy+fwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMi0wMy0xNFQyMTo1NTo1MSswMDowMJcc0eEAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjItMDMtMTRUMjE6NTU6NTErMDA6MDDmQWldAAAAAElFTkSuQmCC';
34758
+
34759
+ 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';
34760
+
34761
+ (function (ImgSide) {
34762
+ ImgSide["right"] = "right";
34763
+ ImgSide["left"] = "left";
34764
+ })(exports.ImgSide || (exports.ImgSide = {}));
34765
+ var NPCMultiDialog = function NPCMultiDialog(_ref) {
34766
+ var _textAndTypeArray$sli;
34767
+ var _onClose = _ref.onClose,
34768
+ textAndTypeArray = _ref.textAndTypeArray;
34769
+ var _useState = React.useState(false),
34770
+ showGoNextIndicator = _useState[0],
34771
+ setShowGoNextIndicator = _useState[1];
34772
+ var _useState2 = React.useState(0),
34773
+ slide = _useState2[0],
34774
+ setSlide = _useState2[1];
34775
+ var onHandleSpacePress = function onHandleSpacePress(event) {
34776
+ if (event.code === 'Space') {
34777
+ if (slide < (textAndTypeArray == null ? void 0 : textAndTypeArray.length) - 1) {
34778
+ setSlide(function (prev) {
34779
+ return prev + 1;
34780
+ });
34781
+ } else {
34782
+ // if there's no more text chunks, close the dialog
34783
+ _onClose();
34784
+ }
34950
34785
  }
34951
- return slots;
34952
34786
  };
34953
- return React__default.createElement(React__default.Fragment, null, React__default.createElement(SlotsContainer, {
34954
- title: itemContainer.name || 'Container',
34955
- onClose: onClose,
34956
- initialPosition: initialPosition
34957
- }, React__default.createElement(ItemsContainer, {
34958
- className: "item-container-body"
34959
- }, onRenderSlots())), quantitySelect.isOpen && React__default.createElement(QuantitySelectorContainer, null, React__default.createElement(ItemQuantitySelector, {
34960
- quantity: quantitySelect.maxQuantity,
34961
- onConfirm: function onConfirm(quantity) {
34962
- quantitySelect.callback(quantity);
34963
- setQuantitySelect({
34964
- isOpen: false,
34965
- maxQuantity: 1,
34966
- callback: function callback() {}
34967
- });
34787
+ React.useEffect(function () {
34788
+ document.addEventListener('keydown', onHandleSpacePress);
34789
+ return function () {
34790
+ return document.removeEventListener('keydown', onHandleSpacePress);
34791
+ };
34792
+ }, [slide]);
34793
+ return React__default.createElement(RPGUIContainer, {
34794
+ type: exports.RPGUIContainerTypes.FramedGold,
34795
+ width: '50%',
34796
+ height: '180px'
34797
+ }, React__default.createElement(React__default.Fragment, null, React__default.createElement(Container$d, null, ((_textAndTypeArray$sli = textAndTypeArray[slide]) == null ? void 0 : _textAndTypeArray$sli.imageSide) === 'right' && React__default.createElement(React__default.Fragment, null, React__default.createElement(TextContainer, {
34798
+ flex: '70%'
34799
+ }, React__default.createElement(NPCDialogText, {
34800
+ onStartStep: function onStartStep() {
34801
+ return setShowGoNextIndicator(false);
34968
34802
  },
34803
+ onEndStep: function onEndStep() {
34804
+ return setShowGoNextIndicator(true);
34805
+ },
34806
+ text: textAndTypeArray[slide].text || 'No text provided.',
34969
34807
  onClose: function onClose() {
34970
- quantitySelect.callback(-1);
34971
- setQuantitySelect({
34972
- isOpen: false,
34973
- maxQuantity: 1,
34974
- callback: function callback() {}
34975
- });
34808
+ if (_onClose) {
34809
+ _onClose();
34810
+ }
34976
34811
  }
34977
- })));
34812
+ })), React__default.createElement(ThumbnailContainer, null, React__default.createElement(NPCThumbnail, {
34813
+ src: textAndTypeArray[slide].imagePath || img$6
34814
+ })), showGoNextIndicator && React__default.createElement(PressSpaceIndicator, {
34815
+ right: '10.5rem',
34816
+ src: img$7
34817
+ })), textAndTypeArray[slide].imageSide === 'left' && React__default.createElement(React__default.Fragment, null, React__default.createElement(ThumbnailContainer, null, React__default.createElement(NPCThumbnail, {
34818
+ src: textAndTypeArray[slide].imagePath || img$6
34819
+ })), React__default.createElement(TextContainer, {
34820
+ flex: '70%'
34821
+ }, React__default.createElement(NPCDialogText, {
34822
+ onStartStep: function onStartStep() {
34823
+ return setShowGoNextIndicator(false);
34824
+ },
34825
+ onEndStep: function onEndStep() {
34826
+ return setShowGoNextIndicator(true);
34827
+ },
34828
+ text: textAndTypeArray[slide].text || 'No text provided.',
34829
+ onClose: function onClose() {
34830
+ if (_onClose) {
34831
+ _onClose();
34832
+ }
34833
+ }
34834
+ })), showGoNextIndicator && React__default.createElement(PressSpaceIndicator, {
34835
+ right: '1rem',
34836
+ src: img$7
34837
+ }))), ")"));
34838
+ };
34839
+ var Container$d = /*#__PURE__*/styled.div.withConfig({
34840
+ displayName: "NPCMultiDialog__Container",
34841
+ componentId: "sc-rvu5wg-0"
34842
+ })(["display:flex;width:100%;height:100%;box-sizing:border-box;justify-content:center;align-items:flex-start;position:relative;"]);
34843
+ var TextContainer = /*#__PURE__*/styled.div.withConfig({
34844
+ displayName: "NPCMultiDialog__TextContainer",
34845
+ componentId: "sc-rvu5wg-1"
34846
+ })(["flex:", " 0 0;width:355px;"], function (_ref2) {
34847
+ var flex = _ref2.flex;
34848
+ return flex;
34849
+ });
34850
+ var ThumbnailContainer = /*#__PURE__*/styled.div.withConfig({
34851
+ displayName: "NPCMultiDialog__ThumbnailContainer",
34852
+ componentId: "sc-rvu5wg-2"
34853
+ })(["flex:30% 0 0;display:flex;justify-content:flex-end;"]);
34854
+ var NPCThumbnail = /*#__PURE__*/styled.img.withConfig({
34855
+ displayName: "NPCMultiDialog__NPCThumbnail",
34856
+ componentId: "sc-rvu5wg-3"
34857
+ })(["image-rendering:pixelated;height:128px;width:128px;"]);
34858
+ var PressSpaceIndicator = /*#__PURE__*/styled.img.withConfig({
34859
+ displayName: "NPCMultiDialog__PressSpaceIndicator",
34860
+ componentId: "sc-rvu5wg-4"
34861
+ })(["position:absolute;right:", ";bottom:1rem;height:20.7px;image-rendering:-webkit-optimize-contrast;"], function (_ref3) {
34862
+ var right = _ref3.right;
34863
+ return right;
34864
+ });
34865
+
34866
+ //@ts-ignore
34867
+ var useEventListener = function useEventListener(type, handler, el) {
34868
+ if (el === void 0) {
34869
+ el = window;
34870
+ }
34871
+ var savedHandler = React__default.useRef();
34872
+ React__default.useEffect(function () {
34873
+ savedHandler.current = handler;
34874
+ }, [handler]);
34875
+ React__default.useEffect(function () {
34876
+ //@ts-ignore
34877
+ var listener = function listener(e) {
34878
+ return savedHandler.current(e);
34879
+ };
34880
+ el.addEventListener(type, listener);
34881
+ return function () {
34882
+ el.removeEventListener(type, listener);
34883
+ };
34884
+ }, [type, el]);
34885
+ };
34886
+
34887
+ var DynamicText = function DynamicText(_ref) {
34888
+ var text = _ref.text,
34889
+ onFinish = _ref.onFinish,
34890
+ onStart = _ref.onStart;
34891
+ var _useState = React.useState(''),
34892
+ textState = _useState[0],
34893
+ setTextState = _useState[1];
34894
+ React.useEffect(function () {
34895
+ var i = 0;
34896
+ var interval = setInterval(function () {
34897
+ // on every interval, show one more character
34898
+ if (i === 0) {
34899
+ if (onStart) {
34900
+ onStart();
34901
+ }
34902
+ }
34903
+ if (i < text.length) {
34904
+ setTextState(text.substring(0, i + 1));
34905
+ i++;
34906
+ } else {
34907
+ clearInterval(interval);
34908
+ if (onFinish) {
34909
+ onFinish();
34910
+ }
34911
+ }
34912
+ }, 50);
34913
+ return function () {
34914
+ clearInterval(interval);
34915
+ };
34916
+ }, [text]);
34917
+ return React__default.createElement(TextContainer$1, null, textState);
34978
34918
  };
34979
- var ItemsContainer = /*#__PURE__*/styled.div.withConfig({
34980
- displayName: "ItemContainer__ItemsContainer",
34981
- componentId: "sc-15y5p9l-0"
34982
- })(["max-width:280px;display:flex;justify-content:center;flex-wrap:wrap;"]);
34983
- var QuantitySelectorContainer = /*#__PURE__*/styled.div.withConfig({
34984
- displayName: "ItemContainer__QuantitySelectorContainer",
34985
- componentId: "sc-15y5p9l-1"
34986
- })(["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);"]);
34919
+ var TextContainer$1 = /*#__PURE__*/styled.p.withConfig({
34920
+ displayName: "DynamicText__TextContainer",
34921
+ componentId: "sc-1ggl9nd-0"
34922
+ })(["font-size:0.7rem !important;color:white;text-shadow:1px 1px 0px #000000;letter-spacing:1.2px;word-break:normal;"]);
34987
34923
 
34988
- var ItemSelector = function ItemSelector(_ref) {
34989
- var atlasIMG = _ref.atlasIMG,
34990
- atlasJSON = _ref.atlasJSON,
34991
- options = _ref.options,
34992
- onClose = _ref.onClose,
34993
- onSelect = _ref.onSelect;
34994
- var _useState = React.useState(),
34995
- selectedValue = _useState[0],
34996
- setSelectedValue = _useState[1];
34997
- var handleClick = function handleClick() {
34998
- var element = document.querySelector("input[name='test']:checked");
34999
- var elementValue = element.value;
35000
- setSelectedValue(elementValue);
34924
+ var QuestionDialog = function QuestionDialog(_ref) {
34925
+ var questions = _ref.questions,
34926
+ answers = _ref.answers,
34927
+ onClose = _ref.onClose;
34928
+ var _useState = React.useState(questions[0]),
34929
+ currentQuestion = _useState[0],
34930
+ setCurrentQuestion = _useState[1];
34931
+ var _useState2 = React.useState(false),
34932
+ canShowAnswers = _useState2[0],
34933
+ setCanShowAnswers = _useState2[1];
34934
+ var onGetFirstAnswer = function onGetFirstAnswer() {
34935
+ if (!currentQuestion.answerIds || currentQuestion.answerIds.length === 0) {
34936
+ return null;
34937
+ }
34938
+ var firstAnswerId = currentQuestion.answerIds[0];
34939
+ return answers.find(function (answer) {
34940
+ return answer.id === firstAnswerId;
34941
+ });
35001
34942
  };
34943
+ var _useState3 = React.useState(onGetFirstAnswer()),
34944
+ currentAnswer = _useState3[0],
34945
+ setCurrentAnswer = _useState3[1];
35002
34946
  React.useEffect(function () {
35003
- if (selectedValue) {
35004
- onSelect(selectedValue);
34947
+ setCurrentAnswer(onGetFirstAnswer());
34948
+ }, [currentQuestion]);
34949
+ var onGetAnswers = function onGetAnswers(answerIds) {
34950
+ return answerIds.map(function (answerId) {
34951
+ return answers.find(function (answer) {
34952
+ return answer.id === answerId;
34953
+ });
34954
+ });
34955
+ };
34956
+ var onKeyPress = function onKeyPress(e) {
34957
+ switch (e.key) {
34958
+ case 'ArrowDown':
34959
+ // select next answer, if any.
34960
+ // if no next answer, select first answer
34961
+ // const nextAnswer = onGetAnswers(currentQuestion.answerIds!).find(
34962
+ // (answer) => answer?.id === currentAnswer!.id + 1
34963
+ // );
34964
+ var nextAnswerIndex = onGetAnswers(currentQuestion.answerIds).findIndex(function (answer) {
34965
+ return (answer == null ? void 0 : answer.id) === currentAnswer.id + 1;
34966
+ });
34967
+ var nextAnswerID = currentQuestion.answerIds[nextAnswerIndex];
34968
+ var nextAnswer = onGetAnswers(currentQuestion.answerIds).find(function (answer) {
34969
+ return (answer == null ? void 0 : answer.id) === nextAnswerID;
34970
+ });
34971
+ setCurrentAnswer(nextAnswer || onGetFirstAnswer());
34972
+ break;
34973
+ case 'ArrowUp':
34974
+ // select previous answer, if any.
34975
+ // if no previous answer, select last answer
34976
+ var previousAnswerIndex = onGetAnswers(currentQuestion.answerIds).findIndex(function (answer) {
34977
+ return (answer == null ? void 0 : answer.id) === currentAnswer.id - 1;
34978
+ });
34979
+ var previousAnswerID = currentQuestion.answerIds && currentQuestion.answerIds[previousAnswerIndex];
34980
+ var previousAnswer = onGetAnswers(currentQuestion.answerIds).find(function (answer) {
34981
+ return (answer == null ? void 0 : answer.id) === previousAnswerID;
34982
+ });
34983
+ if (previousAnswer) {
34984
+ setCurrentAnswer(previousAnswer);
34985
+ } else {
34986
+ setCurrentAnswer(onGetAnswers(currentQuestion.answerIds).pop());
34987
+ }
34988
+ break;
34989
+ case 'Enter':
34990
+ setCanShowAnswers(false);
34991
+ if (!(currentAnswer != null && currentAnswer.nextQuestionId)) {
34992
+ onClose();
34993
+ return;
34994
+ } else {
34995
+ setCurrentQuestion(questions.find(function (question) {
34996
+ return question.id === currentAnswer.nextQuestionId;
34997
+ }));
34998
+ }
34999
+ break;
35005
35000
  }
35006
- }, [selectedValue]);
35007
- return React__default.createElement(DraggableContainer, {
35008
- type: exports.RPGUIContainerTypes.Framed,
35009
- width: "500px",
35010
- cancelDrag: ".equipment-container-body .arrow-selector",
35011
- onCloseButton: function onCloseButton() {
35012
- if (onClose) {
35013
- onClose();
35014
- }
35001
+ };
35002
+ useEventListener('keydown', onKeyPress);
35003
+ var onAnswerClick = function onAnswerClick(answer) {
35004
+ setCanShowAnswers(false);
35005
+ if (answer.nextQuestionId) {
35006
+ // if there is a next question, go to it
35007
+ setCurrentQuestion(questions.find(function (question) {
35008
+ return question.id === answer.nextQuestionId;
35009
+ }));
35010
+ } else {
35011
+ // else, finish dialog!
35012
+ onClose();
35015
35013
  }
35016
- }, React__default.createElement("div", {
35017
- style: {
35018
- width: '100%'
35014
+ };
35015
+ var onRenderCurrentAnswers = function onRenderCurrentAnswers() {
35016
+ var answerIds = currentQuestion.answerIds;
35017
+ if (!answerIds) {
35018
+ return null;
35019
35019
  }
35020
- }, React__default.createElement(Title$2, null, 'Harvesting instruments'), React__default.createElement(Subtitle$1, null, 'Use the tool, you need it'), React__default.createElement("hr", {
35021
- className: "golden"
35022
- })), React__default.createElement(RadioInputScroller$1, null, options == null ? void 0 : options.map(function (option, index) {
35023
- return React__default.createElement(RadioOptionsWrapper$1, {
35024
- key: index
35025
- }, React__default.createElement(SpriteAtlasWrapper$1, null, React__default.createElement(SpriteFromAtlas, {
35026
- atlasIMG: atlasIMG,
35027
- atlasJSON: atlasJSON,
35028
- spriteKey: option.imageKey,
35029
- imgScale: 3
35030
- })), React__default.createElement("div", null, React__default.createElement("input", {
35031
- className: "rpgui-radio",
35032
- type: "radio",
35033
- value: option.name,
35034
- name: "test"
35035
- }), React__default.createElement("label", {
35036
- onClick: handleClick,
35037
- style: {
35038
- display: 'flex',
35039
- alignItems: 'center'
35040
- }
35041
- }, option.name, " ", React__default.createElement("br", null), option.description)));
35042
- })), React__default.createElement(ButtonWrapper$1, null, React__default.createElement(Button, {
35043
- buttonType: exports.ButtonTypes.RPGUIButton,
35044
- onClick: onClose
35045
- }, "Cancel"), React__default.createElement(Button, {
35046
- buttonType: exports.ButtonTypes.RPGUIButton
35047
- }, "Select")));
35048
- };
35049
- var Title$2 = /*#__PURE__*/styled.h1.withConfig({
35050
- displayName: "ItemSelector__Title",
35051
- componentId: "sc-gptoxp-0"
35052
- })(["font-size:0.6rem;color:yellow !important;"]);
35053
- var Subtitle$1 = /*#__PURE__*/styled.h1.withConfig({
35054
- displayName: "ItemSelector__Subtitle",
35055
- componentId: "sc-gptoxp-1"
35056
- })(["font-size:0.4rem;color:yellow !important;"]);
35057
- var RadioInputScroller$1 = /*#__PURE__*/styled.div.withConfig({
35058
- displayName: "ItemSelector__RadioInputScroller",
35059
- componentId: "sc-gptoxp-2"
35060
- })(["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;"]);
35061
- var SpriteAtlasWrapper$1 = /*#__PURE__*/styled.div.withConfig({
35062
- displayName: "ItemSelector__SpriteAtlasWrapper",
35063
- componentId: "sc-gptoxp-3"
35064
- })(["margin-right:40px;"]);
35065
- var RadioOptionsWrapper$1 = /*#__PURE__*/styled.div.withConfig({
35066
- displayName: "ItemSelector__RadioOptionsWrapper",
35067
- componentId: "sc-gptoxp-4"
35068
- })(["display:flex;align-items:stretch;margin-bottom:40px;"]);
35069
- var ButtonWrapper$1 = /*#__PURE__*/styled.div.withConfig({
35070
- displayName: "ItemSelector__ButtonWrapper",
35071
- componentId: "sc-gptoxp-5"
35072
- })(["display:flex;justify-content:space-around;padding-top:20px;width:100%;"]);
35073
-
35074
- var ListMenu = function ListMenu(_ref) {
35075
- var options = _ref.options,
35076
- onSelected = _ref.onSelected,
35077
- x = _ref.x,
35078
- y = _ref.y;
35079
- return React__default.createElement(Container$f, {
35080
- x: x,
35081
- y: y
35082
- }, React__default.createElement("ul", {
35083
- className: "rpgui-list-imp",
35084
- style: {
35085
- overflow: 'hidden'
35020
+ var answers = onGetAnswers(answerIds);
35021
+ if (!answers) {
35022
+ return null;
35086
35023
  }
35087
- }, options.map(function (params, index) {
35088
- return React__default.createElement(ListElement$1, {
35089
- key: (params == null ? void 0 : params.id) || index,
35090
- onClick: function onClick() {
35091
- onSelected(params == null ? void 0 : params.id);
35024
+ return answers.map(function (answer) {
35025
+ var isSelected = (currentAnswer == null ? void 0 : currentAnswer.id) === (answer == null ? void 0 : answer.id);
35026
+ var selectedColor = isSelected ? 'yellow' : 'white';
35027
+ if (answer) {
35028
+ return React__default.createElement(AnswerRow, {
35029
+ key: "answer_" + answer.id
35030
+ }, React__default.createElement(AnswerSelectedIcon, {
35031
+ color: selectedColor
35032
+ }, isSelected ? 'X' : null), React__default.createElement(Answer, {
35033
+ key: answer.id,
35034
+ onClick: function onClick() {
35035
+ return onAnswerClick(answer);
35036
+ },
35037
+ color: selectedColor
35038
+ }, answer.text));
35092
35039
  }
35093
- }, (params == null ? void 0 : params.text) || 'No text');
35094
- })));
35040
+ return null;
35041
+ });
35042
+ };
35043
+ return React__default.createElement(Container$e, null, React__default.createElement(QuestionContainer, null, React__default.createElement(DynamicText, {
35044
+ text: currentQuestion.text,
35045
+ onStart: function onStart() {
35046
+ return setCanShowAnswers(false);
35047
+ },
35048
+ onFinish: function onFinish() {
35049
+ return setCanShowAnswers(true);
35050
+ }
35051
+ })), canShowAnswers && React__default.createElement(AnswersContainer, null, onRenderCurrentAnswers()));
35095
35052
  };
35096
- var Container$f = /*#__PURE__*/styled.div.withConfig({
35097
- displayName: "ListMenu__Container",
35098
- componentId: "sc-i9097t-0"
35099
- })(["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) {
35100
- return props.y || 0;
35101
- }, function (props) {
35102
- return props.x || 0;
35103
- }, uiFonts.size.xsmall);
35104
- var ListElement$1 = /*#__PURE__*/styled.li.withConfig({
35105
- displayName: "ListMenu__ListElement",
35106
- componentId: "sc-i9097t-1"
35107
- })(["margin-right:0.5rem;"]);
35053
+ var Container$e = /*#__PURE__*/styled.div.withConfig({
35054
+ displayName: "QuestionDialog__Container",
35055
+ componentId: "sc-bxc5u0-0"
35056
+ })(["display:flex;word-break:break-all;box-sizing:border-box;justify-content:flex-start;align-items:flex-start;flex-wrap:wrap;"]);
35057
+ var QuestionContainer = /*#__PURE__*/styled.div.withConfig({
35058
+ displayName: "QuestionDialog__QuestionContainer",
35059
+ componentId: "sc-bxc5u0-1"
35060
+ })(["flex:100%;width:100%;"]);
35061
+ var AnswersContainer = /*#__PURE__*/styled.div.withConfig({
35062
+ displayName: "QuestionDialog__AnswersContainer",
35063
+ componentId: "sc-bxc5u0-2"
35064
+ })(["flex:100%;"]);
35065
+ var Answer = /*#__PURE__*/styled.p.withConfig({
35066
+ displayName: "QuestionDialog__Answer",
35067
+ componentId: "sc-bxc5u0-3"
35068
+ })(["flex:auto;color:", " !important;font-size:0.65rem !important;background:inherit;border:none;"], function (props) {
35069
+ return props.color;
35070
+ });
35071
+ var AnswerSelectedIcon = /*#__PURE__*/styled.span.withConfig({
35072
+ displayName: "QuestionDialog__AnswerSelectedIcon",
35073
+ componentId: "sc-bxc5u0-4"
35074
+ })(["flex:5% 0 0;color:", " !important;"], function (props) {
35075
+ return props.color;
35076
+ });
35077
+ var AnswerRow = /*#__PURE__*/styled.div.withConfig({
35078
+ displayName: "QuestionDialog__AnswerRow",
35079
+ componentId: "sc-bxc5u0-5"
35080
+ })(["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;}"]);
35108
35081
 
35109
35082
  var ProgressBar = function ProgressBar(_ref) {
35110
35083
  var max = _ref.max,
@@ -35123,7 +35096,7 @@ var ProgressBar = function ProgressBar(_ref) {
35123
35096
  }
35124
35097
  return value * 100 / max;
35125
35098
  };
35126
- return React__default.createElement(Container$g, {
35099
+ return React__default.createElement(Container$f, {
35127
35100
  className: "rpgui-progress",
35128
35101
  "data-value": calculatePercentageValue(max, value) / 100,
35129
35102
  "data-rpguitype": "progress",
@@ -35152,7 +35125,7 @@ var TextOverlay$1 = /*#__PURE__*/styled.div.withConfig({
35152
35125
  displayName: "ProgressBar__TextOverlay",
35153
35126
  componentId: "sc-qa6fzh-1"
35154
35127
  })(["width:100%;position:relative;"]);
35155
- var Container$g = /*#__PURE__*/styled.div.withConfig({
35128
+ var Container$f = /*#__PURE__*/styled.div.withConfig({
35156
35129
  displayName: "ProgressBar__Container",
35157
35130
  componentId: "sc-qa6fzh-2"
35158
35131
  })(["display:flex;flex-direction:column;min-width:", "px;width:", "%;justify-content:start;align-items:flex-start;", ""], function (props) {
@@ -35163,7 +35136,7 @@ var Container$g = /*#__PURE__*/styled.div.withConfig({
35163
35136
  return props.style;
35164
35137
  });
35165
35138
 
35166
- var img$9 = 'data:image/png;base64,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';
35139
+ var img$8 = 'data:image/png;base64,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';
35167
35140
 
35168
35141
  var QuestInfo = function QuestInfo(_ref) {
35169
35142
  var quests = _ref.quests,
@@ -35207,7 +35180,7 @@ var QuestInfo = function QuestInfo(_ref) {
35207
35180
  }), React__default.createElement(QuestContainer, null, React__default.createElement(TitleContainer$1, {
35208
35181
  className: "drag-handler"
35209
35182
  }, React__default.createElement(Title$3, null, React__default.createElement(Thumbnail, {
35210
- src: quests[currentIndex].thumbnail || img$9
35183
+ src: quests[currentIndex].thumbnail || img$8
35211
35184
  }), quests[currentIndex].title), React__default.createElement(QuestSplitDiv, null, React__default.createElement("hr", {
35212
35185
  className: "golden"
35213
35186
  }))), React__default.createElement(Content, null, React__default.createElement("p", null, quests[currentIndex].description)), React__default.createElement(QuestColumn, {
@@ -35226,7 +35199,7 @@ var QuestInfo = function QuestInfo(_ref) {
35226
35199
  })))) : React__default.createElement(QuestsContainer, null, React__default.createElement(QuestContainer, null, React__default.createElement(TitleContainer$1, {
35227
35200
  className: "drag-handler"
35228
35201
  }, React__default.createElement(Title$3, null, React__default.createElement(Thumbnail, {
35229
- src: quests[0].thumbnail || img$9
35202
+ src: quests[0].thumbnail || img$8
35230
35203
  }), quests[0].title), React__default.createElement(QuestSplitDiv, null, React__default.createElement("hr", {
35231
35204
  className: "golden"
35232
35205
  }))), React__default.createElement(Content, null, React__default.createElement("p", null, quests[0].description)), React__default.createElement(QuestColumn, {
@@ -35375,7 +35348,7 @@ var SimpleProgressBar = function SimpleProgressBar(_ref) {
35375
35348
  bgColor = _ref$bgColor === void 0 ? 'red' : _ref$bgColor,
35376
35349
  _ref$margin = _ref.margin,
35377
35350
  margin = _ref$margin === void 0 ? 20 : _ref$margin;
35378
- return React__default.createElement(Container$h, {
35351
+ return React__default.createElement(Container$g, {
35379
35352
  className: "simple-progress-bar"
35380
35353
  }, React__default.createElement(ProgressBarContainer, {
35381
35354
  margin: margin
@@ -35384,7 +35357,7 @@ var SimpleProgressBar = function SimpleProgressBar(_ref) {
35384
35357
  bgColor: bgColor
35385
35358
  }))));
35386
35359
  };
35387
- var Container$h = /*#__PURE__*/styled.div.withConfig({
35360
+ var Container$g = /*#__PURE__*/styled.div.withConfig({
35388
35361
  displayName: "SimpleProgressBar__Container",
35389
35362
  componentId: "sc-mbeil3-0"
35390
35363
  })(["display:flex;justify-content:center;align-items:center;width:100%;"]);
@@ -35612,7 +35585,7 @@ var Spell = function Spell(_ref) {
35612
35585
  isSettingShortcut = _ref.isSettingShortcut,
35613
35586
  minMagicLevelRequired = _ref.minMagicLevelRequired;
35614
35587
  var disabled = isSettingShortcut ? charMagicLevel < minMagicLevelRequired : manaCost > charMana || charMagicLevel < minMagicLevelRequired;
35615
- return React__default.createElement(Container$i, {
35588
+ return React__default.createElement(Container$h, {
35616
35589
  disabled: disabled,
35617
35590
  onClick: onClick == null ? void 0 : onClick.bind(null, spellKey),
35618
35591
  isSettingShortcut: isSettingShortcut && !disabled,
@@ -35625,7 +35598,7 @@ var Spell = function Spell(_ref) {
35625
35598
  className: "mana"
35626
35599
  }, manaCost)));
35627
35600
  };
35628
- var Container$i = /*#__PURE__*/styled.button.withConfig({
35601
+ var Container$h = /*#__PURE__*/styled.button.withConfig({
35629
35602
  displayName: "Spell__Container",
35630
35603
  componentId: "sc-j96fa2-0"
35631
35604
  })(["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) {
@@ -35661,43 +35634,6 @@ var Overlay = /*#__PURE__*/styled.p.withConfig({
35661
35634
  componentId: "sc-j96fa2-7"
35662
35635
  })(["margin:0 !important;position:absolute;top:0;left:0;width:100%;height:100%;border-radius:1rem;display:flex;justify-content:center;align-items:center;color:", ";font-size:", " !important;font-weight:bold;z-index:10;background-color:rgba(0 0 0 / 0.2);"], uiColors.yellow, uiFonts.size.large);
35663
35636
 
35664
- var SpellbookShortcuts = function SpellbookShortcuts(_ref) {
35665
- var setSettingShortcutIndex = _ref.setSettingShortcutIndex,
35666
- settingShortcutIndex = _ref.settingShortcutIndex,
35667
- shortcuts = _ref.shortcuts,
35668
- removeShortcut = _ref.removeShortcut;
35669
- return React__default.createElement(List$1, {
35670
- id: "shortcuts_list"
35671
- }, "Spells shortcuts:", Array.from({
35672
- length: 4
35673
- }).map(function (_, i) {
35674
- var _shortcuts$i2;
35675
- return React__default.createElement(SpellShortcut$1, {
35676
- key: i,
35677
- onClick: function onClick() {
35678
- var _shortcuts$i;
35679
- removeShortcut(i);
35680
- if (!((_shortcuts$i = shortcuts[i]) != null && _shortcuts$i.key)) setSettingShortcutIndex(i);
35681
- },
35682
- disabled: settingShortcutIndex !== -1 && settingShortcutIndex !== i,
35683
- isBeingSet: settingShortcutIndex === i
35684
- }, React__default.createElement("span", null, (_shortcuts$i2 = shortcuts[i]) == null ? void 0 : _shortcuts$i2.magicWords.split(' ').map(function (word) {
35685
- return word[0];
35686
- })));
35687
- }));
35688
- };
35689
- var SpellShortcut$1 = /*#__PURE__*/styled.button.withConfig({
35690
- displayName: "SpellbookShortcuts__SpellShortcut",
35691
- componentId: "sc-fr4a0d-0"
35692
- })(["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) {
35693
- var isBeingSet = _ref2.isBeingSet;
35694
- return isBeingSet ? uiColors.yellow : uiColors.darkGray;
35695
- }, uiColors.darkGray, uiColors.gray);
35696
- var List$1 = /*#__PURE__*/styled.p.withConfig({
35697
- displayName: "SpellbookShortcuts__List",
35698
- componentId: "sc-fr4a0d-1"
35699
- })(["width:100%;display:flex;align-items:center;justify-content:flex-end;gap:0.5rem;padding:0.5rem;box-sizing:border-box;margin:0 !important;"]);
35700
-
35701
35637
  var Spellbook = function Spellbook(_ref) {
35702
35638
  var onClose = _ref.onClose,
35703
35639
  onInputFocus = _ref.onInputFocus,
@@ -35707,8 +35643,10 @@ var Spellbook = function Spellbook(_ref) {
35707
35643
  mana = _ref.mana,
35708
35644
  onSpellClick = _ref.onSpellClick,
35709
35645
  setSpellShortcut = _ref.setSpellShortcut,
35710
- spellShortcuts = _ref.spellShortcuts,
35711
- removeSpellShortcut = _ref.removeSpellShortcut;
35646
+ shortcuts = _ref.shortcuts,
35647
+ removeShortcut = _ref.removeShortcut,
35648
+ atlasIMG = _ref.atlasIMG,
35649
+ atlasJSON = _ref.atlasJSON;
35712
35650
  var _useState = React.useState(''),
35713
35651
  search = _useState[0],
35714
35652
  setSearch = _useState[1];
@@ -35745,11 +35683,13 @@ var Spellbook = function Spellbook(_ref) {
35745
35683
  width: "inherit",
35746
35684
  height: "inherit",
35747
35685
  cancelDrag: "#spellbook-search, #shortcuts_list, .spell"
35748
- }, React__default.createElement(Container$j, null, React__default.createElement(Title$6, null, "Learned Spells"), React__default.createElement(SpellbookShortcuts, {
35686
+ }, React__default.createElement(Container$i, null, React__default.createElement(Title$6, null, "Learned Spells"), React__default.createElement(ShortcutsSetter, {
35749
35687
  setSettingShortcutIndex: setSettingShortcutIndex,
35750
35688
  settingShortcutIndex: settingShortcutIndex,
35751
- shortcuts: spellShortcuts,
35752
- removeShortcut: removeSpellShortcut
35689
+ shortcuts: shortcuts,
35690
+ removeShortcut: removeShortcut,
35691
+ atlasIMG: atlasIMG,
35692
+ atlasJSON: atlasJSON
35753
35693
  }), React__default.createElement(Input, {
35754
35694
  placeholder: "Search for spell",
35755
35695
  value: search,
@@ -35775,7 +35715,7 @@ var Title$6 = /*#__PURE__*/styled.h1.withConfig({
35775
35715
  displayName: "Spellbook__Title",
35776
35716
  componentId: "sc-r02nfq-0"
35777
35717
  })(["font-size:", " !important;margin-bottom:0 !important;"], uiFonts.size.large);
35778
- var Container$j = /*#__PURE__*/styled.div.withConfig({
35718
+ var Container$i = /*#__PURE__*/styled.div.withConfig({
35779
35719
  displayName: "Spellbook__Container",
35780
35720
  componentId: "sc-r02nfq-1"
35781
35721
  })(["width:100%;height:100%;color:white;display:flex;flex-direction:column;"]);
@@ -35789,16 +35729,16 @@ var TextArea = function TextArea(_ref) {
35789
35729
  return React__default.createElement("textarea", Object.assign({}, props));
35790
35730
  };
35791
35731
 
35792
- var img$a = 'data:image/gif;base64,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';
35732
+ var img$9 = 'data:image/gif;base64,R0lGODlhTgBNAPMAAAAAALcIL7ObdNGqnf3vnP/wl93Goerfx/Xx3vr6+vn49QAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAAIf4gQ3JlYXRlZCB3aXRoIGV6Z2lmLmNvbSBHSUYgbWFrZXIALAAAAABOAE0AAAT/EMhJq7046827/2AojmRpnmiqrmzrvnAsz2tg37hNq7jg/0AfbjeyAQ3IpBIJ1BE5N99ySmUKbk9M4FftUn+BLMXoLXev4exWYG5/r8+te/5Nz+T0vBIu2w7+gIGCg4SFgXwvfoaLjIyILIqNkpOAjymRlAMFm5ybmZV2KHh0naWcepYlo22mradzqUUClK61nJSxIJiMrgm+v664oSKrXqa/yMmmbrkexVXHydK+y2bNULON0dPTppLXGs9UpdzlCaVt4FpsZuTm5ejWwx3iU53v753p89jtnPj49JVRZ2ELgoMHoP0DaE6gF4JjBByciCChEncMucV7yC+DQYoI/y8uzAjvFUddEkGGRHKPZMlN8lCqXGmgpctuJs90XDdzpc2bynJWgSjh40yLP4ECE1pHZs8DB5MqPcd0ClEARlVCjTpy6kadTrWC7KpU4NaDVndeyNqTa4GpSzedBblHbcGUbSmSddlprsokV7HizYtAKsO+hBEYCCw48UTD+RAnZsw2L0aApfy2pTw48eWGczX3ZNzYsdtNAf2KVkm6tOnC2+JqXg2ytWBStiSLzWv7dh5XBHS/Pti7nj9TW2kT7u1bT03dB5SPtuuMnfMkqqXXpl79uhLR2icyj+gdSfjN3FF6Pz89kXU3itnPHO/xfXlm6VXZv3+ShnH+gOUnikAUAFpFny7/XYeGGBOssR8qQjBYQRQPpoOGgHc4WOEeYGAYB4VBBDGEhMTkYCKJKKao4oostujiizDGKOOMF0QAACH/C0ltYWdlTWFnaWNrDWdhbW1hPTAuNDU0NTUAIfkEARQAAAAsAAAAAE4ATQAABP8QyEmrvTjrzbv/YCiOZGmeaKqubOu+cCzPa2DfuE2ruOD/QB9uN7IBDcikEgnUETk333JKZQpuT0zgV+1Sf4Esxegtd6/h7FZgbn+vz617/k3P5PS8Ei7bDv6AgYKDhIWBfC9+houMjIgsio2Sk4CPKZGUmY2WJnh6BaChoHpMdieec6KqoXqcRQKaq7Khmq4gmI2zurSUth6oZbMJw8Szc74dwF2rxM3Oq27IG7iGzM7Xw6uT0hnKVNbY2NBm3Bfe36Lh6gmq0aa/bGaq6+vt5O/J8cGh9PSibeUqbEGA4MAyfv38sSoTcMJAggQNTkmXsN5Chvg0PIRYcMm8iur/7HlpCGAjR4lIKIIMefFMxm4COEJEaUDlSnEtq5A0eTKJzZvPcta5FVNmRJ8IgV77h5Go0YgEayZV2ozpyJdaiho9APEnVXZCp+zUepLjx69gF3KFuGTsU6Negf5bazSJ27dmp1IVRfdpqRA838YFyRcvRJISAj89e1NV37eIS5I1zLiiY8OHscLEnFevP7oFHkPWvJkzwcohH4s2GjnxZMyol4peLbO161SyloKiTZug7du4dREobLo26Wn6gs9a29vwb+B5ls9s/vS5w+R0Lp+kztH6dVJTVnP3ffzDOTrjR7c43yZ99fIi2FdBYMA9a/ivwIP3jlx/Hv5QYOefQUtxSDGgTgCaJx8paIhxnYH+geGgQEYIGA0a+NFQIYRngJGhGlEEIeIQE8aXw4klpqjiiiy26OKLMMYo44w0XhABACH/C0ltYWdlTWFnaWNrDWdhbW1hPTAuNDU0NTUAIfkEARQAAAAsAAAAAE4ATQAABP8QyEmrvTjrzbv/YCiOZGmeaKqubOu+cCzPa2DfuE2ruOD/QB9uN7IBDcikEgnUETk333JKZQpuT0zgV+1Sf4Esxegtd6/h7FZgbn+vz617/k3P5PS8Ei7bDv6AgYKDhIWBfC9+houMjIgsio2Sk4CPKZGUmY2WJnh6n2d2J555BaanpqCcRQKaf6iwp64DqyCYk7G5spq1HqRmusGndL0dv166CcrLunPFG7eLscvU1bGUzxnHVdPV3sqxbtkX21Td39/hbeMV5VOw6PEJsOKivmzAqPLy9GbsYwIQHCijbx+/Yf7sQQmIoOFAc6cMGkS1TqGGLQ0zPlxSUGI8ign/bTHMKJBjR4/pQHr5BwAjyZJKTqJMmaoMS5cvNxqQOdMawpUWtY0kqZNnT2Y/Q4l86bAhEqNH5yWtcnOoxow7I0b1plLpB5xXSUI9qvIAyT1BtVhligDeVqTDzLJlkpbcWrZjUVKUyxaBAZYt777M6xEV376AA/cdrHXr3sUNE4Nd7JasYciR66rFnLGyXr4GDiPWvJnzOYkFRItmmljCZMqe+a1e/bK1a3z5CM+jLXCx7dtzklFTcJlzbdIXcbcRVpw35N/A6TDne8A5W+gT3HXRpdo6SezZlUuHRdt75hriQZkf3UJ7m/XXkYtwX8UvfNbyWYFSlZ8E/f1LgGdMRXoAUtXfKFIUSJWAtvyXBxpihJcggGBE2I4RBK6DxoF9rDHhGWBwSEQPQZQ4hIXz5aAiiiy26OKLMMYo44w01mjjjRdEAAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAALAAAAABOAE0AAAT/EMhJq7046827/2AojmRpnmiqrmzrvnAsz2tg37hNq7jg/0AfbjeyAQ3IpBIJ1BE5N99ySmUKbk9M4FftUn+BLMXoLXev4exWYG5/r8+te/5Nz+T0vBIu2w7+gIGCg4SFgXwvfoaLjIyILIqNkpOAjymRlJmNliZ4ep9ndieeoKV7oiWYmgWsrayah6giqpSutq2wf5wgpG63v616ux+9ZcDHwXPDHbSLwAnQ0cCZyxvFXbfR2tu3yrLMbL622+TStt6z4WbZ5e3dbdVa6sau7fYJ5/Df1gIH6/X37OUrE8/CFgQI/WFrFTCgKzcFxwhAmLAKwIb3HpqJOOEgRQQK/5dcxOguGcF98j6CnDKOpECNXjhK8PgxJJKRLsvBDMVrokqbBnDm5GaSJzGfNREmETrUHKuNKC/QpHiA4k2GTXUWrSITwFSQKoNizUr0aZKqVplENYhU5UemWTWidWug61e3CFqShXZuLt6uXtvizTt270O/bgEHHvy2MNnDjBEovosXLknIkScLHqx3aIG5BhAnXpsyMsLOlxGL/qh45ubKqB2KXk2xtes27Bp+Hkzb9m3csaMp4LvbtErfgec8I4qWNmPkycUhYzX3gPPRl+b9O6b6em3SHq7R+7Xau2Tw4bVLd2X+L/qjppC0x+5CvBkEoY27j2E/Ptf3JPTn30cpOwg4IHQ9qTdgXQiGQMaCSaAhRkdcxAfGhBVEoSA8aAB4xxpSEASGh3FoGEQQQ2A4Sw4squjiizDGKOOMNNZo44045nhBBAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAALAAAAABOAE0AAAT/EMhJq7046827/2AojmRpnmiqrmzrvnAsz2tg37hNq7jg/0AfbjeyAQ3IpBIJ1BE5N99ySmUKbk9M4FftUn+BLMXoLXev4exWYG5/r8+te/5Nz+T0vBIu2w7+gIGCg4SFgXwvfoaLjIyILIqNkpOAjymRlJmNliZ4ep9ndieeoKV7oiWYmgWsrayah6giqpSutq2wf5wgpG63v616ux+9ZcDHwXPDHbSLwAnQ0cCZyxvFXbfR2tu3yrLMbL622+TStt6z4WbZ5e3dbdVa6sau7fYJ5/Df1gIH6/X37OUrE8/CFgQI/WFrFTCgKzcFxwhAmLAKwIb3HpqJOOEgRQQK/5dcxOguGcF98j6CnDKOpECNXjhK8PgxJJKRLsvBDMVrokqbBnDm5GaSJzGfNREmETrUHKuNKC/QpHiA4k2GTXUWrSITwFSQKoNizUr0aZKqVplENYhU5UemWTWidWug61e3CFqShXZuLt6uXtvizTt270O/bgEHHvy2MNnDjBEovosXLknIkScLHqx3aIG5BhAnXpsyMsLOlxGL/qh45ubKqB2KXk2xtes27Bp+Hkzb9m3csaMp4LvbtErfgec8I4qWNmPkycUhYzX3gPPRl+b9O6b6em3SHq7R+7Xau2Tw4bVLd2X+L/qjppC0x+5CvBkEoY27j2E/Ptf3JPTn30cpOwg4IHQ9qTdgXQiGQMaCSaAhRkdcxAfGhBVEoSA8aAB4xxpSEASGh3FoGEQQQ2A4Sw4squjiizDGKOOMNNZo44045nhBBAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAALAAAAABOAE0AAAT/EMhJq7046827/2AojmRpnmiqrmzrvnAsz2tg37hNq7jg/0AfbjeyAQ3IpBIJ1BE5N99ySmUKbk9M4FftUn+BLMXoLXev4exWYG5/r8+te/5Nz+T0vBIu2w7+gIGCg4SFgXwvfoaLjIyILIqNkpOAjymRlJmNliZ4ep9ndieeeQWmp6agnEUCmn+osKeuA6sgmJOxubKatR6kZrrBp3S9Hb9eugnKy7pzxRu3i7HL1NWxlM8Zx1XT1d7KsW7ZF9tU3d/f4W3jFeVTsOjxCbDior5swKjy8vRm7GMCEBwoo28fv2H+7EEJiKDhQHOnDBpEtU6hhi0NMz5cUlBiPIoJ/20xzCiQY0eP6UB6+QcAI8mSSk6iTJmqDEuXLzcakDnTGsKVFrWNJKmTZ09mP0OJfOmwIRKjR+clrXJzqMaMOyNG9aZS6QecV0lCParyAMk9QbVYZYoA3lakw8yyZZKW3Fq2Y1FSlMsWgQGWLe++zOsRFd++gAP3Hax1697FDRODXeyWrGHIkeuqxZyxsl6+Bg4j1ryZ8zmJBUSLZppYwmTKnvmtXv2ytWt8+QjPoy1wse3bc5JRU3CZc23SF3G3EVacN+TfwOkw53vAOVvoE9x10aXaOkns2ZVLh0Xbe+Ya4kGZH91Ce5v115GLcF/FL3zW8lmBUpWfBP39S4BnTEV6AFLV3yhSFEiVgLb8lwcaYoSXIIBgRNiOEQSug8aBfawx4RlgcEhED0GUOISF8+WgIoostujiizDGKOOMNNZo440XRAAAIf8LSW1hZ2VNYWdpY2sNZ2FtbWE9MC40NTQ1NQAh+QQBFAAAACwAAAAATgBNAAAE/xDISau9OOvNu/9gKI5kaZ5oqq5s675wLM9rYN+4Tau44P9AH243sgENyKQSCdQROTffckplCm5PTOBX7VJ/gSzF6C13r+HsVmBuf6/PrXv+Tc/k9LwSLtsO/oCBgoOEhYF8L36Gi4yMiCyKjZKTgI8pkZSZjZYmeHoFoKGgekx2J55zoqqhepxFApqrsqGariCYjbO6tJS2HqhlswnDxLNzvh3AXavEzc6rbsgbuIbMztfDq5PSGcpU1tjY0GbcF97fouHqCarRpr9sZqrr6+3k78nxwaH09KJt5SpsQYDgwDJ+/fyxKhNwwkCCBA1OSZew3kKG+DQ8hFhwybyK6v/seWkIYCNHiUgoggx58UzGbgI4QkRpQOVKcS2rkDR5MonNm89y1rkVU2ZEnwiBXvuHkajRiARrJlXajOnIl1qKGj0A8SdVdkKn7NR6kuPHr2AXcoW4ZOxTo16B/ltrNInbt2anUhVF92mpEDzfxgXJFy9EkhICPz17U1Xft4hLkjXMuKJjw4exwsTctbI/ugUeQ9a8mTMCcJ9lijYaOfFkyp6Xil4ts7XrVLKWgqJNm6Dt27h1EShsujbpafqCz1rb2/Bv4HmWz2z+9LnD5HQun6TO0fp1UlNWc/d9/MM5OuNHtzjfJn318iLYV0FgwD1r+K/Ag/eOXH8e/lBg559BS3FIMaBOAJonHyloiHGdgf6B4aBARggYDRr40VAhhGeAkaEaUQQh4hATxpfDiSWmqOKKLLbo4oswxijjjDReEAEAIf8LSW1hZ2VNYWdpY2sNZ2FtbWE9MC40NTQ1NQAh+QQBFAAAACwAAAAATgBNAAAE/xDISau9OOvNu/9gKI5kaZ5oqq5s675wLM9rYN+4Tau44P9AH243sgENyKQSCdQROTffckplCm5PTOBX7VJ/gSzF6C13r+HsVmBuf6/PrXv+Tc/k9LwSLtsO/oCBgoOEhYF8L36Gi4yMiCyKjZKTgI8pkZQDBZucm5mVdih4dJ2lnHqWJaNtpq2nc6lFApSutZyUsSCYjK4Jvr+uuKEiq16mv8jJpm65HsVVx8nSvstmzVCzjdHT06aS1xrPVKXc5QmlbeBabGbk5uXo1sMd4lOd7++d6fPY7Zz4+PSVUWdhC4KDB6D9A2hOoBeCYwQcnIggoRJ3DLnFe8gvg0GKCP8vLswI7xVHXRJBhkRyj2TJTfJQqlxpoKXLbibPdFw3c6XNm8pyVoEo4eNMiz+BAhNaR2bPAweTKj3HdApRAEZVQo06cupGnU61guyqVODWg1Z3Xsjak2uBqUs3nQW5R23BlG0pknXZaa7KJFex4s2LQCrDvoQRGAgsOPFEw/kQJ2bMNi9GgKX8tqU8OPHlhnM192Tc2LHbTQH9ilZJurTpwtvial4NsrVgUrYki81r+3YeVwR0vz7Yu54/U1tpE+7tW09N3QeUj7brjJ3zJKql16Ze/boS0donMo/oHUn4zdxRej8/PZF1N4rZzxzv8X15ZulV2b9/koZx/oDlJ4pAFABaRZ8u/12HhhgTrLEfKkIwWEEUD6aDhoB3OFjhHmBgGAeFQQQxhITE5GAiiSimqOKKLLbo4oswxijjjBdEAAA7';
35793
35733
 
35794
- var img$b = 'data:image/gif;base64,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';
35734
+ var img$a = 'data:image/gif;base64,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';
35795
35735
 
35796
- var img$c = 'data:image/gif;base64,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';
35736
+ var img$b = 'data:image/gif;base64,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';
35797
35737
 
35798
35738
  var DayNightPeriod = function DayNightPeriod(_ref) {
35799
35739
  var _periodOfDaySrcFiles;
35800
35740
  var periodOfDay = _ref.periodOfDay;
35801
- var periodOfDaySrcFiles = (_periodOfDaySrcFiles = {}, _periodOfDaySrcFiles[shared.PeriodOfDay.Morning] = img$b, _periodOfDaySrcFiles[shared.PeriodOfDay.Afternoon] = img$a, _periodOfDaySrcFiles[shared.PeriodOfDay.Night] = img$c, _periodOfDaySrcFiles);
35741
+ var periodOfDaySrcFiles = (_periodOfDaySrcFiles = {}, _periodOfDaySrcFiles[shared.PeriodOfDay.Morning] = img$a, _periodOfDaySrcFiles[shared.PeriodOfDay.Afternoon] = img$9, _periodOfDaySrcFiles[shared.PeriodOfDay.Night] = img$b, _periodOfDaySrcFiles);
35802
35742
  return React__default.createElement(GifContainer, null, React__default.createElement("img", {
35803
35743
  src: periodOfDaySrcFiles[periodOfDay]
35804
35744
  }));
@@ -35808,7 +35748,7 @@ var GifContainer = /*#__PURE__*/styled.div.withConfig({
35808
35748
  componentId: "sc-10t97fw-0"
35809
35749
  })(["width:100%;img{width:67%;}"]);
35810
35750
 
35811
- 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';
35751
+ 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';
35812
35752
 
35813
35753
  var TimeWidget = function TimeWidget(_ref) {
35814
35754
  var onClose = _ref.onClose,
@@ -35823,7 +35763,7 @@ var TimeWidget = function TimeWidget(_ref) {
35823
35763
  var WidgetContainer = /*#__PURE__*/styled.div.withConfig({
35824
35764
  displayName: "TimeWidget__WidgetContainer",
35825
35765
  componentId: "sc-1ja236h-0"
35826
- })(["background-image:url(", ");background-size:10rem;background-repeat:no-repeat;width:10rem;position:absolute;height:100px;"], img$d);
35766
+ })(["background-image:url(", ");background-size:10rem;background-repeat:no-repeat;width:10rem;position:absolute;height:100px;"], img$c);
35827
35767
  var Time = /*#__PURE__*/styled.div.withConfig({
35828
35768
  displayName: "TimeWidget__Time",
35829
35769
  componentId: "sc-1ja236h-1"
@@ -36008,14 +35948,16 @@ var TradingMenu = function TradingMenu(_ref) {
36008
35948
  if (onClose) onClose();
36009
35949
  },
36010
35950
  width: "600px",
36011
- cancelDrag: ".equipment-container-body .arrow-selector"
35951
+ cancelDrag: "#TraderContainer"
36012
35952
  }, React__default.createElement(React__default.Fragment, null, React__default.createElement("div", {
36013
35953
  style: {
36014
35954
  width: '100%'
36015
35955
  }
36016
35956
  }, React__default.createElement(Title$7, null, Capitalize(type), " Menu"), React__default.createElement("hr", {
36017
35957
  className: "golden"
36018
- })), React__default.createElement(TradingComponentScrollWrapper, null, traderItems.map(function (tradeItem, index) {
35958
+ })), React__default.createElement(TradingComponentScrollWrapper, {
35959
+ id: "TraderContainer"
35960
+ }, traderItems.map(function (tradeItem, index) {
36019
35961
  var _qtyMap$get;
36020
35962
  return React__default.createElement(ItemWrapper$1, {
36021
35963
  key: tradeItem.key + "_" + index
@@ -36073,17 +36015,230 @@ var Truncate = function Truncate(_ref) {
36073
36015
  var _ref$maxLines = _ref.maxLines,
36074
36016
  maxLines = _ref$maxLines === void 0 ? 1 : _ref$maxLines,
36075
36017
  children = _ref.children;
36076
- return React__default.createElement(Container$k, {
36018
+ return React__default.createElement(Container$j, {
36077
36019
  maxLines: maxLines
36078
36020
  }, children);
36079
36021
  };
36080
- var Container$k = /*#__PURE__*/styled.div.withConfig({
36022
+ var Container$j = /*#__PURE__*/styled.div.withConfig({
36081
36023
  displayName: "Truncate__Container",
36082
36024
  componentId: "sc-6x00qb-0"
36083
36025
  })(["display:-webkit-box;max-width:100%;max-height:100%;-webkit-line-clamp:", ";-webkit-box-orient:vertical;overflow:hidden;"], function (props) {
36084
36026
  return props.maxLines;
36085
36027
  });
36086
36028
 
36029
+ var IS_MOBILE_OR_TABLET = /*#__PURE__*/shared.isMobileOrTablet();
36030
+
36031
+ var chunkString = function chunkString(str, length) {
36032
+ return str.match(new RegExp('.{1,' + length + '}', 'g'));
36033
+ };
36034
+
36035
+ var img$d = 'data:image/gif;base64,R0lGODlhEAAQAPIAAAAAABQYLiw1TUBJc2hvmQAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAALAAAAAAQABAAAAM9CLrc/lCFGSKYJJP5AhlguDnBMIVgxXgmJapSSp3mKs/pKrT0IMCXUk+2Cgh2oSOnaDz+lswZpSOFUq2KBAAh/wtJbWFnZU1hZ2ljaw1nYW1tYT0wLjQ1NDU1ACH5BAEUAAAALAAAAAAQABAAAAIzhI+py90Bg4OjDrjCELxfFQhQx0mIJkaeaYRp5LJADMdnqXbyOJLYTdKBejjZoRaZJBMFACH/C0ltYWdlTWFnaWNrDWdhbW1hPTAuNDU0NTUAIfkEARQAAAAsAAAAABAAEAAAAjKEj6nL7Y+CDE6OO+QKQ/ifKYEgfR4VddPohQe7lmR0xidNTib65uacYP2AQWGuMlEUAAA7';
36036
+
36037
+ var NPCDialogText = function NPCDialogText(_ref) {
36038
+ var text = _ref.text,
36039
+ onClose = _ref.onClose,
36040
+ onEndStep = _ref.onEndStep,
36041
+ onStartStep = _ref.onStartStep,
36042
+ type = _ref.type;
36043
+ var windowSize = React.useRef([window.innerWidth, window.innerHeight]);
36044
+ function maxCharacters(width) {
36045
+ // Set the font size to 16 pixels
36046
+ var fontSize = 11.2;
36047
+ // Calculate the number of characters that can fit in one line
36048
+ var charactersPerLine = Math.floor(width / 2 / fontSize);
36049
+ // Calculate the number of lines that can fit in the div
36050
+ var linesPerDiv = Math.floor(180 / fontSize);
36051
+ // Calculate the maximum number of characters that can fit in the div
36052
+ var maxCharacters = charactersPerLine * linesPerDiv;
36053
+ // Return the maximum number of characters
36054
+ return Math.round(maxCharacters / 5);
36055
+ }
36056
+ var textChunks = chunkString(text, maxCharacters(windowSize.current[0]));
36057
+ var _useState = React.useState(0),
36058
+ chunkIndex = _useState[0],
36059
+ setChunkIndex = _useState[1];
36060
+ var onHandleSpacePress = function onHandleSpacePress(event) {
36061
+ if (event.code === 'Space') {
36062
+ goToNextStep();
36063
+ }
36064
+ };
36065
+ var goToNextStep = function goToNextStep() {
36066
+ var hasNextChunk = (textChunks == null ? void 0 : textChunks[chunkIndex + 1]) || false;
36067
+ if (hasNextChunk) {
36068
+ setChunkIndex(function (prev) {
36069
+ return prev + 1;
36070
+ });
36071
+ } else {
36072
+ // if there's no more text chunks, close the dialog
36073
+ onClose();
36074
+ }
36075
+ };
36076
+ React.useEffect(function () {
36077
+ document.addEventListener('keydown', onHandleSpacePress);
36078
+ return function () {
36079
+ return document.removeEventListener('keydown', onHandleSpacePress);
36080
+ };
36081
+ }, [chunkIndex]);
36082
+ var _useState2 = React.useState(false),
36083
+ showGoNextIndicator = _useState2[0],
36084
+ setShowGoNextIndicator = _useState2[1];
36085
+ return React__default.createElement(Container$k, null, React__default.createElement(DynamicText, {
36086
+ text: (textChunks == null ? void 0 : textChunks[chunkIndex]) || '',
36087
+ onFinish: function onFinish() {
36088
+ setShowGoNextIndicator(true);
36089
+ onEndStep && onEndStep();
36090
+ },
36091
+ onStart: function onStart() {
36092
+ setShowGoNextIndicator(false);
36093
+ onStartStep && onStartStep();
36094
+ }
36095
+ }), showGoNextIndicator && React__default.createElement(PressSpaceIndicator$1, {
36096
+ right: type === exports.NPCDialogType.TextOnly ? '1rem' : '10.5rem',
36097
+ src: IS_MOBILE_OR_TABLET ? img$d : img$7,
36098
+ onClick: function onClick() {
36099
+ goToNextStep();
36100
+ }
36101
+ }));
36102
+ };
36103
+ var Container$k = /*#__PURE__*/styled.div.withConfig({
36104
+ displayName: "NPCDialogText__Container",
36105
+ componentId: "sc-1cxkdh9-0"
36106
+ })([""]);
36107
+ var PressSpaceIndicator$1 = /*#__PURE__*/styled.img.withConfig({
36108
+ displayName: "NPCDialogText__PressSpaceIndicator",
36109
+ componentId: "sc-1cxkdh9-1"
36110
+ })(["position:absolute;right:", ";bottom:1rem;height:20.7px;image-rendering:-webkit-optimize-contrast;"], function (_ref2) {
36111
+ var right = _ref2.right;
36112
+ return right;
36113
+ });
36114
+
36115
+ (function (NPCDialogType) {
36116
+ NPCDialogType["TextOnly"] = "TextOnly";
36117
+ NPCDialogType["TextAndThumbnail"] = "TextAndThumbnail";
36118
+ })(exports.NPCDialogType || (exports.NPCDialogType = {}));
36119
+ var NPCDialog = function NPCDialog(_ref) {
36120
+ var text = _ref.text,
36121
+ type = _ref.type,
36122
+ _onClose = _ref.onClose,
36123
+ imagePath = _ref.imagePath,
36124
+ _ref$isQuestionDialog = _ref.isQuestionDialog,
36125
+ isQuestionDialog = _ref$isQuestionDialog === void 0 ? false : _ref$isQuestionDialog,
36126
+ questions = _ref.questions,
36127
+ answers = _ref.answers;
36128
+ return React__default.createElement(RPGUIContainer, {
36129
+ type: exports.RPGUIContainerTypes.FramedGold,
36130
+ width: isQuestionDialog ? '600px' : '80%',
36131
+ height: '180px'
36132
+ }, isQuestionDialog && questions && answers ? React__default.createElement(React__default.Fragment, null, React__default.createElement(TextContainer$2, {
36133
+ flex: type === exports.NPCDialogType.TextAndThumbnail ? '70%' : '100%'
36134
+ }, React__default.createElement(QuestionDialog, {
36135
+ questions: questions,
36136
+ answers: answers,
36137
+ onClose: function onClose() {
36138
+ if (_onClose) {
36139
+ _onClose();
36140
+ }
36141
+ }
36142
+ })), type === exports.NPCDialogType.TextAndThumbnail && React__default.createElement(ThumbnailContainer$1, null, React__default.createElement(NPCThumbnail$1, {
36143
+ src: imagePath || img$6
36144
+ }))) : React__default.createElement(React__default.Fragment, null, React__default.createElement(Container$l, null, React__default.createElement(TextContainer$2, {
36145
+ flex: type === exports.NPCDialogType.TextAndThumbnail ? '70%' : '100%'
36146
+ }, React__default.createElement(NPCDialogText, {
36147
+ type: type,
36148
+ text: text || 'No text provided.',
36149
+ onClose: function onClose() {
36150
+ if (_onClose) {
36151
+ _onClose();
36152
+ }
36153
+ }
36154
+ })), type === exports.NPCDialogType.TextAndThumbnail && React__default.createElement(ThumbnailContainer$1, null, React__default.createElement(NPCThumbnail$1, {
36155
+ src: imagePath || img$6
36156
+ })))));
36157
+ };
36158
+ var Container$l = /*#__PURE__*/styled.div.withConfig({
36159
+ displayName: "NPCDialog__Container",
36160
+ componentId: "sc-1b4aw74-0"
36161
+ })(["display:flex;width:100%;height:100%;box-sizing:border-box;justify-content:center;align-items:flex-start;position:relative;"]);
36162
+ var TextContainer$2 = /*#__PURE__*/styled.div.withConfig({
36163
+ displayName: "NPCDialog__TextContainer",
36164
+ componentId: "sc-1b4aw74-1"
36165
+ })(["flex:", " 0 0;width:355px;"], function (_ref2) {
36166
+ var flex = _ref2.flex;
36167
+ return flex;
36168
+ });
36169
+ var ThumbnailContainer$1 = /*#__PURE__*/styled.div.withConfig({
36170
+ displayName: "NPCDialog__ThumbnailContainer",
36171
+ componentId: "sc-1b4aw74-2"
36172
+ })(["flex:30% 0 0;display:flex;justify-content:flex-end;"]);
36173
+ var NPCThumbnail$1 = /*#__PURE__*/styled.img.withConfig({
36174
+ displayName: "NPCDialog__NPCThumbnail",
36175
+ componentId: "sc-1b4aw74-3"
36176
+ })(["image-rendering:pixelated;height:128px;width:128px;"]);
36177
+
36178
+ var HistoryDialog = function HistoryDialog(_ref) {
36179
+ var backgroundImgPath = _ref.backgroundImgPath,
36180
+ fullCoverBackground = _ref.fullCoverBackground,
36181
+ questions = _ref.questions,
36182
+ answers = _ref.answers,
36183
+ text = _ref.text,
36184
+ imagePath = _ref.imagePath,
36185
+ textAndTypeArray = _ref.textAndTypeArray,
36186
+ onClose = _ref.onClose;
36187
+ var _useState = React.useState(0),
36188
+ img = _useState[0],
36189
+ setImage = _useState[1];
36190
+ var onHandleSpacePress = function onHandleSpacePress(event) {
36191
+ if (event.code === 'Space') {
36192
+ if (img < (backgroundImgPath == null ? void 0 : backgroundImgPath.length) - 1) {
36193
+ setImage(function (prev) {
36194
+ return prev + 1;
36195
+ });
36196
+ } else {
36197
+ // if there's no more text chunks, close the dialog
36198
+ onClose();
36199
+ }
36200
+ }
36201
+ };
36202
+ React.useEffect(function () {
36203
+ document.addEventListener('keydown', onHandleSpacePress);
36204
+ return function () {
36205
+ return document.removeEventListener('keydown', onHandleSpacePress);
36206
+ };
36207
+ }, [backgroundImgPath]);
36208
+ return React__default.createElement(BackgroundContainer, {
36209
+ imgPath: backgroundImgPath[img],
36210
+ fullImg: fullCoverBackground
36211
+ }, React__default.createElement(DialogContainer, null, textAndTypeArray ? React__default.createElement(NPCMultiDialog, {
36212
+ textAndTypeArray: textAndTypeArray,
36213
+ onClose: onClose
36214
+ }) : questions && answers ? React__default.createElement(QuestionDialog, {
36215
+ questions: questions,
36216
+ answers: answers,
36217
+ onClose: onClose
36218
+ }) : text && imagePath ? React__default.createElement(NPCDialog, {
36219
+ text: text,
36220
+ imagePath: imagePath,
36221
+ onClose: onClose,
36222
+ type: exports.NPCDialogType.TextAndThumbnail
36223
+ }) : React__default.createElement(NPCDialog, {
36224
+ text: text,
36225
+ onClose: onClose,
36226
+ type: exports.NPCDialogType.TextOnly
36227
+ })));
36228
+ };
36229
+ var BackgroundContainer = /*#__PURE__*/styled.div.withConfig({
36230
+ displayName: "HistoryDialog__BackgroundContainer",
36231
+ componentId: "sc-u6oe75-0"
36232
+ })(["width:100%;height:100%;background-image:url(", ");background-size:", ";display:flex;justify-content:space-evenly;align-items:center;"], function (props) {
36233
+ return props.imgPath;
36234
+ }, function (props) {
36235
+ return props.imgPath ? 'cover' : 'auto';
36236
+ });
36237
+ var DialogContainer = /*#__PURE__*/styled.div.withConfig({
36238
+ displayName: "HistoryDialog__DialogContainer",
36239
+ componentId: "sc-u6oe75-1"
36240
+ })(["display:flex;justify-content:center;padding-top:200px;"]);
36241
+
36087
36242
  exports.Button = Button;
36088
36243
  exports.CharacterSelection = CharacterSelection;
36089
36244
  exports.Chat = Chat;
@@ -36111,13 +36266,12 @@ exports.PropertySelect = PropertySelect;
36111
36266
  exports.QuestInfo = QuestInfo;
36112
36267
  exports.QuestList = QuestList;
36113
36268
  exports.QuestionDialog = QuestionDialog;
36114
- exports.QuickSpells = QuickSpells;
36115
36269
  exports.RPGUIContainer = RPGUIContainer;
36116
36270
  exports.RPGUIRoot = RPGUIRoot;
36117
36271
  exports.RangeSlider = RangeSlider;
36272
+ exports.Shortcuts = Shortcuts;
36118
36273
  exports.SkillProgressBar = SkillProgressBar;
36119
36274
  exports.SkillsContainer = SkillsContainer;
36120
- exports.SpellShortcut = SpellShortcut;
36121
36275
  exports.Spellbook = Spellbook;
36122
36276
  exports.SpriteFromAtlas = SpriteFromAtlas;
36123
36277
  exports.TextArea = TextArea;