@rpg-engine/long-bow 0.8.10 → 0.8.12

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.
@@ -27819,6 +27819,12 @@ var generateContextMenu = function generateContextMenu(item, itemContainerType,
27819
27819
  }
27820
27820
  }
27821
27821
  }
27822
+ if (item.attachedGems && item.attachedGems.length > 0) {
27823
+ contextActionMenu.push({
27824
+ id: shared.ItemSocketEvents.DetachGem,
27825
+ text: "Detach Gems"
27826
+ });
27827
+ }
27822
27828
  return contextActionMenu;
27823
27829
  };
27824
27830
 
@@ -30773,6 +30779,1381 @@ var ContentWrapper = /*#__PURE__*/styled__default.div.withConfig({
30773
30779
  componentId: "sc-ldufv0-3"
30774
30780
  })([""]);
30775
30781
 
30782
+ var usePagination = function usePagination(_ref) {
30783
+ var items = _ref.items,
30784
+ itemsPerPage = _ref.itemsPerPage,
30785
+ _ref$dependencies = _ref.dependencies,
30786
+ dependencies = _ref$dependencies === void 0 ? [] : _ref$dependencies;
30787
+ var _useState = React.useState(1),
30788
+ currentPage = _useState[0],
30789
+ setCurrentPage = _useState[1];
30790
+ var totalPages = Math.ceil(items.length / itemsPerPage);
30791
+ var paginatedItems = items.slice((currentPage - 1) * itemsPerPage, currentPage * itemsPerPage);
30792
+ React.useEffect(function () {
30793
+ setCurrentPage(1);
30794
+ }, [].concat(dependencies));
30795
+ return {
30796
+ currentPage: currentPage,
30797
+ setCurrentPage: setCurrentPage,
30798
+ paginatedItems: paginatedItems,
30799
+ totalPages: totalPages
30800
+ };
30801
+ };
30802
+
30803
+ var Pagination = function Pagination(_ref) {
30804
+ var currentPage = _ref.currentPage,
30805
+ totalPages = _ref.totalPages,
30806
+ onPageChange = _ref.onPageChange,
30807
+ className = _ref.className;
30808
+ return React__default.createElement(Container$l, {
30809
+ className: className
30810
+ }, React__default.createElement(PaginationButton$1, {
30811
+ onClick: function onClick() {
30812
+ return onPageChange(Math.max(1, currentPage - 1));
30813
+ },
30814
+ disabled: currentPage === 1
30815
+ }, React__default.createElement(fa.FaChevronLeft, {
30816
+ size: 12
30817
+ })), React__default.createElement(PageInfo$1, null, "Page ", currentPage, " of ", totalPages), React__default.createElement(PaginationButton$1, {
30818
+ onClick: function onClick() {
30819
+ return onPageChange(Math.min(totalPages, currentPage + 1));
30820
+ },
30821
+ disabled: currentPage === totalPages
30822
+ }, React__default.createElement(fa.FaChevronRight, {
30823
+ size: 12
30824
+ })));
30825
+ };
30826
+ var Container$l = /*#__PURE__*/styled__default.div.withConfig({
30827
+ displayName: "Pagination__Container",
30828
+ componentId: "sc-3k4m4u-0"
30829
+ })(["display:flex;align-items:center;justify-content:center;gap:16px;padding:8px;"]);
30830
+ var PaginationButton$1 = /*#__PURE__*/styled__default.button.withConfig({
30831
+ displayName: "Pagination__PaginationButton",
30832
+ componentId: "sc-3k4m4u-1"
30833
+ })(["background:none;border:none;color:", ";cursor:", ";opacity:", ";padding:4px;display:flex;align-items:center;justify-content:center;transition:opacity 0.2s;&:hover:not(:disabled){opacity:1;}"], function (props) {
30834
+ return props.disabled ? uiColors.darkGray : uiColors.yellow;
30835
+ }, function (props) {
30836
+ return props.disabled ? 'not-allowed' : 'pointer';
30837
+ }, function (props) {
30838
+ return props.disabled ? 0.5 : 0.8;
30839
+ });
30840
+ var PageInfo$1 = /*#__PURE__*/styled__default.div.withConfig({
30841
+ displayName: "Pagination__PageInfo",
30842
+ componentId: "sc-3k4m4u-2"
30843
+ })(["color:", ";font-size:0.8rem;font-family:'Press Start 2P',cursive;"], uiColors.lightGray);
30844
+
30845
+ var SearchBar = function SearchBar(_ref) {
30846
+ var value = _ref.value,
30847
+ _onChange = _ref.onChange,
30848
+ placeholder = _ref.placeholder,
30849
+ className = _ref.className;
30850
+ return React__default.createElement(Container$m, {
30851
+ className: className
30852
+ }, React__default.createElement(Input$1, {
30853
+ type: "text",
30854
+ value: value,
30855
+ onChange: function onChange(e) {
30856
+ return _onChange(e.target.value);
30857
+ },
30858
+ placeholder: placeholder,
30859
+ className: "rpgui-input"
30860
+ }), React__default.createElement(IconContainer, null, React__default.createElement(SearchIcon, null)));
30861
+ };
30862
+ var Container$m = /*#__PURE__*/styled__default.div.withConfig({
30863
+ displayName: "SearchBar__Container",
30864
+ componentId: "sc-13n8z02-0"
30865
+ })(["position:relative;width:100%;"]);
30866
+ var Input$1 = /*#__PURE__*/styled__default.input.withConfig({
30867
+ displayName: "SearchBar__Input",
30868
+ componentId: "sc-13n8z02-1"
30869
+ })(["width:100%;padding-right:2.5rem !important;background:rgba(0,0,0,0.2) !important;border:2px solid #f59e0b !important;box-shadow:0 0 10px rgba(245,158,11,0.3);color:#ffffff !important;font-family:'Press Start 2P',cursive !important;font-size:0.875rem !important;&::placeholder{color:rgba(255,255,255,0.5) !important;}"]);
30870
+ var IconContainer = /*#__PURE__*/styled__default.div.withConfig({
30871
+ displayName: "SearchBar__IconContainer",
30872
+ componentId: "sc-13n8z02-2"
30873
+ })(["position:absolute;right:0.75rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:24px;height:24px;pointer-events:none;"]);
30874
+ var SearchIcon = /*#__PURE__*/styled__default(fa.FaSearch).withConfig({
30875
+ displayName: "SearchBar__SearchIcon",
30876
+ componentId: "sc-13n8z02-3"
30877
+ })(["font-size:1rem;color:#f59e0b;filter:drop-shadow(0 0 2px rgba(245,158,11,0.3));"]);
30878
+
30879
+ var SearchHeader = function SearchHeader(_ref) {
30880
+ var searchOptions = _ref.searchOptions,
30881
+ filterOptions = _ref.filterOptions,
30882
+ className = _ref.className;
30883
+ if (!searchOptions && !filterOptions) return null;
30884
+ return React__default.createElement(HeaderContainer$1, {
30885
+ className: className
30886
+ }, React__default.createElement(HeaderContent, null, searchOptions && React__default.createElement(SearchContainer$2, null, React__default.createElement(StyledSearchBar, {
30887
+ value: searchOptions.value,
30888
+ onChange: searchOptions.onChange,
30889
+ placeholder: searchOptions.placeholder || 'Search...'
30890
+ })), filterOptions && React__default.createElement(FilterContainer, null, React__default.createElement(StyledDropdown, {
30891
+ options: filterOptions.options,
30892
+ onChange: filterOptions.onOptionChange,
30893
+ width: "200px"
30894
+ }))));
30895
+ };
30896
+ var HeaderContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
30897
+ displayName: "SearchHeader__HeaderContainer",
30898
+ componentId: "sc-1xd17jb-0"
30899
+ })([""]);
30900
+ var HeaderContent = /*#__PURE__*/styled__default.div.withConfig({
30901
+ displayName: "SearchHeader__HeaderContent",
30902
+ componentId: "sc-1xd17jb-1"
30903
+ })(["display:flex;justify-content:space-between;align-items:center;gap:1rem;background:rgba(0,0,0,0.2);padding:1rem;border-radius:4px;"]);
30904
+ var SearchContainer$2 = /*#__PURE__*/styled__default.div.withConfig({
30905
+ displayName: "SearchHeader__SearchContainer",
30906
+ componentId: "sc-1xd17jb-2"
30907
+ })(["flex:1;"]);
30908
+ var FilterContainer = /*#__PURE__*/styled__default.div.withConfig({
30909
+ displayName: "SearchHeader__FilterContainer",
30910
+ componentId: "sc-1xd17jb-3"
30911
+ })(["display:flex;justify-content:flex-end;"]);
30912
+ var StyledSearchBar = /*#__PURE__*/styled__default(SearchBar).withConfig({
30913
+ displayName: "SearchHeader__StyledSearchBar",
30914
+ componentId: "sc-1xd17jb-4"
30915
+ })(["width:100%;"]);
30916
+ var StyledDropdown = /*#__PURE__*/styled__default(Dropdown).withConfig({
30917
+ displayName: "SearchHeader__StyledDropdown",
30918
+ componentId: "sc-1xd17jb-5"
30919
+ })(["min-width:150px;"]);
30920
+
30921
+ var PaginatedContent = function PaginatedContent(_ref) {
30922
+ var items = _ref.items,
30923
+ _ref$itemsPerPage = _ref.itemsPerPage,
30924
+ itemsPerPage = _ref$itemsPerPage === void 0 ? 5 : _ref$itemsPerPage,
30925
+ renderItem = _ref.renderItem,
30926
+ _ref$emptyMessage = _ref.emptyMessage,
30927
+ emptyMessage = _ref$emptyMessage === void 0 ? 'No items found' : _ref$emptyMessage,
30928
+ className = _ref.className,
30929
+ filterOptions = _ref.filterOptions,
30930
+ searchOptions = _ref.searchOptions,
30931
+ _ref$dependencies = _ref.dependencies,
30932
+ dependencies = _ref$dependencies === void 0 ? [] : _ref$dependencies,
30933
+ tabId = _ref.tabId,
30934
+ _ref$layout = _ref.layout,
30935
+ layout = _ref$layout === void 0 ? 'list' : _ref$layout,
30936
+ _ref$gridColumns = _ref.gridColumns,
30937
+ gridColumns = _ref$gridColumns === void 0 ? 4 : _ref$gridColumns,
30938
+ _ref$itemHeight = _ref.itemHeight,
30939
+ itemHeight = _ref$itemHeight === void 0 ? '180px' : _ref$itemHeight;
30940
+ var _usePagination = usePagination({
30941
+ items: items,
30942
+ itemsPerPage: itemsPerPage,
30943
+ dependencies: [].concat(dependencies, [tabId])
30944
+ }),
30945
+ currentPage = _usePagination.currentPage,
30946
+ setCurrentPage = _usePagination.setCurrentPage,
30947
+ paginatedItems = _usePagination.paginatedItems,
30948
+ totalPages = _usePagination.totalPages;
30949
+ return React__default.createElement(Container$n, {
30950
+ className: className
30951
+ }, (searchOptions || filterOptions) && React__default.createElement(SearchHeader, {
30952
+ searchOptions: searchOptions,
30953
+ filterOptions: filterOptions
30954
+ }), items.length === 0 ? React__default.createElement(EmptyMessage, null, emptyMessage) : React__default.createElement(React__default.Fragment, null, React__default.createElement(Content, {
30955
+ className: "PaginatedContent-content " + layout,
30956
+ "$gridColumns": gridColumns,
30957
+ "$itemHeight": itemHeight
30958
+ }, paginatedItems.map(function (item, index) {
30959
+ return React__default.createElement("div", {
30960
+ key: index,
30961
+ className: "PaginatedContent-item"
30962
+ }, renderItem(item));
30963
+ })), React__default.createElement(PaginationContainer$1, {
30964
+ className: "PaginatedContent-pagination"
30965
+ }, React__default.createElement(Pagination, {
30966
+ currentPage: currentPage,
30967
+ totalPages: totalPages,
30968
+ onPageChange: setCurrentPage
30969
+ }))));
30970
+ };
30971
+ var Container$n = /*#__PURE__*/styled__default.div.withConfig({
30972
+ displayName: "PaginatedContent__Container",
30973
+ componentId: "sc-lzp9hn-0"
30974
+ })(["display:flex;flex-direction:column;gap:1rem;min-height:400px;width:100%;"]);
30975
+ var Content = /*#__PURE__*/styled__default.div.withConfig({
30976
+ displayName: "PaginatedContent__Content",
30977
+ componentId: "sc-lzp9hn-1"
30978
+ })(["display:flex;flex-direction:column;gap:0.5rem;flex:1;padding:1rem;min-height:200px;max-height:", ";overflow-y:", ";&.grid{display:grid;grid-template-columns:repeat( ", ",minmax(0,1fr) );gap:1rem;align-items:start;.PaginatedContent-item{display:flex;align-items:flex-start;height:", ";}}&.list{display:flex;flex-direction:column;gap:0.5rem;}"], function (props) {
30979
+ return props.$maxHeight;
30980
+ }, function (props) {
30981
+ return props.$maxHeight ? 'auto' : 'visible';
30982
+ }, function (props) {
30983
+ return props.$gridColumns;
30984
+ }, function (props) {
30985
+ var _props$$itemHeight;
30986
+ return (_props$$itemHeight = props.$itemHeight) != null ? _props$$itemHeight : 'auto';
30987
+ });
30988
+ var PaginationContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
30989
+ displayName: "PaginatedContent__PaginationContainer",
30990
+ componentId: "sc-lzp9hn-2"
30991
+ })(["display:flex;justify-content:center;padding:1rem;"]);
30992
+ var EmptyMessage = /*#__PURE__*/styled__default.div.withConfig({
30993
+ displayName: "PaginatedContent__EmptyMessage",
30994
+ componentId: "sc-lzp9hn-3"
30995
+ })(["text-align:center;color:#9ca3af;padding:2rem;flex:1;display:flex;align-items:center;justify-content:center;"]);
30996
+
30997
+ var Portal = function Portal(_ref) {
30998
+ var children = _ref.children;
30999
+ var _useState = React.useState(function () {
31000
+ return document.createElement('div');
31001
+ }),
31002
+ container = _useState[0];
31003
+ React.useEffect(function () {
31004
+ document.body.appendChild(container);
31005
+ return function () {
31006
+ document.body.removeChild(container);
31007
+ };
31008
+ }, [container]);
31009
+ return ReactDOM.createPortal(children, container);
31010
+ };
31011
+
31012
+ var InformationCenterCell = function InformationCenterCell(_ref) {
31013
+ var name = _ref.name,
31014
+ spriteKey = _ref.spriteKey,
31015
+ atlasJSON = _ref.atlasJSON,
31016
+ atlasIMG = _ref.atlasIMG,
31017
+ onClick = _ref.onClick,
31018
+ onMouseEnter = _ref.onMouseEnter,
31019
+ onMouseLeave = _ref.onMouseLeave,
31020
+ onMouseMove = _ref.onMouseMove,
31021
+ onTouchStart = _ref.onTouchStart;
31022
+ return React__default.createElement(CellContainer, {
31023
+ onClick: onClick,
31024
+ onMouseEnter: onMouseEnter,
31025
+ onMouseLeave: onMouseLeave,
31026
+ onMouseMove: onMouseMove,
31027
+ onTouchStart: onTouchStart
31028
+ }, React__default.createElement(SpriteContainer$1, null, React__default.createElement(SpriteFromAtlas, {
31029
+ atlasJSON: atlasJSON,
31030
+ atlasIMG: atlasIMG,
31031
+ spriteKey: spriteKey,
31032
+ width: 32,
31033
+ height: 32,
31034
+ imgScale: 1
31035
+ })), React__default.createElement(CellName, null, name));
31036
+ };
31037
+ var CellContainer = /*#__PURE__*/styled__default.div.withConfig({
31038
+ displayName: "InformationCenterCell__CellContainer",
31039
+ componentId: "sc-w48fdf-0"
31040
+ })(["position:relative;background:rgba(0,0,0,0.2);padding:0.75rem;border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:background-color 0.2s ease;width:100%;height:100%;min-width:120px;min-height:120px;box-sizing:border-box;&:hover{background:rgba(0,0,0,0.3);}"]);
31041
+ var SpriteContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
31042
+ displayName: "InformationCenterCell__SpriteContainer",
31043
+ componentId: "sc-w48fdf-1"
31044
+ })(["margin-bottom:0.5rem;display:flex;justify-content:center;align-items:center;width:64px;height:64px;position:relative;background:rgba(0,0,0,0.3);border-radius:4px;flex-shrink:0;.sprite-from-atlas-img{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(2);image-rendering:pixelated;}"]);
31045
+ var CellName = /*#__PURE__*/styled__default.h3.withConfig({
31046
+ displayName: "InformationCenterCell__CellName",
31047
+ componentId: "sc-w48fdf-2"
31048
+ })(["font-size:0.7rem;color:#fef08a;margin:0;text-align:center;font-family:'Press Start 2P',cursive;line-height:1.2;word-break:break-word;max-width:100%;"]);
31049
+
31050
+ var Collapsible = function Collapsible(_ref) {
31051
+ var title = _ref.title,
31052
+ children = _ref.children,
31053
+ _ref$defaultOpen = _ref.defaultOpen,
31054
+ defaultOpen = _ref$defaultOpen === void 0 ? false : _ref$defaultOpen,
31055
+ className = _ref.className;
31056
+ var _useState = React.useState(defaultOpen),
31057
+ isOpen = _useState[0],
31058
+ setIsOpen = _useState[1];
31059
+ return React__default.createElement(Container$o, {
31060
+ className: className
31061
+ }, React__default.createElement(Header$1, {
31062
+ onClick: function onClick() {
31063
+ return setIsOpen(!isOpen);
31064
+ }
31065
+ }, React__default.createElement(Title$3, null, title), React__default.createElement(Icon$1, null, isOpen ? React__default.createElement(fa.FaChevronUp, null) : React__default.createElement(fa.FaChevronDown, null))), isOpen && React__default.createElement(Content$1, null, children));
31066
+ };
31067
+ var Container$o = /*#__PURE__*/styled__default.div.withConfig({
31068
+ displayName: "Collapsible__Container",
31069
+ componentId: "sc-s4h8ey-0"
31070
+ })(["background:rgba(0,0,0,0.3);border-radius:4px;overflow:hidden;border:1px solid ", ";"], uiColors.darkGray);
31071
+ var Header$1 = /*#__PURE__*/styled__default.div.withConfig({
31072
+ displayName: "Collapsible__Header",
31073
+ componentId: "sc-s4h8ey-1"
31074
+ })(["padding:10px 12px;background:rgba(0,0,0,0.2);display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:background-color 0.2s ease;&:hover{background:rgba(0,0,0,0.4);}"]);
31075
+ var Title$3 = /*#__PURE__*/styled__default.h3.withConfig({
31076
+ displayName: "Collapsible__Title",
31077
+ componentId: "sc-s4h8ey-2"
31078
+ })(["margin:0;font-size:0.6rem;color:", ";font-family:'Press Start 2P',cursive;letter-spacing:0.5px;"], uiColors.yellow);
31079
+ var Icon$1 = /*#__PURE__*/styled__default.span.withConfig({
31080
+ displayName: "Collapsible__Icon",
31081
+ componentId: "sc-s4h8ey-3"
31082
+ })(["color:", ";font-size:0.6rem;display:flex;align-items:center;"], uiColors.yellow);
31083
+ var Content$1 = /*#__PURE__*/styled__default.div.withConfig({
31084
+ displayName: "Collapsible__Content",
31085
+ componentId: "sc-s4h8ey-4"
31086
+ })(["padding:12px;"]);
31087
+
31088
+ var BaseInformationDetails = function BaseInformationDetails(_ref) {
31089
+ var name = _ref.name,
31090
+ spriteKey = _ref.spriteKey,
31091
+ atlasJSON = _ref.atlasJSON,
31092
+ atlasIMG = _ref.atlasIMG,
31093
+ onBack = _ref.onBack,
31094
+ children = _ref.children;
31095
+ return React__default.createElement(Container$p, null, React__default.createElement(Overlay, {
31096
+ onClick: onBack
31097
+ }), React__default.createElement(Modal, null, React__default.createElement(CloseButton$5, {
31098
+ onClick: onBack
31099
+ }, React__default.createElement(fa.FaTimes, null)), React__default.createElement(Header$2, null, React__default.createElement(SpriteContainer$2, null, React__default.createElement(SpriteFromAtlas, {
31100
+ atlasJSON: atlasJSON,
31101
+ atlasIMG: atlasIMG,
31102
+ spriteKey: spriteKey,
31103
+ width: 32,
31104
+ height: 32,
31105
+ imgScale: 1
31106
+ })), React__default.createElement(Title$4, null, name)), React__default.createElement(Content$2, null, children)));
31107
+ };
31108
+ var Container$p = /*#__PURE__*/styled__default.div.withConfig({
31109
+ displayName: "BaseInformationDetails__Container",
31110
+ componentId: "sc-1vguuz8-0"
31111
+ })(["position:fixed;top:0;left:0;right:0;bottom:0;display:flex;justify-content:center;align-items:center;z-index:1000;"]);
31112
+ var Overlay = /*#__PURE__*/styled__default.div.withConfig({
31113
+ displayName: "BaseInformationDetails__Overlay",
31114
+ componentId: "sc-1vguuz8-1"
31115
+ })(["position:absolute;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0.8);"]);
31116
+ var Modal = /*#__PURE__*/styled__default.div.withConfig({
31117
+ displayName: "BaseInformationDetails__Modal",
31118
+ componentId: "sc-1vguuz8-2"
31119
+ })(["position:relative;width:90%;max-width:800px;max-height:90vh;background-color:rgba(0,0,0,0.95);border-radius:4px;padding:16px;overflow-y:auto;z-index:1;font-family:'Press Start 2P',cursive;border:1px solid ", ";box-shadow:0 2px 4px rgba(0,0,0,0.2);&::-webkit-scrollbar{width:2px;}&::-webkit-scrollbar-track{background:transparent;}&::-webkit-scrollbar-thumb{background-color:", ";border-radius:4px;opacity:0.5;&:hover{opacity:1;}}scrollbar-width:thin;scrollbar-color:", " transparent;"], uiColors.darkGray, uiColors.yellow, uiColors.yellow);
31120
+ var CloseButton$5 = /*#__PURE__*/styled__default.button.withConfig({
31121
+ displayName: "BaseInformationDetails__CloseButton",
31122
+ componentId: "sc-1vguuz8-3"
31123
+ })(["position:absolute;top:20px;right:20px;background:none;border:none;color:", ";font-size:1.2rem;cursor:pointer;padding:0;z-index:1;transition:transform 0.2s ease;&:hover{transform:scale(1.1);}"], uiColors.yellow);
31124
+ var Header$2 = /*#__PURE__*/styled__default.div.withConfig({
31125
+ displayName: "BaseInformationDetails__Header",
31126
+ componentId: "sc-1vguuz8-4"
31127
+ })(["display:flex;align-items:center;gap:16px;margin-bottom:24px;"]);
31128
+ var Content$2 = /*#__PURE__*/styled__default.div.withConfig({
31129
+ displayName: "BaseInformationDetails__Content",
31130
+ componentId: "sc-1vguuz8-5"
31131
+ })(["display:flex;flex-direction:column;gap:16px;"]);
31132
+ var Title$4 = /*#__PURE__*/styled__default.h2.withConfig({
31133
+ displayName: "BaseInformationDetails__Title",
31134
+ componentId: "sc-1vguuz8-6"
31135
+ })(["color:", ";font-size:1rem;margin:0;"], uiColors.yellow);
31136
+ var SpriteContainer$2 = /*#__PURE__*/styled__default.div.withConfig({
31137
+ displayName: "BaseInformationDetails__SpriteContainer",
31138
+ componentId: "sc-1vguuz8-7"
31139
+ })(["width:64px;height:64px;background:rgba(0,0,0,0.3);border-radius:4px;display:flex;justify-content:center;align-items:center;position:relative;.sprite-from-atlas-img{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(2);transform-origin:center;}"]);
31140
+
31141
+ var ITEMS_PER_PAGE$1 = 5;
31142
+ var InformationCenterNPCDetails = function InformationCenterNPCDetails(_ref) {
31143
+ var _npc$loots, _npc$skills$strength, _npc$skills$dexterity, _npc$skills$resistanc;
31144
+ var npc = _ref.npc,
31145
+ itemsAtlasJSON = _ref.itemsAtlasJSON,
31146
+ itemsAtlasIMG = _ref.itemsAtlasIMG,
31147
+ entitiesAtlasJSON = _ref.entitiesAtlasJSON,
31148
+ entitiesAtlasIMG = _ref.entitiesAtlasIMG,
31149
+ onBack = _ref.onBack;
31150
+ var isMobile = shared.isMobileOrTablet();
31151
+ var _useState = React.useState(''),
31152
+ lootSearchQuery = _useState[0],
31153
+ setLootSearchQuery = _useState[1];
31154
+ var _useState2 = React.useState(1),
31155
+ currentLootPage = _useState2[0],
31156
+ setCurrentLootPage = _useState2[1];
31157
+ var formatText = function formatText(text) {
31158
+ if (typeof text === 'number') {
31159
+ return text.toString();
31160
+ }
31161
+ return text.toString().replace(/([A-Z])/g, ' $1').trim().replace(/([A-Z]+)([A-Z][a-z])/g, '$1 $2').replace(/\s+/g, ' ');
31162
+ };
31163
+ var formatRarity = function formatRarity(rarity) {
31164
+ switch (rarity) {
31165
+ case 0.5:
31166
+ return 'Very Rare';
31167
+ case 1:
31168
+ return 'Rare';
31169
+ case 10:
31170
+ return 'Uncommon';
31171
+ case 15:
31172
+ return 'Semi Common';
31173
+ case 20:
31174
+ return 'Common';
31175
+ case 35:
31176
+ return 'Very Common';
31177
+ default:
31178
+ return 'Unknown';
31179
+ }
31180
+ };
31181
+ var filteredLoots = ((_npc$loots = npc.loots) == null ? void 0 : _npc$loots.filter(function (loot) {
31182
+ return formatText(loot.itemBlueprintKey).toLowerCase().includes(lootSearchQuery.toLowerCase());
31183
+ })) || [];
31184
+ var totalLootPages = Math.ceil(filteredLoots.length / ITEMS_PER_PAGE$1);
31185
+ var paginatedLoots = filteredLoots.slice((currentLootPage - 1) * ITEMS_PER_PAGE$1, currentLootPage * ITEMS_PER_PAGE$1);
31186
+ return React__default.createElement(BaseInformationDetails, {
31187
+ name: npc.name,
31188
+ spriteKey: npc.key,
31189
+ atlasJSON: entitiesAtlasJSON,
31190
+ atlasIMG: entitiesAtlasIMG,
31191
+ onBack: onBack
31192
+ }, React__default.createElement(InfoSection, null, React__default.createElement(InfoItem, null, React__default.createElement(Label, null, "Type:"), React__default.createElement(Value, null, formatText(npc.subType))), React__default.createElement(InfoItem, null, React__default.createElement(Label, null, "Alignment:"), React__default.createElement(Value, null, formatText(npc.alignment))), React__default.createElement(InfoItem, null, React__default.createElement(Label, null, "Attack Type:"), React__default.createElement(Value, null, formatText(npc.attackType))), React__default.createElement(InfoItem, null, React__default.createElement(Label, null, "Range:"), React__default.createElement(Value, null, formatText(npc.maxRangeAttack))), React__default.createElement(InfoItem, null, React__default.createElement(Label, null, "Speed:"), React__default.createElement(Value, null, formatText(npc.speed)))), React__default.createElement(StyledCollapsible, {
31193
+ title: "Stats",
31194
+ defaultOpen: !isMobile
31195
+ }, React__default.createElement(StatGrid, null, React__default.createElement(StatItem, null, "HP: ", npc.baseHealth), React__default.createElement(StatItem, null, "Level: ", npc.skills.level), ((_npc$skills$strength = npc.skills.strength) == null ? void 0 : _npc$skills$strength.level) && React__default.createElement(StatItem, null, "Strength: ", npc.skills.strength.level), ((_npc$skills$dexterity = npc.skills.dexterity) == null ? void 0 : _npc$skills$dexterity.level) && React__default.createElement(StatItem, null, "Dexterity: ", npc.skills.dexterity.level), ((_npc$skills$resistanc = npc.skills.resistance) == null ? void 0 : _npc$skills$resistanc.level) && React__default.createElement(StatItem, null, "Resistance: ", npc.skills.resistance.level))), npc.loots && npc.loots.length > 0 && React__default.createElement(StyledCollapsible, {
31196
+ title: "Loot",
31197
+ defaultOpen: !isMobile
31198
+ }, React__default.createElement(LootSearchContainer, null, React__default.createElement(StyledSearchBar$1, {
31199
+ value: lootSearchQuery,
31200
+ onChange: setLootSearchQuery,
31201
+ placeholder: "Search loot..."
31202
+ })), React__default.createElement(LootGrid, null, paginatedLoots.map(function (loot, index) {
31203
+ return React__default.createElement(LootItem, {
31204
+ key: index
31205
+ }, React__default.createElement(SpriteFromAtlas, {
31206
+ atlasJSON: itemsAtlasJSON,
31207
+ atlasIMG: itemsAtlasIMG,
31208
+ spriteKey: loot.itemBlueprintKey,
31209
+ width: 24,
31210
+ height: 24,
31211
+ imgScale: 1
31212
+ }), React__default.createElement(LootDetails, null, React__default.createElement(LootName, null, formatText(loot.itemBlueprintKey)), React__default.createElement(LootInfo, null, React__default.createElement(LootChance, null, formatRarity(loot.chance)), loot.quantityRange && React__default.createElement(LootQuantity, null, "x", loot.quantityRange[0], "-", loot.quantityRange[1]))));
31213
+ })), filteredLoots.length > ITEMS_PER_PAGE$1 && React__default.createElement(PaginationContainer$2, null, React__default.createElement(StyledPagination, {
31214
+ currentPage: currentLootPage,
31215
+ totalPages: totalLootPages,
31216
+ onPageChange: setCurrentLootPage
31217
+ }))), npc.entityEffects && npc.entityEffects.length > 0 && React__default.createElement(StyledCollapsible, {
31218
+ title: "Effects",
31219
+ defaultOpen: !isMobile
31220
+ }, React__default.createElement(EffectsList, null, npc.entityEffects.map(function (effect, index) {
31221
+ return React__default.createElement(EffectItem, {
31222
+ key: index
31223
+ }, formatText(effect));
31224
+ }))), npc.areaSpells && npc.areaSpells.length > 0 && React__default.createElement(StyledCollapsible, {
31225
+ title: "Spells",
31226
+ defaultOpen: !isMobile
31227
+ }, React__default.createElement(SpellsList, null, npc.areaSpells.map(function (spell, index) {
31228
+ return React__default.createElement(SpellItem, {
31229
+ key: index
31230
+ }, React__default.createElement(SpellName, null, formatText(spell.spellKey)), React__default.createElement(SpellDetails, null, "Power: ", React__default.createElement(SpellValue, null, formatText(spell.power)), React__default.createElement(Separator, null, "\u2022"), "Chance: ", React__default.createElement(SpellValue, null, spell.probability, "%")));
31231
+ }))));
31232
+ };
31233
+ var InfoSection = /*#__PURE__*/styled__default.div.withConfig({
31234
+ displayName: "InformationCenterNPCDetails__InfoSection",
31235
+ componentId: "sc-fdu3xl-0"
31236
+ })(["display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;background:rgba(255,255,255,0.05);padding:12px;border-radius:4px;"]);
31237
+ var InfoItem = /*#__PURE__*/styled__default.div.withConfig({
31238
+ displayName: "InformationCenterNPCDetails__InfoItem",
31239
+ componentId: "sc-fdu3xl-1"
31240
+ })(["display:flex;align-items:center;gap:8px;"]);
31241
+ var Label = /*#__PURE__*/styled__default.span.withConfig({
31242
+ displayName: "InformationCenterNPCDetails__Label",
31243
+ componentId: "sc-fdu3xl-2"
31244
+ })(["color:", ";font-size:0.5rem;opacity:0.8;"], uiColors.yellow);
31245
+ var Value = /*#__PURE__*/styled__default.span.withConfig({
31246
+ displayName: "InformationCenterNPCDetails__Value",
31247
+ componentId: "sc-fdu3xl-3"
31248
+ })(["color:", ";font-size:0.5rem;"], uiColors.white);
31249
+ var StyledCollapsible = /*#__PURE__*/styled__default(Collapsible).withConfig({
31250
+ displayName: "InformationCenterNPCDetails__StyledCollapsible",
31251
+ componentId: "sc-fdu3xl-4"
31252
+ })(["background:rgba(255,255,255,0.05);border-radius:4px;overflow:hidden;"]);
31253
+ var StatGrid = /*#__PURE__*/styled__default.div.withConfig({
31254
+ displayName: "InformationCenterNPCDetails__StatGrid",
31255
+ componentId: "sc-fdu3xl-5"
31256
+ })(["display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;padding:12px;"]);
31257
+ var StatItem = /*#__PURE__*/styled__default.div.withConfig({
31258
+ displayName: "InformationCenterNPCDetails__StatItem",
31259
+ componentId: "sc-fdu3xl-6"
31260
+ })(["color:", ";font-size:0.5rem;background:rgba(255,255,255,0.05);padding:8px;border-radius:4px;"], uiColors.white);
31261
+ var EffectsList = /*#__PURE__*/styled__default.div.withConfig({
31262
+ displayName: "InformationCenterNPCDetails__EffectsList",
31263
+ componentId: "sc-fdu3xl-7"
31264
+ })(["display:flex;flex-wrap:wrap;gap:8px;padding:12px;"]);
31265
+ var EffectItem = /*#__PURE__*/styled__default.div.withConfig({
31266
+ displayName: "InformationCenterNPCDetails__EffectItem",
31267
+ componentId: "sc-fdu3xl-8"
31268
+ })(["color:", ";font-size:0.5rem;background:rgba(255,255,255,0.1);padding:4px 8px;border-radius:4px;"], uiColors.white);
31269
+ var SpellsList = /*#__PURE__*/styled__default.div.withConfig({
31270
+ displayName: "InformationCenterNPCDetails__SpellsList",
31271
+ componentId: "sc-fdu3xl-9"
31272
+ })(["display:flex;flex-direction:column;gap:8px;padding:12px;"]);
31273
+ var SpellItem = /*#__PURE__*/styled__default.div.withConfig({
31274
+ displayName: "InformationCenterNPCDetails__SpellItem",
31275
+ componentId: "sc-fdu3xl-10"
31276
+ })(["display:flex;flex-direction:column;gap:4px;background:rgba(255,255,255,0.05);padding:8px;border-radius:4px;"]);
31277
+ var SpellName = /*#__PURE__*/styled__default.div.withConfig({
31278
+ displayName: "InformationCenterNPCDetails__SpellName",
31279
+ componentId: "sc-fdu3xl-11"
31280
+ })(["color:", ";font-size:0.5rem;"], uiColors.yellow);
31281
+ var SpellDetails = /*#__PURE__*/styled__default.div.withConfig({
31282
+ displayName: "InformationCenterNPCDetails__SpellDetails",
31283
+ componentId: "sc-fdu3xl-12"
31284
+ })(["display:flex;align-items:center;gap:8px;color:", ";font-size:0.45rem;opacity:0.8;"], uiColors.white);
31285
+ var SpellValue = /*#__PURE__*/styled__default.span.withConfig({
31286
+ displayName: "InformationCenterNPCDetails__SpellValue",
31287
+ componentId: "sc-fdu3xl-13"
31288
+ })(["color:", ";"], uiColors.yellow);
31289
+ var Separator = /*#__PURE__*/styled__default.span.withConfig({
31290
+ displayName: "InformationCenterNPCDetails__Separator",
31291
+ componentId: "sc-fdu3xl-14"
31292
+ })(["color:", ";opacity:0.5;"], uiColors.yellow);
31293
+ var LootSearchContainer = /*#__PURE__*/styled__default.div.withConfig({
31294
+ displayName: "InformationCenterNPCDetails__LootSearchContainer",
31295
+ componentId: "sc-fdu3xl-15"
31296
+ })(["padding:12px 12px 0;"]);
31297
+ var StyledSearchBar$1 = /*#__PURE__*/styled__default(SearchBar).withConfig({
31298
+ displayName: "InformationCenterNPCDetails__StyledSearchBar",
31299
+ componentId: "sc-fdu3xl-16"
31300
+ })(["width:100%;"]);
31301
+ var LootGrid = /*#__PURE__*/styled__default.div.withConfig({
31302
+ displayName: "InformationCenterNPCDetails__LootGrid",
31303
+ componentId: "sc-fdu3xl-17"
31304
+ })(["display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;padding:12px;"]);
31305
+ var LootItem = /*#__PURE__*/styled__default.div.withConfig({
31306
+ displayName: "InformationCenterNPCDetails__LootItem",
31307
+ componentId: "sc-fdu3xl-18"
31308
+ })(["display:flex;align-items:center;gap:8px;background:rgba(255,255,255,0.05);padding:8px;border-radius:4px;"]);
31309
+ var LootDetails = /*#__PURE__*/styled__default.div.withConfig({
31310
+ displayName: "InformationCenterNPCDetails__LootDetails",
31311
+ componentId: "sc-fdu3xl-19"
31312
+ })(["flex:1;display:flex;flex-direction:column;gap:4px;"]);
31313
+ var LootName = /*#__PURE__*/styled__default.div.withConfig({
31314
+ displayName: "InformationCenterNPCDetails__LootName",
31315
+ componentId: "sc-fdu3xl-20"
31316
+ })(["color:", ";font-size:0.5rem;"], uiColors.white);
31317
+ var LootInfo = /*#__PURE__*/styled__default.div.withConfig({
31318
+ displayName: "InformationCenterNPCDetails__LootInfo",
31319
+ componentId: "sc-fdu3xl-21"
31320
+ })(["display:flex;align-items:center;gap:8px;"]);
31321
+ var LootChance = /*#__PURE__*/styled__default.span.withConfig({
31322
+ displayName: "InformationCenterNPCDetails__LootChance",
31323
+ componentId: "sc-fdu3xl-22"
31324
+ })(["color:", ";font-size:0.45rem;"], uiColors.yellow);
31325
+ var LootQuantity = /*#__PURE__*/styled__default.span.withConfig({
31326
+ displayName: "InformationCenterNPCDetails__LootQuantity",
31327
+ componentId: "sc-fdu3xl-23"
31328
+ })(["color:", ";font-size:0.45rem;"], uiColors.lightGray);
31329
+ var PaginationContainer$2 = /*#__PURE__*/styled__default.div.withConfig({
31330
+ displayName: "InformationCenterNPCDetails__PaginationContainer",
31331
+ componentId: "sc-fdu3xl-24"
31332
+ })(["display:flex;justify-content:center;padding:12px;"]);
31333
+ var StyledPagination = /*#__PURE__*/styled__default(Pagination).withConfig({
31334
+ displayName: "InformationCenterNPCDetails__StyledPagination",
31335
+ componentId: "sc-fdu3xl-25"
31336
+ })(["font-size:0.6rem;"]);
31337
+
31338
+ var TooltipContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
31339
+ displayName: "BaseTooltip__TooltipContainer",
31340
+ componentId: "sc-1auz5ec-0"
31341
+ })(["background-color:rgba(0,0,0,0.95);border-radius:4px;padding:8px;font-family:'Press Start 2P',cursive;font-size:0.6rem;width:", ";border:1px solid ", ";box-shadow:0 2px 4px rgba(0,0,0,0.2);"], function (props) {
31342
+ return props.width || '280px';
31343
+ }, uiColors.darkGray);
31344
+ var TooltipTitle$1 = /*#__PURE__*/styled__default.div.withConfig({
31345
+ displayName: "BaseTooltip__TooltipTitle",
31346
+ componentId: "sc-1auz5ec-1"
31347
+ })(["color:", ";font-size:0.6rem;letter-spacing:0.5px;margin-bottom:8px;"], uiColors.yellow);
31348
+ var Section = /*#__PURE__*/styled__default.div.withConfig({
31349
+ displayName: "BaseTooltip__Section",
31350
+ componentId: "sc-1auz5ec-2"
31351
+ })(["margin-top:6px;"]);
31352
+ var SectionTitle = /*#__PURE__*/styled__default.div.withConfig({
31353
+ displayName: "BaseTooltip__SectionTitle",
31354
+ componentId: "sc-1auz5ec-3"
31355
+ })(["color:", ";font-size:0.5rem;margin-bottom:4px;opacity:0.7;border-bottom:1px solid rgba(255,255,255,0.1);padding-bottom:4px;"], uiColors.yellow);
31356
+ var StatsContainer = /*#__PURE__*/styled__default.div.withConfig({
31357
+ displayName: "BaseTooltip__StatsContainer",
31358
+ componentId: "sc-1auz5ec-4"
31359
+ })(["display:grid;grid-template-columns:repeat(2,1fr);gap:2px 8px;"]);
31360
+ var StatItem$1 = /*#__PURE__*/styled__default.div.withConfig({
31361
+ displayName: "BaseTooltip__StatItem",
31362
+ componentId: "sc-1auz5ec-5"
31363
+ })(["color:", ";font-size:0.5rem;text-align:left;"], uiColors.white);
31364
+ var BaseTooltip = function BaseTooltip(_ref) {
31365
+ var children = _ref.children,
31366
+ width = _ref.width;
31367
+ return React__default.createElement(TooltipContainer$1, {
31368
+ width: width
31369
+ }, children);
31370
+ };
31371
+
31372
+ var EffectsList$1 = /*#__PURE__*/styled__default.div.withConfig({
31373
+ displayName: "InformationCenterNPCTooltip__EffectsList",
31374
+ componentId: "sc-j2o39s-0"
31375
+ })(["display:flex;gap:8px;flex-wrap:wrap;"]);
31376
+ var EffectItem$1 = /*#__PURE__*/styled__default.span.withConfig({
31377
+ displayName: "InformationCenterNPCTooltip__EffectItem",
31378
+ componentId: "sc-j2o39s-1"
31379
+ })(["font-size:0.5rem;color:", ";background:rgba(255,255,255,0.1);padding:2px 6px;border-radius:4px;"], uiColors.white);
31380
+ var SpellList = /*#__PURE__*/styled__default.div.withConfig({
31381
+ displayName: "InformationCenterNPCTooltip__SpellList",
31382
+ componentId: "sc-j2o39s-2"
31383
+ })(["display:flex;flex-direction:column;gap:2px;"]);
31384
+ var SpellItem$1 = /*#__PURE__*/styled__default.div.withConfig({
31385
+ displayName: "InformationCenterNPCTooltip__SpellItem",
31386
+ componentId: "sc-j2o39s-3"
31387
+ })(["display:flex;align-items:center;justify-content:space-between;font-size:0.5rem;color:", ";background:rgba(255,255,255,0.05);padding:2px 6px;border-radius:4px;"], uiColors.white);
31388
+ var SpellInfo = /*#__PURE__*/styled__default.span.withConfig({
31389
+ displayName: "InformationCenterNPCTooltip__SpellInfo",
31390
+ componentId: "sc-j2o39s-4"
31391
+ })(["color:", ";margin-left:8px;opacity:0.8;"], uiColors.yellow);
31392
+ var LootList = /*#__PURE__*/styled__default.div.withConfig({
31393
+ displayName: "InformationCenterNPCTooltip__LootList",
31394
+ componentId: "sc-j2o39s-5"
31395
+ })(["display:flex;flex-direction:column;gap:2px;"]);
31396
+ var LootItem$1 = /*#__PURE__*/styled__default.div.withConfig({
31397
+ displayName: "InformationCenterNPCTooltip__LootItem",
31398
+ componentId: "sc-j2o39s-6"
31399
+ })(["display:flex;align-items:center;gap:4px;font-size:0.5rem;background:rgba(255,255,255,0.05);padding:4px 6px;border-radius:4px;.sprite-from-atlas-img{top:0px;left:0px;}"]);
31400
+ var LootName$1 = /*#__PURE__*/styled__default.span.withConfig({
31401
+ displayName: "InformationCenterNPCTooltip__LootName",
31402
+ componentId: "sc-j2o39s-7"
31403
+ })(["color:", ";flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-left:4px;"], uiColors.white);
31404
+ var LootChance$1 = /*#__PURE__*/styled__default.span.withConfig({
31405
+ displayName: "InformationCenterNPCTooltip__LootChance",
31406
+ componentId: "sc-j2o39s-8"
31407
+ })(["color:", ";font-size:0.45rem;text-transform:lowercase;opacity:0.8;"], uiColors.yellow);
31408
+ var MoreIndicator = /*#__PURE__*/styled__default.div.withConfig({
31409
+ displayName: "InformationCenterNPCTooltip__MoreIndicator",
31410
+ componentId: "sc-j2o39s-9"
31411
+ })(["color:", ";font-size:0.45rem;text-align:center;margin-top:2px;opacity:0.7;"], uiColors.yellow);
31412
+ var formatText = function formatText(text) {
31413
+ if (typeof text === 'number') {
31414
+ return text.toString();
31415
+ }
31416
+ return text.toString().replace(/([A-Z])/g, ' $1').trim().replace(/([A-Z]+)([A-Z][a-z])/g, '$1 $2').replace(/\s+/g, ' ');
31417
+ };
31418
+ var formatRarity = function formatRarity(rarity) {
31419
+ switch (rarity) {
31420
+ case 0.5:
31421
+ return 'Very Rare';
31422
+ case 1:
31423
+ return 'Rare';
31424
+ case 10:
31425
+ return 'Uncommon';
31426
+ case 15:
31427
+ return 'Semi Common';
31428
+ case 20:
31429
+ return 'Common';
31430
+ case 35:
31431
+ return 'Very Common';
31432
+ default:
31433
+ return 'Unknown';
31434
+ }
31435
+ };
31436
+ var InformationCenterNPCTooltip = function InformationCenterNPCTooltip(_ref) {
31437
+ var _npc$skills$strength, _npc$skills$dexterity, _npc$skills$resistanc;
31438
+ var npc = _ref.npc,
31439
+ itemsAtlasJSON = _ref.itemsAtlasJSON,
31440
+ itemsAtlasIMG = _ref.itemsAtlasIMG;
31441
+ return React__default.createElement(BaseTooltip, null, React__default.createElement(TooltipTitle$1, null, npc.name), React__default.createElement(StatsContainer, null, React__default.createElement(StatItem$1, null, "HP: ", npc.baseHealth), React__default.createElement(StatItem$1, null, "LVL: ", npc.skills.level), React__default.createElement(StatItem$1, null, "STR: ", ((_npc$skills$strength = npc.skills.strength) == null ? void 0 : _npc$skills$strength.level) || '-'), React__default.createElement(StatItem$1, null, "DEX: ", ((_npc$skills$dexterity = npc.skills.dexterity) == null ? void 0 : _npc$skills$dexterity.level) || '-'), React__default.createElement(StatItem$1, null, "RES: ", ((_npc$skills$resistanc = npc.skills.resistance) == null ? void 0 : _npc$skills$resistanc.level) || '-'), React__default.createElement(StatItem$1, null, "SPD: ", formatText(npc.speed))), npc.entityEffects && npc.entityEffects.length > 0 && React__default.createElement(Section, null, React__default.createElement(SectionTitle, null, "Effects"), React__default.createElement(EffectsList$1, null, npc.entityEffects.map(function (effect) {
31442
+ return React__default.createElement(EffectItem$1, {
31443
+ key: effect
31444
+ }, formatText(effect));
31445
+ }))), npc.areaSpells && npc.areaSpells.length > 0 && React__default.createElement(Section, null, React__default.createElement(SectionTitle, null, "Spells"), React__default.createElement(SpellList, null, npc.areaSpells.map(function (spell) {
31446
+ return React__default.createElement(SpellItem$1, {
31447
+ key: spell.spellKey
31448
+ }, formatText(spell.spellKey), React__default.createElement(SpellInfo, null, formatText(spell.power), ", ", spell.probability, "%"));
31449
+ }))), npc.loots && npc.loots.length > 0 && React__default.createElement(Section, null, React__default.createElement(SectionTitle, null, "Possible Loot"), React__default.createElement(LootList, null, npc.loots.slice(0, 4).map(function (loot) {
31450
+ return React__default.createElement(LootItem$1, {
31451
+ key: loot.itemBlueprintKey
31452
+ }, React__default.createElement(SpriteFromAtlas, {
31453
+ atlasIMG: itemsAtlasIMG,
31454
+ atlasJSON: itemsAtlasJSON,
31455
+ spriteKey: loot.itemBlueprintKey,
31456
+ imgScale: 1
31457
+ }), React__default.createElement(LootName$1, null, formatText(loot.itemBlueprintKey)), React__default.createElement(LootChance$1, null, formatRarity(loot.chance)));
31458
+ }), npc.loots.length > 4 && React__default.createElement(MoreIndicator, null, "..."))));
31459
+ };
31460
+
31461
+ var InformationCenterBestiarySection = function InformationCenterBestiarySection(_ref) {
31462
+ var bestiaryItems = _ref.bestiaryItems,
31463
+ itemsAtlasJSON = _ref.itemsAtlasJSON,
31464
+ itemsAtlasIMG = _ref.itemsAtlasIMG,
31465
+ entitiesAtlasJSON = _ref.entitiesAtlasJSON,
31466
+ entitiesAtlasIMG = _ref.entitiesAtlasIMG,
31467
+ initialSearchQuery = _ref.initialSearchQuery,
31468
+ tabId = _ref.tabId;
31469
+ var _useState = React.useState(initialSearchQuery),
31470
+ searchQuery = _useState[0],
31471
+ setSearchQuery = _useState[1];
31472
+ var _useState2 = React.useState(null),
31473
+ tooltipData = _useState2[0],
31474
+ setTooltipData = _useState2[1];
31475
+ var _useState3 = React.useState(null),
31476
+ selectedMonster = _useState3[0],
31477
+ setSelectedMonster = _useState3[1];
31478
+ var _useState4 = React.useState('ontouchstart' in window),
31479
+ isTouchDevice = _useState4[0];
31480
+ var handleMouseEnter = function handleMouseEnter(monster, event) {
31481
+ if (!isTouchDevice && !selectedMonster) {
31482
+ setTooltipData({
31483
+ npc: monster,
31484
+ position: {
31485
+ x: event.clientX,
31486
+ y: event.clientY
31487
+ }
31488
+ });
31489
+ }
31490
+ };
31491
+ var handleMouseLeave = function handleMouseLeave() {
31492
+ if (!isTouchDevice) {
31493
+ setTooltipData(null);
31494
+ }
31495
+ };
31496
+ var handleMouseMove = function handleMouseMove(event) {
31497
+ if (!isTouchDevice && tooltipData) {
31498
+ setTooltipData(_extends({}, tooltipData, {
31499
+ position: {
31500
+ x: event.clientX,
31501
+ y: event.clientY
31502
+ }
31503
+ }));
31504
+ }
31505
+ };
31506
+ var handleTouchStart = function handleTouchStart(monster, event) {
31507
+ if (isTouchDevice) {
31508
+ event.preventDefault();
31509
+ var touch = event.touches[0];
31510
+ if ((tooltipData == null ? void 0 : tooltipData.npc.id) === monster.id) {
31511
+ setTooltipData(null);
31512
+ } else {
31513
+ setTooltipData({
31514
+ npc: monster,
31515
+ position: {
31516
+ x: touch.clientX,
31517
+ y: touch.clientY
31518
+ }
31519
+ });
31520
+ }
31521
+ }
31522
+ };
31523
+ var handleMonsterClick = function handleMonsterClick(monster) {
31524
+ setSelectedMonster(monster);
31525
+ setTooltipData(null);
31526
+ };
31527
+ var renderItem = function renderItem(item) {
31528
+ return React__default.createElement(InformationCenterCell, {
31529
+ key: item.id,
31530
+ name: item.name,
31531
+ spriteKey: item.key,
31532
+ atlasJSON: entitiesAtlasJSON,
31533
+ atlasIMG: entitiesAtlasIMG,
31534
+ onClick: function onClick() {
31535
+ return handleMonsterClick(item);
31536
+ },
31537
+ onMouseEnter: function onMouseEnter(e) {
31538
+ return handleMouseEnter(item, e);
31539
+ },
31540
+ onMouseLeave: handleMouseLeave,
31541
+ onMouseMove: handleMouseMove,
31542
+ onTouchStart: function onTouchStart(e) {
31543
+ return handleTouchStart(item, e);
31544
+ }
31545
+ });
31546
+ };
31547
+ var filteredItems = bestiaryItems.filter(function (item) {
31548
+ return item.name.toLowerCase().includes(searchQuery.toLowerCase());
31549
+ });
31550
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement(PaginatedContent, {
31551
+ items: filteredItems,
31552
+ renderItem: renderItem,
31553
+ emptyMessage: "No monsters found",
31554
+ tabId: tabId,
31555
+ layout: "grid",
31556
+ searchOptions: {
31557
+ value: searchQuery,
31558
+ onChange: setSearchQuery,
31559
+ placeholder: 'Search monsters...'
31560
+ },
31561
+ itemHeight: "180px"
31562
+ }), tooltipData && React__default.createElement(Portal, null, React__default.createElement(TooltipWrapper, {
31563
+ style: {
31564
+ position: 'fixed',
31565
+ left: tooltipData.position.x + 10,
31566
+ top: tooltipData.position.y + 10
31567
+ }
31568
+ }, React__default.createElement(InformationCenterNPCTooltip, {
31569
+ npc: tooltipData.npc,
31570
+ itemsAtlasJSON: itemsAtlasJSON,
31571
+ itemsAtlasIMG: itemsAtlasIMG
31572
+ }))), selectedMonster && React__default.createElement(InformationCenterNPCDetails, {
31573
+ npc: selectedMonster,
31574
+ itemsAtlasJSON: itemsAtlasJSON,
31575
+ itemsAtlasIMG: itemsAtlasIMG,
31576
+ entitiesAtlasJSON: entitiesAtlasJSON,
31577
+ entitiesAtlasIMG: entitiesAtlasIMG,
31578
+ onBack: function onBack() {
31579
+ return setSelectedMonster(null);
31580
+ }
31581
+ }));
31582
+ };
31583
+ var TooltipWrapper = /*#__PURE__*/styled__default.div.withConfig({
31584
+ displayName: "InformationCenterBestiarySection__TooltipWrapper",
31585
+ componentId: "sc-e3h0p2-0"
31586
+ })(["position:fixed;z-index:1000;pointer-events:none;width:300px;"]);
31587
+
31588
+ var InformationCenterFAQSection = function InformationCenterFAQSection(_ref) {
31589
+ var faqItems = _ref.faqItems,
31590
+ initialSearchQuery = _ref.initialSearchQuery,
31591
+ tabId = _ref.tabId;
31592
+ var _useState = React.useState(initialSearchQuery),
31593
+ searchQuery = _useState[0],
31594
+ setSearchQuery = _useState[1];
31595
+ React.useEffect(function () {
31596
+ setSearchQuery(initialSearchQuery);
31597
+ }, [initialSearchQuery]);
31598
+ var filteredFaqs = React.useMemo(function () {
31599
+ if (!searchQuery) return faqItems;
31600
+ return faqItems.filter(function (faq) {
31601
+ return faq.question.toLowerCase().includes(searchQuery.toLowerCase()) || faq.answer.toLowerCase().includes(searchQuery.toLowerCase());
31602
+ });
31603
+ }, [searchQuery, faqItems]);
31604
+ var renderItem = function renderItem(item) {
31605
+ return React__default.createElement(StyledCollapsible$1, {
31606
+ title: item.question
31607
+ }, React__default.createElement(Answer$1, null, item.answer));
31608
+ };
31609
+ return React__default.createElement(Container$q, null, React__default.createElement(SearchHeader, {
31610
+ searchOptions: {
31611
+ value: searchQuery,
31612
+ onChange: setSearchQuery,
31613
+ placeholder: 'Search FAQs...'
31614
+ }
31615
+ }), React__default.createElement(PaginatedContent, {
31616
+ items: filteredFaqs,
31617
+ renderItem: renderItem,
31618
+ emptyMessage: "No FAQ items found",
31619
+ tabId: tabId,
31620
+ layout: "list",
31621
+ itemsPerPage: 10
31622
+ }));
31623
+ };
31624
+ var Container$q = /*#__PURE__*/styled__default.div.withConfig({
31625
+ displayName: "InformationCenterFaqSection__Container",
31626
+ componentId: "sc-ofmaa9-0"
31627
+ })(["display:flex;flex-direction:column;gap:1rem;width:100%;"]);
31628
+ var StyledCollapsible$1 = /*#__PURE__*/styled__default(Collapsible).withConfig({
31629
+ displayName: "InformationCenterFaqSection__StyledCollapsible",
31630
+ componentId: "sc-ofmaa9-1"
31631
+ })(["margin-bottom:0.5rem;&:last-child{margin-bottom:0;}"]);
31632
+ var Answer$1 = /*#__PURE__*/styled__default.p.withConfig({
31633
+ displayName: "InformationCenterFaqSection__Answer",
31634
+ componentId: "sc-ofmaa9-2"
31635
+ })(["font-size:0.9rem;color:#ffffff;margin:0;line-height:1.5;"]);
31636
+
31637
+ var InformationCenterItemDetails = function InformationCenterItemDetails(_ref) {
31638
+ var item = _ref.item,
31639
+ itemsAtlasJSON = _ref.itemsAtlasJSON,
31640
+ itemsAtlasIMG = _ref.itemsAtlasIMG,
31641
+ droppedBy = _ref.droppedBy,
31642
+ onBack = _ref.onBack;
31643
+ var isMobile = shared.isMobileOrTablet();
31644
+ var renderAllowedSlots = function renderAllowedSlots() {
31645
+ var _item$allowedEquipSlo;
31646
+ if (!((_item$allowedEquipSlo = item.allowedEquipSlotType) != null && _item$allowedEquipSlo.length)) return null;
31647
+ return React__default.createElement(InfoItem$1, null, React__default.createElement(Label$1, null, "Equip Slots:"), React__default.createElement(Value$1, null, item.allowedEquipSlotType.join(', ')));
31648
+ };
31649
+ var renderRequirements = function renderRequirements() {
31650
+ if (!item.minRequirements) return null;
31651
+ return React__default.createElement(StyledCollapsible$2, {
31652
+ title: "Requirements",
31653
+ defaultOpen: !isMobile
31654
+ }, React__default.createElement(RequirementsGrid, null, item.minRequirements.level && React__default.createElement(RequirementItem, null, React__default.createElement(Label$1, null, "Level:"), React__default.createElement(Value$1, null, item.minRequirements.level)), item.minRequirements.skill && React__default.createElement(RequirementItem, null, React__default.createElement(Label$1, null, item.minRequirements.skill.name, ":"), React__default.createElement(Value$1, null, item.minRequirements.skill.level))));
31655
+ };
31656
+ return React__default.createElement(BaseInformationDetails, {
31657
+ name: item.name,
31658
+ spriteKey: item.texturePath,
31659
+ atlasJSON: itemsAtlasJSON,
31660
+ atlasIMG: itemsAtlasIMG,
31661
+ onBack: onBack
31662
+ }, React__default.createElement(InfoSection$1, null, React__default.createElement(InfoItem$1, null, React__default.createElement(Label$1, null, "Type:"), React__default.createElement(Value$1, null, item.type)), React__default.createElement(InfoItem$1, null, React__default.createElement(Label$1, null, "Subtype:"), React__default.createElement(Value$1, null, item.subType)), React__default.createElement(InfoItem$1, null, React__default.createElement(Label$1, null, "Tier:"), React__default.createElement(Value$1, null, item.tier)), React__default.createElement(InfoItem$1, null, React__default.createElement(Label$1, null, "Rarity:"), React__default.createElement(Value$1, null, item.rarity)), renderAllowedSlots()), React__default.createElement(StyledCollapsible$2, {
31663
+ title: "Description",
31664
+ defaultOpen: !isMobile
31665
+ }, React__default.createElement(Description$2, null, item.description || 'No description available.')), React__default.createElement(StyledCollapsible$2, {
31666
+ title: "Stats",
31667
+ defaultOpen: !isMobile
31668
+ }, React__default.createElement(StatGrid$1, null, React__default.createElement(StatItem$2, null, "Weight: ", item.weight), React__default.createElement(StatItem$2, null, "Stack Size: ", item.maxStackSize), item.rangeType && React__default.createElement(StatItem$2, null, "Range Type: ", item.rangeType), item.basePrice > 0 && React__default.createElement(StatItem$2, null, "Base Price: ", item.basePrice))), renderRequirements(), item.entityEffects && item.entityEffects.length > 0 && React__default.createElement(StyledCollapsible$2, {
31669
+ title: "Effects",
31670
+ defaultOpen: !isMobile
31671
+ }, React__default.createElement(EffectsList$2, null, item.entityEffects.map(function (effect, index) {
31672
+ return React__default.createElement(EffectItem$2, {
31673
+ key: index
31674
+ }, effect, item.entityEffectChance && React__default.createElement(EffectChance, null, "(", item.entityEffectChance, "%)"));
31675
+ })), item.usableEffectDescription && React__default.createElement(EffectDescription, null, item.usableEffectDescription)), item.equippedBuff && item.equippedBuff.length > 0 && React__default.createElement(StyledCollapsible$2, {
31676
+ title: "Equipped Buffs",
31677
+ defaultOpen: !isMobile
31678
+ }, React__default.createElement(BuffsList, null, item.equippedBuff.map(function (buff, index) {
31679
+ return React__default.createElement(BuffItem, {
31680
+ key: index
31681
+ }, React__default.createElement(BuffName, null, buff.trait), React__default.createElement(BuffValue, null, "+", buff.buffPercentage, "%"));
31682
+ })), item.equippedBuffDescription && React__default.createElement(BuffDescription, null, item.equippedBuffDescription)), droppedBy.length > 0 && React__default.createElement(StyledCollapsible$2, {
31683
+ title: "Dropped By",
31684
+ defaultOpen: !isMobile
31685
+ }, React__default.createElement(DropList, null, droppedBy.map(function (npc) {
31686
+ var loot = npc.loots.find(function (l) {
31687
+ return l.itemBlueprintKey === item.key;
31688
+ });
31689
+ return React__default.createElement(DropItem, {
31690
+ key: npc.id
31691
+ }, React__default.createElement(NPCName, null, npc.name), React__default.createElement(DropRate, null, loot == null ? void 0 : loot.chance, "%"));
31692
+ }))));
31693
+ };
31694
+ var InfoSection$1 = /*#__PURE__*/styled__default.div.withConfig({
31695
+ displayName: "InformationCenterItemDetails__InfoSection",
31696
+ componentId: "sc-zwf6pb-0"
31697
+ })(["display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;background:rgba(255,255,255,0.05);padding:12px;border-radius:4px;"]);
31698
+ var InfoItem$1 = /*#__PURE__*/styled__default.div.withConfig({
31699
+ displayName: "InformationCenterItemDetails__InfoItem",
31700
+ componentId: "sc-zwf6pb-1"
31701
+ })(["display:flex;align-items:center;gap:8px;"]);
31702
+ var Label$1 = /*#__PURE__*/styled__default.span.withConfig({
31703
+ displayName: "InformationCenterItemDetails__Label",
31704
+ componentId: "sc-zwf6pb-2"
31705
+ })(["color:", ";font-size:0.5rem;opacity:0.8;"], uiColors.yellow);
31706
+ var Value$1 = /*#__PURE__*/styled__default.span.withConfig({
31707
+ displayName: "InformationCenterItemDetails__Value",
31708
+ componentId: "sc-zwf6pb-3"
31709
+ })(["color:", ";font-size:0.5rem;"], uiColors.white);
31710
+ var StyledCollapsible$2 = /*#__PURE__*/styled__default(Collapsible).withConfig({
31711
+ displayName: "InformationCenterItemDetails__StyledCollapsible",
31712
+ componentId: "sc-zwf6pb-4"
31713
+ })(["background:rgba(255,255,255,0.05);border-radius:4px;overflow:hidden;"]);
31714
+ var Description$2 = /*#__PURE__*/styled__default.p.withConfig({
31715
+ displayName: "InformationCenterItemDetails__Description",
31716
+ componentId: "sc-zwf6pb-5"
31717
+ })(["color:", ";font-size:0.5rem;margin:0;padding:12px;line-height:1.5;"], uiColors.white);
31718
+ var StatGrid$1 = /*#__PURE__*/styled__default.div.withConfig({
31719
+ displayName: "InformationCenterItemDetails__StatGrid",
31720
+ componentId: "sc-zwf6pb-6"
31721
+ })(["display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;padding:12px;"]);
31722
+ var StatItem$2 = /*#__PURE__*/styled__default.div.withConfig({
31723
+ displayName: "InformationCenterItemDetails__StatItem",
31724
+ componentId: "sc-zwf6pb-7"
31725
+ })(["color:", ";font-size:0.5rem;background:rgba(255,255,255,0.05);padding:8px;border-radius:4px;"], uiColors.white);
31726
+ var EffectsList$2 = /*#__PURE__*/styled__default.div.withConfig({
31727
+ displayName: "InformationCenterItemDetails__EffectsList",
31728
+ componentId: "sc-zwf6pb-8"
31729
+ })(["display:flex;flex-wrap:wrap;gap:8px;padding:12px;"]);
31730
+ var EffectItem$2 = /*#__PURE__*/styled__default.div.withConfig({
31731
+ displayName: "InformationCenterItemDetails__EffectItem",
31732
+ componentId: "sc-zwf6pb-9"
31733
+ })(["display:flex;align-items:center;gap:4px;color:", ";font-size:0.5rem;background:rgba(255,255,255,0.1);padding:4px 8px;border-radius:4px;"], uiColors.white);
31734
+ var EffectChance = /*#__PURE__*/styled__default.span.withConfig({
31735
+ displayName: "InformationCenterItemDetails__EffectChance",
31736
+ componentId: "sc-zwf6pb-10"
31737
+ })(["color:", ";opacity:0.8;"], uiColors.yellow);
31738
+ var BuffsList = /*#__PURE__*/styled__default.div.withConfig({
31739
+ displayName: "InformationCenterItemDetails__BuffsList",
31740
+ componentId: "sc-zwf6pb-11"
31741
+ })(["display:flex;flex-direction:column;gap:8px;padding:12px;"]);
31742
+ var BuffItem = /*#__PURE__*/styled__default.div.withConfig({
31743
+ displayName: "InformationCenterItemDetails__BuffItem",
31744
+ componentId: "sc-zwf6pb-12"
31745
+ })(["display:flex;justify-content:space-between;align-items:center;background:rgba(255,255,255,0.05);padding:8px;border-radius:4px;"]);
31746
+ var BuffName = /*#__PURE__*/styled__default.span.withConfig({
31747
+ displayName: "InformationCenterItemDetails__BuffName",
31748
+ componentId: "sc-zwf6pb-13"
31749
+ })(["color:", ";font-size:0.5rem;"], uiColors.white);
31750
+ var BuffValue = /*#__PURE__*/styled__default.span.withConfig({
31751
+ displayName: "InformationCenterItemDetails__BuffValue",
31752
+ componentId: "sc-zwf6pb-14"
31753
+ })(["color:", ";font-size:0.5rem;"], uiColors.yellow);
31754
+ var BuffDescription = /*#__PURE__*/styled__default.p.withConfig({
31755
+ displayName: "InformationCenterItemDetails__BuffDescription",
31756
+ componentId: "sc-zwf6pb-15"
31757
+ })(["color:", ";font-size:0.45rem;margin:0;padding:0 12px 12px;font-style:italic;"], uiColors.lightGray);
31758
+ var DropList = /*#__PURE__*/styled__default.div.withConfig({
31759
+ displayName: "InformationCenterItemDetails__DropList",
31760
+ componentId: "sc-zwf6pb-16"
31761
+ })(["display:flex;flex-direction:column;gap:0.5rem;padding:12px;"]);
31762
+ var DropItem = /*#__PURE__*/styled__default.div.withConfig({
31763
+ displayName: "InformationCenterItemDetails__DropItem",
31764
+ componentId: "sc-zwf6pb-17"
31765
+ })(["display:flex;justify-content:space-between;align-items:center;padding:0.5rem;background:rgba(255,255,255,0.05);border-radius:4px;"]);
31766
+ var NPCName = /*#__PURE__*/styled__default.span.withConfig({
31767
+ displayName: "InformationCenterItemDetails__NPCName",
31768
+ componentId: "sc-zwf6pb-18"
31769
+ })(["color:", ";font-size:0.5rem;"], uiColors.white);
31770
+ var DropRate = /*#__PURE__*/styled__default.span.withConfig({
31771
+ displayName: "InformationCenterItemDetails__DropRate",
31772
+ componentId: "sc-zwf6pb-19"
31773
+ })(["color:", ";font-size:0.5rem;"], uiColors.yellow);
31774
+ var RequirementsGrid = /*#__PURE__*/styled__default.div.withConfig({
31775
+ displayName: "InformationCenterItemDetails__RequirementsGrid",
31776
+ componentId: "sc-zwf6pb-20"
31777
+ })(["display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;padding:12px;"]);
31778
+ var RequirementItem = /*#__PURE__*/styled__default.div.withConfig({
31779
+ displayName: "InformationCenterItemDetails__RequirementItem",
31780
+ componentId: "sc-zwf6pb-21"
31781
+ })(["display:flex;align-items:center;gap:8px;background:rgba(255,255,255,0.05);padding:8px;border-radius:4px;"]);
31782
+ var EffectDescription = /*#__PURE__*/styled__default.p.withConfig({
31783
+ displayName: "InformationCenterItemDetails__EffectDescription",
31784
+ componentId: "sc-zwf6pb-22"
31785
+ })(["color:", ";font-size:0.45rem;margin:8px 0 0;padding:0 12px;font-style:italic;"], uiColors.lightGray);
31786
+
31787
+ var ItemHeader$1 = /*#__PURE__*/styled__default.div.withConfig({
31788
+ displayName: "InformationCenterItemTooltip__ItemHeader",
31789
+ componentId: "sc-1ecf9mj-0"
31790
+ })(["display:flex;align-items:center;gap:8px;"]);
31791
+ var Description$3 = /*#__PURE__*/styled__default.div.withConfig({
31792
+ displayName: "InformationCenterItemTooltip__Description",
31793
+ componentId: "sc-1ecf9mj-1"
31794
+ })(["color:", ";font-size:0.5rem;line-height:1.4;margin-top:8px;opacity:0.8;"], uiColors.white);
31795
+ var RarityText = /*#__PURE__*/styled__default.span.withConfig({
31796
+ displayName: "InformationCenterItemTooltip__RarityText",
31797
+ componentId: "sc-1ecf9mj-2"
31798
+ })(["color:", ";font-size:0.5rem;"], function (props) {
31799
+ switch (props.rarity.toLowerCase()) {
31800
+ case 'legendary':
31801
+ return '#ff8c00';
31802
+ case 'rare':
31803
+ return '#0070dd';
31804
+ case 'uncommon':
31805
+ return '#1eff00';
31806
+ default:
31807
+ return '#ffffff';
31808
+ }
31809
+ });
31810
+ var InformationCenterItemTooltip = function InformationCenterItemTooltip(_ref) {
31811
+ var item = _ref.item;
31812
+ return React__default.createElement(BaseTooltip, null, React__default.createElement(ItemHeader$1, null, React__default.createElement(TooltipTitle$1, null, item.name)), React__default.createElement(Description$3, null, item.description), React__default.createElement(Section, null, React__default.createElement(SectionTitle, null, "Details"), React__default.createElement(StatsContainer, null, React__default.createElement(StatItem$1, null, "Type: ", item.type), React__default.createElement(StatItem$1, null, "Weight: ", item.weight), item.attack !== undefined && React__default.createElement(StatItem$1, null, "Attack: ", item.attack), item.defense !== undefined && React__default.createElement(StatItem$1, null, "Defense: ", item.defense), item.tier !== undefined && React__default.createElement(StatItem$1, null, "Tier: ", item.tier), item.rangeType && React__default.createElement(StatItem$1, null, "Range: ", item.rangeType))), React__default.createElement(Section, null, React__default.createElement(SectionTitle, null, "Market"), React__default.createElement(StatsContainer, null, React__default.createElement(StatItem$1, null, "Price: ", item.basePrice), item.rarity && React__default.createElement(StatItem$1, null, "Rarity:", ' ', React__default.createElement(RarityText, {
31813
+ rarity: item.rarity
31814
+ }, item.rarity)))));
31815
+ };
31816
+
31817
+ var TOOLTIP_OFFSET = 20;
31818
+ var InformationCenterItemsSection = function InformationCenterItemsSection(_ref) {
31819
+ var items = _ref.items,
31820
+ bestiaryItems = _ref.bestiaryItems,
31821
+ itemsAtlasJSON = _ref.itemsAtlasJSON,
31822
+ itemsAtlasIMG = _ref.itemsAtlasIMG,
31823
+ initialSearchQuery = _ref.initialSearchQuery,
31824
+ tabId = _ref.tabId;
31825
+ var _useState = React.useState(initialSearchQuery),
31826
+ searchQuery = _useState[0],
31827
+ setSearchQuery = _useState[1];
31828
+ var _useState2 = React.useState('all'),
31829
+ selectedItemCategory = _useState2[0],
31830
+ setSelectedItemCategory = _useState2[1];
31831
+ var _useState3 = React.useState(null),
31832
+ hoveredItem = _useState3[0],
31833
+ setHoveredItem = _useState3[1];
31834
+ var _useState4 = React.useState({
31835
+ x: 0,
31836
+ y: 0
31837
+ }),
31838
+ tooltipPosition = _useState4[0],
31839
+ setTooltipPosition = _useState4[1];
31840
+ var _useState5 = React.useState(null),
31841
+ selectedItem = _useState5[0],
31842
+ setSelectedItem = _useState5[1];
31843
+ var itemCategoryOptions = [{
31844
+ id: 0,
31845
+ value: 'all',
31846
+ option: 'All Items'
31847
+ }, {
31848
+ id: 1,
31849
+ value: shared.ItemType.Consumable,
31850
+ option: 'Consumables'
31851
+ }, {
31852
+ id: 2,
31853
+ value: shared.ItemType.Weapon,
31854
+ option: 'Weapons'
31855
+ }, {
31856
+ id: 3,
31857
+ value: shared.ItemType.Armor,
31858
+ option: 'Armor'
31859
+ }];
31860
+ var filteredItems = items.filter(function (item) {
31861
+ return (selectedItemCategory === 'all' || item.type === selectedItemCategory) && item.name.toLowerCase().includes(searchQuery.toLowerCase());
31862
+ });
31863
+ var getDroppedByNPCs = function getDroppedByNPCs(itemId, npcs) {
31864
+ return npcs.filter(function (npc) {
31865
+ var _npc$loots;
31866
+ return (_npc$loots = npc.loots) == null ? void 0 : _npc$loots.some(function (loot) {
31867
+ return loot.itemBlueprintKey === itemId;
31868
+ });
31869
+ }) || [];
31870
+ };
31871
+ var handleMouseEnter = function handleMouseEnter(e, item) {
31872
+ setTooltipPosition({
31873
+ x: e.clientX + TOOLTIP_OFFSET,
31874
+ y: e.clientY
31875
+ });
31876
+ setHoveredItem(item);
31877
+ };
31878
+ var handleMouseMove = function handleMouseMove(e) {
31879
+ if (hoveredItem) {
31880
+ setTooltipPosition({
31881
+ x: e.clientX + TOOLTIP_OFFSET,
31882
+ y: e.clientY
31883
+ });
31884
+ }
31885
+ };
31886
+ var handleMouseLeave = function handleMouseLeave() {
31887
+ setHoveredItem(null);
31888
+ };
31889
+ var handleTouchStart = function handleTouchStart(e, item) {
31890
+ var touch = e.touches[0];
31891
+ setTooltipPosition({
31892
+ x: touch.clientX + TOOLTIP_OFFSET,
31893
+ y: touch.clientY
31894
+ });
31895
+ setHoveredItem(item);
31896
+ };
31897
+ var handleItemClick = function handleItemClick(item) {
31898
+ setSelectedItem(item);
31899
+ setHoveredItem(null);
31900
+ };
31901
+ var renderItem = function renderItem(item) {
31902
+ return React__default.createElement(InformationCenterCell, {
31903
+ key: item.key,
31904
+ name: item.name,
31905
+ spriteKey: item.texturePath,
31906
+ atlasJSON: itemsAtlasJSON,
31907
+ atlasIMG: itemsAtlasIMG,
31908
+ onMouseEnter: function onMouseEnter(e) {
31909
+ return handleMouseEnter(e, item);
31910
+ },
31911
+ onMouseMove: handleMouseMove,
31912
+ onMouseLeave: handleMouseLeave,
31913
+ onTouchStart: function onTouchStart(e) {
31914
+ return handleTouchStart(e, item);
31915
+ },
31916
+ onClick: function onClick() {
31917
+ return handleItemClick(item);
31918
+ }
31919
+ });
31920
+ };
31921
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement(PaginatedContent, {
31922
+ items: filteredItems,
31923
+ renderItem: renderItem,
31924
+ emptyMessage: "No items found",
31925
+ filterOptions: {
31926
+ options: itemCategoryOptions,
31927
+ selectedOption: selectedItemCategory,
31928
+ onOptionChange: setSelectedItemCategory
31929
+ },
31930
+ searchOptions: {
31931
+ value: searchQuery,
31932
+ onChange: setSearchQuery,
31933
+ placeholder: 'Search items...'
31934
+ },
31935
+ dependencies: [selectedItemCategory],
31936
+ tabId: tabId,
31937
+ layout: "grid",
31938
+ itemHeight: "180px"
31939
+ }), hoveredItem && React__default.createElement(TooltipWrapper$1, {
31940
+ style: {
31941
+ top: tooltipPosition.y,
31942
+ left: tooltipPosition.x
31943
+ }
31944
+ }, React__default.createElement(InformationCenterItemTooltip, {
31945
+ item: hoveredItem
31946
+ })), selectedItem && React__default.createElement(InformationCenterItemDetails, {
31947
+ item: selectedItem,
31948
+ itemsAtlasJSON: itemsAtlasJSON,
31949
+ itemsAtlasIMG: itemsAtlasIMG,
31950
+ droppedBy: getDroppedByNPCs(selectedItem.key, bestiaryItems),
31951
+ onBack: function onBack() {
31952
+ return setSelectedItem(null);
31953
+ }
31954
+ }));
31955
+ };
31956
+ var TooltipWrapper$1 = /*#__PURE__*/styled__default.div.withConfig({
31957
+ displayName: "InformationCenterItemsSection__TooltipWrapper",
31958
+ componentId: "sc-1wmpapt-0"
31959
+ })(["position:fixed;z-index:1000;pointer-events:none;transition:transform 0.1s ease;"]);
31960
+
31961
+ var InformationCenterTutorialsSection = function InformationCenterTutorialsSection(_ref) {
31962
+ var videoGuides = _ref.videoGuides,
31963
+ initialSearchQuery = _ref.initialSearchQuery,
31964
+ tabId = _ref.tabId;
31965
+ var _useState = React.useState(initialSearchQuery),
31966
+ searchQuery = _useState[0],
31967
+ setSearchQuery = _useState[1];
31968
+ var _useState2 = React.useState('all'),
31969
+ selectedCategory = _useState2[0],
31970
+ setSelectedCategory = _useState2[1];
31971
+ var categoryOptions = [{
31972
+ id: 0,
31973
+ value: 'all',
31974
+ option: 'All'
31975
+ }, {
31976
+ id: 1,
31977
+ value: 'Combat',
31978
+ option: 'Combat'
31979
+ }, {
31980
+ id: 2,
31981
+ value: 'Crafting',
31982
+ option: 'Crafting'
31983
+ }, {
31984
+ id: 3,
31985
+ value: 'Exploration',
31986
+ option: 'Exploration'
31987
+ }, {
31988
+ id: 4,
31989
+ value: 'General',
31990
+ option: 'General'
31991
+ }];
31992
+ var renderItem = function renderItem(guide) {
31993
+ return React__default.createElement(GuideItem, {
31994
+ key: guide.id
31995
+ }, React__default.createElement(GuideThumbnail, null, React__default.createElement("img", {
31996
+ src: guide.thumbnailUrl || '/placeholder-thumbnail.png',
31997
+ alt: guide.title
31998
+ })), React__default.createElement(GuideContent, null, React__default.createElement(GuideTitle, null, guide.title), React__default.createElement(GuideDescription, null, guide.description), React__default.createElement(GuideCategory, null, guide.category)));
31999
+ };
32000
+ var filteredGuides = videoGuides.filter(function (guide) {
32001
+ return (selectedCategory === 'all' || guide.category === selectedCategory) && (guide.title.toLowerCase().includes(searchQuery.toLowerCase()) || guide.description.toLowerCase().includes(searchQuery.toLowerCase()));
32002
+ });
32003
+ return React__default.createElement(PaginatedContent, {
32004
+ items: filteredGuides,
32005
+ renderItem: renderItem,
32006
+ emptyMessage: "No guides found",
32007
+ searchOptions: {
32008
+ value: searchQuery,
32009
+ onChange: setSearchQuery,
32010
+ placeholder: 'Search guides...'
32011
+ },
32012
+ filterOptions: {
32013
+ options: categoryOptions,
32014
+ selectedOption: selectedCategory,
32015
+ onOptionChange: setSelectedCategory
32016
+ },
32017
+ dependencies: [selectedCategory],
32018
+ tabId: tabId,
32019
+ layout: "grid",
32020
+ gridColumns: 3,
32021
+ itemsPerPage: 3,
32022
+ itemHeight: "400px"
32023
+ });
32024
+ };
32025
+ var GuideItem = /*#__PURE__*/styled__default.div.withConfig({
32026
+ displayName: "InformationCenterTutorialsSection__GuideItem",
32027
+ componentId: "sc-1gk05vk-0"
32028
+ })(["background:rgba(0,0,0,0.3);border-radius:4px;overflow:hidden;border:1px solid ", ";cursor:pointer;transition:transform 0.2s ease;height:100%;&:hover{transform:translateY(-2px);}"], uiColors.darkGray);
32029
+ var GuideThumbnail = /*#__PURE__*/styled__default.div.withConfig({
32030
+ displayName: "InformationCenterTutorialsSection__GuideThumbnail",
32031
+ componentId: "sc-1gk05vk-1"
32032
+ })(["width:100%;height:168px;background:rgba(0,0,0,0.2);overflow:hidden;img{width:100%;height:100%;object-fit:cover;}font-size:0.8rem;line-height:1.8;"]);
32033
+ var GuideContent = /*#__PURE__*/styled__default.div.withConfig({
32034
+ displayName: "InformationCenterTutorialsSection__GuideContent",
32035
+ componentId: "sc-1gk05vk-2"
32036
+ })(["padding:12px;"]);
32037
+ var GuideTitle = /*#__PURE__*/styled__default.h3.withConfig({
32038
+ displayName: "InformationCenterTutorialsSection__GuideTitle",
32039
+ componentId: "sc-1gk05vk-3"
32040
+ })(["margin:0;font-size:0.6rem;color:", ";font-family:'Press Start 2P',cursive;margin-bottom:8px;"], uiColors.yellow);
32041
+ var GuideDescription = /*#__PURE__*/styled__default.p.withConfig({
32042
+ displayName: "InformationCenterTutorialsSection__GuideDescription",
32043
+ componentId: "sc-1gk05vk-4"
32044
+ })(["margin:0;font-size:0.55rem;color:", ";font-family:'Press Start 2P',cursive;margin-bottom:8px;line-height:1.4;"], uiColors.lightGray);
32045
+ var GuideCategory = /*#__PURE__*/styled__default.span.withConfig({
32046
+ displayName: "InformationCenterTutorialsSection__GuideCategory",
32047
+ componentId: "sc-1gk05vk-5"
32048
+ })(["font-size:0.5rem;color:", ";font-family:'Press Start 2P',cursive;background:rgba(255,255,255,0.1);padding:4px 8px;border-radius:4px;"], uiColors.yellow);
32049
+
32050
+ var InformationCenter = function InformationCenter(_ref) {
32051
+ var itemsAtlasJSON = _ref.itemsAtlasJSON,
32052
+ itemsAtlasIMG = _ref.itemsAtlasIMG,
32053
+ entitiesAtlasJSON = _ref.entitiesAtlasJSON,
32054
+ entitiesAtlasIMG = _ref.entitiesAtlasIMG,
32055
+ _ref$faqItems = _ref.faqItems,
32056
+ faqItems = _ref$faqItems === void 0 ? [] : _ref$faqItems,
32057
+ _ref$bestiaryItems = _ref.bestiaryItems,
32058
+ bestiaryItems = _ref$bestiaryItems === void 0 ? [] : _ref$bestiaryItems,
32059
+ _ref$videoGuides = _ref.videoGuides,
32060
+ videoGuides = _ref$videoGuides === void 0 ? [] : _ref$videoGuides,
32061
+ _ref$items = _ref.items,
32062
+ items = _ref$items === void 0 ? [] : _ref$items,
32063
+ _ref$loading = _ref.loading,
32064
+ loading = _ref$loading === void 0 ? false : _ref$loading,
32065
+ error = _ref.error,
32066
+ _ref$initialSearchQue = _ref.initialSearchQuery,
32067
+ initialSearchQuery = _ref$initialSearchQue === void 0 ? '' : _ref$initialSearchQue;
32068
+ var _useState = React.useState('bestiary'),
32069
+ activeTab = _useState[0],
32070
+ setActiveTab = _useState[1];
32071
+ var _useState2 = React.useState(null),
32072
+ selectedItem = _useState2[0],
32073
+ setSelectedItem = _useState2[1];
32074
+ if (loading) {
32075
+ return React__default.createElement(LoadingMessage, null, "Loading...");
32076
+ }
32077
+ if (error) {
32078
+ return React__default.createElement(ErrorMessage, null, error);
32079
+ }
32080
+ var tabs = [{
32081
+ id: 'bestiary',
32082
+ title: 'Bestiary',
32083
+ content: React__default.createElement(InformationCenterBestiarySection, {
32084
+ bestiaryItems: bestiaryItems,
32085
+ itemsAtlasJSON: itemsAtlasJSON,
32086
+ itemsAtlasIMG: itemsAtlasIMG,
32087
+ entitiesAtlasJSON: entitiesAtlasJSON,
32088
+ entitiesAtlasIMG: entitiesAtlasIMG,
32089
+ initialSearchQuery: initialSearchQuery,
32090
+ tabId: "bestiary"
32091
+ })
32092
+ }, {
32093
+ id: 'items',
32094
+ title: 'Items',
32095
+ content: React__default.createElement(InformationCenterItemsSection, {
32096
+ items: items,
32097
+ bestiaryItems: bestiaryItems,
32098
+ itemsAtlasJSON: itemsAtlasJSON,
32099
+ itemsAtlasIMG: itemsAtlasIMG,
32100
+ initialSearchQuery: initialSearchQuery,
32101
+ tabId: "items"
32102
+ })
32103
+ }, {
32104
+ id: 'faq',
32105
+ title: 'FAQ',
32106
+ content: React__default.createElement(InformationCenterFAQSection, {
32107
+ faqItems: faqItems,
32108
+ initialSearchQuery: initialSearchQuery,
32109
+ tabId: "faq"
32110
+ })
32111
+ }, {
32112
+ id: 'tutorials',
32113
+ title: 'Tutorials',
32114
+ content: React__default.createElement(InformationCenterTutorialsSection, {
32115
+ videoGuides: videoGuides,
32116
+ initialSearchQuery: initialSearchQuery,
32117
+ tabId: "tutorials"
32118
+ })
32119
+ }];
32120
+ return React__default.createElement(Container$r, null, React__default.createElement(InternalTabs, {
32121
+ tabs: tabs,
32122
+ activeTextColor: "#000000",
32123
+ activeTab: activeTab,
32124
+ onTabChange: setActiveTab,
32125
+ activeColor: "#fef08a",
32126
+ inactiveColor: "#6b7280",
32127
+ borderColor: "#f59e0b",
32128
+ hoverColor: "#fef3c7"
32129
+ }), selectedItem && React__default.createElement(InformationCenterItemDetails, {
32130
+ item: selectedItem,
32131
+ itemsAtlasJSON: itemsAtlasJSON,
32132
+ itemsAtlasIMG: itemsAtlasIMG,
32133
+ droppedBy: bestiaryItems.filter(function (npc) {
32134
+ var _npc$loots;
32135
+ return (_npc$loots = npc.loots) == null ? void 0 : _npc$loots.some(function (loot) {
32136
+ return loot.itemBlueprintKey === selectedItem.key;
32137
+ });
32138
+ }),
32139
+ onBack: function onBack() {
32140
+ return setSelectedItem(null);
32141
+ }
32142
+ }));
32143
+ };
32144
+ var Container$r = /*#__PURE__*/styled__default.div.withConfig({
32145
+ displayName: "InformationCenter__Container",
32146
+ componentId: "sc-1ttl62e-0"
32147
+ })(["width:100%;max-width:800px;margin:0 auto;padding:1rem;"]);
32148
+ var LoadingMessage = /*#__PURE__*/styled__default.div.withConfig({
32149
+ displayName: "InformationCenter__LoadingMessage",
32150
+ componentId: "sc-1ttl62e-1"
32151
+ })(["text-align:center;color:#ffffff;padding:2rem;"]);
32152
+ var ErrorMessage = /*#__PURE__*/styled__default.div.withConfig({
32153
+ displayName: "InformationCenter__ErrorMessage",
32154
+ componentId: "sc-1ttl62e-2"
32155
+ })(["text-align:center;color:#ef4444;padding:2rem;"]);
32156
+
30776
32157
  var SlotsContainer = function SlotsContainer(_ref) {
30777
32158
  var children = _ref.children,
30778
32159
  title = _ref.title,
@@ -30931,7 +32312,7 @@ var ShortcutsSetter = function ShortcutsSetter(_ref) {
30931
32312
  }
30932
32313
  return null;
30933
32314
  };
