@rpg-engine/long-bow 0.8.188 → 0.8.189
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.
- package/dist/components/Marketplace/MyCharacterListingsPanel.d.ts +4 -1
- package/dist/long-bow.cjs.development.js +206 -199
- package/dist/long-bow.cjs.development.js.map +1 -1
- package/dist/long-bow.cjs.production.min.js +1 -1
- package/dist/long-bow.cjs.production.min.js.map +1 -1
- package/dist/long-bow.esm.js +206 -199
- package/dist/long-bow.esm.js.map +1 -1
- package/dist/stories/Features/marketplace/CharacterMarketplace.stories.d.ts +1 -0
- package/package.json +1 -1
- package/src/components/Marketplace/Marketplace.tsx +2 -0
- package/src/components/Marketplace/MyCharacterListingsPanel.tsx +140 -112
- package/src/stories/Features/marketplace/CharacterMarketplace.stories.tsx +45 -1
package/dist/long-bow.esm.js
CHANGED
|
@@ -47622,195 +47622,6 @@ var EmptyText = /*#__PURE__*/styled.span.withConfig({
|
|
|
47622
47622
|
componentId: "sc-1aiauep-17"
|
|
47623
47623
|
})(["font-family:'Press Start 2P',cursive !important;font-size:0.48rem !important;color:#71717a !important;text-transform:uppercase;letter-spacing:1px;"]);
|
|
47624
47624
|
|
|
47625
|
-
var MyCharacterListingsPanel = function MyCharacterListingsPanel(_ref) {
|
|
47626
|
-
var myCharacterListings = _ref.myCharacterListings,
|
|
47627
|
-
totalCount = _ref.totalCount,
|
|
47628
|
-
currentPage = _ref.currentPage,
|
|
47629
|
-
itemsPerPage = _ref.itemsPerPage,
|
|
47630
|
-
onPageChange = _ref.onPageChange,
|
|
47631
|
-
onCharacterDelist = _ref.onCharacterDelist,
|
|
47632
|
-
atlasJSON = _ref.atlasJSON,
|
|
47633
|
-
atlasIMG = _ref.atlasIMG,
|
|
47634
|
-
characterAtlasJSON = _ref.characterAtlasJSON,
|
|
47635
|
-
characterAtlasIMG = _ref.characterAtlasIMG,
|
|
47636
|
-
enableHotkeys = _ref.enableHotkeys;
|
|
47637
|
-
var _useState = useState(null),
|
|
47638
|
-
delistingListingId = _useState[0],
|
|
47639
|
-
setDelistingListingId = _useState[1];
|
|
47640
|
-
var itemsContainer = useRef(null);
|
|
47641
|
-
useEffect(function () {
|
|
47642
|
-
var _itemsContainer$curre;
|
|
47643
|
-
(_itemsContainer$curre = itemsContainer.current) == null ? void 0 : _itemsContainer$curre.scrollTo(0, 0);
|
|
47644
|
-
}, [currentPage]);
|
|
47645
|
-
var handleDelistClick = function handleDelistClick(listingId) {
|
|
47646
|
-
setDelistingListingId(listingId);
|
|
47647
|
-
};
|
|
47648
|
-
var handleDelistConfirm = function handleDelistConfirm() {
|
|
47649
|
-
if (delistingListingId) {
|
|
47650
|
-
onCharacterDelist(delistingListingId);
|
|
47651
|
-
setDelistingListingId(null);
|
|
47652
|
-
enableHotkeys == null ? void 0 : enableHotkeys();
|
|
47653
|
-
}
|
|
47654
|
-
};
|
|
47655
|
-
var getFormattedDate = function getFormattedDate(date) {
|
|
47656
|
-
return new Date(date).toLocaleDateString();
|
|
47657
|
-
};
|
|
47658
|
-
return React.createElement(React.Fragment, null, delistingListingId && React.createElement(ConfirmModal, {
|
|
47659
|
-
onClose: function onClose() {
|
|
47660
|
-
setDelistingListingId(null);
|
|
47661
|
-
enableHotkeys == null ? void 0 : enableHotkeys();
|
|
47662
|
-
},
|
|
47663
|
-
onConfirm: handleDelistConfirm,
|
|
47664
|
-
message: "Are you sure you want to delist this character?"
|
|
47665
|
-
}), React.createElement(ListingsContainer$1, {
|
|
47666
|
-
id: "MarketContainer",
|
|
47667
|
-
ref: itemsContainer
|
|
47668
|
-
}, myCharacterListings.length === 0 ? React.createElement(EmptyState$6, null, React.createElement(User, {
|
|
47669
|
-
width: 32,
|
|
47670
|
-
height: 32
|
|
47671
|
-
}), React.createElement(EmptyText$1, null, "You have no listed characters."), React.createElement(EmptySubtext, null, "Use the \"List Character\" tab to list a character for sale.")) : React.createElement(ListingsGrid$1, null, myCharacterListings.map(function (listing) {
|
|
47672
|
-
return React.createElement(CharacterListingCard$1, {
|
|
47673
|
-
key: listing._id
|
|
47674
|
-
}, React.createElement(CharacterSprite$1, null, React.createElement(SpriteFromAtlas, {
|
|
47675
|
-
atlasIMG: characterAtlasIMG,
|
|
47676
|
-
atlasJSON: characterAtlasJSON,
|
|
47677
|
-
spriteKey: listing.characterSnapshot.textureKey + "/down/standing/0.png",
|
|
47678
|
-
imgScale: 3,
|
|
47679
|
-
height: 64,
|
|
47680
|
-
width: 64,
|
|
47681
|
-
centered: true
|
|
47682
|
-
})), React.createElement(CharacterInfo$1, null, React.createElement(CharacterName$3, null, listing.characterSnapshot.name || 'Unknown'), React.createElement(CharacterMeta$1, null, "Level ", listing.characterSnapshot.level), React.createElement(ListingPrice$1, null, React.createElement(DCCoinWrapper$4, null, React.createElement(SpriteFromAtlas, {
|
|
47683
|
-
atlasIMG: atlasIMG,
|
|
47684
|
-
atlasJSON: atlasJSON,
|
|
47685
|
-
spriteKey: "others/definya-coin.png",
|
|
47686
|
-
imgScale: 1,
|
|
47687
|
-
centered: true
|
|
47688
|
-
})), formatDCAmount(listing.price), " DC"), React.createElement(ListingMeta, null, "Listed ", getFormattedDate(listing.createdAt)), listing.isBeingBought && React.createElement(ListingStatus, {
|
|
47689
|
-
"$status": "pending"
|
|
47690
|
-
}, "Sale Pending")), React.createElement(ActionButton, {
|
|
47691
|
-
icon: React.createElement(Delete, {
|
|
47692
|
-
width: 16,
|
|
47693
|
-
height: 16
|
|
47694
|
-
}),
|
|
47695
|
-
label: "Delist",
|
|
47696
|
-
onClick: function onClick() {
|
|
47697
|
-
return handleDelistClick(listing._id);
|
|
47698
|
-
},
|
|
47699
|
-
iconColor: "#ef4444",
|
|
47700
|
-
disabled: listing.isBeingBought
|
|
47701
|
-
}));
|
|
47702
|
-
}))), totalCount > itemsPerPage && React.createElement(PagerFooter$2, null, React.createElement(Pagination$1, null, Array.from({
|
|
47703
|
-
length: Math.ceil(totalCount / itemsPerPage)
|
|
47704
|
-
}, function (_, i) {
|
|
47705
|
-
return i + 1;
|
|
47706
|
-
}).map(function (page) {
|
|
47707
|
-
return React.createElement(PageButton, {
|
|
47708
|
-
key: page,
|
|
47709
|
-
"$active": currentPage === page,
|
|
47710
|
-
type: "button",
|
|
47711
|
-
onClick: function onClick() {
|
|
47712
|
-
return onPageChange(page);
|
|
47713
|
-
}
|
|
47714
|
-
}, page);
|
|
47715
|
-
}))));
|
|
47716
|
-
};
|
|
47717
|
-
var ListingsContainer$1 = /*#__PURE__*/styled.div.withConfig({
|
|
47718
|
-
displayName: "MyCharacterListingsPanel__ListingsContainer",
|
|
47719
|
-
componentId: "sc-su21a6-0"
|
|
47720
|
-
})(["overflow-y:scroll;overflow-x:hidden;height:390px;width:95%;margin:1rem auto 0 auto;background:rgba(0,0,0,0.2);border:1px solid rgba(255,255,255,0.05);border-radius:4px;@media (max-width:950px){height:250px;}"]);
|
|
47721
|
-
var ListingsGrid$1 = /*#__PURE__*/styled.div.withConfig({
|
|
47722
|
-
displayName: "MyCharacterListingsPanel__ListingsGrid",
|
|
47723
|
-
componentId: "sc-su21a6-1"
|
|
47724
|
-
})(["display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;padding:12px;"]);
|
|
47725
|
-
var CharacterListingCard$1 = /*#__PURE__*/styled.div.withConfig({
|
|
47726
|
-
displayName: "MyCharacterListingsPanel__CharacterListingCard",
|
|
47727
|
-
componentId: "sc-su21a6-2"
|
|
47728
|
-
})(["display:flex;flex-direction:column;align-items:center;gap:8px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);border-radius:8px;padding:12px;"]);
|
|
47729
|
-
var CharacterSprite$1 = /*#__PURE__*/styled.div.withConfig({
|
|
47730
|
-
displayName: "MyCharacterListingsPanel__CharacterSprite",
|
|
47731
|
-
componentId: "sc-su21a6-3"
|
|
47732
|
-
})(["display:flex;align-items:center;justify-content:center;image-rendering:pixelated;"]);
|
|
47733
|
-
var CharacterInfo$1 = /*#__PURE__*/styled.div.withConfig({
|
|
47734
|
-
displayName: "MyCharacterListingsPanel__CharacterInfo",
|
|
47735
|
-
componentId: "sc-su21a6-4"
|
|
47736
|
-
})(["display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;"]);
|
|
47737
|
-
var CharacterName$3 = /*#__PURE__*/styled.span.withConfig({
|
|
47738
|
-
displayName: "MyCharacterListingsPanel__CharacterName",
|
|
47739
|
-
componentId: "sc-su21a6-5"
|
|
47740
|
-
})(["font-family:'Press Start 2P',cursive;font-size:0.55rem;color:#f3f4f6;text-transform:uppercase;letter-spacing:0.5px;"]);
|
|
47741
|
-
var CharacterMeta$1 = /*#__PURE__*/styled.span.withConfig({
|
|
47742
|
-
displayName: "MyCharacterListingsPanel__CharacterMeta",
|
|
47743
|
-
componentId: "sc-su21a6-6"
|
|
47744
|
-
})(["font-size:0.45rem;color:#888;text-transform:uppercase;letter-spacing:0.5px;"]);
|
|
47745
|
-
var ListingPrice$1 = /*#__PURE__*/styled.div.withConfig({
|
|
47746
|
-
displayName: "MyCharacterListingsPanel__ListingPrice",
|
|
47747
|
-
componentId: "sc-su21a6-7"
|
|
47748
|
-
})(["display:flex;align-items:center;gap:6px;font-family:'Press Start 2P',cursive;font-size:0.5rem;color:#fef08a;"]);
|
|
47749
|
-
var DCCoinWrapper$4 = /*#__PURE__*/styled.span.withConfig({
|
|
47750
|
-
displayName: "MyCharacterListingsPanel__DCCoinWrapper",
|
|
47751
|
-
componentId: "sc-su21a6-8"
|
|
47752
|
-
})(["display:flex;align-items:center;justify-content:center;flex-shrink:0;"]);
|
|
47753
|
-
var ListingMeta = /*#__PURE__*/styled.span.withConfig({
|
|
47754
|
-
displayName: "MyCharacterListingsPanel__ListingMeta",
|
|
47755
|
-
componentId: "sc-su21a6-9"
|
|
47756
|
-
})(["font-size:0.38rem;color:#52525b;text-transform:uppercase;letter-spacing:0.5px;"]);
|
|
47757
|
-
var ListingStatus = /*#__PURE__*/styled.span.withConfig({
|
|
47758
|
-
displayName: "MyCharacterListingsPanel__ListingStatus",
|
|
47759
|
-
componentId: "sc-su21a6-10"
|
|
47760
|
-
})(["font-size:0.38rem;padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:0.5px;", ""], function (_ref2) {
|
|
47761
|
-
var $status = _ref2.$status;
|
|
47762
|
-
return $status === 'pending' ? "\n background: rgba(239, 68, 68, 0.2);\n border: 1px solid rgba(239, 68, 68, 0.4);\n color: #ef4444;\n " : "\n background: rgba(34, 197, 94, 0.2);\n border: 1px solid rgba(34, 197, 94, 0.4);\n color: #22c55e;\n ";
|
|
47763
|
-
});
|
|
47764
|
-
var ActionButton = /*#__PURE__*/styled(CTAButton).withConfig({
|
|
47765
|
-
displayName: "MyCharacterListingsPanel__ActionButton",
|
|
47766
|
-
componentId: "sc-su21a6-11"
|
|
47767
|
-
})(["padding:6px 12px;height:28px;opacity:", ";pointer-events:", ";span{font-size:0.5rem;}svg{font-size:1rem;}"], function (_ref3) {
|
|
47768
|
-
var disabled = _ref3.disabled;
|
|
47769
|
-
return disabled ? 0.5 : 1;
|
|
47770
|
-
}, function (_ref4) {
|
|
47771
|
-
var disabled = _ref4.disabled;
|
|
47772
|
-
return disabled ? 'none' : 'auto';
|
|
47773
|
-
});
|
|
47774
|
-
var PagerFooter$2 = /*#__PURE__*/styled.div.withConfig({
|
|
47775
|
-
displayName: "MyCharacterListingsPanel__PagerFooter",
|
|
47776
|
-
componentId: "sc-su21a6-12"
|
|
47777
|
-
})(["display:flex;justify-content:center;align-items:center;padding:8px 0 4px;min-height:36px;width:95%;margin:0 auto;"]);
|
|
47778
|
-
var Pagination$1 = /*#__PURE__*/styled.div.withConfig({
|
|
47779
|
-
displayName: "MyCharacterListingsPanel__Pagination",
|
|
47780
|
-
componentId: "sc-su21a6-13"
|
|
47781
|
-
})(["display:flex;gap:6px;"]);
|
|
47782
|
-
var PageButton = /*#__PURE__*/styled.button.withConfig({
|
|
47783
|
-
displayName: "MyCharacterListingsPanel__PageButton",
|
|
47784
|
-
componentId: "sc-su21a6-14"
|
|
47785
|
-
})(["padding:6px 10px;font-family:'Press Start 2P',cursive;font-size:0.5rem;border-radius:4px;border:1px solid ", ";background:", ";color:", ";cursor:pointer;transition:border-color 0.15s,background 0.15s,color 0.15s;&:hover{border-color:", ";color:", ";}"], function (_ref5) {
|
|
47786
|
-
var $active = _ref5.$active;
|
|
47787
|
-
return $active ? '#f59e0b' : 'rgba(255,255,255,0.12)';
|
|
47788
|
-
}, function (_ref6) {
|
|
47789
|
-
var $active = _ref6.$active;
|
|
47790
|
-
return $active ? 'rgba(245,158,11,0.15)' : 'rgba(0,0,0,0.3)';
|
|
47791
|
-
}, function (_ref7) {
|
|
47792
|
-
var $active = _ref7.$active;
|
|
47793
|
-
return $active ? '#f59e0b' : '#777';
|
|
47794
|
-
}, function (_ref8) {
|
|
47795
|
-
var $active = _ref8.$active;
|
|
47796
|
-
return $active ? '#f59e0b' : 'rgba(255,255,255,0.3)';
|
|
47797
|
-
}, function (_ref9) {
|
|
47798
|
-
var $active = _ref9.$active;
|
|
47799
|
-
return $active ? '#f59e0b' : '#bbb';
|
|
47800
|
-
});
|
|
47801
|
-
var EmptyState$6 = /*#__PURE__*/styled.div.withConfig({
|
|
47802
|
-
displayName: "MyCharacterListingsPanel__EmptyState",
|
|
47803
|
-
componentId: "sc-su21a6-15"
|
|
47804
|
-
})(["display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100%;min-height:200px;"]);
|
|
47805
|
-
var EmptyText$1 = /*#__PURE__*/styled.span.withConfig({
|
|
47806
|
-
displayName: "MyCharacterListingsPanel__EmptyText",
|
|
47807
|
-
componentId: "sc-su21a6-16"
|
|
47808
|
-
})(["font-size:0.55rem;color:#71717a;text-transform:uppercase;letter-spacing:1px;"]);
|
|
47809
|
-
var EmptySubtext = /*#__PURE__*/styled.span.withConfig({
|
|
47810
|
-
displayName: "MyCharacterListingsPanel__EmptySubtext",
|
|
47811
|
-
componentId: "sc-su21a6-17"
|
|
47812
|
-
})(["font-size:0.45rem;color:#52525b;text-transform:none;letter-spacing:0.5px;text-align:center;max-width:280px;"]);
|
|
47813
|
-
|
|
47814
47625
|
var CharacterListingModal = function CharacterListingModal(_ref) {
|
|
47815
47626
|
var isOpen = _ref.isOpen,
|
|
47816
47627
|
onClose = _ref.onClose,
|
|
@@ -47878,7 +47689,7 @@ var CharacterListingModal = function CharacterListingModal(_ref) {
|
|
|
47878
47689
|
onPointerDown: handleClose,
|
|
47879
47690
|
"aria-label": "Close",
|
|
47880
47691
|
type: "button"
|
|
47881
|
-
}, React.createElement(FaTimes, null))), React.createElement(CharacterList$1, null, eligibleCharacters.length === 0 ? React.createElement(EmptyState$
|
|
47692
|
+
}, 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) {
|
|
47882
47693
|
var isSelected = selectedId === character._id;
|
|
47883
47694
|
return React.createElement(CharacterRow, {
|
|
47884
47695
|
key: character._id,
|
|
@@ -47904,7 +47715,7 @@ var CharacterListingModal = function CharacterListingModal(_ref) {
|
|
|
47904
47715
|
imgScale: 2,
|
|
47905
47716
|
height: 40,
|
|
47906
47717
|
width: 40
|
|
47907
|
-
})), React.createElement(CharacterInfo$
|
|
47718
|
+
})), React.createElement(CharacterInfo$1, null, React.createElement(CharacterName$3, null, character.name || 'Unknown'), React.createElement(CharacterMeta$1, null, "Level ", getLevel(character))));
|
|
47908
47719
|
})), React.createElement(PriceSection$1, null, React.createElement(PriceLabel, null, "Set Price (DC)"), React.createElement(PriceRow$1, null, React.createElement(Input, {
|
|
47909
47720
|
onChange: function onChange(e) {
|
|
47910
47721
|
return setPrice(e.target.value);
|
|
@@ -47924,7 +47735,7 @@ var CharacterListingModal = function CharacterListingModal(_ref) {
|
|
|
47924
47735
|
label: "List",
|
|
47925
47736
|
disabled: !canList,
|
|
47926
47737
|
onClick: handleListClick
|
|
47927
|
-
})), price && Number(price) > 0 && React.createElement(PricePreview, null, React.createElement(DCCoinWrapper$
|
|
47738
|
+
})), price && Number(price) > 0 && React.createElement(PricePreview, null, React.createElement(DCCoinWrapper$4, null, React.createElement(SpriteFromAtlas, {
|
|
47928
47739
|
atlasIMG: atlasIMG,
|
|
47929
47740
|
atlasJSON: atlasJSON,
|
|
47930
47741
|
spriteKey: "others/definya-coin.png",
|
|
@@ -47991,15 +47802,15 @@ var SpriteWrapper$3 = /*#__PURE__*/styled.div.withConfig({
|
|
|
47991
47802
|
displayName: "CharacterListingModal__SpriteWrapper",
|
|
47992
47803
|
componentId: "sc-1uxkx35-9"
|
|
47993
47804
|
})(["display:flex;align-items:center;justify-content:center;image-rendering:pixelated;flex-shrink:0;width:40px;height:40px;"]);
|
|
47994
|
-
var CharacterInfo$
|
|
47805
|
+
var CharacterInfo$1 = /*#__PURE__*/styled.div.withConfig({
|
|
47995
47806
|
displayName: "CharacterListingModal__CharacterInfo",
|
|
47996
47807
|
componentId: "sc-1uxkx35-10"
|
|
47997
47808
|
})(["display:flex;flex-direction:column;gap:4px;flex:1;"]);
|
|
47998
|
-
var CharacterName$
|
|
47809
|
+
var CharacterName$3 = /*#__PURE__*/styled.span.withConfig({
|
|
47999
47810
|
displayName: "CharacterListingModal__CharacterName",
|
|
48000
47811
|
componentId: "sc-1uxkx35-11"
|
|
48001
47812
|
})(["font-family:'Press Start 2P',cursive !important;font-size:0.5rem !important;color:#f3f4f6 !important;"]);
|
|
48002
|
-
var CharacterMeta$
|
|
47813
|
+
var CharacterMeta$1 = /*#__PURE__*/styled.span.withConfig({
|
|
48003
47814
|
displayName: "CharacterListingModal__CharacterMeta",
|
|
48004
47815
|
componentId: "sc-1uxkx35-12"
|
|
48005
47816
|
})(["font-family:'Press Start 2P',cursive !important;font-size:0.4rem !important;color:#888 !important;text-transform:uppercase;letter-spacing:0.5px;"]);
|
|
@@ -48007,7 +47818,7 @@ var PricePreview = /*#__PURE__*/styled.div.withConfig({
|
|
|
48007
47818
|
displayName: "CharacterListingModal__PricePreview",
|
|
48008
47819
|
componentId: "sc-1uxkx35-13"
|
|
48009
47820
|
})(["display:flex;align-items:center;gap:6px;"]);
|
|
48010
|
-
var DCCoinWrapper$
|
|
47821
|
+
var DCCoinWrapper$4 = /*#__PURE__*/styled.span.withConfig({
|
|
48011
47822
|
displayName: "CharacterListingModal__DCCoinWrapper",
|
|
48012
47823
|
componentId: "sc-1uxkx35-14"
|
|
48013
47824
|
})(["display:flex;align-items:center;justify-content:center;flex-shrink:0;"]);
|
|
@@ -48031,11 +47842,205 @@ var ListBtn = /*#__PURE__*/styled(CTAButton).withConfig({
|
|
|
48031
47842
|
displayName: "CharacterListingModal__ListBtn",
|
|
48032
47843
|
componentId: "sc-1uxkx35-19"
|
|
48033
47844
|
})(["flex-shrink:0;padding:10px 16px;height:32px;span{font-size:0.6rem;}svg{font-size:1.1rem;}"]);
|
|
48034
|
-
var EmptyState$
|
|
47845
|
+
var EmptyState$6 = /*#__PURE__*/styled.div.withConfig({
|
|
48035
47846
|
displayName: "CharacterListingModal__EmptyState",
|
|
48036
47847
|
componentId: "sc-1uxkx35-20"
|
|
48037
47848
|
})(["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;"]);
|
|
48038
47849
|
|
|
47850
|
+
var MyCharacterListingsPanel = function MyCharacterListingsPanel(_ref) {
|
|
47851
|
+
var myCharacterListings = _ref.myCharacterListings,
|
|
47852
|
+
totalCount = _ref.totalCount,
|
|
47853
|
+
currentPage = _ref.currentPage,
|
|
47854
|
+
itemsPerPage = _ref.itemsPerPage,
|
|
47855
|
+
onPageChange = _ref.onPageChange,
|
|
47856
|
+
onCharacterDelist = _ref.onCharacterDelist,
|
|
47857
|
+
accountCharacters = _ref.accountCharacters,
|
|
47858
|
+
_onCharacterList = _ref.onCharacterList,
|
|
47859
|
+
atlasJSON = _ref.atlasJSON,
|
|
47860
|
+
atlasIMG = _ref.atlasIMG,
|
|
47861
|
+
characterAtlasJSON = _ref.characterAtlasJSON,
|
|
47862
|
+
characterAtlasIMG = _ref.characterAtlasIMG,
|
|
47863
|
+
enableHotkeys = _ref.enableHotkeys,
|
|
47864
|
+
disableHotkeys = _ref.disableHotkeys;
|
|
47865
|
+
var _useState = useState(null),
|
|
47866
|
+
delistingId = _useState[0],
|
|
47867
|
+
setDelistingId = _useState[1];
|
|
47868
|
+
var _useState2 = useState(false),
|
|
47869
|
+
isListingModalOpen = _useState2[0],
|
|
47870
|
+
setIsListingModalOpen = _useState2[1];
|
|
47871
|
+
var itemsContainer = useRef(null);
|
|
47872
|
+
useEffect(function () {
|
|
47873
|
+
var _itemsContainer$curre;
|
|
47874
|
+
(_itemsContainer$curre = itemsContainer.current) == null ? void 0 : _itemsContainer$curre.scrollTo(0, 0);
|
|
47875
|
+
}, [currentPage]);
|
|
47876
|
+
var handleDelistConfirm = function handleDelistConfirm() {
|
|
47877
|
+
if (delistingId) {
|
|
47878
|
+
onCharacterDelist(delistingId);
|
|
47879
|
+
setDelistingId(null);
|
|
47880
|
+
enableHotkeys == null ? void 0 : enableHotkeys();
|
|
47881
|
+
}
|
|
47882
|
+
};
|
|
47883
|
+
var eligibleCount = accountCharacters.filter(function (c) {
|
|
47884
|
+
return !c.isListedForSale && !c.tradedAt;
|
|
47885
|
+
}).length;
|
|
47886
|
+
return React.createElement(React.Fragment, null, delistingId && React.createElement(ConfirmModal, {
|
|
47887
|
+
onClose: function onClose() {
|
|
47888
|
+
setDelistingId(null);
|
|
47889
|
+
enableHotkeys == null ? void 0 : enableHotkeys();
|
|
47890
|
+
},
|
|
47891
|
+
onConfirm: handleDelistConfirm,
|
|
47892
|
+
message: "Are you sure you want to delist this character?"
|
|
47893
|
+
}), React.createElement(CharacterListingModal, {
|
|
47894
|
+
isOpen: isListingModalOpen,
|
|
47895
|
+
onClose: function onClose() {
|
|
47896
|
+
return setIsListingModalOpen(false);
|
|
47897
|
+
},
|
|
47898
|
+
accountCharacters: accountCharacters,
|
|
47899
|
+
atlasJSON: atlasJSON,
|
|
47900
|
+
atlasIMG: atlasIMG,
|
|
47901
|
+
characterAtlasJSON: characterAtlasJSON,
|
|
47902
|
+
characterAtlasIMG: characterAtlasIMG,
|
|
47903
|
+
onCharacterList: function onCharacterList(id, price) {
|
|
47904
|
+
_onCharacterList(id, price);
|
|
47905
|
+
setIsListingModalOpen(false);
|
|
47906
|
+
},
|
|
47907
|
+
enableHotkeys: enableHotkeys,
|
|
47908
|
+
disableHotkeys: disableHotkeys
|
|
47909
|
+
}), React.createElement(Toolbar, null, React.createElement(ListCharacterBtn, {
|
|
47910
|
+
icon: React.createElement(ShoppingBag, {
|
|
47911
|
+
width: 16,
|
|
47912
|
+
height: 16
|
|
47913
|
+
}),
|
|
47914
|
+
label: "List a Character" + (eligibleCount > 0 ? " (" + eligibleCount + " eligible)" : ''),
|
|
47915
|
+
onClick: function onClick() {
|
|
47916
|
+
return setIsListingModalOpen(true);
|
|
47917
|
+
},
|
|
47918
|
+
disabled: eligibleCount === 0
|
|
47919
|
+
})), React.createElement(ListingsContainer$1, {
|
|
47920
|
+
ref: itemsContainer
|
|
47921
|
+
}, myCharacterListings.length === 0 ? React.createElement(EmptyState$7, null, React.createElement(User, {
|
|
47922
|
+
width: 32,
|
|
47923
|
+
height: 32
|
|
47924
|
+
}), React.createElement(EmptyText$1, null, "No listed characters."), React.createElement(EmptySubtext, null, "Use the \"List Character\" tab to put a character up for sale.")) : React.createElement(ListingsGrid$1, null, myCharacterListings.map(function (listing) {
|
|
47925
|
+
return React.createElement(CharacterListingCard$1, {
|
|
47926
|
+
key: listing._id,
|
|
47927
|
+
"$isBeingBought": listing.isBeingBought
|
|
47928
|
+
}, React.createElement(CharacterSprite$1, null, React.createElement(SpriteFromAtlas, {
|
|
47929
|
+
atlasIMG: characterAtlasIMG,
|
|
47930
|
+
atlasJSON: characterAtlasJSON,
|
|
47931
|
+
spriteKey: listing.characterSnapshot.textureKey + "/down/standing/0.png",
|
|
47932
|
+
imgScale: 3,
|
|
47933
|
+
height: 64,
|
|
47934
|
+
width: 64,
|
|
47935
|
+
centered: true
|
|
47936
|
+
})), React.createElement(CharacterInfo$2, null, React.createElement(CharacterName$4, null, listing.characterSnapshot.name || 'Unknown'), React.createElement(CharacterMeta$2, null, "Lv.", listing.characterSnapshot.level, " \xB7 ", listing.characterSnapshot["class"]), React.createElement(ListingPrice$1, null, React.createElement(DCCoinWrapper$5, null, React.createElement(SpriteFromAtlas, {
|
|
47937
|
+
atlasIMG: atlasIMG,
|
|
47938
|
+
atlasJSON: atlasJSON,
|
|
47939
|
+
spriteKey: "others/definya-coin.png",
|
|
47940
|
+
imgScale: 1,
|
|
47941
|
+
centered: true
|
|
47942
|
+
})), formatDCAmount(listing.price), " DC"), React.createElement(ListingDate, null, "Listed ", new Date(listing.createdAt).toLocaleDateString())), React.createElement(DelistBtn, {
|
|
47943
|
+
icon: React.createElement(Delete, {
|
|
47944
|
+
width: 14,
|
|
47945
|
+
height: 14
|
|
47946
|
+
}),
|
|
47947
|
+
label: "Delist",
|
|
47948
|
+
onClick: function onClick() {
|
|
47949
|
+
return setDelistingId(listing._id);
|
|
47950
|
+
},
|
|
47951
|
+
disabled: listing.isBeingBought
|
|
47952
|
+
}), listing.isBeingBought && React.createElement(PendingBadge, null, "Pending"));
|
|
47953
|
+
}))), totalCount > itemsPerPage && React.createElement(PagerFooter$2, null, React.createElement(Pagination, {
|
|
47954
|
+
currentPage: currentPage,
|
|
47955
|
+
totalPages: Math.ceil(totalCount / itemsPerPage),
|
|
47956
|
+
onPageChange: onPageChange
|
|
47957
|
+
})));
|
|
47958
|
+
};
|
|
47959
|
+
var ListingsContainer$1 = /*#__PURE__*/styled.div.withConfig({
|
|
47960
|
+
displayName: "MyCharacterListingsPanel__ListingsContainer",
|
|
47961
|
+
componentId: "sc-su21a6-0"
|
|
47962
|
+
})(["overflow-y:scroll;overflow-x:hidden;height:390px;width:95%;margin:1rem auto 0 auto;background:rgba(0,0,0,0.2);border:1px solid rgba(255,255,255,0.05);border-radius:4px;@media (max-width:950px){height:250px;}"]);
|
|
47963
|
+
var ListingsGrid$1 = /*#__PURE__*/styled.div.withConfig({
|
|
47964
|
+
displayName: "MyCharacterListingsPanel__ListingsGrid",
|
|
47965
|
+
componentId: "sc-su21a6-1"
|
|
47966
|
+
})(["display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;padding:12px;"]);
|
|
47967
|
+
var CharacterListingCard$1 = /*#__PURE__*/styled.div.withConfig({
|
|
47968
|
+
displayName: "MyCharacterListingsPanel__CharacterListingCard",
|
|
47969
|
+
componentId: "sc-su21a6-2"
|
|
47970
|
+
})(["display:flex;flex-direction:column;align-items:center;gap:8px;background:rgba(255,255,255,0.03);border:1px solid ", ";border-radius:8px;padding:12px;position:relative;opacity:", ";transition:border-color 0.15s,background 0.15s;&:hover{border-color:", ";background:", ";}"], function (_ref2) {
|
|
47971
|
+
var $isBeingBought = _ref2.$isBeingBought;
|
|
47972
|
+
return $isBeingBought ? 'rgba(239,68,68,0.3)' : 'rgba(255,255,255,0.08)';
|
|
47973
|
+
}, function (_ref3) {
|
|
47974
|
+
var $isBeingBought = _ref3.$isBeingBought;
|
|
47975
|
+
return $isBeingBought ? 0.7 : 1;
|
|
47976
|
+
}, function (_ref4) {
|
|
47977
|
+
var $isBeingBought = _ref4.$isBeingBought;
|
|
47978
|
+
return $isBeingBought ? 'rgba(239,68,68,0.5)' : 'rgba(245,158,11,0.3)';
|
|
47979
|
+
}, function (_ref5) {
|
|
47980
|
+
var $isBeingBought = _ref5.$isBeingBought;
|
|
47981
|
+
return $isBeingBought ? 'rgba(239,68,68,0.04)' : 'rgba(245,158,11,0.04)';
|
|
47982
|
+
});
|
|
47983
|
+
var CharacterSprite$1 = /*#__PURE__*/styled.div.withConfig({
|
|
47984
|
+
displayName: "MyCharacterListingsPanel__CharacterSprite",
|
|
47985
|
+
componentId: "sc-su21a6-3"
|
|
47986
|
+
})(["display:flex;align-items:center;justify-content:center;image-rendering:pixelated;width:64px;height:64px;flex-shrink:0;"]);
|
|
47987
|
+
var CharacterInfo$2 = /*#__PURE__*/styled.div.withConfig({
|
|
47988
|
+
displayName: "MyCharacterListingsPanel__CharacterInfo",
|
|
47989
|
+
componentId: "sc-su21a6-4"
|
|
47990
|
+
})(["display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;width:100%;"]);
|
|
47991
|
+
var CharacterName$4 = /*#__PURE__*/styled.span.withConfig({
|
|
47992
|
+
displayName: "MyCharacterListingsPanel__CharacterName",
|
|
47993
|
+
componentId: "sc-su21a6-5"
|
|
47994
|
+
})(["font-family:'Press Start 2P',cursive !important;font-size:0.55rem !important;color:#f3f4f6 !important;text-transform:uppercase;letter-spacing:0.5px;"]);
|
|
47995
|
+
var CharacterMeta$2 = /*#__PURE__*/styled.span.withConfig({
|
|
47996
|
+
displayName: "MyCharacterListingsPanel__CharacterMeta",
|
|
47997
|
+
componentId: "sc-su21a6-6"
|
|
47998
|
+
})(["font-family:'Press Start 2P',cursive !important;font-size:0.45rem !important;color:#888 !important;text-transform:uppercase;letter-spacing:0.5px;"]);
|
|
47999
|
+
var ListingPrice$1 = /*#__PURE__*/styled.div.withConfig({
|
|
48000
|
+
displayName: "MyCharacterListingsPanel__ListingPrice",
|
|
48001
|
+
componentId: "sc-su21a6-7"
|
|
48002
|
+
})(["display:flex;align-items:center;justify-content:center;gap:4px;font-family:'Press Start 2P',cursive !important;font-size:0.5rem !important;color:#fef08a !important;line-height:1;"]);
|
|
48003
|
+
var DCCoinWrapper$5 = /*#__PURE__*/styled.span.withConfig({
|
|
48004
|
+
displayName: "MyCharacterListingsPanel__DCCoinWrapper",
|
|
48005
|
+
componentId: "sc-su21a6-8"
|
|
48006
|
+
})(["display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0;"]);
|
|
48007
|
+
var ListingDate = /*#__PURE__*/styled.span.withConfig({
|
|
48008
|
+
displayName: "MyCharacterListingsPanel__ListingDate",
|
|
48009
|
+
componentId: "sc-su21a6-9"
|
|
48010
|
+
})(["font-family:'Press Start 2P',cursive !important;font-size:0.35rem !important;color:#52525b !important;text-transform:uppercase;letter-spacing:0.5px;"]);
|
|
48011
|
+
var DelistBtn = /*#__PURE__*/styled(CTAButton).withConfig({
|
|
48012
|
+
displayName: "MyCharacterListingsPanel__DelistBtn",
|
|
48013
|
+
componentId: "sc-su21a6-10"
|
|
48014
|
+
})(["width:100%;padding:6px 10px;height:28px;margin-top:2px;span{font-size:0.48rem;}svg{font-size:0.9rem;}"]);
|
|
48015
|
+
var PendingBadge = /*#__PURE__*/styled.span.withConfig({
|
|
48016
|
+
displayName: "MyCharacterListingsPanel__PendingBadge",
|
|
48017
|
+
componentId: "sc-su21a6-11"
|
|
48018
|
+
})(["position:absolute;top:6px;right:6px;background:rgba(239,68,68,0.2);border:1px solid rgba(239,68,68,0.4);border-radius:4px;padding:2px 6px;font-family:'Press Start 2P',cursive !important;font-size:0.35rem !important;color:#ef4444 !important;text-transform:uppercase;letter-spacing:0.5px;"]);
|
|
48019
|
+
var Toolbar = /*#__PURE__*/styled.div.withConfig({
|
|
48020
|
+
displayName: "MyCharacterListingsPanel__Toolbar",
|
|
48021
|
+
componentId: "sc-su21a6-12"
|
|
48022
|
+
})(["width:95%;margin:10px auto 0 auto;display:flex;justify-content:flex-end;"]);
|
|
48023
|
+
var ListCharacterBtn = /*#__PURE__*/styled(CTAButton).withConfig({
|
|
48024
|
+
displayName: "MyCharacterListingsPanel__ListCharacterBtn",
|
|
48025
|
+
componentId: "sc-su21a6-13"
|
|
48026
|
+
})(["padding:8px 16px;height:32px;span{font-size:0.5rem;}svg{font-size:1rem;}"]);
|
|
48027
|
+
var PagerFooter$2 = /*#__PURE__*/styled.div.withConfig({
|
|
48028
|
+
displayName: "MyCharacterListingsPanel__PagerFooter",
|
|
48029
|
+
componentId: "sc-su21a6-14"
|
|
48030
|
+
})(["display:flex;justify-content:center;align-items:center;padding:8px 0 4px;min-height:36px;width:95%;margin:0 auto;"]);
|
|
48031
|
+
var EmptyState$7 = /*#__PURE__*/styled.div.withConfig({
|
|
48032
|
+
displayName: "MyCharacterListingsPanel__EmptyState",
|
|
48033
|
+
componentId: "sc-su21a6-15"
|
|
48034
|
+
})(["display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100%;min-height:200px;"]);
|
|
48035
|
+
var EmptyText$1 = /*#__PURE__*/styled.span.withConfig({
|
|
48036
|
+
displayName: "MyCharacterListingsPanel__EmptyText",
|
|
48037
|
+
componentId: "sc-su21a6-16"
|
|
48038
|
+
})(["font-family:'Press Start 2P',cursive !important;font-size:0.48rem !important;color:#71717a !important;text-transform:uppercase;letter-spacing:1px;"]);
|
|
48039
|
+
var EmptySubtext = /*#__PURE__*/styled.span.withConfig({
|
|
48040
|
+
displayName: "MyCharacterListingsPanel__EmptySubtext",
|
|
48041
|
+
componentId: "sc-su21a6-17"
|
|
48042
|
+
})(["font-family:'Press Start 2P',cursive !important;font-size:0.38rem !important;color:#52525b !important;text-align:center;max-width:260px;line-height:1.6;"]);
|
|
48043
|
+
|
|
48039
48044
|
var CharacterListingForm = function CharacterListingForm(_ref) {
|
|
48040
48045
|
var accountCharacters = _ref.accountCharacters,
|
|
48041
48046
|
onCharacterList = _ref.onCharacterList,
|
|
@@ -48303,6 +48308,8 @@ var Marketplace = function Marketplace(props) {
|
|
|
48303
48308
|
itemsPerPage: 10,
|
|
48304
48309
|
onPageChange: onMyCharacterListingsPageChange != null ? onMyCharacterListingsPageChange : function () {},
|
|
48305
48310
|
onCharacterDelist: onCharacterDelist != null ? onCharacterDelist : function () {},
|
|
48311
|
+
accountCharacters: accountCharacters != null ? accountCharacters : [],
|
|
48312
|
+
onCharacterList: onCharacterList != null ? onCharacterList : function () {},
|
|
48306
48313
|
atlasJSON: props.atlasJSON,
|
|
48307
48314
|
atlasIMG: props.atlasIMG,
|
|
48308
48315
|
characterAtlasJSON: characterAtlasJSON != null ? characterAtlasJSON : props.atlasJSON,
|
|
@@ -48432,7 +48439,7 @@ var CharacterMarketplaceRows = function CharacterMarketplaceRows(_ref) {
|
|
|
48432
48439
|
atlasJSON: atlasJSON,
|
|
48433
48440
|
spriteKey: "others/definya-coin.png",
|
|
48434
48441
|
imgScale: 1
|
|
48435
|
-
})), React.createElement(DCPrice$2, null, formatDCAmount(price))), isBeingBought && React.createElement(PendingBadge, null, "Sale Pending"))), React.createElement(ActionSection$2, null, React.createElement(CTAButton, {
|
|
48442
|
+
})), React.createElement(DCPrice$2, null, formatDCAmount(price))), isBeingBought && React.createElement(PendingBadge$1, null, "Sale Pending"))), React.createElement(ActionSection$2, null, React.createElement(CTAButton, {
|
|
48436
48443
|
icon: onCharacterBuy ? React.createElement(Coins, {
|
|
48437
48444
|
width: 18,
|
|
48438
48445
|
height: 18
|
|
@@ -48491,7 +48498,7 @@ var ActionSection$2 = /*#__PURE__*/styled.div.withConfig({
|
|
|
48491
48498
|
displayName: "CharacterMarketplaceRows__ActionSection",
|
|
48492
48499
|
componentId: "sc-1pxkdig-10"
|
|
48493
48500
|
})(["flex-shrink:0;margin-left:0.75rem;"]);
|
|
48494
|
-
var PendingBadge = /*#__PURE__*/styled.span.withConfig({
|
|
48501
|
+
var PendingBadge$1 = /*#__PURE__*/styled.span.withConfig({
|
|
48495
48502
|
displayName: "CharacterMarketplaceRows__PendingBadge",
|
|
48496
48503
|
componentId: "sc-1pxkdig-11"
|
|
48497
48504
|
})(["font-size:0.38rem;padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:0.5px;background:rgba(239,68,68,0.2);border:1px solid rgba(239,68,68,0.4);color:#ef4444;margin-top:4px;"]);
|