@powerhousedao/connect 1.0.20-dev.0 → 1.0.20-dev.1

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.
Files changed (36) hide show
  1. package/dist/assets/{app-DULISSV9.js → app-BRmEr17M.js} +977 -587
  2. package/dist/assets/app-BRmEr17M.js.map +1 -0
  3. package/dist/assets/{app-b1jkE5Vo.css → app-BzvMUA_5.css} +3 -0
  4. package/dist/assets/{app-loader-B74nopv_.css → app-loader-DaCxVT0x.css} +4 -0
  5. package/dist/assets/{app-loader-CS6aHo9m.js → app-loader-_6yU4PFI.js} +105 -108
  6. package/dist/assets/app-loader-_6yU4PFI.js.map +1 -0
  7. package/dist/assets/{browser-ClaMQmoS.js → browser--PdVaTAw.js} +4 -4
  8. package/dist/assets/{browser-ClaMQmoS.js.map → browser--PdVaTAw.js.map} +1 -1
  9. package/dist/assets/{ccip-HqktEv5j.js → ccip-oTEe2poK.js} +4 -4
  10. package/dist/assets/{ccip-HqktEv5j.js.map → ccip-oTEe2poK.js.map} +1 -1
  11. package/dist/assets/{content-CwQswwKt.js → content-B1Gquii9.js} +26 -16
  12. package/dist/assets/{content-CwQswwKt.js.map → content-B1Gquii9.js.map} +1 -1
  13. package/dist/assets/{index-q1LnGFn2.js → index-C47jzF-n.js} +14 -14
  14. package/dist/assets/index-C47jzF-n.js.map +1 -0
  15. package/dist/assets/index-CXljh8x6.js +208 -0
  16. package/dist/assets/index-CXljh8x6.js.map +1 -0
  17. package/dist/assets/{index-4Y8IZCoL.js → index-Csy31V2Q.js} +4 -4
  18. package/dist/assets/{index-4Y8IZCoL.js.map → index-Csy31V2Q.js.map} +1 -1
  19. package/dist/assets/{index-DzXmrci3.js → index-DSo3d6TG.js} +7 -7
  20. package/dist/assets/{index-DzXmrci3.js.map → index-DSo3d6TG.js.map} +1 -1
  21. package/dist/assets/{main.uPY9aYSk.js → main.CUjcRUhx.js} +2 -2
  22. package/dist/assets/{main.uPY9aYSk.js.map → main.CUjcRUhx.js.map} +1 -1
  23. package/dist/assets/reactor-analytics-C7JH8QS3.js +44 -0
  24. package/dist/assets/reactor-analytics-C7JH8QS3.js.map +1 -0
  25. package/dist/assets/{router-CvCplkfB.js → router-B-9X40Vx.js} +20 -613
  26. package/dist/assets/router-B-9X40Vx.js.map +1 -0
  27. package/dist/assets/{style-Ce3V83BE.css → style-BPUyhu8E.css} +3 -0
  28. package/dist/index.html +1 -1
  29. package/dist/vite-envs.sh +1 -1
  30. package/package.json +9 -9
  31. package/dist/assets/app-DULISSV9.js.map +0 -1
  32. package/dist/assets/app-loader-CS6aHo9m.js.map +0 -1
  33. package/dist/assets/index-q1LnGFn2.js.map +0 -1
  34. package/dist/assets/reactor-analytics-C3XNgGME.js +0 -15
  35. package/dist/assets/reactor-analytics-C3XNgGME.js.map +0 -1
  36. package/dist/assets/router-CvCplkfB.js.map +0 -1
@@ -1,7 +1,7 @@
1
- import { aS as BaseError, aT as getUrl, aU as stringify, aV as decodeErrorResult, aW as isAddressEqual, aX as call, aY as concat, aZ as encodeAbiParameters, a_ as HttpRequestError, a$ as isHex } from "./app-DULISSV9.js";
2
- import "./main.uPY9aYSk.js";
1
+ import { aG as BaseError, aH as getUrl, aI as stringify, aJ as decodeErrorResult, aK as isAddressEqual, aL as call, aM as concat, aN as encodeAbiParameters, aO as HttpRequestError, aP as isHex } from "./app-BRmEr17M.js";
2
+ import "./main.CUjcRUhx.js";
3
3
  import "react/jsx-runtime";
4
- import "./app-loader-CS6aHo9m.js";
4
+ import "./app-loader-_6yU4PFI.js";
5
5
  import "react";
