UNPKG

markgojs

Version:

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

758 lines 59.5 kB
<!doctype html> <html class="default no-js"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>GoGoogleDrive | 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 GoGoogleDrive</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> <a href="GoCloudStorage.html" class="tsd-signature-type">GoCloudStorage</a> <ul class="tsd-hierarchy"> <li> <span class="target">GoGoogleDrive</span> </li> </ul> </li> </ul> </section> <section class="tsd-panel tsd-comment"> <div class="tsd-comment tsd-typography"> <p>Class for saving / loading 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> to / from Google Drive. Uses the <a href="https://developers.google.com/drive/v3/reference/">Google Drive V3 API</a> by use of a <a href="https://developers.google.com/api-client-library/javascript/">Google Client</a> API object. As with all <a href="GoCloudStorage.html">GoCloudStorage</a> subclasses (with the exception of <a href="GoLocalStorage.html">GoLocalStorage</a>, any page using GoDropBox must be served on a web server. </p> <p><b>Note</b>: Any page using GoGoogleDrive must include a script tag with src set to <a href="https://apis.google.com/js/api.js">https://apis.google.com/js/api.js</a>. </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 tsd-is-overwrite"><a href="GoGoogleDrive.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 tsd-is-inherited"><a href="GoGoogleDrive.html#className" class="tsd-kind-icon">class<wbr>Name</a></li> <li class="tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited"><a href="GoGoogleDrive.html#clientId" class="tsd-kind-icon">client<wbr>Id</a></li> <li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-inherited"><a href="GoGoogleDrive.html#currentDiagramFile" class="tsd-kind-icon">current<wbr>Diagram<wbr>File</a></li> <li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-inherited"><a href="GoGoogleDrive.html#defaultModel" class="tsd-kind-icon">default<wbr>Model</a></li> <li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="GoGoogleDrive.html#gapiClient" class="tsd-kind-icon">gapi<wbr>Client</a></li> <li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="GoGoogleDrive.html#gapiPicker" class="tsd-kind-icon">gapi<wbr>Picker</a></li> <li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-inherited"><a href="GoGoogleDrive.html#iconsRelativeDirectory" class="tsd-kind-icon">icons<wbr>Relative<wbr>Directory</a></li> <li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-inherited"><a href="GoGoogleDrive.html#isAutoSaving" class="tsd-kind-icon">is<wbr>Auto<wbr>Saving</a></li> <li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-inherited"><a href="GoGoogleDrive.html#managedDiagrams" class="tsd-kind-icon">managed<wbr>Diagrams</a></li> <li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="GoGoogleDrive.html#pickerApiKey" class="tsd-kind-icon">picker<wbr>Api<wbr>Key</a></li> <li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="GoGoogleDrive.html#scope" class="tsd-kind-icon">scope</a></li> <li class="tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited"><a href="GoGoogleDrive.html#serviceName" class="tsd-kind-icon">service<wbr>Name</a></li> <li class="tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited"><a href="GoGoogleDrive.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 tsd-is-overwrite"><a href="GoGoogleDrive.html#authorize" class="tsd-kind-icon">authorize</a></li> <li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="GoGoogleDrive.html#checkFileExists" class="tsd-kind-icon">check<wbr>File<wbr>Exists</a></li> <li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a href="GoGoogleDrive.html#create" class="tsd-kind-icon">create</a></li> <li class="tsd-kind-method tsd-parent-kind-class"><a href="GoGoogleDrive.html#createPicker" class="tsd-kind-icon">create<wbr>Picker</a></li> <li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="GoGoogleDrive.html#getFile" class="tsd-kind-icon">get<wbr>File</a></li> <li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="GoGoogleDrive.html#getUserInfo" class="tsd-kind-icon">get<wbr>User<wbr>Info</a></li> <li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><a href="GoGoogleDrive.html#hideUI" class="tsd-kind-icon">hideUI</a></li> <li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="GoGoogleDrive.html#load" class="tsd-kind-icon">load</a></li> <li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="GoGoogleDrive.html#loadWithUI" class="tsd-kind-icon">load<wbr>WithUI</a></li> <li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="GoGoogleDrive.html#remove" class="tsd-kind-icon">remove</a></li> <li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="GoGoogleDrive.html#removeWithUI" class="tsd-kind-icon">remove<wbr>WithUI</a></li> <li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="GoGoogleDrive.html#save" class="tsd-kind-icon">save</a></li> <li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="GoGoogleDrive.html#saveWithUI" class="tsd-kind-icon">save<wbr>WithUI</a></li> <li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="GoGoogleDrive.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 tsd-is-overwrite"> <a name="constructor" class="tsd-anchor"></a> <h3> constructor </h3> <ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite"> <li class="tsd-signature tsd-kind-icon">new <wbr>GoGoogle<wbr>Drive<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>, clientId<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, pickerApiKey<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, defaultModel<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="GoGoogleDrive.html" class="tsd-signature-type">GoGoogleDrive</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 Google Drive.</p> </div> </li> <li> <h5>clientId: <span class="tsd-signature-type">string</span></h5> <div class="tsd-comment tsd-typography"> <p>The client ID of the Google application linked with this instance of GoGoogleDrive (given in <a href="https://console.developers.google.com">Google Developers Console</a> after registering a Google app)</p> </div> </li> <li> <h5>pickerApiKey: <span class="tsd-signature-type">string</span></h5> <div class="tsd-comment tsd-typography"> <p>The <a href="https://developers.google.com/picker/">Google Picker</a> API key. Once <a href="https://developers.google.com/picker/docs/">obtained</a>, it can be found in the <a href="https://console.developers.google.com">Google Developers Console</a></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> 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 GoGoogleDrive 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="GoGoogleDrive.html" class="tsd-signature-type">GoGoogleDrive</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 tsd-is-inherited"> <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 tsd-is-inherited"> <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 tsd-is-inherited"> <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 tsd-is-inherited"> <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="GoGoogleDrive.html#create">create</a>.</p> </div> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class"> <a name="gapiClient" class="tsd-anchor"></a> <h3> <span class="tsd-flag ts-flagReadOnly">Read-only</span> gapi<wbr>Client <span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span> </h3> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Get Google API Client. The Google API Client is used in GoGoogleDrive to make many different requests to Google Drive, however, it can be used with other Google Libraries to achieve many purposes. To read more about what can be done with a Google API Client object, click <a href="https://developers.google.com/api-client-library/javascript/start/start-js">here</a>. gapiClient is set after a succesful authorization in <a href="GoGoogleDrive.html#authorize">authorize</a>.</p> <p>gapiClient is really of type Object, not type any. However, the Google libraries are all written in JavaScript and do not provide d.ts files. As such, to avoid TypeScript compilation errors, both gapiClient and <a href="GoGoogleDrive.html#gapiPicker">gapiPicker</a> properties are declared as type any.</p> </div> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class"> <a name="gapiPicker" class="tsd-anchor"></a> <h3> <span class="tsd-flag ts-flagReadOnly">Read-only</span> gapi<wbr>Picker <span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span> </h3> <ul class="tsd-descriptions"> <li class="tsd-description"> <div class="tsd-comment tsd-typography"> <p>Get <a href="https://developers.google.com/picker/docs/">Google Picker</a> API Object. Used to show the Google filepicker when loading / deleting files, in the <a href="GoGoogleDrive.html#createPicker">createPicker</a> function. gapiPicker is set after a succesful authorization in <a href="GoGoogleDrive.html#authorize">authorize</a>.</p> <p>gapiPicker is really of type Object, not type any. However, the Google libraries are all written in JavaScript and do not provide d.ts files. As such, to avoid TypeScript compilation errors, both <a href="GoGoogleDrive.html#gapiClient">gapiClient</a> and gapiPicker properties are declared as type any.</p> </div> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class tsd-is-inherited"> <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 tsd-is-inherited"> <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="GoGoogleDrive.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="GoGoogleDrive.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="GoGoogleDrive.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 tsd-is-inherited"> <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="pickerApiKey" class="tsd-anchor"></a> <h3> <span class="tsd-flag ts-flagReadOnly">Read-only</span> picker<wbr>Api<wbr>Key <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 Google Picker API key associated with this instance of GoGoogleDrive. This is set with a parameter during construction. A Google Picker API key can be obtained by following the process detailed <a href="https://developers.google.com/picker/docs/">here</a>, and it can be found in your <a href="https://console.developers.google.com"> Google Developers Console</a>. The pickerApiKey is used only in <a href="GoGoogleDrive.html#createPicker">createPicker</a>.</p> </div> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class"> <a name="scope" class="tsd-anchor"></a> <h3> <span class="tsd-flag ts-flagReadOnly">Read-only</span> scope <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 scope for the application linked to this instance of GoGoogleDrive (via <a href="GoGoogleDrive.html#clientId">clientId</a>). Scope tells the <a href="GoGoogleDrive.html#gapiClient">gapiClient</a> what permissions it has in making requests. Read more on scope <a href="https://developers.google.com/drive/v3/web/about-auth">here</a>. The default value is &#39;<a href="https://www.googleapis.com/auth/drive&#39;">https://www.googleapis.com/auth/drive&#39;</a>, set during construction. This can only be modified by changing the source code for GoGoogleDrive. As changing scope impacts gapiClient&#39;s permissions (and could break the usability of some or all functions of GoGoogleDrive), this is not recommended.</p> </div> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited"> <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 tsd-is-inherited"> <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 tsd-is-overwrite"> <a name="authorize" class="tsd-anchor"></a> <h3> authorize </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"> <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>Check if there is a signed in user who has authorized the application connected to this instance of GoGoogleDrive (via <a href="GoGoogleDrive.html#clientId">clientId</a>. If not, prompt user to sign into their Google Account and authorize the application. On successful authorization, set <a href="GoGoogleDrive.html#gapiClient">gapiClient</a> and <a href="GoGoogleDrive.html#gapiPicker">gapiPicker</a>.</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 token (change current Google User)(true) or attempt to fetch a token for the currently signed in Google User (false).</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 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 tsd-is-overwrite"> <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 tsd-is-overwrite"> <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 GoogleDrive file ID -- not a path. Named &#39;path&#39; only to preserve system nomenclature</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 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 tsd-is-inherited"> <a name="create" class="tsd-anchor"></a> <h3> create </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited"> <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="GoGoogleDrive.html#managedDiagrams">managedDiagrams</a>&#39; .model to <a href="GoGoogleDrive.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="GoGoogleDrive.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="GoGoogleDrive.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="createPicker" class="tsd-anchor"></a> <h3> create<wbr>Picker </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"> <li class="tsd-signature tsd-kind-icon">create<wbr>Picker<span class="tsd-signature-symbol">(</span>cb<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Function</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>Launch <a href="https://developers.google.com/picker/docs/">Google Picker</a>, a filepicker UI used to graphically select files in Google Drive to load or delete. This is accomplished with <a href="GoGoogleDrive.html#gapiPicker">gapiPicker</a>, which is set after succesful authorization, so this function may only be called after a successful call to <a href="GoGoogleDrive.html#authorize">authorize</a>.</p> </div> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>cb: <span class="tsd-signature-type">Function</span></h5> <div class="tsd-comment tsd-typography"> <p>Callback function that takes the chosen file from the picker as a parameter</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 tsd-is-overwrite"> <a name="getFile" class="tsd-anchor"></a> <h3> get<wbr>File </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"> <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 Google Drive file reference object at a given path. Fields include: </p> <ul> <li>id: The Google Drive-given ID of the file at the provided path</li> <li>name: The name of the file saved to Google Drive at the provided path</li> <li>mimeType: For diagram files, this will always be <code>text/plain</code></li> <li>kind: This will usually be <code>drive#file</code>.</li> </ul> <p><b>Note:</b> Name, ID, and path values are requisite for creating valid <a href="DiagramFile.html">DiagramFile</a>s. When creating a DiagramFile for a diagram saved to Google Drive, provide the same value for name and path properties.</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 GoogleDrive file ID -- not a path. Named &#39;path&#39; only to preserve system nomenclature</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 with a Google Drive file reference object at a given path</p> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"> <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 tsd-is-overwrite"> <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 <a href="https://developers.google.com/drive/v3/reference/about#resource">information</a> about the currently logged in Google user. Some fields of particular note include:</p> <ul> <li>displayName</li> <li>emailAdrdress</li> <li>kind</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 Google user</p> </li> </ul> </section> <section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-inherited"> <a name="hideUI" class="tsd-anchor"></a> <h3> hideUI </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-inherited"> <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="GoGoogleDrive.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="GoGoogleDrive.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 tsd-is-overwrite"> <a name="load" class="tsd-anchor"></a> <h3> load </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"> <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>Get the contents of a saved diagram from Google Drive using a given Google Drive file ID. No UI of any sort appears.</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 GoogleDrive file ID -- not a path. Named &#39;path&#39; only to preserve GoCloudStorage system nomenclature</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 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 tsd-is-overwrite"> <a name="loadWithUI" class="tsd-anchor"></a> <h3> load<wbr>WithUI </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"> <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 the contents of a saved diagram from Google Drive using the Google Picker (see <a href="GoGoogleDrive.html#gapiPicker">gapiPicker</a> and <a href="GoGoogleDrive.html#createPicker">createPicker</a>).</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 tsd-is-overwrite"> <a name="remove" class="tsd-anchor"></a> <h3> remove </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"> <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>Delete a the diagram from a user&#39;s Google Drive with the given Google Drive file ID. No UI of any sort appears.</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 GoogleDrive file ID -- not a path. Named &#39;path&#39; only to preserve system nomenclature</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 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 tsd-is-overwrite"> <a name="removeWithUI" class="tsd-anchor"></a> <h3> remove<wbr>WithUI </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"> <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>Delete a selected diagram from a user&#39;s Google Drive using the Google Picker (see <a href="GoGoogleDrive.html#gapiPicker">gapiPicker</a> and <a href="GoGoogleDrive.html#createPicker">createPicker</a>).</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 tsd-is-overwrite"> <a name="save" class="tsd-anchor"></a> <h3> save </h3> <ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"> <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="GoGoogleDrive.html#managedDiagrams">managedDiagrams</a>&#39; model data to GoGoogleDrive. If path is supplied save to that path. If no path is supplied but <a href="GoGoogleDrive.html#currentDiagramFile">currentDiagramFile</a> has non-null, valid properties, update saved diagram file content at the path in GoGoogleDrive corresponding to currentDiagramFile.path with current managedDiagrams&#39; model data. If no path is supplied and currentDiagramFile is null or has null properties, this calls <a href="GoGoogleDrive.html#saveWithUI">saveWithUI</a>.</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>A name (not a path, not an id) to save this diagram file in Google Drive under. Named &#39;path&#39; only to preserve system nomenclature</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 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 tsd-is-overwrite"> <