@rpg-engine/long-bow 0.8.135 → 0.8.137

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.
@@ -30192,6 +30192,739 @@ var TaskTitle$1 = /*#__PURE__*/styled__default.h2.withConfig({
30192
30192
  return props.isMobile ? '4px 0' : '8px 0';
30193
30193
  });
30194
30194
 
30195
+ var UI_BREAKPOINT_MOBILE = '950px';
30196
+ var UI_BREAKPOINT_SMALL_LAPTOP = '1400px';
30197
+
30198
+ var InternalTabs = function InternalTabs(_ref) {
30199
+ var _tabs$, _tabs$find;
30200
+ var tabs = _ref.tabs,
30201
+ _ref$activeColor = _ref.activeColor,
30202
+ activeColor = _ref$activeColor === void 0 ? '#fef08a' : _ref$activeColor,
30203
+ _ref$activeTextColor = _ref.activeTextColor,
30204
+ activeTextColor = _ref$activeTextColor === void 0 ? '#000000' : _ref$activeTextColor,
30205
+ _ref$inactiveColor = _ref.inactiveColor,
30206
+ inactiveColor = _ref$inactiveColor === void 0 ? '#6b7280' : _ref$inactiveColor,
30207
+ _ref$borderColor = _ref.borderColor,
30208
+ borderColor = _ref$borderColor === void 0 ? '#f59e0b' : _ref$borderColor,
30209
+ _ref$hoverColor = _ref.hoverColor,
30210
+ hoverColor = _ref$hoverColor === void 0 ? '#fef3c7' : _ref$hoverColor,
30211
+ onTabChange = _ref.onTabChange,
30212
+ externalActiveTab = _ref.activeTab;
30213
+ var _useState = React.useState((_tabs$ = tabs[0]) == null ? void 0 : _tabs$.id),
30214
+ internalActiveTab = _useState[0],
30215
+ setInternalActiveTab = _useState[1];
30216
+ var activeTabId = externalActiveTab != null ? externalActiveTab : internalActiveTab;
30217
+ var handleTabClick = function handleTabClick(tabId) {
30218
+ setInternalActiveTab(tabId);
30219
+ onTabChange == null ? void 0 : onTabChange(tabId);
30220
+ };
30221
+ return React__default.createElement(TableWrapper, null, React__default.createElement(TabHeader, {
30222
+ borderColor: borderColor
30223
+ }, tabs.map(function (tab) {
30224
+ return React__default.createElement(TabButton, {
30225
+ key: tab.id,
30226
+ active: activeTabId === tab.id,
30227
+ activeColor: activeColor,
30228
+ activeTextColor: activeTextColor,
30229
+ inactiveColor: inactiveColor,
30230
+ borderColor: borderColor,
30231
+ hoverColor: hoverColor,
30232
+ onClick: function onClick() {
30233
+ return handleTabClick(tab.id);
30234
+ }
30235
+ }, tab.title);
30236
+ })), React__default.createElement(ContentWrapper, null, (_tabs$find = tabs.find(function (tab) {
30237
+ return tab.id === activeTabId;
30238
+ })) == null ? void 0 : _tabs$find.content));
30239
+ };
30240
+ var TableWrapper = /*#__PURE__*/styled__default.div.withConfig({
30241
+ displayName: "InternalTabs__TableWrapper",
30242
+ componentId: "sc-ldufv0-0"
30243
+ })(["width:100%;"]);
30244
+ var TabHeader = /*#__PURE__*/styled__default.div.withConfig({
30245
+ displayName: "InternalTabs__TabHeader",
30246
+ componentId: "sc-ldufv0-1"
30247
+ })(["display:flex;border-bottom:1px solid ", ";"], function (props) {
30248
+ return props.borderColor;
30249
+ });
30250
+ var TabButton = /*#__PURE__*/styled__default.button.withConfig({
30251
+ displayName: "InternalTabs__TabButton",
30252
+ componentId: "sc-ldufv0-2"
30253
+ })(["flex:1;padding:0.25rem 0.5rem;font-size:0.75rem;font-weight:500;border-right:1px solid ", ";background-color:", ";color:", ";white-space:nowrap;overflow:hidden;text-overflow:ellipsis;@media (min-width:480px){padding:0.375rem 0.75rem;font-size:0.8125rem;}@media (min-width:", "){padding:0.5rem 1rem;font-size:0.875rem;}&:last-child{border-right:none;}&:hover{background-color:", ";}"], function (props) {
30254
+ return props.borderColor;
30255
+ }, function (props) {
30256
+ return props.active ? props.activeColor : 'transparent';
30257
+ }, function (props) {
30258
+ return props.active ? props.activeTextColor : props.inactiveColor;
30259
+ }, UI_BREAKPOINT_MOBILE, function (props) {
30260
+ return props.active ? props.activeColor : props.hoverColor;
30261
+ });
30262
+ var ContentWrapper = /*#__PURE__*/styled__default.div.withConfig({
30263
+ displayName: "InternalTabs__ContentWrapper",
30264
+ componentId: "sc-ldufv0-3"
30265
+ })(["width:100%;"]);
30266
+
30267
+ var Pagination = function Pagination(_ref) {
30268
+ var currentPage = _ref.currentPage,
30269
+ totalPages = _ref.totalPages,
30270
+ onPageChange = _ref.onPageChange,
30271
+ className = _ref.className;
30272
+ return React__default.createElement(Container$j, {
30273
+ className: className
30274
+ }, React__default.createElement(PaginationButton$1, {
30275
+ onClick: function onClick() {
30276
+ return onPageChange(Math.max(1, currentPage - 1));
30277
+ },
30278
+ disabled: currentPage === 1
30279
+ }, React__default.createElement(fa.FaChevronLeft, {
30280
+ size: 12
30281
+ })), React__default.createElement(PageInfo$1, null, "Page ", currentPage, " of ", totalPages), React__default.createElement(PaginationButton$1, {
30282
+ onClick: function onClick() {
30283
+ return onPageChange(Math.min(totalPages, currentPage + 1));
30284
+ },
30285
+ disabled: currentPage === totalPages
30286
+ }, React__default.createElement(fa.FaChevronRight, {
30287
+ size: 12
30288
+ })));
30289
+ };
30290
+ var Container$j = /*#__PURE__*/styled__default.div.withConfig({
30291
+ displayName: "Pagination__Container",
30292
+ componentId: "sc-3k4m4u-0"
30293
+ })(["display:flex;align-items:center;justify-content:center;gap:16px;padding:8px;"]);
30294
+ var PaginationButton$1 = /*#__PURE__*/styled__default.button.withConfig({
30295
+ displayName: "Pagination__PaginationButton",
30296
+ componentId: "sc-3k4m4u-1"
30297
+ })(["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) {
30298
+ return props.disabled ? uiColors.darkGray : uiColors.yellow;
30299
+ }, function (props) {
30300
+ return props.disabled ? 'not-allowed' : 'pointer';
30301
+ }, function (props) {
30302
+ return props.disabled ? 0.5 : 0.8;
30303
+ });
30304
+ var PageInfo$1 = /*#__PURE__*/styled__default.div.withConfig({
30305
+ displayName: "Pagination__PageInfo",
30306
+ componentId: "sc-3k4m4u-2"
30307
+ })(["color:", ";font-size:0.8rem;font-family:'Press Start 2P',cursive;"], uiColors.lightGray);
30308
+
30309
+ var TRANSACTION_TYPE_LABELS = {
30310
+ Purchase: 'Purchase',
30311
+ Transfer: 'Transfer',
30312
+ MarketplaceSale: 'Mkt Sale',
30313
+ MarketplacePurchase: 'Mkt Buy',
30314
+ StorePurchase: 'Store',
30315
+ Fee: 'Fee',
30316
+ Refund: 'Refund',
30317
+ AdminAdjustment: 'Admin'
30318
+ };
30319
+ var TRANSACTION_TYPE_OPTIONS = [{
30320
+ value: '',
30321
+ label: 'All Types'
30322
+ }, {
30323
+ value: 'Purchase',
30324
+ label: 'Purchase'
30325
+ }, {
30326
+ value: 'Transfer',
30327
+ label: 'Transfer'
30328
+ }, {
30329
+ value: 'MarketplaceSale',
30330
+ label: 'Marketplace Sale'
30331
+ }, {
30332
+ value: 'MarketplacePurchase',
30333
+ label: 'Marketplace Buy'
30334
+ }, {
30335
+ value: 'StorePurchase',
30336
+ label: 'Store Purchase'
30337
+ }, {
30338
+ value: 'Fee',
30339
+ label: 'Fee'
30340
+ }, {
30341
+ value: 'Refund',
30342
+ label: 'Refund'
30343
+ }, {
30344
+ value: 'AdminAdjustment',
30345
+ label: 'Admin Adjustment'
30346
+ }];
30347
+ var DCHistoryPanel = function DCHistoryPanel(_ref) {
30348
+ var transactions = _ref.transactions,
30349
+ totalPages = _ref.totalPages,
30350
+ currentPage = _ref.currentPage,
30351
+ loading = _ref.loading,
30352
+ onRequestHistory = _ref.onRequestHistory;
30353
+ var _React$useState = React__default.useState(''),
30354
+ selectedType = _React$useState[0],
30355
+ setSelectedType = _React$useState[1];
30356
+ // Auto-load on first mount (when History tab is opened)
30357
+ React__default.useEffect(function () {
30358
+ onRequestHistory(1);
30359
+ // eslint-disable-next-line react-hooks/exhaustive-deps
30360
+ }, []);
30361
+ var handleTypeChange = function handleTypeChange(e) {
30362
+ var value = e.target.value;
30363
+ setSelectedType(value);
30364
+ onRequestHistory(1, value || undefined);
30365
+ };
30366
+ var handlePageChange = function handlePageChange(page) {
30367
+ onRequestHistory(page, selectedType || undefined);
30368
+ };
30369
+ var formatDate = function formatDate(dateStr) {
30370
+ var d = new Date(dateStr);
30371
+ return d.getMonth() + 1 + "/" + d.getDate() + "/" + String(d.getFullYear()).slice(-2);
30372
+ };
30373
+ return React__default.createElement(PanelContainer, null, React__default.createElement(FilterRow, null, React__default.createElement(FilterLabel, null, "Filter:"), React__default.createElement(TypeSelect, {
30374
+ value: selectedType,
30375
+ onChange: handleTypeChange
30376
+ }, TRANSACTION_TYPE_OPTIONS.map(function (opt) {
30377
+ return React__default.createElement("option", {
30378
+ key: opt.value,
30379
+ value: opt.value
30380
+ }, opt.label);
30381
+ }))), loading && React__default.createElement(LoadingRow, null, React__default.createElement(Spinner, null), React__default.createElement("span", null, "Loading...")), !loading && transactions.length === 0 && React__default.createElement(EmptyMessage, null, "No transactions found."), !loading && transactions.length > 0 && React__default.createElement(TransactionList, null, transactions.map(function (tx) {
30382
+ var _TRANSACTION_TYPE_LAB, _tx$note;
30383
+ var isCredit = tx.amount > 0;
30384
+ var label = (_TRANSACTION_TYPE_LAB = TRANSACTION_TYPE_LABELS[tx.type]) != null ? _TRANSACTION_TYPE_LAB : tx.type;
30385
+ var subtitle = (_tx$note = tx.note) != null ? _tx$note : tx.relatedCharacterName ? tx.relatedCharacterName : '';
30386
+ return React__default.createElement(TransactionRow, {
30387
+ key: tx._id
30388
+ }, React__default.createElement(TxLeft, null, React__default.createElement(TxType, null, label), subtitle ? React__default.createElement(TxNote, null, subtitle) : null), React__default.createElement(TxRight, null, React__default.createElement(TxAmount, {
30389
+ "$credit": isCredit
30390
+ }, isCredit ? '+' : '', tx.amount, " DC"), React__default.createElement(TxDate, null, formatDate(tx.createdAt))));
30391
+ })), totalPages > 1 && React__default.createElement(Pagination, {
30392
+ currentPage: currentPage,
30393
+ totalPages: totalPages,
30394
+ onPageChange: handlePageChange
30395
+ }));
30396
+ };
30397
+ var PanelContainer = /*#__PURE__*/styled__default.div.withConfig({
30398
+ displayName: "DCHistoryPanel__PanelContainer",
30399
+ componentId: "sc-debjdj-0"
30400
+ })(["display:flex;flex-direction:column;gap:6px;padding:4px 0;"]);
30401
+ var FilterRow = /*#__PURE__*/styled__default.div.withConfig({
30402
+ displayName: "DCHistoryPanel__FilterRow",
30403
+ componentId: "sc-debjdj-1"
30404
+ })(["display:flex;align-items:center;gap:8px;margin-bottom:2px;"]);
30405
+ var FilterLabel = /*#__PURE__*/styled__default.span.withConfig({
30406
+ displayName: "DCHistoryPanel__FilterLabel",
30407
+ componentId: "sc-debjdj-2"
30408
+ })(["font-size:7px;color:#f59e0b;font-family:'Press Start 2P',cursive;white-space:nowrap;"]);
30409
+ var TypeSelect = /*#__PURE__*/styled__default.select.withConfig({
30410
+ displayName: "DCHistoryPanel__TypeSelect",
30411
+ componentId: "sc-debjdj-3"
30412
+ })(["background:rgba(0,0,0,0.7);border:1px solid rgba(245,158,11,0.4);border-radius:3px;color:#f59e0b;font-size:7px;font-family:'Press Start 2P',cursive;padding:3px 5px;cursor:pointer;outline:none;flex:1;option{background:#1a1a2e;color:#f59e0b;}&:hover{border-color:#f59e0b;}&:focus{border-color:#f59e0b;box-shadow:0 0 0 1px rgba(245,158,11,0.3);}"]);
30413
+ var TransactionList = /*#__PURE__*/styled__default.div.withConfig({
30414
+ displayName: "DCHistoryPanel__TransactionList",
30415
+ componentId: "sc-debjdj-4"
30416
+ })(["display:flex;flex-direction:column;gap:3px;max-height:260px;overflow-y:auto;&::-webkit-scrollbar{width:4px;}&::-webkit-scrollbar-track{background:rgba(0,0,0,0.3);}&::-webkit-scrollbar-thumb{background:rgba(245,158,11,0.4);border-radius:2px;}"]);
30417
+ var TransactionRow = /*#__PURE__*/styled__default.div.withConfig({
30418
+ displayName: "DCHistoryPanel__TransactionRow",
30419
+ componentId: "sc-debjdj-5"
30420
+ })(["background:rgba(0,0,0,0.35);border:1px solid rgba(245,158,11,0.15);border-radius:2px;padding:5px 7px;display:flex;align-items:center;gap:8px;"]);
30421
+ var TxLeft = /*#__PURE__*/styled__default.div.withConfig({
30422
+ displayName: "DCHistoryPanel__TxLeft",
30423
+ componentId: "sc-debjdj-6"
30424
+ })(["flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;"]);
30425
+ var TxRight = /*#__PURE__*/styled__default.div.withConfig({
30426
+ displayName: "DCHistoryPanel__TxRight",
30427
+ componentId: "sc-debjdj-7"
30428
+ })(["display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0;"]);
30429
+ var TxType = /*#__PURE__*/styled__default.span.withConfig({
30430
+ displayName: "DCHistoryPanel__TxType",
30431
+ componentId: "sc-debjdj-8"
30432
+ })(["font-size:7px;color:#f59e0b;font-family:'Press Start 2P',cursive;"]);
30433
+ var TxAmount = /*#__PURE__*/styled__default.span.withConfig({
30434
+ displayName: "DCHistoryPanel__TxAmount",
30435
+ componentId: "sc-debjdj-9"
30436
+ })(["font-size:8px;font-family:'Press Start 2P',cursive;color:", ";white-space:nowrap;"], function (_ref2) {
30437
+ var $credit = _ref2.$credit;
30438
+ return $credit ? uiColors.green : uiColors.red;
30439
+ });
30440
+ var TxNote = /*#__PURE__*/styled__default.span.withConfig({
30441
+ displayName: "DCHistoryPanel__TxNote",
30442
+ componentId: "sc-debjdj-10"
30443
+ })(["font-size:6px;color:", ";font-family:'Press Start 2P',cursive;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;"], uiColors.lightGray);
30444
+ var TxDate = /*#__PURE__*/styled__default.span.withConfig({
30445
+ displayName: "DCHistoryPanel__TxDate",
30446
+ componentId: "sc-debjdj-11"
30447
+ })(["font-size:6px;color:rgba(255,255,255,0.4);font-family:'Press Start 2P',cursive;white-space:nowrap;"]);
30448
+ var LoadingRow = /*#__PURE__*/styled__default.div.withConfig({
30449
+ displayName: "DCHistoryPanel__LoadingRow",
30450
+ componentId: "sc-debjdj-12"
30451
+ })(["display:flex;align-items:center;gap:8px;justify-content:center;padding:16px;color:", ";font-size:9px;font-family:'Press Start 2P',cursive;"], uiColors.white);
30452
+ var Spinner = /*#__PURE__*/styled__default.div.withConfig({
30453
+ displayName: "DCHistoryPanel__Spinner",
30454
+ componentId: "sc-debjdj-13"
30455
+ })(["border:3px solid rgba(255,255,255,0.2);border-radius:50%;border-top:3px solid #f59e0b;width:16px;height:16px;animation:spin 0.8s linear infinite;@keyframes spin{0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}"]);
30456
+ var EmptyMessage = /*#__PURE__*/styled__default.div.withConfig({
30457
+ displayName: "DCHistoryPanel__EmptyMessage",
30458
+ componentId: "sc-debjdj-14"
30459
+ })(["font-size:8px;color:", ";font-family:'Press Start 2P',cursive;text-align:center;padding:20px;"], uiColors.lightGray);
30460
+
30461
+ // Global style to prevent body scrolling when modal is open
30462
+ var GlobalStyle = /*#__PURE__*/styled.createGlobalStyle(["body{overflow:hidden;width:100%;height:100%;}"]);
30463
+ var ConfirmModal = function ConfirmModal(_ref) {
30464
+ var onConfirm = _ref.onConfirm,
30465
+ onClose = _ref.onClose,
30466
+ _ref$message = _ref.message,
30467
+ message = _ref$message === void 0 ? 'Are you sure?' : _ref$message;
30468
+ var handleConfirm = React.useCallback(function (e) {
30469
+ e.preventDefault();
30470
+ e.stopPropagation();
30471
+ onConfirm();
30472
+ }, [onConfirm]);
30473
+ var handleClose = React.useCallback(function (e) {
30474
+ e.preventDefault();
30475
+ e.stopPropagation();
30476
+ onClose();
30477
+ }, [onClose]);
30478
+ // Fix type issues by separating event handlers for different event types
30479
+ var stopPropagationClick = React.useCallback(function (e) {
30480
+ e.stopPropagation();
30481
+ }, []);
30482
+ var stopPropagationTouch = React.useCallback(function (e) {
30483
+ e.stopPropagation();
30484
+ }, []);
30485
+ var stopPropagationPointer = React.useCallback(function (e) {
30486
+ e.stopPropagation();
30487
+ }, []);
30488
+ return React__default.createElement(ModalPortal, null, React__default.createElement(GlobalStyle, null), React__default.createElement(Overlay, {
30489
+ onPointerDown: handleClose
30490
+ }), React__default.createElement(ModalContainer, null, React__default.createElement(ModalContent, {
30491
+ onClick: stopPropagationClick,
30492
+ onTouchStart: stopPropagationTouch,
30493
+ onTouchEnd: stopPropagationTouch,
30494
+ onTouchMove: stopPropagationTouch,
30495
+ onPointerDown: stopPropagationPointer
30496
+ }, React__default.createElement(MessageContainer, null, typeof message === 'string' ? React__default.createElement(Message$1, null, message) : message), React__default.createElement(ButtonsContainer$2, null, React__default.createElement(CancelButtonWrapper, null, React__default.createElement(Button, {
30497
+ buttonType: exports.ButtonTypes.RPGUIButton,
30498
+ onPointerDown: handleClose
30499
+ }, "No")), React__default.createElement(Button, {
30500
+ buttonType: exports.ButtonTypes.RPGUIButton,
30501
+ onPointerDown: handleConfirm
30502
+ }, "Yes")))));
30503
+ };
30504
+ var Overlay = /*#__PURE__*/styled__default.div.withConfig({
30505
+ displayName: "ConfirmModal__Overlay",
30506
+ componentId: "sc-11qkyu1-0"
30507
+ })(["position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0.6);z-index:1000;animation:fadeIn 0.2s ease-out;cursor:pointer;touch-action:none;@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}"]);
30508
+ var ModalContainer = /*#__PURE__*/styled__default.div.withConfig({
30509
+ displayName: "ConfirmModal__ModalContainer",
30510
+ componentId: "sc-11qkyu1-1"
30511
+ })(["position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;z-index:1001;pointer-events:none;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);"]);
30512
+ var ModalContent = /*#__PURE__*/styled__default.div.withConfig({
30513
+ displayName: "ConfirmModal__ModalContent",
30514
+ componentId: "sc-11qkyu1-2"
30515
+ })(["background-color:#2a2a2a;border:2px solid #444;border-radius:8px;padding:20px;min-width:300px;max-width:90%;margin:0 auto;animation:scaleIn 0.2s ease-out;transform-origin:center;box-shadow:0 4px 20px rgba(0,0,0,0.5),0 0 40px rgba(0,0,0,0.3);pointer-events:auto;@keyframes scaleIn{from{transform:scale(0.8);opacity:0;}to{transform:scale(1);opacity:1;}}@media (max-width:768px){padding:25px;width:85%;}"]);
30516
+ var MessageContainer = /*#__PURE__*/styled__default.div.withConfig({
30517
+ displayName: "ConfirmModal__MessageContainer",
30518
+ componentId: "sc-11qkyu1-3"
30519
+ })(["margin-bottom:20px;text-align:center;"]);
30520
+ var Message$1 = /*#__PURE__*/styled__default.p.withConfig({
30521
+ displayName: "ConfirmModal__Message",
30522
+ componentId: "sc-11qkyu1-4"
30523
+ })(["margin:0;font-size:16px;color:#fff;text-shadow:0 1px 0 rgba(0,0,0,0.5);@media (max-width:768px){font-size:18px;}"]);
30524
+ var ButtonsContainer$2 = /*#__PURE__*/styled__default.div.withConfig({
30525
+ displayName: "ConfirmModal__ButtonsContainer",
30526
+ componentId: "sc-11qkyu1-5"
30527
+ })(["display:flex;justify-content:center;gap:20px;@media (max-width:768px){gap:30px;transform:scale(1.1);margin-top:5px;}"]);
30528
+ var CancelButtonWrapper = /*#__PURE__*/styled__default.div.withConfig({
30529
+ displayName: "ConfirmModal__CancelButtonWrapper",
30530
+ componentId: "sc-11qkyu1-6"
30531
+ })(["filter:grayscale(0.7);"]);
30532
+
30533
+ var CTAButton = function CTAButton(_ref) {
30534
+ var icon = _ref.icon,
30535
+ label = _ref.label,
30536
+ onClick = _ref.onClick,
30537
+ className = _ref.className,
30538
+ _ref$fullWidth = _ref.fullWidth,
30539
+ fullWidth = _ref$fullWidth === void 0 ? false : _ref$fullWidth,
30540
+ _ref$textColor = _ref.textColor,
30541
+ textColor = _ref$textColor === void 0 ? '#ffffff' : _ref$textColor,
30542
+ _ref$iconColor = _ref.iconColor,
30543
+ iconColor = _ref$iconColor === void 0 ? '#f59e0b' : _ref$iconColor,
30544
+ _ref$disabled = _ref.disabled,
30545
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled;
30546
+ return React__default.createElement(ButtonContainer$1, {
30547
+ className: className,
30548
+ onPointerDown: disabled ? undefined : onClick,
30549
+ "$fullWidth": fullWidth,
30550
+ "$disabled": disabled,
30551
+ "$color": textColor
30552
+ }, React__default.createElement(ButtonContent, null, React__default.createElement(IconWrapper$1, {
30553
+ "$color": iconColor,
30554
+ "$disabled": disabled
30555
+ }, icon), label && React__default.createElement(ButtonLabel, {
30556
+ "$color": textColor,
30557
+ "$disabled": disabled
30558
+ }, label)));
30559
+ };
30560
+ var ButtonContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
30561
+ displayName: "CTAButton__ButtonContainer",
30562
+ componentId: "sc-1azvwn5-0"
30563
+ })(["display:inline-flex;align-items:center;padding:0.75rem 1.25rem;background:rgba(0,0,0,0.3);border:2px solid #f59e0b;box-shadow:0 0 10px rgba(245,158,11,0.3);border-radius:4px;cursor:", ";transition:all 0.2s;position:relative;opacity:", ";color:", ";", " &:hover{background:", ";box-shadow:", ";transform:", ";}&:active{transform:", ";box-shadow:", ";}&:before{content:'';position:absolute;inset:-1px;border-radius:5px;padding:1px;background:linear-gradient(45deg,#f59e0b,#fbbf24,#f59e0b);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask-composite:destination-out;}"], function (props) {
30564
+ return props.$disabled ? 'not-allowed' : 'pointer';
30565
+ }, function (props) {
30566
+ return props.$disabled ? 0.5 : 1;
30567
+ }, function (props) {
30568
+ return props.$disabled ? '#6b7280' : props.$color;
30569
+ }, function (props) {
30570
+ return props.$fullWidth && styled.css(["display:flex;justify-content:center;"]);
30571
+ }, function (props) {
30572
+ return props.$disabled ? 'rgba(0, 0, 0, 0.3)' : 'rgba(0, 0, 0, 0.4)';
30573
+ }, function (props) {
30574
+ return props.$disabled ? '0 0 10px rgba(245, 158, 11, 0.3)' : '0 0 15px rgba(245, 158, 11, 0.4)';
30575
+ }, function (props) {
30576
+ return props.$disabled ? 'none' : 'translateY(-1px)';
30577
+ }, function (props) {
30578
+ return props.$disabled ? 'none' : 'translateY(1px)';
30579
+ }, function (props) {
30580
+ return props.$disabled ? '0 0 10px rgba(245, 158, 11, 0.3)' : '0 0 5px rgba(245, 158, 11, 0.2)';
30581
+ });
30582
+ var ButtonContent = /*#__PURE__*/styled__default.div.withConfig({
30583
+ displayName: "CTAButton__ButtonContent",
30584
+ componentId: "sc-1azvwn5-1"
30585
+ })(["display:flex;align-items:center;gap:0.75rem;"]);
30586
+ var IconWrapper$1 = /*#__PURE__*/styled__default.div.withConfig({
30587
+ displayName: "CTAButton__IconWrapper",
30588
+ componentId: "sc-1azvwn5-2"
30589
+ })(["svg{font-size:1.25rem;color:", ";filter:drop-shadow(0 0 2px rgba(245,158,11,0.5));opacity:", ";}"], function (props) {
30590
+ return props.$color;
30591
+ }, function (props) {
30592
+ return props.$disabled ? 0.5 : 1;
30593
+ });
30594
+ var ButtonLabel = /*#__PURE__*/styled__default.span.withConfig({
30595
+ displayName: "CTAButton__ButtonLabel",
30596
+ componentId: "sc-1azvwn5-3"
30597
+ })(["color:", ";font-family:'Press Start 2P',cursive;font-size:0.875rem;text-shadow:0 0 4px rgba(245,158,11,0.5);opacity:", ";"], function (props) {
30598
+ return props.$color;
30599
+ }, function (props) {
30600
+ return props.$disabled ? 0.5 : 1;
30601
+ });
30602
+
30603
+ var DCTransferPanel = function DCTransferPanel(_ref) {
30604
+ var dcBalance = _ref.dcBalance,
30605
+ transferLoading = _ref.transferLoading,
30606
+ transferResult = _ref.transferResult,
30607
+ onSendTransfer = _ref.onSendTransfer,
30608
+ onClearTransferResult = _ref.onClearTransferResult,
30609
+ characterName = _ref.characterName,
30610
+ onInputFocus = _ref.onInputFocus,
30611
+ onInputBlur = _ref.onInputBlur,
30612
+ onSearchCharacter = _ref.onSearchCharacter,
30613
+ searchResults = _ref.searchResults;
30614
+ var _useState = React.useState(''),
30615
+ recipientName = _useState[0],
30616
+ setRecipientName = _useState[1];
30617
+ var _useState2 = React.useState(''),
30618
+ amount = _useState2[0],
30619
+ setAmount = _useState2[1];
30620
+ var _useState3 = React.useState(''),
30621
+ validationError = _useState3[0],
30622
+ setValidationError = _useState3[1];
30623
+ var _useState4 = React.useState(false),
30624
+ showConfirm = _useState4[0],
30625
+ setShowConfirm = _useState4[1];
30626
+ var _useState5 = React.useState(false),
30627
+ showDropdown = _useState5[0],
30628
+ setShowDropdown = _useState5[1];
30629
+ var dropdownRef = React.useRef(null);
30630
+ var clearResultTimerRef = React.useRef(null);
30631
+ var debouncedSearch = React.useMemo(function () {
30632
+ return lodash.debounce(function (name) {
30633
+ if (name.trim().length >= 2) {
30634
+ onSearchCharacter == null ? void 0 : onSearchCharacter(name.trim());
30635
+ }
30636
+ }, 300);
30637
+ }, [onSearchCharacter]);
30638
+ React.useEffect(function () {
30639
+ return function () {
30640
+ debouncedSearch.cancel();
30641
+ };
30642
+ }, [debouncedSearch]);
30643
+ React.useEffect(function () {
30644
+ if (transferResult) {
30645
+ if (clearResultTimerRef.current) {
30646
+ clearTimeout(clearResultTimerRef.current);
30647
+ }
30648
+ clearResultTimerRef.current = setTimeout(function () {
30649
+ onClearTransferResult();
30650
+ }, 5000);
30651
+ }
30652
+ return function () {
30653
+ if (clearResultTimerRef.current) {
30654
+ clearTimeout(clearResultTimerRef.current);
30655
+ }
30656
+ };
30657
+ }, [transferResult]);
30658
+ var validate = function validate() {
30659
+ var parsedAmount = parseInt(amount, 10);
30660
+ var trimmedRecipient = recipientName.trim();
30661
+ if (!trimmedRecipient) {
30662
+ setValidationError('Recipient name is required.');
30663
+ return false;
30664
+ }
30665
+ if (characterName && trimmedRecipient.toLowerCase() === characterName.toLowerCase()) {
30666
+ setValidationError('You cannot transfer DC to yourself.');
30667
+ return false;
30668
+ }
30669
+ if (isNaN(parsedAmount) || parsedAmount <= 0 || !Number.isInteger(parsedAmount)) {
30670
+ setValidationError('Amount must be a positive integer.');
30671
+ return false;
30672
+ }
30673
+ if (parsedAmount > dcBalance) {
30674
+ setValidationError('Insufficient DC balance.');
30675
+ return false;
30676
+ }
30677
+ setValidationError('');
30678
+ return true;
30679
+ };
30680
+ var handleSendClick = React.useCallback(function () {
30681
+ if (!validate()) return;
30682
+ setShowConfirm(true);
30683
+ }, [recipientName, amount, dcBalance, characterName]);
30684
+ var handleConfirmTransfer = React.useCallback(function () {
30685
+ setShowConfirm(false);
30686
+ onSendTransfer(recipientName.trim(), parseInt(amount, 10));
30687
+ setRecipientName('');
30688
+ setAmount('');
30689
+ }, [recipientName, amount, onSendTransfer]);
30690
+ return React__default.createElement(PanelContainer$1, null, React__default.createElement(FieldLabel, null, "Recipient Character Name"), React__default.createElement(AutocompleteWrapper, {
30691
+ ref: dropdownRef
30692
+ }, React__default.createElement(StyledInput, {
30693
+ type: "text",
30694
+ value: recipientName,
30695
+ onChange: function onChange(e) {
30696
+ setRecipientName(e.target.value);
30697
+ debouncedSearch(e.target.value);
30698
+ setShowDropdown(true);
30699
+ },
30700
+ onFocus: function onFocus() {
30701
+ onInputFocus == null ? void 0 : onInputFocus();
30702
+ if (recipientName.trim().length >= 2 && searchResults && searchResults.length > 0) {
30703
+ setShowDropdown(true);
30704
+ }
30705
+ },
30706
+ onBlur: function onBlur() {
30707
+ // Delay to allow dropdown click to register
30708
+ setTimeout(function () {
30709
+ return setShowDropdown(false);
30710
+ }, 150);
30711
+ onInputBlur == null ? void 0 : onInputBlur();
30712
+ },
30713
+ placeholder: "Enter character name",
30714
+ disabled: transferLoading,
30715
+ autoComplete: "off"
30716
+ }), showDropdown && searchResults && searchResults.length > 0 && React__default.createElement(DropdownList, null, searchResults.map(function (_char) {
30717
+ return React__default.createElement(DropdownItem, {
30718
+ key: _char._id,
30719
+ onPointerDown: function onPointerDown() {
30720
+ setRecipientName(_char.name);
30721
+ setShowDropdown(false);
30722
+ }
30723
+ }, _char.name);
30724
+ }))), React__default.createElement(FieldLabel, null, "Amount (DC)"), React__default.createElement(StyledInput, {
30725
+ type: "number",
30726
+ min: 1,
30727
+ value: amount,
30728
+ onChange: function onChange(e) {
30729
+ return setAmount(e.target.value);
30730
+ },
30731
+ onFocus: onInputFocus,
30732
+ onBlur: onInputBlur,
30733
+ placeholder: "0",
30734
+ disabled: transferLoading
30735
+ }), validationError && React__default.createElement(ErrorMessage, null, validationError), React__default.createElement(ButtonRow, null, React__default.createElement(CTAButton, {
30736
+ icon: React__default.createElement(fa.FaPaperPlane, null),
30737
+ label: transferLoading ? 'Sending...' : 'Send',
30738
+ onClick: handleSendClick,
30739
+ disabled: transferLoading,
30740
+ fullWidth: true
30741
+ })), transferLoading && React__default.createElement(Spinner$1, null), transferResult && React__default.createElement(ResultMessage, {
30742
+ "$success": transferResult.success
30743
+ }, transferResult.message), showConfirm && React__default.createElement(ConfirmModal, {
30744
+ message: "Transfer " + parseInt(amount, 10) + " DC to \"" + recipientName.trim() + "\"?",
30745
+ onConfirm: handleConfirmTransfer,
30746
+ onClose: function onClose() {
30747
+ return setShowConfirm(false);
30748
+ }
30749
+ }));
30750
+ };
30751
+ var PanelContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
30752
+ displayName: "DCTransferPanel__PanelContainer",
30753
+ componentId: "sc-k1vvb1-0"
30754
+ })(["display:flex;flex-direction:column;gap:8px;padding:8px 0;"]);
30755
+ var FieldLabel = /*#__PURE__*/styled__default.label.withConfig({
30756
+ displayName: "DCTransferPanel__FieldLabel",
30757
+ componentId: "sc-k1vvb1-1"
30758
+ })(["font-size:9px;color:#f59e0b;font-family:'Press Start 2P',cursive;margin-top:8px;"]);
30759
+ var StyledInput = /*#__PURE__*/styled__default(Input).withConfig({
30760
+ displayName: "DCTransferPanel__StyledInput",
30761
+ componentId: "sc-k1vvb1-2"
30762
+ })(["background:rgba(0,0,0,0.6);border:1px solid #f59e0b;color:", ";padding:6px 8px;font-size:12px;font-family:'Press Start 2P',cursive;width:100%;box-sizing:border-box;&:disabled{opacity:0.5;}&:focus{outline:none;border-color:", ";}"], uiColors.white, uiColors.white);
30763
+ var ButtonRow = /*#__PURE__*/styled__default.div.withConfig({
30764
+ displayName: "DCTransferPanel__ButtonRow",
30765
+ componentId: "sc-k1vvb1-3"
30766
+ })(["margin-top:8px;"]);
30767
+ var Spinner$1 = /*#__PURE__*/styled__default.div.withConfig({
30768
+ displayName: "DCTransferPanel__Spinner",
30769
+ componentId: "sc-k1vvb1-4"
30770
+ })(["border:3px solid rgba(255,255,255,0.2);border-radius:50%;border-top:3px solid #f59e0b;width:24px;height:24px;animation:spin 0.8s linear infinite;margin:8px auto 0;@keyframes spin{0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}"]);
30771
+ var ResultMessage = /*#__PURE__*/styled__default.div.withConfig({
30772
+ displayName: "DCTransferPanel__ResultMessage",
30773
+ componentId: "sc-k1vvb1-5"
30774
+ })(["margin-top:8px;padding:8px;font-size:9px;font-family:'Press Start 2P',cursive;color:", ";border:1px solid ", ";background:rgba(0,0,0,0.4);text-align:center;"], function (_ref2) {
30775
+ var $success = _ref2.$success;
30776
+ return $success ? uiColors.green : uiColors.red;
30777
+ }, function (_ref3) {
30778
+ var $success = _ref3.$success;
30779
+ return $success ? uiColors.green : uiColors.red;
30780
+ });
30781
+ var ErrorMessage = /*#__PURE__*/styled__default.div.withConfig({
30782
+ displayName: "DCTransferPanel__ErrorMessage",
30783
+ componentId: "sc-k1vvb1-6"
30784
+ })(["font-size:9px;color:", ";font-family:'Press Start 2P',cursive;"], uiColors.red);
30785
+ var AutocompleteWrapper = /*#__PURE__*/styled__default.div.withConfig({
30786
+ displayName: "DCTransferPanel__AutocompleteWrapper",
30787
+ componentId: "sc-k1vvb1-7"
30788
+ })(["position:relative;width:100%;"]);
30789
+ var DropdownList = /*#__PURE__*/styled__default.ul.withConfig({
30790
+ displayName: "DCTransferPanel__DropdownList",
30791
+ componentId: "sc-k1vvb1-8"
30792
+ })(["position:absolute;top:100%;left:0;right:0;background:rgba(10,10,30,0.95);border:1px solid #f59e0b;border-top:none;list-style:none;padding:0;margin:0;max-height:120px;overflow-y:auto;z-index:10;"]);
30793
+ var DropdownItem = /*#__PURE__*/styled__default.li.withConfig({
30794
+ displayName: "DCTransferPanel__DropdownItem",
30795
+ componentId: "sc-k1vvb1-9"
30796
+ })(["padding:6px 8px;font-size:11px;font-family:'Press Start 2P',cursive;color:", ";cursor:pointer;&:hover{background:rgba(245,158,11,0.3);}"], uiColors.white);
30797
+
30798
+ var DCWalletModal = function DCWalletModal(_ref) {
30799
+ var _historyData$transact, _historyData$totalPag, _historyData$currentP;
30800
+ var dcBalance = _ref.dcBalance,
30801
+ onClose = _ref.onClose,
30802
+ historyData = _ref.historyData,
30803
+ historyLoading = _ref.historyLoading,
30804
+ onRequestHistory = _ref.onRequestHistory,
30805
+ transferLoading = _ref.transferLoading,
30806
+ transferResult = _ref.transferResult,
30807
+ onSendTransfer = _ref.onSendTransfer,
30808
+ onClearTransferResult = _ref.onClearTransferResult,
30809
+ characterName = _ref.characterName,
30810
+ onInputFocus = _ref.onInputFocus,
30811
+ onInputBlur = _ref.onInputBlur,
30812
+ onBuyDC = _ref.onBuyDC,
30813
+ onSearchCharacter = _ref.onSearchCharacter,
30814
+ searchResults = _ref.searchResults;
30815
+ var _useState = React.useState('balance'),
30816
+ activeTab = _useState[0],
30817
+ setActiveTab = _useState[1];
30818
+ var stopPropagation = React.useCallback(function (e) {
30819
+ e.stopPropagation();
30820
+ }, []);
30821
+ var tabs = [{
30822
+ id: 'balance',
30823
+ title: 'Balance',
30824
+ content: React__default.createElement(BalanceContent, null, React__default.createElement(BalanceLabel, null, "Your DC Balance"), React__default.createElement(BalanceAmount, null, dcBalance.toLocaleString(), " DC"), onBuyDC && React__default.createElement(BuyButton, {
30825
+ onPointerDown: onBuyDC,
30826
+ title: "Buy Definya Coins"
30827
+ }, React__default.createElement(fa.FaShoppingCart, null), React__default.createElement(BuyButtonLabel, null, "Buy DC")))
30828
+ }, {
30829
+ id: 'transfer',
30830
+ title: 'Transfer',
30831
+ content: React__default.createElement(DCTransferPanel, {
30832
+ dcBalance: dcBalance,
30833
+ transferLoading: transferLoading,
30834
+ transferResult: transferResult,
30835
+ onSendTransfer: onSendTransfer,
30836
+ onClearTransferResult: onClearTransferResult,
30837
+ characterName: characterName,
30838
+ onInputFocus: onInputFocus,
30839
+ onInputBlur: onInputBlur,
30840
+ onSearchCharacter: onSearchCharacter,
30841
+ searchResults: searchResults
30842
+ })
30843
+ }, {
30844
+ id: 'history',
30845
+ title: 'History',
30846
+ content: React__default.createElement(DCHistoryPanel, {
30847
+ transactions: (_historyData$transact = historyData == null ? void 0 : historyData.transactions) != null ? _historyData$transact : [],
30848
+ totalPages: (_historyData$totalPag = historyData == null ? void 0 : historyData.totalPages) != null ? _historyData$totalPag : 0,
30849
+ currentPage: (_historyData$currentP = historyData == null ? void 0 : historyData.currentPage) != null ? _historyData$currentP : 1,
30850
+ loading: historyLoading,
30851
+ onRequestHistory: onRequestHistory
30852
+ })
30853
+ }];
30854
+ return React__default.createElement(ModalPortal, null, React__default.createElement(Overlay$1, {
30855
+ onPointerDown: onClose
30856
+ }), React__default.createElement(ModalContainer$1, null, React__default.createElement(ModalContent$1, {
30857
+ onClick: stopPropagation,
30858
+ onTouchStart: stopPropagation,
30859
+ onPointerDown: stopPropagation
30860
+ }, React__default.createElement(Header$2, null, React__default.createElement(Title$3, null, "DC Wallet"), React__default.createElement(CloseButton$4, {
30861
+ onPointerDown: onClose,
30862
+ "aria-label": "Close"
30863
+ }, React__default.createElement(fa.FaTimes, null))), React__default.createElement(WalletContainer, null, React__default.createElement(InternalTabs, {
30864
+ tabs: tabs,
30865
+ activeTab: activeTab,
30866
+ onTabChange: function onTabChange(tabId) {
30867
+ setActiveTab(tabId);
30868
+ if (tabId === 'history') {
30869
+ onRequestHistory(1);
30870
+ }
30871
+ },
30872
+ activeTextColor: "#000000",
30873
+ activeColor: "#fef08a",
30874
+ inactiveColor: "#6b7280",
30875
+ borderColor: "#f59e0b",
30876
+ hoverColor: "#fef3c7"
30877
+ })))));
30878
+ };
30879
+ var Overlay$1 = /*#__PURE__*/styled__default.div.withConfig({
30880
+ displayName: "DCWalletModal__Overlay",
30881
+ componentId: "sc-12xy88y-0"
30882
+ })(["position:fixed;inset:0;background:rgba(0,0,0,0.65);z-index:1000;"]);
30883
+ var ModalContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
30884
+ displayName: "DCWalletModal__ModalContainer",
30885
+ componentId: "sc-12xy88y-1"
30886
+ })(["position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1001;pointer-events:none;"]);
30887
+ var ModalContent$1 = /*#__PURE__*/styled__default.div.withConfig({
30888
+ displayName: "DCWalletModal__ModalContent",
30889
+ componentId: "sc-12xy88y-2"
30890
+ })(["background:#1a1a2e;border:2px solid #f59e0b;border-radius:8px;padding:16px 20px 20px;min-width:400px;max-width:90%;display:flex;flex-direction:column;gap:12px;pointer-events:auto;animation:scaleIn 0.15s ease-out;@keyframes scaleIn{from{transform:scale(0.85);opacity:0;}to{transform:scale(1);opacity:1;}}"]);
30891
+ var Header$2 = /*#__PURE__*/styled__default.div.withConfig({
30892
+ displayName: "DCWalletModal__Header",
30893
+ componentId: "sc-12xy88y-3"
30894
+ })(["display:flex;align-items:center;justify-content:space-between;"]);
30895
+ var Title$3 = /*#__PURE__*/styled__default.h3.withConfig({
30896
+ displayName: "DCWalletModal__Title",
30897
+ componentId: "sc-12xy88y-4"
30898
+ })(["margin:0;font-family:'Press Start 2P',cursive;font-size:0.7rem;color:#fef08a;"]);
30899
+ var CloseButton$4 = /*#__PURE__*/styled__default.button.withConfig({
30900
+ displayName: "DCWalletModal__CloseButton",
30901
+ componentId: "sc-12xy88y-5"
30902
+ })(["background:none;border:none;color:rgba(255,255,255,0.6);cursor:pointer;font-size:1rem;padding:4px;display:flex;align-items:center;&:hover{color:#ffffff;}"]);
30903
+ var WalletContainer = /*#__PURE__*/styled__default.div.withConfig({
30904
+ displayName: "DCWalletModal__WalletContainer",
30905
+ componentId: "sc-12xy88y-6"
30906
+ })(["display:flex;flex-direction:column;width:100%;min-height:300px;gap:0.5rem;"]);
30907
+ var BalanceContent = /*#__PURE__*/styled__default.div.withConfig({
30908
+ displayName: "DCWalletModal__BalanceContent",
30909
+ componentId: "sc-12xy88y-7"
30910
+ })(["display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px 16px;"]);
30911
+ var BalanceLabel = /*#__PURE__*/styled__default.span.withConfig({
30912
+ displayName: "DCWalletModal__BalanceLabel",
30913
+ componentId: "sc-12xy88y-8"
30914
+ })(["font-family:'Press Start 2P',cursive;font-size:10px;color:", ";"], uiColors.lightGray);
30915
+ var BalanceAmount = /*#__PURE__*/styled__default.div.withConfig({
30916
+ displayName: "DCWalletModal__BalanceAmount",
30917
+ componentId: "sc-12xy88y-9"
30918
+ })(["font-family:'Press Start 2P',cursive;font-size:28px;color:#fef08a;text-shadow:2px 2px 0 #000;letter-spacing:2px;"]);
30919
+ var BuyButton = /*#__PURE__*/styled__default.button.withConfig({
30920
+ displayName: "DCWalletModal__BuyButton",
30921
+ componentId: "sc-12xy88y-10"
30922
+ })(["display:flex;align-items:center;gap:8px;margin-top:8px;padding:10px 20px;background:#f59e0b;border:none;border-radius:6px;color:#000;cursor:pointer;font-size:1rem;&:hover{background:#fbbf24;}&:active{background:#d97706;}"]);
30923
+ var BuyButtonLabel = /*#__PURE__*/styled__default.span.withConfig({
30924
+ displayName: "DCWalletModal__BuyButtonLabel",
30925
+ componentId: "sc-12xy88y-11"
30926
+ })(["font-family:'Press Start 2P',cursive;font-size:8px;"]);
30927
+
30195
30928
  var SimpleProgressBar = function SimpleProgressBar(_ref) {
30196
30929
  var value = _ref.value,
30197
30930
  _ref$bgColor = _ref.bgColor,
@@ -30200,7 +30933,7 @@ var SimpleProgressBar = function SimpleProgressBar(_ref) {
30200
30933
  margin = _ref$margin === void 0 ? 20 : _ref$margin;
30201
30934
  // Ensure the width is at least 1% if value is greater than 0, capped at 99.99%
30202
30935
  var width = value > 0 ? Math.max(1, Math.min(99.99, value)) : 0;
30203
- return React__default.createElement(Container$j, {
30936
+ return React__default.createElement(Container$k, {
30204
30937
  className: "simple-progress-bar"
30205
30938
  }, React__default.createElement(ProgressBarContainer, {
30206
30939
  margin: margin
@@ -30209,7 +30942,7 @@ var SimpleProgressBar = function SimpleProgressBar(_ref) {
30209
30942
  bgColor: bgColor
30210
30943
  }))));
30211
30944
  };
30212
- var Container$j = /*#__PURE__*/styled__default.div.withConfig({
30945
+ var Container$k = /*#__PURE__*/styled__default.div.withConfig({
30213
30946
  displayName: "SimpleProgressBar__Container",
30214
30947
  componentId: "sc-mbeil3-0"
30215
30948
  })(["display:flex;justify-content:center;align-items:center;width:100%;"]);
@@ -30261,7 +30994,7 @@ var LoginStreakPanel = function LoginStreakPanel(_ref) {
30261
30994
  onCloseButton: onClose,
30262
30995
  type: exports.RPGUIContainerTypes.Framed,
30263
30996
  width: isMobile ? '90vw' : '380px'
30264
- }, React__default.createElement(Container$k, null, React__default.createElement(StreakHeader, null, React__default.createElement(StreakDay, null, streak === 1 && !isConsecutive ? 'Day 1 — Fresh Start!' : "Day " + streak + " Streak!"), React__default.createElement(LongestStreak, null, "Longest: ", longestStreak, " days")), React__default.createElement(XPBonusSection, null, React__default.createElement(XPBonusLabel, null, "XP Bonus: ", React__default.createElement(XPBonusValue, {
30997
+ }, React__default.createElement(Container$l, null, React__default.createElement(StreakHeader, null, React__default.createElement(StreakDay, null, streak === 1 && !isConsecutive ? 'Day 1 — Fresh Start!' : "Day " + streak + " Streak!"), React__default.createElement(LongestStreak, null, "Longest: ", longestStreak, " days")), React__default.createElement(XPBonusSection, null, React__default.createElement(XPBonusLabel, null, "XP Bonus: ", React__default.createElement(XPBonusValue, {
30265
30998
  isMax: isMaxBonus
30266
30999
  }, "+", xpBonusPercent, "%"), isMaxBonus && React__default.createElement(MaxTag, null, " MAX")), React__default.createElement(SimpleProgressBar, {
30267
31000
  value: maxXpBonusPercent > 0 ? xpBonusPercent / maxXpBonusPercent * 100 : 0,
@@ -30278,7 +31011,7 @@ var LoginStreakPanel = function LoginStreakPanel(_ref) {
30278
31011
  }, milestone.reached ? '✓' : '○'));
30279
31012
  })), React__default.createElement(MotivationalText, null, getMotivationalText(streak, isConsecutive, milestones))));
30280
31013
  };
30281
- var Container$k = /*#__PURE__*/styled__default.div.withConfig({
31014
+ var Container$l = /*#__PURE__*/styled__default.div.withConfig({
30282
31015
  displayName: "LoginStreakPanel__Container",
30283
31016
  componentId: "sc-1eiinkh-0"
30284
31017
  })(["display:flex;flex-direction:column;gap:8px;padding:4px 14px 14px;color:", ";width:100%;box-sizing:border-box;hr.golden{margin:4px 0;}"], uiColors.white);
@@ -30716,7 +31449,7 @@ var DraggedItem = function DraggedItem(_ref) {
30716
31449
  var centeredX = x - OFFSET$1;
30717
31450
  var centeredY = y - OFFSET$1;
30718
31451
  var stackInfo = onRenderStackInfo((_item$_id = item == null ? void 0 : item._id) != null ? _item$_id : '', (_item$stackQty = item == null ? void 0 : item.stackQty) != null ? _item$stackQty : 0);
30719
- return React__default.createElement(Container$l, null, React__default.createElement(SpriteContainer, {
31452
+ return React__default.createElement(Container$m, null, React__default.createElement(SpriteContainer, {
30720
31453
  x: centeredX,
30721
31454
  y: centeredY
30722
31455
  }, React__default.createElement(SpriteFromAtlas, {
@@ -30734,7 +31467,7 @@ var DraggedItem = function DraggedItem(_ref) {
30734
31467
  }), stackInfo));
30735
31468
  };
30736
31469
  var pulse = "\n @keyframes pulse {\n 0%, 100% {\n transform: scale(1) rotate(-3deg);\n }\n 50% {\n transform: scale(0.95) rotate(-3deg);\n }\n }\n";
30737
- var Container$l = /*#__PURE__*/styled__default.div.withConfig({
31470
+ var Container$m = /*#__PURE__*/styled__default.div.withConfig({
30738
31471
  displayName: "DraggedItem__Container",
30739
31472
  componentId: "sc-mlzzcp-0"
30740
31473
  })(["position:relative;"]);
@@ -30771,7 +31504,7 @@ var RelativeListMenu = function RelativeListMenu(_ref) {
30771
31504
  document.removeEventListener('clickOutside', handleClickOutside);
30772
31505
  };
30773
31506
  }, [handleClickOutside]);
30774
- return React__default.createElement(ModalPortal, null, React__default.createElement(Container$m, Object.assign({
31507
+ return React__default.createElement(ModalPortal, null, React__default.createElement(Container$n, Object.assign({
30775
31508
  fontSize: fontSize,
30776
31509
  ref: ref
30777
31510
  }, pos), React__default.createElement("ul", {
@@ -30788,7 +31521,7 @@ var RelativeListMenu = function RelativeListMenu(_ref) {
30788
31521
  }, (params == null ? void 0 : params.text) || 'No text');
30789
31522
  }))));
30790
31523
  };
30791
- var Container$m = /*#__PURE__*/styled__default.div.withConfig({
31524
+ var Container$n = /*#__PURE__*/styled__default.div.withConfig({
30792
31525
  displayName: "RelativeListMenu__Container",
30793
31526
  componentId: "sc-7hohf-0"
30794
31527
  })(["position:absolute;top:", "px;left:", "px;display:flex;flex-direction:column;width:max-content;justify-content:start;align-items:flex-start;li{font-size:", "em;}"], function (props) {
@@ -30956,96 +31689,24 @@ var EquipmentSet = function EquipmentSet(_ref) {
30956
31689
  onPositionChangeEnd: onPositionChangeEnd,
30957
31690
  onPositionChangeStart: onPositionChangeStart
30958
31691
  }, React__default.createElement(EquipmentSetContainer, {
30959
- className: "equipment-container-body"
30960
- }, React__default.createElement(EquipmentColumn, null, onRenderEquipmentSlotRange(0, 3)), React__default.createElement(EquipmentColumn, null, onRenderEquipmentSlotRange(3, 7)), React__default.createElement(EquipmentColumn, null, onRenderEquipmentSlotRange(7, 10)))), React__default.createElement(ItemSlotToolTips, {
30961
- dragScale: scale,
30962
- atlasIMG: atlasIMG,
30963
- atlasJSON: atlasJSON,
30964
- equipmentSet: equipmentSet,
30965
- onSelected: onSelected,
30966
- isContextMenuDisabled: shared.isMobile()
30967
- })));
30968
- };
30969
- var EquipmentSetContainer = /*#__PURE__*/styled__default.div.withConfig({
30970
- displayName: "EquipmentSet__EquipmentSetContainer",
30971
- componentId: "sc-1wuddg2-0"
30972
- })(["width:inherit;display:flex;justify-content:center;flex-wrap:wrap;flex-direction:row;touch-action:none;overflow:hidden;"]);
30973
- var EquipmentColumn = /*#__PURE__*/styled__default.div.withConfig({
30974
- displayName: "EquipmentSet__EquipmentColumn",
30975
- componentId: "sc-1wuddg2-1"
30976
- })(["display:flex;justify-content:center;flex-wrap:wrap;flex-direction:column;touch-action:none;"]);
30977
-
30978
- var UI_BREAKPOINT_MOBILE = '950px';
30979
- var UI_BREAKPOINT_SMALL_LAPTOP = '1400px';
30980
-
30981
- var InternalTabs = function InternalTabs(_ref) {
30982
- var _tabs$, _tabs$find;
30983
- var tabs = _ref.tabs,
30984
- _ref$activeColor = _ref.activeColor,
30985
- activeColor = _ref$activeColor === void 0 ? '#fef08a' : _ref$activeColor,
30986
- _ref$activeTextColor = _ref.activeTextColor,
30987
- activeTextColor = _ref$activeTextColor === void 0 ? '#000000' : _ref$activeTextColor,
30988
- _ref$inactiveColor = _ref.inactiveColor,
30989
- inactiveColor = _ref$inactiveColor === void 0 ? '#6b7280' : _ref$inactiveColor,
30990
- _ref$borderColor = _ref.borderColor,
30991
- borderColor = _ref$borderColor === void 0 ? '#f59e0b' : _ref$borderColor,
30992
- _ref$hoverColor = _ref.hoverColor,
30993
- hoverColor = _ref$hoverColor === void 0 ? '#fef3c7' : _ref$hoverColor,
30994
- onTabChange = _ref.onTabChange,
30995
- externalActiveTab = _ref.activeTab;
30996
- var _useState = React.useState((_tabs$ = tabs[0]) == null ? void 0 : _tabs$.id),
30997
- internalActiveTab = _useState[0],
30998
- setInternalActiveTab = _useState[1];
30999
- var activeTabId = externalActiveTab != null ? externalActiveTab : internalActiveTab;
31000
- var handleTabClick = function handleTabClick(tabId) {
31001
- setInternalActiveTab(tabId);
31002
- onTabChange == null ? void 0 : onTabChange(tabId);
31003
- };
31004
- return React__default.createElement(TableWrapper, null, React__default.createElement(TabHeader, {
31005
- borderColor: borderColor
31006
- }, tabs.map(function (tab) {
31007
- return React__default.createElement(TabButton, {
31008
- key: tab.id,
31009
- active: activeTabId === tab.id,
31010
- activeColor: activeColor,
31011
- activeTextColor: activeTextColor,
31012
- inactiveColor: inactiveColor,
31013
- borderColor: borderColor,
31014
- hoverColor: hoverColor,
31015
- onClick: function onClick() {
31016
- return handleTabClick(tab.id);
31017
- }
31018
- }, tab.title);
31019
- })), React__default.createElement(ContentWrapper, null, (_tabs$find = tabs.find(function (tab) {
31020
- return tab.id === activeTabId;
31021
- })) == null ? void 0 : _tabs$find.content));
31022
- };
31023
- var TableWrapper = /*#__PURE__*/styled__default.div.withConfig({
31024
- displayName: "InternalTabs__TableWrapper",
31025
- componentId: "sc-ldufv0-0"
31026
- })(["width:100%;"]);
31027
- var TabHeader = /*#__PURE__*/styled__default.div.withConfig({
31028
- displayName: "InternalTabs__TabHeader",
31029
- componentId: "sc-ldufv0-1"
31030
- })(["display:flex;border-bottom:1px solid ", ";"], function (props) {
31031
- return props.borderColor;
31032
- });
31033
- var TabButton = /*#__PURE__*/styled__default.button.withConfig({
31034
- displayName: "InternalTabs__TabButton",
31035
- componentId: "sc-ldufv0-2"
31036
- })(["flex:1;padding:0.25rem 0.5rem;font-size:0.75rem;font-weight:500;border-right:1px solid ", ";background-color:", ";color:", ";white-space:nowrap;overflow:hidden;text-overflow:ellipsis;@media (min-width:480px){padding:0.375rem 0.75rem;font-size:0.8125rem;}@media (min-width:", "){padding:0.5rem 1rem;font-size:0.875rem;}&:last-child{border-right:none;}&:hover{background-color:", ";}"], function (props) {
31037
- return props.borderColor;
31038
- }, function (props) {
31039
- return props.active ? props.activeColor : 'transparent';
31040
- }, function (props) {
31041
- return props.active ? props.activeTextColor : props.inactiveColor;
31042
- }, UI_BREAKPOINT_MOBILE, function (props) {
31043
- return props.active ? props.activeColor : props.hoverColor;
31044
- });
31045
- var ContentWrapper = /*#__PURE__*/styled__default.div.withConfig({
31046
- displayName: "InternalTabs__ContentWrapper",
31047
- componentId: "sc-ldufv0-3"
31048
- })(["width:100%;"]);
31692
+ className: "equipment-container-body"
31693
+ }, React__default.createElement(EquipmentColumn, null, onRenderEquipmentSlotRange(0, 3)), React__default.createElement(EquipmentColumn, null, onRenderEquipmentSlotRange(3, 7)), React__default.createElement(EquipmentColumn, null, onRenderEquipmentSlotRange(7, 10)))), React__default.createElement(ItemSlotToolTips, {
31694
+ dragScale: scale,
31695
+ atlasIMG: atlasIMG,
31696
+ atlasJSON: atlasJSON,
31697
+ equipmentSet: equipmentSet,
31698
+ onSelected: onSelected,
31699
+ isContextMenuDisabled: shared.isMobile()
31700
+ })));
31701
+ };
31702
+ var EquipmentSetContainer = /*#__PURE__*/styled__default.div.withConfig({
31703
+ displayName: "EquipmentSet__EquipmentSetContainer",
31704
+ componentId: "sc-1wuddg2-0"
31705
+ })(["width:inherit;display:flex;justify-content:center;flex-wrap:wrap;flex-direction:row;touch-action:none;overflow:hidden;"]);
31706
+ var EquipmentColumn = /*#__PURE__*/styled__default.div.withConfig({
31707
+ displayName: "EquipmentSet__EquipmentColumn",
31708
+ componentId: "sc-1wuddg2-1"
31709
+ })(["display:flex;justify-content:center;flex-wrap:wrap;flex-direction:column;touch-action:none;"]);
31049
31710
 
31050
31711
  var Table = /*#__PURE__*/styled__default.table.withConfig({
31051
31712
  displayName: "Table",
@@ -31211,7 +31872,7 @@ var FriendRequestSection = function FriendRequestSection(_ref3) {
31211
31872
  return onReject(character);
31212
31873
  }
31213
31874
  }, "Reject")));
31214
- })) : React__default.createElement(EmptyMessage, null, "No pending friend requests"));
31875
+ })) : React__default.createElement(EmptyMessage$1, null, "No pending friend requests"));
31215
31876
  };
