feat: copy link button (#399)
This commit is contained in:
parent
7ba64694a7
commit
fc36727198
2 changed files with 15 additions and 8 deletions
|
|
@ -254,7 +254,7 @@ export type VersionType =
|
|||
*/
|
||||
"old_beta"
|
||||
|
||||
const ARGS_MAP = { 'events':'{"ingress":["event"],"process":["event"],"message":["event"]}', 'folders':'{"fromCluster":["folder_name"],"openCluster":["folder_name"]}', 'oneclient':'{"getBundlesFor":["cluster_id"],"getClustersGroupedByMajor":[],"openDevTools":[]}', 'core':'{"launchCluster":["id","uuid"],"getRunningProcesses":[],"getUsersFromAuthor":["provider","author"],"convertUsernameUUID":["username_uuid"],"getUsers":[],"getLogs":["id"],"fetchLoggedInProfile":["access_token"],"getGameVersions":[],"updateClusterProfile":["name","profile"],"getClusterById":["id"],"isClusterRunning":["cluster_id"],"readSettings":[],"getPackage":["provider","slug"],"removeUser":["uuid"],"removeCape":["access_token"],"open":["input"],"killProcess":["pid"],"setDefaultUser":["uuid"],"updateClusterById":["id","request"],"getGlobalProfile":[],"createSettingsProfile":["name"],"searchPackages":["provider","query"],"getLoadersForVersion":["mc_version"],"changeCape":["access_token","cape_uuid"],"getPackageVersions":["provider","slug","mc_version","loader","offset","limit"],"getPackageBody":["provider","body"],"getClusters":[],"downloadPackage":["provider","package_id","version_id","cluster_id","skip_compatibility"],"removeCluster":["id"],"createCluster":["options"],"getUser":["uuid"],"getWorlds":["id"],"getScreenshots":["id"],"getProfileOrDefault":["name"],"getMultiplePackages":["provider","slugs"],"fetchMinecraftProfile":["uuid"],"changeSkin":["access_token","skin_url","skin_variant"],"uploadSkinBytes":["access_token","skin_data","image_format","skin_variant"],"writeSettings":["setting"],"installModpack":["modpack","cluster_id"],"getRunningProcessesByClusterId":["cluster_id"],"getLogByName":["id","name"],"getDefaultUser":["fallback"],"openMsaLogin":[]}' }
|
||||
const ARGS_MAP = { 'core':'{"fetchLoggedInProfile":["access_token"],"getUsersFromAuthor":["provider","author"],"createCluster":["options"],"convertUsernameUUID":["username_uuid"],"downloadPackage":["provider","package_id","version_id","cluster_id","skip_compatibility"],"updateClusterById":["id","request"],"launchCluster":["id","uuid"],"createSettingsProfile":["name"],"removeCape":["access_token"],"getLoadersForVersion":["mc_version"],"uploadSkinBytes":["access_token","skin_data","image_format","skin_variant"],"getLogs":["id"],"readSettings":[],"getClusterById":["id"],"isClusterRunning":["cluster_id"],"getProfileOrDefault":["name"],"getGlobalProfile":[],"open":["input"],"installModpack":["modpack","cluster_id"],"getLogByName":["id","name"],"updateClusterProfile":["name","profile"],"setDefaultUser":["uuid"],"getPackageVersions":["provider","slug","mc_version","loader","offset","limit"],"getRunningProcessesByClusterId":["cluster_id"],"getDefaultUser":["fallback"],"getMultiplePackages":["provider","slugs"],"removeCluster":["id"],"openMsaLogin":[],"changeCape":["access_token","cape_uuid"],"getUsers":[],"searchPackages":["provider","query"],"getScreenshots":["id"],"killProcess":["pid"],"getRunningProcesses":[],"getPackageBody":["provider","body"],"fetchMinecraftProfile":["uuid"],"changeSkin":["access_token","skin_url","skin_variant"],"getClusters":[],"writeSettings":["setting"],"getGameVersions":[],"getUser":["uuid"],"getPackage":["provider","slug"],"removeUser":["uuid"],"getWorlds":["id"]}', 'events':'{"ingress":["event"],"message":["event"],"process":["event"]}', 'folders':'{"fromCluster":["folder_name"],"openCluster":["folder_name"]}', 'oneclient':'{"openDevTools":[],"getClustersGroupedByMajor":[],"getBundlesFor":["cluster_id"]}' }
|
||||
export type Router = { 'folders': { fromCluster: (folderName: string) => Promise<string>,
|
||||
openCluster: (folderName: string) => Promise<null> },
|
||||
'core': { getClusters: () => Promise<ClusterModel[]>,
|
||||
|
|
@ -301,12 +301,12 @@ changeCape: (accessToken: string, capeUuid: string) => Promise<MojangFullPlayerP
|
|||
removeCape: (accessToken: string) => Promise<MojangFullPlayerProfile>,
|
||||
convertUsernameUUID: (usernameUuid: string) => Promise<MowojangProfile>,
|
||||
open: (input: string) => Promise<null> },
|
||||
'events': { ingress: (event: IngressPayload) => Promise<void>,
|
||||
message: (event: MessagePayload) => Promise<void>,
|
||||
process: (event: ProcessPayload) => Promise<void> },
|
||||
'oneclient': { openDevTools: () => Promise<void>,
|
||||
getClustersGroupedByMajor: () => Promise<Partial<{ [key in number]: ClusterModel[] }>>,
|
||||
getBundlesFor: (clusterId: number) => Promise<ModpackArchive[]> } };
|
||||
getBundlesFor: (clusterId: number) => Promise<ModpackArchive[]> },
|
||||
'events': { ingress: (event: IngressPayload) => Promise<void>,
|
||||
message: (event: MessagePayload) => Promise<void>,
|
||||
process: (event: ProcessPayload) => Promise<void> } };
|
||||
|
||||
|
||||
export type { InferCommandOutput }
|
||||
|
|
|
|||
|
|
@ -1,10 +1,12 @@
|
|||
import type React from 'react';
|
||||
import type { HTMLProps } from 'react';
|
||||
import { bindings } from '@/main';
|
||||
import { LinkExternal01Icon } from '@untitled-theme/icons-react';
|
||||
import { writeText } from '@tauri-apps/plugin-clipboard-manager';
|
||||
import { LinkExternal01Icon, Copy03Icon } from '@untitled-theme/icons-react';
|
||||
import { useState } from 'react';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
import { Overlay } from './overlay';
|
||||
import { toast } from '@/utils/toast';
|
||||
|
||||
export interface ExternalLinkProps extends HTMLProps<HTMLAnchorElement> {
|
||||
href?: string | undefined;
|
||||
|
|
@ -59,8 +61,13 @@ export function ExternalLink({
|
|||
buttons={[
|
||||
{
|
||||
color: 'secondary',
|
||||
children: 'Cancel',
|
||||
slot: 'close',
|
||||
children: 'Copy Link',
|
||||
onClick: () => {
|
||||
if (href)
|
||||
writeText(href);
|
||||
|
||||
setIsOpen(false);
|
||||
},
|
||||
},
|
||||
{
|
||||
color: 'primary',
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue