You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

578 lines
33 KiB

<!doctype html>
<html class="default no-js">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>GoLocalStorage | GoJS 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">GoJS 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>
</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 &lt;br/&gt;version 2.0.17 for TypeScript/HTML<br/>by <a href="https://www.nwoods.com/">Northwoods Software&reg;</a>-->
<b>GoJS</b>&reg; Diagramming Components<br/>version 2.0.17<br/>by <a href="https://www.nwoods.com/">Northwoods Software&reg;</a>
</div>
<div>
<h1>Class GoLocalStorage</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-extension">
<p>
This is part of GoCloudStorage and not part of the main GoJS library.
Storage can be found in the GoJS kit under the <code>projects</code> folder.
See the <a href="../../intro/storage.html">Storage intro page</a> for more information.
</p>
</section>
<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">GoLocalStorage</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="Model.html">Model</a>s to / from Local Storage.
GoLocalStorage is the only <a href="GoCloudStorage.html">GoCloudStorage</a> subclass than can be used in a local page;
that is, one not served by a web server.</p>
<p><strong>Note</strong>: This class will not work with browsers that do not have Local Storage support
(like some old versions of Internet Explorer).</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="GoLocalStorage.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="GoLocalStorage.html#localStorage" class="tsd-kind-icon">local<wbr>Storage</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="GoLocalStorage.html#authorize" class="tsd-kind-icon">authorize</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="GoLocalStorage.html#checkFileExists" class="tsd-kind-icon">check<wbr>File<wbr>Exists</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="GoLocalStorage.html#getFile" class="tsd-kind-icon">get<wbr>File</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="GoLocalStorage.html#load" class="tsd-kind-icon">load</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="GoLocalStorage.html#loadWithUI" class="tsd-kind-icon">load<wbr>WithUI</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="GoLocalStorage.html#remove" class="tsd-kind-icon">remove</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="GoLocalStorage.html#removeWithUI" class="tsd-kind-icon">remove<wbr>WithUI</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="GoLocalStorage.html#save" class="tsd-kind-icon">save</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="GoLocalStorage.html#saveWithUI" class="tsd-kind-icon">save<wbr>WithUI</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="GoLocalStorage.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>GoLocal<wbr>Storage<span class="tsd-signature-symbol">(</span>managedDiagrams<span class="tsd-signature-symbol">: </span><a href="Diagram.html" class="tsd-signature-type">Diagram</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Array</span><span class="tsd-signature-symbol">&lt;</span><a href="Diagram.html" class="tsd-signature-type">Diagram</a><span class="tsd-signature-symbol">&gt;</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="GoLocalStorage.html" class="tsd-signature-type">GoLocalStorage</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: <a href="Diagram.html" class="tsd-signature-type">Diagram</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Array</span><span class="tsd-signature-symbol">&lt;</span><a href="Diagram.html" class="tsd-signature-type">Diagram</a><span class="tsd-signature-symbol">&gt;</span></h5>
<div class="tsd-comment tsd-typography">
<p>An array of GoJS <a href="Diagram.html">Diagram</a>s whose model(s) will be saved to / loaded from Local Storage.
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="Model.html#toJson">Model.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 GoLocalStorage 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="GoLocalStorage.html" class="tsd-signature-type">GoLocalStorage</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="localStorage" class="tsd-anchor"></a>
<h3>
<span class="tsd-flag ts-flagReadOnly">Read-only</span>
local<wbr>Storage
<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Storage</span> </h3>
<ul class="tsd-descriptions">
<li class="tsd-description">
<div class="tsd-comment tsd-typography">
<p>Get the browser window&#39;s <a href="https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage">Local Storage</a> property.</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>
<span class="tsd-flag ts-flagOverride">Override</span>
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>Check if Local Storage is supported by the current 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>This parameter can be ignored. It exists only to maintain GoCloudStorage system structure</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 (true if local storage is supported, false if not)</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>
<span class="tsd-flag ts-flagOverride">Override</span>
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 in Local Storage 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 key corresponding to a saved diagram file in Local Storage</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 in LocalStorage at a given path</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>
<span class="tsd-flag ts-flagOverride">Override</span>
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 information about a diagram file saved to Local Storage. This data includes:</p>
<ul>
<li>content: The content of the saved file (a string respresentation of a GoJS Diagram Model)</li>
<li>id: The key of the file in local storage</li>
<li>name: Same as id value</li>
<li>path: Same as id value</li>
</ul>
<p><strong>Note:</strong> Id, name, and path are all provided (despite being the same). They are required for creating valid <a href="DiagramFile.html">DiagramFile</a>s.</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 key corresponding to a saved diagram file in Local Storage</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 information about a diagram file saved to local storage</p>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="load" class="tsd-anchor"></a>
<h3>
<span class="tsd-flag ts-flagOverride">Override</span>
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>Get the contents of a given file; load to <a href="GoCloudStorage.html#managedDiagrams">managedDiagrams</a> model.</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 localstorage key to load diagram model data from</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">
<a name="loadWithUI" class="tsd-anchor"></a>
<h3>
<span class="tsd-flag ts-flagOverride">Override</span>
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>Get the contents of a given file; load to <a href="GoCloudStorage.html#managedDiagrams">managedDiagrams</a> model. Use the custom filepicker <a href="GoCloudStorage.html#ui">ui</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">
<a name="remove" class="tsd-anchor"></a>
<h3>
<span class="tsd-flag ts-flagOverride">Override</span>
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>Delete a given diagram from Local Storage.</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 localstorage key to delete diagram model data from</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">
<a name="removeWithUI" class="tsd-anchor"></a>
<h3>
<span class="tsd-flag ts-flagOverride">Override</span>
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>Delete a diagram from Local Storage using the custom filepicker menu <a href="GoCloudStorage.html#ui">ui</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">
<a name="save" class="tsd-anchor"></a>
<h3>
<span class="tsd-flag ts-flagOverride">Override</span>
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 Local 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 key in Local Storage 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="GoLocalStorage.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 string to save diagram model data to (becomes the key for the file in Local Storage)</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">
<a name="saveWithUI" class="tsd-anchor"></a>
<h3>
<span class="tsd-flag ts-flagOverride">Override</span>
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 <a href="GoCloudStorage.html#managedDiagrams">managedDiagrams</a>&#39;s model data to Local Storage using the custom filepicker <a href="GoCloudStorage.html#ui">ui</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 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>
<span class="tsd-flag ts-flagOverride">Override</span>
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>, numAdditionalFiles<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<div class="tsd-comment tsd-typography">
<p>Show the custom Go Local Storage filepicker <a href="GoCloudStorage.html#ui">ui</a>.</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. Must be one of the following:</p>
<ul>
<li>New</li>
<li>Open</li>
<li>Save</li>
<li>Delete</li>
</ul>
</div>
</li>
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> numAdditionalFiles: <span class="tsd-signature-type">number</span></h5>
<div class="tsd-comment tsd-typography">
<p>Optional: Number of files to show in UI, in addition to a static numerical property (that can only be
modified by changing source code). This prevents long wait times while the UI loads if there are a large number of diagram files stored in Local Storage.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">any</span></h4>
<p>Returns a Promise that resolves (in <a href="GoLocalStorage.html#save">save</a>, <a href="GoLocalStorage.html#load">load</a>, or <a href="GoLocalStorage.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>GoJS <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 tsd-is-storage">
<a href="GoLocalStorage.html" class="tsd-kind-icon">Go<wbr>Local<wbr>Storage</a>
<ul>
<li class=" tsd-kind-constructor tsd-parent-kind-class">
<a href="GoLocalStorage.html#constructor" class="tsd-kind-icon">constructor</a>
</li>
<li class=" tsd-kind-get-signature tsd-parent-kind-class">
<a href="GoLocalStorage.html#localStorage" class="tsd-kind-icon">local<wbr>Storage</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="GoLocalStorage.html#authorize" class="tsd-kind-icon">authorize</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="GoLocalStorage.html#checkFileExists" class="tsd-kind-icon">check<wbr>File<wbr>Exists</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="GoLocalStorage.html#getFile" class="tsd-kind-icon">get<wbr>File</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="GoLocalStorage.html#load" class="tsd-kind-icon">load</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="GoLocalStorage.html#loadWithUI" class="tsd-kind-icon">load<wbr>WithUI</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="GoLocalStorage.html#remove" class="tsd-kind-icon">remove</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="GoLocalStorage.html#removeWithUI" class="tsd-kind-icon">remove<wbr>WithUI</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="GoLocalStorage.html#save" class="tsd-kind-icon">save</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="GoLocalStorage.html#saveWithUI" class="tsd-kind-icon">save<wbr>WithUI</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="GoLocalStorage.html#showUI" class="tsd-kind-icon">showUI</a>
</li>
</ul>
</li>
</ul>
<ul class="after-current">
</ul>
</nav>
</div>
</div>
</div>
<div class="container-fluid bottom-copyright plr15">
Copyright &copy; 1998-2019 by Northwoods Software Corporation.
</div>
<div class="overlay"></div>
<script src="../assets/js/main.js"></script>
<script src="../../assets/js/api.js"></script>
<script src="../../assets/js/bootstrap.min.js"></script>
<script>if (location.protocol == 'file:') document.write('<script src="../assets/js/search.js"><' + '/script>');</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-1506307-5', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>