PHP WebShell

Текущая директория: /opt/BitGoJS/node_modules/@substrate/light-client-extension-helpers/dist

Просмотр файла: chunk-FJY652KW.mjs.map

{"version":3,"sources":["../src/shared/constants.ts","../src/shared/createBackgroundClientConnectProvider.ts","../src/shared/getRandomChainId.ts","../src/shared/message-utils.ts"],"sourcesContent":["const extensionPrefix = \"@substrate/light-client-extension-helper\"\n\nconst contextPrefix = `${extensionPrefix}-context`\nexport const CONTEXT = {\n  CONTENT_SCRIPT: `${contextPrefix}-content-script`,\n  BACKGROUND: `${contextPrefix}-background`,\n  EXTENSION_PAGE: `${contextPrefix}-extension-page`,\n  WEB_PAGE: `${contextPrefix}-web-page`,\n} as const\n\nconst portPrefix = `${extensionPrefix}-port`\nexport const PORT = {\n  CONTENT_SCRIPT: `${portPrefix}-content-script`,\n  EXTENSION_PAGE: `${portPrefix}-extension-page`,\n  WEB_PAGE: `${portPrefix}-web-page`,\n} as const\n\nexport const STORAGE_PREFIX = extensionPrefix\n\nconst alarmPrefix = `${extensionPrefix}-alarm`\nexport const ALARM = {\n  DATABASE_UPDATE: `${alarmPrefix}-database-update`,\n} as const\n\nexport const KEEP_ALIVE_INTERVAL = 20_000\n","import { JsonRpcProvider } from \"@polkadot-api/json-rpc-provider\"\nimport { getSyncProvider } from \"@polkadot-api/json-rpc-provider-proxy\"\nimport { getRandomChainId } from \"./getRandomChainId\"\nimport {\n  ToApplication,\n  ToExtension,\n} from \"@substrate/connect-extension-protocol\"\n\ntype Callback<T> = (value: T) => void\ntype UnsubscribeFn = () => void\n\ntype CreateBackgroundClientConnectProviderOptions = {\n  genesisHash: string\n  chainSpec?: string\n  relayChainGenesisHash?: string\n  postMessage: (msg: ToExtension) => void\n  addOnMessageListener: (callback: Callback<ToApplication>) => UnsubscribeFn\n  addOnDisconnectListener?: (callback: Callback<any>) => UnsubscribeFn\n}\n\nexport const createBackgroundClientConnectProvider = ({\n  genesisHash,\n  chainSpec,\n  relayChainGenesisHash,\n  postMessage,\n  addOnMessageListener,\n  addOnDisconnectListener,\n}: CreateBackgroundClientConnectProviderOptions): JsonRpcProvider =>\n  getSyncProvider(async () => {\n    const chainId = getRandomChainId()\n    await new Promise<void>((resolve, reject) => {\n      const removeOnMessageListener = addOnMessageListener((msg) => {\n        if (msg?.chainId !== chainId) return\n        switch (msg.type) {\n          case \"chain-ready\": {\n            resolve()\n            break\n          }\n          case \"error\": {\n            reject(new Error(msg.errorMessage))\n            break\n          }\n          default:\n            reject(new Error(`Unrecognized message ${JSON.stringify(msg)}`))\n            break\n        }\n        removeOnMessageListener()\n      })\n      postMessage(\n        chainSpec\n          ? {\n              origin: \"substrate-connect-client\",\n              type: \"add-chain\",\n              chainId,\n              chainSpec,\n              potentialRelayChainIds: relayChainGenesisHash\n                ? [relayChainGenesisHash]\n                : [],\n            }\n          : {\n              origin: \"substrate-connect-client\",\n              type: \"add-well-known-chain\",\n              chainId,\n              chainName: genesisHash,\n            },\n      )\n    })\n    return (onMessage, onHalt) => {\n      const removeOnMessageListener = addOnMessageListener((msg) => {\n        if (msg.chainId !== chainId) return\n        switch (msg.type) {\n          case \"rpc\": {\n            onMessage(msg.jsonRpcMessage)\n            break\n          }\n          case \"error\": {\n            console.error(msg.errorMessage)\n            removeListeners()\n            onHalt()\n            break\n          }\n          default:\n            console.warn(`Unrecognized message ${JSON.stringify(msg)}`)\n            break\n        }\n      })\n      const removeOnDisconnectListener = addOnDisconnectListener?.(onHalt)\n      const removeListeners = () => {\n        removeOnMessageListener()\n        removeOnDisconnectListener?.()\n      }\n      return {\n        send(jsonRpcMessage) {\n          postMessage({\n            origin: \"substrate-connect-client\",\n            type: \"rpc\",\n            chainId,\n            jsonRpcMessage,\n          })\n        },\n        disconnect() {\n          removeListeners()\n          postMessage({\n            origin: \"substrate-connect-client\",\n            type: \"remove-chain\",\n            chainId,\n          })\n        },\n      }\n    }\n  })\n","export const getRandomChainId = () => {\n  const arr = new BigUint64Array(2)\n  // It can only be used from the browser, so this is fine.\n  crypto.getRandomValues(arr)\n  const result = (arr[1]! << BigInt(64)) | arr[0]!\n  return result.toString(36)\n}\n","import {\n  ToExtension,\n  ToApplication,\n} from \"@substrate/connect-extension-protocol\"\nimport { type RpcMessage, isRpcMessage } from \"@/utils\"\n\nexport const isSubstrateConnectMessage = (\n  msg: any,\n): msg is ToApplication | ToExtension =>\n  isSubstrateConnectToApplicationMessage(msg) ||\n  isSubstrateConnectToExtensionMessage(msg)\n\nexport const isSubstrateConnectToExtensionMessage = (\n  msg: any,\n): msg is ToExtension => {\n  if (typeof msg !== \"object\") return false\n  if (msg.origin !== \"substrate-connect-client\") return false\n  return true\n}\n\nexport const isSubstrateConnectToApplicationMessage = (\n  msg: any,\n): msg is ToApplication => {\n  if (typeof msg !== \"object\") return false\n  if (msg.origin !== \"substrate-connect-extension\") return false\n  return true\n}\n\nexport const isRpcMessageWithOrigin = <TOrigin extends string>(\n  msg: any,\n  origin: TOrigin,\n): msg is RpcMessage & { origin: TOrigin } => {\n  if (!isRpcMessage(msg)) return false\n  if (\"origin\" in msg && msg.origin !== origin) return false\n  return true\n}\n\nexport type RpcMessageWithOrigin<TOrigin extends string> = RpcMessage & {\n  origin: TOrigin\n}\n"],"mappings":"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","names":[]}

Выполнить команду


Для локальной разработки. Не используйте в интернете!