@openfin/workspace-platform 9.0.11 → 9.0.12
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/index.js +1 -1
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/*! For license information please see index.js.LICENSE.txt */
|
|
2
|
-
(()=>{"use strict";var e={525:e=>{var t=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function o(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},a=0;a<10;a++)t["_"+String.fromCharCode(a)]=a;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach((function(e){n[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(e){return!1}}()?Object.assign:function(e,r){for(var i,s,c=o(e),d=1;d<arguments.length;d++){for(var p in i=Object(arguments[d]))a.call(i,p)&&(c[p]=i[p]);if(t){s=t(i);for(var l=0;l<s.length;l++)n.call(i,s[l])&&(c[s[l]]=i[s[l]])}}return c}},535:(e,t,a)=>{var n=a(525),o=60103,r=60106;var i=60109,s=60110,c=60112;var d=60115,p=60116;if("function"==typeof Symbol&&Symbol.for){var l=Symbol.for;o=l("react.element"),r=l("react.portal"),l("react.fragment"),l("react.strict_mode"),l("react.profiler"),i=l("react.provider"),s=l("react.context"),c=l("react.forward_ref"),l("react.suspense"),d=l("react.memo"),p=l("react.lazy")}var u="function"==typeof Symbol&&Symbol.iterator;function w(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,a=1;a<arguments.length;a++)t+="&args[]="+encodeURIComponent(arguments[a]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var f={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g={};function y(e,t,a){this.props=e,this.context=t,this.refs=g,this.updater=a||f}function h(){}function m(e,t,a){this.props=e,this.context=t,this.refs=g,this.updater=a||f}y.prototype.isReactComponent={},y.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error(w(85));this.updater.enqueueSetState(this,e,t,"setState")},y.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},h.prototype=y.prototype;var v=m.prototype=new h;v.constructor=m,n(v,y.prototype),v.isPureReactComponent=!0;var S={current:null},P=Object.prototype.hasOwnProperty,b={key:!0,ref:!0,__self:!0,__source:!0};function k(e,t,a){var n,r={},i=null,s=null;if(null!=t)for(n in void 0!==t.ref&&(s=t.ref),void 0!==t.key&&(i=""+t.key),t)P.call(t,n)&&!b.hasOwnProperty(n)&&(r[n]=t[n]);var c=arguments.length-2;if(1===c)r.children=a;else if(1<c){for(var d=Array(c),p=0;p<c;p++)d[p]=arguments[p+2];r.children=d}if(e&&e.defaultProps)for(n in c=e.defaultProps)void 0===r[n]&&(r[n]=c[n]);return{$$typeof:o,type:e,key:i,ref:s,props:r,_owner:S.current}}function W(e){return"object"==typeof e&&null!==e&&e.$$typeof===o}var C=/\/+/g;function I(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function A(e,t,a,n,i){var s=typeof e;"undefined"!==s&&"boolean"!==s||(e=null);var c=!1;if(null===e)c=!0;else switch(s){case"string":case"number":c=!0;break;case"object":switch(e.$$typeof){case o:case r:c=!0}}if(c)return i=i(c=e),e=""===n?"."+I(c,0):n,Array.isArray(i)?(a="",null!=e&&(a=e.replace(C,"$&/")+"/"),A(i,t,a,"",(function(e){return e}))):null!=i&&(W(i)&&(i=function(e,t){return{$$typeof:o,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(i,a+(!i.key||c&&c.key===i.key?"":(""+i.key).replace(C,"$&/")+"/")+e)),t.push(i)),1;if(c=0,n=""===n?".":n+":",Array.isArray(e))for(var d=0;d<e.length;d++){var p=n+I(s=e[d],d);c+=A(s,t,a,p,i)}else if(p=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=u&&e[u]||e["@@iterator"])?e:null}(e),"function"==typeof p)for(e=p.call(e),d=0;!(s=e.next()).done;)c+=A(s=s.value,t,a,p=n+I(s,d++),i);else if("object"===s)throw t=""+e,Error(w(31,"[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t));return c}function M(e,t,a){if(null==e)return e;var n=[],o=0;return A(e,n,"","",(function(e){return t.call(a,e,o++)})),n}function O(e){if(-1===e._status){var t=e._result;t=t(),e._status=0,e._result=t,t.then((function(t){0===e._status&&(t=t.default,e._status=1,e._result=t)}),(function(t){0===e._status&&(e._status=2,e._result=t)}))}if(1===e._status)return e._result;throw e._result}var T={current:null};function E(){var e=T.current;if(null===e)throw Error(w(321));return e}},378:(e,t,a)=>{a(535)}},t={};function a(n){var o=t[n];if(void 0!==o)return o.exports;var r=t[n]={exports:{}};return e[n](r,r.exports,a),r.exports}a.d=(e,t)=>{for(var n in t)a.o(t,n)&&!a.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};(()=>{var e,t,o,r,i,s,c,d;a.r(n),a.d(n,{AppManifestType:()=>c,BrowserButtonType:()=>g,CustomActionCallerType:()=>h,GlobalContextMenuOptionType:()=>u,PageTabContextMenuOptionType:()=>w,SaveButtonContextMenuOptionType:()=>y,SaveModalType:()=>m,ViewTabMenuOptionType:()=>f,getCurrentSync:()=>Ft,init:()=>In,wrapSync:()=>Ut}),function(e){e.Fetching="fetching",e.Fetched="fetched",e.Complete="complete"}(e||(e={})),function(e){e.UserAction="user-action",e.FocusChange="focus-change",e.Reload="reload"}(t||(t={})),function(e){e.Active="active",e.Default="default"}(o||(o={})),function(e){e.Suggestion="suggestion"}(r||(r={})),function(e){e.Contact="Contact",e.Custom="Custom",e.List="List",e.Plain="Plain",e.SimpleText="SimpleText",e.Loading="Loading",e.Error="Error"}(i||(i={})),function(e){e.MultiSelect="MultiSelect"}(s||(s={})),function(e){e.Snapshot="snapshot",e.Manifest="manifest",e.View="view",e.External="external"}(c||(c={})),function(e){e.LandingPage="landingPage",e.AppGrid="appGrid"}(d||(d={}));var p,l,u,w,f,g,y,h,m,v;!function(e){e.Primary="primary",e.Secondary="secondary",e.TextOnly="textOnly"}(p||(p={})),function(e){e.ActionButton="ActionButton",e.DropdownButton="DropdownButton"}(l||(l={})),function(e){e.NewWindow="NewWindow",e.NewPage="NewPage",e.SavePage="SavePage",e.SavePageAs="SavePageAs",e.CloseWindow="CloseWindow",e.RestoreChanges="RestoreChanges",e.SaveWorkspace="SaveWorkspace",e.SaveWorkspaceAs="SaveWorkspaceAs",e.RenameWorkspace="RenameWorkspace",e.SwitchWorkspace="SwitchWorkspace",e.DeleteWorkspace="DeleteWorkspace",e.OpenStorefront="OpenStorefront",e.Quit="Quit",e.Custom="Custom"}(u||(u={})),function(e){e.Close="Close",e.Duplicate="Duplicate",e.Rename="Rename",e.Save="Save",e.SaveAs="Save As",e.Custom="Custom"}(w||(w={})),function(e){e.NewView="NewView",e.DuplicateViews="DuplicateView",e.OpenWithDefaultBrowser="OpenWithDefaultBrowser",e.ReloadViews="ReloadTab",e.CloseViews="CloseTab",e.AddToChannel="AddToChannel",e.RemoveFromChannel="RemoveFromChannel",e.Custom="Custom"}(f||(f={})),function(e){e.ShowHideTabs="ShowHideTabs",e.ColorLinking="ColorLinking",e.PresetLayouts="PresetLayouts",e.LockUnlockPage="LockUnlockPage",e.SaveMenu="SaveMenu",e.SavePage="SavePage",e.Minimise="Minimise",e.Maximise="Maximise",e.Close="Close",e.Custom="Custom"}(g||(g={})),function(e){e.SavePage="SavePage",e.SaveWorkspace="SaveWorkspace",e.SavePageAs="SavePageAs",e.SaveWorkspaceAs="SaveWorkspaceAs",e.Custom="Custom"}(y||(y={})),function(e){e.CustomButton="CustomButton",e.CustomDropdownItem="CustomDropdownItem",e.GlobalContextMenu="GlobalContextMenu",e.ViewTabContextMenu="ViewTabContextMenu",e.PageTabContextMenu="PageTabContextMenu",e.SaveButtonContextMenu="SaveButtonContextMenu",e.API="API"}(h||(h={})),function(e){e.SAVE_PAGE="SAVE_PAGE",e.SAVE_WORKSPACE="SAVE_WORKSPACE",e.SAVE_PAGE_AS="SAVE_PAGE_AS",e.SAVE_WORKSPACE_AS="SAVE_WORKSPACE_AS",e.RENAME_PAGE="RENAME_PAGE",e.RENAME_WORKSPACE="RENAME_WORKSPACE"}(m||(m={})),function(e){e.Local="local",e.Dev="dev",e.Staging="staging",e.Prod="prod"}(v||(v={}));const S="undefined"!=typeof window&&"undefined"!=typeof fin,P=("undefined"==typeof process||process.env?.JEST_WORKER_ID,"undefined"!=typeof window),b=P&&"undefined"!=typeof indexedDB,k=P?window.origin:v.Local,W=S&&fin.me.uuid,C=S&&fin.me.name,I=S&&fin.me.entityType,A=(v.Local,v.Dev,v.Staging,v.Prod,e=>e.startsWith("http://")||e.startsWith("https://")?e:k+e),M=(A("https://cdn.openfin.co/workspace/9.0.11"),A("https://cdn.openfin.co/workspace/9.0.11")),O=("undefined"!=typeof WORKSPACE_DOCS_PLATFORM_URL&&A(WORKSPACE_DOCS_PLATFORM_URL),"undefined"!=typeof WORKSPACE_DOCS_CLIENT_URL&&A(WORKSPACE_DOCS_CLIENT_URL),"26.102.71.7"),T="9.0.11";var E,B,x;!function(e){e.Workspace="openfin-browser"}(E||(E={})),function(e){e.RunRequested="run-requested",e.WindowOptionsChanged="window-options-changed",e.WindowClosed="window-closed",e.WindowCreated="window-created"}(B||(B={})),function(e){e.FinProtocol="fin-protocol"}(x||(x={}));const R={uuid:W},_=(E.Workspace,e=>{if(!S)throw new Error("getApplication cannot be used in a non OpenFin env. Avoid using this during pre-rendering.");return fin.Application.wrapSync(e)}),L=()=>_(R);var V,D,U;!function(e){e.Home="openfin-home",e.Dock="openfin-dock",e.Storefront="openfin-storefront",e.HomeInternal="openfin-home-internal",e.BrowserMenu="openfin-browser-menu",e.BrowserIndicator="openfin-browser-indicator",e.BrowserWindow="internal-generated-window"}(V||(V={})),function(e){e.Shown="shown",e.BoundsChanged="bounds-changed",e.LayoutReady="layout-ready",e.EndUserBoundsChanging="end-user-bounds-changing",e.Blurred="blurred",e.Closed="closed",e.CloseRequested="close-requested",e.Focused="focused",e.ShowRequested="show-requested",e.ViewCrashed="view-crashed",e.ViewAttached="view-attached",e.ViewDetached="view-detached",e.ViewPageTitleUpdated="view-page-title-updated",e.ViewDestroyed="view-destroyed",e.OptionsChanged="options-changed"}(D||(D={})),function(e){e.BeforeUnload="beforeunload"}(U||(U={}));function F(e){if(!S)throw new Error("getOFWindow can only be used in an OpenFin env. Avoid calling this method during pre-rendering.");return fin.Window.wrapSync(e)}const G={name:C,uuid:W};function $(){return F(G)}V.Home,E.Workspace,V.Dock,E.Workspace;const N={name:V.Storefront,uuid:E.Workspace};E.Workspace,E.Workspace;async function j(e){const t=F(e);"minimized"===await t.getState()&&await t.restore(),await t.show(),await t.setAsForeground()}const H=e=>e.startsWith(V.BrowserWindow);async function q(){return(await fin.Application.getCurrentSync().getChildWindows()).filter((e=>H(e.identity.name)))}const K=e=>F(e).getOptions().then((()=>!0)).catch((()=>!1)),Q=()=>K(N);var z;!function(e){e.Browser="Browser",e.Dock="Dock",e.Home="Home",e.Notification="Notification",e.Storefront="Storefront",e.Platform="Platform",e.Theming="Theming"}(z||(z={}));const J=async(e,t)=>{const a={apiVersion:t.apiVersion||T,componentName:e,componentVersion:t.componentVersion||T,allowed:t.allowed,rejectionCode:t.rejectionCode};fin.System.registerUsage({type:"workspace-licensing",data:a})};a(378);const X=e=>fin.System.getSystemAppConfig(e);let Y;async function Z(){if(Y)return Y;if(!S)return{};const e=await async function(){if(S)try{let e=await X("workspace").catch((e=>{}));return e||(e=await X("home")),e}catch(e){}}(),t=await async function(){const{manifest:e,initialOptions:t}=await fin.Application.getCurrentSync().getInfo();return e?.workspace||e?.home||t?.workspace||t?.home,e?.workspace?e?.workspace:e?.home?e?.home:t?.workspace?t?.workspace:t?.home?t?.home:void 0}();return Y={...t,...e},Y}var ee;!function(e){e.CurrentWorkspaceId="currentWorkspaceId",e.LastFocusedBrowserWindow="lastFocusedBrowserWindow",e.MachineName="machineName",e.NewTabPageLayout="NewTabPageLayout",e.NewTabPageSort="NewTabPageSort",e.DockPosition="DockPosition"}(ee||(ee={}));const te=ee,ae=(e,t)=>{localStorage.setItem(`${W}-${e}`,t)},ne=e=>localStorage.getItem(`${W}-${e}`);var oe;!function(e){e.LaunchApp="launchApp",e.SavePage="savePage",e.GetSavedPage="getSavedPage",e.CreateSavedPage="createSavedPage",e.UpdateSavedPage="updateSavedPage",e.DeleteSavedPage="deleteSavedPage",e.GetSavedPages="getSavedPages",e.CreateSavedPageInternal="createSavedPageInternal",e.UpdateSavedPageInternal="updateSavedPageInternal",e.DeleteSavedPageInternal="deleteSavedPageInternal",e.SharePage="sharePage",e.UpdatePageForWindow="updatePageForWindow",e.AttachPagesToWindow="attachPagesToWindow",e.DetachPagesFromWindow="detachPagesFromWindow",e.ReorderPagesForWindow="reorderPagesForWindow",e.SetActivePage="setActivePage",e.GetAllAttachedPages="getAllAttachedPages",e.GetActivePageIdForWindow="getActivePageIdForWindow",e.GetPagesForWindow="getPagesForWindow",e.GetPageForWindow="getPageForWindow",e.GetSavedPageMetadata="getSavedPageMetadata",e.GetUniquePageTitle="getUniquePageTitle",e.GetLastFocusedBrowserWindow="getLastFocusedBrowserWindow",e.GetThemes="getThemes",e.OpenGlobalContextMenuInternal="openGlobalContextMenuInternal",e.OpenViewTabContextMenuInternal="openViewTabContextMenuInternal",e.OpenPageTabContextMenuInternal="openPageTabContextMenuInternal",e.OpenSaveButtonContextMenuInternal="openSaveButtonContextMenuInternal",e.InvokeCustomActionInternal="invokeCustomActionInternal",e.RequestQuitPlatformDialogInternal="requestQuitPlatformDialogInternal",e.GetSavedWorkspace="getSavedWorkspace",e.CreateSavedWorkspace="createSavedWorkspace",e.UpdateSavedWorkspace="updateSavedWorkspace",e.DeleteSavedWorkspace="deleteSavedWorkspace",e.GetSavedWorkspaces="getSavedWorkspaces",e.SaveWorkspace="saveWorkspace",e.GetCurrentWorkspace="getCurrentWorkspace",e.ApplyWorkspace="applyWorkspace",e.SetActiveWorkspace="setActiveWorkspace",e.IsBrowserInitialized="isBrowserInitialized"}(oe||(oe={}));const re=async e=>fin.Platform.wrapSync(e).getClient(),ie=async e=>{const t=await re(e),a="Target is not a Workspace Platform. Target must call WorkspacePlatform.init";let n;try{n=await t.dispatch("isWorkspacePlatform")}catch(e){throw new Error(a)}if(!0!==n?.isWorkspacePlatform)throw new Error(a);return n},se=async e=>(await ie(e),re(e)),ce=async e=>{if(!0!==(await ie(e))?.isBrowserInitialized)throw new Error("Target is not a Browser-enabled Workspace Platform.");return re(e)},de=(e,t)=>!t.find((t=>t===e)),pe=(e,t)=>`${e} (${t})`,le=(e,t)=>{let a=1;const n=e.replace(/ \(.+\)$/,"");for(;!de(pe(n,a),t);)a+=1;return pe(n,a)};async function ue(e){try{const t=Ft();await t.applySnapshot(e.snapshot,{closeExistingWindows:!0}),we(e)}catch(e){}}function we(e){if("undefined"!=typeof localStorage)try{const t=JSON.stringify(e);ae(te.CurrentWorkspaceId,t)}catch(e){}}async function fe(){if("undefined"==typeof localStorage)return;const e=Ft(),t=await e.getSnapshot();return{workspaceId:crypto.randomUUID(),title:await he(),metadata:{APIVersion:T},snapshot:t}}async function ge(){if("undefined"==typeof localStorage)return;const e=ne(te.CurrentWorkspaceId);if(!e)return fe();const t=JSON.parse(e),a=Ft(),n=await a.getSnapshot();return{...t,metadata:{APIVersion:T},snapshot:n}}const ye=async e=>await(async e=>(await se(G)).dispatch(oe.GetSavedWorkspace,e))(e.workspaceId)?(async e=>(await se(G)).dispatch(oe.UpdateSavedWorkspace,e))({workspaceId:e.workspaceId,workspace:e}):(async e=>(await se(G)).dispatch(oe.CreateSavedWorkspace,e))({workspace:e});async function he(e="Untitled Workspace"){const t=(await(async()=>(await se(G)).dispatch(oe.GetSavedWorkspaces,void 0))()).map((({title:e})=>e));return t.find((t=>t===e))?le(e,t):e}async function me(){if("undefined"!=typeof localStorage)try{const e=ne(te.LastFocusedBrowserWindow);if(!e)return;const t=JSON.parse(e);if(await K(t))return t}catch(e){throw new Error(`failed to get last focused browser window: ${e}`)}}function ve(e=fin.me.identity){H(e.name)&&function(e){if("undefined"!=typeof localStorage)try{const t=JSON.stringify(e);ae(te.LastFocusedBrowserWindow,t)}catch(e){}}(e)}const Se=(e,t=0)=>{let a,n,o=!1;const r=async n=>{const i=await e(...n);if(o){await new Promise((e=>setTimeout(e,t)));const e=a;return a=void 0,o=!1,r(e)}return i};return(...e)=>(n?(o=!0,a=e):n=r(e).catch((e=>{throw e})).finally((()=>{n=void 0})),n)};var Pe;!function(e){e.TabCreated="tab-created",e.ContainerCreated="container-created",e.ContainerResized="container-resized"}(Pe||(Pe={}));const be=(e,t)=>e.content?{...e,content:e.content.map((e=>be(e,t)))}:{...e,componentState:t(e.componentState)},ke=e=>({...e,name:e.name?e.name:crypto.randomUUID()}),We=e=>{const t=[];return(e&&Array.isArray(e)?e:[]).forEach((e=>{if("component"===e.type)return t.push(e.componentState);const a=We(e.content);t.push(...a)})),t},Ce=async(e,t,a=G)=>{let n;if(H(a.name)){n=(await F(a).getOptions()).layout||{settings:{}}}return{...n,content:[{type:"stack",content:[{type:"component",componentName:"view",componentState:{title:e,url:t}}]}]}};new Map;function Ie(e,t){return async(a,...n)=>{e.has(a)&&e.get(a).forEach((e=>e(...n))),t&&await t({event:a,payload:n})}}function Ae(e,t){return t&&t((t=>{const{event:a,payload:n}=t;e.has(a)&&e.get(a).forEach((e=>e(...n)))})),(t,a)=>{e.has(t)||e.set(t,new Set),e.get(t).add(a)}}function Me(e){return(t,a)=>{e.has(t)||e.set(t,new Set);const n=e.get(t),o=(...e)=>{a(...e),n.delete(o)};n.add(o)}}function Oe(e){return(t,a)=>{e.has(t)&&e.get(t).delete(a)}}const Te=P&&"complete"!==document.readyState&&new Promise((e=>document.addEventListener("readystatechange",(()=>{"complete"===document.readyState&&e()}))));function Ee(e){let t;return()=>{if(!S)throw new Error("getChannelClient cannot be used outside an OpenFin env. Avoid using this method during pre-rendering.");return t||(t=(async()=>{await Te;const a={clientAPIVersion:T},n=await fin.InterApplicationBus.Channel.connect(e,{payload:a});return n.onDisconnection((async()=>{t=void 0})),n})().then((e=>e)).catch((a=>{throw t=void 0,new Error(`failed to connect to channel provider ${e}: ${a}`)}))),t}}const Be=e=>`__browser_window__-${e.uuid}-${e.name}`,xe=new Map,Re=e=>{const t=Be(e);return xe.has(t)||xe.set(t,Ee(t)),xe.get(t)()};var _e,Le;!function(e){e.CloseBrowserWindow="close-browser-window",e.QuitPlatform="quit-platform",e.ClosePage="close-page",e.AddToChannel="add-to-channel",e.RemoveFromChannel="remove-from-channel",e.OpenSaveModalInternal="open-save-modal-internal",e.DuplicatePage="duplicate-page"}(_e||(_e={})),function(e){e.GetPages="get-pages",e.GetActivePageForWindow="get-active-page-for-window",e.AttachPagesToWindow="attach-pages-to-window",e.DetachPagesFromWindow="detach-pages-from-window",e.SetActivePageForWindow="set-active-page-for-window",e.RenamePage="rename-page",e.ReorderPagesForWindow="reorder-pages-for-window",e.UpdatePageForWindow="update-page-for-window",e.UpdatePagesWindowOptions="update-pages-window-options",e.IsDetachingPages="is-detaching-pages",e.IsActivePageChanging="is-active-page-changing"}(Le||(Le={}));const Ve={..._e,...Le};var De;!function(e){e.AttachedPagesToWindow="attached-pages-to-window",e.DetachedPagesFromWindow="detached-pages-from-window"}(De||(De={}));new Map;const Ue=async e=>{const t=await Re(e);return await t.dispatch(Ve.GetPages)},Fe=async e=>(await Re(e.identity)).dispatch(Ve.UpdatePageForWindow,e),Ge=async()=>{const e=await q();return(await Promise.all(e.map((async({identity:e})=>Ue(e))))).reduce(((e,t)=>e.concat(t)),[])},$e=async()=>(await se(G)).dispatch(oe.GetSavedPages,void 0),Ne=async e=>(await se(G)).dispatch(oe.GetSavedPage,e),je=async(e,t)=>{const a=await(async e=>(await Ge()).find((t=>t.pageId===e)))(e);return!a||a.title===t.title&&e===t.pageId||await Fe({identity:a.parentIdentity,pageId:e,page:{pageId:t.pageId,title:t.title}}),a},He=async({page:e})=>{await je(e.pageId,e),await(async e=>(await se(G)).dispatch(oe.CreateSavedPage,e))({page:e})},qe=async e=>{await Ne(e)&&await(async e=>(await se(G)).dispatch(oe.DeleteSavedPage,e))(e)},Ke=async({pageId:e,page:t})=>{await je(e,t);return await(async e=>(await se(G)).dispatch(oe.UpdateSavedPage,e))({pageId:e,page:t})},Qe=async e=>await Ne(e.pageId)?Ke({pageId:e.pageId,page:e}):He({page:e}),ze=async e=>{await(async e=>(await Re(e.identity)).dispatch(Ve.AttachPagesToWindow,e))(e)},Je=async e=>{await Fe(e)},Xe=async e=>{await(async e=>(await Re(e.identity)).dispatch(Ve.DetachPagesFromWindow,e))(e)},Ye=async e=>{await(async e=>(await Re(e.identity)).dispatch(Ve.SetActivePageForWindow,e))(e)},Ze=e=>Ue(e),et=async({identity:e,pageId:t})=>(await Ze(e)).find((e=>e.pageId===t)),tt=async e=>{await(async e=>(await Re(e.identity)).dispatch(Ve.ReorderPagesForWindow,e))(e)};async function at(e="Untitled Page"){const[t,a]=await Promise.all([$e(),Ge()]),n=[...t,...a].map((({title:e})=>e));return n.find((t=>t===e))?le(e,n):e}const nt=new Map,ot=e=>`${e.uuid}-${e.name}`;const rt=Se((async function(){let e=[];try{e=await Ge()}catch(e){return void nt.forEach(((e,t)=>{clearTimeout(e),nt.delete(t)}))}const t=new Set;e.forEach((e=>{We(e.layout.content).forEach((e=>{if(e.name){const a=ot(e);t.add(a)}}))}));const a=$();(await a.getCurrentViews()).forEach((({identity:e})=>{const a=ot(e);if(t.has(a)||nt.has(a))return;const n=setTimeout((()=>{fin.View.wrapSync(e).destroy(),nt.delete(a)}),5e3);nt.set(a,n)})),nt.forEach(((e,a)=>{t.has(a)&&(clearTimeout(e),nt.delete(a))}))}),2500),it=({name:e})=>{e&&H(e)&&rt().catch((()=>{}))};let st={};const ct=({actionId:e,payload:t})=>{if("function"!=typeof st[e])throw new Error(`Cannot find a configured function for the action '${e}'`);return st[e](t)};function dt(){return localStorage.getItem(te.MachineName)}let pt;async function lt(){return pt||(pt=await fin.System.getMachineId()),pt}const ut=e=>{if(e.layout&&Array.isArray(e.workspacePlatform?.pages)){const t=e.workspacePlatform.pages.find((e=>e.isActive));if(t)if(t.isLocked){const a=((e,t)=>{const a=We(t.content);return{...be(e,(e=>{const t=a.find((t=>t.name===e.name&&t.uuid===e.uuid)),n=t?t.isClosable:e.isClosable;return{...e,isClosable:n}})),settings:t.settings}})(e.layout,t.layout);t.layout=a,e.layout=a}else t.layout=e.layout}return e};async function wt(e){const t=e||await fin.Platform.getCurrentSync().getSnapshot();if(t.snapshotDetails?.machineId)return t;const a=dt();return{...t,snapshotDetails:{...e.snapshotDetails,machineId:await lt(),machineName:a}}}function ft(e){return new Promise(((t,a)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>a(e.error)}))}function gt(e,t){const a=indexedDB.open(e);a.onupgradeneeded=()=>a.result.createObjectStore(t);const n=ft(a);return(e,a)=>n.then((n=>a(n.transaction(t,e).objectStore(t))))}let yt;function ht(){return yt||(yt=gt("keyval-store","keyval")),yt}function mt(e,t=ht()){return t("readonly",(t=>ft(t.get(e))))}function vt(e,t,a=ht()){return a("readwrite",(a=>(a.put(t,e),ft(a.transaction))))}function St(e,t=ht()){return t("readwrite",(t=>(t.delete(e),ft(t.transaction))))}function Pt(e,t){return e.openCursor().onsuccess=function(){this.result&&(t(this.result),this.result.continue())},ft(e.transaction)}function bt(e=ht()){return e("readonly",(e=>{if(e.getAllKeys)return ft(e.getAllKeys());const t=[];return Pt(e,(e=>t.push(e.key))).then((()=>t))}))}const kt=(e,t="")=>e.toLowerCase().includes(t.toLowerCase()),Wt=b&>("openfin-home-pages","pages");async function Ct(e){const t=await mt(e,Wt);return t?(t.pageId=e.toString(),t.title=t.title||t.pageId,t):null}async function It(e){const t=await bt(Wt),a=await Promise.all(t.map((e=>Ct(e.toString()))));return e?a.filter((t=>kt(t.title,e))):a}async function At({page:e}){await vt(e.pageId,e,Wt)}async function Mt(e){await St(e,Wt)}async function Ot({pageId:e,page:t}){if(void 0===await Ct(e))throw new Error("page not found");await At({page:t}),e!==t.pageId&&await Mt(e)}var Tt;!function(e){e.Label="normal",e.Separator="separator",e.Submenu="submenu",e.Checkbox="checkbox"}(Tt||(Tt={}));const Et={type:Tt.Separator,data:void 0};var Bt;!function(e){e.RegisterProvider="register-provider",e.DeregisterProvider="deregister-provider",e.CreateProviderWindow="create-provider-window",e.GetProviders="get-providers",e.ShowProviderWindow="show-provider-window",e.HideProviderWindow="hide-provider-window",e.GetStorefrontProviderApps="get-storefront-provider-apps",e.GetStorefrontProviderLandingPage="get-storefront-provider-landing-page",e.GetStorefrontProviderFooter="get-storefront-provider-footer",e.GetStorefrontProviderNavigation="get-storefront-provider-navigation",e.LaunchStorefrontProviderApp="launch-storefront-provider-app",e.ShowHome="show-home",e.HideHome="hide-home",e.AssignHomeSearchContext="assign-home-search-context",e.GetLegacyPages="get-legacy-pages",e.GetLegacyWorkspaces="get-legacy-workspaces",e.GetComputedPlatformTheme="get-computed-platform-theme",e.RegisterStorefrontProvider="register-storefront-provider",e.DeregisterStorefrontProvider="deregister-storefront-provider",e.HideStorefront="hide-storefront",e.ShowStorefront="show-storefront"}(Bt||(Bt={}));Ee("__of_workspace_protocol__");const xt=async(e,t)=>{const a=await(async e=>({...e,layoutDetails:{machineId:await lt(),machineName:dt()}}))(t);return{pageId:crypto.randomUUID(),title:e,layout:a,isReadOnly:!1,hasUnsavedChanges:!0}},Rt=e=>({identity:e,openfinWindow:fin.Window.wrapSync(e),getPages:async()=>(await ce(e)).dispatch(oe.GetPagesForWindow,e),getPage:async t=>(await ce(e)).dispatch(oe.GetPageForWindow,{identity:e,pageId:t}),addPage:async t=>{const a=await ce(e);t?.title||(t.title=await a.dispatch(oe.GetUniquePageTitle,void 0));const n=(await a.dispatch(oe.GetAllAttachedPages,void 0)).find((e=>e.pageId===t.pageId||e.title===t.title));if(n)throw n.pageId===t.pageId?new Error(`page with id ${t.pageId} is already attached to a browser window ${n.parentIdentity.name}`):new Error(`page with title ${t.title} is already attached to a browser window ${n.parentIdentity.name}`);const o={identity:e,pages:[t]};return a.dispatch(oe.AttachPagesToWindow,o)},removePage:async t=>(await ce(e)).dispatch(oe.DetachPagesFromWindow,{identity:e,pageIds:[t]}),setActivePage:async t=>(await ce(e)).dispatch(oe.SetActivePage,{identity:e,pageId:t}),updatePage:async t=>{const a=await ce(e);return t.identity=e,a.dispatch(oe.UpdatePageForWindow,t)},reorderPages:async t=>{const a=await ce(e);return t.identity=e,a.dispatch(oe.ReorderPagesForWindow,t)},_openGlobalContextMenu:async t=>{const a=await ce(e);return t.identity=e,a.dispatch(oe.OpenGlobalContextMenuInternal,t)},replaceToolbarOptions:async t=>{await ce(e);const a=fin.Window.wrapSync(e);await a.updateOptions({workspacePlatform:{toolbarOptions:t}})},replaceWindowStateButtonOptions:async t=>{await ce(e);const a=fin.Window.wrapSync(e);await a.updateOptions({workspacePlatform:{windowStateButtonOptions:t}})},_openViewTabContextMenu:async t=>{const a=await ce(e);return t.identity=e,a.dispatch(oe.OpenViewTabContextMenuInternal,t)},_openPageTabContextMenu:async t=>{const a=await ce(e);return t.identity=e,a.dispatch(oe.OpenPageTabContextMenuInternal,t)},_openSaveModal:async t=>{await ce(e);return(await Re(e)).dispatch(Ve.OpenSaveModalInternal,t)},_openSaveButtonContextMenu:async t=>{const a=await ce(e);return t.identity=e,a.dispatch(oe.OpenSaveButtonContextMenuInternal,t)}});let _t=!1;const Lt=e=>{const t=fin.Platform.wrapSync(e);return{wrapSync:e=>Rt(e),createWindow:async a=>{await ce(e),_t||(_t=!0,(async e=>{J(z.Browser,e)})({allowed:!0}));const n=await t.createWindow(a);return Rt(n.identity)},getAllAttachedPages:async()=>(await ce(e)).dispatch(oe.GetAllAttachedPages,void 0),getAllWindows:async()=>{await ce(e);return(await fin.Application.wrapSync(e).getChildWindows()).filter((e=>e.identity.name.includes("internal-generated-window-"))).map((e=>Rt(e.identity)))},getUniquePageTitle:async t=>(await ce(e)).dispatch(oe.GetUniquePageTitle,t),getLastFocusedWindow:async()=>(await ce(e)).dispatch(oe.GetLastFocusedBrowserWindow,void 0)}},Vt=e=>({createPage:async t=>(await ce(e)).dispatch(oe.CreateSavedPageInternal,t),deletePage:async t=>(await ce(e)).dispatch(oe.DeleteSavedPageInternal,t),updatePage:async t=>(await ce(e)).dispatch(oe.UpdateSavedPageInternal,t),getPage:async t=>(await ce(e)).dispatch(oe.GetSavedPage,t),getPages:async t=>(await ce(e)).dispatch(oe.GetSavedPages,t),savePage:async t=>(await ce(e)).dispatch(oe.SavePage,t),createWorkspace:async t=>(await se(e)).dispatch(oe.CreateSavedWorkspace,t),deleteWorkspace:async t=>(await se(e)).dispatch(oe.DeleteSavedWorkspace,t),updateWorkspace:async t=>(await se(e)).dispatch(oe.UpdateSavedWorkspace,t),getWorkspace:async t=>(await se(e)).dispatch(oe.GetSavedWorkspace,t),getWorkspaces:async t=>(await se(e)).dispatch(oe.GetSavedWorkspaces,t),saveWorkspace:async t=>(await se(e)).dispatch(oe.SaveWorkspace,t)}),Dt=e=>({getThemes:async()=>(await se(e)).dispatch(oe.GetThemes,void 0)}),Ut=e=>{const t=fin.Platform.wrapSync(e);return Object.assign(t,{applySnapshot:async(t,a)=>{if("string"!=typeof t&&!t?.windows)throw new Error("Not a valid browser snapshot");return fin.Platform.wrapSync(e).applySnapshot(t,a)},getSnapshot:()=>fin.Platform.wrapSync(e).getSnapshot().then((e=>e)),launchApp:async t=>{t.target||(t.target={uuid:W,name:C,entityType:I||"unknown"});return(await se(e)).dispatch(oe.LaunchApp,t)},_invokeCustomAction:async(t,a)=>{const n=await se(e),o={actionId:t,payload:{...a,callerType:a.callerType||h.API}};return n.dispatch(oe.InvokeCustomActionInternal,o)},_requestQuitPlatformDialog:async t=>(await se(e)).dispatch(oe.RequestQuitPlatformDialogInternal,t),getCurrentWorkspace:async()=>(await se(e)).dispatch(oe.GetCurrentWorkspace,void 0),applyWorkspace:async t=>(await se(e)).dispatch(oe.ApplyWorkspace,t),setActiveWorkspace:async t=>(await se(e)).dispatch(oe.SetActiveWorkspace,t),Theme:Dt(e),Browser:Lt(e),Storage:Vt(e)})},Ft=()=>Ut(fin.me.identity),Gt=async(e=G)=>{const{workspacePlatform:t}=await F(e).getOptions(),a=t?.newPageUrl,n=t?.newTabUrl;return{newPageUrl:a,newTabUrl:n}},$t=async(e=G)=>{const t=await Ft().Browser.getUniquePageTitle("Untitled Page"),a=await(async(e=G)=>{const{newPageUrl:t}=await Gt(e);if(!t)throw new Error("Trying to create a new page without a newPageUrl set");return Ce("New Tab",t,e)})(e);return xt(t,a)},Nt={type:Tt.Label,label:"Close Window",data:{type:u.CloseWindow}},jt={type:Tt.Label,label:"Open Storefront",data:{type:u.OpenStorefront}},Ht={type:Tt.Label,label:"Quit Platform",data:{type:u.Quit}},qt={type:Tt.Label,label:"New Window",data:{type:u.NewWindow}},Kt={type:Tt.Label,label:"Save Page",data:{type:u.SavePage}},Qt={type:Tt.Label,label:"Save Page As...",data:{type:u.SavePageAs}},zt={type:Tt.Label,label:"Restore to Last Saved Changes",data:{type:u.RestoreChanges}},Jt={type:Tt.Label,label:"Save Workspace",data:{type:u.SaveWorkspace}},Xt={type:Tt.Label,label:"Save Workspace As...",data:{type:u.SaveWorkspaceAs}},Yt={type:Tt.Label,label:"Rename Workspace",data:{type:u.RenameWorkspace}},Zt="Switch Workspace",ea="Delete Workspace",ta=[Nt,Et,jt,Et,Ht],aa=[Et,Nt,Et,Ht],na=(e,t,a)=>t.map((t=>{const n=t.workspaceId===e.workspaceId;return{label:t.title,type:Tt.Checkbox,enabled:!n,checked:n,data:{type:a,workspaceId:t.workspaceId}}})),oa=async e=>{const t=await Q(),{newPageUrl:a}=await Gt(e),n=await(async e=>{const t=F(e),{workspacePlatform:a}=await t.getOptions();return a?.disableMultiplePages})(e),o=await(async e=>{const t=F(e),{workspacePlatform:a}=await t.getOptions();return a?.isLocked})(e),r=[];var i;a&&(r.push(qt),n||r.push((i=!o,{type:Tt.Label,label:"New Page",data:{type:u.NewPage},enabled:i}))),r.push(Et);const s=Ft(),c=await s.getCurrentWorkspace(),d=await s.Storage.getWorkspaces(),p=d.find((e=>e.workspaceId===c.workspaceId));return p?r.push(zt):r.push({label:zt.label,enabled:!1}),r.push(Jt,Xt),p?r.push(Yt):r.push({label:Yt.label,enabled:!1}),d.some((e=>e.workspaceId!==c.workspaceId))?r.push({label:Zt,submenu:na(c,d,u.SwitchWorkspace)},{label:ea,submenu:na(c,d,u.DeleteWorkspace)}):r.push({label:Zt,enabled:!1},{label:ea,enabled:!1}),r.push(Et,Kt,Qt),t?[...r,...ta]:[...r,...aa]};let ra="Platform";const ia=async()=>ra;var sa,ca,da;!function(e){e.Home="/home/",e.HomeSearch="/home/?deeplink=search",e.HomePagesRename="/home/pages/rename/",e.Dock="/dock/",e.BrowserPagesLanding="/browser/pages/landing/",e.HomeIndicator="/home/indicator/",e.Browser="/browser/",e.BrowserPopupMenu="/browser/popup-menu/",e.Provider="/provider/",e.BrowserPopupMenuSharePage="/browser/popup-menu/share-page/",e.BrowserPopupMenuSaveModal="/browser/popup-menu/save-modal/",e.BrowserPopupMenuLayouts="/browser/popup-menu/layouts/layouts/",e.BrowserPopupMenuColorLinking="/browser/popup-menu/color-linking/color-linking/",e.BrowserIndicator="/browser/indicator/",e.ResponseModal="/browser/popup-menu/response-modal/",e.Docs="/provider/docs/",e.Storefront="/storefront/",e.DeprecatedAlert="/provider/deprecated-alert/"}(sa||(sa={})),function(e){e.IconOpenFinLogo="/icons/openfinlogo.svg",e.IconFilter="/icons/filter.svg"}(ca||(ca={})),function(e){e.Search="search"}(da||(da={}));const pa={...ca,...sa};var la;!function(e){e.Home="/home",e.Browser="/browser",e.Provider="/provider",e.Storefront="/storefront",e.Dock="/dock"}(la||(la={}));const ua="/workspace/9.0.11";function wa(){return ua.substring(0,ua.length-"".length)}function fa(e){if(!P)throw new Error("getAbsoluteRoutePath can only be used in a window");return function(){if(!window)throw new Error("getAbsoluteBasePath can only be used in a window");return`${window.origin}${wa()}`}()+e}const ga={name:V.BrowserMenu,alwaysOnTop:!0,autoShow:!1,frame:!1,resizable:!1,backgroundColor:"#2f3136",smallWindow:!0,showTaskbarIcon:!1,backgroundThrottling:!0};function ya(e){const t={...ga,...e};return t.url=function(e){if(!P)throw new Error("resolveAbsolutePath can only be used in a window");return e.startsWith("http")?e:`${window.origin}${e}`}(t.url),t}var ha,ma;!function(e){e.Update="update",e.Response="response"}(ha||(ha={})),function(e){e.Canceled="canceled",e.Negative="negative",e.Affirmative="affirmative"}(ma||(ma={}));const va=function(e){const t=new Map;return{emit:Ie(t,(t=>S&&fin.InterApplicationBus.publish(e,t))),addListener:Ae(t,(t=>S&&fin.InterApplicationBus.subscribe({uuid:fin.me.uuid},e,t))),removeListener:Oe(t),once:Me(t)}}("window.menu"),Sa=e=>va.emit(ha.Response,e),Pa=Se((()=>L().getChildWindows()),500);const ba=new Map;async function ka({options:e,parameters:t},a){const n=ya(e),{name:o}=n;let r=await async function(e){return(await Pa()).find((t=>t.identity.name===e))}(o);return r||(r=await async function(e){const t=ya(e);if(!ba.has(t.name)){const e=(async()=>{const e=await fin.Platform.getCurrentSync().createWindow(t);return e.once("closed",(()=>{ba.delete(t.name)})),e})();ba.set(t.name,e)}return ba.get(t.name)}(n)),await async function(e,t){const a=ya(e),{top:n,left:o,defaultWidth:r,defaultHeight:i}=a,s={top:n,left:o,width:r,height:i},c={parentName:fin.Window.getCurrentSync().identity.name};for(const[e,a]of Object.entries(c))t.set(e,a);const d=t.toString(),p=`${a.url}?${d}`;va.emit(ha.Update,a.name,s,p),await Sa({name:a.name,data:ma.Canceled})}(e,t||new URLSearchParams),a&&r.center(),r}const Wa=async(e,t,a)=>{const n=t?F(t):$();if(!a){await(async(e=fin.me.identity)=>{const t=F(e),a=await t.getBounds();(a.right>screen.availLeft+screen.width||a.left<screen.availLeft||a.bottom>screen.availTop+screen.height||a.top<screen.availTop)&&await t.center()})(n.identity);const t=(e=>({left:(e.left+e.right)/2,top:(e.top+e.bottom)/2}))(await n.getBounds()),{defaultHeight:a,defaultWidth:o}=e;return((e,t)=>{const{height:a,width:n}=t,o=n/2,r=a/2;return{left:e.left-o,top:e.top-r}})(t,{height:a,width:o})}return await n.getBounds()},Ca=async({options:e,content:t},a)=>{const n=new URLSearchParams({...t});return await ka({options:e,parameters:n},a),new Promise((t=>{va.once(ha.Response,(a=>{a.name===e.name&&t(a)}))}))},Ia=async(e,t)=>{const{windowOptions:a,content:n}=await(async(e,t)=>({title:"Switch Workspace",windowOptions:{url:M+pa.ResponseModal,name:V.BrowserMenu,defaultHeight:112,defaultWidth:424,modalParentIdentity:e},content:{title:`Are you sure you want to switch to ${t}`,body:"Any unsaved changes will be discarded",affirmativeButton:"Confirm",negativeButton:"Cancel"}}))(e,t),o=await Wa(a,a.modalParentIdentity),r={...a,top:o.top,left:o.left};return(await Ca({options:r,content:n})).data===ma.Affirmative},Aa=async(e,t)=>{const{windowOptions:a,content:n}=await(async(e,t)=>({title:"Delete Workspace",windowOptions:{url:M+pa.ResponseModal,name:V.BrowserMenu,defaultHeight:144,defaultWidth:372,modalParentIdentity:e},content:{title:"Are you sure you want to permanently delete this workspace?",body:`${t}`,affirmativeButton:"Confirm",negativeButton:"Cancel"}}))(e,t),o=await Wa(a,a.modalParentIdentity),r={...a,top:o.top,left:o.left};return(await Ca({options:r,content:n})).data===ma.Affirmative},Ma=async(e,t,a)=>{const n=a?void 0:e,{windowOptions:o,content:r}=await(async(e,t)=>({title:"Platform Quit",windowOptions:{url:M+pa.ResponseModal,name:V.BrowserMenu,defaultHeight:134,defaultWidth:474,modalParentIdentity:t},content:{title:`Close the ${"Platform"===e?"platform":`${e} Platform`}?`,body:"Closing a platform will close any workspaces, apps or any processes that are running.",affirmativeButton:"Confirm",negativeButton:"Cancel"}}))(t,n),i=await Wa(o,o.modalParentIdentity),s={...o,top:i.top,left:i.left};return(await Ca({options:s,content:r},a)).data===ma.Affirmative},Oa=async e=>{const{windowOptions:t,content:a}=await(async e=>({title:"Restore Changes",windowOptions:{url:M+pa.ResponseModal,name:V.BrowserMenu,defaultHeight:112,defaultWidth:424,modalParentIdentity:e},content:{title:"Are you sure you want to restore to last saved changes?",body:"Any unsaved changes will be discarded",affirmativeButton:"Confirm",negativeButton:"Cancel"}}))(e),n=await Wa(t,t.modalParentIdentity),o={...t,top:n.top,left:n.left};return(await Ca({options:o,content:a})).data===ma.Affirmative};var Ta;!function(e){e.ERROR="error",e.SUCCESS="success",e.INFO="info"}(Ta||(Ta={}));const Ea={alwaysOnTop:!0,autoShow:!1,frame:!1,resizable:!1,showTaskbarIcon:!1};var Ba;!function(e){e.Locked="LockClosedIcon",e.Unlocked="LockOpen1Icon"}(Ba||(Ba={}));const xa=function(e=Ea){const t=new Map;return async(a,n,o,r)=>{if(t.has(a)){const{currentUrl:e,currentName:o}=t.get(a);if(e===n)return;const r=fin.Window.wrapSync({uuid:fin.me.uuid,name:o});await r.close()}const i=`${V.HomeInternal}-${Date.now()}${Math.random()}`;t.set(a,{currentUrl:n,currentName:i});const s=await fin.Platform.getCurrentSync().createWindow({...e,name:i,url:n});((e,t)=>{const a=document.createElement("div");a.setAttribute("aria-live",t||"polite"),(e=>{e.style.position="absolute",e.style.width="1px",e.style.height="1px",e.style.padding="0",e.style.margin="-1px",e.style.overflow="hidden",e.style.whiteSpace="nowrap",e.style.border="0"})(a),document.body.appendChild(a),setTimeout((()=>{a.innerHTML=e}),100),setTimeout((()=>{document.body.removeChild(a)}),1e3)})(`New ${r} indicator: ${o}`),s.once("closed",(()=>{t.delete(a)}))}}();async function Ra(e,t,a,n){const o=new URLSearchParams;o.append("type",e),o.append("message",t),o.append("parentName",a||""),o.append("icon",n||"");const r=`${fa(pa.BrowserIndicator)}?${o.toString()}`;return xa("browser"+a,r,t,e)}function _a(e,t,a){return Ra(Ta.SUCCESS,e,t,a)}const La=async e=>{const t=Ft(),a=await t.getCurrentWorkspace(),n=await t.Storage.getWorkspaces(),o=a.workspaceId;if(n.some((e=>e.workspaceId===o)))t.Storage.saveWorkspace(a),t.setActiveWorkspace(a),_a("Workspace Saved",e.name);else{t.Browser.wrapSync(e)._openSaveModal({menuType:m.SAVE_WORKSPACE})}},Va=e=>{Ft().Browser.wrapSync(e)._openSaveModal({menuType:m.SAVE_WORKSPACE_AS})},Da=async(e,t)=>{const a=Ft().Browser.wrapSync(e),n=await Ft().Storage.getPages(),o=(await a.getPages()).find((e=>t?e.pageId===t:e.isActive)),r=n.some((e=>o.pageId===e.pageId));if(r)try{await Ft().Storage.savePage((d=o,{...d,hasUnsavedChanges:void 0,parentIdentity:void 0,isActive:void 0})),await a.updatePage({pageId:o.pageId,page:{hasUnsavedChanges:!1}}),_a("Page saved",o.parentIdentity.name)}catch{i="Page failed to save",s=o.parentIdentity.name,Ra(Ta.ERROR,i,s,c)}else a._openSaveModal({id:o.pageId,menuType:m.SAVE_PAGE});var i,s,c,d},Ua=async(e,t)=>{const a=Ft().Browser.wrapSync(e),n=(await a.getPages()).find((e=>t?e.pageId===t:e.isActive));a._openSaveModal({id:n.pageId,menuType:m.SAVE_PAGE_AS})},Fa=async(e,t)=>{if(!e)return;const a=t.identity,n=await Re(a),o=Ft().Browser.wrapSync(t.identity);switch(e.type){case u.NewWindow:const{newPageUrl:t}=await Gt(a);if(!t)throw new Error("Trying to create a new empty window without a newPageUrl set");Ft().createView({target:void 0,url:t});break;case u.NewPage:await(async e=>{const t=Ft().Browser.wrapSync(e),a=await $t(e);await t.addPage(a),await t.setActivePage(a.pageId)})(a);break;case u.CloseWindow:n.dispatch(Ve.CloseBrowserWindow);break;case u.SaveWorkspace:await La(a);break;case u.SavePage:await Da(a);break;case u.SavePageAs:await Ua(a);break;case u.SaveWorkspaceAs:await Va(a);break;case u.RenameWorkspace:o._openSaveModal({menuType:m.RENAME_WORKSPACE});break;case u.SwitchWorkspace:await(async(e,t)=>{const a=Ft(),n=(await a.Storage.getWorkspaces()).find((e=>e.workspaceId===t.workspaceId));n&&await Ia(e,n.title)&&(await a.applyWorkspace(n),_a("Workspace Switched!",null))})(a,e);break;case u.DeleteWorkspace:await(async(e,t)=>{const a=Ft(),n=(await a.Storage.getWorkspaces()).find((e=>e.workspaceId===t.workspaceId));n&&await Aa(e,n.title)&&(await a.Storage.deleteWorkspace(t.workspaceId),_a("Workspace Deleted!",e.name))})(a,e);break;case u.Quit:const r=await ia();await Ma(a,r)&&fin.Platform.getCurrentSync().quit();break;case u.OpenStorefront:(async()=>{await Q()&&j(N)})();break;case u.RestoreChanges:const i=await async function(){const e=Ft(),t=await e.getCurrentWorkspace();return(await e.Storage.getWorkspaces()).find((e=>e.workspaceId===t.workspaceId))}();await Oa(a)&&await ue(i);break;case u.Custom:if(e.action){const t={callerType:h.GlobalContextMenu,windowIdentity:a,customData:e.action.customData};Ft()._invokeCustomAction(e.action.id,t)}}},Ga=async(e,t)=>{const a=await Re(t.identity),n=Ft();switch(e?.type){case w.Save:await Da(t.identity,t.pageId);break;case w.SaveAs:await Ua(t.identity,t.pageId);break;case w.Rename:await n.Browser.wrapSync(t.identity)._openSaveModal({menuType:m.RENAME_PAGE,id:t.pageId});break;case w.Duplicate:a.dispatch(Ve.DuplicatePage,t.pageId);break;case w.Close:a.dispatch(Ve.ClosePage,t.pageId);break;case w.Custom:if(e.action){const a={callerType:h.PageTabContextMenu,windowIdentity:t.identity,pageId:t.pageId,customData:e.action.customData};Ft()._invokeCustomAction(e.action.id,a)}}},$a=async(e,t)=>{if(e?.type){const a=t.identity;switch(e.type){case y.SavePage:await Da(a);break;case y.SaveWorkspace:await La(a);break;case y.SavePageAs:await Ua(a);break;case y.SaveWorkspaceAs:await Va(a);break;case y.Custom:if(e.action){const a={callerType:h.SaveButtonContextMenu,windowIdentity:t.identity,pageId:t.pageId,customData:e.action.customData};Ft()._invokeCustomAction(e.action.id,a)}}}},Na=async(e,t)=>{const a=t.selectedViews[0],n=fin.View.wrapSync(a),o=await(async e=>{const{newTabUrl:t}=await Gt(e);if(!t)throw new Error("Trying to create a new page without a newTabUrl set");return{...Ce("New View",t),url:t,target:e}})(e);await Ft().createView(o,e,n.identity)},ja=async(e,t)=>{const a=await(e=>Promise.all(e.map((async e=>fin.View.wrapSync(e).getInfo()))))(t),{newPageUrl:n,newTabUrl:o}=await Gt(e);a.forEach((async e=>{e.url!==n&&e.url!==o&&await fin.System.openUrlWithBrowser(e.url)}))},Ha=(e,t)=>{t.forEach((async t=>{const a=fin.View.wrapSync(t);await(async(e,t)=>{const{url:a}=await t.getInfo(),n={...await t.getOptions(),url:a,target:e,name:void 0};await Ft().createView(n,e,t.identity)})(e,a)}))},qa=async(e,t)=>{if(!e)return;const a=t.identity;switch(e.type){case f.CloseViews:await(async(e,t)=>{if((await fin.Window.wrapSync(e).getCurrentViews()).length!==t.length)t.forEach((async e=>{const t=fin.View.wrapSync(e);await t.destroy()}));else{const t=(await Ft().Browser.wrapSync(e).getPages()).find((e=>e.isActive));(await Re(e)).dispatch(Ve.ClosePage,t?.pageId)}})(a,t.selectedViews);break;case f.OpenWithDefaultBrowser:await ja(a,t.selectedViews);break;case f.ReloadViews:t.selectedViews.forEach((async e=>{const t=fin.View.wrapSync(e);await t.reload()}));break;case f.NewView:await Na(a,t);break;case f.DuplicateViews:Ha(a,t.selectedViews);break;case f.AddToChannel:(async(e,t,a)=>{const n={newChannelId:t,selectedViews:a};(await Re(e)).dispatch(Ve.AddToChannel,n)})(a,e.option,t.selectedViews);break;case f.RemoveFromChannel:(async(e,t)=>{(await Re(e)).dispatch(Ve.RemoveFromChannel,t)})(a,t.selectedViews);break;case f.Custom:if(e.action){const n={callerType:h.ViewTabContextMenu,windowIdentity:a,selectedViews:t.selectedViews,customData:e.action.customData};Ft()._invokeCustomAction(e.action.id,n)}}};async function Ka(e,t){const a=await oa(e.identity),n=await ia();a.find((e=>e.data?.type===u.Quit)).label=`Quit ${n}`;const o={...e,template:a,callback:Fa};await this.openGlobalContextMenu(o,t)}const Qa=async(e,t)=>{const{x:a,y:n,identity:o,template:r,callback:i}=e,{data:s}=await function(e,t){if(!S)throw new Error("showContextMenu can only be used in an OpenFin env. Avoid calling this method during pre-rendering.");if(!t&&!fin.me.isWindow)throw new Error("showContextMenu can only be used in an OpenFin window.");return(t||fin.Window.getCurrentSync()).showPopupMenu(e)}({x:a,y:n,template:r},fin.Window.wrapSync(o));i(s,e)};async function za(e,t){const a={...e,callback:qa};await this.openViewTabContextMenu(a,t)}async function Ja(e,t){const a=await(async(e,t)=>{const a=await Ft().Storage.getPage(e),n=(await Ge()).find((t=>t.pageId===e)),{workspacePlatform:o}=await F(t).getOptions(),r=!(o.isLocked||o.preventPageClose||n.closeButton?.disabled||n.closeButton?.hidden);return[{type:Tt.Label,label:"Save Page",data:{type:w.Save}},{type:Tt.Label,label:"Save Page As",data:{type:w.SaveAs}},Et,{type:Tt.Label,label:"Rename Page",data:{type:w.Rename},enabled:!!a},{type:Tt.Label,label:"Duplicate Page",data:{type:w.Duplicate},enabled:!o.isLocked},Et,{type:Tt.Label,label:"Close Page",data:{type:w.Close},enabled:r}]})(e.pageId,e.identity),n={...e,template:a,callback:Ga};await this.openPageTabContextMenu(n,t)}async function Xa(e,t){const a={...e,template:await(async()=>[{type:Tt.Label,label:"Save Workspace",data:{type:y.SaveWorkspace}},{type:Tt.Label,label:"Save Workspace As",data:{type:y.SaveWorkspaceAs}},{type:Tt.Separator,data:void 0},{type:Tt.Label,label:"Save Page",data:{type:y.SavePage}},{type:Tt.Label,label:"Save Page As",data:{type:y.SavePageAs}}])(),callback:$a};await this.openSaveButtonContextMenu(a,t)}const Ya=b&>("openfin-workspace-platform-workspaces","workspaces");async function Za(e){const t=await mt(e,Ya);return t?(t.workspaceId=e.toString(),t.title=t.title||t.workspaceId,t):null}async function en(e){const t=await bt(Ya),a=await Promise.all(t.map((e=>Za(e.toString()))));return e?a.filter((t=>kt(t.title,e))):a}async function tn({workspace:e}){await vt(e.workspaceId,e,Ya)}async function an(e){await St(e,Ya)}async function nn({workspaceId:e,workspace:t}){if(void 0===await Za(e))throw new Error("workspace not found");await tn({workspace:t}),e!==t.workspaceId&&await an(e)}async function on({app:e,target:t}){const a=fin.Platform.getCurrentSync();switch(e.manifestType){case c.Snapshot:return a.applySnapshot(e.manifest);case c.View:return async function(e,t){const a=fin.Platform.getCurrentSync();if("view"===t.entityType){const a=fin.View.wrapSync(t),n=await a.getParentLayout();return await n.replaceView(t,{manifestUrl:e.manifest,url:void 0,target:void 0}),a.destroy()}return a.createView({name:void 0,url:void 0,manifestUrl:e.manifest,target:void 0})}(e,t);case c.External:return fin.System.launchExternalProcess({path:e.manifest,uuid:e.appId});default:return fin.Application.startFromManifest(e.manifest)}}const rn=e=>e&&"object"==typeof e&&!Array.isArray(e);function sn(e,...t){if(!t.length)return e;const a=t.shift();return rn(e)&&rn(a)&&Object.entries(a).forEach((([t,a])=>{if(rn(a))return e[t]||(e[t]={}),sn(e[t],a);e[t]=a})),sn(e,...t)}const cn=M+pa.Browser;function dn(e,t){const a=sn({},t,e);return a.detachOnClose=!0,a}async function pn(e,t,a){const n=e.manifestUrl?await t({manifestUrl:e.manifestUrl},a):void 0;if(n?.interop&&e.interop){const t={...e,...n,interop:e.interop};return delete t.manifestUrl,t}return e}const ln=e=>{const t=e.name===V.Home,a=e.name?.startsWith(V.HomeInternal),n=e.name?.startsWith(V.BrowserMenu);return!t&&!a&&!n},un=e=>"workspacePlatform"in e?e:(({workstacks:e,pages:t,...a})=>({...a,workspacePlatform:{pages:t||e||null}}))(e),wn={contextMenuSettings:{reload:!1},backgroundThrottling:!0,url:cn,contextMenu:!0,closeOnLastViewRemoved:!1,experimental:{showFavicons:!0,defaultFaviconUrl:`${M}/icons/defaultFavicon.svg`},permissions:{System:{openUrlWithBrowser:{enabled:!0,protocols:["mailto"]}}}},fn={dimensions:{borderWidth:3,headerHeight:30}},gn=async(e,t)=>{const a=await Ft().Storage.getPages(),n=await Ft().Browser.getAllAttachedPages();return e.map((e=>{let o=e.title;void 0===e.pageId&&(e.pageId=crypto.randomUUID());const r=a.find((e=>e.title===o));return(r&&r.pageId!==e.pageId||n.find((e=>e.title===o)))&&(o=le(e.title,[...a,...n].map((e=>e.title)))),n.push({...e,title:o}),{...t,...e,title:o,layout:(i=e.layout,be({...i},ke))};var i}))};var yn;!function(e){e.Browser="browser",e.Platform="platform",e.Classic="classic",e.Mixed="mixed"}(yn||(yn={}));const hn=e=>{const t=fin.Window.wrapSync(e);return Promise.all([t.bringToFront(),t.restore(),t.focus()])};async function mn(e){const t=(await q()).map((async e=>{const t=await e.getOptions();t.workspacePlatform?.pages&&t.layout&&await(async e=>(await Re(e)).dispatch(Ve.UpdatePagesWindowOptions))(e.identity)}));return await Promise.all(t),e?e():wt()}const vn=async e=>{await Ma(fin.me.identity,e.title??await ia(),e.shouldCenterOnMonitor)&&fin.Platform.getCurrentSync().quit()};let Sn=[];const Pn=()=>Sn;const bn=(e,t)=>async a=>{const n=null!==e;class o extends a{constructor(){super(),this.isWorkspacePlatform=()=>({isWorkspacePlatform:!0,isBrowserInitialized:!!e}),this.addPage=this.attachPagesToWindow,this.detachPagesFromWindow=Xe,this.getAllAttachedPages=Ge,this.getPagesForWindow=Ze,this.getPageForWindow=et,this.setActivePage=Ye,this.launchApp=on,this.savePage=Qe,this.saveWorkspace=ye,this.createSavedPageInternal=He,this.updateSavedPageInternal=Ke,this.deleteSavedPageInternal=qe,this.reorderPagesForWindow=tt,this.getUniquePageTitle=at,this.updatePageForWindow=Je,this.getLastFocusedBrowserWindow=me,this.getThemes=Pn,this.invokeCustomActionInternal=ct,this.requestQuitPlatformDialogInternal=vn,this.getCurrentWorkspace=ge,this.applyWorkspace=ue,this.setActiveWorkspace=we,this.openGlobalContextMenuInternal=this.openGlobalContextMenuInternal.bind(this),this.openGlobalContextMenu=this.openGlobalContextMenu.bind(this),this.getSavedPages=this.getSavedPages.bind(this),this.getSavedPage=this.getSavedPage.bind(this),this.createSavedPage=this.createSavedPage.bind(this),this.updateSavedPage=this.updateSavedPage.bind(this),this.deleteSavedPage=this.deleteSavedPage.bind(this),this.attachPagesToWindow=this.attachPagesToWindow.bind(this),this.openViewTabContextMenuInternal=this.openViewTabContextMenuInternal.bind(this),this.openViewTabContextMenu=this.openViewTabContextMenu.bind(this),this.openPageTabContextMenuInternal=this.openPageTabContextMenuInternal.bind(this),this.openPageTabContextMenu=this.openPageTabContextMenu.bind(this),this.getSavedWorkspaces=this.getSavedWorkspaces.bind(this),this.getSavedWorkspace=this.getSavedWorkspace.bind(this),this.createSavedWorkspace=this.createSavedWorkspace.bind(this),this.updateSavedWorkspace=this.updateSavedWorkspace.bind(this),this.deleteSavedWorkspace=this.deleteSavedWorkspace.bind(this),this.getCurrentWorkspace=this.getCurrentWorkspace.bind(this),this.applyWorkspace=this.applyWorkspace.bind(this),this.setActiveWorkspace=this.setActiveWorkspace.bind(this),this.openSaveButtonContextMenu=this.openSaveButtonContextMenu.bind(this),this.openSaveButtonContextMenuInternal=this.openSaveButtonContextMenuInternal.bind(this)}async getSnapshot(){const e=n?await mn((async()=>wt(await super.getSnapshot(void 0,fin.me.identity)))):await wt(await super.getSnapshot(void 0,fin.me.identity));return{...e,windows:e.windows.filter(ln).map(ut)}}async applySnapshot({snapshot:e,options:t}){const a=e=>super.applySnapshot({snapshot:e,options:{...t,closeExistingWindows:!1}});let o=e;"string"==typeof o&&(o=await super.fetchManifest({manifestUrl:o},fin.me.identity));const r=function(e){let t=!1,a=!1;for(const n of e.windows){if(t&&a)break;n.workspacePlatform?.pages?.length?a=!0:n.layout&&(t=!0)}return t&&a?yn.Mixed:t?yn.Platform:a?yn.Browser:e.windows.length?yn.Classic:null}(o);if(r===yn.Mixed)throw new Error("This snapshot cannot be applied as it contains a mixture of browser and platform windows.");if(n)yn.Platform;else if(r===yn.Browser)throw new Error("This snapshot cannot be applied as the platform has been initialized without the browser.");return t?.closeExistingWindows&&await async function(){const e=await q();await Promise.all(e.map((e=>e.close(!0).catch((()=>{})))))}(),n?async function(e,t){const a=await Ge(),n=e.snapshotDetails?.monitorInfo||await fin.System.getMonitorInfo(),[o,r]=(e.windows||[]).reduce((([e,t],a)=>a?.workspacePlatform?.pages?.length?[[...e,a],t]:[e,[...t,a]]),[[],[]]),i=new Map;a.forEach((e=>i.set(e.pageId,e)));const s=[],c=o.map((async e=>{const t=un(e),a=[],n=(e=>{let t=!1;const a=(e||[]).map((e=>{const a=function({id:e,name:t,...a}){return{pageId:e,title:t,...a}}(e);return t&&a.isActive&&(a.isActive=!1),a.isActive&&(t=!0),a}));return!t&&a.length&&(a[0].isActive=!0),a})(t?.workspacePlatform?.pages);if(!n?.length){const e=await at();a.push(await xt(e,t.layout))}let o;n.forEach((e=>{const t=i.get(e.pageId);t?o=t:a.push(e)})),o&&await Promise.all([Ye({identity:o.parentIdentity,pageId:o.pageId}),hn(o.parentIdentity)]),a.length&&s.push({...t,workspacePlatform:{...t.workspacePlatform,pages:a}})}));if(await Promise.all(c),!s.length&&!r.length)return;const d=fin.Platform.getCurrentSync();return(t||d.applySnapshot.bind(d))({...e,snapshotDetails:{...e.snapshotDetails,monitorInfo:n},windows:[...s,...r]})}(o,a):a(o)}async createWindow(t,a){t.workspacePlatform?.toolbarOptions?.buttons&&(e=>{const t=e.filter((e=>e.type!==g.Custom)),a=new Set;for(const e of t){if(a.has(e.type))throw new Error(`Encountered a duplicate of ${e.type} button. No more than one instance of a button type may be provided.`);a.add(e.type)}})(t.workspacePlatform.toolbarOptions.buttons);let o=un(t);if(n){const t=this.getThemes();o=await(async(e,t,a)=>{let n=e;const o=n?.workspacePlatform?.pages;if(o){const e=o.find((e=>e.isActive));e?n.layout=e.layout:(o[0].isActive=!0,n.layout=o[0].layout)}if(n.layout){if(n=sn({},t.defaultWindowOptions,n,wn),n.layout=sn(n.layout,fn),(n.icon||n.taskbarIcon)&&(n.taskbarIconGroup=n.taskbarIconGroup||fin.me.identity.uuid),!n.backgroundColor){const e=a?.palette;n.backgroundColor=e?.background2||e?.backgroundPrimary}const e=n.workspacePlatform.newTabUrl;if(e&&(n.layout.settings||(n.layout.settings={}),n.layout.settings.newTabButton={url:e}),n=((e,t)=>{const a=e;return a.workspacePlatform||(a.workspacePlatform={}),a.workspacePlatform._internalDeferShowOptions={setAsForeground:!!t,deferShowEnabled:!0,autoShow:a.workspacePlatform?._internalAutoShow||a.workspacePlatform?._internalDeferShowOptions?.autoShow||void 0===a.autoShow||a.autoShow},a.autoShow=!1,a})(n,!0),!n.workspacePlatform.pages?.length){const e=await at("Untitled Page"),t={...await xt(e,n.layout),isActive:!0};n.workspacePlatform.pages=[t]}}return n.workspacePlatform?.pages&&(n.workspacePlatform.pages=await gn(n.workspacePlatform.pages,t?.defaultPageOptions)),n.cornerRounding&&delete n.cornerRounding,n})(o,e,t[0])}o=await(async e=>{const t=await fin.System.getMonitorInfo(),a=t.primaryMonitor.availableRect.bottom-t.primaryMonitor.availableRect.top,n=t.primaryMonitor.availableRect.right-t.primaryMonitor.availableRect.left;return e.defaultHeight=e.defaultHeight||"800",e.defaultWidth=e.defaultWidth||"800",a<e.defaultHeight&&(e.defaultHeight=a),n<e.defaultWidth&&(e.defaultWidth=n),e})(o);const r=(e,t)=>super.createWindow(e,t),i=n?(e=>async(t,a)=>{let n=!1;const o=await e(t,a);return t?.workspacePlatform?._internalDeferShowOptions?.deferShowEnabled?(await o.addListener(D.ShowRequested,(async()=>{if(n)return;const e=await o.getOptions();await o.updateOptions({workspacePlatform:{...e.workspacePlatform,_internalDeferShowOptions:{...e.workspacePlatform._internalDeferShowOptions,autoShow:!0}}}),n=!0})),o):o})(r):r;return i(o,a)}async createView(t,a){return t.opts=dn(t.opts,e?.defaultViewOptions),t.opts=await pn(t.opts,this.fetchManifest,a),super.createView(t,a)}async replaceView(t,a){return t.opts.newView=await dn(t.opts.newView,e?.defaultViewOptions),t.opts.newView=await pn(t.opts.newView,this.fetchManifest,a),super.replaceView(t,a)}async replaceLayout(e,t){return delete e.opts.layout?.dimensions,super.replaceLayout(e,t)}async closeView(e,t){const a=fin.View.wrapSync(e.view);await super.closeView(e,t),await a.destroy().catch((e=>e))}async getSavedPage(...e){return Ct.apply(this,e)}async getSavedPages(...e){return It.apply(this,e)}async createSavedPage(...e){return At.apply(this,e)}async deleteSavedPage(...e){return Mt.apply(this,e)}async updateSavedPage(...e){return Ot.apply(this,e)}async getSavedWorkspace(...e){return Za.apply(this,e)}async getSavedWorkspaces(...e){return en.apply(this,e)}async createSavedWorkspace(...e){return tn.apply(this,e)}async deleteSavedWorkspace(...e){return an.apply(this,e)}async updateSavedWorkspace(...e){return nn.apply(this,e)}async attachPagesToWindow(t){t.pages=await gn(t.pages,e?.defaultPageOptions),await ze(t)}async openGlobalContextMenuInternal(...e){return Ka.apply(this,e)}async openGlobalContextMenu(...e){return Qa.apply(this,e)}async openViewTabContextMenuInternal(...e){return za.apply(this,e)}async openViewTabContextMenu(...e){return Qa.apply(this,e)}async openPageTabContextMenuInternal(...e){return Ja.apply(this,e)}async openPageTabContextMenu(...e){return Qa.apply(this,e)}async openSaveButtonContextMenu(...e){return Qa.apply(this,e)}async openSaveButtonContextMenuInternal(...e){return Xa.apply(this,e)}}return"function"==typeof t?t(o):new o};async function kn(){!function(){const e=L();e.addListener(B.WindowOptionsChanged,rt),e.addListener(B.WindowClosed,it),e.addListener(B.WindowCreated,it),fin.InterApplicationBus.subscribe({uuid:fin.me.identity.uuid},"browser-window-ready",it)}(),async function(){const e=fin.Application.getCurrentSync();await e.addListener("window-focused",ve)}();we(await fe())}let Wn;function Cn({overrideCallback:e,interopOverride:t,browser:a}){if(!S)throw new Error("Cannot be used outside an OpenFin env.");if(!Wn){fin.Platform.getCurrentSync().once("platform-api-ready",(()=>kn())),a?.title&&(n=a.title,ra=n),Wn=fin.Platform.init({overrideCallback:bn(a,e||a?.overrideCallback),interopOverride:t||a?.interopOverride}),(async e=>{J(z.Platform,e)})({allowed:!0})}var n;return Wn}const In=async({theme:e,customActions:t,...a})=>{const n=O.split(".").map((e=>parseInt(e))),o=await(async e=>new Promise((async t=>{(await Z()).disableRuntimeValidation&&t(!0);const a=(await fin.System.getVersion()).split(".").map((e=>parseInt(e)));t(e.every(((t,n)=>!(n<3)||a[n]===e[n])))})))(n);var r;if(e&&((r=e).forEach((e=>{const t=e.palette.backgroundPrimary;if(!t.includes("#")&&!t.includes("rgb")&&!t.includes("hsl"))throw new Error("Background primary color is not the right format.")})),Sn=r,(async e=>{J(z.Theming,e)})({allowed:!0})),t&&(st=t),o)return Cn(a);throw new Error(`Runtime version is not supported. ${n[0]}.${n[1]}.${n[2]}.* is required`)}})(),module.exports=n})();
|
|
2
|
+
(()=>{"use strict";var e={525:e=>{var t=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function o(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},a=0;a<10;a++)t["_"+String.fromCharCode(a)]=a;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach((function(e){n[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(e){return!1}}()?Object.assign:function(e,r){for(var i,s,c=o(e),d=1;d<arguments.length;d++){for(var p in i=Object(arguments[d]))a.call(i,p)&&(c[p]=i[p]);if(t){s=t(i);for(var l=0;l<s.length;l++)n.call(i,s[l])&&(c[s[l]]=i[s[l]])}}return c}},535:(e,t,a)=>{var n=a(525),o=60103,r=60106;var i=60109,s=60110,c=60112;var d=60115,p=60116;if("function"==typeof Symbol&&Symbol.for){var l=Symbol.for;o=l("react.element"),r=l("react.portal"),l("react.fragment"),l("react.strict_mode"),l("react.profiler"),i=l("react.provider"),s=l("react.context"),c=l("react.forward_ref"),l("react.suspense"),d=l("react.memo"),p=l("react.lazy")}var u="function"==typeof Symbol&&Symbol.iterator;function w(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,a=1;a<arguments.length;a++)t+="&args[]="+encodeURIComponent(arguments[a]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var f={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g={};function y(e,t,a){this.props=e,this.context=t,this.refs=g,this.updater=a||f}function h(){}function m(e,t,a){this.props=e,this.context=t,this.refs=g,this.updater=a||f}y.prototype.isReactComponent={},y.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error(w(85));this.updater.enqueueSetState(this,e,t,"setState")},y.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},h.prototype=y.prototype;var v=m.prototype=new h;v.constructor=m,n(v,y.prototype),v.isPureReactComponent=!0;var S={current:null},P=Object.prototype.hasOwnProperty,b={key:!0,ref:!0,__self:!0,__source:!0};function k(e,t,a){var n,r={},i=null,s=null;if(null!=t)for(n in void 0!==t.ref&&(s=t.ref),void 0!==t.key&&(i=""+t.key),t)P.call(t,n)&&!b.hasOwnProperty(n)&&(r[n]=t[n]);var c=arguments.length-2;if(1===c)r.children=a;else if(1<c){for(var d=Array(c),p=0;p<c;p++)d[p]=arguments[p+2];r.children=d}if(e&&e.defaultProps)for(n in c=e.defaultProps)void 0===r[n]&&(r[n]=c[n]);return{$$typeof:o,type:e,key:i,ref:s,props:r,_owner:S.current}}function W(e){return"object"==typeof e&&null!==e&&e.$$typeof===o}var C=/\/+/g;function I(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function A(e,t,a,n,i){var s=typeof e;"undefined"!==s&&"boolean"!==s||(e=null);var c=!1;if(null===e)c=!0;else switch(s){case"string":case"number":c=!0;break;case"object":switch(e.$$typeof){case o:case r:c=!0}}if(c)return i=i(c=e),e=""===n?"."+I(c,0):n,Array.isArray(i)?(a="",null!=e&&(a=e.replace(C,"$&/")+"/"),A(i,t,a,"",(function(e){return e}))):null!=i&&(W(i)&&(i=function(e,t){return{$$typeof:o,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(i,a+(!i.key||c&&c.key===i.key?"":(""+i.key).replace(C,"$&/")+"/")+e)),t.push(i)),1;if(c=0,n=""===n?".":n+":",Array.isArray(e))for(var d=0;d<e.length;d++){var p=n+I(s=e[d],d);c+=A(s,t,a,p,i)}else if(p=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=u&&e[u]||e["@@iterator"])?e:null}(e),"function"==typeof p)for(e=p.call(e),d=0;!(s=e.next()).done;)c+=A(s=s.value,t,a,p=n+I(s,d++),i);else if("object"===s)throw t=""+e,Error(w(31,"[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t));return c}function M(e,t,a){if(null==e)return e;var n=[],o=0;return A(e,n,"","",(function(e){return t.call(a,e,o++)})),n}function O(e){if(-1===e._status){var t=e._result;t=t(),e._status=0,e._result=t,t.then((function(t){0===e._status&&(t=t.default,e._status=1,e._result=t)}),(function(t){0===e._status&&(e._status=2,e._result=t)}))}if(1===e._status)return e._result;throw e._result}var T={current:null};function E(){var e=T.current;if(null===e)throw Error(w(321));return e}},378:(e,t,a)=>{a(535)}},t={};function a(n){var o=t[n];if(void 0!==o)return o.exports;var r=t[n]={exports:{}};return e[n](r,r.exports,a),r.exports}a.d=(e,t)=>{for(var n in t)a.o(t,n)&&!a.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};(()=>{var e,t,o,r,i,s,c,d;a.r(n),a.d(n,{AppManifestType:()=>c,BrowserButtonType:()=>g,CustomActionCallerType:()=>h,GlobalContextMenuOptionType:()=>u,PageTabContextMenuOptionType:()=>w,SaveButtonContextMenuOptionType:()=>y,SaveModalType:()=>m,ViewTabMenuOptionType:()=>f,getCurrentSync:()=>Ft,init:()=>In,wrapSync:()=>Ut}),function(e){e.Fetching="fetching",e.Fetched="fetched",e.Complete="complete"}(e||(e={})),function(e){e.UserAction="user-action",e.FocusChange="focus-change",e.Reload="reload"}(t||(t={})),function(e){e.Active="active",e.Default="default"}(o||(o={})),function(e){e.Suggestion="suggestion"}(r||(r={})),function(e){e.Contact="Contact",e.Custom="Custom",e.List="List",e.Plain="Plain",e.SimpleText="SimpleText",e.Loading="Loading",e.Error="Error"}(i||(i={})),function(e){e.MultiSelect="MultiSelect"}(s||(s={})),function(e){e.Snapshot="snapshot",e.Manifest="manifest",e.View="view",e.External="external"}(c||(c={})),function(e){e.LandingPage="landingPage",e.AppGrid="appGrid"}(d||(d={}));var p,l,u,w,f,g,y,h,m,v;!function(e){e.Primary="primary",e.Secondary="secondary",e.TextOnly="textOnly"}(p||(p={})),function(e){e.ActionButton="ActionButton",e.DropdownButton="DropdownButton"}(l||(l={})),function(e){e.NewWindow="NewWindow",e.NewPage="NewPage",e.SavePage="SavePage",e.SavePageAs="SavePageAs",e.CloseWindow="CloseWindow",e.RestoreChanges="RestoreChanges",e.SaveWorkspace="SaveWorkspace",e.SaveWorkspaceAs="SaveWorkspaceAs",e.RenameWorkspace="RenameWorkspace",e.SwitchWorkspace="SwitchWorkspace",e.DeleteWorkspace="DeleteWorkspace",e.OpenStorefront="OpenStorefront",e.Quit="Quit",e.Custom="Custom"}(u||(u={})),function(e){e.Close="Close",e.Duplicate="Duplicate",e.Rename="Rename",e.Save="Save",e.SaveAs="Save As",e.Custom="Custom"}(w||(w={})),function(e){e.NewView="NewView",e.DuplicateViews="DuplicateView",e.OpenWithDefaultBrowser="OpenWithDefaultBrowser",e.ReloadViews="ReloadTab",e.CloseViews="CloseTab",e.AddToChannel="AddToChannel",e.RemoveFromChannel="RemoveFromChannel",e.Custom="Custom"}(f||(f={})),function(e){e.ShowHideTabs="ShowHideTabs",e.ColorLinking="ColorLinking",e.PresetLayouts="PresetLayouts",e.LockUnlockPage="LockUnlockPage",e.SaveMenu="SaveMenu",e.SavePage="SavePage",e.Minimise="Minimise",e.Maximise="Maximise",e.Close="Close",e.Custom="Custom"}(g||(g={})),function(e){e.SavePage="SavePage",e.SaveWorkspace="SaveWorkspace",e.SavePageAs="SavePageAs",e.SaveWorkspaceAs="SaveWorkspaceAs",e.Custom="Custom"}(y||(y={})),function(e){e.CustomButton="CustomButton",e.CustomDropdownItem="CustomDropdownItem",e.GlobalContextMenu="GlobalContextMenu",e.ViewTabContextMenu="ViewTabContextMenu",e.PageTabContextMenu="PageTabContextMenu",e.SaveButtonContextMenu="SaveButtonContextMenu",e.API="API"}(h||(h={})),function(e){e.SAVE_PAGE="SAVE_PAGE",e.SAVE_WORKSPACE="SAVE_WORKSPACE",e.SAVE_PAGE_AS="SAVE_PAGE_AS",e.SAVE_WORKSPACE_AS="SAVE_WORKSPACE_AS",e.RENAME_PAGE="RENAME_PAGE",e.RENAME_WORKSPACE="RENAME_WORKSPACE"}(m||(m={})),function(e){e.Local="local",e.Dev="dev",e.Staging="staging",e.Prod="prod"}(v||(v={}));const S="undefined"!=typeof window&&"undefined"!=typeof fin,P=("undefined"==typeof process||process.env?.JEST_WORKER_ID,"undefined"!=typeof window),b=P&&"undefined"!=typeof indexedDB,k=P?window.origin:v.Local,W=S&&fin.me.uuid,C=S&&fin.me.name,I=S&&fin.me.entityType,A=(v.Local,v.Dev,v.Staging,v.Prod,e=>e.startsWith("http://")||e.startsWith("https://")?e:k+e),M=(A("https://cdn.openfin.co/workspace/9.0.12"),A("https://cdn.openfin.co/workspace/9.0.12")),O=("undefined"!=typeof WORKSPACE_DOCS_PLATFORM_URL&&A(WORKSPACE_DOCS_PLATFORM_URL),"undefined"!=typeof WORKSPACE_DOCS_CLIENT_URL&&A(WORKSPACE_DOCS_CLIENT_URL),"26.102.71.7"),T="9.0.12";var E,B,x;!function(e){e.Workspace="openfin-browser"}(E||(E={})),function(e){e.RunRequested="run-requested",e.WindowOptionsChanged="window-options-changed",e.WindowClosed="window-closed",e.WindowCreated="window-created"}(B||(B={})),function(e){e.FinProtocol="fin-protocol"}(x||(x={}));const R={uuid:W},_=(E.Workspace,e=>{if(!S)throw new Error("getApplication cannot be used in a non OpenFin env. Avoid using this during pre-rendering.");return fin.Application.wrapSync(e)}),L=()=>_(R);var V,D,U;!function(e){e.Home="openfin-home",e.Dock="openfin-dock",e.Storefront="openfin-storefront",e.HomeInternal="openfin-home-internal",e.BrowserMenu="openfin-browser-menu",e.BrowserIndicator="openfin-browser-indicator",e.BrowserWindow="internal-generated-window"}(V||(V={})),function(e){e.Shown="shown",e.BoundsChanged="bounds-changed",e.LayoutReady="layout-ready",e.EndUserBoundsChanging="end-user-bounds-changing",e.Blurred="blurred",e.Closed="closed",e.CloseRequested="close-requested",e.Focused="focused",e.ShowRequested="show-requested",e.ViewCrashed="view-crashed",e.ViewAttached="view-attached",e.ViewDetached="view-detached",e.ViewPageTitleUpdated="view-page-title-updated",e.ViewDestroyed="view-destroyed",e.OptionsChanged="options-changed"}(D||(D={})),function(e){e.BeforeUnload="beforeunload"}(U||(U={}));function F(e){if(!S)throw new Error("getOFWindow can only be used in an OpenFin env. Avoid calling this method during pre-rendering.");return fin.Window.wrapSync(e)}const G={name:C,uuid:W};function $(){return F(G)}V.Home,E.Workspace,V.Dock,E.Workspace;const N={name:V.Storefront,uuid:E.Workspace};E.Workspace,E.Workspace;async function j(e){const t=F(e);"minimized"===await t.getState()&&await t.restore(),await t.show(),await t.setAsForeground()}const H=e=>e.startsWith(V.BrowserWindow);async function q(){return(await fin.Application.getCurrentSync().getChildWindows()).filter((e=>H(e.identity.name)))}const K=e=>F(e).getOptions().then((()=>!0)).catch((()=>!1)),Q=()=>K(N);var z;!function(e){e.Browser="Browser",e.Dock="Dock",e.Home="Home",e.Notification="Notification",e.Storefront="Storefront",e.Platform="Platform",e.Theming="Theming"}(z||(z={}));const J=async(e,t)=>{const a={apiVersion:t.apiVersion||T,componentName:e,componentVersion:t.componentVersion||T,allowed:t.allowed,rejectionCode:t.rejectionCode};fin.System.registerUsage({type:"workspace-licensing",data:a})};a(378);const X=e=>fin.System.getSystemAppConfig(e);let Y;async function Z(){if(Y)return Y;if(!S)return{};const e=await async function(){if(S)try{let e=await X("workspace").catch((e=>{}));return e||(e=await X("home")),e}catch(e){}}(),t=await async function(){const{manifest:e,initialOptions:t}=await fin.Application.getCurrentSync().getInfo();return e?.workspace||e?.home||t?.workspace||t?.home,e?.workspace?e?.workspace:e?.home?e?.home:t?.workspace?t?.workspace:t?.home?t?.home:void 0}();return Y={...t,...e},Y}var ee;!function(e){e.CurrentWorkspaceId="currentWorkspaceId",e.LastFocusedBrowserWindow="lastFocusedBrowserWindow",e.MachineName="machineName",e.NewTabPageLayout="NewTabPageLayout",e.NewTabPageSort="NewTabPageSort",e.DockPosition="DockPosition"}(ee||(ee={}));const te=ee,ae=(e,t)=>{localStorage.setItem(`${W}-${e}`,t)},ne=e=>localStorage.getItem(`${W}-${e}`);var oe;!function(e){e.LaunchApp="launchApp",e.SavePage="savePage",e.GetSavedPage="getSavedPage",e.CreateSavedPage="createSavedPage",e.UpdateSavedPage="updateSavedPage",e.DeleteSavedPage="deleteSavedPage",e.GetSavedPages="getSavedPages",e.CreateSavedPageInternal="createSavedPageInternal",e.UpdateSavedPageInternal="updateSavedPageInternal",e.DeleteSavedPageInternal="deleteSavedPageInternal",e.SharePage="sharePage",e.UpdatePageForWindow="updatePageForWindow",e.AttachPagesToWindow="attachPagesToWindow",e.DetachPagesFromWindow="detachPagesFromWindow",e.ReorderPagesForWindow="reorderPagesForWindow",e.SetActivePage="setActivePage",e.GetAllAttachedPages="getAllAttachedPages",e.GetActivePageIdForWindow="getActivePageIdForWindow",e.GetPagesForWindow="getPagesForWindow",e.GetPageForWindow="getPageForWindow",e.GetSavedPageMetadata="getSavedPageMetadata",e.GetUniquePageTitle="getUniquePageTitle",e.GetLastFocusedBrowserWindow="getLastFocusedBrowserWindow",e.GetThemes="getThemes",e.OpenGlobalContextMenuInternal="openGlobalContextMenuInternal",e.OpenViewTabContextMenuInternal="openViewTabContextMenuInternal",e.OpenPageTabContextMenuInternal="openPageTabContextMenuInternal",e.OpenSaveButtonContextMenuInternal="openSaveButtonContextMenuInternal",e.InvokeCustomActionInternal="invokeCustomActionInternal",e.RequestQuitPlatformDialogInternal="requestQuitPlatformDialogInternal",e.GetSavedWorkspace="getSavedWorkspace",e.CreateSavedWorkspace="createSavedWorkspace",e.UpdateSavedWorkspace="updateSavedWorkspace",e.DeleteSavedWorkspace="deleteSavedWorkspace",e.GetSavedWorkspaces="getSavedWorkspaces",e.SaveWorkspace="saveWorkspace",e.GetCurrentWorkspace="getCurrentWorkspace",e.ApplyWorkspace="applyWorkspace",e.SetActiveWorkspace="setActiveWorkspace",e.IsBrowserInitialized="isBrowserInitialized"}(oe||(oe={}));const re=async e=>fin.Platform.wrapSync(e).getClient(),ie=async e=>{const t=await re(e),a="Target is not a Workspace Platform. Target must call WorkspacePlatform.init";let n;try{n=await t.dispatch("isWorkspacePlatform")}catch(e){throw new Error(a)}if(!0!==n?.isWorkspacePlatform)throw new Error(a);return n},se=async e=>(await ie(e),re(e)),ce=async e=>{if(!0!==(await ie(e))?.isBrowserInitialized)throw new Error("Target is not a Browser-enabled Workspace Platform.");return re(e)},de=(e,t)=>!t.find((t=>t===e)),pe=(e,t)=>`${e} (${t})`,le=(e,t)=>{let a=1;const n=e.replace(/ \(.+\)$/,"");for(;!de(pe(n,a),t);)a+=1;return pe(n,a)};async function ue(e){try{const t=Ft();await t.applySnapshot(e.snapshot,{closeExistingWindows:!0}),we(e)}catch(e){}}function we(e){if("undefined"!=typeof localStorage)try{const t=JSON.stringify(e);ae(te.CurrentWorkspaceId,t)}catch(e){}}async function fe(){if("undefined"==typeof localStorage)return;const e=Ft(),t=await e.getSnapshot();return{workspaceId:crypto.randomUUID(),title:await he(),metadata:{APIVersion:T},snapshot:t}}async function ge(){if("undefined"==typeof localStorage)return;const e=ne(te.CurrentWorkspaceId);if(!e)return fe();const t=JSON.parse(e),a=Ft(),n=await a.getSnapshot();return{...t,metadata:{APIVersion:T},snapshot:n}}const ye=async e=>await(async e=>(await se(G)).dispatch(oe.GetSavedWorkspace,e))(e.workspaceId)?(async e=>(await se(G)).dispatch(oe.UpdateSavedWorkspace,e))({workspaceId:e.workspaceId,workspace:e}):(async e=>(await se(G)).dispatch(oe.CreateSavedWorkspace,e))({workspace:e});async function he(e="Untitled Workspace"){const t=(await(async()=>(await se(G)).dispatch(oe.GetSavedWorkspaces,void 0))()).map((({title:e})=>e));return t.find((t=>t===e))?le(e,t):e}async function me(){if("undefined"!=typeof localStorage)try{const e=ne(te.LastFocusedBrowserWindow);if(!e)return;const t=JSON.parse(e);if(await K(t))return t}catch(e){throw new Error(`failed to get last focused browser window: ${e}`)}}function ve(e=fin.me.identity){H(e.name)&&function(e){if("undefined"!=typeof localStorage)try{const t=JSON.stringify(e);ae(te.LastFocusedBrowserWindow,t)}catch(e){}}(e)}const Se=(e,t=0)=>{let a,n,o=!1;const r=async n=>{const i=await e(...n);if(o){await new Promise((e=>setTimeout(e,t)));const e=a;return a=void 0,o=!1,r(e)}return i};return(...e)=>(n?(o=!0,a=e):n=r(e).catch((e=>{throw e})).finally((()=>{n=void 0})),n)};var Pe;!function(e){e.TabCreated="tab-created",e.ContainerCreated="container-created",e.ContainerResized="container-resized"}(Pe||(Pe={}));const be=(e,t)=>e.content?{...e,content:e.content.map((e=>be(e,t)))}:{...e,componentState:t(e.componentState)},ke=e=>({...e,name:e.name?e.name:crypto.randomUUID()}),We=e=>{const t=[];return(e&&Array.isArray(e)?e:[]).forEach((e=>{if("component"===e.type)return t.push(e.componentState);const a=We(e.content);t.push(...a)})),t},Ce=async(e,t,a=G)=>{let n;if(H(a.name)){n=(await F(a).getOptions()).layout||{settings:{}}}return{...n,content:[{type:"stack",content:[{type:"component",componentName:"view",componentState:{title:e,url:t}}]}]}};new Map;function Ie(e,t){return async(a,...n)=>{e.has(a)&&e.get(a).forEach((e=>e(...n))),t&&await t({event:a,payload:n})}}function Ae(e,t){return t&&t((t=>{const{event:a,payload:n}=t;e.has(a)&&e.get(a).forEach((e=>e(...n)))})),(t,a)=>{e.has(t)||e.set(t,new Set),e.get(t).add(a)}}function Me(e){return(t,a)=>{e.has(t)||e.set(t,new Set);const n=e.get(t),o=(...e)=>{a(...e),n.delete(o)};n.add(o)}}function Oe(e){return(t,a)=>{e.has(t)&&e.get(t).delete(a)}}const Te=P&&"complete"!==document.readyState&&new Promise((e=>document.addEventListener("readystatechange",(()=>{"complete"===document.readyState&&e()}))));function Ee(e){let t;return()=>{if(!S)throw new Error("getChannelClient cannot be used outside an OpenFin env. Avoid using this method during pre-rendering.");return t||(t=(async()=>{await Te;const a={clientAPIVersion:T},n=await fin.InterApplicationBus.Channel.connect(e,{payload:a});return n.onDisconnection((async()=>{t=void 0})),n})().then((e=>e)).catch((a=>{throw t=void 0,new Error(`failed to connect to channel provider ${e}: ${a}`)}))),t}}const Be=e=>`__browser_window__-${e.uuid}-${e.name}`,xe=new Map,Re=e=>{const t=Be(e);return xe.has(t)||xe.set(t,Ee(t)),xe.get(t)()};var _e,Le;!function(e){e.CloseBrowserWindow="close-browser-window",e.QuitPlatform="quit-platform",e.ClosePage="close-page",e.AddToChannel="add-to-channel",e.RemoveFromChannel="remove-from-channel",e.OpenSaveModalInternal="open-save-modal-internal",e.DuplicatePage="duplicate-page"}(_e||(_e={})),function(e){e.GetPages="get-pages",e.GetActivePageForWindow="get-active-page-for-window",e.AttachPagesToWindow="attach-pages-to-window",e.DetachPagesFromWindow="detach-pages-from-window",e.SetActivePageForWindow="set-active-page-for-window",e.RenamePage="rename-page",e.ReorderPagesForWindow="reorder-pages-for-window",e.UpdatePageForWindow="update-page-for-window",e.UpdatePagesWindowOptions="update-pages-window-options",e.IsDetachingPages="is-detaching-pages",e.IsActivePageChanging="is-active-page-changing"}(Le||(Le={}));const Ve={..._e,...Le};var De;!function(e){e.AttachedPagesToWindow="attached-pages-to-window",e.DetachedPagesFromWindow="detached-pages-from-window"}(De||(De={}));new Map;const Ue=async e=>{const t=await Re(e);return await t.dispatch(Ve.GetPages)},Fe=async e=>(await Re(e.identity)).dispatch(Ve.UpdatePageForWindow,e),Ge=async()=>{const e=await q();return(await Promise.all(e.map((async({identity:e})=>Ue(e))))).reduce(((e,t)=>e.concat(t)),[])},$e=async()=>(await se(G)).dispatch(oe.GetSavedPages,void 0),Ne=async e=>(await se(G)).dispatch(oe.GetSavedPage,e),je=async(e,t)=>{const a=await(async e=>(await Ge()).find((t=>t.pageId===e)))(e);return!a||a.title===t.title&&e===t.pageId||await Fe({identity:a.parentIdentity,pageId:e,page:{pageId:t.pageId,title:t.title}}),a},He=async({page:e})=>{await je(e.pageId,e),await(async e=>(await se(G)).dispatch(oe.CreateSavedPage,e))({page:e})},qe=async e=>{await Ne(e)&&await(async e=>(await se(G)).dispatch(oe.DeleteSavedPage,e))(e)},Ke=async({pageId:e,page:t})=>{await je(e,t);return await(async e=>(await se(G)).dispatch(oe.UpdateSavedPage,e))({pageId:e,page:t})},Qe=async e=>await Ne(e.pageId)?Ke({pageId:e.pageId,page:e}):He({page:e}),ze=async e=>{await(async e=>(await Re(e.identity)).dispatch(Ve.AttachPagesToWindow,e))(e)},Je=async e=>{await Fe(e)},Xe=async e=>{await(async e=>(await Re(e.identity)).dispatch(Ve.DetachPagesFromWindow,e))(e)},Ye=async e=>{await(async e=>(await Re(e.identity)).dispatch(Ve.SetActivePageForWindow,e))(e)},Ze=e=>Ue(e),et=async({identity:e,pageId:t})=>(await Ze(e)).find((e=>e.pageId===t)),tt=async e=>{await(async e=>(await Re(e.identity)).dispatch(Ve.ReorderPagesForWindow,e))(e)};async function at(e="Untitled Page"){const[t,a]=await Promise.all([$e(),Ge()]),n=[...t,...a].map((({title:e})=>e));return n.find((t=>t===e))?le(e,n):e}const nt=new Map,ot=e=>`${e.uuid}-${e.name}`;const rt=Se((async function(){let e=[];try{e=await Ge()}catch(e){return void nt.forEach(((e,t)=>{clearTimeout(e),nt.delete(t)}))}const t=new Set;e.forEach((e=>{We(e.layout.content).forEach((e=>{if(e.name){const a=ot(e);t.add(a)}}))}));const a=$();(await a.getCurrentViews()).forEach((({identity:e})=>{const a=ot(e);if(t.has(a)||nt.has(a))return;const n=setTimeout((()=>{fin.View.wrapSync(e).destroy(),nt.delete(a)}),5e3);nt.set(a,n)})),nt.forEach(((e,a)=>{t.has(a)&&(clearTimeout(e),nt.delete(a))}))}),2500),it=({name:e})=>{e&&H(e)&&rt().catch((()=>{}))};let st={};const ct=({actionId:e,payload:t})=>{if("function"!=typeof st[e])throw new Error(`Cannot find a configured function for the action '${e}'`);return st[e](t)};function dt(){return localStorage.getItem(te.MachineName)}let pt;async function lt(){return pt||(pt=await fin.System.getMachineId()),pt}const ut=e=>{if(e.layout&&Array.isArray(e.workspacePlatform?.pages)){const t=e.workspacePlatform.pages.find((e=>e.isActive));if(t)if(t.isLocked){const a=((e,t)=>{const a=We(t.content);return{...be(e,(e=>{const t=a.find((t=>t.name===e.name&&t.uuid===e.uuid)),n=t?t.isClosable:e.isClosable;return{...e,isClosable:n}})),settings:t.settings}})(e.layout,t.layout);t.layout=a,e.layout=a}else t.layout=e.layout}return e};async function wt(e){const t=e||await fin.Platform.getCurrentSync().getSnapshot();if(t.snapshotDetails?.machineId)return t;const a=dt();return{...t,snapshotDetails:{...e.snapshotDetails,machineId:await lt(),machineName:a}}}function ft(e){return new Promise(((t,a)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>a(e.error)}))}function gt(e,t){const a=indexedDB.open(e);a.onupgradeneeded=()=>a.result.createObjectStore(t);const n=ft(a);return(e,a)=>n.then((n=>a(n.transaction(t,e).objectStore(t))))}let yt;function ht(){return yt||(yt=gt("keyval-store","keyval")),yt}function mt(e,t=ht()){return t("readonly",(t=>ft(t.get(e))))}function vt(e,t,a=ht()){return a("readwrite",(a=>(a.put(t,e),ft(a.transaction))))}function St(e,t=ht()){return t("readwrite",(t=>(t.delete(e),ft(t.transaction))))}function Pt(e,t){return e.openCursor().onsuccess=function(){this.result&&(t(this.result),this.result.continue())},ft(e.transaction)}function bt(e=ht()){return e("readonly",(e=>{if(e.getAllKeys)return ft(e.getAllKeys());const t=[];return Pt(e,(e=>t.push(e.key))).then((()=>t))}))}const kt=(e,t="")=>e.toLowerCase().includes(t.toLowerCase()),Wt=b&>("openfin-home-pages","pages");async function Ct(e){const t=await mt(e,Wt);return t?(t.pageId=e.toString(),t.title=t.title||t.pageId,t):null}async function It(e){const t=await bt(Wt),a=await Promise.all(t.map((e=>Ct(e.toString()))));return e?a.filter((t=>kt(t.title,e))):a}async function At({page:e}){await vt(e.pageId,e,Wt)}async function Mt(e){await St(e,Wt)}async function Ot({pageId:e,page:t}){if(void 0===await Ct(e))throw new Error("page not found");await At({page:t}),e!==t.pageId&&await Mt(e)}var Tt;!function(e){e.Label="normal",e.Separator="separator",e.Submenu="submenu",e.Checkbox="checkbox"}(Tt||(Tt={}));const Et={type:Tt.Separator,data:void 0};var Bt;!function(e){e.RegisterProvider="register-provider",e.DeregisterProvider="deregister-provider",e.CreateProviderWindow="create-provider-window",e.GetProviders="get-providers",e.ShowProviderWindow="show-provider-window",e.HideProviderWindow="hide-provider-window",e.GetStorefrontProviderApps="get-storefront-provider-apps",e.GetStorefrontProviderLandingPage="get-storefront-provider-landing-page",e.GetStorefrontProviderFooter="get-storefront-provider-footer",e.GetStorefrontProviderNavigation="get-storefront-provider-navigation",e.LaunchStorefrontProviderApp="launch-storefront-provider-app",e.ShowHome="show-home",e.HideHome="hide-home",e.AssignHomeSearchContext="assign-home-search-context",e.GetLegacyPages="get-legacy-pages",e.GetLegacyWorkspaces="get-legacy-workspaces",e.GetComputedPlatformTheme="get-computed-platform-theme",e.RegisterStorefrontProvider="register-storefront-provider",e.DeregisterStorefrontProvider="deregister-storefront-provider",e.HideStorefront="hide-storefront",e.ShowStorefront="show-storefront"}(Bt||(Bt={}));Ee("__of_workspace_protocol__");const xt=async(e,t)=>{const a=await(async e=>({...e,layoutDetails:{machineId:await lt(),machineName:dt()}}))(t);return{pageId:crypto.randomUUID(),title:e,layout:a,isReadOnly:!1,hasUnsavedChanges:!0}},Rt=e=>({identity:e,openfinWindow:fin.Window.wrapSync(e),getPages:async()=>(await ce(e)).dispatch(oe.GetPagesForWindow,e),getPage:async t=>(await ce(e)).dispatch(oe.GetPageForWindow,{identity:e,pageId:t}),addPage:async t=>{const a=await ce(e);t?.title||(t.title=await a.dispatch(oe.GetUniquePageTitle,void 0));const n=(await a.dispatch(oe.GetAllAttachedPages,void 0)).find((e=>e.pageId===t.pageId||e.title===t.title));if(n)throw n.pageId===t.pageId?new Error(`page with id ${t.pageId} is already attached to a browser window ${n.parentIdentity.name}`):new Error(`page with title ${t.title} is already attached to a browser window ${n.parentIdentity.name}`);const o={identity:e,pages:[t]};return a.dispatch(oe.AttachPagesToWindow,o)},removePage:async t=>(await ce(e)).dispatch(oe.DetachPagesFromWindow,{identity:e,pageIds:[t]}),setActivePage:async t=>(await ce(e)).dispatch(oe.SetActivePage,{identity:e,pageId:t}),updatePage:async t=>{const a=await ce(e);return t.identity=e,a.dispatch(oe.UpdatePageForWindow,t)},reorderPages:async t=>{const a=await ce(e);return t.identity=e,a.dispatch(oe.ReorderPagesForWindow,t)},_openGlobalContextMenu:async t=>{const a=await ce(e);return t.identity=e,a.dispatch(oe.OpenGlobalContextMenuInternal,t)},replaceToolbarOptions:async t=>{await ce(e);const a=fin.Window.wrapSync(e);await a.updateOptions({workspacePlatform:{toolbarOptions:t}})},replaceWindowStateButtonOptions:async t=>{await ce(e);const a=fin.Window.wrapSync(e);await a.updateOptions({workspacePlatform:{windowStateButtonOptions:t}})},_openViewTabContextMenu:async t=>{const a=await ce(e);return t.identity=e,a.dispatch(oe.OpenViewTabContextMenuInternal,t)},_openPageTabContextMenu:async t=>{const a=await ce(e);return t.identity=e,a.dispatch(oe.OpenPageTabContextMenuInternal,t)},_openSaveModal:async t=>{await ce(e);return(await Re(e)).dispatch(Ve.OpenSaveModalInternal,t)},_openSaveButtonContextMenu:async t=>{const a=await ce(e);return t.identity=e,a.dispatch(oe.OpenSaveButtonContextMenuInternal,t)}});let _t=!1;const Lt=e=>{const t=fin.Platform.wrapSync(e);return{wrapSync:e=>Rt(e),createWindow:async a=>{await ce(e),_t||(_t=!0,(async e=>{J(z.Browser,e)})({allowed:!0}));const n=await t.createWindow(a);return Rt(n.identity)},getAllAttachedPages:async()=>(await ce(e)).dispatch(oe.GetAllAttachedPages,void 0),getAllWindows:async()=>{await ce(e);return(await fin.Application.wrapSync(e).getChildWindows()).filter((e=>e.identity.name.includes("internal-generated-window-"))).map((e=>Rt(e.identity)))},getUniquePageTitle:async t=>(await ce(e)).dispatch(oe.GetUniquePageTitle,t),getLastFocusedWindow:async()=>(await ce(e)).dispatch(oe.GetLastFocusedBrowserWindow,void 0)}},Vt=e=>({createPage:async t=>(await ce(e)).dispatch(oe.CreateSavedPageInternal,t),deletePage:async t=>(await ce(e)).dispatch(oe.DeleteSavedPageInternal,t),updatePage:async t=>(await ce(e)).dispatch(oe.UpdateSavedPageInternal,t),getPage:async t=>(await ce(e)).dispatch(oe.GetSavedPage,t),getPages:async t=>(await ce(e)).dispatch(oe.GetSavedPages,t),savePage:async t=>(await ce(e)).dispatch(oe.SavePage,t),createWorkspace:async t=>(await se(e)).dispatch(oe.CreateSavedWorkspace,t),deleteWorkspace:async t=>(await se(e)).dispatch(oe.DeleteSavedWorkspace,t),updateWorkspace:async t=>(await se(e)).dispatch(oe.UpdateSavedWorkspace,t),getWorkspace:async t=>(await se(e)).dispatch(oe.GetSavedWorkspace,t),getWorkspaces:async t=>(await se(e)).dispatch(oe.GetSavedWorkspaces,t),saveWorkspace:async t=>(await se(e)).dispatch(oe.SaveWorkspace,t)}),Dt=e=>({getThemes:async()=>(await se(e)).dispatch(oe.GetThemes,void 0)}),Ut=e=>{const t=fin.Platform.wrapSync(e);return Object.assign(t,{applySnapshot:async(t,a)=>{if("string"!=typeof t&&!t?.windows)throw new Error("Not a valid browser snapshot");return fin.Platform.wrapSync(e).applySnapshot(t,a)},getSnapshot:()=>fin.Platform.wrapSync(e).getSnapshot().then((e=>e)),launchApp:async t=>{t.target||(t.target={uuid:W,name:C,entityType:I||"unknown"});return(await se(e)).dispatch(oe.LaunchApp,t)},_invokeCustomAction:async(t,a)=>{const n=await se(e),o={actionId:t,payload:{...a,callerType:a.callerType||h.API}};return n.dispatch(oe.InvokeCustomActionInternal,o)},_requestQuitPlatformDialog:async t=>(await se(e)).dispatch(oe.RequestQuitPlatformDialogInternal,t),getCurrentWorkspace:async()=>(await se(e)).dispatch(oe.GetCurrentWorkspace,void 0),applyWorkspace:async t=>(await se(e)).dispatch(oe.ApplyWorkspace,t),setActiveWorkspace:async t=>(await se(e)).dispatch(oe.SetActiveWorkspace,t),Theme:Dt(e),Browser:Lt(e),Storage:Vt(e)})},Ft=()=>Ut(fin.me.identity),Gt=async(e=G)=>{const{workspacePlatform:t}=await F(e).getOptions(),a=t?.newPageUrl,n=t?.newTabUrl;return{newPageUrl:a,newTabUrl:n}},$t=async(e=G)=>{const t=await Ft().Browser.getUniquePageTitle("Untitled Page"),a=await(async(e=G)=>{const{newPageUrl:t}=await Gt(e);if(!t)throw new Error("Trying to create a new page without a newPageUrl set");return Ce("New Tab",t,e)})(e);return xt(t,a)},Nt={type:Tt.Label,label:"Close Window",data:{type:u.CloseWindow}},jt={type:Tt.Label,label:"Open Storefront",data:{type:u.OpenStorefront}},Ht={type:Tt.Label,label:"Quit Platform",data:{type:u.Quit}},qt={type:Tt.Label,label:"New Window",data:{type:u.NewWindow}},Kt={type:Tt.Label,label:"Save Page",data:{type:u.SavePage}},Qt={type:Tt.Label,label:"Save Page As...",data:{type:u.SavePageAs}},zt={type:Tt.Label,label:"Restore to Last Saved Changes",data:{type:u.RestoreChanges}},Jt={type:Tt.Label,label:"Save Workspace",data:{type:u.SaveWorkspace}},Xt={type:Tt.Label,label:"Save Workspace As...",data:{type:u.SaveWorkspaceAs}},Yt={type:Tt.Label,label:"Rename Workspace",data:{type:u.RenameWorkspace}},Zt="Switch Workspace",ea="Delete Workspace",ta=[Nt,Et,jt,Et,Ht],aa=[Et,Nt,Et,Ht],na=(e,t,a)=>t.map((t=>{const n=t.workspaceId===e.workspaceId;return{label:t.title,type:Tt.Checkbox,enabled:!n,checked:n,data:{type:a,workspaceId:t.workspaceId}}})),oa=async e=>{const t=await Q(),{newPageUrl:a}=await Gt(e),n=await(async e=>{const t=F(e),{workspacePlatform:a}=await t.getOptions();return a?.disableMultiplePages})(e),o=await(async e=>{const t=F(e),{workspacePlatform:a}=await t.getOptions();return a?.isLocked})(e),r=[];var i;a&&(r.push(qt),n||r.push((i=!o,{type:Tt.Label,label:"New Page",data:{type:u.NewPage},enabled:i}))),r.push(Et);const s=Ft(),c=await s.getCurrentWorkspace(),d=await s.Storage.getWorkspaces(),p=d.find((e=>e.workspaceId===c.workspaceId));return p?r.push(zt):r.push({label:zt.label,enabled:!1}),r.push(Jt,Xt),p?r.push(Yt):r.push({label:Yt.label,enabled:!1}),d.some((e=>e.workspaceId!==c.workspaceId))?r.push({label:Zt,submenu:na(c,d,u.SwitchWorkspace)},{label:ea,submenu:na(c,d,u.DeleteWorkspace)}):r.push({label:Zt,enabled:!1},{label:ea,enabled:!1}),r.push(Et,Kt,Qt),t?[...r,...ta]:[...r,...aa]};let ra="Platform";const ia=async()=>ra;var sa,ca,da;!function(e){e.Home="/home/",e.HomeSearch="/home/?deeplink=search",e.HomePagesRename="/home/pages/rename/",e.Dock="/dock/",e.BrowserPagesLanding="/browser/pages/landing/",e.HomeIndicator="/home/indicator/",e.Browser="/browser/",e.BrowserPopupMenu="/browser/popup-menu/",e.Provider="/provider/",e.BrowserPopupMenuSharePage="/browser/popup-menu/share-page/",e.BrowserPopupMenuSaveModal="/browser/popup-menu/save-modal/",e.BrowserPopupMenuLayouts="/browser/popup-menu/layouts/layouts/",e.BrowserPopupMenuColorLinking="/browser/popup-menu/color-linking/color-linking/",e.BrowserIndicator="/browser/indicator/",e.ResponseModal="/browser/popup-menu/response-modal/",e.Docs="/provider/docs/",e.Storefront="/storefront/",e.DeprecatedAlert="/provider/deprecated-alert/"}(sa||(sa={})),function(e){e.IconOpenFinLogo="/icons/openfinlogo.svg",e.IconFilter="/icons/filter.svg"}(ca||(ca={})),function(e){e.Search="search"}(da||(da={}));const pa={...ca,...sa};var la;!function(e){e.Home="/home",e.Browser="/browser",e.Provider="/provider",e.Storefront="/storefront",e.Dock="/dock"}(la||(la={}));const ua="/workspace/9.0.12";function wa(){return ua.substring(0,ua.length-"".length)}function fa(e){if(!P)throw new Error("getAbsoluteRoutePath can only be used in a window");return function(){if(!window)throw new Error("getAbsoluteBasePath can only be used in a window");return`${window.origin}${wa()}`}()+e}const ga={name:V.BrowserMenu,alwaysOnTop:!0,autoShow:!1,frame:!1,resizable:!1,backgroundColor:"#2f3136",smallWindow:!0,showTaskbarIcon:!1,backgroundThrottling:!0};function ya(e){const t={...ga,...e};return t.url=function(e){if(!P)throw new Error("resolveAbsolutePath can only be used in a window");return e.startsWith("http")?e:`${window.origin}${e}`}(t.url),t}var ha,ma;!function(e){e.Update="update",e.Response="response"}(ha||(ha={})),function(e){e.Canceled="canceled",e.Negative="negative",e.Affirmative="affirmative"}(ma||(ma={}));const va=function(e){const t=new Map;return{emit:Ie(t,(t=>S&&fin.InterApplicationBus.publish(e,t))),addListener:Ae(t,(t=>S&&fin.InterApplicationBus.subscribe({uuid:fin.me.uuid},e,t))),removeListener:Oe(t),once:Me(t)}}("window.menu"),Sa=e=>va.emit(ha.Response,e),Pa=Se((()=>L().getChildWindows()),500);const ba=new Map;async function ka({options:e,parameters:t},a){const n=ya(e),{name:o}=n;let r=await async function(e){return(await Pa()).find((t=>t.identity.name===e))}(o);return r||(r=await async function(e){const t=ya(e);if(!ba.has(t.name)){const e=(async()=>{const e=await fin.Platform.getCurrentSync().createWindow(t);return e.once("closed",(()=>{ba.delete(t.name)})),e})();ba.set(t.name,e)}return ba.get(t.name)}(n)),await async function(e,t){const a=ya(e),{top:n,left:o,defaultWidth:r,defaultHeight:i}=a,s={top:n,left:o,width:r,height:i},c={parentName:fin.Window.getCurrentSync().identity.name};for(const[e,a]of Object.entries(c))t.set(e,a);const d=t.toString(),p=`${a.url}?${d}`;va.emit(ha.Update,a.name,s,p),await Sa({name:a.name,data:ma.Canceled})}(e,t||new URLSearchParams),a&&r.center(),r}const Wa=async(e,t,a)=>{const n=t?F(t):$();if(!a){await(async(e=fin.me.identity)=>{const t=F(e),a=await t.getBounds();(a.right>screen.availLeft+screen.width||a.left<screen.availLeft||a.bottom>screen.availTop+screen.height||a.top<screen.availTop)&&await t.center()})(n.identity);const t=(e=>({left:(e.left+e.right)/2,top:(e.top+e.bottom)/2}))(await n.getBounds()),{defaultHeight:a,defaultWidth:o}=e;return((e,t)=>{const{height:a,width:n}=t,o=n/2,r=a/2;return{left:e.left-o,top:e.top-r}})(t,{height:a,width:o})}return await n.getBounds()},Ca=async({options:e,content:t},a)=>{const n=new URLSearchParams({...t});return await ka({options:e,parameters:n},a),new Promise((t=>{va.once(ha.Response,(a=>{a.name===e.name&&t(a)}))}))},Ia=async(e,t)=>{const{windowOptions:a,content:n}=await(async(e,t)=>({title:"Switch Workspace",windowOptions:{url:M+pa.ResponseModal,name:V.BrowserMenu,defaultHeight:112,defaultWidth:424,modalParentIdentity:e},content:{title:`Are you sure you want to switch to ${t}`,body:"Any unsaved changes will be discarded",affirmativeButton:"Confirm",negativeButton:"Cancel"}}))(e,t),o=await Wa(a,a.modalParentIdentity),r={...a,top:o.top,left:o.left};return(await Ca({options:r,content:n})).data===ma.Affirmative},Aa=async(e,t)=>{const{windowOptions:a,content:n}=await(async(e,t)=>({title:"Delete Workspace",windowOptions:{url:M+pa.ResponseModal,name:V.BrowserMenu,defaultHeight:144,defaultWidth:372,modalParentIdentity:e},content:{title:"Are you sure you want to permanently delete this workspace?",body:`${t}`,affirmativeButton:"Confirm",negativeButton:"Cancel"}}))(e,t),o=await Wa(a,a.modalParentIdentity),r={...a,top:o.top,left:o.left};return(await Ca({options:r,content:n})).data===ma.Affirmative},Ma=async(e,t,a)=>{const n=a?void 0:e,{windowOptions:o,content:r}=await(async(e,t)=>({title:"Platform Quit",windowOptions:{url:M+pa.ResponseModal,name:V.BrowserMenu,defaultHeight:134,defaultWidth:474,modalParentIdentity:t},content:{title:`Close the ${"Platform"===e?"platform":`${e} Platform`}?`,body:"Closing a platform will close any workspaces, apps or any processes that are running.",affirmativeButton:"Confirm",negativeButton:"Cancel"}}))(t,n),i=await Wa(o,o.modalParentIdentity),s={...o,top:i.top,left:i.left};return(await Ca({options:s,content:r},a)).data===ma.Affirmative},Oa=async e=>{const{windowOptions:t,content:a}=await(async e=>({title:"Restore Changes",windowOptions:{url:M+pa.ResponseModal,name:V.BrowserMenu,defaultHeight:112,defaultWidth:424,modalParentIdentity:e},content:{title:"Are you sure you want to restore to last saved changes?",body:"Any unsaved changes will be discarded",affirmativeButton:"Confirm",negativeButton:"Cancel"}}))(e),n=await Wa(t,t.modalParentIdentity),o={...t,top:n.top,left:n.left};return(await Ca({options:o,content:a})).data===ma.Affirmative};var Ta;!function(e){e.ERROR="error",e.SUCCESS="success",e.INFO="info"}(Ta||(Ta={}));const Ea={alwaysOnTop:!0,autoShow:!1,frame:!1,resizable:!1,showTaskbarIcon:!1};var Ba;!function(e){e.Locked="LockClosedIcon",e.Unlocked="LockOpen1Icon"}(Ba||(Ba={}));const xa=function(e=Ea){const t=new Map;return async(a,n,o,r)=>{if(t.has(a)){const{currentUrl:e,currentName:o}=t.get(a);if(e===n)return;const r=fin.Window.wrapSync({uuid:fin.me.uuid,name:o});await r.close()}const i=`${V.HomeInternal}-${Date.now()}${Math.random()}`;t.set(a,{currentUrl:n,currentName:i});const s=await fin.Platform.getCurrentSync().createWindow({...e,name:i,url:n});((e,t)=>{const a=document.createElement("div");a.setAttribute("aria-live",t||"polite"),(e=>{e.style.position="absolute",e.style.width="1px",e.style.height="1px",e.style.padding="0",e.style.margin="-1px",e.style.overflow="hidden",e.style.whiteSpace="nowrap",e.style.border="0"})(a),document.body.appendChild(a),setTimeout((()=>{a.innerHTML=e}),100),setTimeout((()=>{document.body.removeChild(a)}),1e3)})(`New ${r} indicator: ${o}`),s.once("closed",(()=>{t.delete(a)}))}}();async function Ra(e,t,a,n){const o=new URLSearchParams;o.append("type",e),o.append("message",t),o.append("parentName",a||""),o.append("icon",n||"");const r=`${fa(pa.BrowserIndicator)}?${o.toString()}`;return xa("browser"+a,r,t,e)}function _a(e,t,a){return Ra(Ta.SUCCESS,e,t,a)}const La=async e=>{const t=Ft(),a=await t.getCurrentWorkspace(),n=await t.Storage.getWorkspaces(),o=a.workspaceId;if(n.some((e=>e.workspaceId===o)))t.Storage.saveWorkspace(a),t.setActiveWorkspace(a),_a("Workspace Saved",e.name);else{t.Browser.wrapSync(e)._openSaveModal({menuType:m.SAVE_WORKSPACE})}},Va=e=>{Ft().Browser.wrapSync(e)._openSaveModal({menuType:m.SAVE_WORKSPACE_AS})},Da=async(e,t)=>{const a=Ft().Browser.wrapSync(e),n=await Ft().Storage.getPages(),o=(await a.getPages()).find((e=>t?e.pageId===t:e.isActive)),r=n.some((e=>o.pageId===e.pageId));if(r)try{await Ft().Storage.savePage((d=o,{...d,hasUnsavedChanges:void 0,parentIdentity:void 0,isActive:void 0})),await a.updatePage({pageId:o.pageId,page:{hasUnsavedChanges:!1}}),_a("Page saved",o.parentIdentity.name)}catch{i="Page failed to save",s=o.parentIdentity.name,Ra(Ta.ERROR,i,s,c)}else a._openSaveModal({id:o.pageId,menuType:m.SAVE_PAGE});var i,s,c,d},Ua=async(e,t)=>{const a=Ft().Browser.wrapSync(e),n=(await a.getPages()).find((e=>t?e.pageId===t:e.isActive));a._openSaveModal({id:n.pageId,menuType:m.SAVE_PAGE_AS})},Fa=async(e,t)=>{if(!e)return;const a=t.identity,n=await Re(a),o=Ft().Browser.wrapSync(t.identity);switch(e.type){case u.NewWindow:const{newPageUrl:t}=await Gt(a);if(!t)throw new Error("Trying to create a new empty window without a newPageUrl set");Ft().createView({target:void 0,url:t});break;case u.NewPage:await(async e=>{const t=Ft().Browser.wrapSync(e),a=await $t(e);await t.addPage(a),await t.setActivePage(a.pageId)})(a);break;case u.CloseWindow:n.dispatch(Ve.CloseBrowserWindow);break;case u.SaveWorkspace:await La(a);break;case u.SavePage:await Da(a);break;case u.SavePageAs:await Ua(a);break;case u.SaveWorkspaceAs:await Va(a);break;case u.RenameWorkspace:o._openSaveModal({menuType:m.RENAME_WORKSPACE});break;case u.SwitchWorkspace:await(async(e,t)=>{const a=Ft(),n=(await a.Storage.getWorkspaces()).find((e=>e.workspaceId===t.workspaceId));n&&await Ia(e,n.title)&&(await a.applyWorkspace(n),_a("Workspace Switched!",null))})(a,e);break;case u.DeleteWorkspace:await(async(e,t)=>{const a=Ft(),n=(await a.Storage.getWorkspaces()).find((e=>e.workspaceId===t.workspaceId));n&&await Aa(e,n.title)&&(await a.Storage.deleteWorkspace(t.workspaceId),_a("Workspace Deleted!",e.name))})(a,e);break;case u.Quit:const r=await ia();await Ma(a,r)&&fin.Platform.getCurrentSync().quit();break;case u.OpenStorefront:(async()=>{await Q()&&j(N)})();break;case u.RestoreChanges:const i=await async function(){const e=Ft(),t=await e.getCurrentWorkspace();return(await e.Storage.getWorkspaces()).find((e=>e.workspaceId===t.workspaceId))}();await Oa(a)&&await ue(i);break;case u.Custom:if(e.action){const t={callerType:h.GlobalContextMenu,windowIdentity:a,customData:e.action.customData};Ft()._invokeCustomAction(e.action.id,t)}}},Ga=async(e,t)=>{const a=await Re(t.identity),n=Ft();switch(e?.type){case w.Save:await Da(t.identity,t.pageId);break;case w.SaveAs:await Ua(t.identity,t.pageId);break;case w.Rename:await n.Browser.wrapSync(t.identity)._openSaveModal({menuType:m.RENAME_PAGE,id:t.pageId});break;case w.Duplicate:a.dispatch(Ve.DuplicatePage,t.pageId);break;case w.Close:a.dispatch(Ve.ClosePage,t.pageId);break;case w.Custom:if(e.action){const a={callerType:h.PageTabContextMenu,windowIdentity:t.identity,pageId:t.pageId,customData:e.action.customData};Ft()._invokeCustomAction(e.action.id,a)}}},$a=async(e,t)=>{if(e?.type){const a=t.identity;switch(e.type){case y.SavePage:await Da(a);break;case y.SaveWorkspace:await La(a);break;case y.SavePageAs:await Ua(a);break;case y.SaveWorkspaceAs:await Va(a);break;case y.Custom:if(e.action){const a={callerType:h.SaveButtonContextMenu,windowIdentity:t.identity,pageId:t.pageId,customData:e.action.customData};Ft()._invokeCustomAction(e.action.id,a)}}}},Na=async(e,t)=>{const a=t.selectedViews[0],n=fin.View.wrapSync(a),o=await(async e=>{const{newTabUrl:t}=await Gt(e);if(!t)throw new Error("Trying to create a new page without a newTabUrl set");return{...Ce("New View",t),url:t,target:e}})(e);await Ft().createView(o,e,n.identity)},ja=async(e,t)=>{const a=await(e=>Promise.all(e.map((async e=>fin.View.wrapSync(e).getInfo()))))(t),{newPageUrl:n,newTabUrl:o}=await Gt(e);a.forEach((async e=>{e.url!==n&&e.url!==o&&await fin.System.openUrlWithBrowser(e.url)}))},Ha=(e,t)=>{t.forEach((async t=>{const a=fin.View.wrapSync(t);await(async(e,t)=>{const{url:a}=await t.getInfo(),n={...await t.getOptions(),url:a,target:e,name:void 0};await Ft().createView(n,e,t.identity)})(e,a)}))},qa=async(e,t)=>{if(!e)return;const a=t.identity;switch(e.type){case f.CloseViews:await(async(e,t)=>{if((await fin.Window.wrapSync(e).getCurrentViews()).length!==t.length)t.forEach((async e=>{const t=fin.View.wrapSync(e);await t.destroy()}));else{const t=(await Ft().Browser.wrapSync(e).getPages()).find((e=>e.isActive));(await Re(e)).dispatch(Ve.ClosePage,t?.pageId)}})(a,t.selectedViews);break;case f.OpenWithDefaultBrowser:await ja(a,t.selectedViews);break;case f.ReloadViews:t.selectedViews.forEach((async e=>{const t=fin.View.wrapSync(e);await t.reload()}));break;case f.NewView:await Na(a,t);break;case f.DuplicateViews:Ha(a,t.selectedViews);break;case f.AddToChannel:(async(e,t,a)=>{const n={newChannelId:t,selectedViews:a};(await Re(e)).dispatch(Ve.AddToChannel,n)})(a,e.option,t.selectedViews);break;case f.RemoveFromChannel:(async(e,t)=>{(await Re(e)).dispatch(Ve.RemoveFromChannel,t)})(a,t.selectedViews);break;case f.Custom:if(e.action){const n={callerType:h.ViewTabContextMenu,windowIdentity:a,selectedViews:t.selectedViews,customData:e.action.customData};Ft()._invokeCustomAction(e.action.id,n)}}};async function Ka(e,t){const a=await oa(e.identity),n=await ia();a.find((e=>e.data?.type===u.Quit)).label=`Quit ${n}`;const o={...e,template:a,callback:Fa};await this.openGlobalContextMenu(o,t)}const Qa=async(e,t)=>{const{x:a,y:n,identity:o,template:r,callback:i}=e,{data:s}=await function(e,t){if(!S)throw new Error("showContextMenu can only be used in an OpenFin env. Avoid calling this method during pre-rendering.");if(!t&&!fin.me.isWindow)throw new Error("showContextMenu can only be used in an OpenFin window.");return(t||fin.Window.getCurrentSync()).showPopupMenu(e)}({x:a,y:n,template:r},fin.Window.wrapSync(o));i(s,e)};async function za(e,t){const a={...e,callback:qa};await this.openViewTabContextMenu(a,t)}async function Ja(e,t){const a=await(async(e,t)=>{const a=await Ft().Storage.getPage(e),n=(await Ge()).find((t=>t.pageId===e)),{workspacePlatform:o}=await F(t).getOptions(),r=!(o.isLocked||o.preventPageClose||n.closeButton?.disabled||n.closeButton?.hidden);return[{type:Tt.Label,label:"Save Page",data:{type:w.Save}},{type:Tt.Label,label:"Save Page As",data:{type:w.SaveAs}},Et,{type:Tt.Label,label:"Rename Page",data:{type:w.Rename},enabled:!!a},{type:Tt.Label,label:"Duplicate Page",data:{type:w.Duplicate},enabled:!o.isLocked},Et,{type:Tt.Label,label:"Close Page",data:{type:w.Close},enabled:r}]})(e.pageId,e.identity),n={...e,template:a,callback:Ga};await this.openPageTabContextMenu(n,t)}async function Xa(e,t){const a={...e,template:await(async()=>[{type:Tt.Label,label:"Save Workspace",data:{type:y.SaveWorkspace}},{type:Tt.Label,label:"Save Workspace As",data:{type:y.SaveWorkspaceAs}},{type:Tt.Separator,data:void 0},{type:Tt.Label,label:"Save Page",data:{type:y.SavePage}},{type:Tt.Label,label:"Save Page As",data:{type:y.SavePageAs}}])(),callback:$a};await this.openSaveButtonContextMenu(a,t)}const Ya=b&>("openfin-workspace-platform-workspaces","workspaces");async function Za(e){const t=await mt(e,Ya);return t?(t.workspaceId=e.toString(),t.title=t.title||t.workspaceId,t):null}async function en(e){const t=await bt(Ya),a=await Promise.all(t.map((e=>Za(e.toString()))));return e?a.filter((t=>kt(t.title,e))):a}async function tn({workspace:e}){await vt(e.workspaceId,e,Ya)}async function an(e){await St(e,Ya)}async function nn({workspaceId:e,workspace:t}){if(void 0===await Za(e))throw new Error("workspace not found");await tn({workspace:t}),e!==t.workspaceId&&await an(e)}async function on({app:e,target:t}){const a=fin.Platform.getCurrentSync();switch(e.manifestType){case c.Snapshot:return a.applySnapshot(e.manifest);case c.View:return async function(e,t){const a=fin.Platform.getCurrentSync();if("view"===t.entityType){const a=fin.View.wrapSync(t),n=await a.getParentLayout();return await n.replaceView(t,{manifestUrl:e.manifest,url:void 0,target:void 0}),a.destroy()}return a.createView({name:void 0,url:void 0,manifestUrl:e.manifest,target:void 0})}(e,t);case c.External:return fin.System.launchExternalProcess({path:e.manifest,uuid:e.appId});default:return fin.Application.startFromManifest(e.manifest)}}const rn=e=>e&&"object"==typeof e&&!Array.isArray(e);function sn(e,...t){if(!t.length)return e;const a=t.shift();return rn(e)&&rn(a)&&Object.entries(a).forEach((([t,a])=>{if(rn(a))return e[t]||(e[t]={}),sn(e[t],a);e[t]=a})),sn(e,...t)}const cn=M+pa.Browser;function dn(e,t){const a=sn({},t,e);return a.detachOnClose=!0,a}async function pn(e,t,a){const n=e.manifestUrl?await t({manifestUrl:e.manifestUrl},a):void 0;if(n?.interop&&e.interop){const t={...e,...n,interop:e.interop};return delete t.manifestUrl,t}return e}const ln=e=>{const t=e.name===V.Home,a=e.name?.startsWith(V.HomeInternal),n=e.name?.startsWith(V.BrowserMenu);return!t&&!a&&!n},un=e=>"workspacePlatform"in e?e:(({workstacks:e,pages:t,...a})=>({...a,workspacePlatform:{pages:t||e||null}}))(e),wn={contextMenuSettings:{reload:!1},backgroundThrottling:!0,url:cn,contextMenu:!0,closeOnLastViewRemoved:!1,experimental:{showFavicons:!0,defaultFaviconUrl:`${M}/icons/defaultFavicon.svg`},permissions:{System:{openUrlWithBrowser:{enabled:!0,protocols:["mailto"]}}}},fn={dimensions:{borderWidth:3,headerHeight:30}},gn=async(e,t)=>{const a=await Ft().Storage.getPages(),n=await Ft().Browser.getAllAttachedPages();return e.map((e=>{let o=e.title;void 0===e.pageId&&(e.pageId=crypto.randomUUID());const r=a.find((e=>e.title===o));return(r&&r.pageId!==e.pageId||n.find((e=>e.title===o)))&&(o=le(e.title,[...a,...n].map((e=>e.title)))),n.push({...e,title:o}),{...t,...e,title:o,layout:(i=e.layout,be({...i},ke))};var i}))};var yn;!function(e){e.Browser="browser",e.Platform="platform",e.Classic="classic",e.Mixed="mixed"}(yn||(yn={}));const hn=e=>{const t=fin.Window.wrapSync(e);return Promise.all([t.bringToFront(),t.restore(),t.focus()])};async function mn(e){const t=(await q()).map((async e=>{const t=await e.getOptions();t.workspacePlatform?.pages&&t.layout&&await(async e=>(await Re(e)).dispatch(Ve.UpdatePagesWindowOptions))(e.identity)}));return await Promise.all(t),e?e():wt()}const vn=async e=>{await Ma(fin.me.identity,e.title??await ia(),e.shouldCenterOnMonitor)&&fin.Platform.getCurrentSync().quit()};let Sn=[];const Pn=()=>Sn;const bn=(e,t)=>async a=>{const n=null!==e;class o extends a{constructor(){super(),this.isWorkspacePlatform=()=>({isWorkspacePlatform:!0,isBrowserInitialized:!!e}),this.addPage=this.attachPagesToWindow,this.detachPagesFromWindow=Xe,this.getAllAttachedPages=Ge,this.getPagesForWindow=Ze,this.getPageForWindow=et,this.setActivePage=Ye,this.launchApp=on,this.savePage=Qe,this.saveWorkspace=ye,this.createSavedPageInternal=He,this.updateSavedPageInternal=Ke,this.deleteSavedPageInternal=qe,this.reorderPagesForWindow=tt,this.getUniquePageTitle=at,this.updatePageForWindow=Je,this.getLastFocusedBrowserWindow=me,this.getThemes=Pn,this.invokeCustomActionInternal=ct,this.requestQuitPlatformDialogInternal=vn,this.getCurrentWorkspace=ge,this.applyWorkspace=ue,this.setActiveWorkspace=we,this.openGlobalContextMenuInternal=this.openGlobalContextMenuInternal.bind(this),this.openGlobalContextMenu=this.openGlobalContextMenu.bind(this),this.getSavedPages=this.getSavedPages.bind(this),this.getSavedPage=this.getSavedPage.bind(this),this.createSavedPage=this.createSavedPage.bind(this),this.updateSavedPage=this.updateSavedPage.bind(this),this.deleteSavedPage=this.deleteSavedPage.bind(this),this.attachPagesToWindow=this.attachPagesToWindow.bind(this),this.openViewTabContextMenuInternal=this.openViewTabContextMenuInternal.bind(this),this.openViewTabContextMenu=this.openViewTabContextMenu.bind(this),this.openPageTabContextMenuInternal=this.openPageTabContextMenuInternal.bind(this),this.openPageTabContextMenu=this.openPageTabContextMenu.bind(this),this.getSavedWorkspaces=this.getSavedWorkspaces.bind(this),this.getSavedWorkspace=this.getSavedWorkspace.bind(this),this.createSavedWorkspace=this.createSavedWorkspace.bind(this),this.updateSavedWorkspace=this.updateSavedWorkspace.bind(this),this.deleteSavedWorkspace=this.deleteSavedWorkspace.bind(this),this.getCurrentWorkspace=this.getCurrentWorkspace.bind(this),this.applyWorkspace=this.applyWorkspace.bind(this),this.setActiveWorkspace=this.setActiveWorkspace.bind(this),this.openSaveButtonContextMenu=this.openSaveButtonContextMenu.bind(this),this.openSaveButtonContextMenuInternal=this.openSaveButtonContextMenuInternal.bind(this)}async getSnapshot(){const e=n?await mn((async()=>wt(await super.getSnapshot(void 0,fin.me.identity)))):await wt(await super.getSnapshot(void 0,fin.me.identity));return{...e,windows:e.windows.filter(ln).map(ut)}}async applySnapshot({snapshot:e,options:t}){const a=e=>super.applySnapshot({snapshot:e,options:{...t,closeExistingWindows:!1}});let o=e;"string"==typeof o&&(o=await super.fetchManifest({manifestUrl:o},fin.me.identity));const r=function(e){let t=!1,a=!1;for(const n of e.windows){if(t&&a)break;n.workspacePlatform?.pages?.length?a=!0:n.layout&&(t=!0)}return t&&a?yn.Mixed:t?yn.Platform:a?yn.Browser:e.windows.length?yn.Classic:null}(o);if(r===yn.Mixed)throw new Error("This snapshot cannot be applied as it contains a mixture of browser and platform windows.");if(n)yn.Platform;else if(r===yn.Browser)throw new Error("This snapshot cannot be applied as the platform has been initialized without the browser.");return t?.closeExistingWindows&&await async function(){const e=await q();await Promise.all(e.map((e=>e.close(!0).catch((()=>{})))))}(),n?async function(e,t){const a=await Ge(),n=e.snapshotDetails?.monitorInfo||await fin.System.getMonitorInfo(),[o,r]=(e.windows||[]).reduce((([e,t],a)=>a?.workspacePlatform?.pages?.length?[[...e,a],t]:[e,[...t,a]]),[[],[]]),i=new Map;a.forEach((e=>i.set(e.pageId,e)));const s=[],c=o.map((async e=>{const t=un(e),a=[],n=(e=>{let t=!1;const a=(e||[]).map((e=>{const a=function({id:e,name:t,...a}){return{pageId:e,title:t,...a}}(e);return t&&a.isActive&&(a.isActive=!1),a.isActive&&(t=!0),a}));return!t&&a.length&&(a[0].isActive=!0),a})(t?.workspacePlatform?.pages);if(!n?.length){const e=await at();a.push(await xt(e,t.layout))}let o;n.forEach((e=>{const t=i.get(e.pageId);t?o=t:a.push(e)})),o&&await Promise.all([Ye({identity:o.parentIdentity,pageId:o.pageId}),hn(o.parentIdentity)]),a.length&&s.push({...t,workspacePlatform:{...t.workspacePlatform,pages:a}})}));if(await Promise.all(c),!s.length&&!r.length)return;const d=fin.Platform.getCurrentSync();return(t||d.applySnapshot.bind(d))({...e,snapshotDetails:{...e.snapshotDetails,monitorInfo:n},windows:[...s,...r]})}(o,a):a(o)}async createWindow(t,a){t.workspacePlatform?.toolbarOptions?.buttons&&(e=>{const t=e.filter((e=>e.type!==g.Custom)),a=new Set;for(const e of t){if(a.has(e.type))throw new Error(`Encountered a duplicate of ${e.type} button. No more than one instance of a button type may be provided.`);a.add(e.type)}})(t.workspacePlatform.toolbarOptions.buttons);let o=un(t);if(n){const t=this.getThemes();o=await(async(e,t,a)=>{let n=e;const o=n?.workspacePlatform?.pages;if(o){const e=o.find((e=>e.isActive));e?n.layout=e.layout:(o[0].isActive=!0,n.layout=o[0].layout)}if(n.layout){if(n=sn({},t.defaultWindowOptions,n,wn),n.layout=sn(n.layout,fn),(n.icon||n.taskbarIcon)&&(n.taskbarIconGroup=n.taskbarIconGroup||fin.me.identity.uuid),!n.backgroundColor){const e=a?.palette;n.backgroundColor=e?.background2||e?.backgroundPrimary}const e=n.workspacePlatform.newTabUrl;if(e&&(n.layout.settings||(n.layout.settings={}),n.layout.settings.newTabButton={url:e}),n=((e,t)=>{const a=e;return a.workspacePlatform||(a.workspacePlatform={}),a.workspacePlatform._internalDeferShowOptions={setAsForeground:!!t,deferShowEnabled:!0,autoShow:a.workspacePlatform?._internalAutoShow||a.workspacePlatform?._internalDeferShowOptions?.autoShow||void 0===a.autoShow||a.autoShow},a.autoShow=!1,a})(n,!0),!n.workspacePlatform.pages?.length){const e=await at("Untitled Page"),t={...await xt(e,n.layout),isActive:!0};n.workspacePlatform.pages=[t]}}return n.workspacePlatform?.pages&&(n.workspacePlatform.pages=await gn(n.workspacePlatform.pages,t?.defaultPageOptions)),n.cornerRounding&&delete n.cornerRounding,n})(o,e,t[0])}o=await(async e=>{const t=await fin.System.getMonitorInfo(),a=t.primaryMonitor.availableRect.bottom-t.primaryMonitor.availableRect.top,n=t.primaryMonitor.availableRect.right-t.primaryMonitor.availableRect.left;return e.defaultHeight=e.defaultHeight||"800",e.defaultWidth=e.defaultWidth||"800",a<e.defaultHeight&&(e.defaultHeight=a),n<e.defaultWidth&&(e.defaultWidth=n),e})(o);const r=(e,t)=>super.createWindow(e,t),i=n?(e=>async(t,a)=>{let n=!1;const o=await e(t,a);return t?.workspacePlatform?._internalDeferShowOptions?.deferShowEnabled?(await o.addListener(D.ShowRequested,(async()=>{if(n)return;const e=await o.getOptions();await o.updateOptions({workspacePlatform:{...e.workspacePlatform,_internalDeferShowOptions:{...e.workspacePlatform._internalDeferShowOptions,autoShow:!0}}}),n=!0})),o):o})(r):r;return i(o,a)}async createView(t,a){return t.opts=dn(t.opts,e?.defaultViewOptions),t.opts=await pn(t.opts,this.fetchManifest,a),super.createView(t,a)}async replaceView(t,a){return t.opts.newView=await dn(t.opts.newView,e?.defaultViewOptions),t.opts.newView=await pn(t.opts.newView,this.fetchManifest,a),super.replaceView(t,a)}async replaceLayout(e,t){return delete e.opts.layout?.dimensions,super.replaceLayout(e,t)}async closeView(e,t){const a=fin.View.wrapSync(e.view);await super.closeView(e,t),await a.destroy().catch((e=>e))}async getSavedPage(...e){return Ct.apply(this,e)}async getSavedPages(...e){return It.apply(this,e)}async createSavedPage(...e){return At.apply(this,e)}async deleteSavedPage(...e){return Mt.apply(this,e)}async updateSavedPage(...e){return Ot.apply(this,e)}async getSavedWorkspace(...e){return Za.apply(this,e)}async getSavedWorkspaces(...e){return en.apply(this,e)}async createSavedWorkspace(...e){return tn.apply(this,e)}async deleteSavedWorkspace(...e){return an.apply(this,e)}async updateSavedWorkspace(...e){return nn.apply(this,e)}async attachPagesToWindow(t){t.pages=await gn(t.pages,e?.defaultPageOptions),await ze(t)}async openGlobalContextMenuInternal(...e){return Ka.apply(this,e)}async openGlobalContextMenu(...e){return Qa.apply(this,e)}async openViewTabContextMenuInternal(...e){return za.apply(this,e)}async openViewTabContextMenu(...e){return Qa.apply(this,e)}async openPageTabContextMenuInternal(...e){return Ja.apply(this,e)}async openPageTabContextMenu(...e){return Qa.apply(this,e)}async openSaveButtonContextMenu(...e){return Qa.apply(this,e)}async openSaveButtonContextMenuInternal(...e){return Xa.apply(this,e)}}return"function"==typeof t?t(o):new o};async function kn(){!function(){const e=L();e.addListener(B.WindowOptionsChanged,rt),e.addListener(B.WindowClosed,it),e.addListener(B.WindowCreated,it),fin.InterApplicationBus.subscribe({uuid:fin.me.identity.uuid},"browser-window-ready",it)}(),async function(){const e=fin.Application.getCurrentSync();await e.addListener("window-focused",ve)}();we(await fe())}let Wn;function Cn({overrideCallback:e,interopOverride:t,browser:a}){if(!S)throw new Error("Cannot be used outside an OpenFin env.");if(!Wn){fin.Platform.getCurrentSync().once("platform-api-ready",(()=>kn())),a?.title&&(n=a.title,ra=n),Wn=fin.Platform.init({overrideCallback:bn(a,e||a?.overrideCallback),interopOverride:t||a?.interopOverride}),(async e=>{J(z.Platform,e)})({allowed:!0})}var n;return Wn}const In=async({theme:e,customActions:t,...a})=>{const n=O.split(".").map((e=>parseInt(e))),o=await(async e=>new Promise((async t=>{(await Z()).disableRuntimeValidation&&t(!0);const a=(await fin.System.getVersion()).split(".").map((e=>parseInt(e)));t(e.every(((t,n)=>!(n<3)||a[n]===e[n])))})))(n);var r;if(e&&((r=e).forEach((e=>{const t=e.palette.backgroundPrimary;if(!t.includes("#")&&!t.includes("rgb")&&!t.includes("hsl"))throw new Error("Background primary color is not the right format.")})),Sn=r,(async e=>{J(z.Theming,e)})({allowed:!0})),t&&(st=t),o)return Cn(a);throw new Error(`Runtime version is not supported. ${n[0]}.${n[1]}.${n[2]}.* is required`)}})(),module.exports=n})();
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@openfin/workspace-platform","description":"An API for creating your own Workspace platform.","contributors":[],"version":"9.0.
|
|
1
|
+
{"name":"@openfin/workspace-platform","description":"An API for creating your own Workspace platform.","contributors":[],"version":"9.0.12","main":"index.js","scripts":{"promote:docs":"chmod +x ../common/scripts/deploy-latest-docs.sh && ../common/scripts/deploy-latest-docs.sh $(node ../common/scripts/echo-version.js) /platform","promote":"node ../common/scripts/promote-npm.js && npm run promote:docs","deploy:next":"npm run deploy:next:npm && npm run deploy:next:docs","deploy:next:npm":"cd out && npm publish --tag next","deploy:next:docs":"DIR=/platform node ../common/scripts/archive-docs.js","cp:readme":"copyfiles README.md out","cp:package":"node ../common/scripts/cp-package.js","create:rootIndex":"node ../common/scripts/cp-root-index.js","package":"npm run cp:readme && npm run cp:package && npm run create:rootIndex","clean":"rimraf ./out && rimraf ./docs","build:common":"cross-env ENV=prod webpack --mode=production --config ./webpack.common.config.js","build":"npm run clean && npm run build:common && npm run build:docs && node ../common/scripts/test-for-next-apis.js","build:docs":"typedoc --tsconfig ./tsconfig.json --readme none --disableSources ./src/index.ts","test":"jest --watch --colors","test:ci":"jest"},"keywords":["client","api","workspace","platform"],"license":"MIT"}
|