6
6
  import "react-dom";
7
7
  class OffchainLookupError extends BaseError {
@@ -162,4 +162,4 @@ export {
162
162
  offchainLookupAbiItem,
163
163
  offchainLookupSignature
164
164
  };
165
- //# sourceMappingURL=ccip-HqktEv5j.js.map
165
+ //# sourceMappingURL=ccip-oTEe2poK.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ccip-HqktEv5j.js","sources":["../../../../node_modules/.pnpm/viem@2.24.1_bufferutil@4.0.9_typescript@5.8.2_utf-8-validate@5.0.10_zod@3.24.2/node_modules/viem/_esm/errors/ccip.js","../../../../node_modules/.pnpm/viem@2.24.1_bufferutil@4.0.9_typescript@5.8.2_utf-8-validate@5.0.10_zod@3.24.2/node_modules/viem/_esm/utils/ccip.js"],"sourcesContent":["import { stringify } from '../utils/stringify.js';\nimport { BaseError } from './base.js';\nimport { getUrl } from './utils.js';\nexport class OffchainLookupError extends BaseError {\n constructor({ callbackSelector, cause, data, extraData, sender, urls, }) {\n super(cause.shortMessage ||\n 'An error occurred while fetching for an offchain result.', {\n cause,\n metaMessages: [\n ...(cause.metaMessages || []),\n cause.metaMessages?.length ? '' : [],\n 'Offchain Gateway Call:',\n urls && [\n ' Gateway URL(s):',\n ...urls.map((url) => ` ${getUrl(url)}`),\n ],\n ` Sender: ${sender}`,\n ` Data: ${data}`,\n ` Callback selector: ${callbackSelector}`,\n ` Extra data: ${extraData}`,\n ].flat(),\n name: 'OffchainLookupError',\n });\n }\n}\nexport class OffchainLookupResponseMalformedError extends BaseError {\n constructor({ result, url }) {\n super('Offchain gateway response is malformed. Response data must be a hex value.', {\n metaMessages: [\n `Gateway URL: ${getUrl(url)}`,\n `Response: ${stringify(result)}`,\n ],\n name: 'OffchainLookupResponseMalformedError',\n });\n }\n}\nexport class OffchainLookupSenderMismatchError extends BaseError {\n constructor({ sender, to }) {\n super('Reverted sender address does not match target contract address (`to`).', {\n metaMessages: [\n `Contract address: ${to}`,\n `OffchainLookup sender address: ${sender}`,\n ],\n name: 'OffchainLookupSenderMismatchError',\n });\n }\n}\n//# sourceMappingURL=ccip.js.map","import { call } from '../actions/public/call.js';\nimport { OffchainLookupError, OffchainLookupResponseMalformedError, OffchainLookupSenderMismatchError, } from '../errors/ccip.js';\nimport { HttpRequestError, } from '../errors/request.js';\nimport { decodeErrorResult } from './abi/decodeErrorResult.js';\nimport { encodeAbiParameters } from './abi/encodeAbiParameters.js';\nimport { isAddressEqual } from './address/isAddressEqual.js';\nimport { concat } from './data/concat.js';\nimport { isHex } from './data/isHex.js';\nimport { stringify } from './stringify.js';\nexport const offchainLookupSignature = '0x556f1830';\nexport const offchainLookupAbiItem = {\n name: 'OffchainLookup',\n type: 'error',\n inputs: [\n {\n name: 'sender',\n type: 'address',\n },\n {\n name: 'urls',\n type: 'string[]',\n },\n {\n name: 'callData',\n type: 'bytes',\n },\n {\n name: 'callbackFunction',\n type: 'bytes4',\n },\n {\n name: 'extraData',\n type: 'bytes',\n },\n ],\n};\nexport async function offchainLookup(client, { blockNumber, blockTag, data, to, }) {\n const { args } = decodeErrorResult({\n data,\n abi: [offchainLookupAbiItem],\n });\n const [sender, urls, callData, callbackSelector, extraData] = args;\n const { ccipRead } = client;\n const ccipRequest_ = ccipRead && typeof ccipRead?.request === 'function'\n ? ccipRead.request\n : ccipRequest;\n try {\n if (!isAddressEqual(to, sender))\n throw new OffchainLookupSenderMismatchError({ sender, to });\n const result = await ccipRequest_({ data: callData, sender, urls });\n const { data: data_ } = await call(client, {\n blockNumber,\n blockTag,\n data: concat([\n callbackSelector,\n encodeAbiParameters([{ type: 'bytes' }, { type: 'bytes' }], [result, extraData]),\n ]),\n to,\n });\n return data_;\n }\n catch (err) {\n throw new OffchainLookupError({\n callbackSelector,\n cause: err,\n data,\n extraData,\n sender,\n urls,\n });\n }\n}\nexport async function ccipRequest({ data, sender, urls, }) {\n let error = new Error('An unknown error occurred.');\n for (let i = 0; i < urls.length; i++) {\n const url = urls[i];\n const method = url.includes('{data}') ? 'GET' : 'POST';\n const body = method === 'POST' ? { data, sender } : undefined;\n const headers = method === 'POST' ? { 'Content-Type': 'application/json' } : {};\n try {\n const response = await fetch(url.replace('{sender}', sender.toLowerCase()).replace('{data}', data), {\n body: JSON.stringify(body),\n headers,\n method,\n });\n let result;\n if (response.headers.get('Content-Type')?.startsWith('application/json')) {\n result = (await response.json()).data;\n }\n else {\n result = (await response.text());\n }\n if (!response.ok) {\n error = new HttpRequestError({\n body,\n details: result?.error\n ? stringify(result.error)\n : response.statusText,\n headers: response.headers,\n status: response.status,\n url,\n });\n continue;\n }\n if (!isHex(result)) {\n error = new OffchainLookupResponseMalformedError({\n result,\n url,\n });\n continue;\n }\n return result;\n }\n catch (err) {\n error = new HttpRequestError({\n body,\n details: err.message,\n url,\n });\n }\n }\n throw error;\n}\n//# sourceMappingURL=ccip.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0,1]}
1
+ {"version":3,"file":"ccip-oTEe2poK.js","sources":["../../../../node_modules/.pnpm/viem@2.24.1_bufferutil@4.0.9_typescript@5.8.2_utf-8-validate@5.0.10_zod@3.24.2/node_modules/viem/_esm/errors/ccip.js","../../../../node_modules/.pnpm/viem@2.24.1_bufferutil@4.0.9_typescript@5.8.2_utf-8-validate@5.0.10_zod@3.24.2/node_modules/viem/_esm/utils/ccip.js"],"sourcesContent":["import { stringify } from '../utils/stringify.js';\nimport { BaseError } from './base.js';\nimport { getUrl } from './utils.js';\nexport class OffchainLookupError extends BaseError {\n constructor({ callbackSelector, cause, data, extraData, sender, urls, }) {\n super(cause.shortMessage ||\n 'An error occurred while fetching for an offchain result.', {\n cause,\n metaMessages: [\n ...(cause.metaMessages || []),\n cause.metaMessages?.length ? '' : [],\n 'Offchain Gateway Call:',\n urls && [\n ' Gateway URL(s):',\n ...urls.map((url) => ` ${getUrl(url)}`),\n ],\n ` Sender: ${sender}`,\n ` Data: ${data}`,\n ` Callback selector: ${callbackSelector}`,\n ` Extra data: ${extraData}`,\n ].flat(),\n name: 'OffchainLookupError',\n });\n }\n}\nexport class OffchainLookupResponseMalformedError extends BaseError {\n constructor({ result, url }) {\n super('Offchain gateway response is malformed. Response data must be a hex value.', {\n metaMessages: [\n `Gateway URL: ${getUrl(url)}`,\n `Response: ${stringify(result)}`,\n ],\n name: 'OffchainLookupResponseMalformedError',\n });\n }\n}\nexport class OffchainLookupSenderMismatchError extends BaseError {\n constructor({ sender, to }) {\n super('Reverted sender address does not match target contract address (`to`).', {\n metaMessages: [\n `Contract address: ${to}`,\n `OffchainLookup sender address: ${sender}`,\n ],\n name: 'OffchainLookupSenderMismatchError',\n });\n }\n}\n//# sourceMappingURL=ccip.js.map","import { call } from '../actions/public/call.js';\nimport { OffchainLookupError, OffchainLookupResponseMalformedError, OffchainLookupSenderMismatchError, } from '../errors/ccip.js';\nimport { HttpRequestError, } from '../errors/request.js';\nimport { decodeErrorResult } from './abi/decodeErrorResult.js';\nimport { encodeAbiParameters } from './abi/encodeAbiParameters.js';\nimport { isAddressEqual } from './address/isAddressEqual.js';\nimport { concat } from './data/concat.js';\nimport { isHex } from './data/isHex.js';\nimport { stringify } from './stringify.js';\nexport const offchainLookupSignature = '0x556f1830';\nexport const offchainLookupAbiItem = {\n name: 'OffchainLookup',\n type: 'error',\n inputs: [\n {\n name: 'sender',\n type: 'address',\n },\n {\n name: 'urls',\n type: 'string[]',\n },\n {\n name: 'callData',\n type: 'bytes',\n },\n {\n name: 'callbackFunction',\n type: 'bytes4',\n },\n {\n name: 'extraData',\n type: 'bytes',\n },\n ],\n};\nexport async function offchainLookup(client, { blockNumber, blockTag, data, to, }) {\n const { args } = decodeErrorResult({\n data,\n abi: [offchainLookupAbiItem],\n });\n const [sender, urls, callData, callbackSelector, extraData] = args;\n const { ccipRead } = client;\n const ccipRequest_ = ccipRead && typeof ccipRead?.request === 'function'\n ? ccipRead.request\n : ccipRequest;\n try {\n if (!isAddressEqual(to, sender))\n throw new OffchainLookupSenderMismatchError({ sender, to });\n const result = await ccipRequest_({ data: callData, sender, urls });\n const { data: data_ } = await call(client, {\n blockNumber,\n blockTag,\n data: concat([\n callbackSelector,\n encodeAbiParameters([{ type: 'bytes' }, { type: 'bytes' }], [result, extraData]),\n ]),\n to,\n });\n return data_;\n }\n catch (err) {\n throw new OffchainLookupError({\n callbackSelector,\n cause: err,\n data,\n extraData,\n sender,\n urls,\n });\n }\n}\nexport async function ccipRequest({ data, sender, urls, }) {\n let error = new Error('An unknown error occurred.');\n for (let i = 0; i < urls.length; i++) {\n const url = urls[i];\n const method = url.includes('{data}') ? 'GET' : 'POST';\n const body = method === 'POST' ? { data, sender } : undefined;\n const headers = method === 'POST' ? { 'Content-Type': 'application/json' } : {};\n try {\n const response = await fetch(url.replace('{sender}', sender.toLowerCase()).replace('{data}', data), {\n body: JSON.stringify(body),\n headers,\n method,\n });\n let result;\n if (response.headers.get('Content-Type')?.startsWith('application/json')) {\n result = (await response.json()).data;\n }\n else {\n result = (await response.text());\n }\n if (!response.ok) {\n error = new HttpRequestError({\n body,\n details: result?.error\n ? stringify(result.error)\n : response.statusText,\n headers: response.headers,\n status: response.status,\n url,\n });\n continue;\n }\n if (!isHex(result)) {\n error = new OffchainLookupResponseMalformedError({\n result,\n url,\n });\n continue;\n }\n return result;\n }\n catch (err) {\n error = new HttpRequestError({\n body,\n details: err.message,\n url,\n });\n }\n }\n throw error;\n}\n//# sourceMappingURL=ccip.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0,1]}
@@ -1,11 +1,11 @@
1
1
  import { jsx, jsxs, Fragment as Fragment$1 } from "react/jsx-runtime";
2
- import { t as twMerge, B as Button, b0 as mergeClassNameProps, O as ERROR, b1 as MISSING, N as CONFLICT, L as SUCCESS, b2 as SYNCING, b3 as INITIAL_SYNC, b4 as ConnectDropdownMenu, b5 as useOnClickOutside, b6 as useEventListener, b7 as useCopyToClipboard, b8 as Select, b9 as Provider, ba as Root3, bb as Trigger, bc as Portal, bd as Content2, be as validateInitialState, bf as validateStateSchemaName, bg as validateModules, bh as useDocumentDrives, U as useUiNodesContext, bi as useDriveContext, bj as FILE$1, V as useUnwrappedReactor, bk as useConnectDid, bl as useConnectCrypto, F as useTranslation, X as useModal, bm as useAtomValue, bn as themeAtom, bo as useUser, bp as useUserPermissions$1, G as useUiNodes, bq as exportFile, br as useGetDocumentModelModule, bs as addActionContext$1, bt as signOperation$1, o as useDocumentDriveServer, bu as useHotkeys, bv as DriveLayout, bw as DriveContextProvider, bx as SearchBar, by as useAnalyticsEngine, bz as useAnalyticsStore, u as useQueryClient, ai as AnalyticsPath, ah as DateTime, bA as AnalyticsGranularity, bB as useGetEditor, bC as isSameDocument, C as useNavigate, J as useAsyncReactor, bD as useFilteredDocumentModels, a3 as useUnwrappedAnalyticsStore, bE as useDriveEditor, bF as useDocumentDriveById, T as useParams, H as useDocumentDrives$1, M as toast } from "./app-DULISSV9.js";
2
+ import { t as twMerge, B as Button, aQ as mergeClassNameProps, x as ERROR, aR as MISSING, C as CONFLICT, S as SUCCESS, aS as SYNCING, aT as INITIAL_SYNC, aU as ConnectDropdownMenu, aV as useOnClickOutside, aW as useEventListener, aX as useCopyToClipboard, aY as Select, aZ as Provider, a_ as Root3, a$ as Trigger, b0 as Portal, b1 as Content2, b2 as validateInitialState, b3 as validateStateSchemaName, b4 as validateModules, b5 as useDocumentDrives, A as useUiNodesContext, b6 as useDriveContext, b7 as FILE$1, F as useUnwrappedReactor, b8 as useConnectDid, b9 as useConnectCrypto, o as useTranslation, G as useModal, ba as useAtomValue, bb as themeAtom, bc as useUser, bd as useUserPermissions$1, p as useUiNodes, be as exportFile, bf as useGetDocumentModelModule, bg as addActionContext$1, bh as signOperation$1, e as useDocumentDriveServer, bi as useHotkeys, bj as DriveLayout, bk as DriveContextProvider, bl as SearchBar, N as useAnalyticsStore, bm as useQueryClient, u as useQuery, a6 as AnalyticsPath, bn as useAnalyticsEngine, a5 as DateTime, bo as AnalyticsGranularity, bp as useGetEditor, bq as isSameDocument, n as useNavigate, s as useAsyncReactor, br as useFilteredDocumentModels, bs as useDriveEditor, bt as useDocumentDriveById, z as useParams, q as useDocumentDrives$1, w as toast } from "./app-BRmEr17M.js";
3
3
  import * as React from "react";
4
4
  import React__default, { useState, useCallback, useMemo, useEffect, Fragment, useRef, useLayoutEffect, memo as memo$1, createElement, useSyncExternalStore, Suspense } from "react";
5
- import { $ as Icon, bZ as getDimensions, b_ as READ, b$ as nodeOptionsMap, c0 as defaultFileOptions, c1 as DELETE, c2 as RENAME, c3 as WRITE, c4 as DUPLICATE, c5 as defaultFolderOptions, c6 as garbageCollect, c7 as sortOperations, c8 as UI_NODE, aR as DRIVE, aB as FILE, ae as buildSignedOperation, aX as generateId$1, ay as isFolderNode, aD as generateNodesCopy, aE as copyNode, aC as moveNode, aA as updateNode, az as deleteNode, at as generateAddNodeAction, au as isFileNode, ax as addFolder, c9 as undo, ca as redo, _ as logger, aS as FOLDER, cb as useDocumentDispatch$1, am as driveDocumentModelModule } from "./app-loader-CS6aHo9m.js";
6
- import { E as ENSAvatar, u as useQuery, a as ErrorBoundary } from "./router-CvCplkfB.js";
5
+ import { $ as Icon, bY as getDimensions, bZ as READ, b_ as nodeOptionsMap, b$ as defaultFileOptions, c0 as DELETE, c1 as RENAME, c2 as WRITE, c3 as DUPLICATE, c4 as defaultFolderOptions, c5 as garbageCollect, c6 as sortOperations, c7 as UI_NODE, aR as DRIVE, aB as FILE, ae as buildSignedOperation, ap as generateId$1, ay as isFolderNode, aD as generateNodesCopy, aE as copyNode, aC as moveNode, aA as updateNode, az as deleteNode, at as generateAddNodeAction, au as isFileNode, ax as addFolder, c8 as undo, c9 as redo, _ as logger, aS as FOLDER, ca as useDocumentDispatch$1, am as driveDocumentModelModule } from "./app-loader-_6yU4PFI.js";
6
+ import { E as ENSAvatar, a as ErrorBoundary } from "./router-B-9X40Vx.js";
7
7
  import { flushSync } from "react-dom";
8
- import "./main.uPY9aYSk.js";
8
+ import "./main.CUjcRUhx.js";
9
9
  const PaginationButton = ({ active = false, ...props }) => {
10
10
  const className = twMerge("h-8 min-w-8 border border-solid border-gray-300 bg-white px-3 py-1 text-xs text-gray-900 hover:bg-gray-100", !active && "border-0");
11
11
  return jsx(Button, { color: "light", size: "small", ...mergeClassNameProps(props, className), children: props.children });
@@ -4180,19 +4180,32 @@ function Editor(props) {
4180
4180
  const GenericDriveExplorer = {
4181
4181
  Component: Editor
4182
4182
  };
4183
- function useAnalyticsQuery(query, options) {
4183
+ function useAnalyticsQueryWrapper(options) {
4184
+ const { queryFn, ...queryOptions } = options;
4185
+ const store = useAnalyticsStore();
4184
4186
  const engine = useAnalyticsEngine();
4187
+ return useQuery({
4188
+ ...queryOptions,
4189
+ queryFn: () => {
4190
+ if (!store || !engine) {
4191
+ throw new Error("No analytics store available. Use within an AnalyticsProvider.");
4192
+ }
4193
+ return queryFn({ store, engine });
4194
+ }
4195
+ });
4196
+ }
4197
+ function useAnalyticsQuery(query, options) {
4185
4198
  const store = useAnalyticsStore();
4186
4199
  const { data: querySources } = useQuerySources(query);
4187
4200
  const queryClient = useQueryClient();
4188
4201
  const subscriptions = useRef([]);
4189
- const result = useQuery({
4202
+ const result = useAnalyticsQueryWrapper({
4190
4203
  queryKey: ["analytics", "query", query],
4191
- queryFn: () => engine.execute(query),
4204
+ queryFn: ({ engine }) => engine.execute(query),
4192
4205
  ...options
4193
4206
  });
4194
4207
  useEffect(() => {
4195
- if (!(querySources == null ? void 0 : querySources.length)) {
4208
+ if (!(querySources == null ? void 0 : querySources.length) || !store) {
4196
4209
  return;
4197
4210
  }
4198
4211
  querySources.forEach((source) => {
@@ -4211,10 +4224,9 @@ function useAnalyticsQuery(query, options) {
4211
4224
  return result;
4212
4225
  }
4213
4226
  function useMatchingSeries(query, options) {
4214
- const store = useAnalyticsStore();
4215
- const result = useQuery({
4227
+ const result = useAnalyticsQueryWrapper({
4216
4228
  queryKey: ["analytics", "matchingSeries", query],
4217
- queryFn: () => store.getMatchingSeries(query),
4229
+ queryFn: ({ store }) => store.getMatchingSeries(query),
4218
4230
  ...options
4219
4231
  });
4220
4232
  return result;
@@ -4957,7 +4969,6 @@ function DriveEditorContainer() {
4957
4969
  const documentModels = useFilteredDocumentModels();
4958
4970
  const useDriveDocumentState = makeDriveDocumentStateHook(reactor);
4959
4971
  const getDocument = useGetDocument();
4960
- const analyticsStore = useUnwrappedAnalyticsStore();
4961
4972
  const onGetDocumentRevision = useCallback(
4962
4973
  (documentId, options) => {
4963
4974
  if (!selectedNode) {
@@ -5011,8 +5022,7 @@ function DriveEditorContainer() {
5011
5022
  context: {
5012
5023
  ...editorProps.context,
5013
5024
  ...driveContext,
5014
- getDocumentRevision: onGetDocumentRevision,
5015
- analyticsStore
5025
+ getDocumentRevision: onGetDocumentRevision
5016
5026
  },
5017
5027
  onSwitchboardLinkClick: void 0,
5018
5028
  document: document2,
@@ -5046,7 +5056,7 @@ function Content() {
5046
5056
  }, [selectedDriveNode, selectedNode, addFile]);
5047
5057
  useEffect(() => {
5048
5058
  if ((status === "LOADED" || status === "ERROR") && !documentDrives.find(
5049
- (d) => d.state.global.id === driveId || d.state.global.slug === driveId || d.state.global.name === driveId
5059
+ (d) => d.state.global.id === driveId || d.slug === driveId || d.state.global.name === driveId
5050
5060
  )) {
5051
5061
  toast(/* @__PURE__ */ jsxs("p", { children: [
5052
5062
  "Drive ",
@@ -5061,4 +5071,4 @@ function Content() {
5061
5071
  export {
5062
5072
  Content as default
5063
5073
  };
5064
- //# sourceMappingURL=content-CwQswwKt.js.map
5074
+ //# sourceMappingURL=content-B1Gquii9.js.map