mirror of
				https://github.com/TriliumNext/Notes.git
				synced 2025-10-31 21:11:30 +08:00 
			
		
		
		
	library upgrades
This commit is contained in:
		
							parent
							
								
									58f610b2c6
								
							
						
					
					
						commit
						4485650cbc
					
				| @ -1,6 +1,6 @@ | ||||
| /*! jQuery Fancytree Plugin - 2.34.0 - 2019-12-26T14:16:19Z | ||||
| /*! jQuery Fancytree Plugin - 2.35.0 - 2020-03-27T22:41:58Z | ||||
|   * https://github.com/mar10/fancytree
 | ||||
|   * Copyright (c) 2019 Martin Wendt; Licensed MIT | ||||
|   * Copyright (c) 2020 Martin Wendt; Licensed MIT | ||||
|  */ | ||||
| /*! jQuery UI - v1.12.1 - 2018-05-20 | ||||
| * http://jqueryui.com
 | ||||
| @ -1361,12 +1361,12 @@ var uniqueId = $.fn.extend( { | ||||
|  * Tree view control with support for lazy loading and much more. | ||||
|  * https://github.com/mar10/fancytree/
 | ||||
|  * | ||||
|  * Copyright (c) 2008-2019, Martin Wendt (https://wwWendt.de)
 | ||||
|  * Copyright (c) 2008-2020, Martin Wendt (https://wwWendt.de)
 | ||||
|  * Released under the MIT license | ||||
|  * https://github.com/mar10/fancytree/wiki/LicenseInfo
 | ||||
|  * | ||||
|  * @version 2.34.0 | ||||
|  * @date 2019-12-26T14:16:19Z | ||||
|  * @version 2.35.0 | ||||
|  * @date 2020-03-27T22:41:58Z | ||||
|  */ | ||||
| 
 | ||||
