Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,8 @@ yarn-error.log*
Freighter.app/
Freighter.pkg
Freighter.app.dSYM.zip

# Agent tools
.vscode/mcp.json
.copliot/
.github/copilot-skills/
40 changes: 40 additions & 0 deletions @shared/api/internal.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2283,3 +2283,43 @@ export const getCollectibles = async ({

return response;
};

export const changeCollectibleVisibility = async ({
collectibleKey,
collectibleVisibility,
activePublicKey,
}: {
collectibleKey: string;
collectibleVisibility: AssetVisibility;
activePublicKey: string;
}) => {
const response = await sendMessageToBackground({
type: SERVICE_TYPES.CHANGE_COLLECTIBLE_VISIBILITY,
collectibleVisibility: {
collectible: collectibleKey,
visibility: collectibleVisibility,
},
activePublicKey,
});

return {
hiddenCollectibles: response?.hiddenCollectibles || {},
error: response?.error || "",
};
};

export const getHiddenCollectibles = async ({
activePublicKey,
}: {
activePublicKey: string;
}) => {
const response = await sendMessageToBackground({
type: SERVICE_TYPES.GET_HIDDEN_COLLECTIBLES,
activePublicKey,
});

return {
hiddenCollectibles: response?.hiddenCollectibles || {},
error: response?.error || "",
};
};
23 changes: 21 additions & 2 deletions @shared/api/types/message-request.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,12 @@ import browser from "webextension-polyfill";
import { WalletType } from "@shared/constants/hardwareWallet";
import { SERVICE_TYPES } from "@shared/constants/services";
import { NetworkDetails } from "@shared/constants/stellar";
import { AssetVisibility, BalanceToMigrate, IssuerKey } from "./types";
import {
AssetVisibility,
BalanceToMigrate,
IssuerKey,
CollectibleKey,
} from "./types";
import { AssetsListItem } from "@shared/constants/soroban/asset-list";

export interface TokenToAdd {
Expand Down Expand Up @@ -374,6 +379,18 @@ export interface GetCollectiblesMessage extends BaseMessage {
network: string;
}

export interface ChangeCollectibleVisibilityMessage extends BaseMessage {
type: SERVICE_TYPES.CHANGE_COLLECTIBLE_VISIBILITY;
collectibleVisibility: {
collectible: CollectibleKey;
visibility: AssetVisibility;
};
}

export interface GetHiddenCollectiblesMessage extends BaseMessage {
type: SERVICE_TYPES.GET_HIDDEN_COLLECTIBLES;
}

export type ServiceMessageRequest =
| FundAccountMessage
| CreateAccountMessage
Expand Down Expand Up @@ -433,4 +450,6 @@ export type ServiceMessageRequest =
| GetMobileAppBannerDismissedMessage
| DismissMobileAppBannerMessage
| AddCollectibleMessage
| GetCollectiblesMessage;
| GetCollectiblesMessage
| ChangeCollectibleVisibilityMessage
| GetHiddenCollectiblesMessage;
6 changes: 6 additions & 0 deletions @shared/api/types/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ export interface UserInfo {
export type MigratableAccount = Account & { keyIdIndex: number };

export type IssuerKey = string; // {assetCode}:{issuer/contract ID} issuer pub key for classic, contract ID for tokens
export type CollectibleKey = string; // {collectionAddress}:{tokenId}
export type AssetVisibility = "visible" | "hidden";

export interface AllowList {
Expand Down Expand Up @@ -116,6 +117,11 @@ export interface Response {
visibility: AssetVisibility;
};
hiddenAssets: Record<IssuerKey, AssetVisibility>;
collectibleVisibility: {
collectible: CollectibleKey;
visibility: AssetVisibility;
};
hiddenCollectibles: Record<CollectibleKey, AssetVisibility>;
isOverwritingAccount: boolean;
isDismissed: boolean;
collectiblesList: CollectibleContract[];
Expand Down
2 changes: 2 additions & 0 deletions @shared/constants/services.ts
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,8 @@ export enum SERVICE_TYPES {
DISMISS_MOBILE_APP_BANNER = "DISMISS_MOBILE_APP_BANNER",
ADD_COLLECTIBLE = "ADD_COLLECTIBLE",
GET_COLLECTIBLES = "GET_COLLECTIBLES",
CHANGE_COLLECTIBLE_VISIBILITY = "CHANGE_COLLECTIBLE_VISIBILITY",
GET_HIDDEN_COLLECTIBLES = "GET_HIDDEN_COLLECTIBLES",
}

export enum EXTERNAL_SERVICE_TYPES {
Expand Down
Loading
Loading