UNPKG

markgojs

Version:

Interactive diagrams, charts, and graphs, such as trees, flowcharts, orgcharts, UML, BPMN, or business diagrams

775 lines 54 kB
<!doctype html> <html class="default no-js"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>GoCloudStorage | GoCloudStorage API</title> <meta name="description" content=""> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="../../assets/css/bootstrap.min.css"> <link rel="stylesheet" href="../assets/css/main.css"> </head> <body> <header> <!-- non-fixed navbar --> <nav id="non-fixed-nav" class="navbar navbar-inverse navbar-top"> <div class="container-fluid"> <div class="navbar-header"> <div class="navheader-container"> <div class="navheader-collapse" data-toggle="collapse" data-target="#navbar"> <a id="toplogo" class="navbar-brand" href="../../../index.html">GoJS</a> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> </div> </div> </div> <div id="navbar" class="navbar-collapse collapse"> <ul class="nav navbar-nav navbar-right"> <li><a href="../../../index.html">Home</a></li> <li><a href="../../../learn/index.html">Learn</a></li> <li><a href="../../../samples/index.html">Samples</a></li> <li><a href="../../../intro/index.html">Intro</a></li> <li><a href="../../../api/index.html" target="api">API</a></li> <li><a href="https://www.nwoods.com/components/evalform.htm">Register</a></li> <li><a href="../../../download.html">Download</a></li> <li><a href="https://forum.nwoods.com/c/gojs">Forum</a></li> <li><a href="https://www.nwoods.com/contact.html" onclick="ga('send','event','Outbound Link','click','contact');">Contact</a></li> <li class="buy"><a href="https://www.nwoods.com/sales/index.html" onclick="ga('send','event','Outbound Link','click','buy');">Buy</a></li> <li class="activate"><a href="https://www.nwoods.com/app/activate.aspx?sku=gojs">Activate</a></li> </ul> </div><!--/.nav-collapse --> </div> </nav> <div class="tsd-page-header"> <div class="tsd-page-toolbar"> <div class="container-fluid plr15"> <div class="table-wrap"> <div class="table-cell" id="tsd-search" data-index="../assets/js/search.js" data-base=".."> <div class="field"> <label for="tsd-search-field" class="tsd-widget search no-caption">Search</label> <input id="tsd-search-field" type="text" /> </div> <ul class="results"> <li class="state loading">Preparing search index...</li> <li class="state failure">The search index is not available</li> </ul> <a href="../index.html" class="title">GoCloudStorage API</a> </div> <div class="table-cell" id="tsd-widgets"> <div id="tsd-filter"> <a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a> <div class="tsd-filter-group"> <div class="tsd-select" id="tsd-filter-visibility"> <span class="tsd-select-label">All</span> <ul class="tsd-select-list"> <li data-value="public">Public</li> <li data-value="protected">Public/Protected</li> <li data-value="private" class="selected">All</li> </ul> </div> <input type="checkbox" id="tsd-filter-inherited" /> <label class="tsd-widget" for="tsd-filter-inherited">Inherited</label> </div> </div> <a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a> </div> </div> </div> </div> <div class="tsd-page-title"> <div class="container-fluid plr15"> <div class="top-copyright"> <!--<b>GoJS</b>&reg; Diagramming Components<br/>version for TypeScript/HTML<br/>by <a href="https://www.nwoods.com/">Northwoods Software&reg;</a>--> GoCloudStorage<br/>by <a href="https://www.nwoods.com/">Northwoods Software&reg;</a> </div> <div> <h1>Class GoCloudStorage</h1> </div> </div> </div> </div> </header> <div class="container-fluid container-main plr15"> <div class="row"> <div class="col-8 col-content"> <section class="tsd-panel tsd-hierarchy"> <h3>Hierarchy</h3> <ul class="tsd-hierarchy"> <li> <span class="target">GoCloudStorage</span> <ul class="tsd-hierarchy"> <li> <a href="GoGoogleDrive.html" class="tsd-signature-type">GoGoogleDrive</a> </li> <li> <a href="GoDropBox.html" class="tsd-signature-type">GoDropBox</a> </li> <li> <a href="GoLocalStorage.html" class="tsd-signature-type">GoLocalStorage</a> </li> <li> <a href="GoOneDrive.html" class="tsd-signature-type">GoOneDrive</a> </li> </ul> </li> </ul> </section> <section class="tsd-panel tsd-comment"> <div class="tsd-comment tsd-typography"> <p>An abstract class for storing GoJS <a href="https://gojs.net/latest/api/symbols/Diagram.html">Diagram</a> <a href="https://gojs.net/latest/api/symbols/Model.html">models</a> in various cloud storage services.</p> <p>GoCloudStorage is never used on its own. Its subclasses can be used to manage diagram model storage programatically, or any subset of GoCloudStorage subclasses can be bundled and used graphically with the <a href="GoCloudStorageManager.html">GoCloudStorageManager</a>.</p> <p><strong>Note</strong>: With the exception of <a href="GoLocalStorage.html">GoLocalStorage</a>, all GoCloudStorage subclasses must be used in pages served on a web server.</p> </div> </section> <section class="tsd-panel-group tsd-index-group"> <h2>Index</h2> <section class="tsd-panel tsd-index-panel"> <div class="tsd-index-content"> <section class="tsd-index-section "> <h3>Constructors</h3> <ul class="tsd-index-list"> <li class="tsd-kind-constructor tsd-parent-kind-class"><a href="GoCloudStorage.html#constructor" class="tsd-kind-icon">constructor</a></li> </ul> </section> <section class="tsd-index-section "> <h3>Properties</h3> <ul class="tsd-index-list"> <li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="GoCloudStorage.html#className" class="tsd-kind-icon">class<wbr>Name</a></li> <li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="GoCloudStorage.html#clientId" class="tsd-kind-icon">client<wbr>Id</a></li> <li class="tsd-kind-accessor tsd-parent-kind-class"><a href="GoCloudStorage.html#currentDiagramFile" class="tsd-kind-icon">current<wbr>Diagram<wbr>File</a></li> <li class="tsd-kind-accessor tsd-parent-kind-class"><a href="GoCloudStorage.html#defaultModel" class="tsd-kind-icon">default<wbr>Model</a></li> <li class="tsd-kind-accessor tsd-parent-kind-class"><a href="GoCloudStorage.html#iconsRelativeDirectory" class="tsd-kind-icon">icons<wbr>Relative<wbr>Directory</a></li> <li class="tsd-kind-accessor tsd-parent-kind-class"><a href="GoCloudStorage.html#isAutoSaving" class="tsd-kind-icon">is<wbr>Auto<wbr>Saving</a></li> <li class="tsd-kind-accessor tsd-parent-kind-class"><a href="GoCloudStorage.html#managedDiagrams" class="tsd-kind-icon">managed<wbr>Diagrams</a></li> <li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="GoCloudStorage.html#serviceName" class="tsd-kind-icon">service<wbr>Name</a></li> <li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="GoCloudStorage.html#ui" class="tsd-kind-icon">ui</a></li> </ul> </section> <section class="tsd-index-section "> <h3>Methods</h3> <ul class="tsd-index-list"> <li class="tsd-kind-method tsd-parent-kind-class"><a href="GoCloudStorage.html#authorize" class="tsd-kind-icon">authorize</a></li> <li class="tsd-kind-method tsd-parent-kind-class"><a href="GoCloudStorage.html#checkFileExists" class="tsd-kind-icon">check<wbr>File<wbr>Exists</a></li> <li class="tsd-kind-method tsd-parent-kind-class"><a href="GoCloudStorage.html#create" class="tsd-kind-icon">create</a></li> <li class="tsd-kind-method tsd-parent-kind-class"><a href="GoCloudStorage.html#getFile" class="tsd-kind-icon">get<wbr>File</a></li> <li class="tsd-kind-method tsd-parent-kind-class"><a href="GoCloudStorage.html#getUserInfo" class="tsd-kind-icon">get<wbr>User<wbr>Info</a></li> <li class="tsd-kind-method tsd-parent-kind-class"><a href="GoCloudStorage.html#hideUI" class="tsd-kind-icon">hideUI</a></li> <li class="tsd-kind-method tsd-parent-kind-class"><a href="GoCloudStorage.html#load" class="tsd-kind-icon">load</a></li> <li class="tsd-kind-method tsd-parent-kind-class"><a href="GoCloudStorage.html#loadWithUI" class="tsd-kind-icon">load<wbr>WithUI</a></li> <li class="tsd-kind-method tsd-parent-kind-class"><a href="GoCloudStorage.html#remove" class="tsd-kind-icon">remove</a></li> <li class="tsd-kind-method tsd-parent-kind-class"><a href="GoCloudStorage.html#removeWithUI" class="tsd-kind-icon">remove<wbr>WithUI</a></li> <li class="tsd-kind-method tsd-parent-kind-class"><a href="GoCloudStorage.html#save" class="tsd-kind-icon">save</a></li> <li class="tsd-kind-method tsd-parent-kind-class"><a href="GoCloudStorage.html#saveWithUI" class="tsd-kind-icon">save<wbr>WithUI</a></li> <li class="tsd-kind-method tsd-parent-kind-class"><a href="GoCloudStorage.html#showUI" class="tsd-kind-icon">showUI</a></li> </ul> </section> </div> </section> </section> <section class="tsd-panel-group tsd-member-group "> <h2>Constructors</h2> <section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class"> <a name="constructor" class="tsd-anchor"></a> <h3> constructor </h3> <ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class"> <li class="tsd-signature tsd-kind-icon">new <wbr>GoCloud<wbr>Storage<span class="tsd-signature-symbol">(</span>managedDiagrams<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Diagram</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Diagram</span><span class="tsd-signature-symbol">[]</span>, defaultModel<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span>, clientId<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span>, iconsRelativeDirectory<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="GoCloudStorage.html" class="tsd-signature-type">GoCloudStorage</a></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> </div> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>managedDiagrams: <span class="tsd-signature-type">Diagram</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Diagram</span><span class="tsd-signature-symbol">[]</span></h5> <div class="tsd-comment tsd-typography"> <p>An array of GoJS <a href="https://gojs.net/latest/api/symbols/Diagram.html">Diagrams</a> whose model(s) will be saved to / loaded from a cloud storage service. Can also be a single Diagram.</p> </div> </li> <li> <h5><span class="tsd-flag ts-flagOptional">Optional</span> defaultModel: <span class="tsd-signature-type">string</span></h5> <div class="tsd-comment tsd-typography"> <p>String representation of the default model data for new diagrams. If this is null, default new diagrams will be empty. Usually a value given by calling <a href="https://gojs.net/latest/api/symbols/Model.html#toJson">.toJson()</a> on a GoJS Diagram&#39;s Model.</p> </div> </li> <li> <h5><span class="tsd-flag ts-flagOptional">Optional</span> clientId: <span class="tsd-signature-type">string</span></h5> <div class="tsd-comment tsd-typography"> <p>The client ID of the cloud storage application to use (given by the cloud storage service to developer). Not needed for all subclasses.</p> </div> </li> <li> <h5><span class="tsd-flag ts-flagOptional">Optional</span> iconsRelativeDirectory: <span class="tsd-signature-type">string</span></h5> <div class="tsd-comment tsd-typography"> <p>The directory path relative to the page in which this instance of GoCloudStorage exists, in which the storage service brand icons can be found. The default value is &quot;../goCloudStorageIcons/&quot;.</p> </div> </li> </ul> <h4 class="tsd-returns-title">Returns <a href="GoCloudStorage.html" class="tsd-signature-type">GoCloudStorage</a></h4> </li> </ul> </section> </section> <section class="tsd-panel-group tsd-member-group "> <h2>Properties</h2> <section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class"> <a name="className" class="tsd-anchor"></a> <h3> <span class="tsd-flag ts-flagReadOnly">Read-only</span> class<wbr>Name <span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span> </h3> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Get the name of the class; i.e. &quot;GoDropbox&quot;</p> </div> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class"> <a name="clientId" class="tsd-anchor"></a> <h3> <span class="tsd-flag ts-flagReadOnly">Read-only</span> client<wbr>Id <span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span> </h3> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Get the clientId for the app using the cloud storage service. This is usually given by the cloud storage provider&#39;s dev console or similar. Set with a parameter during construction.</p> </div> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"> <a name="currentDiagramFile" class="tsd-anchor"></a> <h3> current<wbr>Diagram<wbr>File <span class="tsd-signature-symbol">: </span><a href="DiagramFile.html" class="tsd-signature-type">DiagramFile</a> </h3> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Get or set the currently open <a href="DiagramFile.html">DiagramFile</a>. By default, currentDiagramFile is set when a file is loaded from storage, saved to storage (if saved to a different path from the currentDiagramFile.path), or deleted from storage (if the deleted file is the currently open one). The default value is a <a href="DiagramFile.html">DiagramFile</a> with null id, name, and path values.</p> </div> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"> <a name="defaultModel" class="tsd-anchor"></a> <h3> default<wbr>Model <span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span> </h3> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Get / set the defaultModel data for the app used by an instance of GoCloudStorage. defaultModel is used when creating new diagrams. See <a href="GoCloudStorage.html#create">create</a>.</p> </div> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"> <a name="iconsRelativeDirectory" class="tsd-anchor"></a> <h3> icons<wbr>Relative<wbr>Directory <span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span> </h3> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Get / set iconsRelativeDirectory, the directory path relative to the page in which this instance of GoCloudStorage exists, in which the storage service brand icons can be found. The default value is &quot;../goCloudStorageIcons/&quot;.</p> </div> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"> <a name="isAutoSaving" class="tsd-anchor"></a> <h3> is<wbr>Auto<wbr>Saving <span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span> </h3> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Get or set isAutoSaving property. If true, the <a href="GoCloudStorage.html#managedDiagrams">managedDiagrams</a> will be saved to storage after every <a href="https://gojs.net/latest/api/symbols/Transaction.html"> Transaction</a> (only if <a href="GoCloudStorage.html#currentDiagramFile">currentDiagramFile</a> holds a non-null path value). Additionally, if isAutoSaving is true, users will be prompted to save newly created diagrams when created with <a href="GoCloudStorage.html#create">create</a>. The default value for isAutoSaving is <code>true</code>.</p> </div> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"> <a name="managedDiagrams" class="tsd-anchor"></a> <h3> managed<wbr>Diagrams <span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Diagram</span><span class="tsd-signature-symbol">[]</span> </h3> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Get / set the GoJS <a href="https://gojs.net/latest/api/symbols/Diagram.html">Diagram</a>s associated with this instance of GoCloudStorage. Set with a parameter during construction.</p> </div> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class"> <a name="serviceName" class="tsd-anchor"></a> <h3> <span class="tsd-flag ts-flagReadOnly">Read-only</span> service<wbr>Name <span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span> </h3> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Get the name of the cloud storage service being used; i.e. &quot;Dropbox&quot;</p> </div> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class"> <a name="ui" class="tsd-anchor"></a> <h3> <span class="tsd-flag ts-flagReadOnly">Read-only</span> ui <span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">HTMLElement</span> </h3> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Get the UI element associated with this instance of GoCloudStorage. This is a custom filepicker window for <a href="GoDropBox.html">GoDropBox</a> and <a href="GoLocalStorage.html">GoLocalStorage</a>. It is a save prompt for <a href="GoOneDrive.html">GoOneDrive</a> and <a href="GoGoogleDrive.html">GoGoogleDrive</a> (both these classes use third party UI for storage navigation, provided by Microsoft and Google, respectively). The UI element is created during construction.</p> </div> </li> </ul> </section> </section> <section class="tsd-panel-group tsd-member-group "> <h2>Methods</h2> <section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"> <a name="authorize" class="tsd-anchor"></a> <h3> authorize </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"> <li class="tsd-signature tsd-kind-icon">authorize<span class="tsd-signature-symbol">(</span>refreshToken<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Explicitly authorize a currently-signed in user of the storage service to use the application associated with this instance of GoCloudStorage (via <a href="GoCloudStorage.html#clientId">clientId</a>. If no currently signed-in user exists, prompt user to sign into their account, then authorize that account.</p> <p><b>Note:</b> Authorization does not occur (and is not possible or necessary) with <a href="GoLocalStorage.html">GoLocalStorage</a>. Instead, <a href="GoLocalStorage.html#authorize">GoLocalStorage.authorize</a> ensures localStorage exists in the browser.</p> </div> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5><span class="tsd-flag ts-flagDefault value">Default value</span> refreshToken: <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> =&nbsp;false</span></h5> <div class="tsd-comment tsd-typography"> <p>Whether to get a new access token (true) or try to find / use an existing one. Exact behavior varies from subclass to subclass. See:</p> <ul> <li><a href="GoLocalStorage.html#authorize">GoLocalStorage.authorize</a></li> <li><a href="GoDropBox.html#authorize">GoDropBox.authorize</a></li> <li><a href="GoGoogleDrive.html#authorize">GoGoogleDrive.authorize</a></li> <li><a href="GoOneDrive.html#authorize">GoOneDrive.authorize</a></li> </ul> </div> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></h4> <p>Returns a Promise that resolves with a boolean stating whether authorization was succesful (true) or failed (false).</p> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"> <a name="checkFileExists" class="tsd-anchor"></a> <h3> check<wbr>File<wbr>Exists </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"> <li class="tsd-signature tsd-kind-icon">check<wbr>File<wbr>Exists<span class="tsd-signature-symbol">(</span>path<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Check whether a file exists at a given path.</p> </div> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>path: <span class="tsd-signature-type">string</span></h5> <div class="tsd-comment tsd-typography"> <p>A valid filepath. What is meant by this varies from subclass to subclass. Rules for valid filepaths by subclass:</p> <ul> <li><a href="GoLocalStorage.html">GoLocalStorage</a>: Just the filename (the key in local storage); i.e. <code>example.diagram</code></li> <li><a href="GoDropBox.html">GoDropBox</a>: <code>/{path-to-file}/{filename}</code>; i.e. <code>/Public/example.diagram</code></li> <li><a href="GoGoogleDrive.html">GoGoogleDrive</a>: Use Google Drive-given file IDs. Parameter is still called &#39;path&#39; in GoGoogleDrive methods to preserve system nomenclature.</li> <li><a href="GoOneDrive.html">GoOneDrive</a>: <code>/drive/root:/{path-to-file}/{filename}</code>; i.e. <code>/drive/root:/Documents/example.diagram</code></li> </ul> </div> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></h4> <p>Returns a Promise that resolves with a boolean stating whether a file exists at a given path.</p> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"> <a name="create" class="tsd-anchor"></a> <h3> create </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"> <li class="tsd-signature tsd-kind-icon">create<span class="tsd-signature-symbol">(</span>path<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Set each of <a href="GoCloudStorage.html#managedDiagrams">managedDiagrams</a>&#39; .model to <a href="GoCloudStorage.html#defaultModel">defaultModel</a> (if defaultModel is null, each model will be set to a new <a href="https://gojs.net/latest/api/symbols/GraphLinksModel.html">GraphLinksModel</a> by default). If <a href="GoCloudStorage.html#isAutoSaving">isAutoSaving</a> is true and no path parameter is supplied, users will be immediately prompted to save their new diagrams to cloud storage.</p> </div> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5><span class="tsd-flag ts-flagOptional">Optional</span> path: <span class="tsd-signature-type">string</span></h5> <div class="tsd-comment tsd-typography"> <p>If a valid filepath is supplied, save each of <a href="GoCloudStorage.html#managedDiagrams">managedDiagrams</a>&#39; model data to this path. No UI of any sort appears. What is meant by &quot;valid filepath&quot; varies from subclass to subclass. Rules for valid filepaths by subclass:</p> <ul> <li><a href="GoLocalStorage.html">GoLocalStorage</a>: Just the filename (the key in local storage); i.e. <code>example.diagram</code></li> <li><a href="GoDropBox.html">GoDropBox</a>: <code>/{path-to-file}/{filename}</code>; i.e. <code>/Public/example.diagram</code></li> <li><a href="GoGoogleDrive.html">GoGoogleDrive</a>: Use Google Drive-given file IDs. Parameter is still called &#39;path&#39; in GoGoogleDrive methods to preserve system nomenclature.</li> <li><a href="GoOneDrive.html">GoOneDrive</a>: <code>/drive/root:/{path-to-file}/{filename}</code>; i.e. <code>/drive/root:/Documents/example.diagram</code></li> </ul> </div> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></h4> <p>Returns a Promise that resolves with a <a href="DiagramFile.html">DiagramFile</a> representing the newly created file.</p> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"> <a name="getFile" class="tsd-anchor"></a> <h3> get<wbr>File </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"> <li class="tsd-signature tsd-kind-icon">get<wbr>File<span class="tsd-signature-symbol">(</span>path<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Get the file at a given path in storage. The exact file data given varies from storage service to storage service, though all include name, path, id data. The exact syntax of these data fields may vary. See subclass-specific documentation for more details.</p> <ul> <li><a href="GoLocalStorage.html#getFile">GoLocalStorage.getFile</a></li> <li><a href="GoDropBox.html#getFile">GoDropBox.getFile</a></li> <li><a href="GoGoogleDrive.html#getFile">GoGoogleDrive.getFile</a></li> <li><a href="GoOneDrive.html#getFile">GoOneDrive.getFile</a></li> </ul> </div> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>path: <span class="tsd-signature-type">string</span></h5> <div class="tsd-comment tsd-typography"> <p>A valid filepath. What is meant by this varies from subclass to subclass. Rules for valid filepaths by subclass:</p> <ul> <li><a href="GoLocalStorage.html">GoLocalStorage</a>: Just the filename (the key in local storage); i.e. <code>example.diagram</code></li> <li><a href="GoDropBox.html">GoDropBox</a>: <code>/{path-to-file}/{filename}</code>; i.e. <code>/Public/example.diagram</code></li> <li><a href="GoGoogleDrive.html">GoGoogleDrive</a>: Use Google Drive-given file IDs. Parameter is still called &#39;path&#39; in GoGoogleDrive methods to preserve system nomenclature.</li> <li><a href="GoOneDrive.html">GoOneDrive</a>: <code>/drive/root:/{path-to-file}/{filename}</code>; i.e. <code>/drive/root:/Documents/example.diagram</code></li> </ul> </div> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></h4> <p>Return a Promise that resolves with the file at a given path in storage(or null).</p> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"> <a name="getUserInfo" class="tsd-anchor"></a> <h3> get<wbr>User<wbr>Info </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"> <li class="tsd-signature tsd-kind-icon">get<wbr>User<wbr>Info<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Get information about the currently logged in user. This information varies from subclass to subclass. For more info, see:</p> <ul> <li><a href="GoLocalStorage.html#getUserInfo">GoLocalStorage.getUserInfo</a></li> <li><a href="GoDropBox.html#getUserInfo">GoDropBox.getUserInfo</a></li> <li><a href="GoGoogleDrive.html#getUserInfo">GoGoogleDrive.getUserInfo</a></li> <li><a href="GoOneDrive.html#getUserInfo">GoOneDrive.getUserInfo</a></li> </ul> </div> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></h4> <p>Returns a Promise that resolves with information about the currently logged in user</p> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"> <a name="hideUI" class="tsd-anchor"></a> <h3> hideUI </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"> <li class="tsd-signature tsd-kind-icon">hideUI<span class="tsd-signature-symbol">(</span>isActionCanceled<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Hide the <a href="GoCloudStorage.html#ui">ui</a> element associated with this instance of GoCloudStorage. Used in some UI element onclicks.</p> </div> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5><span class="tsd-flag ts-flagDefault value">Default value</span> isActionCanceled: <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> =&nbsp;false</span></h5> <div class="tsd-comment tsd-typography"> <p>If action (save, delete, load) is canceled, resolve Promise (returned previously in <a href="GoCloudStorage.html#showUI">showUI</a>) with a &#39;Canceled&#39; notification. Default value is false.</p> </div> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"> <a name="load" class="tsd-anchor"></a> <h3> load </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"> <li class="tsd-signature tsd-kind-icon">load<span class="tsd-signature-symbol">(</span>path<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Load diagram model data from a given cloud storage-specific file path into <a href="GoCloudStorage.html#managedDiagrams">managedDiagrams</a>.</p> </div> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>path: <span class="tsd-signature-type">string</span></h5> <div class="tsd-comment tsd-typography"> <p>A valid filepath. What is meant by this varies from subclass to subclass. Rules for valid filepaths by subclass:</p> <ul> <li><a href="GoLocalStorage.html">GoLocalStorage</a>: Just the filename (the key in local storage); i.e. <code>example.diagram</code></li> <li><a href="GoDropBox.html">GoDropBox</a>: <code>/{path-to-file}/{filename}</code>; i.e. <code>/Public/example.diagram</code></li> <li><a href="GoGoogleDrive.html">GoGoogleDrive</a>: Use Google Drive-given file IDs. Parameter is still called &#39;path&#39; in GoGoogleDrive methods to preserve system nomenclature.</li> <li><a href="GoOneDrive.html">GoOneDrive</a>: <code>/drive/root:/{path-to-file}/{filename}</code>; i.e. <code>/drive/root:/Documents/example.diagram</code></li> </ul> </div> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></h4> <p>Returns a Promise that resolves with a <a href="DiagramFile.html">DiagramFile</a></p> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"> <a name="loadWithUI" class="tsd-anchor"></a> <h3> load<wbr>WithUI </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"> <li class="tsd-signature tsd-kind-icon">load<wbr>WithUI<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Load diagram model data from cloud storage into <a href="GoCloudStorage.html#managedDiagrams">managedDiagrams</a> using the <a href="GoCloudStorage.html#ui">ui</a> for this class.</p> </div> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></h4> <p>Returns a Promise that resolves with a <a href="DiagramFile.html">DiagramFile</a> representing the loaded file</p> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"> <a name="remove" class="tsd-anchor"></a> <h3> remove </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"> <li class="tsd-signature tsd-kind-icon">remove<span class="tsd-signature-symbol">(</span>path<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Remove a file containing diagram model data at a given cloud storage-specific file path.</p> </div> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>path: <span class="tsd-signature-type">string</span></h5> <div class="tsd-comment tsd-typography"> <p>A valid filepath. What is meant by this varies from subclass to subclass. Rules for valid filepaths by subclass:</p> <ul> <li><a href="GoLocalStorage.html">GoLocalStorage</a>: Just the filename (the key in local storage); i.e. <code>example.diagram</code></li> <li><a href="GoDropBox.html">GoDropBox</a>: <code>/{path-to-file}/{filename}</code>; i.e. <code>/Public/example.diagram</code></li> <li><a href="GoGoogleDrive.html">GoGoogleDrive</a>: Use Google Drive-given file IDs. Parameter is still called &#39;path&#39; in GoGoogleDrive methods to preserve system nomenclature.</li> <li><a href="GoOneDrive.html">GoOneDrive</a>: <code>/drive/root:/{path-to-file}/{filename}</code>; i.e. <code>/drive/root:/Documents/example.diagram</code></li> </ul> </div> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></h4> <p>Returns a Promise that resolves with a <a href="DiagramFile.html">DiagramFile</a> representing the deleted file.</p> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"> <a name="removeWithUI" class="tsd-anchor"></a> <h3> remove<wbr>WithUI </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"> <li class="tsd-signature tsd-kind-icon">remove<wbr>WithUI<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Remove a given diagram from cloud storage using the <a href="GoCloudStorage.html#ui">ui</a> for this class.</p> </div> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></h4> <p>Returns a Promise that resolves with a <a href="DiagramFile.html">DiagramFile</a> representing the deleted file</p> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"> <a name="save" class="tsd-anchor"></a> <h3> save </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"> <li class="tsd-signature tsd-kind-icon">save<span class="tsd-signature-symbol">(</span>path<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Save <a href="GoCloudStorage.html#managedDiagrams">managedDiagrams</a>&#39; model data to storage. If path is supplied save to that path. If no path is supplied but <a href="GoCloudStorage.html#currentDiagramFile">currentDiagramFile</a> has non-null, valid properties, update saved diagram file content at the path in storage corresponding to currentDiagramFile.path with current managedDiagrams&#39; model data.</p> <p><p>Rules for valid filepaths by subclass: </p></p> <ul> <li><a href="GoLocalStorage.html">GoLocalStorage</a>: Just the filename (the key in local storage); i.e. <code>example.diagram</code></li> <li><a href="GoDropBox.html">GoDropBox</a>: <code>/{path-to-file}/{filename}</code>; i.e. <code>/Public/example.diagram</code></li> <li><a href="GoGoogleDrive.html">GoGoogleDrive</a>: Use Google Drive-given file IDs. Parameter is still called &#39;path&#39; in GoGoogleDrive methods to preserve system nomenclature.</li> <li><a href="GoOneDrive.html">GoOneDrive</a>: <code>/drive/root:/{path-to-file}/{filename}</code>; i.e. <code>/drive/root:/Documents/example.diagram</code></li> </ul> </div> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5><span class="tsd-flag ts-flagOptional">Optional</span> path: <span class="tsd-signature-type">string</span></h5> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></h4> <p>Returns a Promise that resolves with a <a href="DiagramFile.html">DiagramFile</a> representing the saved file</p> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"> <a name="saveWithUI" class="tsd-anchor"></a> <h3> save<wbr>WithUI </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"> <li class="tsd-signature tsd-kind-icon">save<wbr>WithUI<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Save the current diagram&#39;s model data to cloud storage with the <a href="GoCloudStorage.html#ui">ui</a> for this class.</p> </div> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></h4> <p>Returns a Promise that resolves with a <a href="DiagramFile.html">DiagramFile</a> representing the saved file.</p> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"> <a name="showUI" class="tsd-anchor"></a> <h3> showUI </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"> <li class="tsd-signature tsd-kind-icon">showUI<span class="tsd-signature-symbol">(</span>action<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Show the <a href="GoCloudStorage.html#ui">ui</a> element associated with this instance of GoCloudStorage.</p> </div> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>action: <span class="tsd-signature-type">string</span></h5> <div class="tsd-comment tsd-typography"> <p>Clarify what action is being done after file selection. Acceptable values: Save, Delete, Load</p> </div> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Object</span><span class="tsd-signature-symbol">&gt;</span></h4> <p>Returns a Promise that resolves (in <a href="GoCloudStorage.html#save">save</a>, <a href="GoCloudStorage.html#load">load</a>, or <a href="GoCloudStorage.html#remove">remove</a> with an <a href="DiagramFile.html">DiagramFile</a> representing the saved/loaded/deleted file</p> </li> </ul> </section> </section> </div> <div class="col-4 col-menu menu-sticky-wrap menu-highlight"> <nav class="tsd-navigation primary"> <ul> <li class="globals "> <a href="../index.html"><em>Go <wbr>Cloud <wbr>Storage <wbr>Class <wbr>Index</em></a> </li> </ul> </nav> <nav class="tsd-navigation secondary menu-sticky"> <ul class="before-current"> </ul> <ul class="current"> <li class="current tsd-kind-class"> <a href="GoCloudStorage.html" class="tsd-kind-icon">Go<wbr>Cloud<wbr>Storage</a> <ul> <li class=" tsd-kind-constructor tsd-parent-kind-class"> <a href="GoCloudStorage.html#constructor" class="tsd-kind-icon">constructor</a> </li> <li class=" tsd-kind-get-signature tsd-parent-kind-class"> <a href="GoCloudStorage.html#className" class="tsd-kind-icon">class<wbr>Name</a> </li> <li class=" tsd-kind-get-signature tsd-parent-kind-class"> <a href="GoCloudStorage.html#clientId" class="tsd-kind-icon">client<wbr>Id</a> </li> <li class=" tsd-kind-accessor tsd-parent-kind-class"> <a href="GoCloudStorage.html#currentDiagramFile" class="tsd-kind-icon">current<wbr>Diagram<wbr>File</a> </li> <li class=" tsd-kind-accessor tsd-parent-kind-class"> <a href="GoCloudStorage.html#defaultModel" class="tsd-kind-icon">default<wbr>Model</a> </li> <li class=" tsd-kind-accessor tsd-parent-kind-class"> <a href="GoCloudStorage.html#iconsRelativeDirectory" class="tsd-kind-icon">icons<wbr>Relative<wbr>Directory</a> </li> <li class=" tsd-kind-accessor tsd-parent-kind-class"> <a href="GoCloudSt