@rpg-engine/long-bow 0.8.206 → 0.8.208

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.
@@ -13347,6 +13347,12 @@ var rarityColor$1 = function rarityColor(rarity) {
13347
13347
  var _RARITY_COLORS$toLowe;
13348
13348
  return (_RARITY_COLORS$toLowe = RARITY_COLORS$1[(rarity != null ? rarity : '').toLowerCase()]) != null ? _RARITY_COLORS$toLowe : RARITY_COLORS$1.common;
13349
13349
  };
13350
+ var rarityGlowColor = function rarityGlowColor(rarity) {
13351
+ var _RARITY_COLORS$key;
13352
+ var key = (rarity != null ? rarity : '').toLowerCase();
13353
+ if (!key || key === 'common') return null;
13354
+ return (_RARITY_COLORS$key = RARITY_COLORS$1[key]) != null ? _RARITY_COLORS$key : null;
13355
+ };
13350
13356
  var formatEquipmentSlot = function formatEquipmentSlot(slot) {
13351
13357
  if (!slot) return 'Unknown';
13352
13358
  return slot.replace(/([a-z0-9])([A-Z])/g, '$1 $2').replace(/[_-]+/g, ' ').replace(/\b\w/g, function (_char) {
@@ -13393,7 +13399,7 @@ var CharacterDetailModal = function CharacterDetailModal(_ref) {
13393
13399
  var a = _ref2[1];
13394
13400
  var b = _ref3[1];
13395
13401
  return b - a;
13396
- }).slice(0, 8);
13402
+ });
13397
13403
  return React.createElement(ModalPortal, null, isConfirming && React.createElement(ConfirmModal, {
13398
13404
  onConfirm: handleConfirm,
13399
13405
  onClose: function onClose() {
@@ -13411,7 +13417,7 @@ var CharacterDetailModal = function CharacterDetailModal(_ref) {
13411
13417
  onPointerDown: handleClose,
13412
13418
  "aria-label": "Close",
13413
13419
  type: "button"
13414
- }, React.createElement(FaTimes, null))), React.createElement(HeroSection, null, React.createElement(SpriteContainer$5, null, React.createElement(SpriteFromAtlas, {
13420
+ }, React.createElement(FaTimes, null))), React.createElement(ScrollableBody, null, React.createElement(HeroSection, null, React.createElement(SpriteContainer$5, null, React.createElement(SpriteFromAtlas, {
13415
13421
  atlasIMG: characterAtlasIMG,
13416
13422
  atlasJSON: characterAtlasJSON,
13417
13423
  spriteKey: snap.textureKey + "/down/standing/0.png",
@@ -13421,7 +13427,7 @@ var CharacterDetailModal = function CharacterDetailModal(_ref) {
13421
13427
  centered: true
13422
13428
  })), React.createElement(HeroInfo, null, React.createElement(CharacterName$1, null, snap.name || 'Unknown'), React.createElement(CharacterClass, null, "Lv.", snap.level, " \xB7 ", snap["class"]), React.createElement(CharacterOrigin, null, snap.race, " \xB7 ", snap.faction), React.createElement(ModeBadge, {
13423
13429
  "$hardcore": ((_snap$mode = snap.mode) == null ? void 0 : _snap$mode.toLowerCase()) === 'hardcore'
13424
- }, snap.mode || 'Standard'))), React.createElement(Divider, null), React.createElement(MetaColumns, null, topSkills.length > 0 && React.createElement(Section$3, null, React.createElement(SectionTitle$3, null, "Skills"), React.createElement(SkillsList, null, topSkills.map(function (_ref4) {
13430
+ }, snap.mode || 'Standard'), snap.gold != null && snap.gold > 0 && React.createElement(GoldRow, null, React.createElement(GoldLabel, null, "GOLD"), React.createElement(GoldAmount$1, null, snap.gold.toLocaleString())))), React.createElement(Divider, null), React.createElement(MetaColumns, null, topSkills.length > 0 && React.createElement(Section$3, null, React.createElement(SectionTitle$3, null, "Skills"), React.createElement(SkillsList, null, topSkills.map(function (_ref4) {
13425
13431
  var name = _ref4[0],
13426
13432
  value = _ref4[1];
13427
13433
  return React.createElement(SkillRow, {
@@ -13430,7 +13436,9 @@ var CharacterDetailModal = function CharacterDetailModal(_ref) {
13430
13436
  }))), ((_snap$equipment = snap.equipment) == null ? void 0 : _snap$equipment.length) > 0 && React.createElement(Section$3, null, React.createElement(SectionTitle$3, null, "Equipment"), React.createElement(EquipmentList, null, snap.equipment.map(function (eq, i) {
13431
13437
  return React.createElement(EquipmentRow, {
13432
13438
  key: i
13433
- }, React.createElement(EquipmentSprite, null, React.createElement(SpriteFromAtlas, {
13439
+ }, React.createElement(EquipmentSprite, {
13440
+ "$rarity": eq.rarity
13441
+ }, React.createElement(SpriteFromAtlas, {
13434
13442
  atlasIMG: atlasIMG,
13435
13443
  atlasJSON: atlasJSON,
13436
13444
  spriteKey: eq.itemKey,
@@ -13438,10 +13446,16 @@ var CharacterDetailModal = function CharacterDetailModal(_ref) {
13438
13446
  width: 32,
13439
13447
  height: 32,
13440
13448
  centered: true
13441
- })), React.createElement(EquipMeta, null, React.createElement(EquipName, null, eq.itemName), React.createElement(EquipDetails, null, React.createElement(EquipSlot, null, formatEquipmentSlot(eq.slot)), React.createElement(RarityBadge, {
13449
+ }), eq.attachedGems && eq.attachedGems.length > 0 && React.createElement(GemRow, null, eq.attachedGems.map(function (gem, gi) {
13450
+ var _gemColors$gem$key;
13451
+ return React.createElement(GemDot, {
13452
+ key: gi,
13453
+ "$color": (_gemColors$gem$key = gemColors[gem.key]) != null ? _gemColors$gem$key : '#fff'
13454
+ });
13455
+ }))), React.createElement(EquipMeta, null, React.createElement(EquipName, null, eq.itemName), React.createElement(EquipDetails, null, React.createElement(EquipSlot, null, formatEquipmentSlot(eq.slot)), React.createElement(RarityBadge, {
13442
13456
  "$rarity": eq.rarity
13443
13457
  }, eq.rarity || 'Common'))));
13444
- })))), React.createElement(Divider, null), React.createElement(Footer$1, null, React.createElement(SellerInfo, null, "Listed by ", listing.listedByCharacterName), React.createElement(FooterActions, null, React.createElement(PriceDisplay, null, React.createElement(DCCoinWrapper$2, null, React.createElement(SpriteFromAtlas, {
13458
+ }))))), React.createElement(FooterDivider, null), React.createElement(Footer$1, null, React.createElement(SellerInfo, null, "Listed by ", listing.listedByCharacterName), React.createElement(FooterActions, null, React.createElement(PriceDisplay, null, React.createElement(DCCoinWrapper$2, null, React.createElement(SpriteFromAtlas, {
13445
13459
  atlasIMG: atlasIMG,
13446
13460
  atlasJSON: atlasJSON,
13447
13461
  spriteKey: "others/definya-coin.png",
@@ -13469,7 +13483,7 @@ var ModalContainer$5 = /*#__PURE__*/styled.div.withConfig({
13469
13483
  var ModalContent$5 = /*#__PURE__*/styled.div.withConfig({
13470
13484
  displayName: "CharacterDetailModal__ModalContent",
13471
13485
  componentId: "sc-1kdn1l6-2"
13472
- })(["background:#1a1a2e;border:2px solid #f59e0b;border-radius:8px;padding:20px 24px;width:580px;max-width:96%;max-height:85dvh;display:flex;flex-direction:column;gap:14px;overflow-y:auto;overflow-x:hidden;pointer-events:auto;animation:", " 0.15s ease-out;&::-webkit-scrollbar{width:6px;}&::-webkit-scrollbar-track{background:rgba(0,0,0,0.2);border-radius:4px;}&::-webkit-scrollbar-thumb{background:rgba(245,158,11,0.3);border-radius:4px;}"], scaleIn$2);
13486
+ })(["background:#1a1a2e;border:2px solid #f59e0b;border-radius:8px;padding:20px 24px 16px;width:580px;max-width:96%;max-height:85dvh;display:flex;flex-direction:column;gap:14px;overflow:hidden;pointer-events:auto;animation:", " 0.15s ease-out;"], scaleIn$2);
13473
13487
  var Header$b = /*#__PURE__*/styled.div.withConfig({
13474
13488
  displayName: "CharacterDetailModal__Header",
13475
13489
  componentId: "sc-1kdn1l6-3"
@@ -13520,103 +13534,141 @@ var Divider = /*#__PURE__*/styled.hr.withConfig({
13520
13534
  displayName: "CharacterDetailModal__Divider",
13521
13535
  componentId: "sc-1kdn1l6-13"
13522
13536
  })(["border:none;border-top:1px solid rgba(255,255,255,0.06);margin:0;flex-shrink:0;"]);
13537
+ var FooterDivider = /*#__PURE__*/styled(Divider).withConfig({
13538
+ displayName: "CharacterDetailModal__FooterDivider",
13539
+ componentId: "sc-1kdn1l6-14"
13540
+ })([""]);
13541
+ var ScrollableBody = /*#__PURE__*/styled.div.withConfig({
13542
+ displayName: "CharacterDetailModal__ScrollableBody",
13543
+ componentId: "sc-1kdn1l6-15"
13544
+ })(["flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:14px;min-height:0;&::-webkit-scrollbar{width:6px;}&::-webkit-scrollbar-track{background:rgba(0,0,0,0.2);border-radius:4px;}&::-webkit-scrollbar-thumb{background:rgba(245,158,11,0.3);border-radius:4px;}"]);
13523
13545
  var Section$3 = /*#__PURE__*/styled.div.withConfig({
13524
13546
  displayName: "CharacterDetailModal__Section",
13525
- componentId: "sc-1kdn1l6-14"
13547
+ componentId: "sc-1kdn1l6-16"
13526
13548
  })(["display:flex;flex-direction:column;gap:8px;"]);
13527
13549
  var SectionTitle$3 = /*#__PURE__*/styled.span.withConfig({
13528
13550
  displayName: "CharacterDetailModal__SectionTitle",
13529
- componentId: "sc-1kdn1l6-15"
13551
+ componentId: "sc-1kdn1l6-17"
13530
13552
  })(["font-family:'Press Start 2P',cursive !important;font-size:0.45rem !important;color:#f59e0b !important;text-transform:uppercase;letter-spacing:1px;"]);
13531
13553
  var MetaColumns = /*#__PURE__*/styled.div.withConfig({
13532
13554
  displayName: "CharacterDetailModal__MetaColumns",
13533
- componentId: "sc-1kdn1l6-16"
13555
+ componentId: "sc-1kdn1l6-18"
13534
13556
  })(["display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;@media (max-width:640px){grid-template-columns:1fr;}"]);
13535
13557
  var SkillsList = /*#__PURE__*/styled.div.withConfig({
13536
13558
  displayName: "CharacterDetailModal__SkillsList",
13537
- componentId: "sc-1kdn1l6-17"
13559
+ componentId: "sc-1kdn1l6-19"
13538
13560
  })(["display:flex;flex-direction:column;gap:4px;"]);
13539
13561
  var SkillRow = /*#__PURE__*/styled.div.withConfig({
13540
13562
  displayName: "CharacterDetailModal__SkillRow",
13541
- componentId: "sc-1kdn1l6-18"
13563
+ componentId: "sc-1kdn1l6-20"
13542
13564
  })(["display:flex;justify-content:space-between;align-items:center;gap:8px;"]);
13543
13565
  var SkillName = /*#__PURE__*/styled.span.withConfig({
13544
13566
  displayName: "CharacterDetailModal__SkillName",
13545
- componentId: "sc-1kdn1l6-19"
13567
+ componentId: "sc-1kdn1l6-21"
13546
13568
  })(["font-family:'Press Start 2P',cursive !important;font-size:0.38rem !important;color:#9ca3af !important;text-transform:capitalize;"]);
13547
13569
  var SkillValue = /*#__PURE__*/styled.span.withConfig({
13548
13570
  displayName: "CharacterDetailModal__SkillValue",
13549
- componentId: "sc-1kdn1l6-20"
13571
+ componentId: "sc-1kdn1l6-22"
13550
13572
  })(["font-family:'Press Start 2P',cursive !important;font-size:0.38rem !important;color:#fef08a !important;"]);
13551
13573
  var EquipmentList = /*#__PURE__*/styled.div.withConfig({
13552
13574
  displayName: "CharacterDetailModal__EquipmentList",
13553
- componentId: "sc-1kdn1l6-21"
13575
+ componentId: "sc-1kdn1l6-23"
13554
13576
  })(["display:flex;flex-direction:column;gap:5px;"]);
13555
13577
  var EquipmentRow = /*#__PURE__*/styled.div.withConfig({
13556
13578
  displayName: "CharacterDetailModal__EquipmentRow",
13557
- componentId: "sc-1kdn1l6-22"
13579
+ componentId: "sc-1kdn1l6-24"
13558
13580
  })(["display:flex;align-items:center;gap:8px;padding:5px 8px;background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.05);border-radius:4px;min-width:0;"]);
13559
13581
  var EquipmentSprite = /*#__PURE__*/styled.div.withConfig({
13560
13582
  displayName: "CharacterDetailModal__EquipmentSprite",
13561
- componentId: "sc-1kdn1l6-23"
13562
- })(["display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;"]);
13583
+ componentId: "sc-1kdn1l6-25"
13584
+ })(["position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:3px;", ""], function (_ref7) {
13585
+ var $rarity = _ref7.$rarity;
13586
+ var color = rarityGlowColor($rarity);
13587
+ return color ? "box-shadow: 0 0 4px 3px " + color + " inset, 0 0 6px 2px " + color + ";" : '';
13588
+ });
13589
+ var GemRow = /*#__PURE__*/styled.div.withConfig({
13590
+ displayName: "CharacterDetailModal__GemRow",
13591
+ componentId: "sc-1kdn1l6-26"
13592
+ })(["position:absolute;bottom:-1px;left:0;display:flex;gap:1px;pointer-events:none;"]);
13593
+ var GemDot = /*#__PURE__*/styled.div.withConfig({
13594
+ displayName: "CharacterDetailModal__GemDot",
13595
+ componentId: "sc-1kdn1l6-27"
13596
+ })(["width:5px;height:5px;border-radius:1px;transform:rotate(45deg);background:radial-gradient( circle at 30% 30%,rgba(255,255,255,0.8),transparent 40% ),linear-gradient(45deg,", ",rgba(255,255,255,0.2));border:1px solid rgba(0,0,0,0.6);box-shadow:0 0 3px ", ";"], function (_ref8) {
13597
+ var $color = _ref8.$color;
13598
+ return $color;
13599
+ }, function (_ref9) {
13600
+ var $color = _ref9.$color;
13601
+ return $color;
13602
+ });
13603
+ var GoldRow = /*#__PURE__*/styled.div.withConfig({
13604
+ displayName: "CharacterDetailModal__GoldRow",
13605
+ componentId: "sc-1kdn1l6-28"
13606
+ })(["display:flex;align-items:center;gap:4px;margin-top:2px;"]);
13607
+ var GoldLabel = /*#__PURE__*/styled.span.withConfig({
13608
+ displayName: "CharacterDetailModal__GoldLabel",
13609
+ componentId: "sc-1kdn1l6-29"
13610
+ })(["font-family:'Press Start 2P',cursive !important;font-size:0.35rem !important;color:#6b7280 !important;text-transform:uppercase;letter-spacing:0.5px;"]);
13611
+ var GoldAmount$1 = /*#__PURE__*/styled.span.withConfig({
13612
+ displayName: "CharacterDetailModal__GoldAmount",
13613
+ componentId: "sc-1kdn1l6-30"
13614
+ })(["font-family:'Press Start 2P',cursive !important;font-size:0.38rem !important;color:#fde68a !important;"]);
13563
13615
  var EquipMeta = /*#__PURE__*/styled.div.withConfig({
13564
13616
  displayName: "CharacterDetailModal__EquipMeta",
13565
- componentId: "sc-1kdn1l6-24"
13617
+ componentId: "sc-1kdn1l6-31"
13566
13618
  })(["display:flex;flex-direction:column;gap:4px;min-width:0;flex:1;"]);
13567
13619
  var EquipDetails = /*#__PURE__*/styled.div.withConfig({
13568
13620
  displayName: "CharacterDetailModal__EquipDetails",
13569
- componentId: "sc-1kdn1l6-25"
13621
+ componentId: "sc-1kdn1l6-32"
13570
13622
  })(["display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;"]);
13571
13623
  var EquipSlot = /*#__PURE__*/styled.span.withConfig({
13572
13624
  displayName: "CharacterDetailModal__EquipSlot",
13573
- componentId: "sc-1kdn1l6-26"
13625
+ componentId: "sc-1kdn1l6-33"
13574
13626
  })(["font-family:'Press Start 2P',cursive !important;font-size:0.34rem !important;color:#6b7280 !important;text-transform:capitalize;min-width:0;"]);
13575
13627
  var EquipName = /*#__PURE__*/styled.span.withConfig({
13576
13628
  displayName: "CharacterDetailModal__EquipName",
13577
- componentId: "sc-1kdn1l6-27"
13629
+ componentId: "sc-1kdn1l6-34"
13578
13630
  })(["font-family:'Press Start 2P',cursive !important;font-size:0.38rem !important;color:#d1d5db !important;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;"]);
13579
13631
  var RarityBadge = /*#__PURE__*/styled.span.withConfig({
13580
13632
  displayName: "CharacterDetailModal__RarityBadge",
13581
- componentId: "sc-1kdn1l6-28"
13582
- })(["font-family:'Press Start 2P',cursive !important;font-size:0.32rem !important;color:", " !important;border:1px solid ", "44;border-radius:2px;padding:1px 4px;text-transform:uppercase;flex-shrink:0;"], function (_ref7) {
13583
- var $rarity = _ref7.$rarity;
13633
+ componentId: "sc-1kdn1l6-35"
13634
+ })(["font-family:'Press Start 2P',cursive !important;font-size:0.32rem !important;color:", " !important;border:1px solid ", "44;border-radius:2px;padding:1px 4px;text-transform:uppercase;flex-shrink:0;"], function (_ref10) {
13635
+ var $rarity = _ref10.$rarity;
13584
13636
  return rarityColor$1($rarity);
13585
- }, function (_ref8) {
13586
- var $rarity = _ref8.$rarity;
13637
+ }, function (_ref11) {
13638
+ var $rarity = _ref11.$rarity;
13587
13639
  return rarityColor$1($rarity);
13588
13640
  });
13589
13641
  var Footer$1 = /*#__PURE__*/styled.div.withConfig({
13590
13642
  displayName: "CharacterDetailModal__Footer",
13591
- componentId: "sc-1kdn1l6-29"
13643
+ componentId: "sc-1kdn1l6-36"
13592
13644
  })(["display:flex;flex-direction:column;gap:8px;flex-shrink:0;"]);
13593
13645
  var SellerInfo = /*#__PURE__*/styled.span.withConfig({
13594
13646
  displayName: "CharacterDetailModal__SellerInfo",
13595
- componentId: "sc-1kdn1l6-30"
13647
+ componentId: "sc-1kdn1l6-37"
13596
13648
  })(["font-family:'Press Start 2P',cursive !important;font-size:0.38rem !important;color:#6b7280 !important;text-transform:uppercase;letter-spacing:0.5px;"]);
13597
13649
  var FooterActions = /*#__PURE__*/styled.div.withConfig({
13598
13650
  displayName: "CharacterDetailModal__FooterActions",
13599
- componentId: "sc-1kdn1l6-31"
13651
+ componentId: "sc-1kdn1l6-38"
13600
13652
  })(["display:flex;align-items:center;justify-content:space-between;gap:12px;@media (max-width:640px){flex-direction:column;align-items:stretch;}"]);
13601
13653
  var PriceDisplay = /*#__PURE__*/styled.div.withConfig({
13602
13654
  displayName: "CharacterDetailModal__PriceDisplay",
13603
- componentId: "sc-1kdn1l6-32"
13655
+ componentId: "sc-1kdn1l6-39"
13604
13656
  })(["display:flex;align-items:center;gap:6px;line-height:1;"]);
13605
13657
  var DCCoinWrapper$2 = /*#__PURE__*/styled.span.withConfig({
13606
13658
  displayName: "CharacterDetailModal__DCCoinWrapper",
13607
- componentId: "sc-1kdn1l6-33"
13659
+ componentId: "sc-1kdn1l6-40"
13608
13660
  })(["display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0;"]);
13609
13661
  var PriceAmount = /*#__PURE__*/styled.span.withConfig({
13610
13662
  displayName: "CharacterDetailModal__PriceAmount",
13611
- componentId: "sc-1kdn1l6-34"
13663
+ componentId: "sc-1kdn1l6-41"
13612
13664
  })(["font-family:'Press Start 2P',cursive !important;font-size:0.7rem !important;color:#fef08a !important;"]);
13613
13665
  var BuyBtn = /*#__PURE__*/styled(CTAButton).withConfig({
13614
13666
  displayName: "CharacterDetailModal__BuyBtn",
13615
- componentId: "sc-1kdn1l6-35"
13667
+ componentId: "sc-1kdn1l6-42"
13616
13668
  })(["flex-shrink:0;padding:10px 18px;height:34px;span{font-size:0.6rem;}"]);
13617
13669
  var PendingNotice = /*#__PURE__*/styled.span.withConfig({
13618
13670
  displayName: "CharacterDetailModal__PendingNotice",
13619
- componentId: "sc-1kdn1l6-36"
13671
+ componentId: "sc-1kdn1l6-43"
13620
13672
  })(["font-family:'Press Start 2P',cursive !important;font-size:0.35rem !important;color:#ef4444 !important;text-transform:uppercase;letter-spacing:0.5px;"]);
13621
13673
 
13622
13674
  var CharacterMarketplacePanel = function CharacterMarketplacePanel(_ref) {
@@ -13818,6 +13870,7 @@ var CharacterListingModal = function CharacterListingModal(_ref) {
13818
13870
  var isOpen = _ref.isOpen,
13819
13871
  onClose = _ref.onClose,
13820
13872
  accountCharacters = _ref.accountCharacters,
13873
+ activeCharacterId = _ref.activeCharacterId,
13821
13874
  atlasJSON = _ref.atlasJSON,
13822
13875
  atlasIMG = _ref.atlasIMG,
13823
13876
  characterAtlasJSON = _ref.characterAtlasJSON,
@@ -13841,7 +13894,10 @@ var CharacterListingModal = function CharacterListingModal(_ref) {
13841
13894
  var eligibleCharacters = accountCharacters.filter(function (c) {
13842
13895
  return !c.isListedForSale && !c.tradedAt;
13843
13896
  });
13844
- var canList = !!selectedId && Number(price) > 0;
13897
+ var isActiveCharacter = function isActiveCharacter(c) {
13898
+ return !!activeCharacterId && c._id === activeCharacterId;
13899
+ };
13900
+ var canList = !!selectedId && Number(price) > 0 && selectedId !== activeCharacterId;
13845
13901
  var handleClose = function handleClose() {
13846
13902
  setSelectedId(null);
13847
13903
  setPrice('');
@@ -13883,23 +13939,27 @@ var CharacterListingModal = function CharacterListingModal(_ref) {
13883
13939
  type: "button"
13884
13940
  }, React.createElement(FaTimes, null))), React.createElement(CharacterList$1, null, eligibleCharacters.length === 0 ? React.createElement(EmptyState$6, null, "No eligible characters to list.") : eligibleCharacters.map(function (character) {
13885
13941
  var isSelected = selectedId === character._id;
13942
+ var isActive = isActiveCharacter(character);
13886
13943
  return React.createElement(CharacterRow, {
13887
13944
  key: character._id,
13888
- "$selected": isSelected,
13945
+ "$selected": isSelected && !isActive,
13946
+ "$disabled": isActive,
13889
13947
  onPointerDown: function onPointerDown() {
13890
- return setSelectedId(character._id);
13948
+ return !isActive && setSelectedId(character._id);
13891
13949
  },
13892
13950
  role: "radio",
13893
- "aria-checked": isSelected,
13894
- tabIndex: 0,
13951
+ "aria-checked": isSelected && !isActive,
13952
+ "aria-disabled": isActive,
13953
+ tabIndex: isActive ? -1 : 0,
13895
13954
  onKeyDown: function onKeyDown(e) {
13896
- if (e.key === 'Enter' || e.key === ' ') {
13955
+ if (!isActive && (e.key === 'Enter' || e.key === ' ')) {
13897
13956
  e.preventDefault();
13898
13957
  setSelectedId(character._id);
13899
13958
  }
13900
13959
  }
13901
13960
  }, React.createElement(RadioCircle$1, {
13902
- "$selected": isSelected
13961
+ "$selected": isSelected && !isActive,
13962
+ "$disabled": isActive
13903
13963
  }), React.createElement(SpriteWrapper$3, null, React.createElement(SpriteFromAtlas, {
13904
13964
  atlasIMG: characterAtlasIMG,
13905
13965
  atlasJSON: characterAtlasJSON,
@@ -13907,7 +13967,7 @@ var CharacterListingModal = function CharacterListingModal(_ref) {
13907
13967
  imgScale: 2,
13908
13968
  height: 40,
13909
13969
  width: 40
13910
- })), React.createElement(CharacterInfo$1, null, React.createElement(CharacterName$3, null, character.name || 'Unknown'), React.createElement(CharacterMeta$1, null, "Level ", getLevel(character))));
13970
+ })), React.createElement(CharacterInfo$1, null, React.createElement(CharacterName$3, null, character.name || 'Unknown'), React.createElement(CharacterMeta$1, null, "Level ", getLevel(character))), isActive && React.createElement(ActiveTag, null, "In-game"));
13911
13971
  })), React.createElement(PriceSection$1, null, React.createElement(PriceLabel, null, "Set Price (DC)"), React.createElement(PriceRow$1, null, React.createElement(Input, {
13912
13972
  onChange: function onChange(e) {
13913
13973
  return setPrice(e.target.value);
@@ -13969,76 +14029,94 @@ var CharacterList$1 = /*#__PURE__*/styled.div.withConfig({
13969
14029
  var CharacterRow = /*#__PURE__*/styled.div.withConfig({
13970
14030
  displayName: "CharacterListingModal__CharacterRow",
13971
14031
  componentId: "sc-1uxkx35-7"
13972
- })(["display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid ", ";border-radius:6px;background:", ";cursor:pointer;transition:border-color 0.15s,background 0.15s;&:hover{border-color:", ";background:", ";}&:focus-visible{outline:2px solid rgba(245,158,11,0.6);outline-offset:2px;}"], function (_ref2) {
13973
- var $selected = _ref2.$selected;
13974
- return $selected ? '#f59e0b' : 'rgba(255,255,255,0.08)';
14032
+ })(["display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid ", ";border-radius:6px;background:", ";cursor:", ";opacity:", ";transition:border-color 0.15s,background 0.15s;&:hover{border-color:", ";background:", ";}&:focus-visible{outline:2px solid rgba(245,158,11,0.6);outline-offset:2px;}"], function (_ref2) {
14033
+ var $selected = _ref2.$selected,
14034
+ $disabled = _ref2.$disabled;
14035
+ return $disabled ? 'rgba(255,255,255,0.04)' : $selected ? '#f59e0b' : 'rgba(255,255,255,0.08)';
13975
14036
  }, function (_ref3) {
13976
- var $selected = _ref3.$selected;
13977
- return $selected ? 'rgba(245,158,11,0.1)' : 'rgba(255,255,255,0.02)';
14037
+ var $selected = _ref3.$selected,
14038
+ $disabled = _ref3.$disabled;
14039
+ return $disabled ? 'rgba(0,0,0,0.15)' : $selected ? 'rgba(245,158,11,0.1)' : 'rgba(255,255,255,0.02)';
13978
14040
  }, function (_ref4) {
13979
- var $selected = _ref4.$selected;
13980
- return $selected ? '#f59e0b' : 'rgba(245,158,11,0.4)';
14041
+ var $disabled = _ref4.$disabled;
14042
+ return $disabled ? 'not-allowed' : 'pointer';
13981
14043
  }, function (_ref5) {
13982
- var $selected = _ref5.$selected;
13983
- return $selected ? 'rgba(245,158,11,0.1)' : 'rgba(245,158,11,0.05)';
14044
+ var $disabled = _ref5.$disabled;
14045
+ return $disabled ? 0.5 : 1;
14046
+ }, function (_ref6) {
14047
+ var $selected = _ref6.$selected,
14048
+ $disabled = _ref6.$disabled;
14049
+ return $disabled ? 'rgba(255,255,255,0.04)' : $selected ? '#f59e0b' : 'rgba(245,158,11,0.4)';
14050
+ }, function (_ref7) {
14051
+ var $selected = _ref7.$selected,
14052
+ $disabled = _ref7.$disabled;
14053
+ return $disabled ? 'rgba(0,0,0,0.15)' : $selected ? 'rgba(245,158,11,0.1)' : 'rgba(245,158,11,0.05)';
13984
14054
  });
13985
14055
  var RadioCircle$1 = /*#__PURE__*/styled.div.withConfig({
13986
14056
  displayName: "CharacterListingModal__RadioCircle",
13987
14057
  componentId: "sc-1uxkx35-8"
13988
- })(["width:14px;height:14px;border-radius:50%;border:2px solid ", ";flex-shrink:0;display:flex;align-items:center;justify-content:center;&::after{content:'';width:6px;height:6px;border-radius:50%;background:#f59e0b;opacity:", ";transition:opacity 0.15s;}"], function (_ref6) {
13989
- var $selected = _ref6.$selected;
13990
- return $selected ? '#f59e0b' : 'rgba(255,255,255,0.4)';
13991
- }, function (_ref7) {
13992
- var $selected = _ref7.$selected;
14058
+ })(["width:14px;height:14px;border-radius:50%;border:2px solid ", ";flex-shrink:0;display:flex;align-items:center;justify-content:center;&::after{content:'';width:6px;height:6px;border-radius:50%;background:", ";opacity:", ";transition:opacity 0.15s;}"], function (_ref8) {
14059
+ var $selected = _ref8.$selected,
14060
+ $disabled = _ref8.$disabled;
14061
+ return $disabled ? 'rgba(255,255,255,0.15)' : $selected ? '#f59e0b' : 'rgba(255,255,255,0.4)';
14062
+ }, function (_ref9) {
14063
+ var $disabled = _ref9.$disabled;
14064
+ return $disabled ? 'rgba(255,255,255,0.15)' : '#f59e0b';
14065
+ }, function (_ref10) {
14066
+ var $selected = _ref10.$selected;
13993
14067
  return $selected ? 1 : 0;
13994
14068
  });
14069
+ var ActiveTag = /*#__PURE__*/styled.span.withConfig({
14070
+ displayName: "CharacterListingModal__ActiveTag",
14071
+ componentId: "sc-1uxkx35-9"
14072
+ })(["font-family:'Press Start 2P',cursive !important;font-size:0.35rem !important;color:#666 !important;background:rgba(255,255,255,0.06);padding:3px 6px;border-radius:3px;white-space:nowrap;margin-left:auto;"]);
13995
14073
  var SpriteWrapper$3 = /*#__PURE__*/styled.div.withConfig({
13996
14074
  displayName: "CharacterListingModal__SpriteWrapper",
13997
- componentId: "sc-1uxkx35-9"
14075
+ componentId: "sc-1uxkx35-10"
13998
14076
  })(["display:flex;align-items:center;justify-content:center;image-rendering:pixelated;flex-shrink:0;width:40px;height:40px;"]);
13999
14077
  var CharacterInfo$1 = /*#__PURE__*/styled.div.withConfig({
14000
14078
  displayName: "CharacterListingModal__CharacterInfo",
14001
- componentId: "sc-1uxkx35-10"
14079
+ componentId: "sc-1uxkx35-11"
14002
14080
  })(["display:flex;flex-direction:column;gap:4px;flex:1;"]);
14003
14081
  var CharacterName$3 = /*#__PURE__*/styled.span.withConfig({
14004
14082
  displayName: "CharacterListingModal__CharacterName",
14005
- componentId: "sc-1uxkx35-11"
14083
+ componentId: "sc-1uxkx35-12"
14006
14084
  })(["font-family:'Press Start 2P',cursive !important;font-size:0.5rem !important;color:#f3f4f6 !important;"]);
14007
14085
  var CharacterMeta$1 = /*#__PURE__*/styled.span.withConfig({
14008
14086
  displayName: "CharacterListingModal__CharacterMeta",
14009
- componentId: "sc-1uxkx35-12"
14087
+ componentId: "sc-1uxkx35-13"
14010
14088
  })(["font-family:'Press Start 2P',cursive !important;font-size:0.4rem !important;color:#888 !important;text-transform:uppercase;letter-spacing:0.5px;"]);
14011
14089
  var PricePreview = /*#__PURE__*/styled.div.withConfig({
14012
14090
  displayName: "CharacterListingModal__PricePreview",
14013
- componentId: "sc-1uxkx35-13"
14091
+ componentId: "sc-1uxkx35-14"
14014
14092
  })(["display:flex;align-items:center;gap:6px;"]);
14015
14093
  var DCCoinWrapper$4 = /*#__PURE__*/styled.span.withConfig({
14016
14094
  displayName: "CharacterListingModal__DCCoinWrapper",
14017
- componentId: "sc-1uxkx35-14"
14095
+ componentId: "sc-1uxkx35-15"
14018
14096
  })(["display:flex;align-items:center;justify-content:center;flex-shrink:0;"]);
14019
14097
  var PricePreviewAmount = /*#__PURE__*/styled.span.withConfig({
14020
14098
  displayName: "CharacterListingModal__PricePreviewAmount",
14021
- componentId: "sc-1uxkx35-15"
14099
+ componentId: "sc-1uxkx35-16"
14022
14100
  })(["font-family:'Press Start 2P',cursive !important;font-size:0.55rem !important;color:#fef08a !important;"]);
14023
14101
  var PriceSection$1 = /*#__PURE__*/styled.div.withConfig({
14024
14102
  displayName: "CharacterListingModal__PriceSection",
14025
- componentId: "sc-1uxkx35-16"
14103
+ componentId: "sc-1uxkx35-17"
14026
14104
  })(["display:flex;flex-direction:column;gap:8px;border-top:1px solid rgba(255,255,255,0.06);padding-top:12px;"]);
14027
14105
  var PriceLabel = /*#__PURE__*/styled.p.withConfig({
14028
14106
  displayName: "CharacterListingModal__PriceLabel",
14029
- componentId: "sc-1uxkx35-17"
14107
+ componentId: "sc-1uxkx35-18"
14030
14108
  })(["margin:0;font-family:'Press Start 2P',cursive !important;font-size:0.55rem !important;color:#888 !important;text-transform:uppercase;letter-spacing:0.5px;"]);
14031
14109
  var PriceRow$1 = /*#__PURE__*/styled.div.withConfig({
14032
14110
  displayName: "CharacterListingModal__PriceRow",
14033
- componentId: "sc-1uxkx35-18"
14111
+ componentId: "sc-1uxkx35-19"
14034
14112
  })(["display:flex;gap:8px;align-items:center;.price-input{flex:1;height:12px;}"]);
14035
14113
  var ListBtn = /*#__PURE__*/styled(CTAButton).withConfig({
14036
14114
  displayName: "CharacterListingModal__ListBtn",
14037
- componentId: "sc-1uxkx35-19"
14115
+ componentId: "sc-1uxkx35-20"
14038
14116
  })(["flex-shrink:0;padding:10px 16px;height:32px;span{font-size:0.6rem;}svg{font-size:1.1rem;}"]);
14039
14117
  var EmptyState$6 = /*#__PURE__*/styled.div.withConfig({
14040
14118
  displayName: "CharacterListingModal__EmptyState",
14041
- componentId: "sc-1uxkx35-20"
14119
+ componentId: "sc-1uxkx35-21"
14042
14120
  })(["display:flex;align-items:center;justify-content:center;padding:32px 16px;font-family:'Press Start 2P',cursive !important;font-size:0.5rem !important;color:#666 !important;text-transform:uppercase;letter-spacing:1px;"]);
14043
14121
 
14044
14122
  var MyCharacterListingsPanel = function MyCharacterListingsPanel(_ref) {
@@ -14050,6 +14128,7 @@ var MyCharacterListingsPanel = function MyCharacterListingsPanel(_ref) {
14050
14128
  onCharacterDelist = _ref.onCharacterDelist,
14051
14129
  accountCharacters = _ref.accountCharacters,
14052
14130
  _onCharacterList = _ref.onCharacterList,
14131
+ activeCharacterId = _ref.activeCharacterId,
14053
14132
  atlasJSON = _ref.atlasJSON,
14054
14133
  atlasIMG = _ref.atlasIMG,
14055
14134
  characterAtlasJSON = _ref.characterAtlasJSON,
@@ -14090,6 +14169,7 @@ var MyCharacterListingsPanel = function MyCharacterListingsPanel(_ref) {
14090
14169
  return setIsListingModalOpen(false);
14091
14170
  },
14092
14171
  accountCharacters: accountCharacters,
14172
+ activeCharacterId: activeCharacterId,
14093
14173
  atlasJSON: atlasJSON,
14094
14174
  atlasIMG: atlasIMG,
14095
14175
  characterAtlasJSON: characterAtlasJSON,
@@ -14441,6 +14521,7 @@ var Marketplace = function Marketplace(props) {
14441
14521
  onCharacterDelist: onCharacterDelist != null ? onCharacterDelist : function () {},
14442
14522
  accountCharacters: accountCharacters != null ? accountCharacters : [],
14443
14523
  onCharacterList: onCharacterList != null ? onCharacterList : function () {},
14524
+ activeCharacterId: props.characterId,
14444
14525
  atlasJSON: props.atlasJSON,
14445
14526
  atlasIMG: props.atlasIMG,
14446
14527
  characterAtlasJSON: characterAtlasJSON != null ? characterAtlasJSON : props.atlasJSON,