diff --git a/package-lock.json b/package-lock.json
index 68579bd3b..939977086 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "xverse-web-extension",
- "version": "0.11.6",
+ "version": "0.12.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "xverse-web-extension",
- "version": "0.11.6",
+ "version": "0.12.0",
"dependencies": {
"@react-spring/web": "^9.6.1",
"@secretkeylabs/xverse-core": "^1.0.0",
diff --git a/src/app/screens/ordinalDetail/index.tsx b/src/app/screens/ordinalDetail/index.tsx
index d27cee9d3..42a9383c0 100644
--- a/src/app/screens/ordinalDetail/index.tsx
+++ b/src/app/screens/ordinalDetail/index.tsx
@@ -130,18 +130,18 @@ const RowContainer = styled.div((props) => ({
flexDirection: 'row',
}));
-const ColumnContainer = styled.div((props) => ({
+const ColumnContainer = styled.div({
display: 'flex',
alignItems: 'flex-start',
flexDirection: 'column',
width: '100%',
-}));
+});
-const Row = styled.div((props) => ({
+const Row = styled.div({
display: 'flex',
justifyContent: 'space-between',
flexDirection: 'row',
-}));
+});
const MintLimitContainer = styled.div((props) => ({
marginLeft: props.theme.spacing(30),
@@ -299,10 +299,8 @@ function OrdinalDetailScreen() {
}, [selectedOrdinal?.content_type]);
useEffect(() => {
- if (textContent) {
- if (textContent.includes('brc-20')) {
- setIsBrc20Ordinal(true);
- }
+ if (textContent?.includes('brc-20')) {
+ setIsBrc20Ordinal(true);
}
}, [textContent]);
@@ -317,6 +315,7 @@ function OrdinalDetailScreen() {
url: chrome.runtime.getURL('options.html#/nft-dashboard/ordinal-detail'),
});
};
+
const showAlert = () => {
setshowSendOridnalsAlert(true);
};
@@ -343,79 +342,6 @@ function OrdinalDetailScreen() {
window.open(`https://www.ord.io/${selectedOrdinal?.number}`);
};
- const showBrc20OrdinalDetail = (isGallery: boolean) => {
- const regex = /”/g;
- const validBrcContentValue = textContent.replace(regex, '"');
- const content = JSON.parse(validBrcContentValue);
- if (content.op === 'mint') {
- return (
-
-
- {!isGallery && (
-
- )}
-
- );
- }
- if (content.op === 'transfer') {
- return (
-
-
-
-
-
- {!isGallery && (
-
- )}
-
- );
- }
- if (content.op === 'deploy') {
- return (
-
-
-
-
-
-
-
- {!isGallery && (
-
- )}
-
- );
- }
- };
-
const ownedByView = (
{t('OWNED_BY')}
@@ -431,11 +357,119 @@ function OrdinalDetailScreen() {
);
+
+ const ordinalDescriptionData = (
+ <>
+
+ {selectedOrdinal?.content_length && (
+
+ )}
+ {selectedOrdinal?.content_type && (
+
+ )}
+ {selectedOrdinal?.value && (
+
+ )}
+ {selectedOrdinal?.timestamp && (
+
+ )}
+ {selectedOrdinal?.genesis_block_height && (
+
+ )}
+ {selectedOrdinal?.location && (
+
+ )}
+ >
+ );
+
+ const showBrc20OrdinalDetail = (isGallery: boolean) => {
+ try {
+ const regex = /”/g;
+ const validBrcContentValue = textContent.replace(regex, '"');
+ const content = JSON.parse(validBrcContentValue);
+
+ switch (content.op) {
+ case 'mint':
+ return (
+
+
+ {!isGallery && (
+
+ )}
+
+ );
+ case 'transfer':
+ return (
+
+
+
+
+
+ {!isGallery && (
+
+ )}
+
+ );
+ case 'deploy':
+ return (
+
+
+
+
+
+
+
+ {!isGallery && (
+
+ )}
+
+ );
+ default:
+ return null;
+ }
+ } catch (error) {
+ return isGallery ? ordinalDescriptionData : ownedByView;
+ }
+ };
+
const extensionView = (
-
- {isBrc20Ordinal ? t('BRC20_INSCRIPTION') : t('COLLECTIBLE')}
-
+ {isBrc20Ordinal ? t('BRC20_INSCRIPTION') : t('COLLECTIBLE')}
{`${t('INSCRIPTION')} ${selectedOrdinal?.number}`}
<>
@@ -467,36 +501,6 @@ function OrdinalDetailScreen() {
);
- const ordinalDescriptionData = (
- <>
-
- {selectedOrdinal?.content_length && (
-
- )}
- {selectedOrdinal?.content_type && (
-
- )}
- {selectedOrdinal?.value && (
-
- )}
- {selectedOrdinal?.timestamp && (
-
- )}
- {selectedOrdinal?.genesis_block_height && (
-
- )}
- {selectedOrdinal?.location && (
-
- )}
- >
- );
-
const galleryView = (
diff --git a/src/app/screens/ordinals/brc20Tile.tsx b/src/app/screens/ordinals/brc20Tile.tsx
index 97d3bcfc4..171f77964 100644
--- a/src/app/screens/ordinals/brc20Tile.tsx
+++ b/src/app/screens/ordinals/brc20Tile.tsx
@@ -53,6 +53,14 @@ const PlaceholderImageContainer = styled.div(({
maxHeight: isGalleryOpen ? (inNftDetail ? 450 : 300) : isSmallImage ? 50 : 150,
}));
+const OrdinalContentText = styled.h1((props) => ({
+ ...props.theme.body_medium_m,
+ color: props.theme.colors.white[0],
+ fontSize: props.inNftSend ? 15 : 'calc(0.8vw + 2vh)',
+ overflow: 'hidden',
+ textAlign: 'center',
+}));
+
interface TextProps {
inNftSend?: boolean;
}
@@ -138,75 +146,88 @@ export default function Brc20Tile(props: Brc20TileProps) {
);
}
+
try {
const regex = /”/g;
const validBrcContentValue = brcContent.replace(regex, '"');
const content = JSON.parse(validBrcContentValue);
- if (content?.op === 'mint') {
- return (
-
-
- {t('MINT')}
- {renderFTIcon(content?.tick)}
- {text}}
- />
- {isNftDashboard && (
-
-
- {t('ORDINAL')}
-
- )}
-
-
- );
- }
- if (content?.op === 'transfer') {
- return (
-
-
- {t('TRANSFER')}
- {renderFTIcon(content?.tick)}
- {text}}
- />
- {isNftDashboard && (
-
-
- {t('ORDINAL')}
-
- )}
-
-
- );
- }
- if (content?.op === 'deploy') {
- return (
-
-
- {t('DEPLOY')}
- {renderFTIcon(content?.tick)}
- {isNftDashboard && (
-
-
- {t('ORDINAL')}
-
- )}
-
-
- );
+
+ switch (content?.op) {
+ case 'mint':
+ return (
+
+
+ {t('MINT')}
+ {renderFTIcon(content?.tick)}
+ {text}}
+ />
+ {isNftDashboard && (
+
+
+ {t('ORDINAL')}
+
+ )}
+
+
+ );
+ case 'transfer':
+ return (
+
+
+ {t('TRANSFER')}
+ {renderFTIcon(content?.tick)}
+ {text}}
+ />
+ {isNftDashboard && (
+
+
+ {t('ORDINAL')}
+
+ )}
+
+
+ );
+ case 'deploy':
+ return (
+
+
+ {t('DEPLOY')}
+ {renderFTIcon(content?.tick)}
+ {isNftDashboard && (
+
+
+ {t('ORDINAL')}
+
+ )}
+
+
+ );
+ default:
+ return (
+
+
+
+ );
}
- } catch (error) {
+ } catch (e) {
return (
-
-
-
+
+ {brcContent}
+ {isNftDashboard && (
+
+
+ {t('ORDINAL')}
+
+ )}
+
);
}
}