| /** Core Fancytree module. | ||||
| @ -1405,7 +1405,7 @@ var uniqueId = $.fn.extend( { | ||||
| 		REX_HTML = /[&<>"'/]/g, // Escape those characters
 | ||||
| 		REX_TOOLTIP = /[<>"'/]/g, // Don't escape `&` in tooltips
 | ||||
| 		RECURSIVE_REQUEST_ERROR = "$recursive_request", | ||||
| 		// CLIPBOARD = null,
 | ||||
| 		INVALID_REQUEST_TARGET_ERROR = "$request_target_invalid", | ||||
| 		ENTITY_MAP = { | ||||
| 			"&": "&", | ||||
| 			"<": "<", | ||||
| @ -2206,7 +2206,7 @@ var uniqueId = $.fn.extend( { | ||||
| 		 * | ||||
| 		 * @param {FancytreeNode} node source node | ||||
| 		 * @param {string} [mode=child] 'before' | 'after' | 'child' | ||||
| 		 * @param {Function} [map] callback function(NodeData) that could modify the new node | ||||
| 		 * @param {Function} [map] callback function(NodeData, FancytreeNode) that could modify the new node | ||||
| 		 * @returns {FancytreeNode} new | ||||
| 		 */ | ||||
| 		copyTo: function(node, mode, map) { | ||||
| @ -2970,10 +2970,9 @@ var uniqueId = $.fn.extend( { | ||||
| 		 * @deprecated since 2014-02-16: use load() instead. | ||||
| 		 */ | ||||
| 		lazyLoad: function(discard) { | ||||
| 			this.warn( | ||||
| 			$.error( | ||||
| 				"FancytreeNode.lazyLoad() is deprecated since 2014-02-16. Use .load() instead." | ||||
| 			); | ||||
| 			return this.load(discard); | ||||
| 		}, | ||||
| 		/** | ||||
| 		 * Load all children of a lazy node if neccessary. The <i>expanded</i> state is maintained. | ||||
| @ -3496,9 +3495,9 @@ var uniqueId = $.fn.extend( { | ||||
| 
 | ||||
| 			// this.debug("scrollIntoView(), scrollTop=" + scrollTop, opts.scrollOfs);
 | ||||
| 			// _assert($(this.span).is(":visible"), "scrollIntoView node is invisible"); // otherwise we cannot calc offsets
 | ||||
| 			if (!this.isVisible()) { | ||||
| 			if (this.isRootNode() || !this.isVisible()) { | ||||
| 				// We cannot calc offsets for hidden elements
 | ||||
| 				this.warn("scrollIntoView(): node is invisible."); | ||||
| 				this.info("scrollIntoView(): node is invisible."); | ||||
| 				return _getResolvedPromise(); | ||||
| 			} | ||||
| 			if (isParentWindow) { | ||||
| @ -3610,7 +3609,7 @@ var uniqueId = $.fn.extend( { | ||||
| 			return this.tree._callHook("nodeSetSelected", this, flag, opts); | ||||
| 		}, | ||||
| 		/**Mark a lazy node as 'error', 'loading', 'nodata', or 'ok'. | ||||
| 		 * @param {string} status 'error'|'empty'|'ok' | ||||
| 		 * @param {string} status 'error'|'loading'|'nodata'|'ok' | ||||
| 		 * @param {string} [message] | ||||
| 		 * @param {string} [details] | ||||
| 		 */ | ||||
| @ -3671,7 +3670,7 @@ var uniqueId = $.fn.extend( { | ||||
| 		 * | ||||
| 		 * @param {boolean} [recursive=false] include child nodes | ||||
| 		 * @param {function} [callback] callback(dict, node) is called for every node, in order to allow modifications. | ||||
| 		 *     Return `false` to ignore this node or "skip" to include this node without its children. | ||||
| 		 *     Return `false` to ignore this node or `"skip"` to include this node without its children. | ||||
| 		 * @returns {NodeData} | ||||
| 		 */ | ||||
| 		toDict: function(recursive, callback) { | ||||
| @ -3703,7 +3702,7 @@ var uniqueId = $.fn.extend( { | ||||
| 				} | ||||
| 			} | ||||
| 			if (recursive) { | ||||
| 				if (this.hasChildren()) { | ||||
| 				if ($.isArray(this.children)) { | ||||
| 					dict.children = []; | ||||
| 					for (i = 0, l = this.children.length; i < l; i++) { | ||||
| 						node = this.children[i]; | ||||
| @ -4328,8 +4327,8 @@ var uniqueId = $.fn.extend( { | ||||
| 				// case "copy":
 | ||||
| 				// 	clipboard = {
 | ||||
| 				// 		mode: cmd,
 | ||||
| 				// 		data: node.toDict(function(n) {
 | ||||
| 				// 			delete n.key;
 | ||||
| 				// 		data: node.toDict(function(d, n) {
 | ||||
| 				// 			delete d.key;
 | ||||
| 				// 		}),
 | ||||
| 				// 	};
 | ||||
| 				// 	break;
 | ||||
| @ -5613,12 +5612,16 @@ var uniqueId = $.fn.extend( { | ||||
| 			nodeLoadChildren: function(ctx, source) { | ||||
| 				var ajax, | ||||
| 					delay, | ||||
| 					dfd, | ||||
| 					res, | ||||
| 					ajaxDfd = null, | ||||
| 					resultDfd, | ||||
| 					isAsync = true, | ||||
| 					tree = ctx.tree, | ||||
| 					node = ctx.node, | ||||
| 					nodePrevParent = node.parent, | ||||
| 					tag = "nodeLoadChildren", | ||||
| 					requestId = Date.now(); | ||||
| 
 | ||||
| 				// `source` is a callback: use the returned result instead:
 | ||||
| 				if ($.isFunction(source)) { | ||||
| 					source = source.call(tree, { type: "source" }, ctx); | ||||
| 					_assert( | ||||
| @ -5626,23 +5629,15 @@ var uniqueId = $.fn.extend( { | ||||
| 						"source callback must not return another function" | ||||
| 					); | ||||
| 				} | ||||
| 				if (source.url) { | ||||
| 					if (node._requestId) { | ||||
| 						node.warn( | ||||
| 							"Recursive load request #" + | ||||
| 								requestId + | ||||
| 								" while #" + | ||||
| 								node._requestId + | ||||
| 								" is pending." | ||||
| 						); | ||||
| 						// } else {
 | ||||
| 						// 	node.debug("Send load request #" + requestId);
 | ||||
| 					} | ||||
| 				// `source` is already a promise:
 | ||||
| 				if ($.isFunction(source.then)) { | ||||
| 					// _assert($.isFunction(source.always), "Expected jQuery?");
 | ||||
| 					ajaxDfd = source; | ||||
| 				} else if (source.url) { | ||||
| 					// `source` is an Ajax options object
 | ||||
| 					ajax = $.extend({}, ctx.options.ajax, source); | ||||
| 					node._requestId = requestId; | ||||
| 					if (ajax.debugDelay) { | ||||
| 						// simulate a slow server
 | ||||
| 						// Simulate a slow server
 | ||||
| 						delay = ajax.debugDelay; | ||||
| 						delete ajax.debugDelay; // remove debug option
 | ||||
| 						if ($.isArray(delay)) { | ||||
| @ -5656,30 +5651,74 @@ var uniqueId = $.fn.extend( { | ||||
| 								Math.round(delay) + | ||||
| 								" ms ..." | ||||
| 						); | ||||
| 						dfd = $.Deferred(function(dfd) { | ||||
| 						ajaxDfd = $.Deferred(function(ajaxDfd) { | ||||
| 							setTimeout(function() { | ||||
| 								$.ajax(ajax) | ||||
| 									.done(function() { | ||||
| 										dfd.resolveWith(this, arguments); | ||||
| 										ajaxDfd.resolveWith(this, arguments); | ||||
| 									}) | ||||
| 									.fail(function() { | ||||
| 										dfd.rejectWith(this, arguments); | ||||
| 										ajaxDfd.rejectWith(this, arguments); | ||||
| 									}); | ||||
| 							}, delay); | ||||
| 						}); | ||||
| 					} else { | ||||
| 						dfd = $.ajax(ajax); | ||||
| 						ajaxDfd = $.ajax(ajax); | ||||
| 					} | ||||
| 				} else if ($.isPlainObject(source) || $.isArray(source)) { | ||||
| 					// `source` is already a constant dict or list, but we convert
 | ||||
| 					// to a thenable for unified processing.
 | ||||
| 					// 2020-01-03: refactored.
 | ||||
| 					// `ajaxDfd = $.when(source)` would do the trick, but the returned
 | ||||
| 					// promise will resolve async, which broke some tests and
 | ||||
| 					// would probably also break current implementations out there.
 | ||||
| 					// So we mock-up a thenable that resolves synchronously:
 | ||||
| 					ajaxDfd = { | ||||
| 						then: function(resolve, reject) { | ||||
| 							resolve(source, null, null); | ||||
| 						}, | ||||
| 					}; | ||||
| 					isAsync = false; | ||||
| 				} else { | ||||
| 					$.error("Invalid source type: " + source); | ||||
| 				} | ||||
| 
 | ||||
| 					// Defer the deferred: we want to be able to reject, even if ajax
 | ||||
| 					// resolved ok.
 | ||||
| 					source = new $.Deferred(); | ||||
| 					dfd.done(function(data, textStatus, jqXHR) { | ||||
| 				// Check for overlapping requests
 | ||||
| 				if (node._requestId) { | ||||
| 					node.warn( | ||||
| 						"Recursive load request #" + | ||||
| 							requestId + | ||||
| 							" while #" + | ||||
| 							node._requestId + | ||||
| 							" is pending." | ||||
| 					); | ||||
| 					node._requestId = requestId; | ||||
| 					// 	node.debug("Send load request #" + requestId);
 | ||||
| 				} | ||||
| 
 | ||||
| 				if (isAsync) { | ||||
| 					tree.debugTime(tag); | ||||
| 					tree.nodeSetStatus(ctx, "loading"); | ||||
| 				} | ||||
| 
 | ||||
| 				// The async Ajax request has now started...
 | ||||
| 				// Defer the deferred:
 | ||||
| 				// we want to be able to reject invalid responses, even if
 | ||||
| 				// the raw HTTP Ajax XHR resolved as Ok.
 | ||||
| 				// We use the ajaxDfd.then() syntax here, which is compatible with
 | ||||
| 				// jQuery and ECMA6.
 | ||||
| 				// However resultDfd is a jQuery deferred, which is currently the
 | ||||
| 				// expected result type of nodeLoadChildren()
 | ||||
| 				resultDfd = new $.Deferred(); | ||||
| 				ajaxDfd.then( | ||||
| 					function(data, textStatus, jqXHR) { | ||||
| 						// ajaxDfd was resolved, but we reject or resolve resultDfd
 | ||||
| 						// depending on the response data
 | ||||
| 						var errorObj, res; | ||||
| 
 | ||||
| 						if ( | ||||
| 							(this.dataType === "json" || | ||||
| 								this.dataType === "jsonp") && | ||||
| 							(source.dataType === "json" || | ||||
| 								source.dataType === "jsonp") && | ||||
| 							typeof data === "string" | ||||
| 						) { | ||||
| 							$.error( | ||||
| @ -5690,21 +5729,28 @@ var uniqueId = $.fn.extend( { | ||||
| 							// The expected request time stamp is later than `requestId`
 | ||||
| 							// (which was kept as as closure variable to this handler function)
 | ||||
| 							// node.warn("Ignored load response for obsolete request #" + requestId + " (expected #" + node._requestId + ")");
 | ||||
| 							source.rejectWith(this, [RECURSIVE_REQUEST_ERROR]); | ||||
| 							resultDfd.rejectWith(this, [ | ||||
| 								RECURSIVE_REQUEST_ERROR, | ||||
| 							]); | ||||
| 							return; | ||||
| 							// } else {
 | ||||
| 							// 	node.debug("Response returned for load request #" + requestId);
 | ||||
| 						} | ||||
| 						// postProcess is similar to the standard ajax dataFilter hook,
 | ||||
| 						// but it is also called for JSONP
 | ||||
| 						if (node.parent === null && nodePrevParent !== null) { | ||||
| 							resultDfd.rejectWith(this, [ | ||||
| 								INVALID_REQUEST_TARGET_ERROR, | ||||
| 							]); | ||||
| 							return; | ||||
| 						} | ||||
| 						// Allow to adjust the received response data in the `postProcess` event.
 | ||||
| 						if (ctx.options.postProcess) { | ||||
| 							try { | ||||
| 							// The handler may either
 | ||||
| 							//   - modify `ctx.response` in-place (and leave `ctx.result` undefined)
 | ||||
| 							//     => res = undefined
 | ||||
| 							//   - return a replacement in `ctx.result`
 | ||||
| 							//     => res = <new data>
 | ||||
| 							//   If res contains an `error` property, an error status is displayed
 | ||||
| 							try { | ||||
| 								res = tree._triggerNodeEvent( | ||||
| 									"postProcess", | ||||
| 									ctx, | ||||
| @ -5712,7 +5758,7 @@ var uniqueId = $.fn.extend( { | ||||
| 									{ | ||||
| 										response: data, | ||||
| 										error: null, | ||||
| 										dataType: this.dataType, | ||||
| 										dataType: source.dataType, | ||||
| 									} | ||||
| 								); | ||||
| 							} catch (e) { | ||||
| @ -5723,6 +5769,8 @@ var uniqueId = $.fn.extend( { | ||||
| 								}; | ||||
| 							} | ||||
| 							if (res.error) { | ||||
| 								// Either postProcess failed with an exception, or the returned
 | ||||
| 								// result object has an 'error' property attached:
 | ||||
| 								errorObj = $.isPlainObject(res.error) | ||||
| 									? res.error | ||||
| 									: { message: res.error }; | ||||
| @ -5731,7 +5779,7 @@ var uniqueId = $.fn.extend( { | ||||
| 									null, | ||||
| 									errorObj | ||||
| 								); | ||||
| 								source.rejectWith(this, [errorObj]); | ||||
| 								resultDfd.rejectWith(this, [errorObj]); | ||||
| 								return; | ||||
| 							} | ||||
| 							if ( | ||||
| @ -5749,44 +5797,98 @@ var uniqueId = $.fn.extend( { | ||||
| 							ctx.options.enableAspx | ||||
| 						) { | ||||
| 							// Process ASPX WebMethod JSON object inside "d" property
 | ||||
| 							// (only if no postProcess event was defined)
 | ||||
| 							if (ctx.options.enableAspx === 42) { | ||||
| 								tree.warn( | ||||
| 									"The default for enableAspx will change to `false` in the fututure. " + | ||||
| 										"Pass `enableAspx: true` or implement postProcess to silence this warning." | ||||
| 								); | ||||
| 							} | ||||
| 							data = | ||||
| 								typeof data.d === "string" | ||||
| 									? $.parseJSON(data.d) | ||||
| 									: data.d; | ||||
| 						} | ||||
| 						source.resolveWith(this, [data]); | ||||
| 					}).fail(function(jqXHR, textStatus, errorThrown) { | ||||
| 						resultDfd.resolveWith(this, [data]); | ||||
| 					}, | ||||
| 					function(jqXHR, textStatus, errorThrown) { | ||||
| 						// ajaxDfd was rejected, so we reject resultDfd as well
 | ||||
| 						var errorObj = tree._makeHookContext(node, null, { | ||||
| 							error: jqXHR, | ||||
| 							args: Array.prototype.slice.call(arguments), | ||||
| 							message: errorThrown, | ||||
| 							details: jqXHR.status + ": " + errorThrown, | ||||
| 						}); | ||||
| 						source.rejectWith(this, [errorObj]); | ||||
| 					}); | ||||
| 				} | ||||
| 				// #383: accept and convert ECMAScript 6 Promise
 | ||||
| 				if ($.isFunction(source.then) && $.isFunction(source.catch)) { | ||||
| 					dfd = source; | ||||
| 					source = new $.Deferred(); | ||||
| 					dfd.then( | ||||
| 						function(value) { | ||||
| 							source.resolve(value); | ||||
| 						}, | ||||
| 						function(reason) { | ||||
| 							source.reject(reason); | ||||
| 						resultDfd.rejectWith(this, [errorObj]); | ||||
| 					} | ||||
| 				); | ||||
| 				} | ||||
| 				if ($.isFunction(source.promise)) { | ||||
| 					// `source` is a deferred, i.e. ajax request
 | ||||
| 					// _assert(!node.isLoading(), "recursive load");
 | ||||
| 					tree.nodeSetStatus(ctx, "loading"); | ||||
| 
 | ||||
| 					source | ||||
| 						.done(function(children) { | ||||
| 				// The async Ajax request has now started.
 | ||||
| 				// resultDfd will be resolved/rejected after the response arrived,
 | ||||
| 				// was postProcessed, and checked.
 | ||||
| 				// Now we implement the UI update and add the data to the tree.
 | ||||
| 				// We also return this promise to the caller.
 | ||||
| 				resultDfd | ||||
| 					.done(function(data) { | ||||
| 						tree.nodeSetStatus(ctx, "ok"); | ||||
| 							node._requestId = null; | ||||
| 						var children, metaData, noDataRes; | ||||
| 
 | ||||
| 						if ($.isPlainObject(data)) { | ||||
| 							// We got {foo: 'abc', children: [...]}
 | ||||
| 							// Copy extra properties to tree.data.foo
 | ||||
| 							_assert( | ||||
| 								node.isRootNode(), | ||||
| 								"source may only be an object for root nodes (expecting an array of child objects otherwise)" | ||||
| 							); | ||||
| 							_assert( | ||||
| 								$.isArray(data.children), | ||||
| 								"if an object is passed as source, it must contain a 'children' array (all other properties are added to 'tree.data')" | ||||
| 							); | ||||
| 							metaData = data; | ||||
| 							children = data.children; | ||||
| 							delete metaData.children; | ||||
| 							// Copy some attributes to tree.data
 | ||||
| 							$.each(TREE_ATTRS, function(i, attr) { | ||||
| 								if (metaData[attr] !== undefined) { | ||||
| 									tree[attr] = metaData[attr]; | ||||
| 									delete metaData[attr]; | ||||
| 								} | ||||
| 							}); | ||||
| 							// Copy all other attributes to tree.data.NAME
 | ||||
| 							$.extend(tree.data, metaData); | ||||
| 						} else { | ||||
| 							children = data; | ||||
| 						} | ||||
| 						_assert( | ||||
| 							$.isArray(children), | ||||
| 							"expected array of children" | ||||
| 						); | ||||
| 						node._setChildren(children); | ||||
| 
 | ||||
| 						if (tree.options.nodata && children.length === 0) { | ||||
| 							if ($.isFunction(tree.options.nodata)) { | ||||
| 								noDataRes = tree.options.nodata.call( | ||||
| 									tree, | ||||
| 									{ type: "nodata" }, | ||||
| 									ctx | ||||
| 								); | ||||
| 							} else if ( | ||||
| 								tree.options.nodata === true && | ||||
| 								node.isRootNode() | ||||
| 							) { | ||||
| 								noDataRes = tree.options.strings.noData; | ||||
| 							} else if ( | ||||
| 								typeof tree.options.nodata === "string" && | ||||
| 								node.isRootNode() | ||||
| 							) { | ||||
| 								noDataRes = tree.options.nodata; | ||||
| 							} | ||||
| 							if (noDataRes) { | ||||
| 								node.setStatus("nodata", noDataRes); | ||||
| 							} | ||||
| 						} | ||||
| 						// trigger fancytreeloadchildren
 | ||||
| 						tree._triggerNodeEvent("loadChildren", node); | ||||
| 					}) | ||||
| 					.fail(function(error) { | ||||
| 						var ctxErr; | ||||
| @ -5800,11 +5902,12 @@ var uniqueId = $.fn.extend( { | ||||
| 									")" | ||||
| 							); | ||||
| 							return; | ||||
| 							} else if ( | ||||
| 								error.node && | ||||
| 								error.error && | ||||
| 								error.message | ||||
| 							) { | ||||
| 						} else if (error === INVALID_REQUEST_TARGET_ERROR) { | ||||
| 							node.warn( | ||||
| 								"Lazy parent node was removed while loading: discarding response." | ||||
| 							); | ||||
| 							return; | ||||
| 						} else if (error.node && error.error && error.message) { | ||||
| 							// error is already a context object
 | ||||
| 							ctxErr = error; | ||||
| 						} else { | ||||
| @ -5837,87 +5940,15 @@ var uniqueId = $.fn.extend( { | ||||
| 								ctxErr.details | ||||
| 							); | ||||
| 						} | ||||
| 						}); | ||||
| 				} else { | ||||
| 					if (ctx.options.postProcess) { | ||||
| 						// #792: Call postProcess for non-deferred source
 | ||||
| 						res = tree._triggerNodeEvent( | ||||
| 							"postProcess", | ||||
| 							ctx, | ||||
| 							ctx.originalEvent, | ||||
| 							{ | ||||
| 								response: source, | ||||
| 								error: null, | ||||
| 								dataType: typeof source, | ||||
| 							} | ||||
| 						); | ||||
| 
 | ||||
| 						if ( | ||||
| 							$.isArray(res) || | ||||
| 							($.isPlainObject(res) && $.isArray(res.children)) | ||||
| 						) { | ||||
| 							// Use `ctx.result` if valid
 | ||||
| 							// (otherwise use existing data, which may have been modified in-place)
 | ||||
| 							source = res; | ||||
| 						} | ||||
| 					} | ||||
| 				} | ||||
| 				// $.when(source) resolves also for non-deferreds
 | ||||
| 				return $.when(source).done(function(children) { | ||||
| 					var metaData, noDataRes; | ||||
| 
 | ||||
| 					if ($.isPlainObject(children)) { | ||||
| 						// We got {foo: 'abc', children: [...]}
 | ||||
| 						// Copy extra properties to tree.data.foo
 | ||||
| 						_assert( | ||||
| 							node.isRootNode(), | ||||
| 							"source may only be an object for root nodes (expecting an array of child objects otherwise)" | ||||
| 						); | ||||
| 						_assert( | ||||
| 							$.isArray(children.children), | ||||
| 							"if an object is passed as source, it must contain a 'children' array (all other properties are added to 'tree.data')" | ||||
| 						); | ||||
| 						metaData = children; | ||||
| 						children = children.children; | ||||
| 						delete metaData.children; | ||||
| 						// Copy some attributes to tree.data
 | ||||
| 						$.each(TREE_ATTRS, function(i, attr) { | ||||
| 							if (metaData[attr] !== undefined) { | ||||
| 								tree[attr] = metaData[attr]; | ||||
| 								delete metaData[attr]; | ||||
| 					}) | ||||
| 					.always(function() { | ||||
| 						node._requestId = null; | ||||
| 						if (isAsync) { | ||||
| 							tree.debugTimeEnd(tag); | ||||
| 						} | ||||
| 					}); | ||||
| 						// Copy all other attributes to tree.data.NAME
 | ||||
| 						$.extend(tree.data, metaData); | ||||
| 					} | ||||
| 					_assert($.isArray(children), "expected array of children"); | ||||
| 					node._setChildren(children); | ||||
| 
 | ||||
| 					if (tree.options.nodata && children.length === 0) { | ||||
| 						if ($.isFunction(tree.options.nodata)) { | ||||
| 							noDataRes = tree.options.nodata.call( | ||||
| 								tree, | ||||
| 								{ type: "nodata" }, | ||||
| 								ctx | ||||
| 							); | ||||
| 						} else if ( | ||||
| 							tree.options.nodata === true && | ||||
| 							node.isRootNode() | ||||
| 						) { | ||||
| 							noDataRes = tree.options.strings.nodata; | ||||
| 						} else if ( | ||||
| 							typeof tree.options.nodata === "string" && | ||||
| 							node.isRootNode() | ||||
| 						) { | ||||
| 							noDataRes = tree.options.nodata; | ||||
| 						} | ||||
| 						if (noDataRes) { | ||||
| 							node.setStatus("nodata", noDataRes); | ||||
| 						} | ||||
| 					} | ||||
| 					// trigger fancytreeloadchildren
 | ||||
| 					tree._triggerNodeEvent("loadChildren", node); | ||||
| 				}); | ||||
| 				return resultDfd.promise(); | ||||
| 			}, | ||||
| 			/** [Not Implemented]  */ | ||||
| 			nodeLoadKeyPath: function(ctx, keyPathList) { | ||||
| @ -7591,7 +7622,7 @@ var uniqueId = $.fn.extend( { | ||||
| 				clickFolderMode: 4, | ||||
| 				debugLevel: null, // 0..4 (null: use global setting $.ui.fancytree.debugLevel)
 | ||||
| 				disabled: false, // TODO: required anymore?
 | ||||
| 				enableAspx: true, | ||||
| 				enableAspx: 42, // TODO: this is truethy, but distinguishable from true: default will change to false in the future
 | ||||
| 				escapeTitles: false, | ||||
| 				extensions: [], | ||||
| 				// fx: { height: "toggle", duration: 200 },
 | ||||
| @ -8028,7 +8059,7 @@ var uniqueId = $.fn.extend( { | ||||
| 		{ | ||||
| 			/** Version number `"MAJOR.MINOR.PATCH"` | ||||
| 			 * @type {string} */ | ||||
| 			version: "2.34.0", // Set to semver by 'grunt release'
 | ||||
| 			version: "2.35.0", // Set to semver by 'grunt release'
 | ||||
| 			/** @type {string} | ||||
| 			 * @description `"production" for release builds` */ | ||||
| 			buildType: "production", // Set to 'production' by 'grunt build'
 | ||||
| @ -8658,13 +8689,13 @@ var uniqueId = $.fn.extend( { | ||||
|  * Add a child counter bubble to tree nodes. | ||||
|  * (Extension module for jquery.fancytree.js: https://github.com/mar10/fancytree/)
 | ||||
|  * | ||||
|  * Copyright (c) 2008-2019, Martin Wendt (https://wwWendt.de)
 | ||||
|  * Copyright (c) 2008-2020, Martin Wendt (https://wwWendt.de)
 | ||||
|  * | ||||
|  * Released under the MIT license | ||||
|  * https://github.com/mar10/fancytree/wiki/LicenseInfo
 | ||||
|  * | ||||
|  * @version 2.34.0 | ||||
|  * @date 2019-12-26T14:16:19Z | ||||
|  * @version 2.35.0 | ||||
|  * @date 2020-03-27T22:41:58Z | ||||
|  */ | ||||
| 
 | ||||
| // To keep the global namespace clean, we wrap everything in a closure.
 | ||||
| @ -8745,7 +8776,7 @@ var uniqueId = $.fn.extend( { | ||||
| 		} else { | ||||
| 			$badge.remove(); | ||||
| 		} | ||||
| 		if (extOpts.deep && !node.isTopLevel() && !node.isRoot()) { | ||||
| 		if (extOpts.deep && !node.isTopLevel() && !node.isRootNode()) { | ||||
| 			node.parent.updateCounters(); | ||||
| 		} | ||||
| 	}; | ||||
| @ -8783,7 +8814,7 @@ var uniqueId = $.fn.extend( { | ||||
| 		// Every extension must be registered by a unique name.
 | ||||
| 		name: "childcounter", | ||||
| 		// Version information should be compliant with [semver](http://semver.org)
 | ||||
| 		version: "2.34.0", | ||||
| 		version: "2.35.0", | ||||
| 
 | ||||
| 		// Extension specific options and their defaults.
 | ||||
| 		// This options will be available as `tree.options.childcounter.hideExpanded`
 | ||||
| @ -8889,13 +8920,13 @@ var uniqueId = $.fn.extend( { | ||||
|  * Support faster lookup of nodes by key and shared ref-ids. | ||||
|  * (Extension module for jquery.fancytree.js: https://github.com/mar10/fancytree/)
 | ||||
|  * | ||||
|  * Copyright (c) 2008-2019, Martin Wendt (https://wwWendt.de)
 | ||||
|  * Copyright (c) 2008-2020, Martin Wendt (https://wwWendt.de)
 | ||||
|  * | ||||
|  * Released under the MIT license | ||||
|  * https://github.com/mar10/fancytree/wiki/LicenseInfo
 | ||||
|  * | ||||
|  * @version 2.34.0 | ||||
|  * @date 2019-12-26T14:16:19Z | ||||
|  * @version 2.35.0 | ||||
|  * @date 2020-03-27T22:41:58Z | ||||
|  */ | ||||
| 
 | ||||
| (function(factory) { | ||||
| @ -9253,7 +9284,7 @@ var uniqueId = $.fn.extend( { | ||||
| 	 */ | ||||
| 	$.ui.fancytree.registerExtension({ | ||||
| 		name: "clones", | ||||
| 		version: "2.34.0", | ||||
| 		version: "2.35.0", | ||||
| 		// Default options for this extension.
 | ||||
| 		options: { | ||||
| 			highlightActiveClones: true, // set 'fancytree-active-clone' on active clones and all peers
 | ||||
| @ -9410,13 +9441,13 @@ var uniqueId = $.fn.extend( { | ||||
|  * Drag-and-drop support (native HTML5). | ||||
|  * (Extension module for jquery.fancytree.js: https://github.com/mar10/fancytree/)
 | ||||
|  * | ||||
|  * Copyright (c) 2008-2019, Martin Wendt (https://wwWendt.de)
 | ||||
|  * Copyright (c) 2008-2020, Martin Wendt (https://wwWendt.de)
 | ||||
|  * | ||||
|  * Released under the MIT license | ||||
|  * https://github.com/mar10/fancytree/wiki/LicenseInfo
 | ||||
|  * | ||||
|  * @version 2.34.0 | ||||
|  * @date 2019-12-26T14:16:19Z | ||||
|  * @version 2.35.0 | ||||
|  * @date 2020-03-27T22:41:58Z | ||||
|  */ | ||||
| 
 | ||||
| /* | ||||
| @ -10201,6 +10232,10 @@ var uniqueId = $.fn.extend( { | ||||
| 					node.debug("Reject dropping below own ancestor."); | ||||
| 					DRAG_ENTER_RESPONSE = false; | ||||
| 					break; | ||||
| 				} else if (dndOpts.preventLazyParents && !node.isLoaded()) { | ||||
| 					node.warn("Drop over unloaded target node prevented."); | ||||
| 					DRAG_ENTER_RESPONSE = false; | ||||
| 					break; | ||||
| 				} | ||||
| 				$dropMarker.show(); | ||||
| 
 | ||||
| @ -10209,6 +10244,7 @@ var uniqueId = $.fn.extend( { | ||||
| 				r = dndOpts.dragEnter(node, data); | ||||
| 
 | ||||
| 				res = normalizeDragEnterResponse(r); | ||||
| 				// alert("res:" + JSON.stringify(res))
 | ||||
| 				DRAG_ENTER_RESPONSE = res; | ||||
| 
 | ||||
| 				allowDrop = res && (res.over || res.before || res.after); | ||||
| @ -10254,6 +10290,7 @@ var uniqueId = $.fn.extend( { | ||||
| 					} else if ( | ||||
| 						dndOpts.autoExpandMS && | ||||
| 						Date.now() - DRAG_OVER_STAMP > dndOpts.autoExpandMS && | ||||
| 						!node.isLoading() && | ||||
| 						(!dndOpts.dragExpand || | ||||
| 							dndOpts.dragExpand(node, data) !== false) | ||||
| 					) { | ||||
| @ -10420,7 +10457,7 @@ var uniqueId = $.fn.extend( { | ||||
| 
 | ||||
| 	$.ui.fancytree.registerExtension({ | ||||
| 		name: "dnd5", | ||||
| 		version: "2.34.0", | ||||
| 		version: "2.35.0", | ||||
| 		// Default options for this extension.
 | ||||
| 		options: { | ||||
| 			autoExpandMS: 1500, // Expand nodes after n milliseconds of hovering
 | ||||
| @ -10431,6 +10468,7 @@ var uniqueId = $.fn.extend( { | ||||
| 			// dropEffect: "auto", // 'copy'|'link'|'move'|'auto'(calculate from `effectAllowed`+modifier keys) or callback(node, data) that returns such string.
 | ||||
| 			dropEffectDefault: "move", // Default dropEffect ('copy', 'link', or 'move') when no modifier is pressed (overide in dragDrag, dragOver).
 | ||||
| 			preventForeignNodes: false, // Prevent dropping nodes from different Fancytrees
 | ||||
| 			preventLazyParents: true, // Prevent dropping items on unloaded lazy Fancytree nodes
 | ||||
| 			preventNonNodes: false, // Prevent dropping items other than Fancytree nodes
 | ||||
| 			preventRecursion: true, // Prevent dropping nodes on own descendants
 | ||||
| 			preventSameParent: false, // Prevent dropping nodes under same direct parent
 | ||||
| @ -10548,13 +10586,13 @@ var uniqueId = $.fn.extend( { | ||||
|  * Make node titles editable. | ||||
|  * (Extension module for jquery.fancytree.js: https://github.com/mar10/fancytree/)
 | ||||
|  * | ||||
|  * Copyright (c) 2008-2019, Martin Wendt (https://wwWendt.de)
 | ||||
|  * Copyright (c) 2008-2020, Martin Wendt (https://wwWendt.de)
 | ||||
|  * | ||||
|  * Released under the MIT license | ||||
|  * https://github.com/mar10/fancytree/wiki/LicenseInfo
 | ||||
|  * | ||||
|  * @version 2.34.0 | ||||
|  * @date 2019-12-26T14:16:19Z | ||||
|  * @version 2.35.0 | ||||
|  * @date 2020-03-27T22:41:58Z | ||||
|  */ | ||||
| 
 | ||||
| (function(factory) { | ||||
| @ -10756,7 +10794,7 @@ var uniqueId = $.fn.extend( { | ||||
| 		// Re-enable mouse and keyboard handling
 | ||||
| 		tree.widget._bind(); | ||||
| 
 | ||||
| 		if (local.lastDraggableAttrValue) { | ||||
| 		if (node && local.lastDraggableAttrValue) { | ||||
| 			node.span.draggable = true; | ||||
| 		} | ||||
| 
 | ||||
| @ -10846,7 +10884,7 @@ var uniqueId = $.fn.extend( { | ||||
| 	 */ | ||||
| 	$.ui.fancytree.registerExtension({ | ||||
| 		name: "edit", | ||||
| 		version: "2.34.0", | ||||
| 		version: "2.35.0", | ||||
| 		// Default options for this extension.
 | ||||
| 		options: { | ||||
| 			adjustWidthOfs: 4, // null: don't adjust input size to content
 | ||||
| @ -10952,13 +10990,13 @@ var uniqueId = $.fn.extend( { | ||||
|  * Remove or highlight tree nodes, based on a filter. | ||||
|  * (Extension module for jquery.fancytree.js: https://github.com/mar10/fancytree/)
 | ||||
|  * | ||||
|  * Copyright (c) 2008-2019, Martin Wendt (https://wwWendt.de)
 | ||||
|  * Copyright (c) 2008-2020, Martin Wendt (https://wwWendt.de)
 | ||||
|  * | ||||
|  * Released under the MIT license | ||||
|  * https://github.com/mar10/fancytree/wiki/LicenseInfo
 | ||||
|  * | ||||
|  * @version 2.34.0 | ||||
|  * @date 2019-12-26T14:16:19Z | ||||
|  * @version 2.35.0 | ||||
|  * @date 2020-03-27T22:41:58Z | ||||
|  */ | ||||
| 
 | ||||
| (function(factory) { | ||||
| @ -11296,7 +11334,7 @@ var uniqueId = $.fn.extend( { | ||||
| 	 */ | ||||
| 	$.ui.fancytree.registerExtension({ | ||||
| 		name: "filter", | ||||
| 		version: "2.34.0", | ||||
| 		version: "2.35.0", | ||||
| 		// Default options for this extension.
 | ||||
| 		options: { | ||||
| 			autoApply: true, // Re-apply last filter if lazy data is loaded
 | ||||
| @ -11411,13 +11449,13 @@ var uniqueId = $.fn.extend( { | ||||
|  * Use glyph-fonts, ligature-fonts, or SVG icons instead of icon sprites. | ||||
|  * (Extension module for jquery.fancytree.js: https://github.com/mar10/fancytree/)
 | ||||
|  * | ||||
|  * Copyright (c) 2008-2019, Martin Wendt (https://wwWendt.de)
 | ||||
|  * Copyright (c) 2008-2020, Martin Wendt (https://wwWendt.de)
 | ||||
|  * | ||||
|  * Released under the MIT license | ||||
|  * https://github.com/mar10/fancytree/wiki/LicenseInfo
 | ||||
|  * | ||||
|  * @version 2.34.0 | ||||
|  * @date 2019-12-26T14:16:19Z | ||||
|  * @version 2.35.0 | ||||
|  * @date 2020-03-27T22:41:58Z | ||||
|  */ | ||||
| 
 | ||||
| (function(factory) { | ||||
| @ -11600,7 +11638,7 @@ var uniqueId = $.fn.extend( { | ||||
| 
 | ||||
| 	$.ui.fancytree.registerExtension({ | ||||
| 		name: "glyph", | ||||
| 		version: "2.34.0", | ||||
| 		version: "2.35.0", | ||||
| 		// Default options for this extension.
 | ||||
| 		options: { | ||||
| 			preset: null, // 'awesome3', 'awesome4', 'bootstrap3', 'material'
 | ||||
| @ -11634,7 +11672,7 @@ var uniqueId = $.fn.extend( { | ||||
| 
 | ||||
| 			res = this._super(ctx); | ||||
| 
 | ||||
| 			if (node.isRoot()) { | ||||
| 			if (node.isRootNode()) { | ||||
| 				return res; | ||||
| 			} | ||||
| 			span = $span.children("span.fancytree-expander").get(0); | ||||
| @ -11749,13 +11787,13 @@ var uniqueId = $.fn.extend( { | ||||
|  * Support keyboard navigation for trees with embedded input controls. | ||||
|  * (Extension module for jquery.fancytree.js: https://github.com/mar10/fancytree/)
 | ||||
|  * | ||||
|  * Copyright (c) 2008-2019, Martin Wendt (https://wwWendt.de)
 | ||||
|  * Copyright (c) 2008-2020, Martin Wendt (https://wwWendt.de)
 | ||||
|  * | ||||
|  * Released under the MIT license | ||||
|  * https://github.com/mar10/fancytree/wiki/LicenseInfo
 | ||||
|  * | ||||
|  * @version 2.34.0 | ||||
|  * @date 2019-12-26T14:16:19Z | ||||
|  * @version 2.35.0 | ||||
|  * @date 2020-03-27T22:41:58Z | ||||
|  */ | ||||
| 
 | ||||
| (function(factory) { | ||||
| @ -11872,7 +11910,7 @@ var uniqueId = $.fn.extend( { | ||||
| 	 */ | ||||
| 	$.ui.fancytree.registerExtension({ | ||||
| 		name: "gridnav", | ||||
| 		version: "2.34.0", | ||||
| 		version: "2.35.0", | ||||
| 		// Default options for this extension.
 | ||||
| 		options: { | ||||
| 			autofocusInput: false, // Focus first embedded input if node gets activated
 | ||||
| @ -11974,13 +12012,13 @@ var uniqueId = $.fn.extend( { | ||||
|  * Allow multiple selection of nodes  by mouse or keyboard. | ||||
|  * (Extension module for jquery.fancytree.js: https://github.com/mar10/fancytree/)
 | ||||
|  * | ||||
|  * Copyright (c) 2008-2019, Martin Wendt (https://wwWendt.de)
 | ||||
|  * Copyright (c) 2008-2020, Martin Wendt (https://wwWendt.de)
 | ||||
|  * | ||||
|  * Released under the MIT license | ||||
|  * https://github.com/mar10/fancytree/wiki/LicenseInfo
 | ||||
|  * | ||||
|  * @version 2.34.0 | ||||
|  * @date 2019-12-26T14:16:19Z | ||||
|  * @version 2.35.0 | ||||
|  * @date 2020-03-27T22:41:58Z | ||||
|  */ | ||||
| 
 | ||||
| (function(factory) { | ||||
| @ -12009,7 +12047,7 @@ var uniqueId = $.fn.extend( { | ||||
| 	 */ | ||||
| 	$.ui.fancytree.registerExtension({ | ||||
| 		name: "multi", | ||||
| 		version: "2.34.0", | ||||
| 		version: "2.35.0", | ||||
| 		// Default options for this extension.
 | ||||
| 		options: { | ||||
| 			allowNoSelect: false, //
 | ||||
| @ -12106,13 +12144,13 @@ var uniqueId = $.fn.extend( { | ||||
|  * | ||||
|  * @depends: js-cookie or jquery-cookie | ||||
|  * | ||||
|  * Copyright (c) 2008-2019, Martin Wendt (https://wwWendt.de)
 | ||||
|  * Copyright (c) 2008-2020, Martin Wendt (https://wwWendt.de)
 | ||||
|  * | ||||
|  * Released under the MIT license | ||||
|  * https://github.com/mar10/fancytree/wiki/LicenseInfo
 | ||||
|  * | ||||
|  * @version 2.34.0 | ||||
|  * @date 2019-12-26T14:16:19Z | ||||
|  * @version 2.35.0 | ||||
|  * @date 2020-03-27T22:41:58Z | ||||
|  */ | ||||
| 
 | ||||
| (function(factory) { | ||||
| @ -12312,7 +12350,7 @@ var uniqueId = $.fn.extend( { | ||||
| 	 */ | ||||
| 	$.ui.fancytree.registerExtension({ | ||||
| 		name: "persist", | ||||
| 		version: "2.34.0", | ||||
| 		version: "2.35.0", | ||||
| 		// Default options for this extension.
 | ||||
| 		options: { | ||||
| 			cookieDelimiter: "~", | ||||
| @ -12600,13 +12638,13 @@ var uniqueId = $.fn.extend( { | ||||
|  * Render tree as table (aka 'tree grid', 'table tree'). | ||||
|  * (Extension module for jquery.fancytree.js: https://github.com/mar10/fancytree/)
 | ||||
|  * | ||||
|  * Copyright (c) 2008-2019, Martin Wendt (https://wwWendt.de)
 | ||||
|  * Copyright (c) 2008-2020, Martin Wendt (https://wwWendt.de)
 | ||||
|  * | ||||
|  * Released under the MIT license | ||||
|  * https://github.com/mar10/fancytree/wiki/LicenseInfo
 | ||||
|  * | ||||
|  * @version 2.34.0 | ||||
|  * @date 2019-12-26T14:16:19Z | ||||
|  * @version 2.35.0 | ||||
|  * @date 2020-03-27T22:41:58Z | ||||
|  */ | ||||
| 
 | ||||
| (function(factory) { | ||||
| @ -12689,7 +12727,7 @@ var uniqueId = $.fn.extend( { | ||||
| 
 | ||||
| 	$.ui.fancytree.registerExtension({ | ||||
| 		name: "table", | ||||
| 		version: "2.34.0", | ||||
| 		version: "2.35.0", | ||||
| 		// Default options for this extension.
 | ||||
| 		options: { | ||||
| 			checkboxColumnIdx: null, // render the checkboxes into the this column index (default: nodeColumnIdx)
 | ||||
| @ -13150,13 +13188,13 @@ var uniqueId = $.fn.extend( { | ||||
|  * | ||||
|  * @see http://jqueryui.com/themeroller/
 | ||||
|  * | ||||
|  * Copyright (c) 2008-2019, Martin Wendt (https://wwWendt.de)
 | ||||
|  * Copyright (c) 2008-2020, Martin Wendt (https://wwWendt.de)
 | ||||
|  * | ||||
|  * Released under the MIT license | ||||
|  * https://github.com/mar10/fancytree/wiki/LicenseInfo
 | ||||
|  * | ||||
|  * @version 2.34.0 | ||||
|  * @date 2019-12-26T14:16:19Z | ||||
|  * @version 2.35.0 | ||||
|  * @date 2020-03-27T22:41:58Z | ||||
|  */ | ||||
| 
 | ||||
| (function(factory) { | ||||
| @ -13179,7 +13217,7 @@ var uniqueId = $.fn.extend( { | ||||
| 	 */ | ||||
| 	$.ui.fancytree.registerExtension({ | ||||
| 		name: "themeroller", | ||||
| 		version: "2.34.0", | ||||
| 		version: "2.35.0", | ||||
| 		// Default options for this extension.
 | ||||
| 		options: { | ||||
| 			activeClass: "ui-state-active", // Class added to active node
 | ||||
| @ -13270,13 +13308,13 @@ var uniqueId = $.fn.extend( { | ||||
|  * Support for 100% wide selection bars. | ||||
|  * (Extension module for jquery.fancytree.js: https://github.com/mar10/fancytree/)
 | ||||
|  * | ||||
|  * Copyright (c) 2008-2019, Martin Wendt (https://wwWendt.de)
 | ||||
|  * Copyright (c) 2008-2020, Martin Wendt (https://wwWendt.de)
 | ||||
|  * | ||||
|  * Released under the MIT license | ||||
|  * https://github.com/mar10/fancytree/wiki/LicenseInfo
 | ||||
|  * | ||||
|  * @version 2.34.0 | ||||
|  * @date 2019-12-26T14:16:19Z | ||||
|  * @version 2.35.0 | ||||
|  * @date 2020-03-27T22:41:58Z | ||||
|  */ | ||||
| 
 | ||||
| (function(factory) { | ||||
| @ -13406,7 +13444,7 @@ var uniqueId = $.fn.extend( { | ||||
| 	 */ | ||||
| 	$.ui.fancytree.registerExtension({ | ||||
| 		name: "wide", | ||||
| 		version: "2.34.0", | ||||
| 		version: "2.35.0", | ||||
| 		// Default options for this extension.
 | ||||
| 		options: { | ||||
| 			iconWidth: null, // Adjust this if @fancy-icon-width != "16px"
 | ||||
|  | ||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| @ -9,12 +9,12 @@ | ||||
|  * | ||||
|  * This section is automatically generated from the `skin-common.less` template. | ||||
|  * | ||||
|  * Copyright (c) 2008-2019, Martin Wendt (https://wwWendt.de) | ||||
|  * Copyright (c) 2008-2020, Martin Wendt (https://wwWendt.de) | ||||
|  * Released under the MIT license | ||||
|  * https://github.com/mar10/fancytree/wiki/LicenseInfo | ||||
|  * | ||||
|  * @version 2.34.0 | ||||
|  * @date 2019-12-26T14:16:19Z | ||||
|  * @version 2.35.0 | ||||
|  * @date 2020-03-27T22:41:58Z | ||||
| ******************************************************************************/ | ||||
| /*------------------------------------------------------------------------------ | ||||
|  * Helpers | ||||
|  | ||||
							
								
								
									
										316
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										316
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @ -178,23 +178,23 @@ | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/bmp": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/bmp/-/bmp-0.9.8.tgz", | ||||
|       "integrity": "sha512-CZYQPEC3iUBMuaGWrtIG+GKNl93q/PkdudrCKJR/B96dfNngsmoosEm3LuFgJHEcJIfvnJkNqKw74l+zEiqCbg==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/bmp/-/bmp-0.10.0.tgz", | ||||
|       "integrity": "sha512-CN3uTfm2NTeJ+l1MMP1O6VkjED+bJb1GVL8AegbUF1ZG4drfAyU74EuYOqqU39k0ws3rSnX8GIkZdOP2xZ88pw==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "bmp-js": "^0.1.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/core": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/core/-/core-0.9.8.tgz", | ||||
|       "integrity": "sha512-N4GCjcXb0QwR5GBABDK2xQ3cKyaF7LlCYeJEG9mV7G/ynBoRqJe4JA6YKU9Ww9imGkci/4A594nQo8tUIqdcBw==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/core/-/core-0.10.0.tgz", | ||||
|       "integrity": "sha512-oCvwNz5sASKzU526RP8ci6crdhLKuaGJmEobYFXTGR1ZjRNyIsecV9CnXHPj9dzIGhtbf92zYii7uXSdFQjikA==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "any-base": "^1.1.0", | ||||
|         "buffer": "^5.2.0", | ||||
|         "core-js": "^3.4.1", | ||||
| @ -215,295 +215,295 @@ | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/custom": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/custom/-/custom-0.9.8.tgz", | ||||
|       "integrity": "sha512-1UpJjI7fhX02BWLJ/KEqPwkHH60eNkCNeD6hEd+IZdTwLXfZCfFiM5BVlpgiZYZJSsVoRiAL4ne2Q5mCiKPKyw==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/custom/-/custom-0.10.0.tgz", | ||||
|       "integrity": "sha512-dqzATumk1VN/ZFREqyH765urWKj8VNta+E9G0izY7XLwcq0FwCN0C/aiBmiunJdjGcdWVWHbjMreXsIzlKTONg==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/core": "^0.9.8", | ||||
|         "@jimp/core": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/gif": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/gif/-/gif-0.9.8.tgz", | ||||
|       "integrity": "sha512-LEbfpcO1sBJIQCJHchZjNlyNxzPjZQQ4X32klpQHZJG58n9FvL7Uuh1rpkrJRbqv3cU3P0ENNtTrsBDxsYwcfA==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/gif/-/gif-0.10.0.tgz", | ||||
|       "integrity": "sha512-E4ZGaN3lMVqTzYaL2VmkjNK3iB8cuSEChXuBqSRnZbozG0+hoiJv0992Bj+2SX6+e8aJZCZGuf2gVXqRgoxj/Q==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1", | ||||
|         "omggif": "^1.0.9" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/jpeg": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/jpeg/-/jpeg-0.9.8.tgz", | ||||
|       "integrity": "sha512-5u29SUzbZ32ZMmOaz3gO0hXatwSCnsvEAXRCKZoPPgbsPoyFAiZKVxjfLzjkeQF6awkvJ8hZni5chM15SNMg+g==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/jpeg/-/jpeg-0.10.0.tgz", | ||||
|       "integrity": "sha512-H78MgxGjljaTeHlkEsd2vL7CILv7/vqqN1AXSLTKOigXBQasef0/n5LUPnCbGzGbcjEVkC5f6zipULVbBJrHHQ==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1", | ||||
|         "jpeg-js": "^0.3.4" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-blit": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-blit/-/plugin-blit-0.9.8.tgz", | ||||
|       "integrity": "sha512-6xTDomxJybhBcby1IUVaPydZFhxf+V0DRgfDlVK81kR9kSCoshJpzWqDuWrMqjNEPspPE7jRQwHMs0FdU7mVwQ==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-blit/-/plugin-blit-0.10.0.tgz", | ||||
|       "integrity": "sha512-37Zr9hmmXHm7nCE1SUFyaYHyy8Ci8uM7EDN2Vialq1zMjYJ4sgPl4410ykdRU6OtKtTqvF421NKsdmI3kEuKvw==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-blur": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-blur/-/plugin-blur-0.9.8.tgz", | ||||
|       "integrity": "sha512-dqbxuNFBRbmt35iIRacdgma7nlXklmPThsKcGWNTDmqb/hniK5IC+0xSPzBV4qMI2fLGP39LWHqqDZ0xDz14dA==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-blur/-/plugin-blur-0.10.0.tgz", | ||||
|       "integrity": "sha512-F+q2e23kGPXEUlfmk3L5QEHfdXt0yz9NzLJNJI+OmjqlmDt4szthC5/EJuNw0IKDup0PvYKYFTMCfJS5lfdNaA==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-circle": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-circle/-/plugin-circle-0.9.8.tgz", | ||||
|       "integrity": "sha512-+UStXUPCzPqzTixLC8eVqcFcEa6TS+BEM/6/hyM11TDb9sbiMGeUtgpwZP/euR5H5gfpAQDA1Ppzqhh5fuMDlw==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-circle/-/plugin-circle-0.10.0.tgz", | ||||
|       "integrity": "sha512-NDAJy+Nw8X1YNM2nAwdmYnFP4M2lM4lOGIMSsBp8hd7OR2QD9iA1RlsfQC7zQDFSE8WapQwBDelouJKovu3lrQ==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-color": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-color/-/plugin-color-0.9.8.tgz", | ||||
|       "integrity": "sha512-SDHxOQsJHpt75hk6+sSlCPc2B3UJlXosFW+iLZ11xX1Qr0IdDtbfYlIoPmjKQFIDUNzqLSue/z7sKQ1OMZr/QA==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-color/-/plugin-color-0.10.0.tgz", | ||||
|       "integrity": "sha512-+FpVmEKQSyFzmxs9h5/B4XrrJmDaxNcHqeQe/RiEmpS/91SL0KpfAiHZGFke++OYKomxFcbxu5m/WPGyN669rQ==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1", | ||||
|         "tinycolor2": "^1.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-contain": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-contain/-/plugin-contain-0.9.8.tgz", | ||||
|       "integrity": "sha512-oK52CPt7efozuLYCML7qOmpFeDt3zpU8qq8UZlnjsDs15reU6L8EiUbwYpJvzoEnEOh1ZqamB8F/gymViEO5og==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-contain/-/plugin-contain-0.10.0.tgz", | ||||
|       "integrity": "sha512-ZH2+qbwumUMI/+l9TBf3ug94WXIAars7svEjNBFfB7aLQvJzFxLifsPxLnjfoNRFIkrolfQ1RzAModotycoliA==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-cover": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-cover/-/plugin-cover-0.9.8.tgz", | ||||
|       "integrity": "sha512-nnamtHzMrNd5j5HRSPd1VzpZ8v9YYtUJPtvCdHOOiIjqG72jxJ2kTBlsS3oG5XS64h/2MJwpl/fmmMs1Tj1CmQ==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-cover/-/plugin-cover-0.10.0.tgz", | ||||
|       "integrity": "sha512-BJZZtKkb9FNPyaiQm2cc/49Og+60njlqzLZxu0uMrDyGzVn/K1dkg3MS9BOQQi1BTyqXILk+EctlXVCaGXqxTQ==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-crop": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-crop/-/plugin-crop-0.9.8.tgz", | ||||
|       "integrity": "sha512-Nv/6AIp4aJmbSIH2uiIqm+kSoShKM8eaX2fyrUTj811kio0hwD3f/vIxrWebvAqwDZjAFIAmMufFoFCVg6caoQ==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-crop/-/plugin-crop-0.10.0.tgz", | ||||
|       "integrity": "sha512-UWp7HNRVyAPx8YYgFfW9qOtx2JNXZq0q4M0IztPe9wOZ4RE45otK3pgxFglYAn2pxwSbaTP6bt+E7acRJIqBpw==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-displace": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-displace/-/plugin-displace-0.9.8.tgz", | ||||
|       "integrity": "sha512-0OgPjkOVa2xdbqI8P6gBKX/UK36RbaYVrFyXL8Jy9oNF69+LYWyTskuCu9YbGxzlCVjY/JFqQOvrKDbxgMYAKA==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-displace/-/plugin-displace-0.10.0.tgz", | ||||
|       "integrity": "sha512-IK/KuMWuC1rWLrkgTg5Xh7HLO7FaJ/+b84m1sidVRwJ1PTbWCnsf3f2KL9xmfzwdUXS4VE1E4Z2uUe1qsDx8Cg==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-dither": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-dither/-/plugin-dither-0.9.8.tgz", | ||||
|       "integrity": "sha512-jGM/4ByniZJnmV2fv8hKwyyydXZe/YzvgBcnB8XxzCq8kVR3Imcn+qnd2PEPZzIPKOTH4Cig/zo9Vk9Bs+m5FQ==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-dither/-/plugin-dither-0.10.0.tgz", | ||||
|       "integrity": "sha512-f11HgQr0i7UjHdeKg/6uQxRDFArHSPZrjYjtczCKB7XDE8Fs0BeaDGNr3oDiq3cFcn+533heYUtxYZMT2EZOnw==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-fisheye": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-fisheye/-/plugin-fisheye-0.9.8.tgz", | ||||
|       "integrity": "sha512-VnsalrD05f4pxG1msjnkwIFi5QveOqRm4y7VkoZKNX+iqs4TvRnH5+HpBnfdMzX/RXBi+Lf/kpTtuZgbOu/QWw==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-fisheye/-/plugin-fisheye-0.10.0.tgz", | ||||
|       "integrity": "sha512-r7eADsfWL7ajvUwhU2MVw2s3zTovyEyGUsP4P4FqSXUnni7Vhjx1gIapC13V3N71xzeFhra0zlHYVFiRKTSHtw==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-flip": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-flip/-/plugin-flip-0.9.8.tgz", | ||||
|       "integrity": "sha512-XbiZ4OfHD6woc0f6Sk7XxB6a7IyMjTRQ4pNU7APjaNxsl3L6qZC8qfCQphWVe3DHx7f3y7jEiPMvNnqRDP1xgA==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-flip/-/plugin-flip-0.10.0.tgz", | ||||
|       "integrity": "sha512-VdaF4xzmGVekGPyyaYsb+8xGY25wzPjpA54iSbl/CzrDVMMCiqNX5Ti5tFiJnq4YHP1Dr75X3dxbpYUV8un2YQ==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-gaussian": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-gaussian/-/plugin-gaussian-0.9.8.tgz", | ||||
|       "integrity": "sha512-ZBl5RA6+4XAD+mtqLfiG7u+qd8W5yqq3RBNca8eFqUSVo1v+eB2tzeLel0CWfVC/z6cw93Awm/nVnm6/CL2Oew==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-gaussian/-/plugin-gaussian-0.10.0.tgz", | ||||
|       "integrity": "sha512-r/t5UQEnuCpZ5eqn4H8tPSBtz531utfhs5KbF9VbqyoqlhbFM5nCPNeScOY8LLuh+mIOqH2iqStzXcUTS6+wiA==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-invert": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-invert/-/plugin-invert-0.9.8.tgz", | ||||
|       "integrity": "sha512-ESploqCoF6qUv5IWhVLaO5fEcrYZEsAWPFflh6ROiD2mmFKQxfeK+vHnk3IDLHtUwWTkAZQNbk89BVq7xvaNpQ==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-invert/-/plugin-invert-0.10.0.tgz", | ||||
|       "integrity": "sha512-QpvABEakobueEoVuHRPOTH+Habf8yzjE5zLYPDApt0zG/u/dEsZuyWcUdzstDEn4paH49X4DED4odCbExX/mdw==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-mask": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-mask/-/plugin-mask-0.9.8.tgz", | ||||
|       "integrity": "sha512-zSvEisTV4iGsBReitEdnQuGJq9/1xB5mPATadYZmIlp8r5HpD72HQb0WdEtb51/pu9Odt8KAxUf0ASg/PRVUiQ==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-mask/-/plugin-mask-0.10.0.tgz", | ||||
|       "integrity": "sha512-slp4H8QzJE4NHL9m1odHoswvrGJYNCM5YJ+UX50cHnFe1iJVBwJ+84Knwul1eRtFP0IJ1KJAG1ycObns/qWSMw==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-normalize": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-normalize/-/plugin-normalize-0.9.8.tgz", | ||||
|       "integrity": "sha512-dPFBfwTa67K1tRw1leCidQT25R3ozrTUUOpO4jcGFHqXvBTWaR8sML1qxdfOBWs164mE5YpfdTvu6MM/junvCg==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-normalize/-/plugin-normalize-0.10.0.tgz", | ||||
|       "integrity": "sha512-W5S8XuH+mOFKamGZ4YosF/1hxgV/edX3YKJuXTtXSsq4UgusscPy0CVafRuMgH5wJf9enGQgzzy0z5VojudSTw==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-print": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-print/-/plugin-print-0.9.8.tgz", | ||||
|       "integrity": "sha512-nLLPv1/faehRsOjecXXUb6kzhRcZzImO55XuFZ0c90ZyoiHm4UFREwO5sKxHGvpLXS6RnkhvSav4+IWD2qGbEQ==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-print/-/plugin-print-0.10.0.tgz", | ||||
|       "integrity": "sha512-5taCmgZw+gNRQCYXmzYgJWoRimfyP6CM72LMPx5mfKONUrvu3Rj8tFQJMfbpf6AJOQp3mJPIYlcbZzozSDfjLg==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1", | ||||
|         "load-bmfont": "^1.4.0" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-resize": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-resize/-/plugin-resize-0.9.8.tgz", | ||||
|       "integrity": "sha512-L80NZ+HKsiKFyeDc6AfneC4+5XACrdL2vnyAVfAAsb3pmamgT/jDInWvvGhyI0Y76vx2w6XikplzEznW/QQvWg==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-resize/-/plugin-resize-0.10.0.tgz", | ||||
|       "integrity": "sha512-sYcbeMKTYEVmkKLIHUoz3o4Ai86dr8RnZz85uMsRAim+KxRCHMLD1MFpHSJWpIfuoNzo2onLZ8h0qqdQdZ6GuQ==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-rotate": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-rotate/-/plugin-rotate-0.9.8.tgz", | ||||
|       "integrity": "sha512-bpqzQheISYnBXKyU1lIj46uR7mRs0UhgEREWK70HnvFJSlRshdcoNMIrKamyrJeFdJrkYPSfR/a6D0d5zsWf1Q==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-rotate/-/plugin-rotate-0.10.0.tgz", | ||||
|       "integrity": "sha512-/2N7tkHX0KDupfgxmamZPv1/ZuSwMcfeyZhjxIg2yFf4MXYKQYe3ByclrmNR7nkOAiD0Fa5NSIZ8tkIUBacWVg==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-scale": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-scale/-/plugin-scale-0.9.8.tgz", | ||||
|       "integrity": "sha512-QU3ZS4Lre8nN66U9dKCOC4FNfaOh/QJFYUmQPKpPS924oYbtnm4OlmsdfpK2hVMSVVyVOis8M+xpA1rDBnIp7w==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-scale/-/plugin-scale-0.10.0.tgz", | ||||
|       "integrity": "sha512-FSwW7rz0/EtnRpDa3YwQrdteYZw3ZWfs57MY6TYLcB3a9UlvGiGWiFnvoyu6tubjFi5uxDlkS6bLRH40UYdqAg==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-shadow": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-shadow/-/plugin-shadow-0.9.8.tgz", | ||||
|       "integrity": "sha512-t/pE+QS3r1ZUxGIQNmwWDI3c5+/hLU+gxXD+C3EEC47/qk3gTBHpj/xDdGQBoObdT/HRjR048vC2BgBfzjj2hg==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-shadow/-/plugin-shadow-0.10.0.tgz", | ||||
|       "integrity": "sha512-+eXGK+Z5X99v3fHBpN35GIepfdZxF7V5gmFbCF4q7aIXLgNpVNM0j+g1wBFVqwSl97TpaD7Wbvh99zygWL/S6g==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugin-threshold": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-threshold/-/plugin-threshold-0.9.8.tgz", | ||||
|       "integrity": "sha512-WWmC3lnIwOTPvkKu55w4DUY8Ehlzf3nU98bY0QtIzkqxkAOZU5m+lvgC/JxO5FyGiA57j9FLMIf0LsWkjARj7g==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugin-threshold/-/plugin-threshold-0.10.0.tgz", | ||||
|       "integrity": "sha512-m/oIgDfZ3wAAdpC4/JMgd+G3AvMcMCXmLkKh30JSwsPgIgsAZRiiGSdy3obXKLcEQ2eNWPIaCU1/qPVt6m2org==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/plugins": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugins/-/plugins-0.9.8.tgz", | ||||
|       "integrity": "sha512-tD+cxS9SuEZaQ1hhAkNKw9TkUAqfoBAhdWPBrEZDr/GvGPrvJR4pYmmpSYhc5IZmMbXfQayHTTGqjj8D18bToA==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/plugins/-/plugins-0.10.0.tgz", | ||||
|       "integrity": "sha512-pxBCETGOTwZ7rBbq5NtPY21NcGLEtY6HtCvcN/IUmUNhcuGcaM+YEjGYg7mAP9HNoP6e6UevA5aiouDA+lFVHw==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/plugin-blit": "^0.9.8", | ||||
|         "@jimp/plugin-blur": "^0.9.8", | ||||
|         "@jimp/plugin-circle": "^0.9.8", | ||||
|         "@jimp/plugin-color": "^0.9.8", | ||||
|         "@jimp/plugin-contain": "^0.9.8", | ||||
|         "@jimp/plugin-cover": "^0.9.8", | ||||
|         "@jimp/plugin-crop": "^0.9.8", | ||||
|         "@jimp/plugin-displace": "^0.9.8", | ||||
|         "@jimp/plugin-dither": "^0.9.8", | ||||
|         "@jimp/plugin-fisheye": "^0.9.8", | ||||
|         "@jimp/plugin-flip": "^0.9.8", | ||||
|         "@jimp/plugin-gaussian": "^0.9.8", | ||||
|         "@jimp/plugin-invert": "^0.9.8", | ||||
|         "@jimp/plugin-mask": "^0.9.8", | ||||
|         "@jimp/plugin-normalize": "^0.9.8", | ||||
|         "@jimp/plugin-print": "^0.9.8", | ||||
|         "@jimp/plugin-resize": "^0.9.8", | ||||
|         "@jimp/plugin-rotate": "^0.9.8", | ||||
|         "@jimp/plugin-scale": "^0.9.8", | ||||
|         "@jimp/plugin-shadow": "^0.9.8", | ||||
|         "@jimp/plugin-threshold": "^0.9.8", | ||||
|         "@jimp/plugin-blit": "^0.10.0", | ||||
|         "@jimp/plugin-blur": "^0.10.0", | ||||
|         "@jimp/plugin-circle": "^0.10.0", | ||||
|         "@jimp/plugin-color": "^0.10.0", | ||||
|         "@jimp/plugin-contain": "^0.10.0", | ||||
|         "@jimp/plugin-cover": "^0.10.0", | ||||
|         "@jimp/plugin-crop": "^0.10.0", | ||||
|         "@jimp/plugin-displace": "^0.10.0", | ||||
|         "@jimp/plugin-dither": "^0.10.0", | ||||
|         "@jimp/plugin-fisheye": "^0.10.0", | ||||
|         "@jimp/plugin-flip": "^0.10.0", | ||||
|         "@jimp/plugin-gaussian": "^0.10.0", | ||||
|         "@jimp/plugin-invert": "^0.10.0", | ||||
|         "@jimp/plugin-mask": "^0.10.0", | ||||
|         "@jimp/plugin-normalize": "^0.10.0", | ||||
|         "@jimp/plugin-print": "^0.10.0", | ||||
|         "@jimp/plugin-resize": "^0.10.0", | ||||
|         "@jimp/plugin-rotate": "^0.10.0", | ||||
|         "@jimp/plugin-scale": "^0.10.0", | ||||
|         "@jimp/plugin-shadow": "^0.10.0", | ||||
|         "@jimp/plugin-threshold": "^0.10.0", | ||||
|         "core-js": "^3.4.1", | ||||
|         "timm": "^1.6.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/png": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/png/-/png-0.9.8.tgz", | ||||
|       "integrity": "sha512-9CqR8d40zQCDhbnXHqcwkAMnvlV0vk9xSyE6LHjkYHS7x18Unsz5txQdsaEkEcXxCrOQSoWyITfLezlrWXRJAA==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/png/-/png-0.10.0.tgz", | ||||
|       "integrity": "sha512-RA52BB9duNFCEu1UuGrho7IQ+XVWsp4e+9dBToKfV0qsWAAHAffYz1y2XqLc1iCWcw1voBmJgIOygRu0jEt2QQ==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/utils": "^0.9.8", | ||||
|         "@jimp/utils": "^0.10.0", | ||||
|         "core-js": "^3.4.1", | ||||
|         "pngjs": "^3.3.3" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/tiff": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/tiff/-/tiff-0.9.8.tgz", | ||||
|       "integrity": "sha512-eMxcpJivJqMByn2dZxUHLeh6qvVs5J/52kBF3TFa3C922OJ97D9l1C1h0WKUCBqFMWzMYapQQ4vwnLgpJ5tkow==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/tiff/-/tiff-0.10.0.tgz", | ||||
|       "integrity": "sha512-mD864zMb8gG5yRottcixbJj+AMrepGqYK+9guek1tVCuoOnWQzjwU3pbb59nqkbw3enf3XNmbK2f2TfE7s5Jbw==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "core-js": "^3.4.1", | ||||
| @ -511,24 +511,24 @@ | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/types": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/types/-/types-0.9.8.tgz", | ||||
|       "integrity": "sha512-H5y/uqt0lqJ/ZN8pWqFG+pv8jPAppMKkTMByuC8YBIjWSsornwv44hjiWl93sbYhduLZY8ubz/CbX9jH2X6EwA==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/types/-/types-0.10.0.tgz", | ||||
|       "integrity": "sha512-PABpDNQi20aKe6Xcc4l4gVI95ztlkmfSSlgHJrby/Cg2b0NzQF81rY1W0eLC2/8R6OGTgi5FtvKI59NDss8nPg==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/bmp": "^0.9.8", | ||||
|         "@jimp/gif": "^0.9.8", | ||||
|         "@jimp/jpeg": "^0.9.8", | ||||
|         "@jimp/png": "^0.9.8", | ||||
|         "@jimp/tiff": "^0.9.8", | ||||
|         "@jimp/bmp": "^0.10.0", | ||||
|         "@jimp/gif": "^0.10.0", | ||||
|         "@jimp/jpeg": "^0.10.0", | ||||
|         "@jimp/png": "^0.10.0", | ||||
|         "@jimp/tiff": "^0.10.0", | ||||
|         "core-js": "^3.4.1", | ||||
|         "timm": "^1.6.1" | ||||
|       } | ||||
|     }, | ||||
|     "@jimp/utils": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.9.8.tgz", | ||||
|       "integrity": "sha512-UK0Fu0eevQlpRXq5ff4o/71HJlpX9wJMddJjMYg9vUqCCl8ZnumRAljfShHFhGyO+Vc9IzN6dd8Y5JZZTp1KOw==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.10.0.tgz", | ||||
|       "integrity": "sha512-a05KrUwDGuQn++gWyvQcWlFBXfyZXYpY/3Mde4i/HEIyzWrZSnSzppCssiKVXR5pSWSqfSsLDImrSuJRqtOVmQ==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "core-js": "^3.4.1" | ||||
| @ -2678,14 +2678,14 @@ | ||||
|       "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" | ||||
|     }, | ||||
|     "ejs": { | ||||
|       "version": "2.7.4", | ||||
|       "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.7.4.tgz", | ||||
|       "integrity": "sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==" | ||||
|       "version": "3.0.2", | ||||
|       "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.0.2.tgz", | ||||
|       "integrity": "sha512-IncmUpn1yN84hy2shb0POJ80FWrfGNY0cxO9f4v+/sG7qcBvAtVWUA1IdzY/8EYUmOVhoKJVdJjNd3AZcnxOjA==" | ||||
|     }, | ||||
|     "electron": { | ||||
|       "version": "9.0.0-beta.10", | ||||
|       "resolved": "https://registry.npmjs.org/electron/-/electron-9.0.0-beta.10.tgz", | ||||
|       "integrity": "sha512-HTGLrC/BuRfKvWsS5ymOP1VUqnXCg2vbnVjViQ9f7WneWpDJ1D0CT2voP6Vi0ivHCQrKP8OQf7ZPphNkp+GUyA==", | ||||
|       "version": "9.0.0-beta.12", | ||||
|       "resolved": "https://registry.npmjs.org/electron/-/electron-9.0.0-beta.12.tgz", | ||||
|       "integrity": "sha512-wX4D36JQAFa+3BIduDizy51fd0Tkoh7y+foudNdesIDt9sFJCAcc8RDOjQpFDsuMzehS/1fvMzsuUbquVZdSbA==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "@electron/get": "^1.0.1", | ||||
| @ -5380,14 +5380,14 @@ | ||||
|       } | ||||
|     }, | ||||
|     "jimp": { | ||||
|       "version": "0.9.8", | ||||
|       "resolved": "https://registry.npmjs.org/jimp/-/jimp-0.9.8.tgz", | ||||
|       "integrity": "sha512-DHN4apKMwLIvD/TKO9tFfPuankNuVK98vCwHm/Jv9z5cJnrd38xhi+4I7IAGmDU3jIDlrEVhzTkFH1Ymv5yTQQ==", | ||||
|       "version": "0.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/jimp/-/jimp-0.10.0.tgz", | ||||
|       "integrity": "sha512-PwTUye0Z721FGzNZhbf48U3CMFMbtQY+LEshUx72Z716ku+/SjI6XXfXhZyU3o/PR1TxoFFjyLlV1x8qg6ZF+A==", | ||||
|       "requires": { | ||||
|         "@babel/runtime": "^7.7.2", | ||||
|         "@jimp/custom": "^0.9.8", | ||||
|         "@jimp/plugins": "^0.9.8", | ||||
|         "@jimp/types": "^0.9.8", | ||||
|         "@jimp/custom": "^0.10.0", | ||||
|         "@jimp/plugins": "^0.10.0", | ||||
|         "@jimp/types": "^0.10.0", | ||||
|         "core-js": "^3.4.1", | ||||
|         "regenerator-runtime": "^0.13.3" | ||||
|       } | ||||
|  | ||||
| @ -29,7 +29,7 @@ | ||||
|     "csurf": "1.11.0", | ||||
|     "dayjs": "1.8.23", | ||||
|     "debug": "4.1.1", | ||||
|     "ejs": "2.7.4", | ||||
|     "ejs": "3.0.2", | ||||
|     "electron-debug": "3.0.1", | ||||
|     "electron-dl": "3.0.0", | ||||
|     "electron-find": "1.0.6", | ||||
| @ -49,8 +49,8 @@ | ||||
|     "imagemin-mozjpeg": "8.0.0", | ||||
|     "imagemin-pngquant": "8.0.0", | ||||
|     "ini": "1.3.5", | ||||
|     "is-svg": "^4.2.1", | ||||
|     "jimp": "0.9.8", | ||||
|     "is-svg": "4.2.1", | ||||
|     "jimp": "0.10.0", | ||||
|     "mime-types": "2.1.26", | ||||
|     "multer": "1.4.2", | ||||
|     "node-abi": "2.15.0", | ||||
| @ -77,7 +77,7 @@ | ||||
|     "yazl": "^2.5.1" | ||||
|   }, | ||||
|   "devDependencies": { | ||||
|     "electron": "9.0.0-beta.10", | ||||
|     "electron": "9.0.0-beta.12", | ||||
|     "electron-builder": "22.4.1", | ||||
|     "electron-packager": "14.2.1", | ||||
|     "electron-rebuild": "1.10.1", | ||||
|  | ||||
| @ -3,7 +3,7 @@ import treeCache from "./tree_cache.js"; | ||||
| import ws from "./ws.js"; | ||||
| import hoistedNoteService from "./hoisted_note.js"; | ||||
| 
 | ||||
| async function prepareTree() { | ||||
| async function prepareRootNode() { | ||||
|     await treeCache.initializedPromise; | ||||
| 
 | ||||
|     const hoistedNoteId = hoistedNoteService.getHoistedNoteId(); | ||||
| @ -18,7 +18,7 @@ async function prepareTree() { | ||||
|         hoistedBranch = (await hoistedNote.getBranches())[0]; | ||||
|     } | ||||
| 
 | ||||
|     return [ await prepareNode(hoistedBranch) ]; | ||||
|     return await prepareNode(hoistedBranch); | ||||
| } | ||||
| 
 | ||||
| async function prepareBranch(note) { | ||||
| @ -167,7 +167,7 @@ function getExtraClasses(note) { | ||||
| } | ||||
| 
 | ||||
| export default { | ||||
|     prepareTree, | ||||
|     prepareRootNode, | ||||
|     prepareBranch, | ||||
|     getExtraClasses, | ||||
|     getIcon | ||||
|  | ||||
| @ -68,13 +68,13 @@ export default class NoteTreeWidget extends TabAwareWidget { | ||||
|             } | ||||
|         }); | ||||
| 
 | ||||
|         this.initialized = treeBuilder.prepareTree().then(treeData => this.initFancyTree(treeData)); | ||||
|         this.initialized = this.initFancyTree(); | ||||
| 
 | ||||
|         return this.$widget; | ||||
|     } | ||||
| 
 | ||||
|     async initFancyTree(treeData) { | ||||
|         utils.assertArguments(treeData); | ||||
|     async initFancyTree() { | ||||
|         const treeData = [await treeBuilder.prepareRootNode()]; | ||||
| 
 | ||||
|         this.$widget.fancytree({ | ||||
|             autoScroll: true, | ||||
| @ -414,8 +414,10 @@ export default class NoteTreeWidget extends TabAwareWidget { | ||||
|         return list ? list : []; // if no nodes with this refKey are found, fancy tree returns null
 | ||||
|     } | ||||
| 
 | ||||
|     async reload(notes) { | ||||
|         await this.tree.reload(notes); | ||||
|     async reload() { | ||||
|         const rootNode = await treeBuilder.prepareRootNode(); | ||||
| 
 | ||||
|         await this.tree.reload([rootNode]); | ||||
|     } | ||||
| 
 | ||||
|     // must be event since it's triggered from outside the tree
 | ||||
| @ -581,13 +583,11 @@ export default class NoteTreeWidget extends TabAwareWidget { | ||||
|     } | ||||
| 
 | ||||
|     async reloadTreeFromCache() { | ||||
|         const notes = await treeBuilder.prepareTree(); | ||||
| 
 | ||||
|         const activeNode = this.getActiveNode(); | ||||
| 
 | ||||
|         const activeNotePath = activeNode !== null ? treeService.getNotePath(activeNode) : null; | ||||
| 
 | ||||
|         await this.reload(notes); | ||||
|         await this.reload(); | ||||
| 
 | ||||
|         if (activeNotePath) { | ||||
|             const node = await this.getNodeFromPath(activeNotePath, true); | ||||
|  | ||||
| @ -12,30 +12,30 @@ | ||||
| 
 | ||||
| <div class="dropdown-menu dropdown-menu-sm" id="context-menu-container"></div> | ||||
| 
 | ||||
| <% include dialogs/about.ejs %> | ||||
| <% include dialogs/add_link.ejs %> | ||||
| <% include dialogs/attributes.ejs %> | ||||
| <% include dialogs/branch_prefix.ejs %> | ||||
| <% include dialogs/export.ejs %> | ||||
| <% include dialogs/import.ejs %> | ||||
| <% include dialogs/jump_to_note.ejs %> | ||||
| <% include dialogs/markdown_import.ejs %> | ||||
| <% include dialogs/note_revisions.ejs %> | ||||
| <% include dialogs/note_source.ejs %> | ||||
| <% include dialogs/options.ejs %> | ||||
| <% include dialogs/protected_session_password.ejs %> | ||||
| <% include dialogs/recent_changes.ejs %> | ||||
| <% include dialogs/sql_console.ejs %> | ||||
| <% include dialogs/info.ejs %> | ||||
| <% include dialogs/prompt.ejs %> | ||||
| <% include dialogs/confirm.ejs %> | ||||
| <% include dialogs/help.ejs %> | ||||
| <% include dialogs/note_info.ejs %> | ||||
| <% include dialogs/link_map.ejs %> | ||||
| <% include dialogs/clone_to.ejs %> | ||||
| <% include dialogs/move_to.ejs %> | ||||
| <% include dialogs/backend_log.ejs %> | ||||
| <% include dialogs/include_note.ejs %> | ||||
| <%- include('dialogs/about.ejs') %> | ||||
| <%- include('dialogs/add_link.ejs') %> | ||||
| <%- include('dialogs/attributes.ejs') %> | ||||
| <%- include('dialogs/branch_prefix.ejs') %> | ||||
| <%- include('dialogs/export.ejs') %> | ||||
| <%- include('dialogs/import.ejs') %> | ||||
| <%- include('dialogs/jump_to_note.ejs') %> | ||||
| <%- include('dialogs/markdown_import.ejs') %> | ||||
| <%- include('dialogs/note_revisions.ejs') %> | ||||
| <%- include('dialogs/note_source.ejs') %> | ||||
| <%- include('dialogs/options.ejs') %> | ||||
| <%- include('dialogs/protected_session_password.ejs') %> | ||||
| <%- include('dialogs/recent_changes.ejs') %> | ||||
| <%- include('dialogs/sql_console.ejs') %> | ||||
| <%- include('dialogs/info.ejs') %> | ||||
| <%- include('dialogs/prompt.ejs') %> | ||||
| <%- include('dialogs/confirm.ejs') %> | ||||
| <%- include('dialogs/help.ejs') %> | ||||
| <%- include('dialogs/note_info.ejs') %> | ||||
| <%- include('dialogs/link_map.ejs') %> | ||||
| <%- include('dialogs/clone_to.ejs') %> | ||||
| <%- include('dialogs/move_to.ejs') %> | ||||
| <%- include('dialogs/backend_log.ejs') %> | ||||
| <%- include('dialogs/include_note.ejs') %> | ||||
| 
 | ||||
| <script type="text/javascript"> | ||||
|     window.baseApiUrl = 'api/'; | ||||
| @ -60,8 +60,8 @@ | ||||
| <script src="libraries/bootstrap/js/bootstrap.bundle.min.js"></script> | ||||
| 
 | ||||
| <!-- Include Fancytree skin and library --> | ||||
| <link href="libraries/fancytree/skin-win8/ui.fancytree.css" rel="stylesheet"> | ||||
| <script src="libraries/fancytree/jquery.fancytree-all-deps.js"></script> | ||||
| <link href="libraries/fancytree/skin-win8/ui.fancytree.min.css" rel="stylesheet"> | ||||
| <script src="libraries/fancytree/jquery.fancytree-all-deps.min.js"></script> | ||||
| 
 | ||||
| <script src="libraries/jquery.hotkeys.js"></script> | ||||
| <script src="libraries/jquery.fancytree.hotkeys.js"></script> | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 zadam
						zadam