31216
31877
  // Styled components for FriendList UI
31217
31878
  var ListWrapper = /*#__PURE__*/styled__default.div.withConfig({
@@ -31253,7 +31914,7 @@ var AcceptRejectActions = /*#__PURE__*/styled__default.div.withConfig({
31253
31914
  displayName: "FriendList__AcceptRejectActions",
31254
31915
  componentId: "sc-3jf9vt-8"
31255
31916
  })(["display:flex;gap:0.5rem;"]);
31256
- var EmptyMessage = /*#__PURE__*/styled__default.p.withConfig({
31917
+ var EmptyMessage$1 = /*#__PURE__*/styled__default.p.withConfig({
31257
31918
  displayName: "FriendList__EmptyMessage",
31258
31919
  componentId: "sc-3jf9vt-9"
31259
31920
  })(["text-align:center;color:#888;padding:1rem;font-size:", ";"], uiFonts.size.small);
@@ -31353,7 +32014,7 @@ var NPCDialogText = function NPCDialogText(_ref) {
31353
32014
  var _useState2 = React.useState(false),
31354
32015
  showGoNextIndicator = _useState2[0],
31355
32016
  setShowGoNextIndicator = _useState2[1];
31356
- return React__default.createElement(Container$n, null, React__default.createElement(DynamicText, {
32017
+ return React__default.createElement(Container$o, null, React__default.createElement(DynamicText, {
31357
32018
  text: (textChunks == null ? void 0 : textChunks[chunkIndex]) || '',
31358
32019
  onFinish: function onFinish() {
31359
32020
  setShowGoNextIndicator(true);
@@ -31371,7 +32032,7 @@ var NPCDialogText = function NPCDialogText(_ref) {
31371
32032
  }
31372
32033
  }));
31373
32034
  };
31374
- var Container$n = /*#__PURE__*/styled__default.div.withConfig({
32035
+ var Container$o = /*#__PURE__*/styled__default.div.withConfig({
31375
32036
  displayName: "NPCDialogText__Container",
31376
32037
  componentId: "sc-1cxkdh9-0"
31377
32038
  })([""]);
@@ -31523,7 +32184,7 @@ var QuestionDialog = function QuestionDialog(_ref) {
31523
32184
  return null;
31524
32185
  });
31525
32186
  };
31526
- return React__default.createElement(Container$o, null, React__default.createElement(QuestionContainer, null, React__default.createElement(DynamicText, {
32187
+ return React__default.createElement(Container$p, null, React__default.createElement(QuestionContainer, null, React__default.createElement(DynamicText, {
31527
32188
  text: currentQuestion.text,
31528
32189
  onStart: function onStart() {
31529
32190
  return setCanShowAnswers(false);
@@ -31533,7 +32194,7 @@ var QuestionDialog = function QuestionDialog(_ref) {
31533
32194
  }
31534
32195
  })), canShowAnswers && React__default.createElement(AnswersContainer, null, onRenderCurrentAnswers()));
31535
32196
  };
31536
- var Container$o = /*#__PURE__*/styled__default.div.withConfig({
32197
+ var Container$p = /*#__PURE__*/styled__default.div.withConfig({
31537
32198
  displayName: "QuestionDialog__Container",
31538
32199
  componentId: "sc-bxc5u0-0"
31539
32200
  })(["display:flex;word-break:break-all;box-sizing:border-box;justify-content:flex-start;align-items:flex-start;flex-wrap:wrap;"]);
@@ -31593,7 +32254,7 @@ var NPCDialog = function NPCDialog(_ref) {
31593
32254
  }
31594
32255
  })), type === exports.NPCDialogType.TextAndThumbnail && React__default.createElement(ThumbnailContainer, null, React__default.createElement(NPCThumbnail, {
31595
32256
  src: imagePath || img$7
31596
- }))) : React__default.createElement(React__default.Fragment, null, React__default.createElement(Container$p, null, React__default.createElement(CloseIcon, {
32257
+ }))) : React__default.createElement(React__default.Fragment, null, React__default.createElement(Container$q, null, React__default.createElement(CloseIcon, {
31597
32258
  onPointerDown: _onClose
31598
32259
  }, "X"), React__default.createElement(TextContainer$1, {
31599
32260
  flex: type === exports.NPCDialogType.TextAndThumbnail ? '70%' : '100%'
@@ -31609,7 +32270,7 @@ var NPCDialog = function NPCDialog(_ref) {
31609
32270
  src: imagePath || img$7
31610
32271
  })))));
31611
32272
  };
31612
- var Container$p = /*#__PURE__*/styled__default.div.withConfig({
32273
+ var Container$q = /*#__PURE__*/styled__default.div.withConfig({
31613
32274
  displayName: "NPCDialog__Container",
31614
32275
  componentId: "sc-1b4aw74-0"
31615
32276
  })(["display:flex;width:100%;height:100%;box-sizing:border-box;justify-content:center;align-items:flex-start;position:relative;"]);
@@ -31669,7 +32330,7 @@ var NPCMultiDialog = function NPCMultiDialog(_ref) {
31669
32330
  type: exports.RPGUIContainerTypes.FramedGold,
31670
32331
  width: '50%',
31671
32332
  height: '180px'
31672
- }, React__default.createElement(React__default.Fragment, null, React__default.createElement(Container$q, null, ((_textAndTypeArray$sli = textAndTypeArray[slide]) == null ? void 0 : _textAndTypeArray$sli.imageSide) === 'right' && React__default.createElement(React__default.Fragment, null, React__default.createElement(TextContainer$2, {
32333
+ }, React__default.createElement(React__default.Fragment, null, React__default.createElement(Container$r, null, ((_textAndTypeArray$sli = textAndTypeArray[slide]) == null ? void 0 : _textAndTypeArray$sli.imageSide) === 'right' && React__default.createElement(React__default.Fragment, null, React__default.createElement(TextContainer$2, {
31673
32334
  flex: '70%'
31674
32335
  }, React__default.createElement(NPCDialogText, {
31675
32336
  onStartStep: function onStartStep() {
@@ -31711,7 +32372,7 @@ var NPCMultiDialog = function NPCMultiDialog(_ref) {
31711
32372
  src: img$6
31712
32373
  }))), ")"));
31713
32374
  };
31714
- var Container$q = /*#__PURE__*/styled__default.div.withConfig({
32375
+ var Container$r = /*#__PURE__*/styled__default.div.withConfig({
31715
32376
  displayName: "NPCMultiDialog__Container",
31716
32377
  componentId: "sc-rvu5wg-0"
31717
32378
  })(["display:flex;width:100%;height:100%;box-sizing:border-box;justify-content:center;align-items:flex-start;position:relative;"]);
@@ -31860,7 +32521,7 @@ var ImageCarousel = function ImageCarousel(_ref) {
31860
32521
  onPointerDown: function onPointerDown() {
31861
32522
  return goToNextImage();
31862
32523
  }
31863
- }))), onCloseButton && React__default.createElement(CloseButton$4, {
32524
+ }))), onCloseButton && React__default.createElement(CloseButton$5, {
31864
32525
  className: "container-close",
31865
32526
  onPointerDown: onCloseButton
31866
32527
  }, "X"));
@@ -31891,7 +32552,7 @@ var Description$1 = /*#__PURE__*/styled__default.div.withConfig({
31891
32552
  }, function (props) {
31892
32553
  return props.isTextFixed ? 'none' : 'rgba(0, 0, 0, 0.6)';
31893
32554
  });
31894
- var CloseButton$4 = /*#__PURE__*/styled__default.div.withConfig({
32555
+ var CloseButton$5 = /*#__PURE__*/styled__default.div.withConfig({
31895
32556
  displayName: "ImageCarousel__CloseButton",
31896
32557
  componentId: "sc-jl6f8-4"
31897
32558
  })(["position:absolute;top:3px;right:0px;color:white;z-index:22;font-size:1.5rem;@media (max-width:950px){font-size:1.7rem;padding:12px;}"]);
@@ -32073,48 +32734,6 @@ var usePagination = function usePagination(_ref) {
32073
32734
  };
32074
32735
  };
32075
32736
 
32076
- var Pagination = function Pagination(_ref) {
32077
- var currentPage = _ref.currentPage,
32078
- totalPages = _ref.totalPages,
32079
- onPageChange = _ref.onPageChange,
32080
- className = _ref.className;
32081
- return React__default.createElement(Container$r, {
32082
- className: className
32083
- }, React__default.createElement(PaginationButton$1, {
32084
- onClick: function onClick() {
32085
- return onPageChange(Math.max(1, currentPage - 1));
32086
- },
32087
- disabled: currentPage === 1
32088
- }, React__default.createElement(fa.FaChevronLeft, {
32089
- size: 12
32090
- })), React__default.createElement(PageInfo$1, null, "Page ", currentPage, " of ", totalPages), React__default.createElement(PaginationButton$1, {
32091
- onClick: function onClick() {
32092
- return onPageChange(Math.min(totalPages, currentPage + 1));
32093
- },
32094
- disabled: currentPage === totalPages
32095
- }, React__default.createElement(fa.FaChevronRight, {
32096
- size: 12
32097
- })));
32098
- };
32099
- var Container$r = /*#__PURE__*/styled__default.div.withConfig({
32100
- displayName: "Pagination__Container",
32101
- componentId: "sc-3k4m4u-0"
32102
- })(["display:flex;align-items:center;justify-content:center;gap:16px;padding:8px;"]);
32103
- var PaginationButton$1 = /*#__PURE__*/styled__default.button.withConfig({
32104
- displayName: "Pagination__PaginationButton",
32105
- componentId: "sc-3k4m4u-1"
32106
- })(["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) {
32107
- return props.disabled ? uiColors.darkGray : uiColors.yellow;
32108
- }, function (props) {
32109
- return props.disabled ? 'not-allowed' : 'pointer';
32110
- }, function (props) {
32111
- return props.disabled ? 0.5 : 0.8;
32112
- });
32113
- var PageInfo$1 = /*#__PURE__*/styled__default.div.withConfig({
32114
- displayName: "Pagination__PageInfo",
32115
- componentId: "sc-3k4m4u-2"
32116
- })(["color:", ";font-size:0.8rem;font-family:'Press Start 2P',cursive;"], uiColors.lightGray);
32117
-
32118
32737
  var SearchHeader$1 = function SearchHeader(_ref) {
32119
32738
  var searchOptions = _ref.searchOptions,
32120
32739
  filterOptions = _ref.filterOptions,
@@ -32209,7 +32828,7 @@ var PaginatedContent = function PaginatedContent(_ref) {
32209
32828
  }, (searchOptions || filterOptions) && React__default.createElement(SearchHeader$1, {
32210
32829
  searchOptions: searchOptions,
32211
32830
  filterOptions: filterOptions
32212
- }), items.length === 0 ? React__default.createElement(EmptyMessage$1, null, emptyMessage) : React__default.createElement(React__default.Fragment, null, React__default.createElement(Content, {
32831
+ }), items.length === 0 ? React__default.createElement(EmptyMessage$2, null, emptyMessage) : React__default.createElement(React__default.Fragment, null, React__default.createElement(Content, {
32213
32832
  className: "PaginatedContent-content " + layout,
32214
32833
  "$gridColumns": gridColumns,
32215
32834
  "$itemHeight": itemHeight
@@ -32245,7 +32864,7 @@ var PaginationContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
32245
32864
  displayName: "PaginatedContent__PaginationContainer",
32246
32865
  componentId: "sc-lzp9hn-2"
32247
32866
  })(["display:flex;justify-content:center;padding:0.5rem;@media (min-width:480px){padding:1rem;}"]);
32248
- var EmptyMessage$1 = /*#__PURE__*/styled__default.div.withConfig({
32867
+ var EmptyMessage$2 = /*#__PURE__*/styled__default.div.withConfig({
32249
32868
  displayName: "PaginatedContent__EmptyMessage",
32250
32869
  componentId: "sc-lzp9hn-3"
32251
32870
  })(["text-align:center;color:#9ca3af;padding:2rem;flex:1;display:flex;align-items:center;justify-content:center;"]);
@@ -32348,24 +32967,24 @@ var BaseInformationDetails = function BaseInformationDetails(_ref) {
32348
32967
  atlasIMG = _ref.atlasIMG,
32349
32968
  onBack = _ref.onBack,
32350
32969
  children = _ref.children;
32351
- return React__default.createElement(Container$t, null, React__default.createElement(Overlay, {
32970
+ return React__default.createElement(Container$t, null, React__default.createElement(Overlay$2, {
32352
32971
  onClick: onBack
32353
- }), React__default.createElement(Modal, null, React__default.createElement(CloseButton$5, {
32972
+ }), React__default.createElement(Modal, null, React__default.createElement(CloseButton$6, {
32354
32973
  onClick: onBack
32355
- }, React__default.createElement(fa.FaTimes, null)), React__default.createElement(Header$2, null, React__default.createElement(SpriteContainer$2, null, React__default.createElement(SpriteFromAtlas, {
32974
+ }, React__default.createElement(fa.FaTimes, null)), React__default.createElement(Header$3, null, React__default.createElement(SpriteContainer$2, null, React__default.createElement(SpriteFromAtlas, {
32356
32975
  atlasJSON: atlasJSON,
32357
32976
  atlasIMG: atlasIMG,
32358
32977
  spriteKey: spriteKey,
32359
32978
  width: 32,
32360
32979
  height: 32,
32361
32980
  imgScale: 1
32362
- })), React__default.createElement(Title$3, null, name)), React__default.createElement(Content$1, null, children)));
32981
+ })), React__default.createElement(Title$4, null, name)), React__default.createElement(Content$1, null, children)));
32363
32982
  };
32364
32983
  var Container$t = /*#__PURE__*/styled__default.div.withConfig({
32365
32984
  displayName: "BaseInformationDetails__Container",
32366
32985
  componentId: "sc-1vguuz8-0"
32367
32986
  })(["position:fixed;inset:0;display:flex;justify-content:center;align-items:center;z-index:9999;"]);
32368
- var Overlay = /*#__PURE__*/styled__default.div.withConfig({
32987
+ var Overlay$2 = /*#__PURE__*/styled__default.div.withConfig({
32369
32988
  displayName: "BaseInformationDetails__Overlay",
32370
32989
  componentId: "sc-1vguuz8-1"
32371
32990
  })(["position:fixed;inset:0;background-color:rgba(0,0,0,0.8);"]);
@@ -32373,11 +32992,11 @@ var Modal = /*#__PURE__*/styled__default.div.withConfig({
32373
32992
  displayName: "BaseInformationDetails__Modal",
32374
32993
  componentId: "sc-1vguuz8-2"
32375
32994
  })(["position:relative;background-color:rgba(0,0,0,0.95);border-radius:4px;padding:12px;overflow:hidden;z-index:1;font-family:'Press Start 2P',cursive;border:1px solid ", ";box-shadow:0 2px 4px rgba(0,0,0,0.2);width:90%;height:90vh;max-width:800px;max-height:800px;@media (max-width:768px){width:100%;height:100%;border-radius:0;padding:8px;}&::-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);
32376
- var CloseButton$5 = /*#__PURE__*/styled__default.button.withConfig({
32995
+ var CloseButton$6 = /*#__PURE__*/styled__default.button.withConfig({
32377
32996
  displayName: "BaseInformationDetails__CloseButton",
32378
32997
  componentId: "sc-1vguuz8-3"
32379
32998
  })(["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);
32380
- var Header$2 = /*#__PURE__*/styled__default.div.withConfig({
32999
+ var Header$3 = /*#__PURE__*/styled__default.div.withConfig({
32381
33000
  displayName: "BaseInformationDetails__Header",
32382
33001
  componentId: "sc-1vguuz8-4"
32383
33002
  })(["display:flex;align-items:center;gap:16px;margin-bottom:24px;"]);
@@ -32385,7 +33004,7 @@ var Content$1 = /*#__PURE__*/styled__default.div.withConfig({
32385
33004
  displayName: "BaseInformationDetails__Content",
32386
33005
  componentId: "sc-1vguuz8-5"
32387
33006
  })(["display:flex;flex-direction:column;gap:12px;height:calc(100% - 80px);overflow-y:auto;overflow-x:hidden;padding-right:6px;margin-right:-6px;@media (max-width:768px){height:calc(100% - 64px);gap:8px;padding-right:4px;margin-right:-4px;}"]);
32388
- var Title$3 = /*#__PURE__*/styled__default.h2.withConfig({
33007
+ var Title$4 = /*#__PURE__*/styled__default.h2.withConfig({
32389
33008
  displayName: "BaseInformationDetails__Title",
32390
33009
  componentId: "sc-1vguuz8-6"
32391
33010
  })(["color:", ";font-size:1rem;margin:0;"], uiColors.yellow);
@@ -32405,21 +33024,21 @@ var Collapsible = function Collapsible(_ref) {
32405
33024
  setIsOpen = _useState[1];
32406
33025
  return React__default.createElement(Container$u, {
32407
33026
  className: className
32408
- }, React__default.createElement(Header$3, {
33027
+ }, React__default.createElement(Header$4, {
32409
33028
  onClick: function onClick() {
32410
33029
  return setIsOpen(!isOpen);
32411
33030
  }
32412
- }, React__default.createElement(Title$4, 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$2, null, children));
33031
+ }, React__default.createElement(Title$5, 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$2, null, children));
32413
33032
  };
32414
33033
  var Container$u = /*#__PURE__*/styled__default.div.withConfig({
32415
33034
  displayName: "Collapsible__Container",
32416
33035
  componentId: "sc-s4h8ey-0"
32417
33036
  })(["background:rgba(0,0,0,0.3);border-radius:4px;overflow:hidden;border:1px solid ", ";"], uiColors.darkGray);
32418
- var Header$3 = /*#__PURE__*/styled__default.div.withConfig({
33037
+ var Header$4 = /*#__PURE__*/styled__default.div.withConfig({
32419
33038
  displayName: "Collapsible__Header",
32420
33039
  componentId: "sc-s4h8ey-1"
32421
33040
  })(["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);}"]);
32422
- var Title$4 = /*#__PURE__*/styled__default.h3.withConfig({
33041
+ var Title$5 = /*#__PURE__*/styled__default.h3.withConfig({
32423
33042
  displayName: "Collapsible__Title",
32424
33043
  componentId: "sc-s4h8ey-2"
32425
33044
  })(["margin:0;font-size:0.6rem;color:", ";font-family:'Press Start 2P',cursive;letter-spacing:0.5px;"], uiColors.yellow);
@@ -32757,7 +33376,7 @@ var AdvancedFilters = function AdvancedFilters(_ref) {
32757
33376
  return rangeValue[0] !== undefined || rangeValue[1] !== undefined;
32758
33377
  }
32759
33378
  return section.value !== 'all';
32760
- }).length)), isOpen && React__default.createElement(Portal, null, isMobile && React__default.createElement(Overlay$1, null), React__default.createElement(FiltersPanel, {
33379
+ }).length)), isOpen && React__default.createElement(Portal, null, isMobile && React__default.createElement(Overlay$3, null), React__default.createElement(FiltersPanel, {
32761
33380
  ref: panelRef,
32762
33381
  style: {
32763
33382
  position: 'fixed',
@@ -32766,7 +33385,7 @@ var AdvancedFilters = function AdvancedFilters(_ref) {
32766
33385
  zIndex: 9999
32767
33386
  },
32768
33387
  "$isMobile": isMobile
32769
- }, React__default.createElement(FilterHeader, null, React__default.createElement(FilterTitle, null, "Advanced Filters"), React__default.createElement(CloseButton$6, {
33388
+ }, React__default.createElement(FilterHeader, null, React__default.createElement(FilterTitle, null, "Advanced Filters"), React__default.createElement(CloseButton$7, {
32770
33389
  onClick: handleClose
32771
33390
  }, "\xD7")), sections.map(renderFilterSection), hasActiveFilters && React__default.createElement(ClearFiltersButton, {
32772
33391
  onClick: onClearAll
@@ -32814,7 +33433,7 @@ var FilterHeader = /*#__PURE__*/styled__default.div.withConfig({
32814
33433
  displayName: "AdvancedFilters__FilterHeader",
32815
33434
  componentId: "sc-1xj6ldr-4"
32816
33435
  })(["display:flex;align-items:center;justify-content:space-between;padding-bottom:0.75rem;margin-bottom:0.5rem;border-bottom:1px solid #333;"]);
32817
- var Overlay$1 = /*#__PURE__*/styled__default.div.withConfig({
33436
+ var Overlay$3 = /*#__PURE__*/styled__default.div.withConfig({
32818
33437
  displayName: "AdvancedFilters__Overlay",
32819
33438
  componentId: "sc-1xj6ldr-5"
32820
33439
  })(["position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0.6);z-index:9998;animation:fadeIn 0.2s ease-out;@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}"]);
@@ -32838,7 +33457,7 @@ var ClearFiltersButton = /*#__PURE__*/styled__default.button.withConfig({
32838
33457
  displayName: "AdvancedFilters__ClearFiltersButton",
32839
33458
  componentId: "sc-1xj6ldr-10"
32840
33459
  })(["width:100%;background:transparent;color:#666;border:none;padding:0.75rem 0;margin-top:0.5rem;cursor:pointer;font-size:0.65rem;transition:all 0.2s;border-top:1px solid #333;text-transform:uppercase;letter-spacing:0.05em;font-family:'Press Start 2P',cursive;&:hover{color:#ffd700;}"]);
32841
- var CloseButton$6 = /*#__PURE__*/styled__default.button.withConfig({
33460
+ var CloseButton$7 = /*#__PURE__*/styled__default.button.withConfig({
32842
33461
  displayName: "AdvancedFilters__CloseButton",
32843
33462
  componentId: "sc-1xj6ldr-11"
32844
33463
  })(["background:transparent;border:none;color:#999;font-size:1.5rem;line-height:1;cursor:pointer;padding:0;margin:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;&:hover{color:#ffd700;}"]);
@@ -33823,7 +34442,7 @@ var InformationCenter = function InformationCenter(_ref) {
33823
34442
  return React__default.createElement(LoadingMessage, null, "Loading...");
33824
34443
  }
33825
34444
  if (error) {
33826
- return React__default.createElement(ErrorMessage, null, error);
34445
+ return React__default.createElement(ErrorMessage$1, null, error);
33827
34446
  }
33828
34447
  var tabs = [{
33829
34448
  id: 'bestiary',
@@ -33885,7 +34504,7 @@ var LoadingMessage = /*#__PURE__*/styled__default.div.withConfig({
33885
34504
  displayName: "InformationCenter__LoadingMessage",
33886
34505
  componentId: "sc-1ttl62e-1"
33887
34506
  })(["text-align:center;color:#ffffff;padding:2rem;"]);
33888
- var ErrorMessage = /*#__PURE__*/styled__default.div.withConfig({
34507
+ var ErrorMessage$1 = /*#__PURE__*/styled__default.div.withConfig({
33889
34508
  displayName: "InformationCenter__ErrorMessage",
33890
34509
  componentId: "sc-1ttl62e-2"
33891
34510
  })(["text-align:center;color:#ef4444;padding:2rem;"]);
@@ -34179,7 +34798,7 @@ var QuantitySelector = function QuantitySelector(_ref) {
34179
34798
  return React__default.createElement(StyledContainer, {
34180
34799
  type: exports.RPGUIContainerTypes.Framed,
34181
34800
  width: "25rem"
34182
- }, React__default.createElement(CloseButton$7, {
34801
+ }, React__default.createElement(CloseButton$8, {
34183
34802
  className: "container-close",
34184
34803
  onPointerDown: onClose
34185
34804
  }, "X"), React__default.createElement("h2", null, title), React__default.createElement(StyledForm, {
@@ -34191,7 +34810,7 @@ var QuantitySelector = function QuantitySelector(_ref) {
34191
34810
  }
34192
34811
  },
34193
34812
  noValidate: true
34194
- }, React__default.createElement(StyledInput, {
34813
+ }, React__default.createElement(StyledInput$1, {
34195
34814
  ref: inputRef,
34196
34815
  placeholder: "Enter quantity",
34197
34816
  type: "number",
@@ -34224,7 +34843,7 @@ var StyledContainer = /*#__PURE__*/styled__default(RPGUIContainer).withConfig({
34224
34843
  displayName: "QuantitySelector__StyledContainer",
34225
34844
  componentId: "sc-z4ut57-0"
34226
34845
  })(["position:relative;display:flex;flex-direction:column;align-items:center;padding:1rem;h2{margin:0;margin-bottom:1rem;font-size:1rem;}"]);
34227
- var CloseButton$7 = /*#__PURE__*/styled__default.div.withConfig({
34846
+ var CloseButton$8 = /*#__PURE__*/styled__default.div.withConfig({
34228
34847
  displayName: "QuantitySelector__CloseButton",
34229
34848
  componentId: "sc-z4ut57-1"
34230
34849
  })(["position:absolute;top:3px;right:0px;color:white;z-index:22;font-size:1.5rem;cursor:pointer;"]);
@@ -34232,7 +34851,7 @@ var StyledForm = /*#__PURE__*/styled__default.form.withConfig({
34232
34851
  displayName: "QuantitySelector__StyledForm",
34233
34852
  componentId: "sc-z4ut57-2"
34234
34853
  })(["display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%;"]);
34235
- var StyledInput = /*#__PURE__*/styled__default.input.withConfig({
34854
+ var StyledInput$1 = /*#__PURE__*/styled__default.input.withConfig({
34236
34855
  displayName: "QuantitySelector__StyledInput",
34237
34856
  componentId: "sc-z4ut57-3"
34238
34857
  })(["width:100%;padding:0.5rem;background-color:rgba(0,0,0,0.25);border:none;color:white;font-size:1rem;text-align:center;&::-webkit-inner-spin-button,&::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}&[type='number']{-moz-appearance:textfield;}"]);
@@ -34495,78 +35114,6 @@ var ItemsContainer = /*#__PURE__*/styled__default.div.withConfig({
34495
35114
  return isFullScreen && '50%';
34496
35115
  });
34497
35116
 
34498
- // Global style to prevent body scrolling when modal is open
34499
- var GlobalStyle = /*#__PURE__*/styled.createGlobalStyle(["body{overflow:hidden;width:100%;height:100%;}"]);
34500
- var ConfirmModal = function ConfirmModal(_ref) {
34501
- var onConfirm = _ref.onConfirm,
34502
- onClose = _ref.onClose,
34503
- _ref$message = _ref.message,
34504
- message = _ref$message === void 0 ? 'Are you sure?' : _ref$message;
34505
- var handleConfirm = React.useCallback(function (e) {
34506
- e.preventDefault();
34507
- e.stopPropagation();
34508
- onConfirm();
34509
- }, [onConfirm]);
34510
- var handleClose = React.useCallback(function (e) {
34511
- e.preventDefault();
34512
- e.stopPropagation();
34513
- onClose();
34514
- }, [onClose]);
34515
- // Fix type issues by separating event handlers for different event types
34516
- var stopPropagationClick = React.useCallback(function (e) {
34517
- e.stopPropagation();
34518
- }, []);
34519
- var stopPropagationTouch = React.useCallback(function (e) {
34520
- e.stopPropagation();
34521
- }, []);
34522
- var stopPropagationPointer = React.useCallback(function (e) {
34523
- e.stopPropagation();
34524
- }, []);
34525
- return React__default.createElement(ModalPortal, null, React__default.createElement(GlobalStyle, null), React__default.createElement(Overlay$2, {
34526
- onPointerDown: handleClose
34527
- }), React__default.createElement(ModalContainer, null, React__default.createElement(ModalContent, {
34528
- onClick: stopPropagationClick,
34529
- onTouchStart: stopPropagationTouch,
34530
- onTouchEnd: stopPropagationTouch,
34531
- onTouchMove: stopPropagationTouch,
34532
- onPointerDown: stopPropagationPointer
34533
- }, React__default.createElement(MessageContainer, null, typeof message === 'string' ? React__default.createElement(Message$1, null, message) : message), React__default.createElement(ButtonsContainer$2, null, React__default.createElement(CancelButtonWrapper, null, React__default.createElement(Button, {
34534
- buttonType: exports.ButtonTypes.RPGUIButton,
34535
- onPointerDown: handleClose
34536
- }, "No")), React__default.createElement(Button, {
34537
- buttonType: exports.ButtonTypes.RPGUIButton,
34538
- onPointerDown: handleConfirm
34539
- }, "Yes")))));
34540
- };
34541
- var Overlay$2 = /*#__PURE__*/styled__default.div.withConfig({
34542
- displayName: "ConfirmModal__Overlay",
34543
- componentId: "sc-11qkyu1-0"
34544
- })(["position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0.6);z-index:1000;animation:fadeIn 0.2s ease-out;cursor:pointer;touch-action:none;@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}"]);
34545
- var ModalContainer = /*#__PURE__*/styled__default.div.withConfig({
34546
- displayName: "ConfirmModal__ModalContainer",
34547
- componentId: "sc-11qkyu1-1"
34548
- })(["position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;z-index:1001;pointer-events:none;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);"]);
34549
- var ModalContent = /*#__PURE__*/styled__default.div.withConfig({
34550
- displayName: "ConfirmModal__ModalContent",
34551
- componentId: "sc-11qkyu1-2"
34552
- })(["background-color:#2a2a2a;border:2px solid #444;border-radius:8px;padding:20px;min-width:300px;max-width:90%;margin:0 auto;animation:scaleIn 0.2s ease-out;transform-origin:center;box-shadow:0 4px 20px rgba(0,0,0,0.5),0 0 40px rgba(0,0,0,0.3);pointer-events:auto;@keyframes scaleIn{from{transform:scale(0.8);opacity:0;}to{transform:scale(1);opacity:1;}}@media (max-width:768px){padding:25px;width:85%;}"]);
34553
- var MessageContainer = /*#__PURE__*/styled__default.div.withConfig({
34554
- displayName: "ConfirmModal__MessageContainer",
34555
- componentId: "sc-11qkyu1-3"
34556
- })(["margin-bottom:20px;text-align:center;"]);
34557
- var Message$1 = /*#__PURE__*/styled__default.p.withConfig({
34558
- displayName: "ConfirmModal__Message",
34559
- componentId: "sc-11qkyu1-4"
34560
- })(["margin:0;font-size:16px;color:#fff;text-shadow:0 1px 0 rgba(0,0,0,0.5);@media (max-width:768px){font-size:18px;}"]);
34561
- var ButtonsContainer$2 = /*#__PURE__*/styled__default.div.withConfig({
34562
- displayName: "ConfirmModal__ButtonsContainer",
34563
- componentId: "sc-11qkyu1-5"
34564
- })(["display:flex;justify-content:center;gap:20px;@media (max-width:768px){gap:30px;transform:scale(1.1);margin-top:5px;}"]);
34565
- var CancelButtonWrapper = /*#__PURE__*/styled__default.div.withConfig({
34566
- displayName: "ConfirmModal__CancelButtonWrapper",
34567
- componentId: "sc-11qkyu1-6"
34568
- })(["filter:grayscale(0.7);"]);
34569
-
34570
35117
  var ColorSelector = function ColorSelector(_ref) {
34571
35118
  var selectedColor = _ref.selectedColor,
34572
35119
  isOpen = _ref.isOpen,
@@ -34609,13 +35156,13 @@ var ColorSelector = function ColorSelector(_ref) {
34609
35156
  cancelDrag: ".react-colorful",
34610
35157
  width: "25rem",
34611
35158
  onCloseButton: onClose
34612
- }, React__default.createElement(Container$y, null, React__default.createElement(Header$4, null, "Select Color"), React__default.createElement(ColorPickerWrapper, null, React__default.createElement(reactColorful.HexColorPicker, {
35159
+ }, React__default.createElement(Container$y, null, React__default.createElement(Header$5, null, "Select Color"), React__default.createElement(ColorPickerWrapper, null, React__default.createElement(reactColorful.HexColorPicker, {
34613
35160
  color: currentColor,
34614
35161
  onChange: function onChange(color) {
34615
35162
  setCurrentColor(color);
34616
35163
  _onChange(color);
34617
35164
  }
34618
- })), React__default.createElement(ButtonContainer$1, null, React__default.createElement(Button, {
35165
+ })), React__default.createElement(ButtonContainer$2, null, React__default.createElement(Button, {
34619
35166
  buttonType: exports.ButtonTypes.RPGUIButton,
34620
35167
  type: "button",
34621
35168
  onClick: handleConfirm
@@ -34629,7 +35176,7 @@ var Container$y = /*#__PURE__*/styled__default.div.withConfig({
34629
35176
  displayName: "ItemPropertyColorSelector__Container",
34630
35177
  componentId: "sc-me1r4z-0"
34631
35178
  })(["text-align:center;background:inherit;display:flex;flex-direction:column;gap:1.5rem;align-items:center;width:100%;max-width:24rem;margin:0 auto;"]);
34632
- var Header$4 = /*#__PURE__*/styled__default.h2.withConfig({
35179
+ var Header$5 = /*#__PURE__*/styled__default.h2.withConfig({
34633
35180
  displayName: "ItemPropertyColorSelector__Header",
34634
35181
  componentId: "sc-me1r4z-1"
34635
35182
  })(["color:white;font-size:1rem;margin:0;width:100%;text-align:center;"]);
@@ -34637,7 +35184,7 @@ var ColorPickerWrapper = /*#__PURE__*/styled__default.div.withConfig({
34637
35184
  displayName: "ItemPropertyColorSelector__ColorPickerWrapper",
34638
35185
  componentId: "sc-me1r4z-2"
34639
35186
  })(["display:flex;justify-content:center;width:100%;.react-colorful{width:100%;max-width:200px;}"]);
34640
- var ButtonContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
35187
+ var ButtonContainer$2 = /*#__PURE__*/styled__default.div.withConfig({
34641
35188
  displayName: "ItemPropertyColorSelector__ButtonContainer",
34642
35189
  componentId: "sc-me1r4z-3"
34643
35190
  })(["display:flex;justify-content:center;width:100%;"]);
@@ -34700,7 +35247,7 @@ var GemSelector = function GemSelector(_ref) {
34700
35247
  scale: scale,
34701
35248
  cancelDrag: ".gem-selector-container",
34702
35249
  onCloseButton: onClose
34703
- }, React__default.createElement(ContentWrapper$1, null, React__default.createElement(Header$5, 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) {
35250
+ }, React__default.createElement(ContentWrapper$1, null, React__default.createElement(Header$6, null, React__default.createElement(Title$6, 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) {
34704
35251
  return React__default.createElement(GemItem, {
34705
35252
  key: gem.key + "-" + index
34706
35253
  }, React__default.createElement(CheckItemWrapper$1, null, React__default.createElement(CheckItem, {
@@ -34731,7 +35278,7 @@ var GemSelector = function GemSelector(_ref) {
34731
35278
  disabled: selectedGems.length === 0
34732
35279
  }, "Confirm"))));
34733
35280
  };
34734
- var Title$5 = /*#__PURE__*/styled__default.h1.withConfig({
35281
+ var Title$6 = /*#__PURE__*/styled__default.h1.withConfig({
34735
35282
  displayName: "GemSelector__Title",
34736
35283
  componentId: "sc-gbt8g4-0"
34737
35284
  })(["font-size:0.8rem;color:", " !important;"], uiColors.yellow);
@@ -34739,7 +35286,7 @@ var Subtitle = /*#__PURE__*/styled__default.h2.withConfig({
34739
35286
  displayName: "GemSelector__Subtitle",
34740
35287
  componentId: "sc-gbt8g4-1"
34741
35288
  })(["font-size:0.6rem;color:", ";margin:0;"], uiColors.white);
34742
- var Header$5 = /*#__PURE__*/styled__default.div.withConfig({
35289
+ var Header$6 = /*#__PURE__*/styled__default.div.withConfig({
34743
35290
  displayName: "GemSelector__Header",
34744
35291
  componentId: "sc-gbt8g4-2"
34745
35292
  })(["text-align:center;padding:5px;border-bottom:2px solid #444;"]);
@@ -34804,7 +35351,7 @@ var ItemSelector = function ItemSelector(_ref) {
34804
35351
  style: {
34805
35352
  width: '100%'
34806
35353
  }
34807
- }, React__default.createElement(Title$6, null, 'Harvesting instruments'), React__default.createElement(Subtitle$1, null, 'Use the tool, you need it'), React__default.createElement("hr", {
35354
+ }, React__default.createElement(Title$7, null, 'Harvesting instruments'), React__default.createElement(Subtitle$1, null, 'Use the tool, you need it'), React__default.createElement("hr", {
34808
35355
  className: "golden"
34809
35356
  })), React__default.createElement(RadioInputScroller$1, null, options == null ? void 0 : options.map(function (option, index) {
34810
35357
  return React__default.createElement(RadioOptionsWrapper$1, {
@@ -34833,7 +35380,7 @@ var ItemSelector = function ItemSelector(_ref) {
34833
35380
  buttonType: exports.ButtonTypes.RPGUIButton
34834
35381
  }, "Select")));
34835
35382
  };
34836
- var Title$6 = /*#__PURE__*/styled__default.h1.withConfig({
35383
+ var Title$7 = /*#__PURE__*/styled__default.h1.withConfig({
34837
35384
  displayName: "ItemSelector__Title",
34838
35385
  componentId: "sc-gptoxp-0"
34839
35386
  })(["font-size:0.6rem;color:yellow !important;"]);
@@ -35085,7 +35632,7 @@ var MarketplaceRows = function MarketplaceRows(_ref) {
35085
35632
  maxLines: 1,
35086
35633
  maxWidth: "200px",
35087
35634
  fontSize: "10px"
35088
- }, "$", itemPrice)))), React__default.createElement(ButtonContainer$2, null, React__default.createElement(Button, {
35635
+ }, "$", itemPrice)))), React__default.createElement(ButtonContainer$3, null, React__default.createElement(Button, {
35089
35636
  buttonType: exports.ButtonTypes.RPGUIButton,
35090
35637
  disabled: disabled,
35091
35638
  onPointerDown: function onPointerDown() {
@@ -35127,7 +35674,7 @@ var PriceValue = /*#__PURE__*/styled__default.div.withConfig({
35127
35674
  displayName: "MarketplaceRows__PriceValue",
35128
35675
  componentId: "sc-wmpr1o-7"
35129
35676
  })(["margin-left:40px;"]);
35130
- var ButtonContainer$2 = /*#__PURE__*/styled__default.div.withConfig({
35677
+ var ButtonContainer$3 = /*#__PURE__*/styled__default.div.withConfig({
35131
35678
  displayName: "MarketplaceRows__ButtonContainer",
35132
35679
  componentId: "sc-wmpr1o-8"
35133
35680
  })(["margin:auto;"]);
@@ -35703,7 +36250,7 @@ var PartyCreate = function PartyCreate(_ref) {
35703
36250
  style: {
35704
36251
  width: '100%'
35705
36252
  }
35706
- }, React__default.createElement(Title$7, null, "Create Party"), React__default.createElement("hr", {
36253
+ }, React__default.createElement(Title$8, null, "Create Party"), React__default.createElement("hr", {
35707
36254
  className: "golden"
35708
36255
  }))), React__default.createElement("h1", null, "Type your party name"), React__default.createElement(Input, {
35709
36256
  placeholder: "Type party name",
@@ -35726,7 +36273,7 @@ var Wrapper$1 = /*#__PURE__*/styled__default.div.withConfig({
35726
36273
  displayName: "PartyCreate__Wrapper",
35727
36274
  componentId: "sc-13brop0-0"
35728
36275
  })(["display:flex;flex-direction:column;width:100%;"]);
35729
- var Title$7 = /*#__PURE__*/styled__default.h1.withConfig({
36276
+ var Title$8 = /*#__PURE__*/styled__default.h1.withConfig({
35730
36277
  displayName: "PartyCreate__Title",
35731
36278
  componentId: "sc-13brop0-1"
35732
36279
  })(["font-size:0.6rem;color:", " !important;"], uiColors.yellow);
@@ -35775,7 +36322,7 @@ var PartyDashboard = function PartyDashboard(_ref) {
35775
36322
  style: {
35776
36323
  width: '100%'
35777
36324
  }
35778
- }, React__default.createElement(Title$8, null, "Party Dashboard"), React__default.createElement(Button, {
36325
+ }, React__default.createElement(Title$9, null, "Party Dashboard"), React__default.createElement(Button, {
35779
36326
  buttonType: exports.ButtonTypes.RPGUIButton
35780
36327
  }, "Create"), React__default.createElement("hr", {
35781
36328
  className: "golden"
@@ -35802,7 +36349,7 @@ var RowsWrapper = /*#__PURE__*/styled__default.div.withConfig({
35802
36349
  displayName: "PartyDashboard__RowsWrapper",
35803
36350
  componentId: "sc-16cm41r-1"
35804
36351
  })(["overflow-y:scroll;-webkit-overflow-scrolling:touch;width:100%;height:200px;"]);
35805
- var Title$8 = /*#__PURE__*/styled__default.h1.withConfig({
36352
+ var Title$9 = /*#__PURE__*/styled__default.h1.withConfig({
35806
36353
  displayName: "PartyDashboard__Title",
35807
36354
  componentId: "sc-16cm41r-2"
35808
36355
  })(["font-size:0.6rem;color:", " !important;"], uiColors.yellow);
@@ -35839,7 +36386,7 @@ var PartyInvite = function PartyInvite(_ref) {
35839
36386
  style: {
35840
36387
  width: '100%'
35841
36388
  }
35842
- }, React__default.createElement(Title$9, null, "Invite for Party"), React__default.createElement("hr", {
36389
+ }, React__default.createElement(Title$a, null, "Invite for Party"), React__default.createElement("hr", {
35843
36390
  className: "golden"
35844
36391
  }))), React__default.createElement(RowsWrapper$1, {
35845
36392
  className: "playersRows"
@@ -35858,7 +36405,7 @@ var Wrapper$3 = /*#__PURE__*/styled__default.div.withConfig({
35858
36405
  displayName: "PartyInvite__Wrapper",
35859
36406
  componentId: "sc-eu8ggt-0"
35860
36407
  })(["display:flex;flex-direction:column;width:100%;"]);
35861
- var Title$9 = /*#__PURE__*/styled__default.h1.withConfig({
36408
+ var Title$a = /*#__PURE__*/styled__default.h1.withConfig({
35862
36409
  displayName: "PartyInvite__Title",
35863
36410
  componentId: "sc-eu8ggt-1"
35864
36411
  })(["font-size:0.6rem;color:", " !important;"], uiColors.yellow);
@@ -35895,7 +36442,7 @@ var PartyManagerRow = function PartyManagerRow(_ref) {
35895
36442
  }, charName, " ", isCurrentUser ? '(You)' : '', " ", isLeader ? '(Leader)' : '')), React__default.createElement(TextContainer$5, null, React__default.createElement(Ellipsis, {
35896
36443
  maxLines: 1,
35897
36444
  maxWidth: "300px"
35898
- }, charClass)), React__default.createElement(ButtonContainer$3, null, canRemove && React__default.createElement(HighlightedText, {
36445
+ }, charClass)), React__default.createElement(ButtonContainer$4, null, canRemove && React__default.createElement(HighlightedText, {
35899
36446
  onPointerDown: function onPointerDown() {
35900
36447
  return onRemovePlayer(id);
35901
36448
  }
@@ -35913,7 +36460,7 @@ var TextContainer$5 = /*#__PURE__*/styled__default.div.withConfig({
35913
36460
  displayName: "PartyManagerRows__TextContainer",
35914
36461
  componentId: "sc-uqajew-1"
35915
36462
  })(["color:", ";overflow:hidden;white-space:nowrap;text-overflow:ellipsis;"], uiColors.white);
35916
- var ButtonContainer$3 = /*#__PURE__*/styled__default.div.withConfig({
36463
+ var ButtonContainer$4 = /*#__PURE__*/styled__default.div.withConfig({
35917
36464
  displayName: "PartyManagerRows__ButtonContainer",
35918
36465
  componentId: "sc-uqajew-2"
35919
36466
  })(["display:flex;align-items:center;gap:1rem;justify-content:flex-start;"]);
@@ -36300,7 +36847,7 @@ var QuestInfo = function QuestInfo(_ref) {
36300
36847
  onPointerDown: onRightClick
36301
36848
  }), React__default.createElement(QuestContainer, null, React__default.createElement(TitleContainer$1, {
36302
36849
  className: "drag-handler"
36303
- }, React__default.createElement(Title$a, null, React__default.createElement(Thumbnail, {
36850
+ }, React__default.createElement(Title$b, null, React__default.createElement(Thumbnail, {
36304
36851
  src: quests[currentIndex].thumbnail || img$8
36305
36852
  }), quests[currentIndex].title), React__default.createElement(QuestSplitDiv, null, React__default.createElement("hr", {
36306
36853
  className: "golden"
@@ -36319,7 +36866,7 @@ var QuestInfo = function QuestInfo(_ref) {
36319
36866
  }, button.title);
36320
36867
  })))) : React__default.createElement(QuestsContainer, null, React__default.createElement(QuestContainer, null, React__default.createElement(TitleContainer$1, {
36321
36868
  className: "drag-handler"
36322
- }, React__default.createElement(Title$a, null, React__default.createElement(Thumbnail, {
36869
+ }, React__default.createElement(Title$b, null, React__default.createElement(Thumbnail, {
36323
36870
  src: quests[0].thumbnail || img$8
36324
36871
  }), quests[0].title), React__default.createElement(QuestSplitDiv, null, React__default.createElement("hr", {
36325
36872
  className: "golden"
@@ -36366,7 +36913,7 @@ var TitleContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
36366
36913
  displayName: "QuestInfo__TitleContainer",
36367
36914
  componentId: "sc-1wccpiy-6"
36368
36915
  })(["width:100%;display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:center;margin-top:1rem;"]);
36369
- var Title$a = /*#__PURE__*/styled__default.h1.withConfig({
36916
+ var Title$b = /*#__PURE__*/styled__default.h1.withConfig({
36370
36917
  displayName: "QuestInfo__Title",
36371
36918
  componentId: "sc-1wccpiy-7"
36372
36919
  })(["color:white;z-index:22;font-size:", " !important;color:", " !important;"], uiFonts.size.medium, uiColors.yellow);
@@ -36506,76 +37053,6 @@ var RPGUIRoot = function RPGUIRoot(_ref) {
36506
37053
  }, children));
36507
37054
  };
36508
37055
 
36509
- var CTAButton = function CTAButton(_ref) {
36510
- var icon = _ref.icon,
36511
- label = _ref.label,
36512
- onClick = _ref.onClick,
36513
- className = _ref.className,
36514
- _ref$fullWidth = _ref.fullWidth,
36515
- fullWidth = _ref$fullWidth === void 0 ? false : _ref$fullWidth,
36516
- _ref$textColor = _ref.textColor,
36517
- textColor = _ref$textColor === void 0 ? '#ffffff' : _ref$textColor,
36518
- _ref$iconColor = _ref.iconColor,
36519
- iconColor = _ref$iconColor === void 0 ? '#f59e0b' : _ref$iconColor,
36520
- _ref$disabled = _ref.disabled,
36521
- disabled = _ref$disabled === void 0 ? false : _ref$disabled;
36522
- return React__default.createElement(ButtonContainer$4, {
36523
- className: className,
36524
- onPointerDown: disabled ? undefined : onClick,
36525
- "$fullWidth": fullWidth,
36526
- "$disabled": disabled,
36527
- "$color": textColor
36528
- }, React__default.createElement(ButtonContent, null, React__default.createElement(IconWrapper$1, {
36529
- "$color": iconColor,
36530
- "$disabled": disabled
36531
- }, icon), label && React__default.createElement(ButtonLabel, {
36532
- "$color": textColor,
36533
- "$disabled": disabled
36534
- }, label)));
36535
- };
36536
- var ButtonContainer$4 = /*#__PURE__*/styled__default.div.withConfig({
36537
- displayName: "CTAButton__ButtonContainer",
36538
- componentId: "sc-1azvwn5-0"
36539
- })(["display:inline-flex;align-items:center;padding:0.75rem 1.25rem;background:rgba(0,0,0,0.3);border:2px solid #f59e0b;box-shadow:0 0 10px rgba(245,158,11,0.3);border-radius:4px;cursor:", ";transition:all 0.2s;position:relative;opacity:", ";color:", ";", " &:hover{background:", ";box-shadow:", ";transform:", ";}&:active{transform:", ";box-shadow:", ";}&:before{content:'';position:absolute;inset:-1px;border-radius:5px;padding:1px;background:linear-gradient(45deg,#f59e0b,#fbbf24,#f59e0b);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask-composite:destination-out;}"], function (props) {
36540
- return props.$disabled ? 'not-allowed' : 'pointer';
36541
- }, function (props) {
36542
- return props.$disabled ? 0.5 : 1;
36543
- }, function (props) {
36544
- return props.$disabled ? '#6b7280' : props.$color;
36545
- }, function (props) {
36546
- return props.$fullWidth && styled.css(["display:flex;justify-content:center;"]);
36547
- }, function (props) {
36548
- return props.$disabled ? 'rgba(0, 0, 0, 0.3)' : 'rgba(0, 0, 0, 0.4)';
36549
- }, function (props) {
36550
- return props.$disabled ? '0 0 10px rgba(245, 158, 11, 0.3)' : '0 0 15px rgba(245, 158, 11, 0.4)';
36551
- }, function (props) {
36552
- return props.$disabled ? 'none' : 'translateY(-1px)';
36553
- }, function (props) {
36554
- return props.$disabled ? 'none' : 'translateY(1px)';
36555
- }, function (props) {
36556
- return props.$disabled ? '0 0 10px rgba(245, 158, 11, 0.3)' : '0 0 5px rgba(245, 158, 11, 0.2)';
36557
- });
36558
- var ButtonContent = /*#__PURE__*/styled__default.div.withConfig({
36559
- displayName: "CTAButton__ButtonContent",
36560
- componentId: "sc-1azvwn5-1"
36561
- })(["display:flex;align-items:center;gap:0.75rem;"]);
36562
- var IconWrapper$1 = /*#__PURE__*/styled__default.div.withConfig({
36563
- displayName: "CTAButton__IconWrapper",
36564
- componentId: "sc-1azvwn5-2"
36565
- })(["svg{font-size:1.25rem;color:", ";filter:drop-shadow(0 0 2px rgba(245,158,11,0.5));opacity:", ";}"], function (props) {
36566
- return props.$color;
36567
- }, function (props) {
36568
- return props.$disabled ? 0.5 : 1;
36569
- });
36570
- var ButtonLabel = /*#__PURE__*/styled__default.span.withConfig({
36571
- displayName: "CTAButton__ButtonLabel",
36572
- componentId: "sc-1azvwn5-3"
36573
- })(["color:", ";font-family:'Press Start 2P',cursive;font-size:0.875rem;text-shadow:0 0 4px rgba(245,158,11,0.5);opacity:", ";"], function (props) {
36574
- return props.$color;
36575
- }, function (props) {
36576
- return props.$disabled ? 0.5 : 1;
36577
- });
36578
-
36579
37056
  var Shortcuts = function Shortcuts(_ref) {
36580
37057
  var shortcuts = _ref.shortcuts,
36581
37058
  onShortcutCast = _ref.onShortcutCast,
@@ -36964,7 +37441,7 @@ var SkillsContainer = function SkillsContainer(_ref) {
36964
37441
  cancelDrag: "#skillsDiv",
36965
37442
  scale: scale,
36966
37443
  width: "100%"
36967
- }, onCloseButton && React__default.createElement(CloseButton$8, {
37444
+ }, onCloseButton && React__default.createElement(CloseButton$9, {
36968
37445
  onPointerDown: onCloseButton
36969
37446
  }, "X"), React__default.createElement(SkillsContainerDiv, {
36970
37447
  id: "skillsDiv"
@@ -36999,7 +37476,7 @@ var SkillSplitDiv = /*#__PURE__*/styled__default.div.withConfig({
36999
37476
  displayName: "SkillsContainer__SkillSplitDiv",
37000
37477
  componentId: "sc-1g0c67q-2"
37001
37478
  })(["width:100%;font-size:11px;hr{margin:0;margin-bottom:1rem;padding:0px;}p{margin-bottom:0px;}"]);
37002
- var CloseButton$8 = /*#__PURE__*/styled__default.div.withConfig({
37479
+ var CloseButton$9 = /*#__PURE__*/styled__default.div.withConfig({
37003
37480
  displayName: "SkillsContainer__CloseButton",
37004
37481
  componentId: "sc-1g0c67q-3"
37005
37482
  })(["position:absolute;top:2px;right:2px;color:white;z-index:22;font-size:1.1rem;"]);
@@ -37135,7 +37612,7 @@ var SpellInfo$1 = function SpellInfo(_ref) {
37135
37612
  castingType = spell.castingType,
37136
37613
  cooldown = spell.cooldown,
37137
37614
  maxDistanceGrid = spell.maxDistanceGrid;
37138
- return React__default.createElement(Container$F, null, React__default.createElement(Header$6, 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", {
37615
+ return React__default.createElement(Container$F, null, React__default.createElement(Header$7, null, React__default.createElement("div", null, React__default.createElement(Title$c, null, name), React__default.createElement(Type$1, null, magicWords))), React__default.createElement(Statistic$1, null, React__default.createElement("div", {
37139
37616
  className: "label"
37140
37617
  }, "Casting Type:"), React__default.createElement("div", {
37141
37618
  className: "value"
@@ -37165,7 +37642,7 @@ var Container$F = /*#__PURE__*/styled__default.div.withConfig({
37165
37642
  displayName: "SpellInfo__Container",
37166
37643
  componentId: "sc-4hbw3q-0"
37167
37644
  })(["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);
37168
- var Title$b = /*#__PURE__*/styled__default.div.withConfig({
37645
+ var Title$c = /*#__PURE__*/styled__default.div.withConfig({
37169
37646
  displayName: "SpellInfo__Title",
37170
37647
  componentId: "sc-4hbw3q-1"
37171
37648
  })(["font-size:", ";font-weight:bold;margin-bottom:0.5rem;display:flex;align-items:center;margin:0;"], uiFonts.size.medium);
@@ -37177,7 +37654,7 @@ var Description$4 = /*#__PURE__*/styled__default.div.withConfig({
37177
37654
  displayName: "SpellInfo__Description",
37178
37655
  componentId: "sc-4hbw3q-3"
37179
37656
  })(["margin-top:1.5rem;font-size:", ";color:", ";font-style:italic;"], uiFonts.size.small, uiColors.lightGray);
37180
- var Header$6 = /*#__PURE__*/styled__default.div.withConfig({
37657
+ var Header$7 = /*#__PURE__*/styled__default.div.withConfig({
37181
37658
  displayName: "SpellInfo__Header",
37182
37659
  componentId: "sc-4hbw3q-4"
37183
37660
  })(["display:flex;align-items:center;justify-content:space-between;margin-bottom:0.5rem;"]);
@@ -37393,7 +37870,7 @@ var Spell = function Spell(_ref) {
37393
37870
  onPointerUp: onPointerUp == null ? void 0 : onPointerUp.bind(null, spellKey),
37394
37871
  isSettingShortcut: isSettingShortcut && !disabled,
37395
37872
  className: "spell"
37396
- }, disabled && React__default.createElement(Overlay$3, null, characterSkillLevel < requiredLevel ? "Low " + getSkillName(attribute || 'magic level') + " level" : manaCost > charMana && 'No mana'), React__default.createElement(SpellImage, null, activeCooldown && activeCooldown > 0 ? React__default.createElement("span", {
37873
+ }, disabled && React__default.createElement(Overlay$4, null, characterSkillLevel < requiredLevel ? "Low " + getSkillName(attribute || 'magic level') + " level" : manaCost > charMana && 'No mana'), React__default.createElement(SpellImage, null, activeCooldown && activeCooldown > 0 ? React__default.createElement("span", {
37397
37874
  className: "cooldown"
37398
37875
  }, activeCooldown.toFixed(activeCooldown > 10 ? 0 : 1)) : null, React__default.createElement(SpriteFromAtlas, {
37399
37876
  atlasIMG: atlasIMG,
@@ -37402,7 +37879,7 @@ var Spell = function Spell(_ref) {
37402
37879
  imgScale: IMAGE_SCALE,
37403
37880
  containerStyle: CONTAINER_STYLE,
37404
37881
  centered: true
37405
- })), React__default.createElement(Info, null, React__default.createElement(Title$c, null, React__default.createElement("span", null, name), React__default.createElement("span", {
37882
+ })), React__default.createElement(Info, null, React__default.createElement(Title$d, null, React__default.createElement("span", null, name), React__default.createElement("span", {
37406
37883
  className: "spell"
37407
37884
  }, "(", 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", {
37408
37885
  className: "mana"
@@ -37423,7 +37900,7 @@ var Info = /*#__PURE__*/styled__default.span.withConfig({
37423
37900
  displayName: "Spell__Info",
37424
37901
  componentId: "sc-j96fa2-2"
37425
37902
  })(["width:0;flex:1;@media (orientation:portrait){display:none;}"]);
37426
- var Title$c = /*#__PURE__*/styled__default.p.withConfig({
37903
+ var Title$d = /*#__PURE__*/styled__default.p.withConfig({
37427
37904
  displayName: "Spell__Title",
37428
37905
  componentId: "sc-j96fa2-3"
37429
37906
  })(["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);
@@ -37439,7 +37916,7 @@ var Cost = /*#__PURE__*/styled__default.p.withConfig({
37439
37916
  displayName: "Spell__Cost",
37440
37917
  componentId: "sc-j96fa2-6"
37441
37918
  })(["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);
37442
- var Overlay$3 = /*#__PURE__*/styled__default.p.withConfig({
37919
+ var Overlay$4 = /*#__PURE__*/styled__default.p.withConfig({
37443
37920
  displayName: "Spell__Overlay",
37444
37921
  componentId: "sc-j96fa2-7"
37445
37922
  })(["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);
@@ -37488,7 +37965,7 @@ var Spellbook = function Spellbook(_ref) {
37488
37965
  height: "inherit",
37489
37966
  cancelDrag: "#spellbook-search, #shortcuts_list, .spell",
37490
37967
  scale: scale
37491
- }, React__default.createElement(Container$J, null, React__default.createElement(Title$d, null, "Learned Spells"), React__default.createElement(ShortcutsSetter, {
37968
+ }, React__default.createElement(Container$J, null, React__default.createElement(Title$e, null, "Learned Spells"), React__default.createElement(ShortcutsSetter, {
37492
37969
  setSettingShortcutIndex: setSettingShortcutIndex,
37493
37970
  settingShortcutIndex: settingShortcutIndex,
37494
37971
  shortcuts: shortcuts,
@@ -37521,7 +37998,7 @@ var Spellbook = function Spellbook(_ref) {
37521
37998
  }, spell)));
37522
37999
  }))));
37523
38000
  };
37524
- var Title$d = /*#__PURE__*/styled__default.h1.withConfig({
38001
+ var Title$e = /*#__PURE__*/styled__default.h1.withConfig({
37525
38002
  displayName: "Spellbook__Title",
37526
38003
  componentId: "sc-r02nfq-0"
37527
38004
  })(["font-size:", " !important;margin-bottom:0 !important;"], uiFonts.size.large);
@@ -57963,7 +58440,7 @@ var CartView = function CartView(_ref2) {
57963
58440
  return _ref3.apply(this, arguments);
57964
58441
  };
57965
58442
  }();
57966
- return React__default.createElement(Container$K, null, React__default.createElement(Header$7, null, React__default.createElement(Title$e, null, "Shopping Cart"), React__default.createElement(CloseButton$9, {
58443
+ return React__default.createElement(Container$K, null, React__default.createElement(Header$8, null, React__default.createElement(Title$f, null, "Shopping Cart"), React__default.createElement(CloseButton$a, {
57967
58444
  onPointerDown: onClose
57968
58445
  }, React__default.createElement(fa.FaTimes, null))), React__default.createElement(CartItems, null, cartItems.length === 0 ? React__default.createElement(EmptyCart, null, "Your cart is empty") : cartItems.map(function (cartItem) {
57969
58446
  var _cartItem$metadata, _cartItem$metadata2;
@@ -57991,7 +58468,7 @@ var CartView = function CartView(_ref2) {
57991
58468
  onRemoveFromCart(cartItem.item.key);
57992
58469
  }
57993
58470
  }));
57994
- })), React__default.createElement(Footer$1, null, React__default.createElement(TotalInfo, null, React__default.createElement(TotalRow, null, React__default.createElement("span", null, "Total:"), React__default.createElement("span", null, "$", formatPrice(total))), error && React__default.createElement(ErrorMessage$1, null, error)), React__default.createElement(CTAButton, {
58471
+ })), React__default.createElement(Footer$1, null, React__default.createElement(TotalInfo, null, React__default.createElement(TotalRow, null, React__default.createElement("span", null, "Total:"), React__default.createElement("span", null, "$", formatPrice(total))), error && React__default.createElement(ErrorMessage$2, null, error)), React__default.createElement(CTAButton, {
57995
58472
  icon: React__default.createElement(fa.FaShoppingBag, null),
57996
58473
  label: isLoading ? 'Processing...' : 'Complete Purchase',
57997
58474
  onClick: handlePurchase,
@@ -58003,15 +58480,15 @@ var Container$K = /*#__PURE__*/styled__default.div.withConfig({
58003
58480
  displayName: "CartView__Container",
58004
58481
  componentId: "sc-ydtyl1-0"
58005
58482
  })(["display:flex;flex-direction:column;width:100%;height:100%;gap:1.5rem;padding:1.5rem;"]);
58006
- var Header$7 = /*#__PURE__*/styled__default.div.withConfig({
58483
+ var Header$8 = /*#__PURE__*/styled__default.div.withConfig({
58007
58484
  displayName: "CartView__Header",
58008
58485
  componentId: "sc-ydtyl1-1"
58009
58486
  })(["display:flex;justify-content:space-between;align-items:center;"]);
58010
- var Title$e = /*#__PURE__*/styled__default.h2.withConfig({
58487
+ var Title$f = /*#__PURE__*/styled__default.h2.withConfig({
58011
58488
  displayName: "CartView__Title",
58012
58489
  componentId: "sc-ydtyl1-2"
58013
58490
  })(["font-family:'Press Start 2P',cursive;font-size:1rem;color:#ffffff;margin:0;"]);
58014
- var CloseButton$9 = /*#__PURE__*/styled__default.div.withConfig({
58491
+ var CloseButton$a = /*#__PURE__*/styled__default.div.withConfig({
58015
58492
  displayName: "CartView__CloseButton",
58016
58493
  componentId: "sc-ydtyl1-3"
58017
58494
  })(["padding:0.5rem;min-width:unset;width:42px;height:42px;display:flex;font-size:1.5rem;align-items:center;color:white;justify-content:center;"]);
@@ -58055,7 +58532,7 @@ var TotalRow = /*#__PURE__*/styled__default.div.withConfig({
58055
58532
  displayName: "CartView__TotalRow",
58056
58533
  componentId: "sc-ydtyl1-13"
58057
58534
  })(["display:flex;align-items:center;justify-content:space-between;gap:1rem;font-family:'Press Start 2P',cursive;font-size:1rem;color:#ffffff;span:last-child{color:#fef08a;}"]);
58058
- var ErrorMessage$1 = /*#__PURE__*/styled__default.div.withConfig({
58535
+ var ErrorMessage$2 = /*#__PURE__*/styled__default.div.withConfig({
58059
58536
  displayName: "CartView__ErrorMessage",
58060
58537
  componentId: "sc-ydtyl1-14"
58061
58538
  })(["color:#ef4444;font-size:0.875rem;font-family:'Press Start 2P',cursive;text-align:center;"]);
@@ -58353,7 +58830,7 @@ var ScrollableContent = function ScrollableContent(_ref) {
58353
58830
  _ref$maxHeight = _ref.maxHeight,
58354
58831
  maxHeight = _ref$maxHeight === void 0 ? '500px' : _ref$maxHeight;
58355
58832
  if (items.length === 0) {
58356
- return React__default.createElement(EmptyMessage$2, null, emptyMessage);
58833
+ return React__default.createElement(EmptyMessage$3, null, emptyMessage);
58357
58834
  }
58358
58835
  return React__default.createElement(Container$L, {
58359
58836
  className: className
@@ -58412,7 +58889,7 @@ var Content$4 = /*#__PURE__*/styled__default.div.withConfig({
58412
58889
  }, function (props) {
58413
58890
  return props.$gridColumns;
58414
58891
  });
58415
- var EmptyMessage$2 = /*#__PURE__*/styled__default.div.withConfig({
58892
+ var EmptyMessage$3 = /*#__PURE__*/styled__default.div.withConfig({
58416
58893
  displayName: "ScrollableContent__EmptyMessage",
58417
58894
  componentId: "sc-xhh2um-8"
58418
58895
  })(["text-align:center;color:#9ca3af;padding:2rem;flex:1;display:flex;align-items:center;justify-content:center;"]);
@@ -58493,7 +58970,7 @@ var StoreCharacterSkinRow = function StoreCharacterSkinRow(_ref) {
58493
58970
  height: 32,
58494
58971
  imgScale: 2,
58495
58972
  centered: true
58496
- }) : React__default.createElement(DefaultIcon, null, "\uD83D\uDC64")), React__default.createElement(ItemDetails$1, null, React__default.createElement(Header$8, null, React__default.createElement(ItemName$1, null, item.name)), availableCharacters.length > 0 && currentCharacter && React__default.createElement(SelectedSkinNav, null, React__default.createElement(SelectedSkin, null, "Selected:"), React__default.createElement(SkinNavArrow, {
58973
+ }) : React__default.createElement(DefaultIcon, null, "\uD83D\uDC64")), React__default.createElement(ItemDetails$1, null, React__default.createElement(Header$9, null, React__default.createElement(ItemName$1, null, item.name)), availableCharacters.length > 0 && currentCharacter && React__default.createElement(SelectedSkinNav, null, React__default.createElement(SelectedSkin, null, "Selected:"), React__default.createElement(SkinNavArrow, {
58497
58974
  direction: "left",
58498
58975
  onPointerDown: handlePreviousSkin,
58499
58976
  size: 24
@@ -58545,7 +59022,7 @@ var SkinNavArrow = /*#__PURE__*/styled__default(SelectArrow).withConfig({
58545
59022
  displayName: "StoreCharacterSkinRow__SkinNavArrow",
58546
59023
  componentId: "sc-81xqsx-7"
58547
59024
  })(["position:static;"]);
58548
- var Header$8 = /*#__PURE__*/styled__default.div.withConfig({
59025
+ var Header$9 = /*#__PURE__*/styled__default.div.withConfig({
58549
59026
  displayName: "StoreCharacterSkinRow__Header",
58550
59027
  componentId: "sc-81xqsx-8"
58551
59028
  })(["display:flex;align-items:center;gap:0.5rem;"]);
@@ -58948,7 +59425,7 @@ var StoreItemDetails = function StoreItemDetails(_ref) {
58948
59425
  if (typeof imageUrl === 'string') return imageUrl;
58949
59426
  return imageUrl["default"] || imageUrl.src;
58950
59427
  };
58951
- return React__default.createElement(Container$M, null, React__default.createElement(Header$9, null, React__default.createElement(BackButton, {
59428
+ return React__default.createElement(Container$M, null, React__default.createElement(Header$a, null, React__default.createElement(BackButton, {
58952
59429
  onClick: onBack
58953
59430
  }, React__default.createElement(fa.FaArrowLeft, null), React__default.createElement("span", null, "Back"))), React__default.createElement(Content$5, null, React__default.createElement(DetailsGrid, null, React__default.createElement(ItemIcon, null, React__default.createElement("img", {
58954
59431
  src: getImageSrc(),
@@ -58966,7 +59443,7 @@ var Container$M = /*#__PURE__*/styled__default.div.withConfig({
58966
59443
  displayName: "StoreItemDetails__Container",
58967
59444
  componentId: "sc-k3ho5z-0"
58968
59445
  })(["display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;height:100%;"]);
58969
- var Header$9 = /*#__PURE__*/styled__default.div.withConfig({
59446
+ var Header$a = /*#__PURE__*/styled__default.div.withConfig({
58970
59447
  displayName: "StoreItemDetails__Header",
58971
59448
  componentId: "sc-k3ho5z-1"
58972
59449
  })(["display:flex;align-items:center;gap:1rem;"]);
@@ -59134,7 +59611,7 @@ var Store = function Store(_ref) {
59134
59611
  return React__default.createElement(LoadingMessage$1, null, "Loading...");
59135
59612
  }
59136
59613
  if (error) {
59137
- return React__default.createElement(ErrorMessage$2, null, error);
59614
+ return React__default.createElement(ErrorMessage$3, null, error);
59138
59615
  }
59139
59616
  // Build tabs dynamically based on props
59140
59617
  var tabIds = tabOrder != null ? tabOrder : ['premium', 'packs', 'items'];
@@ -59302,7 +59779,7 @@ var LoadingMessage$1 = /*#__PURE__*/styled__default.div.withConfig({
59302
59779
  displayName: "Store__LoadingMessage",
59303
59780
  componentId: "sc-64dj00-8"
59304
59781
  })(["text-align:center;color:", ";padding:2rem;"], uiColors.white);
59305
- var ErrorMessage$2 = /*#__PURE__*/styled__default.div.withConfig({
59782
+ var ErrorMessage$3 = /*#__PURE__*/styled__default.div.withConfig({
59306
59783
  displayName: "Store__ErrorMessage",
59307
59784
  componentId: "sc-64dj00-9"
59308
59785
  })(["text-align:center;color:", ";padding:2rem;"], uiColors.red);
@@ -59325,13 +59802,13 @@ var PaymentMethodModal = function PaymentMethodModal(_ref) {
59325
59802
  onPayWithCard();
59326
59803
  }
59327
59804
  }, [selected, onPayWithDC, onPayWithCard]);
59328
- return React__default.createElement(ModalPortal, null, React__default.createElement(Overlay$4, {
59805
+ return React__default.createElement(ModalPortal, null, React__default.createElement(Overlay$5, {
59329
59806
  onPointerDown: onClose
59330
- }), React__default.createElement(ModalContainer$1, null, React__default.createElement(ModalContent$1, {
59807
+ }), React__default.createElement(ModalContainer$2, null, React__default.createElement(ModalContent$2, {
59331
59808
  onClick: stopPropagation,
59332
59809
  onTouchStart: stopPropagation,
59333
59810
  onPointerDown: stopPropagation
59334
- }, React__default.createElement(Header$a, null, React__default.createElement(Title$f, null, "How would you like to pay?"), React__default.createElement(CloseButton$a, {
59811
+ }, React__default.createElement(Header$b, null, React__default.createElement(Title$g, null, "How would you like to pay?"), React__default.createElement(CloseButton$b, {
59335
59812
  onPointerDown: onClose,
59336
59813
  "aria-label": "Close"
59337
59814
  }, React__default.createElement(fa.FaTimes, null))), React__default.createElement(Options, null, React__default.createElement(RadioOption, {
@@ -59353,27 +59830,27 @@ var PaymentMethodModal = function PaymentMethodModal(_ref) {
59353
59830
  onPointerDown: handleConfirm
59354
59831
  }, "Confirm")))));
59355
59832
  };
59356
- var Overlay$4 = /*#__PURE__*/styled__default.div.withConfig({
59833
+ var Overlay$5 = /*#__PURE__*/styled__default.div.withConfig({
59357
59834
  displayName: "PaymentMethodModal__Overlay",
59358
59835
  componentId: "sc-1dxy6lr-0"
59359
59836
  })(["position:fixed;inset:0;background:rgba(0,0,0,0.65);z-index:1000;"]);
59360
- var ModalContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
59837
+ var ModalContainer$2 = /*#__PURE__*/styled__default.div.withConfig({
59361
59838
  displayName: "PaymentMethodModal__ModalContainer",
59362
59839
  componentId: "sc-1dxy6lr-1"
59363
59840
  })(["position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1001;pointer-events:none;"]);
59364
- var ModalContent$1 = /*#__PURE__*/styled__default.div.withConfig({
59841
+ var ModalContent$2 = /*#__PURE__*/styled__default.div.withConfig({
59365
59842
  displayName: "PaymentMethodModal__ModalContent",
59366
59843
  componentId: "sc-1dxy6lr-2"
59367
59844
  })(["background:#1a1a2e;border:2px solid #f59e0b;border-radius:8px;padding:20px 24px 24px;min-width:300px;max-width:90%;display:flex;flex-direction:column;gap:16px;pointer-events:auto;animation:scaleIn 0.15s ease-out;@keyframes scaleIn{from{transform:scale(0.85);opacity:0;}to{transform:scale(1);opacity:1;}}"]);
59368
- var Header$a = /*#__PURE__*/styled__default.div.withConfig({
59845
+ var Header$b = /*#__PURE__*/styled__default.div.withConfig({
59369
59846
  displayName: "PaymentMethodModal__Header",
59370
59847
  componentId: "sc-1dxy6lr-3"
59371
59848
  })(["display:flex;align-items:center;justify-content:space-between;"]);
59372
- var Title$f = /*#__PURE__*/styled__default.h3.withConfig({
59849
+ var Title$g = /*#__PURE__*/styled__default.h3.withConfig({
59373
59850
  displayName: "PaymentMethodModal__Title",
59374
59851
  componentId: "sc-1dxy6lr-4"
59375
59852
  })(["margin:0;font-family:'Press Start 2P',cursive;font-size:0.7rem;color:#fef08a;"]);
59376
- var CloseButton$a = /*#__PURE__*/styled__default.button.withConfig({
59853
+ var CloseButton$b = /*#__PURE__*/styled__default.button.withConfig({
59377
59854
  displayName: "PaymentMethodModal__CloseButton",
59378
59855
  componentId: "sc-1dxy6lr-5"
59379
59856
  })(["background:none;border:none;color:rgba(255,255,255,0.6);cursor:pointer;font-size:1rem;padding:4px;display:flex;align-items:center;&:hover{color:#ffffff;}"]);
@@ -59452,7 +59929,7 @@ var TimeWidget = function TimeWidget(_ref) {
59452
59929
  return React__default.createElement(Draggable, {
59453
59930
  scale: scale,
59454
59931
  cancel: ".time-widget-close,.time-widget-container,.time-widget-container *"
59455
- }, React__default.createElement(WidgetContainer, null, React__default.createElement(CloseButton$b, {
59932
+ }, React__default.createElement(WidgetContainer, null, React__default.createElement(CloseButton$c, {
59456
59933
  onPointerDown: onClose,
59457
59934
  className: "time-widget-close"
59458
59935
  }, "X"), React__default.createElement(DayNightContainer, {
@@ -59469,7 +59946,7 @@ var Time = /*#__PURE__*/styled__default.div.withConfig({
59469
59946
  displayName: "TimeWidget__Time",
59470
59947
  componentId: "sc-1ja236h-1"
59471
59948
  })(["top:0.75rem;right:0.5rem;position:absolute;font-size:", ";color:white;"], uiFonts.size.small);
59472
- var CloseButton$b = /*#__PURE__*/styled__default.p.withConfig({
59949
+ var CloseButton$c = /*#__PURE__*/styled__default.p.withConfig({
59473
59950
  displayName: "TimeWidget__CloseButton",
59474
59951
  componentId: "sc-1ja236h-2"
59475
59952
  })(["position:absolute;top:-0.5rem;margin:0;right:-0.2rem;font-size:", " !important;z-index:1;"], uiFonts.size.small);
@@ -59748,7 +60225,7 @@ var TradingMenu = function TradingMenu(_ref) {
59748
60225
  width: "500px",
59749
60226
  cancelDrag: "#TraderContainer",
59750
60227
  scale: scale
59751
- }, React__default.createElement(Container$O, null, React__default.createElement(Title$g, null, type.charAt(0).toUpperCase() + type.slice(1), " Menu"), React__default.createElement("hr", {
60228
+ }, React__default.createElement(Container$O, null, React__default.createElement(Title$h, null, type.charAt(0).toUpperCase() + type.slice(1), " Menu"), React__default.createElement("hr", {
59752
60229
  className: "golden"
59753
60230
  }), React__default.createElement(ScrollWrapper, {
59754
60231
  id: "TraderContainer"
@@ -59780,7 +60257,7 @@ var Container$O = /*#__PURE__*/styled__default.div.withConfig({
59780
60257
  displayName: "TradingMenu__Container",
59781
60258
  componentId: "sc-1wjsz1l-0"
59782
60259
  })(["width:100%;"]);
59783
- var Title$g = /*#__PURE__*/styled__default.h1.withConfig({
60260
+ var Title$h = /*#__PURE__*/styled__default.h1.withConfig({
59784
60261
  displayName: "TradingMenu__Title",
59785
60262
  componentId: "sc-1wjsz1l-1"
59786
60263
  })(["font-size:0.7rem !important;color:yellow !important;text-align:center;"]);
@@ -59974,6 +60451,7 @@ exports.CheckButton = CheckButton;
59974
60451
  exports.CheckItem = CheckItem;
59975
60452
  exports.CircularController = CircularController;
59976
60453
  exports.CraftBook = CraftBook;
60454
+ exports.DCWalletModal = DCWalletModal;
59977
60455
  exports.DailyTasks = DailyTasks;
59978
60456
  exports.DraggableContainer = DraggableContainer;
59979
60457
  exports.Dropdown = Dropdown;