30934
- return React__default.createElement(Container$l, null, React__default.createElement("p", null, "Shortcuts:"), React__default.createElement(List, {
32315
+ return React__default.createElement(Container$s, null, React__default.createElement("p", null, "Shortcuts:"), React__default.createElement(List, {
30935
32316
  id: "shortcuts_list"
30936
32317
  }, Array.from({
30937
32318
  length: 12
@@ -30949,7 +32330,7 @@ var ShortcutsSetter = function ShortcutsSetter(_ref) {
30949
32330
  }, getContent(i));
30950
32331
  })));
30951
32332
  };
30952
- var Container$l = /*#__PURE__*/styled__default.div.withConfig({
32333
+ var Container$s = /*#__PURE__*/styled__default.div.withConfig({
30953
32334
  displayName: "ShortcutsSetter__Container",
30954
32335
  componentId: "sc-xuouuf-0"
30955
32336
  })(["p{margin:0;margin-left:0.5rem;font-size:10px;}width:100%;"]);
@@ -31015,7 +32396,7 @@ var RangeSlider = /*#__PURE__*/React__default.memo(function (_ref) {
31015
32396
  style: {
31016
32397
  left: left
31017
32398
  }
31018
- })), React__default.createElement(Input$1, {
32399
+ })), React__default.createElement(Input$2, {
31019
32400
  type: "range",
31020
32401
  style: {
31021
32402
  width: width
@@ -31028,7 +32409,7 @@ var RangeSlider = /*#__PURE__*/React__default.memo(function (_ref) {
31028
32409
  className: "rpgui-cursor-point"
31029
32410
  }));
31030
32411
  });
31031
- var Input$1 = /*#__PURE__*/styled__default.input.withConfig({
32412
+ var Input$2 = /*#__PURE__*/styled__default.input.withConfig({
31032
32413
  displayName: "RangeSlider__Input",
31033
32414
  componentId: "sc-v8mte9-0"
31034
32415
  })(["opacity:0;position:absolute;width:100%;height:100%;top:0;left:0;margin-top:-5px;"]);
@@ -31062,7 +32443,7 @@ var QuantitySelector = function QuantitySelector(_ref) {
31062
32443
  return React__default.createElement(StyledContainer, {
31063
32444
  type: exports.RPGUIContainerTypes.Framed,
31064
32445
  width: "25rem"
31065
- }, React__default.createElement(CloseButton$5, {
32446
+ }, React__default.createElement(CloseButton$6, {
31066
32447
  className: "container-close",
31067
32448
  onPointerDown: onClose
31068
32449
  }, "X"), React__default.createElement("h2", null, title), React__default.createElement(StyledForm, {
@@ -31107,7 +32488,7 @@ var StyledContainer = /*#__PURE__*/styled__default(RPGUIContainer).withConfig({
31107
32488
  displayName: "QuantitySelector__StyledContainer",
31108
32489
  componentId: "sc-z4ut57-0"
31109
32490
  })(["position:relative;display:flex;flex-direction:column;align-items:center;padding:1rem;h2{margin:0;margin-bottom:1rem;font-size:1rem;}"]);
31110
- var CloseButton$5 = /*#__PURE__*/styled__default.div.withConfig({
32491
+ var CloseButton$6 = /*#__PURE__*/styled__default.div.withConfig({
31111
32492
  displayName: "QuantitySelector__CloseButton",
31112
32493
  componentId: "sc-z4ut57-1"
31113
32494
  })(["position:absolute;top:3px;right:0px;color:white;z-index:22;font-size:1.5rem;cursor:pointer;"]);
@@ -31400,7 +32781,7 @@ var ColorSelector = function ColorSelector(_ref) {
31400
32781
  cancelDrag: ".react-colorful",
31401
32782
  width: "20rem",
31402
32783
  onCloseButton: onClose
31403
- }, React__default.createElement(Container$m, null, React__default.createElement(Header$1, null, "Select Color"), React__default.createElement(reactColorful.HexColorPicker, {
32784
+ }, React__default.createElement(Container$t, null, React__default.createElement(Header$3, null, "Select Color"), React__default.createElement(reactColorful.HexColorPicker, {
31404
32785
  color: currentColor,
31405
32786
  onChange: function onChange(color) {
31406
32787
  setCurrentColor(color);
@@ -31412,11 +32793,11 @@ var ColorSelector = function ColorSelector(_ref) {
31412
32793
  onClick: handleConfirm
31413
32794
  }, "Confirm"))) : null;
31414
32795
  };
31415
- var Container$m = /*#__PURE__*/styled__default.div.withConfig({
32796
+ var Container$t = /*#__PURE__*/styled__default.div.withConfig({
31416
32797
  displayName: "ItemPropertyColorSelector__Container",
31417
32798
  componentId: "sc-me1r4z-0"
31418
32799
  })(["padding:2rem;text-align:center;background:inherit;"]);
31419
- var Header$1 = /*#__PURE__*/styled__default.h2.withConfig({
32800
+ var Header$3 = /*#__PURE__*/styled__default.h2.withConfig({
31420
32801
  displayName: "ItemPropertyColorSelector__Header",
31421
32802
  componentId: "sc-me1r4z-1"
31422
32803
  })(["font-family:'Press Start 2P',cursive;color:white;font-size:1rem;margin-bottom:1rem;"]);
@@ -31436,6 +32817,111 @@ var ItemPropertySimpleHandler = function ItemPropertySimpleHandler(_ref) {
31436
32817
  });
31437
32818
  };
31438
32819
 
32820
+ var GemSelector = function GemSelector(_ref) {
32821
+ var _item$attachedGems;
32822
+ var atlasJSON = _ref.atlasJSON,
32823
+ atlasIMG = _ref.atlasIMG,
32824
+ item = _ref.item,
32825
+ scale = _ref.scale,
32826
+ onClose = _ref.onClose,
32827
+ onSelect = _ref.onSelect;
32828
+ var _useState = React.useState([]),
32829
+ selectedGems = _useState[0],
32830
+ setSelectedGems = _useState[1];
32831
+ var size = useResponsiveSize(scale);
32832
+ var handleGemToggle = function handleGemToggle(gem) {
32833
+ setSelectedGems(function (prev) {
32834
+ return prev.some(function (selected) {
32835
+ return selected.key === gem.key;
32836
+ }) ? prev.filter(function (selected) {
32837
+ return selected.key !== gem.key;
32838
+ }) : [].concat(prev, [gem]);
32839
+ });
32840
+ };
32841
+ var handleConfirm = function handleConfirm() {
32842
+ onSelect(selectedGems);
32843
+ onClose();
32844
+ };
32845
+ if (!size) return null;
32846
+ return React__default.createElement(DraggableContainer, {
32847
+ type: exports.RPGUIContainerTypes.Framed,
32848
+ width: "450px",
32849
+ height: size.height,
32850
+ scale: scale,
32851
+ cancelDrag: ".gem-selector-container",
32852
+ onCloseButton: onClose
32853
+ }, React__default.createElement(ContentWrapper$1, null, React__default.createElement(Header$4, null, React__default.createElement(Title$5, null, "GEM SELECTION"), React__default.createElement(Subtitle, null, "Select gems to detach")), React__default.createElement(GemGrid, null, (_item$attachedGems = item.attachedGems) == null ? void 0 : _item$attachedGems.map(function (gem, index) {
32854
+ return React__default.createElement(GemItem, {
32855
+ key: gem.key + "-" + index
32856
+ }, React__default.createElement(CheckItemWrapper, null, React__default.createElement(CheckItem, {
32857
+ defaultValue: selectedGems.some(function (selected) {
32858
+ return selected.key === gem.key;
32859
+ }),
32860
+ onChange: function onChange() {
32861
+ handleGemToggle(gem);
32862
+ }
32863
+ })), React__default.createElement(SpriteWrapper, null, React__default.createElement(SpriteFromAtlas, {
32864
+ atlasIMG: atlasIMG,
32865
+ atlasJSON: atlasJSON,
32866
+ spriteKey: "gems/" + gem.key + ".png",
32867
+ imgScale: 2,
32868
+ imgClassname: "gem-sprite",
32869
+ centered: true
32870
+ })), React__default.createElement(GemName, null, gem.name.replace(/ of /gi, '\n').toUpperCase()));
32871
+ })), React__default.createElement(ButtonWrapper, null, React__default.createElement(Button, {
32872
+ buttonType: exports.ButtonTypes.RPGUIButton,
32873
+ onPointerDown: function onPointerDown() {
32874
+ onClose();
32875
+ }
32876
+ }, "Cancel"), React__default.createElement(Button, {
32877
+ buttonType: exports.ButtonTypes.RPGUIButton,
32878
+ onPointerDown: function onPointerDown() {
32879
+ handleConfirm();
32880
+ },
32881
+ disabled: selectedGems.length === 0
32882
+ }, "Confirm"))));
32883
+ };
32884
+ var Title$5 = /*#__PURE__*/styled__default.h1.withConfig({
32885
+ displayName: "GemSelector__Title",
32886
+ componentId: "sc-gbt8g4-0"
32887
+ })(["font-size:0.8rem;color:", " !important;"], uiColors.yellow);
32888
+ var Subtitle = /*#__PURE__*/styled__default.h2.withConfig({
32889
+ displayName: "GemSelector__Subtitle",
32890
+ componentId: "sc-gbt8g4-1"
32891
+ })(["font-size:0.6rem;color:", ";margin:0;"], uiColors.white);
32892
+ var Header$4 = /*#__PURE__*/styled__default.div.withConfig({
32893
+ displayName: "GemSelector__Header",
32894
+ componentId: "sc-gbt8g4-2"
32895
+ })(["text-align:center;padding:5px;border-bottom:2px solid #444;"]);
32896
+ var GemGrid = /*#__PURE__*/styled__default.div.withConfig({
32897
+ displayName: "GemSelector__GemGrid",
32898
+ componentId: "sc-gbt8g4-3"
32899
+ })(["display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:20px;margin-top:10px;min-height:150px;overflow-y:auto;"]);
32900
+ var ContentWrapper$1 = /*#__PURE__*/styled__default.div.withConfig({
32901
+ displayName: "GemSelector__ContentWrapper",
32902
+ componentId: "sc-gbt8g4-4"
32903
+ })(["display:flex;flex-direction:column;align-items:center;margin-left:20px;justify-content:space-between;height:100%;"]);
32904
+ var GemItem = /*#__PURE__*/styled__default.div.withConfig({
32905
+ displayName: "GemSelector__GemItem",
32906
+ componentId: "sc-gbt8g4-5"
32907
+ })(["display:flex;flex-direction:column;align-items:center;justify-content:space-between;background-color:", " !important;height:100px;width:90px;padding:5px;"], uiColors.darkGray);
32908
+ var GemName = /*#__PURE__*/styled__default.div.withConfig({
32909
+ displayName: "GemSelector__GemName",
32910
+ componentId: "sc-gbt8g4-6"
32911
+ })(["font-size:0.5rem;color:", " !important;text-align:center;text-transform:uppercase;line-height:1.2;width:100%;min-height:30px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word;"], uiColors.yellow);
32912
+ var ButtonWrapper = /*#__PURE__*/styled__default.div.withConfig({
32913
+ displayName: "GemSelector__ButtonWrapper",
32914
+ componentId: "sc-gbt8g4-7"
32915
+ })(["display:flex;justify-content:center;align-self:center;"]);
32916
+ var CheckItemWrapper = /*#__PURE__*/styled__default.div.withConfig({
32917
+ displayName: "GemSelector__CheckItemWrapper",
32918
+ componentId: "sc-gbt8g4-8"
32919
+ })(["display:flex;justify-content:center;width:100%;height:20px;input.rpgui-checkbox + label{margin:0 !important;padding-left:23px !important;}"]);
32920
+ var SpriteWrapper = /*#__PURE__*/styled__default.div.withConfig({
32921
+ displayName: "GemSelector__SpriteWrapper",
32922
+ componentId: "sc-gbt8g4-9"
32923
+ })(["display:flex;align-items:center;justify-content:center;width:100%;height:50px;"]);
32924
+
31439
32925
  var ItemSelector = function ItemSelector(_ref) {
31440
32926
  var atlasIMG = _ref.atlasIMG,
31441
32927
  atlasJSON = _ref.atlasJSON,
@@ -31468,7 +32954,7 @@ var ItemSelector = function ItemSelector(_ref) {
31468
32954
  style: {
31469
32955
  width: '100%'
31470
32956
  }
31471
- }, React__default.createElement(Title$3, null, 'Harvesting instruments'), React__default.createElement(Subtitle, null, 'Use the tool, you need it'), React__default.createElement("hr", {
32957
+ }, React__default.createElement(Title$6, null, 'Harvesting instruments'), React__default.createElement(Subtitle$1, null, 'Use the tool, you need it'), React__default.createElement("hr", {
31472
32958
  className: "golden"
31473
32959
  })), React__default.createElement(RadioInputScroller$1, null, options == null ? void 0 : options.map(function (option, index) {
31474
32960
  return React__default.createElement(RadioOptionsWrapper$1, {
@@ -31490,18 +32976,18 @@ var ItemSelector = function ItemSelector(_ref) {
31490
32976
  alignItems: 'center'
31491
32977
  }
31492
32978
  }, option.name, " ", React__default.createElement("br", null), option.description)));
31493
- })), React__default.createElement(ButtonWrapper, null, React__default.createElement(Button, {
32979
+ })), React__default.createElement(ButtonWrapper$1, null, React__default.createElement(Button, {
31494
32980
  buttonType: exports.ButtonTypes.RPGUIButton,
31495
32981
  onPointerDown: onClose
31496
32982
  }, "Cancel"), React__default.createElement(Button, {
31497
32983
  buttonType: exports.ButtonTypes.RPGUIButton
31498
32984
  }, "Select")));
31499
32985
  };
31500
- var Title$3 = /*#__PURE__*/styled__default.h1.withConfig({
32986
+ var Title$6 = /*#__PURE__*/styled__default.h1.withConfig({
31501
32987
  displayName: "ItemSelector__Title",
31502
32988
  componentId: "sc-gptoxp-0"
31503
32989
  })(["font-size:0.6rem;color:yellow !important;"]);
31504
- var Subtitle = /*#__PURE__*/styled__default.h1.withConfig({
32990
+ var Subtitle$1 = /*#__PURE__*/styled__default.h1.withConfig({
31505
32991
  displayName: "ItemSelector__Subtitle",
31506
32992
  componentId: "sc-gptoxp-1"
31507
32993
  })(["font-size:0.4rem;color:yellow !important;"]);
@@ -31517,7 +33003,7 @@ var RadioOptionsWrapper$1 = /*#__PURE__*/styled__default.div.withConfig({
31517
33003
  displayName: "ItemSelector__RadioOptionsWrapper",
31518
33004
  componentId: "sc-gptoxp-4"
31519
33005
  })(["display:flex;align-items:stretch;margin-bottom:40px;"]);
31520
- var ButtonWrapper = /*#__PURE__*/styled__default.div.withConfig({
33006
+ var ButtonWrapper$1 = /*#__PURE__*/styled__default.div.withConfig({
31521
33007
  displayName: "ItemSelector__ButtonWrapper",
31522
33008
  componentId: "sc-gptoxp-5"
31523
33009
  })(["display:flex;justify-content:space-around;padding-top:20px;width:100%;"]);
@@ -31603,15 +33089,15 @@ var Leaderboard = function Leaderboard(props) {
31603
33089
  option: itemType
31604
33090
  };
31605
33091
  });
31606
- return React__default.createElement(React__default.Fragment, null, React__default.createElement(WrapperContainer, null, React__default.createElement(StyledDropdown, {
33092
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement(WrapperContainer, null, React__default.createElement(StyledDropdown$1, {
31607
33093
  options: rankTypeOptions,
31608
33094
  onChange: onChangeRankType,
31609
33095
  width: "80%"
31610
- }), rankType === 'Class' ? React__default.createElement(StyledDropdown, {
33096
+ }), rankType === 'Class' ? React__default.createElement(StyledDropdown$1, {
31611
33097
  options: classTypeOptions,
31612
33098
  onChange: onChangeClassType,
31613
33099
  width: "100%"
31614
- }) : null, rankType === 'Skill' ? React__default.createElement(StyledDropdown, {
33100
+ }) : null, rankType === 'Skill' ? React__default.createElement(StyledDropdown$1, {
31615
33101
  options: skillTypeOptions,
31616
33102
  onChange: onChangeSkillType,
31617
33103
  width: "100%"
@@ -31627,7 +33113,7 @@ var WrapperContainer = /*#__PURE__*/styled__default.div.withConfig({
31627
33113
  displayName: "Leaderboard__WrapperContainer",
31628
33114
  componentId: "sc-1wdsq7i-0"
31629
33115
  })(["display:grid;grid-template-columns:50% 50%;justify-content:space-between;width:calc(100% - 40px);margin-left:10px;.rpgui-content .rpgui-dropdown-imp-header{padding:0px 10px 0 !important;}"]);
31630
- var StyledDropdown = /*#__PURE__*/styled__default(Dropdown).withConfig({
33116
+ var StyledDropdown$1 = /*#__PURE__*/styled__default(Dropdown).withConfig({
31631
33117
  displayName: "Leaderboard__StyledDropdown",
31632
33118
  componentId: "sc-1wdsq7i-1"
31633
33119
  })(["margin:3px !important;width:170px !important;"]);
@@ -31645,7 +33131,7 @@ var ListMenu = function ListMenu(_ref) {
31645
33131
  onSelected = _ref.onSelected,
31646
33132
  x = _ref.x,
31647
33133
  y = _ref.y;
31648
- return React__default.createElement(Container$n, {
33134
+ return React__default.createElement(Container$u, {
31649
33135
  x: x,
31650
33136
  y: y
31651
33137
  }, React__default.createElement("ul", {
@@ -31662,7 +33148,7 @@ var ListMenu = function ListMenu(_ref) {
31662
33148
  }, (params == null ? void 0 : params.text) || 'No text');
31663
33149
  })));
31664
33150
  };
31665
- var Container$n = /*#__PURE__*/styled__default.div.withConfig({
33151
+ var Container$u = /*#__PURE__*/styled__default.div.withConfig({
31666
33152
  displayName: "ListMenu__Container",
31667
33153
  componentId: "sc-i9097t-0"
31668
33154
  })(["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) {
@@ -31681,7 +33167,7 @@ var Pager = function Pager(_ref) {
31681
33167
  itemsPerPage = _ref.itemsPerPage,
31682
33168
  onPageChange = _ref.onPageChange;
31683
33169
  var totalPages = Math.ceil(totalItems / itemsPerPage);
31684
- return React__default.createElement(Container$o, null, React__default.createElement("p", null, "Total items: ", totalItems), React__default.createElement(PagerContainer, null, React__default.createElement("button", {
33170
+ return React__default.createElement(Container$v, null, React__default.createElement("p", null, "Total items: ", totalItems), React__default.createElement(PagerContainer, null, React__default.createElement("button", {
31685
33171
  disabled: currentPage === 1,
31686
33172
  onPointerDown: function onPointerDown() {
31687
33173
  return onPageChange(Math.max(currentPage - 1, 1));
@@ -31695,7 +33181,7 @@ var Pager = function Pager(_ref) {
31695
33181
  }
31696
33182
  }, '>')));
31697
33183
  };
31698
- var Container$o = /*#__PURE__*/styled__default.div.withConfig({
33184
+ var Container$v = /*#__PURE__*/styled__default.div.withConfig({
31699
33185
  displayName: "Pager__Container",
31700
33186
  componentId: "sc-1ekmf50-0"
31701
33187
  })(["display:flex;flex-direction:column;align-items:center;p{margin:0;font-size:", ";}"], uiFonts.size.xsmall);
@@ -31708,7 +33194,7 @@ var ConfirmModal = function ConfirmModal(_ref) {
31708
33194
  var onConfirm = _ref.onConfirm,
31709
33195
  onClose = _ref.onClose,
31710
33196
  message = _ref.message;
31711
- return React__default.createElement(ModalPortal, null, React__default.createElement(Background, null), React__default.createElement(Container$p, {
33197
+ return React__default.createElement(ModalPortal, null, React__default.createElement(Background, null), React__default.createElement(Container$w, {
31712
33198
  onPointerDown: onClose
31713
33199
  }, React__default.createElement(DraggableContainer, {
31714
33200
  width: "auto",
@@ -31731,7 +33217,7 @@ var Background = /*#__PURE__*/styled__default.div.withConfig({
31731
33217
  displayName: "ConfirmModal__Background",
31732
33218
  componentId: "sc-11qkyu1-0"
31733
33219
  })(["position:absolute;width:100%;height:100%;background-color:#000000;opacity:0.5;left:0;top:0;z-index:1000;"]);
31734
- var Container$p = /*#__PURE__*/styled__default.div.withConfig({
33220
+ var Container$w = /*#__PURE__*/styled__default.div.withConfig({
31735
33221
  displayName: "ConfirmModal__Container",
31736
33222
  componentId: "sc-11qkyu1-1"
31737
33223
  })(["position:absolute;width:100%;height:100%;left:0;top:0;display:flex;justify-content:center;align-items:center;z-index:1001;"]);
@@ -31757,7 +33243,7 @@ var MarketplaceRows = function MarketplaceRows(_ref) {
31757
33243
  var renderGems = function renderGems(item) {
31758
33244
  return item.attachedGems && onRenderGems(item);
31759
33245
  };
31760
- return React__default.createElement(MarketplaceWrapper, null, React__default.createElement(ItemIconContainer, null, React__default.createElement(SpriteContainer$1, null, React__default.createElement(ItemInfoWrapper, {
33246
+ return React__default.createElement(MarketplaceWrapper, null, React__default.createElement(ItemIconContainer, null, React__default.createElement(SpriteContainer$3, null, React__default.createElement(ItemInfoWrapper, {
31761
33247
  item: item,
31762
33248
  atlasIMG: atlasIMG,
31763
33249
  atlasJSON: atlasJSON,
@@ -31823,7 +33309,7 @@ var GoldContainer = /*#__PURE__*/styled__default.div.withConfig({
31823
33309
  displayName: "MarketplaceRows__GoldContainer",
31824
33310
  componentId: "sc-wmpr1o-5"
31825
33311
  })(["position:relative;top:-0.5rem;left:0.5rem;"]);
31826
- var SpriteContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
33312
+ var SpriteContainer$3 = /*#__PURE__*/styled__default.div.withConfig({
31827
33313
  displayName: "MarketplaceRows__SpriteContainer",
31828
33314
  componentId: "sc-wmpr1o-6"
31829
33315
  })(["position:relative;left:0.5rem;"]);
@@ -32008,15 +33494,15 @@ var BuyPanel = function BuyPanel(_ref) {
32008
33494
  className: "big-input",
32009
33495
  onBlur: enableHotkeys,
32010
33496
  onFocus: disableHotkeys
32011
- }))), React__default.createElement(WrapperContainer$1, null, React__default.createElement(StyledDropdown$1, {
33497
+ }))), React__default.createElement(WrapperContainer$1, null, React__default.createElement(StyledDropdown$2, {
32012
33498
  options: itemTypeOptions,
32013
33499
  onChange: onChangeType,
32014
33500
  width: "95%"
32015
- }), React__default.createElement(StyledDropdown$1, {
33501
+ }), React__default.createElement(StyledDropdown$2, {
32016
33502
  options: itemRarityOptions,
32017
33503
  onChange: onChangeRarity,
32018
33504
  width: "95%"
32019
- }), React__default.createElement(StyledDropdown$1, {
33505
+ }), React__default.createElement(StyledDropdown$2, {
32020
33506
  options: orderByOptions,
32021
33507
  onChange: onChangeOrder,
32022
33508
  width: "100%"
@@ -32060,7 +33546,7 @@ var ItemComponentScrollWrapper$1 = /*#__PURE__*/styled__default.div.withConfig({
32060
33546
  displayName: "BuyPanel__ItemComponentScrollWrapper",
32061
33547
  componentId: "sc-1si8t7i-4"
32062
33548
  })(["overflow-y:scroll;height:390px;width:100%;margin-top:1rem;@media (max-width:950px){height:250px;}"]);
32063
- var StyledDropdown$1 = /*#__PURE__*/styled__default(Dropdown).withConfig({
33549
+ var StyledDropdown$2 = /*#__PURE__*/styled__default(Dropdown).withConfig({
32064
33550
  displayName: "BuyPanel__StyledDropdown",
32065
33551
  componentId: "sc-1si8t7i-5"
32066
33552
  })(["margin:3px !important;width:170px !important;"]);
@@ -32256,13 +33742,13 @@ var TabBody = function TabBody(_ref) {
32256
33742
  children = _ref.children,
32257
33743
  styles = _ref.styles,
32258
33744
  centerContent = _ref.centerContent;
32259
- return React__default.createElement(Container$q, {
33745
+ return React__default.createElement(Container$x, {
32260
33746
  styles: styles,
32261
33747
  "data-tab-id": id,
32262
33748
  centerContent: centerContent
32263
33749
  }, children);
32264
33750
  };
32265
- var Container$q = /*#__PURE__*/styled__default.div.withConfig({
33751
+ var Container$x = /*#__PURE__*/styled__default.div.withConfig({
32266
33752
  displayName: "TabBody__Container",
32267
33753
  componentId: "sc-196oof2-0"
32268
33754
  })(["width:", ";height:", ";overflow-y:auto;display:", ";justify-content:", ";align-items:", ";"], function (props) {
@@ -32407,12 +33893,12 @@ var PartyCreate = function PartyCreate(_ref) {
32407
33893
  style: {
32408
33894
  width: '100%'
32409
33895
  }
32410
- }, React__default.createElement(Title$4, null, "Create Party"), React__default.createElement("hr", {
33896
+ }, React__default.createElement(Title$7, null, "Create Party"), React__default.createElement("hr", {
32411
33897
  className: "golden"
32412
33898
  }))), React__default.createElement("h1", null, "Type your party name"), React__default.createElement(Input, {
32413
33899
  placeholder: "Type party name",
32414
33900
  type: "text"
32415
- }), React__default.createElement(ButtonWrapper$1, null, React__default.createElement(Button, {
33901
+ }), React__default.createElement(ButtonWrapper$2, null, React__default.createElement(Button, {
32416
33902
  buttonType: exports.ButtonTypes.RPGUIButton,
32417
33903
  onPointerDown: function onPointerDown() {
32418
33904
  onCreate();
@@ -32430,11 +33916,11 @@ var Wrapper$2 = /*#__PURE__*/styled__default.div.withConfig({
32430
33916
  displayName: "PartyCreate__Wrapper",
32431
33917
  componentId: "sc-13brop0-0"
32432
33918
  })(["display:flex;flex-direction:column;width:100%;"]);
32433
- var Title$4 = /*#__PURE__*/styled__default.h1.withConfig({
33919
+ var Title$7 = /*#__PURE__*/styled__default.h1.withConfig({
32434
33920
  displayName: "PartyCreate__Title",
32435
33921
  componentId: "sc-13brop0-1"
32436
33922
  })(["font-size:0.6rem;color:", " !important;"], uiColors.yellow);
32437
- var ButtonWrapper$1 = /*#__PURE__*/styled__default.div.withConfig({
33923
+ var ButtonWrapper$2 = /*#__PURE__*/styled__default.div.withConfig({
32438
33924
  displayName: "PartyCreate__ButtonWrapper",
32439
33925
  componentId: "sc-13brop0-2"
32440
33926
  })(["margin-top:10px;width:100%;display:flex;justify-content:space-around;align-items:center;.cancel-button{filter:grayscale(0.7);}"]);
@@ -32479,7 +33965,7 @@ var PartyDashboard = function PartyDashboard(_ref) {
32479
33965
  style: {
32480
33966
  width: '100%'
32481
33967
  }
32482
- }, React__default.createElement(Title$5, null, "Party Dashboard"), React__default.createElement(Button, {
33968
+ }, React__default.createElement(Title$8, null, "Party Dashboard"), React__default.createElement(Button, {
32483
33969
  buttonType: exports.ButtonTypes.RPGUIButton
32484
33970
  }, "Create"), React__default.createElement("hr", {
32485
33971
  className: "golden"
@@ -32506,7 +33992,7 @@ var RowsWrapper = /*#__PURE__*/styled__default.div.withConfig({
32506
33992
  displayName: "PartyDashboard__RowsWrapper",
32507
33993
  componentId: "sc-16cm41r-1"
32508
33994
  })(["overflow-y:scroll;-webkit-overflow-scrolling:touch;width:100%;height:200px;"]);
32509
- var Title$5 = /*#__PURE__*/styled__default.h1.withConfig({
33995
+ var Title$8 = /*#__PURE__*/styled__default.h1.withConfig({
32510
33996
  displayName: "PartyDashboard__Title",
32511
33997
  componentId: "sc-16cm41r-2"
32512
33998
  })(["font-size:0.6rem;color:", " !important;"], uiColors.yellow);
@@ -32543,7 +34029,7 @@ var PartyInvite = function PartyInvite(_ref) {
32543
34029
  style: {
32544
34030
  width: '100%'
32545
34031
  }
32546
- }, React__default.createElement(Title$6, null, "Invite for Party"), React__default.createElement("hr", {
34032
+ }, React__default.createElement(Title$9, null, "Invite for Party"), React__default.createElement("hr", {
32547
34033
  className: "golden"
32548
34034
  }))), React__default.createElement(RowsWrapper$1, {
32549
34035
  className: "playersRows"
@@ -32562,7 +34048,7 @@ var Wrapper$4 = /*#__PURE__*/styled__default.div.withConfig({
32562
34048
  displayName: "PartyInvite__Wrapper",
32563
34049
  componentId: "sc-eu8ggt-0"
32564
34050
  })(["display:flex;flex-direction:column;width:100%;"]);
32565
- var Title$6 = /*#__PURE__*/styled__default.h1.withConfig({
34051
+ var Title$9 = /*#__PURE__*/styled__default.h1.withConfig({
32566
34052
  displayName: "PartyInvite__Title",
32567
34053
  componentId: "sc-eu8ggt-1"
32568
34054
  })(["font-size:0.6rem;color:", " !important;"], uiColors.yellow);
@@ -32914,7 +34400,7 @@ var ProgressBar = function ProgressBar(_ref) {
32914
34400
  }
32915
34401
  return value * 100 / max;
32916
34402
  };
32917
- return React__default.createElement(Container$r, {
34403
+ return React__default.createElement(Container$y, {
32918
34404
  className: "rpgui-progress",
32919
34405
  "data-value": calculatePercentageValue(max, value) / 100,
32920
34406
  "data-rpguitype": "progress",
@@ -32944,7 +34430,7 @@ var TextOverlay$1 = /*#__PURE__*/styled__default.div.withConfig({
32944
34430
  displayName: "ProgressBar__TextOverlay",
32945
34431
  componentId: "sc-qa6fzh-1"
32946
34432
  })(["width:100%;position:relative;"]);
32947
- var Container$r = /*#__PURE__*/styled__default.div.withConfig({
34433
+ var Container$y = /*#__PURE__*/styled__default.div.withConfig({
32948
34434
  displayName: "ProgressBar__Container",
32949
34435
  componentId: "sc-qa6fzh-2"
32950
34436
  })(["display:flex;flex-direction:column;min-width:", "px;width:", "%;justify-content:start;align-items:flex-start;", " @media (max-width:950px){transform:scale(", ");}"], function (props) {
@@ -33000,11 +34486,11 @@ var QuestInfo = function QuestInfo(_ref) {
33000
34486
  onPointerDown: onRightClick
33001
34487
  }), React__default.createElement(QuestContainer, null, React__default.createElement(TitleContainer$1, {
33002
34488
  className: "drag-handler"
33003
- }, React__default.createElement(Title$7, null, React__default.createElement(Thumbnail, {
34489
+ }, React__default.createElement(Title$a, null, React__default.createElement(Thumbnail, {
33004
34490
  src: quests[currentIndex].thumbnail || img$8
33005
34491
  }), quests[currentIndex].title), React__default.createElement(QuestSplitDiv, null, React__default.createElement("hr", {
33006
34492
  className: "golden"
33007
- }))), React__default.createElement(Content, null, React__default.createElement("p", null, quests[currentIndex].description)), React__default.createElement(QuestColumn, {
34493
+ }))), React__default.createElement(Content$3, null, React__default.createElement("p", null, quests[currentIndex].description)), React__default.createElement(QuestColumn, {
33008
34494
  className: "dark-background",
33009
34495
  justifyContent: "flex-end"
33010
34496
  }, buttons && buttons.map(function (button, index) {
@@ -33019,11 +34505,11 @@ var QuestInfo = function QuestInfo(_ref) {
33019
34505
  }, button.title);
33020
34506
  })))) : React__default.createElement(QuestsContainer, null, React__default.createElement(QuestContainer, null, React__default.createElement(TitleContainer$1, {
33021
34507
  className: "drag-handler"
33022
- }, React__default.createElement(Title$7, null, React__default.createElement(Thumbnail, {
34508
+ }, React__default.createElement(Title$a, null, React__default.createElement(Thumbnail, {
33023
34509
  src: quests[0].thumbnail || img$8
33024
34510
  }), quests[0].title), React__default.createElement(QuestSplitDiv, null, React__default.createElement("hr", {
33025
34511
  className: "golden"
33026
- }))), React__default.createElement(Content, null, React__default.createElement("p", null, quests[0].description)), React__default.createElement(QuestColumn, {
34512
+ }))), React__default.createElement(Content$3, null, React__default.createElement("p", null, quests[0].description)), React__default.createElement(QuestColumn, {
33027
34513
  className: "dark-background",
33028
34514
  justifyContent: "flex-end"
33029
34515
  }, buttons && buttons.map(function (button, index) {
@@ -33050,7 +34536,7 @@ var QuestsContainer = /*#__PURE__*/styled__default.div.withConfig({
33050
34536
  displayName: "QuestInfo__QuestsContainer",
33051
34537
  componentId: "sc-1wccpiy-2"
33052
34538
  })(["display:flex;align-items:center;"]);
33053
- var Content = /*#__PURE__*/styled__default.div.withConfig({
34539
+ var Content$3 = /*#__PURE__*/styled__default.div.withConfig({
33054
34540
  displayName: "QuestInfo__Content",
33055
34541
  componentId: "sc-1wccpiy-3"
33056
34542
  })(["padding:18px;h1{text-align:left;margin:14px 0px;}"]);
@@ -33066,7 +34552,7 @@ var TitleContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
33066
34552
  displayName: "QuestInfo__TitleContainer",
33067
34553
  componentId: "sc-1wccpiy-6"
33068
34554
  })(["width:100%;display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:center;margin-top:1rem;"]);
33069
- var Title$7 = /*#__PURE__*/styled__default.h1.withConfig({
34555
+ var Title$a = /*#__PURE__*/styled__default.h1.withConfig({
33070
34556
  displayName: "QuestInfo__Title",
33071
34557
  componentId: "sc-1wccpiy-7"
33072
34558
  })(["color:white;z-index:22;font-size:", " !important;color:", " !important;"], uiFonts.size.medium, uiColors.yellow);
@@ -33085,19 +34571,19 @@ var QuestList = function QuestList(_ref) {
33085
34571
  return React__default.createElement(QuestCard, {
33086
34572
  key: i,
33087
34573
  style: styles == null ? void 0 : styles.card
33088
- }, React__default.createElement(QuestItem, null, React__default.createElement(Label, {
34574
+ }, React__default.createElement(QuestItem, null, React__default.createElement(Label$2, {
33089
34575
  style: styles == null ? void 0 : styles.label
33090
- }, "Title:"), React__default.createElement(Value, {
34576
+ }, "Title:"), React__default.createElement(Value$2, {
33091
34577
  style: styles == null ? void 0 : styles.value
33092
- }, formatQuestText(quest.title))), React__default.createElement(QuestItem, null, React__default.createElement(Label, {
34578
+ }, formatQuestText(quest.title))), React__default.createElement(QuestItem, null, React__default.createElement(Label$2, {
33093
34579
  style: styles == null ? void 0 : styles.label
33094
- }, "Status:"), React__default.createElement(Value, {
34580
+ }, "Status:"), React__default.createElement(Value$2, {
33095
34581
  style: _extends({}, styles == null ? void 0 : styles.value, {
33096
34582
  color: getQuestStatusColor(quest.status)
33097
34583
  })
33098
- }, (_formatQuestStatus = formatQuestStatus(quest.status)) != null ? _formatQuestStatus : 'Unknown')), React__default.createElement(QuestItem, null, React__default.createElement(Label, {
34584
+ }, (_formatQuestStatus = formatQuestStatus(quest.status)) != null ? _formatQuestStatus : 'Unknown')), React__default.createElement(QuestItem, null, React__default.createElement(Label$2, {
33099
34585
  style: styles == null ? void 0 : styles.label
33100
- }, "Description:"), React__default.createElement(Value, {
34586
+ }, "Description:"), React__default.createElement(Value$2, {
33101
34587
  style: styles == null ? void 0 : styles.value
33102
34588
  }, quest.description)));
33103
34589
  }) : React__default.createElement(NoQuestContainer, null, React__default.createElement("p", null, "There are no ongoing quests")));
@@ -33114,11 +34600,11 @@ var QuestItem = /*#__PURE__*/styled__default.div.withConfig({
33114
34600
  displayName: "QuestList__QuestItem",
33115
34601
  componentId: "sc-1c1y8sp-2"
33116
34602
  })(["display:flex;margin-bottom:5px;flex-wrap:wrap;&:last-child{margin-bottom:0;}"]);
33117
- var Label = /*#__PURE__*/styled__default.span.withConfig({
34603
+ var Label$2 = /*#__PURE__*/styled__default.span.withConfig({
33118
34604
  displayName: "QuestList__Label",
33119
34605
  componentId: "sc-1c1y8sp-3"
33120
34606
  })(["font-weight:bold;color:", " !important;margin-right:10px;"], uiColors.yellow);
33121
- var Value = /*#__PURE__*/styled__default.span.withConfig({
34607
+ var Value$2 = /*#__PURE__*/styled__default.span.withConfig({
33122
34608
  displayName: "QuestList__Value",
33123
34609
  componentId: "sc-1c1y8sp-4"
33124
34610
  })(["flex-grow:1;color:", ";word-wrap:break-word;"], uiColors.white);
@@ -33185,9 +34671,9 @@ var InputRadio = function InputRadio(_ref) {
33185
34671
 
33186
34672
  var RPGUIScrollbar = function RPGUIScrollbar(_ref) {
33187
34673
  var children = _ref.children;
33188
- return React__default.createElement(Container$s, null, children);
34674
+ return React__default.createElement(Container$z, null, children);
33189
34675
  };
33190
- var Container$s = /*#__PURE__*/styled__default.div.withConfig({
34676
+ var Container$z = /*#__PURE__*/styled__default.div.withConfig({
33191
34677
  displayName: "RPGUIScrollbar__Container",
33192
34678
  componentId: "sc-p3msmb-0"
33193
34679
  })([".rpgui-content ::-webkit-scrollbar,.rpgui-content::-webkit-scrollbar{width:25px !important;}.rpgui-content ::-webkit-scrollbar-track,.rpgui-content::-webkit-scrollbar-track{background-size:25px 60px !important;}"]);
@@ -33343,7 +34829,7 @@ var SimpleProgressBar = function SimpleProgressBar(_ref) {
33343
34829
  margin = _ref$margin === void 0 ? 20 : _ref$margin;
33344
34830
  // Ensure the width is at least 1% if value is greater than 0
33345
34831
  var width = value > 0 ? Math.max(1, Math.min(100, value)) : 0;
33346
- return React__default.createElement(Container$t, {
34832
+ return React__default.createElement(Container$A, {
33347
34833
  className: "simple-progress-bar"
33348
34834
  }, React__default.createElement(ProgressBarContainer, {
33349
34835
  margin: margin
@@ -33352,7 +34838,7 @@ var SimpleProgressBar = function SimpleProgressBar(_ref) {
33352
34838
  bgColor: bgColor
33353
34839
  }))));
33354
34840
  };
33355
- var Container$t = /*#__PURE__*/styled__default.div.withConfig({
34841
+ var Container$A = /*#__PURE__*/styled__default.div.withConfig({
33356
34842
  displayName: "SimpleProgressBar__Container",
33357
34843
  componentId: "sc-mbeil3-0"
33358
34844
  })(["display:flex;justify-content:center;align-items:center;width:100%;"]);
@@ -33408,7 +34894,7 @@ var SkillProgressBar = function SkillProgressBar(_ref) {
33408
34894
  var result = level * (buffAndDebuff / 100);
33409
34895
  return result > 0 ? "+" + result.toFixed(2) : "" + result.toFixed(2);
33410
34896
  };
33411
- return React__default.createElement(React__default.Fragment, null, React__default.createElement(ProgressTitle, null, buffAndDebuff !== undefined && React__default.createElement(React__default.Fragment, null, buffAndDebuff > 0 ? React__default.createElement(BuffAndDebuffContainer, null, React__default.createElement(TitleNameContainer, null, React__default.createElement(TitleNameBuff, null, skillName), React__default.createElement(TitleNameBuff, null, "lv ", level, " (", skillsBuffsCalc(level, buffAndDebuff), ")")), React__default.createElement(TitleNameBuffContainer, null, React__default.createElement(TitleNameBuff, null, "(+", formatBuffAndDebuff(buffAndDebuff), "%)"))) : buffAndDebuff < 0 ? React__default.createElement(React__default.Fragment, null, React__default.createElement(TitleNameContainer, null, React__default.createElement(TitleNameDebuff, null, skillName), React__default.createElement(TitleNameDebuff, null, "lv ", level, " (", skillsBuffsCalc(level, buffAndDebuff), ")")), React__default.createElement("div", null, React__default.createElement(TitleNameDebuff, null, "(", formatBuffAndDebuff(buffAndDebuff), "%)"))) : React__default.createElement(TitleName, null, skillName)), !buffAndDebuff && React__default.createElement(TitleNameContainer, null, React__default.createElement(TitleName, null, skillName), React__default.createElement(ValueDisplay, null, "lv ", level))), React__default.createElement(ProgressBody, null, React__default.createElement(ProgressIconContainer, null, atlasIMG && atlasJSON ? React__default.createElement(SpriteContainer$2, null, React__default.createElement(ErrorBoundary, null, React__default.createElement(SpriteFromAtlas, {
34897
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement(ProgressTitle, null, buffAndDebuff !== undefined && React__default.createElement(React__default.Fragment, null, buffAndDebuff > 0 ? React__default.createElement(BuffAndDebuffContainer, null, React__default.createElement(TitleNameContainer, null, React__default.createElement(TitleNameBuff, null, skillName), React__default.createElement(TitleNameBuff, null, "lv ", level, " (", skillsBuffsCalc(level, buffAndDebuff), ")")), React__default.createElement(TitleNameBuffContainer, null, React__default.createElement(TitleNameBuff, null, "(+", formatBuffAndDebuff(buffAndDebuff), "%)"))) : buffAndDebuff < 0 ? React__default.createElement(React__default.Fragment, null, React__default.createElement(TitleNameContainer, null, React__default.createElement(TitleNameDebuff, null, skillName), React__default.createElement(TitleNameDebuff, null, "lv ", level, " (", skillsBuffsCalc(level, buffAndDebuff), ")")), React__default.createElement("div", null, React__default.createElement(TitleNameDebuff, null, "(", formatBuffAndDebuff(buffAndDebuff), "%)"))) : React__default.createElement(TitleName, null, skillName)), !buffAndDebuff && React__default.createElement(TitleNameContainer, null, React__default.createElement(TitleName, null, skillName), React__default.createElement(ValueDisplay, null, "lv ", level))), React__default.createElement(ProgressBody, null, React__default.createElement(ProgressIconContainer, null, atlasIMG && atlasJSON ? React__default.createElement(SpriteContainer$4, null, React__default.createElement(ErrorBoundary, null, React__default.createElement(SpriteFromAtlas, {
33412
34898
  atlasIMG: atlasIMG,
33413
34899
  atlasJSON: atlasJSON,
33414
34900
  spriteKey: texturePath,
@@ -33424,7 +34910,7 @@ var ProgressBarWrapper = /*#__PURE__*/styled__default.div.withConfig({
33424
34910
  displayName: "SkillProgressBar__ProgressBarWrapper",
33425
34911
  componentId: "sc-5vuroc-0"
33426
34912
  })(["position:relative;&:hover ", ",&:active ", "{visibility:visible;}width:100%;height:auto;top:8px;"], Tooltip, Tooltip);
33427
- var SpriteContainer$2 = /*#__PURE__*/styled__default.div.withConfig({
34913
+ var SpriteContainer$4 = /*#__PURE__*/styled__default.div.withConfig({
33428
34914
  displayName: "SkillProgressBar__SpriteContainer",
33429
34915
  componentId: "sc-5vuroc-1"
33430
34916
  })(["position:relative;top:-3px;left:0;"]);
@@ -33578,7 +35064,7 @@ var SkillsContainer = function SkillsContainer(_ref) {
33578
35064
  cancelDrag: "#skillsDiv",
33579
35065
  scale: scale,
33580
35066
  width: "100%"
33581
- }, onCloseButton && React__default.createElement(CloseButton$6, {
35067
+ }, onCloseButton && React__default.createElement(CloseButton$7, {
33582
35068
  onPointerDown: onCloseButton
33583
35069
  }, "X"), React__default.createElement(SkillsContainerDiv, {
33584
35070
  id: "skillsDiv"
@@ -33613,7 +35099,7 @@ var SkillSplitDiv = /*#__PURE__*/styled__default.div.withConfig({
33613
35099
  displayName: "SkillsContainer__SkillSplitDiv",
33614
35100
  componentId: "sc-1g0c67q-2"
33615
35101
  })(["width:100%;font-size:11px;hr{margin:0;margin-bottom:1rem;padding:0px;}p{margin-bottom:0px;}"]);
33616
- var CloseButton$6 = /*#__PURE__*/styled__default.div.withConfig({
35102
+ var CloseButton$7 = /*#__PURE__*/styled__default.div.withConfig({
33617
35103
  displayName: "SkillsContainer__CloseButton",
33618
35104
  componentId: "sc-1g0c67q-3"
33619
35105
  })(["position:absolute;top:2px;right:2px;color:white;z-index:22;font-size:1.1rem;"]);
@@ -33685,7 +35171,7 @@ var SocialModal = function SocialModal(_ref) {
33685
35171
  title: "Social Channels",
33686
35172
  width: "500px",
33687
35173
  onCloseButton: onClose
33688
- }, React__default.createElement(Container$u, null, React__default.createElement(HeaderImage, {
35174
+ }, React__default.createElement(Container$B, null, React__default.createElement(HeaderImage, {
33689
35175
  src: img$9,
33690
35176
  alt: ""
33691
35177
  }), React__default.createElement(ButtonsContainer$1, null, React__default.createElement(MainButtons, null, React__default.createElement(SocialButton$1, {
@@ -33703,7 +35189,7 @@ var SocialModal = function SocialModal(_ref) {
33703
35189
  onClick: handleWhatsAppClick
33704
35190
  }, React__default.createElement(fa.FaWhatsapp, null), " Join WhatsApp")))));
33705
35191
  };
33706
- var Container$u = /*#__PURE__*/styled__default.div.withConfig({
35192
+ var Container$B = /*#__PURE__*/styled__default.div.withConfig({
33707
35193
  displayName: "SocialModal__Container",
33708
35194
  componentId: "sc-tbjhp9-0"
33709
35195
  })(["width:100%;display:flex;flex-direction:column;gap:16px;background-color:#5c4132;position:relative;border-radius:8px;overflow:hidden;&:before,&:after{content:'';position:absolute;left:0;right:0;height:3px;}&:before{bottom:0;background:linear-gradient( to right,#5c4132 0%,#2b1810 2%,#2b1810 98%,#5c4132 100% );}"]);
@@ -33739,7 +35225,7 @@ var formatSpellCastingType = function formatSpellCastingType(castingType) {
33739
35225
  return formattedCastingType;
33740
35226
  };
33741
35227
 
33742
- var SpellInfo = function SpellInfo(_ref) {
35228
+ var SpellInfo$1 = function SpellInfo(_ref) {
33743
35229
  var spell = _ref.spell;
33744
35230
  var magicWords = spell.magicWords,
33745
35231
  name = spell.name,
@@ -33749,7 +35235,7 @@ var SpellInfo = function SpellInfo(_ref) {
33749
35235
  castingType = spell.castingType,
33750
35236
  cooldown = spell.cooldown,
33751
35237
  maxDistanceGrid = spell.maxDistanceGrid;
33752
- return React__default.createElement(Container$v, null, React__default.createElement(Header$2, null, React__default.createElement("div", null, React__default.createElement(Title$8, null, name), React__default.createElement(Type$1, null, magicWords))), React__default.createElement(Statistic$1, null, React__default.createElement("div", {
35238
+ return React__default.createElement(Container$C, null, React__default.createElement(Header$5, null, React__default.createElement("div", null, React__default.createElement(Title$b, null, name), React__default.createElement(Type$1, null, magicWords))), React__default.createElement(Statistic$1, null, React__default.createElement("div", {
33753
35239
  className: "label"
33754
35240
  }, "Casting Type:"), React__default.createElement("div", {
33755
35241
  className: "value"
@@ -33773,13 +35259,13 @@ var SpellInfo = function SpellInfo(_ref) {
33773
35259
  className: "label"
33774
35260
  }, "Required Item:"), React__default.createElement("div", {
33775
35261
  className: "value"
33776
- }, requiredItem))), React__default.createElement(Description$2, null, description));
35262
+ }, requiredItem))), React__default.createElement(Description$4, null, description));
33777
35263
  };
33778
- var Container$v = /*#__PURE__*/styled__default.div.withConfig({
35264
+ var Container$C = /*#__PURE__*/styled__default.div.withConfig({
33779
35265
  displayName: "SpellInfo__Container",
33780
35266
  componentId: "sc-4hbw3q-0"
33781
35267
  })(["color:white;background-color:#222;border-radius:5px;padding:0.5rem;font-size:", ";border:3px solid ", ";height:max-content;width:30rem;@media (max-width:580px){width:80vw;}"], uiFonts.size.small, uiColors.lightGray);
33782
- var Title$8 = /*#__PURE__*/styled__default.div.withConfig({
35268
+ var Title$b = /*#__PURE__*/styled__default.div.withConfig({
33783
35269
  displayName: "SpellInfo__Title",
33784
35270
  componentId: "sc-4hbw3q-1"
33785
35271
  })(["font-size:", ";font-weight:bold;margin-bottom:0.5rem;display:flex;align-items:center;margin:0;"], uiFonts.size.medium);
@@ -33787,11 +35273,11 @@ var Type$1 = /*#__PURE__*/styled__default.div.withConfig({
33787
35273
  displayName: "SpellInfo__Type",
33788
35274
  componentId: "sc-4hbw3q-2"
33789
35275
  })(["font-size:", ";margin-top:0.2rem;color:", ";"], uiFonts.size.small, uiColors.lightGray);
33790
- var Description$2 = /*#__PURE__*/styled__default.div.withConfig({
35276
+ var Description$4 = /*#__PURE__*/styled__default.div.withConfig({
33791
35277
  displayName: "SpellInfo__Description",
33792
35278
  componentId: "sc-4hbw3q-3"
33793
35279
  })(["margin-top:1.5rem;font-size:", ";color:", ";font-style:italic;"], uiFonts.size.small, uiColors.lightGray);
33794
- var Header$2 = /*#__PURE__*/styled__default.div.withConfig({
35280
+ var Header$5 = /*#__PURE__*/styled__default.div.withConfig({
33795
35281
  displayName: "SpellInfo__Header",
33796
35282
  componentId: "sc-4hbw3q-4"
33797
35283
  })(["display:flex;align-items:center;justify-content:space-between;margin-bottom:0.5rem;"]);
@@ -33805,7 +35291,7 @@ var SpellInfoDisplay = function SpellInfoDisplay(_ref) {
33805
35291
  isMobile = _ref.isMobile;
33806
35292
  return React__default.createElement(Flex$3, {
33807
35293
  "$isMobile": isMobile
33808
- }, React__default.createElement(SpellInfo, {
35294
+ }, React__default.createElement(SpellInfo$1, {
33809
35295
  spell: spell
33810
35296
  }));
33811
35297
  };
@@ -33829,7 +35315,7 @@ var MobileSpellTooltip = function MobileSpellTooltip(_ref) {
33829
35315
  var _ref$current;
33830
35316
  (_ref$current = ref.current) == null ? void 0 : _ref$current.classList.add('fadeOut');
33831
35317
  };
33832
- return React__default.createElement(ModalPortal, null, React__default.createElement(Container$w, {
35318
+ return React__default.createElement(ModalPortal, null, React__default.createElement(Container$D, {
33833
35319
  ref: ref,
33834
35320
  onTouchEnd: function onTouchEnd() {
33835
35321
  handleFadeOut();
@@ -33854,7 +35340,7 @@ var MobileSpellTooltip = function MobileSpellTooltip(_ref) {
33854
35340
  }, option.text);
33855
35341
  }))));
33856
35342
  };
33857
- var Container$w = /*#__PURE__*/styled__default.div.withConfig({
35343
+ var Container$D = /*#__PURE__*/styled__default.div.withConfig({
33858
35344
  displayName: "MobileSpellTooltip__Container",
33859
35345
  componentId: "sc-6p7uvr-0"
33860
35346
  })(["position:absolute;z-index:100;left:0;top:0;width:100vw;height:100vh;background-color:rgba(0 0 0 / 0.5);display:flex;justify-content:center;align-items:center;gap:0.5rem;transition:opacity 0.08s;animation:fadeIn 0.1s forwards;@keyframes fadeIn{0%{opacity:0;}100%{opacity:0.92;}}@keyframes fadeOut{0%{opacity:0.92;}100%{opacity:0;}}&.fadeOut{animation:fadeOut 0.1s forwards;}@media (max-width:580px){flex-direction:column;}"]);
@@ -33895,13 +35381,13 @@ var MagicTooltip = function MagicTooltip(_ref) {
33895
35381
  }
33896
35382
  return;
33897
35383
  }, []);
33898
- return React__default.createElement(ModalPortal, null, React__default.createElement(Container$x, {
35384
+ return React__default.createElement(ModalPortal, null, React__default.createElement(Container$E, {
33899
35385
  ref: ref
33900
35386
  }, React__default.createElement(SpellInfoDisplay, {
33901
35387
  spell: spell
33902
35388
  })));
33903
35389
  };
33904
- var Container$x = /*#__PURE__*/styled__default.div.withConfig({
35390
+ var Container$E = /*#__PURE__*/styled__default.div.withConfig({
33905
35391
  displayName: "SpellTooltip__Container",
33906
35392
  componentId: "sc-1go0gwg-0"
33907
35393
  })(["position:absolute;z-index:100;pointer-events:none;left:0;top:0;opacity:0;transition:opacity 0.08s;"]);
@@ -33974,11 +35460,11 @@ var Spell = function Spell(_ref) {
33974
35460
  var IMAGE_SCALE = 2;
33975
35461
  return React__default.createElement(SpellInfoWrapper, {
33976
35462
  spell: spell
33977
- }, React__default.createElement(Container$y, {
35463
+ }, React__default.createElement(Container$F, {
33978
35464
  onPointerUp: onPointerUp == null ? void 0 : onPointerUp.bind(null, spellKey),
33979
35465
  isSettingShortcut: isSettingShortcut && !disabled,
33980
35466
  className: "spell"
33981
- }, disabled && React__default.createElement(Overlay, null, charMagicLevel < minMagicLevelRequired ? 'Low magic level' : manaCost > charMana && 'No mana'), React__default.createElement(SpellImage, null, activeCooldown && activeCooldown > 0 ? React__default.createElement("span", {
35467
+ }, disabled && React__default.createElement(Overlay$1, null, charMagicLevel < minMagicLevelRequired ? 'Low magic level' : manaCost > charMana && 'No mana'), React__default.createElement(SpellImage, null, activeCooldown && activeCooldown > 0 ? React__default.createElement("span", {
33982
35468
  className: "cooldown"
33983
35469
  }, activeCooldown.toFixed(activeCooldown > 10 ? 0 : 1)) : null, React__default.createElement(SpriteFromAtlas, {
33984
35470
  atlasIMG: atlasIMG,
@@ -33987,13 +35473,13 @@ var Spell = function Spell(_ref) {
33987
35473
  imgScale: IMAGE_SCALE,
33988
35474
  containerStyle: CONTAINER_STYLE,
33989
35475
  centered: true
33990
- })), React__default.createElement(Info, null, React__default.createElement(Title$9, null, React__default.createElement("span", null, name), React__default.createElement("span", {
35476
+ })), React__default.createElement(Info, null, React__default.createElement(Title$c, null, React__default.createElement("span", null, name), React__default.createElement("span", {
33991
35477
  className: "spell"
33992
- }, "(", magicWords, ")")), React__default.createElement(Description$3, null, description)), React__default.createElement(Divider$1, null), React__default.createElement(Cost, null, React__default.createElement("span", null, "Mana cost:"), React__default.createElement("span", {
35478
+ }, "(", magicWords, ")")), React__default.createElement(Description$5, null, description)), React__default.createElement(Divider$1, null), React__default.createElement(Cost, null, React__default.createElement("span", null, "Mana cost:"), React__default.createElement("span", {
33993
35479
  className: "mana"
33994
35480
  }, manaCost))));
33995
35481
  };
33996
- var Container$y = /*#__PURE__*/styled__default.button.withConfig({
35482
+ var Container$F = /*#__PURE__*/styled__default.button.withConfig({
33997
35483
  displayName: "Spell__Container",
33998
35484
  componentId: "sc-j96fa2-0"
33999
35485
  })(["display:block;background:none;border:2px solid transparent;border-radius:1rem;width:100%;display:flex;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) {
@@ -34008,11 +35494,11 @@ var Info = /*#__PURE__*/styled__default.span.withConfig({
34008
35494
  displayName: "Spell__Info",
34009
35495
  componentId: "sc-j96fa2-2"
34010
35496
  })(["width:0;flex:1;@media (orientation:portrait){display:none;}"]);
34011
- var Title$9 = /*#__PURE__*/styled__default.p.withConfig({
35497
+ var Title$c = /*#__PURE__*/styled__default.p.withConfig({
34012
35498
  displayName: "Spell__Title",
34013
35499
  componentId: "sc-j96fa2-3"
34014
35500
  })(["display:flex;flex-wrap:wrap;align-items:center;margin-bottom:5px;margin:0;span{font-size:", " !important;font-weight:bold !important;color:", " !important;margin-right:0.5rem;}.spell{font-size:", " !important;font-weight:normal !important;color:", " !important;}"], uiFonts.size.medium, uiColors.yellow, uiFonts.size.small, uiColors.lightGray);
34015
- var Description$3 = /*#__PURE__*/styled__default.div.withConfig({
35501
+ var Description$5 = /*#__PURE__*/styled__default.div.withConfig({
34016
35502
  displayName: "Spell__Description",
34017
35503
  componentId: "sc-j96fa2-4"
34018
35504
  })(["font-size:", " !important;line-height:1.1 !important;"], uiFonts.size.small);
@@ -34024,7 +35510,7 @@ var Cost = /*#__PURE__*/styled__default.p.withConfig({
34024
35510
  displayName: "Spell__Cost",
34025
35511
  componentId: "sc-j96fa2-6"
34026
35512
  })(["display:flex;align-items:center;flex-direction:column;gap:0.5rem;div{z-index:1;}.mana{position:relative;font-size:", ";font-weight:bold;z-index:1;&::after{position:absolute;content:'';top:0;left:0;background-color:", ";width:100%;height:100%;border-radius:50%;transform:scale(1.8);filter:blur(10px);z-index:-1;}}"], uiFonts.size.medium, uiColors.blue);
34027
- var Overlay = /*#__PURE__*/styled__default.p.withConfig({
35513
+ var Overlay$1 = /*#__PURE__*/styled__default.p.withConfig({
34028
35514
  displayName: "Spell__Overlay",
34029
35515
  componentId: "sc-j96fa2-7"
34030
35516
  })(["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);
@@ -34072,7 +35558,7 @@ var Spellbook = function Spellbook(_ref) {
34072
35558
  height: "inherit",
34073
35559
  cancelDrag: "#spellbook-search, #shortcuts_list, .spell",
34074
35560
  scale: scale
34075
- }, React__default.createElement(Container$z, null, React__default.createElement(Title$a, null, "Learned Spells"), React__default.createElement(ShortcutsSetter, {
35561
+ }, React__default.createElement(Container$G, null, React__default.createElement(Title$d, null, "Learned Spells"), React__default.createElement(ShortcutsSetter, {
34076
35562
  setSettingShortcutIndex: setSettingShortcutIndex,
34077
35563
  settingShortcutIndex: settingShortcutIndex,
34078
35564
  shortcuts: shortcuts,
@@ -34088,7 +35574,7 @@ var Spellbook = function Spellbook(_ref) {
34088
35574
  onFocus: onInputFocus,
34089
35575
  onBlur: onInputBlur,
34090
35576
  id: "spellbook-search"
34091
- }), React__default.createElement(SpellList, null, spellsToDisplay.map(function (spell) {
35577
+ }), React__default.createElement(SpellList$1, null, spellsToDisplay.map(function (spell) {
34092
35578
  return React__default.createElement(React.Fragment, {
34093
35579
  key: spell.key
34094
35580
  }, React__default.createElement(Spell, Object.assign({
@@ -34104,15 +35590,15 @@ var Spellbook = function Spellbook(_ref) {
34104
35590
  }, spell)));
34105
35591
  }))));
34106
35592
  };
34107
- var Title$a = /*#__PURE__*/styled__default.h1.withConfig({
35593
+ var Title$d = /*#__PURE__*/styled__default.h1.withConfig({
34108
35594
  displayName: "Spellbook__Title",
34109
35595
  componentId: "sc-r02nfq-0"
34110
35596
  })(["font-size:", " !important;margin-bottom:0 !important;"], uiFonts.size.large);
34111
- var Container$z = /*#__PURE__*/styled__default.div.withConfig({
35597
+ var Container$G = /*#__PURE__*/styled__default.div.withConfig({
34112
35598
  displayName: "Spellbook__Container",
34113
35599
  componentId: "sc-r02nfq-1"
34114
35600
  })(["width:100%;height:100%;color:white;display:flex;flex-direction:column;"]);
34115
- var SpellList = /*#__PURE__*/styled__default.div.withConfig({
35601
+ var SpellList$1 = /*#__PURE__*/styled__default.div.withConfig({
34116
35602
  displayName: "Spellbook__SpellList",
34117
35603
  componentId: "sc-r02nfq-2"
34118
35604
  })(["width:100%;min-height:0;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:1.5rem;margin-top:1rem;"]);
@@ -34294,7 +35780,7 @@ var TimeWidget = function TimeWidget(_ref) {
34294
35780
  return React__default.createElement(Draggable, {
34295
35781
  scale: scale,
34296
35782
  cancel: ".time-widget-close,.time-widget-container,.time-widget-container *"
34297
- }, React__default.createElement(WidgetContainer, null, React__default.createElement(CloseButton$7, {
35783
+ }, React__default.createElement(WidgetContainer, null, React__default.createElement(CloseButton$8, {
34298
35784
  onPointerDown: onClose,
34299
35785
  className: "time-widget-close"
34300
35786
  }, "X"), React__default.createElement(DayNightContainer, {
@@ -34311,7 +35797,7 @@ var Time = /*#__PURE__*/styled__default.div.withConfig({
34311
35797
  displayName: "TimeWidget__Time",
34312
35798
  componentId: "sc-1ja236h-1"
34313
35799
  })(["top:0.75rem;right:0.5rem;position:absolute;font-size:", ";color:white;"], uiFonts.size.small);
34314
- var CloseButton$7 = /*#__PURE__*/styled__default.p.withConfig({
35800
+ var CloseButton$8 = /*#__PURE__*/styled__default.p.withConfig({
34315
35801
  displayName: "TimeWidget__CloseButton",
34316
35802
  componentId: "sc-1ja236h-2"
34317
35803
  })(["position:absolute;top:-0.5rem;margin:0;right:-0.2rem;font-size:", " !important;z-index:1;"], uiFonts.size.small);
@@ -34420,7 +35906,7 @@ var TradingItemRow = function TradingItemRow(_ref) {
34420
35906
  }
34421
35907
  return null;
34422
35908
  };
34423
- return React__default.createElement(ItemWrapper, null, React__default.createElement(ItemIconContainer$1, null, React__default.createElement(SpriteContainer$3, null, React__default.createElement(ItemInfoWrapper, {
35909
+ return React__default.createElement(ItemWrapper, null, React__default.createElement(ItemIconContainer$1, null, React__default.createElement(SpriteContainer$5, null, React__default.createElement(ItemInfoWrapper, {
34424
35910
  atlasIMG: atlasIMG,
34425
35911
  atlasJSON: atlasJSON,
34426
35912
  equipmentSet: equipmentSet,
@@ -34492,7 +35978,7 @@ var ItemIconContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
34492
35978
  displayName: "TradingItemRow__ItemIconContainer",
34493
35979
  componentId: "sc-mja0b5-3"
34494
35980
  })(["display:flex;justify-content:flex-start;align-items:center;flex:0 0 40px;"]);
34495
- var SpriteContainer$3 = /*#__PURE__*/styled__default.div.withConfig({
35981
+ var SpriteContainer$5 = /*#__PURE__*/styled__default.div.withConfig({
34496
35982
  displayName: "TradingItemRow__SpriteContainer",
34497
35983
  componentId: "sc-mja0b5-4"
34498
35984
  })(["position:relative;top:-0.5rem;left:0;"]);
@@ -34590,7 +36076,7 @@ var TradingMenu = function TradingMenu(_ref) {
34590
36076
  width: "500px",
34591
36077
  cancelDrag: "#TraderContainer",
34592
36078
  scale: scale
34593
- }, React__default.createElement(Container$A, null, React__default.createElement(Title$b, null, type.charAt(0).toUpperCase() + type.slice(1), " Menu"), React__default.createElement("hr", {
36079
+ }, React__default.createElement(Container$H, null, React__default.createElement(Title$e, null, type.charAt(0).toUpperCase() + type.slice(1), " Menu"), React__default.createElement("hr", {
34594
36080
  className: "golden"
34595
36081
  }), React__default.createElement(ScrollWrapper, {
34596
36082
  id: "TraderContainer"
@@ -34607,7 +36093,7 @@ var TradingMenu = function TradingMenu(_ref) {
34607
36093
  scale: scale,
34608
36094
  isBuy: isBuy()
34609
36095
  });
34610
- })), React__default.createElement(InfoSection, null, React__default.createElement(GoldInfo, null, React__default.createElement("p", null, "Available Gold:"), React__default.createElement("p", null, "$", characterAvailableGold.toFixed(2))), React__default.createElement(GoldInfo, null, React__default.createElement("p", null, "Total:"), React__default.createElement("p", null, "$", sum)), !hasGoldForSale() ? React__default.createElement(AlertText, null, "Sorry, not enough money.") : React__default.createElement(GoldInfo, null, React__default.createElement("p", null, "Final Gold:"), React__default.createElement("p", null, "$", getFinalGold().toFixed(2)))), React__default.createElement(ButtonWrapper$2, null, React__default.createElement(Button, {
36096
+ })), React__default.createElement(InfoSection$2, null, React__default.createElement(GoldInfo, null, React__default.createElement("p", null, "Available Gold:"), React__default.createElement("p", null, "$", characterAvailableGold.toFixed(2))), React__default.createElement(GoldInfo, null, React__default.createElement("p", null, "Total:"), React__default.createElement("p", null, "$", sum)), !hasGoldForSale() ? React__default.createElement(AlertText, null, "Sorry, not enough money.") : React__default.createElement(GoldInfo, null, React__default.createElement("p", null, "Final Gold:"), React__default.createElement("p", null, "$", getFinalGold().toFixed(2)))), React__default.createElement(ButtonWrapper$3, null, React__default.createElement(Button, {
34611
36097
  buttonType: exports.ButtonTypes.RPGUIButton,
34612
36098
  disabled: !hasGoldForSale(),
34613
36099
  onPointerDown: function onPointerDown() {
@@ -34618,11 +36104,11 @@ var TradingMenu = function TradingMenu(_ref) {
34618
36104
  onPointerDown: onClose
34619
36105
  }, "Cancel"))));
34620
36106
  };
34621
- var Container$A = /*#__PURE__*/styled__default.div.withConfig({
36107
+ var Container$H = /*#__PURE__*/styled__default.div.withConfig({
34622
36108
  displayName: "TradingMenu__Container",
34623
36109
  componentId: "sc-1wjsz1l-0"
34624
36110
  })(["width:100%;"]);
34625
- var Title$b = /*#__PURE__*/styled__default.h1.withConfig({
36111
+ var Title$e = /*#__PURE__*/styled__default.h1.withConfig({
34626
36112
  displayName: "TradingMenu__Title",
34627
36113
  componentId: "sc-1wjsz1l-1"
34628
36114
  })(["font-size:0.7rem !important;color:yellow !important;text-align:center;"]);
@@ -34630,7 +36116,7 @@ var ScrollWrapper = /*#__PURE__*/styled__default.div.withConfig({
34630
36116
  displayName: "TradingMenu__ScrollWrapper",
34631
36117
  componentId: "sc-1wjsz1l-2"
34632
36118
  })(["overflow-y:scroll;height:250px;width:100%;margin-top:0.3rem;overflow-x:hidden;padding:0 0.3rem;"]);
34633
- var InfoSection = /*#__PURE__*/styled__default.div.withConfig({
36119
+ var InfoSection$2 = /*#__PURE__*/styled__default.div.withConfig({
34634
36120
  displayName: "TradingMenu__InfoSection",
34635
36121
  componentId: "sc-1wjsz1l-3"
34636
36122
  })(["margin-top:0.3rem;padding:0 0.5rem;"]);
@@ -34642,7 +36128,7 @@ var AlertText = /*#__PURE__*/styled__default.p.withConfig({
34642
36128
  displayName: "TradingMenu__AlertText",
34643
36129
  componentId: "sc-1wjsz1l-5"
34644
36130
  })(["color:red !important;text-align:center;margin:0.3rem 0;font-size:0.5rem;"]);
34645
- var ButtonWrapper$2 = /*#__PURE__*/styled__default.div.withConfig({
36131
+ var ButtonWrapper$3 = /*#__PURE__*/styled__default.div.withConfig({
34646
36132
  displayName: "TradingMenu__ButtonWrapper",
34647
36133
  componentId: "sc-1wjsz1l-6"
34648
36134
  })(["display:flex;justify-content:space-around;width:100%;margin-top:1rem;"]);
@@ -34652,11 +36138,11 @@ var Truncate = function Truncate(_ref) {
34652
36138
  var _ref$maxLines = _ref.maxLines,
34653
36139
  maxLines = _ref$maxLines === void 0 ? 1 : _ref$maxLines,
34654
36140
  children = _ref.children;
34655
- return React__default.createElement(Container$B, {
36141
+ return React__default.createElement(Container$I, {
34656
36142
  maxLines: maxLines
34657
36143
  }, children);
34658
36144
  };
34659
- var Container$B = /*#__PURE__*/styled__default.div.withConfig({
36145
+ var Container$I = /*#__PURE__*/styled__default.div.withConfig({
34660
36146
  displayName: "Truncate__Container",
34661
36147
  componentId: "sc-6x00qb-0"
34662
36148
  })(["display:-webkit-box;max-width:100%;max-height:100%;-webkit-line-clamp:", ";-webkit-box-orient:vertical;overflow:hidden;"], function (props) {
@@ -34764,7 +36250,7 @@ var TutorialStepper = /*#__PURE__*/React__default.memo(function (_ref) {
34764
36250
  };
34765
36251
  });
34766
36252
  }, [lessons, imageStyle]);
34767
- return React__default.createElement(Container$C, null, React__default.createElement(Stepper, {
36253
+ return React__default.createElement(Container$J, null, React__default.createElement(Stepper, {
34768
36254
  steps: generateLessons,
34769
36255
  finalCTAButton: {
34770
36256
  label: 'Close',
@@ -34781,7 +36267,7 @@ var LessonBody = /*#__PURE__*/styled__default.div.withConfig({
34781
36267
  displayName: "TutorialStepper__LessonBody",
34782
36268
  componentId: "sc-7tgzv2-1"
34783
36269
  })([""]);
34784
- var Container$C = /*#__PURE__*/styled__default.div.withConfig({
36270
+ var Container$J = /*#__PURE__*/styled__default.div.withConfig({
34785
36271
  displayName: "TutorialStepper__Container",
34786
36272
  componentId: "sc-7tgzv2-2"
34787
36273
  })(["width:80%;max-width:600px;@media (max-width:600px){width:95%;}"]);
@@ -34821,8 +36307,10 @@ exports.EquipmentSet = EquipmentSet;
34821
36307
  exports.EquipmentSlotSpriteByType = EquipmentSlotSpriteByType;
34822
36308
  exports.ErrorBoundary = ErrorBoundary;
34823
36309
  exports.FriendList = FriendList;
36310
+ exports.GemSelector = GemSelector;
34824
36311
  exports.HistoryDialog = HistoryDialog;
34825
36312
  exports.ImageCarousel = ImageCarousel;
36313
+ exports.InformationCenter = InformationCenter;
34826
36314
  exports.Input = Input;
34827
36315
  exports.InputRadio = InputRadio;
34828
36316
  exports.InternalTabs = InternalTabs;