@ynput/ayon-frontend-shared 0.2.25 → 0.2.26
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.
- package/dist/Views.cjs.js +1 -1
- package/dist/Views.es.js +14 -14
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +33 -25
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +10 -10
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +229 -68
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/createFilterFromSlicer.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/createFilterFromSlicer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/createFilterFromSlicer.es.js +21 -25
- package/dist/shared/src/containers/Slicer/createFilterFromSlicer.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewItem/ViewItem.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewItem/ViewItem.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewItem/ViewItem.es.js +64 -54
- package/dist/shared/src/containers/Views/ViewItem/ViewItem.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewFormDialogFallback.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewFormDialogFallback.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +22 -20
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js +60 -59
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js +14 -14
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +17 -18
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
- package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
- package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useActionTriggers.es.js +38 -33
- package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
- package/dist/shared/src/hooks/useCustomProtocolCheck.cjs.js +2 -0
- package/dist/shared/src/hooks/useCustomProtocolCheck.cjs.js.map +1 -0
- package/dist/shared/src/hooks/useCustomProtocolCheck.es.js +43 -0
- package/dist/shared/src/hooks/useCustomProtocolCheck.es.js.map +1 -0
- package/dist/types/containers/Slicer/createFilterFromSlicer.d.ts +3 -1
- package/dist/types/containers/Slicer/types.d.ts +1 -1
- package/dist/types/containers/Views/ViewsDialogContainer/ViewFormDialogFallback.d.ts +1 -0
- package/dist/types/containers/Views/context/ViewsContext.d.ts +2 -1
- package/dist/types/containers/Views/hooks/useViewsMutations.d.ts +3 -3
- package/dist/types/hooks/useActionTriggers.d.ts +1 -1
- package/dist/types/hooks/useCustomProtocolCheck.d.ts +10 -0
- package/package.json +1 -1
|
@@ -76,33 +76,32 @@ import "../../../api/queries/versions/updateVersions.es.js";
|
|
|
76
76
|
import "../../../api/queries/views/getViews.es.js";
|
|
77
77
|
import { useCreateViewMutation as E, useDeleteViewMutation as M, useUpdateViewMutation as W } from "../../../api/queries/views/updateViews.es.js";
|
|
78
78
|
import "../../../api/queries/watchers/getWatchers.es.js";
|
|
79
|
-
import { useCallback as
|
|
79
|
+
import { useCallback as a } from "react";
|
|
80
80
|
import { generateWorkingView as v } from "../utils/generateWorkingView.es.js";
|
|
81
81
|
import { toast as V } from "react-toastify";
|
|
82
82
|
const Tr = ({
|
|
83
83
|
viewType: r,
|
|
84
84
|
projectName: e,
|
|
85
|
-
onCreate:
|
|
85
|
+
onCreate: s,
|
|
86
86
|
onDelete: w,
|
|
87
87
|
onUpdate: c
|
|
88
88
|
}) => {
|
|
89
|
-
const [m] = E(), [
|
|
89
|
+
const [m] = E(), [u] = M(), [g] = W(), h = a(
|
|
90
90
|
async (i, t) => {
|
|
91
91
|
if (!r)
|
|
92
92
|
throw new Error("viewType are required for creating a view");
|
|
93
|
-
console.log(i, t);
|
|
94
93
|
try {
|
|
95
94
|
await m({
|
|
96
95
|
viewType: r,
|
|
97
|
-
projectName: t ?
|
|
96
|
+
projectName: t ? void 0 : e,
|
|
98
97
|
payload: i
|
|
99
|
-
}).unwrap(),
|
|
98
|
+
}).unwrap(), s && s(i);
|
|
100
99
|
} catch (o) {
|
|
101
100
|
throw console.error("Failed to create view:", o), o;
|
|
102
101
|
}
|
|
103
102
|
},
|
|
104
|
-
[m, r, e,
|
|
105
|
-
), k =
|
|
103
|
+
[m, r, e, s]
|
|
104
|
+
), k = a(
|
|
106
105
|
async (i, t, o) => {
|
|
107
106
|
if (!r)
|
|
108
107
|
throw new Error("viewType are required for updating a view");
|
|
@@ -110,7 +109,7 @@ const Tr = ({
|
|
|
110
109
|
await g({
|
|
111
110
|
viewId: i,
|
|
112
111
|
viewType: r,
|
|
113
|
-
projectName: o ?
|
|
112
|
+
projectName: o ? void 0 : e,
|
|
114
113
|
payload: t
|
|
115
114
|
}).unwrap(), c && c({ ...t, id: i });
|
|
116
115
|
} catch (p) {
|
|
@@ -118,35 +117,35 @@ const Tr = ({
|
|
|
118
117
|
}
|
|
119
118
|
},
|
|
120
119
|
[m, r, e, c]
|
|
121
|
-
), F =
|
|
120
|
+
), F = a(
|
|
122
121
|
async (i, t) => {
|
|
123
122
|
if (!r)
|
|
124
123
|
throw new Error("viewType are required for deleting a view");
|
|
125
124
|
try {
|
|
126
|
-
await
|
|
125
|
+
await u({
|
|
127
126
|
viewType: r,
|
|
128
|
-
projectName: t ?
|
|
127
|
+
projectName: t ? void 0 : e,
|
|
129
128
|
viewId: i
|
|
130
129
|
}).unwrap(), w && w(i);
|
|
131
130
|
} catch (o) {
|
|
132
131
|
throw console.error("Failed to delete view:", o), o;
|
|
133
132
|
}
|
|
134
133
|
},
|
|
135
|
-
[
|
|
136
|
-
), q =
|
|
134
|
+
[u, r, e, w]
|
|
135
|
+
), q = a(
|
|
137
136
|
async (i) => {
|
|
138
137
|
const { existingWorkingViewId: t, selectedViewId: o, setSelectedView: p, setSettingsChanged: f, notify: l } = i || {};
|
|
139
138
|
if (!r)
|
|
140
139
|
throw new Error("viewType are required for resetting a view");
|
|
141
|
-
const
|
|
142
|
-
t && (
|
|
140
|
+
const d = v({});
|
|
141
|
+
t && (d.id = t);
|
|
143
142
|
try {
|
|
144
143
|
await m({
|
|
145
144
|
viewType: r,
|
|
146
145
|
projectName: e,
|
|
147
|
-
payload:
|
|
146
|
+
payload: d
|
|
148
147
|
}).unwrap();
|
|
149
|
-
const n =
|
|
148
|
+
const n = d.id;
|
|
150
149
|
return p && f && o && t && o !== t && (p(n), f(!0)), l && V.success("View reset to default settings"), n;
|
|
151
150
|
} catch (n) {
|
|
152
151
|
throw console.error("Failed to reset working view:", n), l && V.error("Failed to reset view to default"), n;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useViewsMutations.es.js","sources":["../../../../../../src/containers/Views/hooks/useViewsMutations.ts"],"sourcesContent":["import {\n CreateViewApiArg,\n useCreateViewMutation,\n useDeleteViewMutation,\n useUpdateViewMutation,\n} from '@shared/api'\nimport { useCallback } from 'react'\nimport { ViewData } from '../context/ViewsContext'\nimport { generateWorkingView } from '../utils/generateWorkingView'\nimport { toast } from 'react-toastify'\n\ntype Props = {\n viewType?: string\n projectName?: string\n onCreate?: (view: ViewData) => void\n onUpdate?: (view: ViewData) => void\n onDelete?: (viewId: string) => void\n}\n\nexport type UseViewMutations = {\n onCreateView: (payload: CreateViewApiArg['payload'],
|
|
1
|
+
{"version":3,"file":"useViewsMutations.es.js","sources":["../../../../../../src/containers/Views/hooks/useViewsMutations.ts"],"sourcesContent":["import {\n CreateViewApiArg,\n useCreateViewMutation,\n useDeleteViewMutation,\n useUpdateViewMutation,\n} from '@shared/api'\nimport { useCallback } from 'react'\nimport { ViewData } from '../context/ViewsContext'\nimport { generateWorkingView } from '../utils/generateWorkingView'\nimport { toast } from 'react-toastify'\n\ntype Props = {\n viewType?: string\n projectName?: string\n onCreate?: (view: ViewData) => void\n onUpdate?: (view: ViewData) => void\n onDelete?: (viewId: string) => void\n}\n\nexport type UseViewMutations = {\n onCreateView: (payload: CreateViewApiArg['payload'], isStudioScope: boolean) => Promise<void>\n onDeleteView: (viewId: string, isStudioScope: boolean) => Promise<void>\n onUpdateView: (\n viewId: string,\n payload: Partial<ViewData>,\n isStudioScope: boolean,\n ) => Promise<void>\n onResetWorkingView: (args?: {\n existingWorkingViewId?: string\n selectedViewId?: string\n setSelectedView?: (id: string) => void\n setSettingsChanged?: (changed: boolean) => void\n notify?: boolean\n }) => Promise<string>\n}\ntype R = UseViewMutations\n\nexport const useViewsMutations = ({\n viewType,\n projectName,\n onCreate,\n onDelete,\n onUpdate,\n}: Props): UseViewMutations => {\n // forward mutations to the dialog\n const [createView] = useCreateViewMutation()\n const [deleteView] = useDeleteViewMutation()\n const [updateView] = useUpdateViewMutation()\n\n const onCreateView = useCallback<R['onCreateView']>(\n async (payload, isStudioScope) => {\n if (!viewType) {\n throw new Error('viewType are required for creating a view')\n }\n\n try {\n await createView({\n viewType: viewType,\n projectName: isStudioScope ? undefined : projectName,\n payload,\n }).unwrap()\n\n if (onCreate) {\n onCreate(payload as ViewData)\n }\n } catch (error) {\n console.error('Failed to create view:', error)\n throw error\n }\n },\n [createView, viewType, projectName, onCreate],\n )\n\n const onUpdateView = useCallback<R['onUpdateView']>(\n async (viewId, payload, isStudioScope) => {\n if (!viewType) {\n throw new Error('viewType are required for updating a view')\n }\n\n try {\n await updateView({\n viewId,\n viewType,\n projectName: isStudioScope ? undefined : projectName,\n payload,\n }).unwrap()\n\n if (onUpdate) {\n onUpdate({ ...payload, id: viewId } as ViewData)\n }\n } catch (error) {\n console.error('Failed to update view:', error)\n throw error\n }\n },\n [createView, viewType, projectName, onUpdate],\n )\n\n const onDeleteView = useCallback<R['onDeleteView']>(\n async (viewId, isStudioScope) => {\n if (!viewType) {\n throw new Error('viewType are required for deleting a view')\n }\n\n try {\n await deleteView({\n viewType: viewType,\n projectName: isStudioScope ? undefined : projectName,\n viewId,\n }).unwrap()\n\n if (onDelete) {\n onDelete(viewId)\n }\n } catch (error) {\n console.error('Failed to delete view:', error)\n throw error\n }\n },\n [deleteView, viewType, projectName, onDelete],\n )\n\n const onResetWorkingView = useCallback<R['onResetWorkingView']>(\n async (args) => {\n const { existingWorkingViewId, selectedViewId, setSelectedView, setSettingsChanged, notify } =\n args || {}\n if (!viewType) {\n throw new Error('viewType are required for resetting a view')\n }\n\n const freshWorkingView = generateWorkingView({})\n if (existingWorkingViewId) {\n freshWorkingView.id = existingWorkingViewId\n }\n\n try {\n await createView({\n viewType,\n projectName,\n payload: freshWorkingView,\n }).unwrap()\n const newId = freshWorkingView.id as string\n\n // If we're not currently on the working view, switch to it and mark settings as changed\n if (setSelectedView && setSettingsChanged && selectedViewId && existingWorkingViewId) {\n if (selectedViewId !== existingWorkingViewId) {\n setSelectedView(newId)\n setSettingsChanged(true)\n }\n }\n\n if (notify) {\n toast.success('View reset to default settings')\n }\n\n return newId\n } catch (error) {\n console.error('Failed to reset working view:', error)\n if (notify) toast.error('Failed to reset view to default')\n throw error\n }\n },\n [createView, viewType, projectName],\n )\n\n return {\n onCreateView,\n onUpdateView,\n onDeleteView,\n onResetWorkingView,\n }\n}\n"],"names":["useViewsMutations","viewType","projectName","onCreate","onDelete","onUpdate","createView","useCreateViewMutation","deleteView","useDeleteViewMutation","updateView","useUpdateViewMutation","onCreateView","useCallback","payload","isStudioScope","error","onUpdateView","viewId","onDeleteView","onResetWorkingView","args","existingWorkingViewId","selectedViewId","setSelectedView","setSettingsChanged","notify","freshWorkingView","generateWorkingView","newId","toast"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react-redux"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react-redux"),a=require("../api/base/client.cjs.js");require("../api/generated/graphql.cjs.js");require("../api/generated/graphqlLinks.cjs.js");require("../api/generated/access.cjs.js");require("../api/generated/actions.cjs.js");require("../api/generated/activityFeed.cjs.js");require("../api/generated/addons.cjs.js");require("../api/generated/anatomy.cjs.js");require("../api/generated/attributes.cjs.js");require("../api/generated/authentication.cjs.js");require("../api/generated/bundles.cjs.js");require("../api/generated/configuration.cjs.js");require("../api/generated/desktop.cjs.js");require("../api/generated/entityLists.cjs.js");require("../api/generated/events.cjs.js");require("../api/generated/files.cjs.js");require("../api/generated/folders.cjs.js");require("../api/generated/inbox.cjs.js");require("../api/generated/links.cjs.js");require("../api/generated/market.cjs.js");require("../api/generated/onboarding.cjs.js");require("../api/generated/operations.cjs.js");require("../api/generated/products.cjs.js");require("../api/generated/projectDashboard.cjs.js");require("../api/generated/projects.cjs.js");require("../api/generated/reviewables.cjs.js");require("../api/generated/services.cjs.js");require("../api/generated/system.cjs.js");require("../api/generated/tasks.cjs.js");require("../api/generated/teams.cjs.js");require("../api/generated/thumbnails.cjs.js");require("../api/generated/uRIs.cjs.js");require("../api/generated/users.cjs.js");require("../api/generated/versions.cjs.js");require("../api/generated/workfiles.cjs.js");require("../api/generated/ynputCloud.cjs.js");require("../api/generated/grouping.cjs.js");require("../api/generated/views.cjs.js");require("../api/queries/actions/getActions.cjs.js");require("../api/queries/activities/getActivities.cjs.js");require("../api/queries/activities/updateActivities.cjs.js");require("../api/queries/activities/updateReaction.cjs.js");require("../api/queries/activities/getMentions.cjs.js");require("../api/queries/addons/getAddons.cjs.js");require("../api/queries/addons/updateAddons.cjs.js");require("../api/queries/attributes/getAttributes.cjs.js");require("../api/queries/attributes/updateAttributes.cjs.js");require("../api/queries/authentication/getAuthentication.cjs.js");require("../api/queries/cloud/cloud.cjs.js");require("../api/queries/entities/getEntity.cjs.js");require("../api/queries/entities/getEntityPanel.cjs.js");require("../api/queries/entities/updateEntity.cjs.js");require("../api/queries/entityLists/getLists.cjs.js");require("../api/queries/entityLists/updateLists.cjs.js");require("../api/queries/entityLists/getListsAttributes.cjs.js");require("../api/queries/entityLists/updateListsAttributes.cjs.js");require("../api/queries/folders/getFolders.cjs.js");require("../api/queries/grouping/getGrouping.cjs.js");require("../api/queries/links/updateLinks.cjs.js");require("../api/queries/links/getLinks.cjs.js");require("../api/queries/links/getEntityLinks.cjs.js");require("../api/queries/overview/getOverview.cjs.js");require("../api/queries/overview/updateOverview.cjs.js");require("../api/queries/permissions/getPermissions.cjs.js");require("../api/queries/products/createProduct.cjs.js");require("../api/queries/project/getProject.cjs.js");require("../api/queries/project/updateProject.cjs.js");require("../api/queries/review/getReview.cjs.js");require("../api/queries/review/updateReview.cjs.js");require("../api/queries/share/share.cjs.js");require("../api/queries/system/getSystem.cjs.js");require("../api/queries/userDashboard/getUserDashboard.cjs.js");require("../api/queries/users/getUsers.cjs.js");require("../api/queries/users/updateUsers.cjs.js");require("../api/queries/versions/updateVersions.cjs.js");require("../api/queries/views/getViews.cjs.js");require("../api/queries/views/updateViews.cjs.js");require("../api/queries/watchers/getWatchers.cjs.js");const d=require("./useCustomProtocolCheck.cjs.js"),f=({searchParams:t,onSetSearchParams:o,onNavigate:n})=>{const q=l.useDispatch(),{checkProtocol:c}=d.useCustomProtocolCheck({timeout:2e3,showSuccessMessage:!1,showErrorMessage:!0,enableFallback:!0});return{handleActionPayload:async(u,e)=>{if(e){if(u==="launcher")if(e!=null&&e.uri)try{await c(e.uri)||console.log("Protocol launch failed - AYON client may not be running")}catch(i){console.error("Protocol launch error:",i)}else console.warn("Launcher action has no URI:",e);else if(u==="query")if(Object.values(e.query).every(r=>typeof r=="string")){for(const[r,s]of Object.entries(e.query))t.set(r,s);o(t)}else throw new Error("Invalid payload: query");else if(u==="navigate"){if(typeof e.uri!="string")throw new Error("Invalid payload: navigate");n(e.uri)}else if(u==="redirect"){if(typeof e.uri!="string")throw new Error("Invalid payload: redirect");{const i=(e==null?void 0:e.new_tab)||!1;window.open(e.uri,i?"_blank":"_self")}}if("extra_download"in e){if(typeof e.extra_download!="string")throw new Error("Invalid payload: extra_download");{const i=new URL(e.extra_download,window.location.origin).href;console.log(i);const r=document.createElement("a");r.href=i,r.target="_blank",r.rel="noopener noreferrer",r.download="",document.body.appendChild(r),r.click(),document.body.removeChild(r)}}if("extra_clipboard"in e){if(typeof e.extra_clipboard!="string")throw new Error("Invalid payload: extra_clipboard");navigator.clipboard.writeText(e.extra_clipboard).catch(i=>{console.error("Failed to copy text to clipboard:",i)})}if("extra_reload"in e){if(!Array.isArray(e.extra_reload))throw new Error("Invalid payload: extra_reload");e.extra_reload.length&&q(a.api.util.invalidateTags(e.extra_reload))}}}}};exports.useActionTriggers=f;
|
|
2
2
|
//# sourceMappingURL=useActionTriggers.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useActionTriggers.cjs.js","sources":["../../../../src/hooks/useActionTriggers.ts"],"sourcesContent":["import { useDispatch } from 'react-redux'\nimport
|
|
1
|
+
{"version":3,"file":"useActionTriggers.cjs.js","sources":["../../../../src/hooks/useActionTriggers.ts"],"sourcesContent":["import { useDispatch } from 'react-redux'\nimport { api } from '@shared/api'\nimport { useCustomProtocolCheck } from './useCustomProtocolCheck'\n\n\nexport type ActionTriggersProps = {\n searchParams: URLSearchParams\n onSetSearchParams: (params: URLSearchParams) => void\n onNavigate: (uri: string) => void\n}\n\ninterface QueryParams {\n [key: string]: string\n}\n\ninterface ActionPayload {\n query?: QueryParams // adds query params to the URL\n uri?: string // navigates to a different page\n new_tab?: boolean // opens a new tab\n extra_download?: string // triggers a file download from a URL\n extra_clipboard?: string // copies string content to clipboard\n extra_reload?: string[] // list of tags to invalidate\n [key: string]: any\n}\n\nexport const useActionTriggers = ({\n searchParams,\n onSetSearchParams,\n onNavigate,\n}: ActionTriggersProps) => {\n const dispatch = useDispatch()\n \n const { checkProtocol } = useCustomProtocolCheck({\n timeout: 2000,\n showSuccessMessage: false,\n showErrorMessage: true,\n enableFallback: true\n })\n \n const handleActionPayload = async (actionType: string, payload: ActionPayload | null): Promise<void> => {\n if (!payload) return\n\n if (actionType === 'launcher') {\n if (payload?.uri) {\n try {\n const success = await checkProtocol(payload.uri)\n \n if (!success) {\n console.log('Protocol launch failed - AYON client may not be running')\n }\n } catch (error) {\n console.error('Protocol launch error:', error)\n }\n } else {\n console.warn('Launcher action has no URI:', payload)\n }\n } else if (actionType === 'query') {\n // Validate it is an object of key:value pairs with value being string\n const isValid = Object.values(payload.query as QueryParams).every((value) => {\n return typeof value === 'string'\n })\n\n if (!isValid) {\n throw new Error('Invalid payload: query')\n } else {\n // Add query params to URL\n for (const [key, value] of Object.entries(payload.query as QueryParams)) {\n searchParams.set(key, value)\n }\n onSetSearchParams(searchParams)\n }\n } else if (actionType === 'navigate') {\n // Validate it is a string\n if (typeof payload.uri !== 'string') {\n throw new Error('Invalid payload: navigate')\n } else {\n // Navigate to the specified page\n onNavigate(payload.uri)\n }\n } else if (actionType === 'redirect') {\n // Validate it is a string\n if (typeof payload.uri !== 'string') {\n throw new Error('Invalid payload: redirect')\n } else {\n const newTab = payload?.new_tab || false\n window.open(payload.uri, newTab ? '_blank' : '_self')\n }\n }\n\n //\n // Sub-actions\n //\n\n if ('extra_download' in payload) {\n // Validate it is a string\n if (typeof payload.extra_download !== 'string') {\n throw new Error('Invalid payload: extra_download')\n } else {\n // Trigger file download from the URL\n const downloadUrl = new URL(payload.extra_download, window.location.origin).href\n console.log(downloadUrl)\n // Create a hidden anchor element\n const link = document.createElement('a')\n link.href = downloadUrl\n link.target = '_blank'\n link.rel = 'noopener noreferrer'\n // Set download attribute if it's a direct file download\n // If it's an API endpoint that handles the download, this is still good\n link.download = ''\n // Append to document, click and then remove\n document.body.appendChild(link)\n link.click()\n document.body.removeChild(link)\n }\n }\n\n if ('extra_clipboard' in payload) {\n // Validate it is a string\n if (typeof payload.extra_clipboard !== 'string') {\n throw new Error('Invalid payload: extra_clipboard')\n } else {\n // Copy content to clipboard\n navigator.clipboard.writeText(payload.extra_clipboard).catch((err) => {\n console.error('Failed to copy text to clipboard:', err)\n })\n }\n }\n\n if ('extra_reload' in payload) {\n if (!Array.isArray(payload.extra_reload)) {\n throw new Error('Invalid payload: extra_reload')\n }\n\n if (payload.extra_reload.length) {\n dispatch(api.util.invalidateTags(payload.extra_reload))\n }\n }\n\n }\n\n return { handleActionPayload }\n}"],"names":["useActionTriggers","searchParams","onSetSearchParams","onNavigate","dispatch","useDispatch","checkProtocol","useCustomProtocolCheck","actionType","payload","error","value","key","newTab","downloadUrl","link","err","api"],"mappings":"q7HAyBaA,EAAoB,CAAC,CAChC,aAAAC,EACA,kBAAAC,EACA,WAAAC,CACF,IAA2B,CACzB,MAAMC,EAAWC,EAAAA,YAAY,EAEvB,CAAE,cAAAC,CAAc,EAAIC,yBAAuB,CAC/C,QAAS,IACT,mBAAoB,GACpB,iBAAkB,GAClB,eAAgB,EAAA,CACjB,EAuGD,MAAO,CAAE,oBArGmB,MAAOC,EAAoBC,IAAiD,CACtG,GAAKA,EAEL,IAAID,IAAe,WACjB,GAAIC,GAAA,MAAAA,EAAS,IACP,GAAA,CACc,MAAMH,EAAcG,EAAQ,GAAG,GAG7C,QAAQ,IAAI,yDAAyD,QAEhEC,EAAO,CACN,QAAA,MAAM,yBAA0BA,CAAK,CAAA,MAGvC,QAAA,KAAK,8BAA+BD,CAAO,UAE5CD,IAAe,QAMxB,GAJgB,OAAO,OAAOC,EAAQ,KAAoB,EAAE,MAAOE,GAC1D,OAAOA,GAAU,QACzB,EAIM,CAEM,SAAA,CAACC,EAAKD,CAAK,IAAK,OAAO,QAAQF,EAAQ,KAAoB,EACvDR,EAAA,IAAIW,EAAKD,CAAK,EAE7BT,EAAkBD,CAAY,CAAA,KANxB,OAAA,IAAI,MAAM,wBAAwB,UAQjCO,IAAe,WAAY,CAEhC,GAAA,OAAOC,EAAQ,KAAQ,SACnB,MAAA,IAAI,MAAM,2BAA2B,EAG3CN,EAAWM,EAAQ,GAAG,CACxB,SACSD,IAAe,WAAY,CAEhC,GAAA,OAAOC,EAAQ,KAAQ,SACnB,MAAA,IAAI,MAAM,2BAA2B,EACtC,CACC,MAAAI,GAASJ,GAAA,YAAAA,EAAS,UAAW,GACnC,OAAO,KAAKA,EAAQ,IAAKI,EAAS,SAAW,OAAO,CAAA,CACtD,CAOF,GAAI,mBAAoBJ,EAAS,CAE3B,GAAA,OAAOA,EAAQ,gBAAmB,SAC9B,MAAA,IAAI,MAAM,iCAAiC,EAC5C,CAEC,MAAAK,EAAc,IAAI,IAAIL,EAAQ,eAAgB,OAAO,SAAS,MAAM,EAAE,KAC5E,QAAQ,IAAIK,CAAW,EAEjB,MAAAC,EAAO,SAAS,cAAc,GAAG,EACvCA,EAAK,KAAOD,EACZC,EAAK,OAAS,SACdA,EAAK,IAAM,sBAGXA,EAAK,SAAW,GAEP,SAAA,KAAK,YAAYA,CAAI,EAC9BA,EAAK,MAAM,EACF,SAAA,KAAK,YAAYA,CAAI,CAAA,CAChC,CAGF,GAAI,oBAAqBN,EAAS,CAE5B,GAAA,OAAOA,EAAQ,iBAAoB,SAC/B,MAAA,IAAI,MAAM,kCAAkC,EAGlD,UAAU,UAAU,UAAUA,EAAQ,eAAe,EAAE,MAAOO,GAAQ,CAC5D,QAAA,MAAM,oCAAqCA,CAAG,CAAA,CACvD,CACH,CAGF,GAAI,iBAAkBP,EAAS,CAC7B,GAAI,CAAC,MAAM,QAAQA,EAAQ,YAAY,EAC/B,MAAA,IAAI,MAAM,+BAA+B,EAG7CA,EAAQ,aAAa,QACvBL,EAASa,EAAI,IAAA,KAAK,eAAeR,EAAQ,YAAY,CAAC,CACxD,EAGJ,CAE6B,CAC/B"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { useDispatch as
|
|
2
|
-
import
|
|
3
|
-
import { api as f } from "../api/base/client.es.js";
|
|
1
|
+
import { useDispatch as l } from "react-redux";
|
|
2
|
+
import { api as a } from "../api/base/client.es.js";
|
|
4
3
|
import "../api/generated/graphql.es.js";
|
|
5
4
|
import "../api/generated/graphqlLinks.es.js";
|
|
6
5
|
import "../api/generated/access.es.js";
|
|
@@ -78,68 +77,74 @@ import "../api/queries/versions/updateVersions.es.js";
|
|
|
78
77
|
import "../api/queries/views/getViews.es.js";
|
|
79
78
|
import "../api/queries/views/updateViews.es.js";
|
|
80
79
|
import "../api/queries/watchers/getWatchers.es.js";
|
|
81
|
-
|
|
80
|
+
import { useCustomProtocolCheck as f } from "./useCustomProtocolCheck.es.js";
|
|
81
|
+
const Tr = ({
|
|
82
82
|
searchParams: e,
|
|
83
83
|
onSetSearchParams: m,
|
|
84
|
-
onNavigate:
|
|
84
|
+
onNavigate: n
|
|
85
85
|
}) => {
|
|
86
|
-
const
|
|
87
|
-
|
|
86
|
+
const p = l(), { checkProtocol: s } = f({
|
|
87
|
+
timeout: 2e3,
|
|
88
|
+
showSuccessMessage: !1,
|
|
89
|
+
showErrorMessage: !0,
|
|
90
|
+
enableFallback: !0
|
|
91
|
+
});
|
|
92
|
+
return { handleActionPayload: async (i, r) => {
|
|
88
93
|
if (r) {
|
|
89
|
-
if (
|
|
90
|
-
r != null && r.uri
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
else if (
|
|
99
|
-
if (Object.values(r.query).every((
|
|
100
|
-
for (const [
|
|
101
|
-
e.set(
|
|
94
|
+
if (i === "launcher")
|
|
95
|
+
if (r != null && r.uri)
|
|
96
|
+
try {
|
|
97
|
+
await s(r.uri) || console.log("Protocol launch failed - AYON client may not be running");
|
|
98
|
+
} catch (t) {
|
|
99
|
+
console.error("Protocol launch error:", t);
|
|
100
|
+
}
|
|
101
|
+
else
|
|
102
|
+
console.warn("Launcher action has no URI:", r);
|
|
103
|
+
else if (i === "query")
|
|
104
|
+
if (Object.values(r.query).every((o) => typeof o == "string")) {
|
|
105
|
+
for (const [o, c] of Object.entries(r.query))
|
|
106
|
+
e.set(o, c);
|
|
102
107
|
m(e);
|
|
103
108
|
} else
|
|
104
109
|
throw new Error("Invalid payload: query");
|
|
105
|
-
else if (
|
|
110
|
+
else if (i === "navigate") {
|
|
106
111
|
if (typeof r.uri != "string")
|
|
107
112
|
throw new Error("Invalid payload: navigate");
|
|
108
|
-
|
|
109
|
-
} else if (
|
|
113
|
+
n(r.uri);
|
|
114
|
+
} else if (i === "redirect") {
|
|
110
115
|
if (typeof r.uri != "string")
|
|
111
116
|
throw new Error("Invalid payload: redirect");
|
|
112
117
|
{
|
|
113
|
-
const
|
|
114
|
-
window.open(r.uri,
|
|
118
|
+
const t = (r == null ? void 0 : r.new_tab) || !1;
|
|
119
|
+
window.open(r.uri, t ? "_blank" : "_self");
|
|
115
120
|
}
|
|
116
121
|
}
|
|
117
122
|
if ("extra_download" in r) {
|
|
118
123
|
if (typeof r.extra_download != "string")
|
|
119
124
|
throw new Error("Invalid payload: extra_download");
|
|
120
125
|
{
|
|
121
|
-
const
|
|
122
|
-
console.log(
|
|
123
|
-
const
|
|
124
|
-
|
|
126
|
+
const t = new URL(r.extra_download, window.location.origin).href;
|
|
127
|
+
console.log(t);
|
|
128
|
+
const o = document.createElement("a");
|
|
129
|
+
o.href = t, o.target = "_blank", o.rel = "noopener noreferrer", o.download = "", document.body.appendChild(o), o.click(), document.body.removeChild(o);
|
|
125
130
|
}
|
|
126
131
|
}
|
|
127
132
|
if ("extra_clipboard" in r) {
|
|
128
133
|
if (typeof r.extra_clipboard != "string")
|
|
129
134
|
throw new Error("Invalid payload: extra_clipboard");
|
|
130
|
-
navigator.clipboard.writeText(r.extra_clipboard).catch((
|
|
131
|
-
console.error("Failed to copy text to clipboard:",
|
|
135
|
+
navigator.clipboard.writeText(r.extra_clipboard).catch((t) => {
|
|
136
|
+
console.error("Failed to copy text to clipboard:", t);
|
|
132
137
|
});
|
|
133
138
|
}
|
|
134
139
|
if ("extra_reload" in r) {
|
|
135
140
|
if (!Array.isArray(r.extra_reload))
|
|
136
141
|
throw new Error("Invalid payload: extra_reload");
|
|
137
|
-
r.extra_reload.length &&
|
|
142
|
+
r.extra_reload.length && p(a.util.invalidateTags(r.extra_reload));
|
|
138
143
|
}
|
|
139
144
|
}
|
|
140
145
|
} };
|
|
141
146
|
};
|
|
142
147
|
export {
|
|
143
|
-
|
|
148
|
+
Tr as useActionTriggers
|
|
144
149
|
};
|
|
145
150
|
//# sourceMappingURL=useActionTriggers.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useActionTriggers.es.js","sources":["../../../../src/hooks/useActionTriggers.ts"],"sourcesContent":["import { useDispatch } from 'react-redux'\nimport
|
|
1
|
+
{"version":3,"file":"useActionTriggers.es.js","sources":["../../../../src/hooks/useActionTriggers.ts"],"sourcesContent":["import { useDispatch } from 'react-redux'\nimport { api } from '@shared/api'\nimport { useCustomProtocolCheck } from './useCustomProtocolCheck'\n\n\nexport type ActionTriggersProps = {\n searchParams: URLSearchParams\n onSetSearchParams: (params: URLSearchParams) => void\n onNavigate: (uri: string) => void\n}\n\ninterface QueryParams {\n [key: string]: string\n}\n\ninterface ActionPayload {\n query?: QueryParams // adds query params to the URL\n uri?: string // navigates to a different page\n new_tab?: boolean // opens a new tab\n extra_download?: string // triggers a file download from a URL\n extra_clipboard?: string // copies string content to clipboard\n extra_reload?: string[] // list of tags to invalidate\n [key: string]: any\n}\n\nexport const useActionTriggers = ({\n searchParams,\n onSetSearchParams,\n onNavigate,\n}: ActionTriggersProps) => {\n const dispatch = useDispatch()\n \n const { checkProtocol } = useCustomProtocolCheck({\n timeout: 2000,\n showSuccessMessage: false,\n showErrorMessage: true,\n enableFallback: true\n })\n \n const handleActionPayload = async (actionType: string, payload: ActionPayload | null): Promise<void> => {\n if (!payload) return\n\n if (actionType === 'launcher') {\n if (payload?.uri) {\n try {\n const success = await checkProtocol(payload.uri)\n \n if (!success) {\n console.log('Protocol launch failed - AYON client may not be running')\n }\n } catch (error) {\n console.error('Protocol launch error:', error)\n }\n } else {\n console.warn('Launcher action has no URI:', payload)\n }\n } else if (actionType === 'query') {\n // Validate it is an object of key:value pairs with value being string\n const isValid = Object.values(payload.query as QueryParams).every((value) => {\n return typeof value === 'string'\n })\n\n if (!isValid) {\n throw new Error('Invalid payload: query')\n } else {\n // Add query params to URL\n for (const [key, value] of Object.entries(payload.query as QueryParams)) {\n searchParams.set(key, value)\n }\n onSetSearchParams(searchParams)\n }\n } else if (actionType === 'navigate') {\n // Validate it is a string\n if (typeof payload.uri !== 'string') {\n throw new Error('Invalid payload: navigate')\n } else {\n // Navigate to the specified page\n onNavigate(payload.uri)\n }\n } else if (actionType === 'redirect') {\n // Validate it is a string\n if (typeof payload.uri !== 'string') {\n throw new Error('Invalid payload: redirect')\n } else {\n const newTab = payload?.new_tab || false\n window.open(payload.uri, newTab ? '_blank' : '_self')\n }\n }\n\n //\n // Sub-actions\n //\n\n if ('extra_download' in payload) {\n // Validate it is a string\n if (typeof payload.extra_download !== 'string') {\n throw new Error('Invalid payload: extra_download')\n } else {\n // Trigger file download from the URL\n const downloadUrl = new URL(payload.extra_download, window.location.origin).href\n console.log(downloadUrl)\n // Create a hidden anchor element\n const link = document.createElement('a')\n link.href = downloadUrl\n link.target = '_blank'\n link.rel = 'noopener noreferrer'\n // Set download attribute if it's a direct file download\n // If it's an API endpoint that handles the download, this is still good\n link.download = ''\n // Append to document, click and then remove\n document.body.appendChild(link)\n link.click()\n document.body.removeChild(link)\n }\n }\n\n if ('extra_clipboard' in payload) {\n // Validate it is a string\n if (typeof payload.extra_clipboard !== 'string') {\n throw new Error('Invalid payload: extra_clipboard')\n } else {\n // Copy content to clipboard\n navigator.clipboard.writeText(payload.extra_clipboard).catch((err) => {\n console.error('Failed to copy text to clipboard:', err)\n })\n }\n }\n\n if ('extra_reload' in payload) {\n if (!Array.isArray(payload.extra_reload)) {\n throw new Error('Invalid payload: extra_reload')\n }\n\n if (payload.extra_reload.length) {\n dispatch(api.util.invalidateTags(payload.extra_reload))\n }\n }\n\n }\n\n return { handleActionPayload }\n}"],"names":["useActionTriggers","searchParams","onSetSearchParams","onNavigate","dispatch","useDispatch","checkProtocol","useCustomProtocolCheck","actionType","payload","error","value","key","newTab","downloadUrl","link","err","api"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBO,MAAMA,KAAoB,CAAC;AAAA,EAChC,cAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,YAAAC;AACF,MAA2B;AACzB,QAAMC,IAAWC,EAAY,GAEvB,EAAE,eAAAC,EAAc,IAAIC,EAAuB;AAAA,IAC/C,SAAS;AAAA,IACT,oBAAoB;AAAA,IACpB,kBAAkB;AAAA,IAClB,gBAAgB;AAAA,EAAA,CACjB;AAuGD,SAAO,EAAE,qBArGmB,OAAOC,GAAoBC,MAAiD;AACtG,QAAKA,GAEL;AAAA,UAAID,MAAe;AACjB,YAAIC,KAAA,QAAAA,EAAS;AACP,cAAA;AAGF,YAFgB,MAAMH,EAAcG,EAAQ,GAAG,KAG7C,QAAQ,IAAI,yDAAyD;AAAA,mBAEhEC,GAAO;AACN,oBAAA,MAAM,0BAA0BA,CAAK;AAAA,UAAA;AAAA;AAGvC,kBAAA,KAAK,+BAA+BD,CAAO;AAAA,eAE5CD,MAAe;AAMxB,YAJgB,OAAO,OAAOC,EAAQ,KAAoB,EAAE,MAAM,CAACE,MAC1D,OAAOA,KAAU,QACzB,GAIM;AAEM,qBAAA,CAACC,GAAKD,CAAK,KAAK,OAAO,QAAQF,EAAQ,KAAoB;AACvD,YAAAR,EAAA,IAAIW,GAAKD,CAAK;AAE7B,UAAAT,EAAkBD,CAAY;AAAA,QAAA;AANxB,gBAAA,IAAI,MAAM,wBAAwB;AAAA,eAQjCO,MAAe,YAAY;AAEhC,YAAA,OAAOC,EAAQ,OAAQ;AACnB,gBAAA,IAAI,MAAM,2BAA2B;AAG3C,QAAAN,EAAWM,EAAQ,GAAG;AAAA,MACxB,WACSD,MAAe,YAAY;AAEhC,YAAA,OAAOC,EAAQ,OAAQ;AACnB,gBAAA,IAAI,MAAM,2BAA2B;AACtC;AACC,gBAAAI,KAASJ,KAAA,gBAAAA,EAAS,YAAW;AACnC,iBAAO,KAAKA,EAAQ,KAAKI,IAAS,WAAW,OAAO;AAAA,QAAA;AAAA,MACtD;AAOF,UAAI,oBAAoBJ,GAAS;AAE3B,YAAA,OAAOA,EAAQ,kBAAmB;AAC9B,gBAAA,IAAI,MAAM,iCAAiC;AAC5C;AAEC,gBAAAK,IAAc,IAAI,IAAIL,EAAQ,gBAAgB,OAAO,SAAS,MAAM,EAAE;AAC5E,kBAAQ,IAAIK,CAAW;AAEjB,gBAAAC,IAAO,SAAS,cAAc,GAAG;AACvC,UAAAA,EAAK,OAAOD,GACZC,EAAK,SAAS,UACdA,EAAK,MAAM,uBAGXA,EAAK,WAAW,IAEP,SAAA,KAAK,YAAYA,CAAI,GAC9BA,EAAK,MAAM,GACF,SAAA,KAAK,YAAYA,CAAI;AAAA,QAAA;AAAA,MAChC;AAGF,UAAI,qBAAqBN,GAAS;AAE5B,YAAA,OAAOA,EAAQ,mBAAoB;AAC/B,gBAAA,IAAI,MAAM,kCAAkC;AAGlD,kBAAU,UAAU,UAAUA,EAAQ,eAAe,EAAE,MAAM,CAACO,MAAQ;AAC5D,kBAAA,MAAM,qCAAqCA,CAAG;AAAA,QAAA,CACvD;AAAA,MACH;AAGF,UAAI,kBAAkBP,GAAS;AAC7B,YAAI,CAAC,MAAM,QAAQA,EAAQ,YAAY;AAC/B,gBAAA,IAAI,MAAM,+BAA+B;AAG7C,QAAAA,EAAQ,aAAa,UACvBL,EAASa,EAAI,KAAK,eAAeR,EAAQ,YAAY,CAAC;AAAA,MACxD;AAAA;AAAA,EAGJ,EAE6B;AAC/B;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("react"),f=require("custom-protocol-check"),a=require("react-toastify"),P=(n={})=>{const{timeout:t=2e3,showSuccessMessage:l=!1,showErrorMessage:o=!0,enableFallback:u=!0}=n;return{checkProtocol:m.useCallback(i=>new Promise(h=>{let c=!1;const e=s=>{c||(c=!0,h(s))},r=setTimeout(()=>{e(!1)},t+500);try{f(i,()=>{clearTimeout(r),e(!0)},()=>{clearTimeout(r),o&&a.toast.error("AYON client is not running. Please start the AYON client application and try again.",{autoClose:8e3,toastId:"ayon-client-not-running"}),e(!1)},t)}catch{clearTimeout(r),o&&a.toast.error("Failed to launch AYON client action"),e(!1)}}),[t,l,o,u])}};exports.useCustomProtocolCheck=P;
|
|
2
|
+
//# sourceMappingURL=useCustomProtocolCheck.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCustomProtocolCheck.cjs.js","sources":["../../../../src/hooks/useCustomProtocolCheck.ts"],"sourcesContent":["import { useCallback } from 'react'\nimport customProtocolCheck from 'custom-protocol-check'\nimport { toast } from 'react-toastify'\n\ninterface UseCustomProtocolCheckOptions {\n timeout?: number\n showSuccessMessage?: boolean\n showErrorMessage?: boolean\n enableFallback?: boolean\n}\n\nexport const useCustomProtocolCheck = (options: UseCustomProtocolCheckOptions = {}) => {\n const {\n timeout = 2000,\n showSuccessMessage = false,\n showErrorMessage = true,\n enableFallback = true,\n } = options\n\n const checkProtocol = useCallback((uri: string): Promise<boolean> => {\n return new Promise((resolve) => {\n let hasResolved = false\n \n const resolveOnce = (result: boolean) => {\n if (hasResolved) return\n hasResolved = true\n resolve(result)\n }\n\n const timeoutId = setTimeout(() => {\n resolveOnce(false)\n }, timeout + 500) // Add a small buffer to the timeout\n\n try {\n customProtocolCheck(\n uri,\n () => {\n clearTimeout(timeoutId)\n \n // On success: show nothing\n \n resolveOnce(true)\n },\n () => {\n clearTimeout(timeoutId)\n if (showErrorMessage) {\n toast.error(\n 'AYON client is not running. Please start the AYON client application and try again.',\n { \n autoClose: 8000,\n toastId: 'ayon-client-not-running'\n }\n )\n }\n resolveOnce(false)\n },\n timeout\n )\n } catch (error) {\n clearTimeout(timeoutId)\n if (showErrorMessage) {\n toast.error('Failed to launch AYON client action')\n }\n resolveOnce(false)\n }\n })\n }, [timeout, showSuccessMessage, showErrorMessage, enableFallback])\n\n return { checkProtocol }\n}\n"],"names":["useCustomProtocolCheck","options","timeout","showSuccessMessage","showErrorMessage","enableFallback","useCallback","uri","resolve","hasResolved","resolveOnce","result","timeoutId","customProtocolCheck","toast"],"mappings":"wKAWaA,EAAyB,CAACC,EAAyC,KAAO,CAC/E,KAAA,CACJ,QAAAC,EAAU,IACV,mBAAAC,EAAqB,GACrB,iBAAAC,EAAmB,GACnB,eAAAC,EAAiB,EAAA,EACfJ,EAmDJ,MAAO,CAAE,cAjDaK,cAAaC,GAC1B,IAAI,QAASC,GAAY,CAC9B,IAAIC,EAAc,GAEZ,MAAAC,EAAeC,GAAoB,CACnCF,IACUA,EAAA,GACdD,EAAQG,CAAM,EAChB,EAEMC,EAAY,WAAW,IAAM,CACjCF,EAAY,EAAK,CAAA,EAChBR,EAAU,GAAG,EAEZ,GAAA,CACFW,EACEN,EACA,IAAM,CACJ,aAAaK,CAAS,EAItBF,EAAY,EAAI,CAClB,EACA,IAAM,CACJ,aAAaE,CAAS,EAClBR,GACIU,EAAAA,MAAA,MACJ,sFACA,CACE,UAAW,IACX,QAAS,yBAAA,CAEb,EAEFJ,EAAY,EAAK,CACnB,EACAR,CACF,OACc,CACd,aAAaU,CAAS,EAClBR,GACFU,EAAA,MAAM,MAAM,qCAAqC,EAEnDJ,EAAY,EAAK,CAAA,CACnB,CACD,EACA,CAACR,EAASC,EAAoBC,EAAkBC,CAAc,CAAC,CAE3C,CACzB"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { useCallback as f } from "react";
|
|
2
|
+
import h from "custom-protocol-check";
|
|
3
|
+
import { toast as a } from "react-toastify";
|
|
4
|
+
const g = (l = {}) => {
|
|
5
|
+
const {
|
|
6
|
+
timeout: t = 2e3,
|
|
7
|
+
showSuccessMessage: n = !1,
|
|
8
|
+
showErrorMessage: o = !0,
|
|
9
|
+
enableFallback: i = !0
|
|
10
|
+
} = l;
|
|
11
|
+
return { checkProtocol: f((u) => new Promise((m) => {
|
|
12
|
+
let c = !1;
|
|
13
|
+
const e = (s) => {
|
|
14
|
+
c || (c = !0, m(s));
|
|
15
|
+
}, r = setTimeout(() => {
|
|
16
|
+
e(!1);
|
|
17
|
+
}, t + 500);
|
|
18
|
+
try {
|
|
19
|
+
h(
|
|
20
|
+
u,
|
|
21
|
+
() => {
|
|
22
|
+
clearTimeout(r), e(!0);
|
|
23
|
+
},
|
|
24
|
+
() => {
|
|
25
|
+
clearTimeout(r), o && a.error(
|
|
26
|
+
"AYON client is not running. Please start the AYON client application and try again.",
|
|
27
|
+
{
|
|
28
|
+
autoClose: 8e3,
|
|
29
|
+
toastId: "ayon-client-not-running"
|
|
30
|
+
}
|
|
31
|
+
), e(!1);
|
|
32
|
+
},
|
|
33
|
+
t
|
|
34
|
+
);
|
|
35
|
+
} catch {
|
|
36
|
+
clearTimeout(r), o && a.error("Failed to launch AYON client action"), e(!1);
|
|
37
|
+
}
|
|
38
|
+
}), [t, n, o, i]) };
|
|
39
|
+
};
|
|
40
|
+
export {
|
|
41
|
+
g as useCustomProtocolCheck
|
|
42
|
+
};
|
|
43
|
+
//# sourceMappingURL=useCustomProtocolCheck.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCustomProtocolCheck.es.js","sources":["../../../../src/hooks/useCustomProtocolCheck.ts"],"sourcesContent":["import { useCallback } from 'react'\nimport customProtocolCheck from 'custom-protocol-check'\nimport { toast } from 'react-toastify'\n\ninterface UseCustomProtocolCheckOptions {\n timeout?: number\n showSuccessMessage?: boolean\n showErrorMessage?: boolean\n enableFallback?: boolean\n}\n\nexport const useCustomProtocolCheck = (options: UseCustomProtocolCheckOptions = {}) => {\n const {\n timeout = 2000,\n showSuccessMessage = false,\n showErrorMessage = true,\n enableFallback = true,\n } = options\n\n const checkProtocol = useCallback((uri: string): Promise<boolean> => {\n return new Promise((resolve) => {\n let hasResolved = false\n \n const resolveOnce = (result: boolean) => {\n if (hasResolved) return\n hasResolved = true\n resolve(result)\n }\n\n const timeoutId = setTimeout(() => {\n resolveOnce(false)\n }, timeout + 500) // Add a small buffer to the timeout\n\n try {\n customProtocolCheck(\n uri,\n () => {\n clearTimeout(timeoutId)\n \n // On success: show nothing\n \n resolveOnce(true)\n },\n () => {\n clearTimeout(timeoutId)\n if (showErrorMessage) {\n toast.error(\n 'AYON client is not running. Please start the AYON client application and try again.',\n { \n autoClose: 8000,\n toastId: 'ayon-client-not-running'\n }\n )\n }\n resolveOnce(false)\n },\n timeout\n )\n } catch (error) {\n clearTimeout(timeoutId)\n if (showErrorMessage) {\n toast.error('Failed to launch AYON client action')\n }\n resolveOnce(false)\n }\n })\n }, [timeout, showSuccessMessage, showErrorMessage, enableFallback])\n\n return { checkProtocol }\n}\n"],"names":["useCustomProtocolCheck","options","timeout","showSuccessMessage","showErrorMessage","enableFallback","useCallback","uri","resolve","hasResolved","resolveOnce","result","timeoutId","customProtocolCheck","toast"],"mappings":";;;AAWO,MAAMA,IAAyB,CAACC,IAAyC,OAAO;AAC/E,QAAA;AAAA,IACJ,SAAAC,IAAU;AAAA,IACV,oBAAAC,IAAqB;AAAA,IACrB,kBAAAC,IAAmB;AAAA,IACnB,gBAAAC,IAAiB;AAAA,EAAA,IACfJ;AAmDJ,SAAO,EAAE,eAjDaK,EAAY,CAACC,MAC1B,IAAI,QAAQ,CAACC,MAAY;AAC9B,QAAIC,IAAc;AAEZ,UAAAC,IAAc,CAACC,MAAoB;AACvC,MAAIF,MACUA,IAAA,IACdD,EAAQG,CAAM;AAAA,IAChB,GAEMC,IAAY,WAAW,MAAM;AACjC,MAAAF,EAAY,EAAK;AAAA,IAAA,GAChBR,IAAU,GAAG;AAEZ,QAAA;AACF,MAAAW;AAAA,QACEN;AAAA,QACA,MAAM;AACJ,uBAAaK,CAAS,GAItBF,EAAY,EAAI;AAAA,QAClB;AAAA,QACA,MAAM;AACJ,uBAAaE,CAAS,GAClBR,KACIU,EAAA;AAAA,YACJ;AAAA,YACA;AAAA,cACE,WAAW;AAAA,cACX,SAAS;AAAA,YAAA;AAAA,UAEb,GAEFJ,EAAY,EAAK;AAAA,QACnB;AAAA,QACAR;AAAA,MACF;AAAA,YACc;AACd,mBAAaU,CAAS,GAClBR,KACFU,EAAM,MAAM,qCAAqC,GAEnDJ,EAAY,EAAK;AAAA,IAAA;AAAA,EACnB,CACD,GACA,CAACR,GAASC,GAAoBC,GAAkBC,CAAc,CAAC,EAE3C;AACzB;"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { ProjectTableAttribute } from '../ProjectTreeTable/hooks/useAttributesList';
|
|
1
2
|
import { SelectionData, SliceFilter, SliceType } from './types';
|
|
2
|
-
export type CreateFilterFromSlicer = ({ selection, type, }: {
|
|
3
|
+
export type CreateFilterFromSlicer = ({ selection, type, attribFields, }: {
|
|
3
4
|
selection: SelectionData;
|
|
4
5
|
type: SliceType;
|
|
6
|
+
attribFields: ProjectTableAttribute[];
|
|
5
7
|
}) => SliceFilter | null;
|
|
6
8
|
export declare const createFilterFromSlicer: CreateFilterFromSlicer;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FilterValue } from '@ynput/ayon-react-components';
|
|
2
|
-
export type SliceType = 'hierarchy' | 'assignees' | 'status' | 'type' | 'taskType';
|
|
2
|
+
export type SliceType = 'hierarchy' | 'assignees' | 'status' | 'type' | 'taskType' | string;
|
|
3
3
|
export type SliceDataItem = {
|
|
4
4
|
id: string;
|
|
5
5
|
name?: string | null;
|
|
@@ -22,6 +22,7 @@ export interface ViewsContextValue {
|
|
|
22
22
|
editingViewId: string | undefined;
|
|
23
23
|
viewMenuItems: ViewMenuItem[];
|
|
24
24
|
editingViewData?: ViewData;
|
|
25
|
+
isLoadingEditingViewData: boolean;
|
|
25
26
|
isLoadingViews: boolean;
|
|
26
27
|
isViewWorking: boolean;
|
|
27
28
|
shareOptions?: ShareOption[];
|
|
@@ -47,4 +48,4 @@ export interface ViewsProviderProps {
|
|
|
47
48
|
}
|
|
48
49
|
export declare const ViewsProvider: FC<ViewsProviderProps>;
|
|
49
50
|
export declare const useViewsContext: () => ViewsContextValue;
|
|
50
|
-
export declare const
|
|
51
|
+
export declare const isViewStudioScope: (viewId: string | undefined, viewsList: ViewListItemModel[]) => boolean;
|
|
@@ -8,9 +8,9 @@ type Props = {
|
|
|
8
8
|
onDelete?: (viewId: string) => void;
|
|
9
9
|
};
|
|
10
10
|
export type UseViewMutations = {
|
|
11
|
-
onCreateView: (payload: CreateViewApiArg['payload'],
|
|
12
|
-
onDeleteView: (viewId: string,
|
|
13
|
-
onUpdateView: (viewId: string, payload: Partial<ViewData>,
|
|
11
|
+
onCreateView: (payload: CreateViewApiArg['payload'], isStudioScope: boolean) => Promise<void>;
|
|
12
|
+
onDeleteView: (viewId: string, isStudioScope: boolean) => Promise<void>;
|
|
13
|
+
onUpdateView: (viewId: string, payload: Partial<ViewData>, isStudioScope: boolean) => Promise<void>;
|
|
14
14
|
onResetWorkingView: (args?: {
|
|
15
15
|
existingWorkingViewId?: string;
|
|
16
16
|
selectedViewId?: string;
|
|
@@ -16,6 +16,6 @@ interface ActionPayload {
|
|
|
16
16
|
[key: string]: any;
|
|
17
17
|
}
|
|
18
18
|
export declare const useActionTriggers: ({ searchParams, onSetSearchParams, onNavigate, }: ActionTriggersProps) => {
|
|
19
|
-
handleActionPayload: (actionType: string, payload: ActionPayload | null) => void
|
|
19
|
+
handleActionPayload: (actionType: string, payload: ActionPayload | null) => Promise<void>;
|
|
20
20
|
};
|
|
21
21
|
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
interface UseCustomProtocolCheckOptions {
|
|
2
|
+
timeout?: number;
|
|
3
|
+
showSuccessMessage?: boolean;
|
|
4
|
+
showErrorMessage?: boolean;
|
|
5
|
+
enableFallback?: boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare const useCustomProtocolCheck: (options?: UseCustomProtocolCheckOptions) => {
|
|
8
|
+
checkProtocol: (uri: string) => Promise<boolean>;
|
|
9
|
+
};
|
|
10
|
+
export {};
|