diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
new file mode 100644
index 00000000..3512b85f
--- /dev/null
+++ b/.github/workflows/build.yml
@@ -0,0 +1,40 @@
+name: ui-scroll build
+
+on:
+ push:
+ branches:
+ - "**"
+ workflow_dispatch:
+ inputs:
+ cause:
+ description: 'Reason'
+ required: true
+ default: 'Manual triggering'
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ timeout-minutes: 5
+ steps:
+ - name: Dispatched?
+ if: ${{ github.event_name == 'workflow_dispatch' }}
+ run: |
+ echo "This is dispatched"
+ echo "Build reason: ${{ github.event.inputs.cause }}"
+
+ - name: Checkout
+ uses: actions/checkout@v3
+
+ - name: Use Node.js
+ uses: actions/setup-node@v3
+ with:
+ node-version: 18
+
+ - name: Install dependencies
+ run: npm ci
+
+ - name: Run tests
+ env:
+ CI: true
+ BROWSER: headless
+ run: npm test
diff --git a/.npmignore b/.npmignore
index c8a70c46..05145482 100644
--- a/.npmignore
+++ b/.npmignore
@@ -3,9 +3,9 @@
/src
/temp
/test
+/.github
.babelrc
.gitignore
.jshintrc
.npmignore
-.travis.yml
webpack.config.js
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 9256c373..00000000
--- a/.travis.yml
+++ /dev/null
@@ -1,28 +0,0 @@
-language: node_js
-
-node_js:
-- "stable"
-
-install:
-- npm install
-
-cache:
- directories:
- - "node_modules"
-
-addons:
- firefox: latest
-
-services:
-- xvfb
-
-script:
-- npm run build
-
-deploy:
- provider: pages
- skip_cleanup: true
- github_token: $github_token
- local_dir: ./
- on:
- branch: master
diff --git a/README.md b/README.md
index 64ca8dd5..ad89b81b 100644
--- a/README.md
+++ b/README.md
@@ -1,9 +1,8 @@
### UI Scroll - [AngularJS](http://angularjs.org/) directive to provide infinite scroll over a limited element buffer
-[](https://travis-ci.org/angular-ui/ui-scroll)
-[](http://badge.fury.io/js/angular-ui-scroll)
+[](https://github.com/angular-ui/ui-scroll/actions/workflows/ci.yml)
+[](https://www.npmjs.com/package/angular-ui-scroll)
[](http://badge.fury.io/bo/angular-ui-scroll)
-[](https://gitter.im/angular-ui/ui-scroll?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
looking for next Angular version? try ngx-ui-scroll ☞
@@ -479,6 +478,9 @@ Pull Request should include source code (./scr) changes, may include tests (./te
## Change log
+### v1.9.0
+ * Webpack 5 build.
+
### v1.8.2
* Fixed edge cases when removing items.
diff --git a/bower.json b/bower.json
index 3f8938ff..b2f6355e 100644
--- a/bower.json
+++ b/bower.json
@@ -1,7 +1,7 @@
{
"name": "angular-ui-scroll",
"description": "AngularJS infinite scrolling module",
- "version": "1.8.2",
+ "version": "1.9.0",
"main": "./dist/ui-scroll.js",
"homepage": "https://github.com/angular-ui/ui-scroll.git",
"license": "MIT",
@@ -27,12 +27,12 @@
"src",
"temp",
"test",
+ ".github",
".gitignore",
".jshintrc",
".npmignore",
- ".travis.yml",
"Gruntfile.js",
"package.json",
"webpack.config.js"
]
-}
+}
\ No newline at end of file
diff --git a/dist/ui-scroll-grid.js b/dist/ui-scroll-grid.js
index 2fff64ca..c3f72b10 100644
--- a/dist/ui-scroll-grid.js
+++ b/dist/ui-scroll-grid.js
@@ -1,131 +1,36 @@
/*!
* angular-ui-scroll
* https://github.com/angular-ui/ui-scroll
- * Version: 1.8.2 -- 2020-10-02T15:06:03.904Z
+ * Version: 1.9.0 -- 2023-04-19T12:05:19.939Z
* License: MIT
*/
-/******/ (function(modules) { // webpackBootstrap
-/******/ // The module cache
-/******/ var installedModules = {};
-/******/
-/******/ // The require function
-/******/ function __webpack_require__(moduleId) {
-/******/
-/******/ // Check if module is in cache
-/******/ if(installedModules[moduleId]) {
-/******/ return installedModules[moduleId].exports;
-/******/ }
-/******/ // Create a new module (and put it into the cache)
-/******/ var module = installedModules[moduleId] = {
-/******/ i: moduleId,
-/******/ l: false,
-/******/ exports: {}
-/******/ };
-/******/
-/******/ // Execute the module function
-/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
-/******/
-/******/ // Flag the module as loaded
-/******/ module.l = true;
-/******/
-/******/ // Return the exports of the module
-/******/ return module.exports;
-/******/ }
-/******/
-/******/
-/******/ // expose the modules object (__webpack_modules__)
-/******/ __webpack_require__.m = modules;
-/******/
-/******/ // expose the module cache
-/******/ __webpack_require__.c = installedModules;
-/******/
-/******/ // define getter function for harmony exports
-/******/ __webpack_require__.d = function(exports, name, getter) {
-/******/ if(!__webpack_require__.o(exports, name)) {
-/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
-/******/ }
-/******/ };
-/******/
-/******/ // define __esModule on exports
-/******/ __webpack_require__.r = function(exports) {
-/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
-/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
-/******/ }
-/******/ Object.defineProperty(exports, '__esModule', { value: true });
-/******/ };
-/******/
-/******/ // create a fake namespace object
-/******/ // mode & 1: value is a module id, require it
-/******/ // mode & 2: merge all properties of value into the ns
-/******/ // mode & 4: return value when already ns object
-/******/ // mode & 8|1: behave like require
-/******/ __webpack_require__.t = function(value, mode) {
-/******/ if(mode & 1) value = __webpack_require__(value);
-/******/ if(mode & 8) return value;
-/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
-/******/ var ns = Object.create(null);
-/******/ __webpack_require__.r(ns);
-/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
-/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
-/******/ return ns;
-/******/ };
-/******/
-/******/ // getDefaultExport function for compatibility with non-harmony modules
-/******/ __webpack_require__.n = function(module) {
-/******/ var getter = module && module.__esModule ?
-/******/ function getDefault() { return module['default']; } :
-/******/ function getModuleExports() { return module; };
-/******/ __webpack_require__.d(getter, 'a', getter);
-/******/ return getter;
-/******/ };
-/******/
-/******/ // Object.prototype.hasOwnProperty.call
-/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
-/******/
-/******/ // __webpack_public_path__
-/******/ __webpack_require__.p = "";
-/******/
-/******/
-/******/ // Load entry module and return exports
-/******/ return __webpack_require__(__webpack_require__.s = 0);
-/******/ })
-/************************************************************************/
-/******/ ([
-/* 0 */
-/***/ (function(module, exports) {
-
+/******/ (() => { // webpackBootstrap
+var __webpack_exports__ = {};
angular.module('ui.scroll.grid', []).directive('uiScrollTh', ['$log', '$timeout', function (console, $timeout) {
function GridAdapter(controller) {
this.getLayout = function () {
return controller.getLayout();
};
-
this.applyLayout = function (layout) {
return controller.applyLayout(layout);
};
-
this.columnFromPoint = function (x, y) {
return controller.columnFromPoint(x, y);
};
-
Object.defineProperty(this, 'columns', {
get: function get() {
return controller.getColumns();
}
});
}
-
function ColumnAdapter(controller, column) {
- this.css = function ()
- /* attr, value */
- {
+ this.css = function /* attr, value */
+ () {
var attr = arguments[0];
var value = arguments[1];
-
if (arguments.length == 1) {
return column.header.css(attr);
}
-
if (arguments.length == 2) {
column.header.css(attr, value);
controller.forEachRow(function (row) {
@@ -134,37 +39,33 @@ angular.module('ui.scroll.grid', []).directive('uiScrollTh', ['$log', '$timeout'
column.css[attr] = value;
}
};
-
this.moveBefore = function (index) {
return controller.moveBefore(column, index);
};
-
this.exchangeWith = function (index) {
return controller.exchangeWith(column, index);
};
-
Object.defineProperty(this, 'columnId', {
get: function get() {
return column.id;
}
});
}
-
function ColumnController(controller, columns, header) {
this.header = header;
this.css = {};
this.mapTo = columns.length;
- this.id = columns.length; // controller api methods
+ this.id = columns.length;
+
+ // controller api methods
this.applyLayout = function (layout) {
this.css = angular.extend({}, layout.css);
this.mapTo = layout.mapTo;
applyCss(this.header, this.css);
};
-
this.moveBefore = function (target) {
var _this = this;
-
if (target) {
moveBefore(header, target.header);
controller.forEachRow(function (row) {
@@ -177,25 +78,22 @@ angular.module('ui.scroll.grid', []).directive('uiScrollTh', ['$log', '$timeout'
});
}
};
-
this.columnFromPoint = function (x, y) {
var _this2 = this;
-
if (insidePoint(header, x, y)) {
return this;
}
-
var result = null;
controller.forEachRow(function (row) {
return result = insidePoint(row[_this2.id], x, y) ? _this2 : result;
});
return result;
};
-
this.applyCss = function (target) {
applyCss(target, this.css);
- }; // function definitions
+ };
+ // function definitions
function insidePoint(element, x, y) {
var offset = element.offset();
@@ -203,21 +101,17 @@ angular.module('ui.scroll.grid', []).directive('uiScrollTh', ['$log', '$timeout'
if (y < offset.top || offset.top + element.outerHeight(true) < y) return false;
return true;
}
-
function moveBefore(element, target) {
element.detach();
target.before(element);
}
-
function moveLast(element) {
var parent = element.parent();
element.detach();
parent.append(element);
}
-
function applyCss(target, css) {
target.removeAttr('style');
-
for (var attr in css) {
if (css.hasOwnProperty(attr)) {
target.css(attr, css[attr]);
@@ -225,57 +119,44 @@ angular.module('ui.scroll.grid', []).directive('uiScrollTh', ['$log', '$timeout'
}
}
}
-
function GridController(scrollViewport) {
var _this3 = this;
-
var columns = [];
var rowMap = new Map();
$timeout(function () {
scrollViewport.adapter.publicContext.gridAdapter = new GridAdapter(_this3);
-
scrollViewport.adapter.transform = function (scope, item) {
return transform(rowMap.get(scope), item);
};
});
-
this.registerColumn = function (header) {
columns.push(new ColumnController(this, columns, header));
};
-
this.registerCell = function (scope, cell) {
var row = rowMap.get(scope);
-
if (!row) {
row = [];
rowMap.set(scope, row);
}
-
if (row.length >= columns.length) {
return false;
}
-
row.push(cell);
return true;
};
-
this.unregisterCell = function (scope, cell) {
var row = rowMap.get(scope);
var i = row.indexOf(cell);
row.splice(i, 1);
-
if (!row.length) {
rowMap.delete(scope);
}
};
-
this.forEachRow = function (callback) {
rowMap.forEach(callback);
};
-
this.getColumns = function () {
var _this4 = this;
-
var result = [];
columns.slice().sort(function (a, b) {
return a.mapTo - b.mapTo;
@@ -284,7 +165,6 @@ angular.module('ui.scroll.grid', []).directive('uiScrollTh', ['$log', '$timeout'
});
return result;
};
-
this.getLayout = function () {
var result = [];
columns.forEach(function (column, index) {
@@ -296,12 +176,10 @@ angular.module('ui.scroll.grid', []).directive('uiScrollTh', ['$log', '$timeout'
});
return result;
};
-
this.applyLayout = function (layouts) {
if (!layouts || layouts.length != columns.length) {
throw new Error('Failed to apply layout - number of layouts should match number of columns');
}
-
layouts.forEach(function (layout, index) {
return columns[index].applyLayout(layout);
});
@@ -312,20 +190,17 @@ angular.module('ui.scroll.grid', []).directive('uiScrollTh', ['$log', '$timeout'
return transform(row);
});
};
-
this.moveBefore = function (selected, target) {
var index = target;
-
if (target % 1 !== 0) {
index = target ? columns[target.columnId].mapTo : columns.length;
}
-
if (index < 0 || index > columns.length) {
return; // throw an error?
}
var mapTo = selected.mapTo,
- next = null;
+ next = null;
index -= mapTo < index ? 1 : 0;
columns.forEach(function (c) {
c.mapTo -= c.mapTo > mapTo ? 1 : 0;
@@ -335,25 +210,23 @@ angular.module('ui.scroll.grid', []).directive('uiScrollTh', ['$log', '$timeout'
selected.mapTo = index;
selected.moveBefore(next);
};
-
this.exchangeWith = function (selected, index) {
if (index < 0 || index >= columns.length) {
return;
}
-
columns.find(function (c) {
return c.mapTo === index;
}).mapTo = selected.mapTo;
selected.mapTo = index;
};
-
this.columnFromPoint = function (x, y) {
var column = columns.find(function (col) {
return col.columnFromPoint(x, y);
});
return column ? new ColumnAdapter(this, column) : undefined;
- }; // function definitions
+ };
+ // function definitions
function transform(row) {
var parent = row[0].parent();
@@ -368,7 +241,6 @@ angular.module('ui.scroll.grid', []).directive('uiScrollTh', ['$log', '$timeout'
});
}
}
-
return {
require: ['^^uiScrollViewport'],
restrict: 'A',
@@ -385,35 +257,28 @@ angular.module('ui.scroll.grid', []).directive('uiScrollTh', ['$log', '$timeout'
if (!controllers[0]) {
return;
}
-
var scope = $scope;
var tdInitializer = $scope.uiScrollTdInitializer;
-
if (!tdInitializer) {
tdInitializer = $scope.uiScrollTdInitializer = {
linking: true
};
}
-
if (!tdInitializer.linking) {
scope = tdInitializer.scope;
}
-
var gridController = controllers[0].gridController;
-
if (gridController.registerCell(scope, element)) {
$scope.$on('$destroy', function () {
return gridController.unregisterCell(scope, element);
});
}
-
if (!tdInitializer.linking) {
tdInitializer.onLink();
}
}
};
});
-
-/***/ })
-/******/ ]);
+/******/ })()
+;
//# sourceMappingURL=ui-scroll-grid.js.map
\ No newline at end of file
diff --git a/dist/ui-scroll-grid.js.map b/dist/ui-scroll-grid.js.map
index 3b3ee49f..358e48e1 100644
--- a/dist/ui-scroll-grid.js.map
+++ b/dist/ui-scroll-grid.js.map
@@ -1 +1 @@
-{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/ui-scroll-grid.js"],"names":["angular","module","directive","console","$timeout","GridAdapter","controller","getLayout","applyLayout","layout","columnFromPoint","x","y","Object","defineProperty","get","getColumns","ColumnAdapter","column","css","attr","arguments","value","length","header","forEachRow","row","id","moveBefore","index","exchangeWith","ColumnController","columns","mapTo","extend","applyCss","target","moveLast","insidePoint","result","element","offset","left","outerWidth","top","outerHeight","detach","before","parent","append","removeAttr","hasOwnProperty","GridController","scrollViewport","rowMap","Map","adapter","publicContext","gridAdapter","transform","scope","item","registerColumn","push","registerCell","cell","set","unregisterCell","i","indexOf","splice","delete","callback","forEach","slice","sort","a","b","layouts","Error","map","selected","columnId","next","c","find","col","undefined","visible","require","restrict","link","$scope","$attr","controllers","gridController","tdInitializer","uiScrollTdInitializer","linking","$on","onLink"],"mappings":"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","file":"ui-scroll-grid.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n","angular.module('ui.scroll.grid', [])\r\n .directive('uiScrollTh', ['$log', '$timeout', function(console, $timeout) {\r\n\r\n function GridAdapter(controller) {\r\n\r\n this.getLayout = () => controller.getLayout();\r\n\r\n this.applyLayout = (layout) => controller.applyLayout(layout);\r\n\r\n this.columnFromPoint = (x, y) => controller.columnFromPoint(x, y);\r\n\r\n Object.defineProperty(this, 'columns', { get: () => controller.getColumns() });\r\n }\r\n\r\n function ColumnAdapter(controller, column) {\r\n\r\n this.css = function( /* attr, value */ ) {\r\n var attr = arguments[0];\r\n var value = arguments[1];\r\n if (arguments.length == 1) {\r\n return column.header.css(attr);\r\n }\r\n if (arguments.length == 2) {\r\n column.header.css(attr, value);\r\n controller.forEachRow((row) => row[column.id].css(attr, value));\r\n column.css[attr] = value;\r\n }\r\n };\r\n\r\n this.moveBefore = (index) => controller.moveBefore(column, index);\r\n\r\n this.exchangeWith = (index) => controller.exchangeWith(column, index);\r\n\r\n Object.defineProperty(this, 'columnId', { get: () => column.id });\r\n }\r\n\r\n function ColumnController(controller, columns, header) {\r\n\r\n this.header = header;\r\n this.css = {};\r\n this.mapTo = columns.length;\r\n this.id = columns.length;\r\n\r\n // controller api methods\r\n\r\n this.applyLayout = function(layout) {\r\n this.css = angular.extend({}, layout.css);\r\n this.mapTo = layout.mapTo;\r\n applyCss(this.header, this.css);\r\n };\r\n\r\n this.moveBefore = function(target) {\r\n if (target) {\r\n moveBefore(header, target.header);\r\n controller.forEachRow((row) => moveBefore(row[this.id], row[target.id]));\r\n } else {\r\n moveLast(header);\r\n controller.forEachRow((row) => moveLast(row[this.id]));\r\n }\r\n };\r\n\r\n this.columnFromPoint = function(x, y) {\r\n if (insidePoint(header, x, y)) {\r\n return this;\r\n }\r\n let result = null;\r\n controller.forEachRow((row) =>\r\n result = insidePoint(row[this.id], x, y) ? this : result\r\n );\r\n return result;\r\n };\r\n\r\n this.applyCss = function(target) {\r\n applyCss(target, this.css);\r\n };\r\n\r\n // function definitions\r\n\r\n function insidePoint(element, x, y) {\r\n let offset = element.offset();\r\n if (x < offset.left || offset.left + element.outerWidth(true) < x)\r\n return false;\r\n if (y < offset.top || offset.top + element.outerHeight(true) < y)\r\n return false;\r\n return true;\r\n }\r\n\r\n function moveBefore(element, target) {\r\n element.detach();\r\n target.before(element);\r\n }\r\n\r\n function moveLast(element) {\r\n let parent = element.parent();\r\n element.detach();\r\n parent.append(element);\r\n }\r\n\r\n function applyCss(target, css) {\r\n target.removeAttr('style');\r\n for (let attr in css) {\r\n if (css.hasOwnProperty(attr)) {\r\n target.css(attr, css[attr]);\r\n }\r\n }\r\n }\r\n\r\n }\r\n\r\n function GridController(scrollViewport) {\r\n let columns = [];\r\n let rowMap = new Map();\r\n\r\n $timeout(() => {\r\n scrollViewport.adapter.publicContext.gridAdapter = new GridAdapter(this);\r\n scrollViewport.adapter.transform = (scope, item) => transform(rowMap.get(scope), item);\r\n });\r\n\r\n this.registerColumn = function(header) {\r\n columns.push(new ColumnController(this, columns, header));\r\n };\r\n\r\n this.registerCell = function(scope, cell) {\r\n let row = rowMap.get(scope);\r\n if (!row) {\r\n row = [];\r\n rowMap.set(scope, row);\r\n }\r\n if (row.length >= columns.length) {\r\n return false;\r\n }\r\n row.push(cell);\r\n return true;\r\n };\r\n\r\n this.unregisterCell = function(scope, cell) {\r\n let row = rowMap.get(scope);\r\n let i = row.indexOf(cell);\r\n row.splice(i, 1);\r\n if (!row.length) {\r\n rowMap.delete(scope);\r\n }\r\n };\r\n\r\n this.forEachRow = function(callback) {\r\n rowMap.forEach(callback);\r\n };\r\n\r\n this.getColumns = function() {\r\n let result = [];\r\n columns.slice()\r\n .sort((a, b) => a.mapTo - b.mapTo)\r\n .forEach((column) => result.push(new ColumnAdapter(this, column)));\r\n return result;\r\n };\r\n\r\n this.getLayout = function() {\r\n let result = [];\r\n columns.forEach((column, index) => result.push({\r\n index: index,\r\n css: angular.extend({}, column.css),\r\n mapTo: column.mapTo\r\n }));\r\n return result;\r\n };\r\n\r\n this.applyLayout = function(layouts) {\r\n if (!layouts || layouts.length != columns.length) {\r\n throw new Error('Failed to apply layout - number of layouts should match number of columns');\r\n }\r\n layouts.forEach((layout, index) => columns[index].applyLayout(layout));\r\n transform(columns.map((column) => column.header));\r\n rowMap.forEach((row) => transform(row));\r\n };\r\n\r\n this.moveBefore = function(selected, target) {\r\n let index = target;\r\n\r\n if (target % 1 !== 0) {\r\n index = target ? columns[target.columnId].mapTo : columns.length;\r\n }\r\n if (index < 0 || index > columns.length) {\r\n return; // throw an error?\r\n }\r\n\r\n let mapTo = selected.mapTo,\r\n next = null;\r\n index -= mapTo < index ? 1 : 0;\r\n\r\n columns.forEach(c => {\r\n c.mapTo -= c.mapTo > mapTo ? 1 : 0;\r\n c.mapTo += c.mapTo >= index ? 1 : 0;\r\n next = c.mapTo === index + 1 ? c : next;\r\n });\r\n\r\n selected.mapTo = index;\r\n selected.moveBefore(next);\r\n };\r\n\r\n this.exchangeWith = function(selected, index) {\r\n if (index < 0 || index >= columns.length) {\r\n return;\r\n }\r\n columns.find(c => c.mapTo === index).mapTo = selected.mapTo;\r\n selected.mapTo = index;\r\n };\r\n\r\n this.columnFromPoint = function(x, y) {\r\n let column = columns.find(col => col.columnFromPoint(x, y));\r\n return column ? new ColumnAdapter(this, column) : undefined;\r\n };\r\n\r\n // function definitions\r\n\r\n function transform(row) {\r\n let parent = row[0].parent();\r\n let visible = [];\r\n\r\n row.forEach((cell, index) => {\r\n columns[index].applyCss(cell);\r\n visible[columns[index].mapTo] = row[index];\r\n row[index].detach();\r\n });\r\n\r\n visible.forEach(cell => parent.append(cell));\r\n }\r\n\r\n }\r\n\r\n return {\r\n require: ['^^uiScrollViewport'],\r\n restrict: 'A',\r\n link: ($scope, element, $attr, controllers) => {\r\n controllers[0].gridController = controllers[0].gridController || new GridController(controllers[0]);\r\n controllers[0].gridController.registerColumn(element);\r\n }\r\n };\r\n }])\r\n\r\n.directive('uiScrollTd', function() {\r\n return {\r\n require: ['?^^uiScrollViewport'],\r\n restrict: 'A',\r\n link: ($scope, element, $attr, controllers) => {\r\n if (!controllers[0]) {\r\n return;\r\n }\r\n let scope = $scope;\r\n let tdInitializer = $scope.uiScrollTdInitializer;\r\n if (!tdInitializer) {\r\n tdInitializer = $scope.uiScrollTdInitializer = {\r\n linking: true\r\n };\r\n }\r\n if (!tdInitializer.linking) {\r\n scope = tdInitializer.scope;\r\n }\r\n let gridController = controllers[0].gridController;\r\n if (gridController.registerCell(scope, element)) {\r\n $scope.$on('$destroy', () => gridController.unregisterCell(scope, element));\r\n }\r\n if (!tdInitializer.linking) {\r\n tdInitializer.onLink();\r\n }\r\n }\r\n };\r\n});\r\n"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"ui-scroll-grid.js","mappings":"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","sources":["webpack://angular-ui-scroll/./src/ui-scroll-grid.js"],"sourcesContent":["angular.module('ui.scroll.grid', [])\r\n .directive('uiScrollTh', ['$log', '$timeout', function(console, $timeout) {\r\n\r\n function GridAdapter(controller) {\r\n\r\n this.getLayout = () => controller.getLayout();\r\n\r\n this.applyLayout = (layout) => controller.applyLayout(layout);\r\n\r\n this.columnFromPoint = (x, y) => controller.columnFromPoint(x, y);\r\n\r\n Object.defineProperty(this, 'columns', { get: () => controller.getColumns() });\r\n }\r\n\r\n function ColumnAdapter(controller, column) {\r\n\r\n this.css = function( /* attr, value */ ) {\r\n var attr = arguments[0];\r\n var value = arguments[1];\r\n if (arguments.length == 1) {\r\n return column.header.css(attr);\r\n }\r\n if (arguments.length == 2) {\r\n column.header.css(attr, value);\r\n controller.forEachRow((row) => row[column.id].css(attr, value));\r\n column.css[attr] = value;\r\n }\r\n };\r\n\r\n this.moveBefore = (index) => controller.moveBefore(column, index);\r\n\r\n this.exchangeWith = (index) => controller.exchangeWith(column, index);\r\n\r\n Object.defineProperty(this, 'columnId', { get: () => column.id });\r\n }\r\n\r\n function ColumnController(controller, columns, header) {\r\n\r\n this.header = header;\r\n this.css = {};\r\n this.mapTo = columns.length;\r\n this.id = columns.length;\r\n\r\n // controller api methods\r\n\r\n this.applyLayout = function(layout) {\r\n this.css = angular.extend({}, layout.css);\r\n this.mapTo = layout.mapTo;\r\n applyCss(this.header, this.css);\r\n };\r\n\r\n this.moveBefore = function(target) {\r\n if (target) {\r\n moveBefore(header, target.header);\r\n controller.forEachRow((row) => moveBefore(row[this.id], row[target.id]));\r\n } else {\r\n moveLast(header);\r\n controller.forEachRow((row) => moveLast(row[this.id]));\r\n }\r\n };\r\n\r\n this.columnFromPoint = function(x, y) {\r\n if (insidePoint(header, x, y)) {\r\n return this;\r\n }\r\n let result = null;\r\n controller.forEachRow((row) =>\r\n result = insidePoint(row[this.id], x, y) ? this : result\r\n );\r\n return result;\r\n };\r\n\r\n this.applyCss = function(target) {\r\n applyCss(target, this.css);\r\n };\r\n\r\n // function definitions\r\n\r\n function insidePoint(element, x, y) {\r\n let offset = element.offset();\r\n if (x < offset.left || offset.left + element.outerWidth(true) < x)\r\n return false;\r\n if (y < offset.top || offset.top + element.outerHeight(true) < y)\r\n return false;\r\n return true;\r\n }\r\n\r\n function moveBefore(element, target) {\r\n element.detach();\r\n target.before(element);\r\n }\r\n\r\n function moveLast(element) {\r\n let parent = element.parent();\r\n element.detach();\r\n parent.append(element);\r\n }\r\n\r\n function applyCss(target, css) {\r\n target.removeAttr('style');\r\n for (let attr in css) {\r\n if (css.hasOwnProperty(attr)) {\r\n target.css(attr, css[attr]);\r\n }\r\n }\r\n }\r\n\r\n }\r\n\r\n function GridController(scrollViewport) {\r\n let columns = [];\r\n let rowMap = new Map();\r\n\r\n $timeout(() => {\r\n scrollViewport.adapter.publicContext.gridAdapter = new GridAdapter(this);\r\n scrollViewport.adapter.transform = (scope, item) => transform(rowMap.get(scope), item);\r\n });\r\n\r\n this.registerColumn = function(header) {\r\n columns.push(new ColumnController(this, columns, header));\r\n };\r\n\r\n this.registerCell = function(scope, cell) {\r\n let row = rowMap.get(scope);\r\n if (!row) {\r\n row = [];\r\n rowMap.set(scope, row);\r\n }\r\n if (row.length >= columns.length) {\r\n return false;\r\n }\r\n row.push(cell);\r\n return true;\r\n };\r\n\r\n this.unregisterCell = function(scope, cell) {\r\n let row = rowMap.get(scope);\r\n let i = row.indexOf(cell);\r\n row.splice(i, 1);\r\n if (!row.length) {\r\n rowMap.delete(scope);\r\n }\r\n };\r\n\r\n this.forEachRow = function(callback) {\r\n rowMap.forEach(callback);\r\n };\r\n\r\n this.getColumns = function() {\r\n let result = [];\r\n columns.slice()\r\n .sort((a, b) => a.mapTo - b.mapTo)\r\n .forEach((column) => result.push(new ColumnAdapter(this, column)));\r\n return result;\r\n };\r\n\r\n this.getLayout = function() {\r\n let result = [];\r\n columns.forEach((column, index) => result.push({\r\n index: index,\r\n css: angular.extend({}, column.css),\r\n mapTo: column.mapTo\r\n }));\r\n return result;\r\n };\r\n\r\n this.applyLayout = function(layouts) {\r\n if (!layouts || layouts.length != columns.length) {\r\n throw new Error('Failed to apply layout - number of layouts should match number of columns');\r\n }\r\n layouts.forEach((layout, index) => columns[index].applyLayout(layout));\r\n transform(columns.map((column) => column.header));\r\n rowMap.forEach((row) => transform(row));\r\n };\r\n\r\n this.moveBefore = function(selected, target) {\r\n let index = target;\r\n\r\n if (target % 1 !== 0) {\r\n index = target ? columns[target.columnId].mapTo : columns.length;\r\n }\r\n if (index < 0 || index > columns.length) {\r\n return; // throw an error?\r\n }\r\n\r\n let mapTo = selected.mapTo,\r\n next = null;\r\n index -= mapTo < index ? 1 : 0;\r\n\r\n columns.forEach(c => {\r\n c.mapTo -= c.mapTo > mapTo ? 1 : 0;\r\n c.mapTo += c.mapTo >= index ? 1 : 0;\r\n next = c.mapTo === index + 1 ? c : next;\r\n });\r\n\r\n selected.mapTo = index;\r\n selected.moveBefore(next);\r\n };\r\n\r\n this.exchangeWith = function(selected, index) {\r\n if (index < 0 || index >= columns.length) {\r\n return;\r\n }\r\n columns.find(c => c.mapTo === index).mapTo = selected.mapTo;\r\n selected.mapTo = index;\r\n };\r\n\r\n this.columnFromPoint = function(x, y) {\r\n let column = columns.find(col => col.columnFromPoint(x, y));\r\n return column ? new ColumnAdapter(this, column) : undefined;\r\n };\r\n\r\n // function definitions\r\n\r\n function transform(row) {\r\n let parent = row[0].parent();\r\n let visible = [];\r\n\r\n row.forEach((cell, index) => {\r\n columns[index].applyCss(cell);\r\n visible[columns[index].mapTo] = row[index];\r\n row[index].detach();\r\n });\r\n\r\n visible.forEach(cell => parent.append(cell));\r\n }\r\n\r\n }\r\n\r\n return {\r\n require: ['^^uiScrollViewport'],\r\n restrict: 'A',\r\n link: ($scope, element, $attr, controllers) => {\r\n controllers[0].gridController = controllers[0].gridController || new GridController(controllers[0]);\r\n controllers[0].gridController.registerColumn(element);\r\n }\r\n };\r\n }])\r\n\r\n.directive('uiScrollTd', function() {\r\n return {\r\n require: ['?^^uiScrollViewport'],\r\n restrict: 'A',\r\n link: ($scope, element, $attr, controllers) => {\r\n if (!controllers[0]) {\r\n return;\r\n }\r\n let scope = $scope;\r\n let tdInitializer = $scope.uiScrollTdInitializer;\r\n if (!tdInitializer) {\r\n tdInitializer = $scope.uiScrollTdInitializer = {\r\n linking: true\r\n };\r\n }\r\n if (!tdInitializer.linking) {\r\n scope = tdInitializer.scope;\r\n }\r\n let gridController = controllers[0].gridController;\r\n if (gridController.registerCell(scope, element)) {\r\n $scope.$on('$destroy', () => gridController.unregisterCell(scope, element));\r\n }\r\n if (!tdInitializer.linking) {\r\n tdInitializer.onLink();\r\n }\r\n }\r\n };\r\n});\r\n"],"names":["angular","module","directive","console","$timeout","GridAdapter","controller","getLayout","applyLayout","layout","columnFromPoint","x","y","Object","defineProperty","get","getColumns","ColumnAdapter","column","css","attr","arguments","value","length","header","forEachRow","row","id","moveBefore","index","exchangeWith","ColumnController","columns","mapTo","extend","applyCss","target","_this","moveLast","_this2","insidePoint","result","element","offset","left","outerWidth","top","outerHeight","detach","before","parent","append","removeAttr","hasOwnProperty","GridController","scrollViewport","_this3","rowMap","Map","adapter","publicContext","gridAdapter","transform","scope","item","registerColumn","push","registerCell","cell","set","unregisterCell","i","indexOf","splice","delete","callback","forEach","_this4","slice","sort","a","b","layouts","Error","map","selected","columnId","next","c","find","col","undefined","visible","require","restrict","link","$scope","$attr","controllers","gridController","tdInitializer","uiScrollTdInitializer","linking","$on","onLink"],"sourceRoot":""}
\ No newline at end of file
diff --git a/dist/ui-scroll-grid.min.js b/dist/ui-scroll-grid.min.js
index da7b9e35..32e4bf11 100644
--- a/dist/ui-scroll-grid.min.js
+++ b/dist/ui-scroll-grid.min.js
@@ -1,2 +1,2 @@
-!function(t){var n={};function e(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,e),o.l=!0,o.exports}e.m=t,e.c=n,e.d=function(t,n,r){e.o(t,n)||Object.defineProperty(t,n,{enumerable:!0,get:r})},e.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},e.t=function(t,n){if(1&n&&(t=e(t)),8&n)return t;if(4&n&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(e.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&n&&"string"!=typeof t)for(var o in t)e.d(r,o,function(n){return t[n]}.bind(null,o));return r},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},e.p="",e(e.s=0)}([function(t,n){angular.module("ui.scroll.grid",[]).directive("uiScrollTh",["$log","$timeout",function(t,n){function e(t){this.getLayout=function(){return t.getLayout()},this.applyLayout=function(n){return t.applyLayout(n)},this.columnFromPoint=function(n,e){return t.columnFromPoint(n,e)},Object.defineProperty(this,"columns",{get:function(){return t.getColumns()}})}function r(t,n){this.css=function(){var e=arguments[0],r=arguments[1];if(1==arguments.length)return n.header.css(e);2==arguments.length&&(n.header.css(e,r),t.forEachRow((function(t){return t[n.id].css(e,r)})),n.css[e]=r)},this.moveBefore=function(e){return t.moveBefore(n,e)},this.exchangeWith=function(e){return t.exchangeWith(n,e)},Object.defineProperty(this,"columnId",{get:function(){return n.id}})}function o(t,n,e){function r(t,n,e){var r=t.offset();return!(n=u.length)&&(e.push(n),!0)},this.unregisterCell=function(t,n){var e=c.get(t),r=e.indexOf(n);e.splice(r,1),e.length||c.delete(t)},this.forEachRow=function(t){c.forEach(t)},this.getColumns=function(){var t=this,n=[];return u.slice().sort((function(t,n){return t.mapTo-n.mapTo})).forEach((function(e){return n.push(new r(t,e))})),n},this.getLayout=function(){var t=[];return u.forEach((function(n,e){return t.push({index:e,css:angular.extend({},n.css),mapTo:n.mapTo})})),t},this.applyLayout=function(t){if(!t||t.length!=u.length)throw new Error("Failed to apply layout - number of layouts should match number of columns");t.forEach((function(t,n){return u[n].applyLayout(t)})),a(u.map((function(t){return t.header}))),c.forEach((function(t){return a(t)}))},this.moveBefore=function(t,n){var e=n;if(n%1!=0&&(e=n?u[n.columnId].mapTo:u.length),!(e<0||e>u.length)){var r=t.mapTo,o=null;e-=rr?1:0,t.mapTo+=t.mapTo>=e?1:0,o=t.mapTo===e+1?t:o})),t.mapTo=e,t.moveBefore(o)}},this.exchangeWith=function(t,n){n<0||n>=u.length||(u.find((function(t){return t.mapTo===n})).mapTo=t.mapTo,t.mapTo=n)},this.columnFromPoint=function(t,n){var e=u.find((function(e){return e.columnFromPoint(t,n)}));return e?new r(this,e):void 0}}return{require:["^^uiScrollViewport"],restrict:"A",link:function(t,n,e,r){r[0].gridController=r[0].gridController||new i(r[0]),r[0].gridController.registerColumn(n)}}}]).directive("uiScrollTd",(function(){return{require:["?^^uiScrollViewport"],restrict:"A",link:function(t,n,e,r){if(r[0]){var o=t,i=t.uiScrollTdInitializer;i||(i=t.uiScrollTdInitializer={linking:!0}),i.linking||(o=i.scope);var u=r[0].gridController;u.registerCell(o,n)&&t.$on("$destroy",(function(){return u.unregisterCell(o,n)})),i.linking||i.onLink()}}}}))}]);
+angular.module("ui.scroll.grid",[]).directive("uiScrollTh",["$log","$timeout",function(t,n){function r(t){this.getLayout=function(){return t.getLayout()},this.applyLayout=function(n){return t.applyLayout(n)},this.columnFromPoint=function(n,r){return t.columnFromPoint(n,r)},Object.defineProperty(this,"columns",{get:function(){return t.getColumns()}})}function o(t,n){this.css=function(){var r=arguments[0],o=arguments[1];if(1==arguments.length)return n.header.css(r);2==arguments.length&&(n.header.css(r,o),t.forEachRow((function(t){return t[n.id].css(r,o)})),n.css[r]=o)},this.moveBefore=function(r){return t.moveBefore(n,r)},this.exchangeWith=function(r){return t.exchangeWith(n,r)},Object.defineProperty(this,"columnId",{get:function(){return n.id}})}function e(t,n,r){function o(t,n,r){var o=t.offset();return!(n=u.length||(r.push(n),0))},this.unregisterCell=function(t,n){var r=c.get(t),o=r.indexOf(n);r.splice(o,1),r.length||c.delete(t)},this.forEachRow=function(t){c.forEach(t)},this.getColumns=function(){var t=this,n=[];return u.slice().sort((function(t,n){return t.mapTo-n.mapTo})).forEach((function(r){return n.push(new o(t,r))})),n},this.getLayout=function(){var t=[];return u.forEach((function(n,r){return t.push({index:r,css:angular.extend({},n.css),mapTo:n.mapTo})})),t},this.applyLayout=function(t){if(!t||t.length!=u.length)throw new Error("Failed to apply layout - number of layouts should match number of columns");t.forEach((function(t,n){return u[n].applyLayout(t)})),a(u.map((function(t){return t.header}))),c.forEach((function(t){return a(t)}))},this.moveBefore=function(t,n){var r=n;if(n%1!=0&&(r=n?u[n.columnId].mapTo:u.length),!(r<0||r>u.length)){var o=t.mapTo,e=null;r-=oo?1:0,t.mapTo+=t.mapTo>=r?1:0,e=t.mapTo===r+1?t:e})),t.mapTo=r,t.moveBefore(e)}},this.exchangeWith=function(t,n){n<0||n>=u.length||(u.find((function(t){return t.mapTo===n})).mapTo=t.mapTo,t.mapTo=n)},this.columnFromPoint=function(t,n){var r=u.find((function(r){return r.columnFromPoint(t,n)}));return r?new o(this,r):void 0}}return{require:["^^uiScrollViewport"],restrict:"A",link:function(t,n,r,o){o[0].gridController=o[0].gridController||new i(o[0]),o[0].gridController.registerColumn(n)}}}]).directive("uiScrollTd",(function(){return{require:["?^^uiScrollViewport"],restrict:"A",link:function(t,n,r,o){if(o[0]){var e=t,i=t.uiScrollTdInitializer;i||(i=t.uiScrollTdInitializer={linking:!0}),i.linking||(e=i.scope);var u=o[0].gridController;u.registerCell(e,n)&&t.$on("$destroy",(function(){return u.unregisterCell(e,n)})),i.linking||i.onLink()}}}}));
//# sourceMappingURL=ui-scroll-grid.min.js.map
\ No newline at end of file
diff --git a/dist/ui-scroll-grid.min.js.map b/dist/ui-scroll-grid.min.js.map
index 41507d4d..162ccd72 100644
--- a/dist/ui-scroll-grid.min.js.map
+++ b/dist/ui-scroll-grid.min.js.map
@@ -1 +1 @@
-{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/ui-scroll-grid.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","angular","directive","console","$timeout","GridAdapter","controller","this","getLayout","applyLayout","layout","columnFromPoint","x","y","getColumns","ColumnAdapter","column","css","attr","arguments","length","header","forEachRow","row","id","moveBefore","index","exchangeWith","ColumnController","columns","insidePoint","element","offset","left","outerWidth","top","outerHeight","target","detach","before","moveLast","parent","append","applyCss","removeAttr","mapTo","extend","result","GridController","scrollViewport","rowMap","Map","transform","visible","forEach","cell","adapter","publicContext","gridAdapter","scope","item","registerColumn","push","registerCell","set","unregisterCell","indexOf","splice","delete","callback","slice","sort","a","b","layouts","Error","map","selected","columnId","next","find","col","undefined","require","restrict","link","$scope","$attr","controllers","gridController","tdInitializer","uiScrollTdInitializer","linking","$on","onLink"],"mappings":"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","file":"ui-scroll-grid.min.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n","angular.module('ui.scroll.grid', [])\r\n .directive('uiScrollTh', ['$log', '$timeout', function(console, $timeout) {\r\n\r\n function GridAdapter(controller) {\r\n\r\n this.getLayout = () => controller.getLayout();\r\n\r\n this.applyLayout = (layout) => controller.applyLayout(layout);\r\n\r\n this.columnFromPoint = (x, y) => controller.columnFromPoint(x, y);\r\n\r\n Object.defineProperty(this, 'columns', { get: () => controller.getColumns() });\r\n }\r\n\r\n function ColumnAdapter(controller, column) {\r\n\r\n this.css = function( /* attr, value */ ) {\r\n var attr = arguments[0];\r\n var value = arguments[1];\r\n if (arguments.length == 1) {\r\n return column.header.css(attr);\r\n }\r\n if (arguments.length == 2) {\r\n column.header.css(attr, value);\r\n controller.forEachRow((row) => row[column.id].css(attr, value));\r\n column.css[attr] = value;\r\n }\r\n };\r\n\r\n this.moveBefore = (index) => controller.moveBefore(column, index);\r\n\r\n this.exchangeWith = (index) => controller.exchangeWith(column, index);\r\n\r\n Object.defineProperty(this, 'columnId', { get: () => column.id });\r\n }\r\n\r\n function ColumnController(controller, columns, header) {\r\n\r\n this.header = header;\r\n this.css = {};\r\n this.mapTo = columns.length;\r\n this.id = columns.length;\r\n\r\n // controller api methods\r\n\r\n this.applyLayout = function(layout) {\r\n this.css = angular.extend({}, layout.css);\r\n this.mapTo = layout.mapTo;\r\n applyCss(this.header, this.css);\r\n };\r\n\r\n this.moveBefore = function(target) {\r\n if (target) {\r\n moveBefore(header, target.header);\r\n controller.forEachRow((row) => moveBefore(row[this.id], row[target.id]));\r\n } else {\r\n moveLast(header);\r\n controller.forEachRow((row) => moveLast(row[this.id]));\r\n }\r\n };\r\n\r\n this.columnFromPoint = function(x, y) {\r\n if (insidePoint(header, x, y)) {\r\n return this;\r\n }\r\n let result = null;\r\n controller.forEachRow((row) =>\r\n result = insidePoint(row[this.id], x, y) ? this : result\r\n );\r\n return result;\r\n };\r\n\r\n this.applyCss = function(target) {\r\n applyCss(target, this.css);\r\n };\r\n\r\n // function definitions\r\n\r\n function insidePoint(element, x, y) {\r\n let offset = element.offset();\r\n if (x < offset.left || offset.left + element.outerWidth(true) < x)\r\n return false;\r\n if (y < offset.top || offset.top + element.outerHeight(true) < y)\r\n return false;\r\n return true;\r\n }\r\n\r\n function moveBefore(element, target) {\r\n element.detach();\r\n target.before(element);\r\n }\r\n\r\n function moveLast(element) {\r\n let parent = element.parent();\r\n element.detach();\r\n parent.append(element);\r\n }\r\n\r\n function applyCss(target, css) {\r\n target.removeAttr('style');\r\n for (let attr in css) {\r\n if (css.hasOwnProperty(attr)) {\r\n target.css(attr, css[attr]);\r\n }\r\n }\r\n }\r\n\r\n }\r\n\r\n function GridController(scrollViewport) {\r\n let columns = [];\r\n let rowMap = new Map();\r\n\r\n $timeout(() => {\r\n scrollViewport.adapter.publicContext.gridAdapter = new GridAdapter(this);\r\n scrollViewport.adapter.transform = (scope, item) => transform(rowMap.get(scope), item);\r\n });\r\n\r\n this.registerColumn = function(header) {\r\n columns.push(new ColumnController(this, columns, header));\r\n };\r\n\r\n this.registerCell = function(scope, cell) {\r\n let row = rowMap.get(scope);\r\n if (!row) {\r\n row = [];\r\n rowMap.set(scope, row);\r\n }\r\n if (row.length >= columns.length) {\r\n return false;\r\n }\r\n row.push(cell);\r\n return true;\r\n };\r\n\r\n this.unregisterCell = function(scope, cell) {\r\n let row = rowMap.get(scope);\r\n let i = row.indexOf(cell);\r\n row.splice(i, 1);\r\n if (!row.length) {\r\n rowMap.delete(scope);\r\n }\r\n };\r\n\r\n this.forEachRow = function(callback) {\r\n rowMap.forEach(callback);\r\n };\r\n\r\n this.getColumns = function() {\r\n let result = [];\r\n columns.slice()\r\n .sort((a, b) => a.mapTo - b.mapTo)\r\n .forEach((column) => result.push(new ColumnAdapter(this, column)));\r\n return result;\r\n };\r\n\r\n this.getLayout = function() {\r\n let result = [];\r\n columns.forEach((column, index) => result.push({\r\n index: index,\r\n css: angular.extend({}, column.css),\r\n mapTo: column.mapTo\r\n }));\r\n return result;\r\n };\r\n\r\n this.applyLayout = function(layouts) {\r\n if (!layouts || layouts.length != columns.length) {\r\n throw new Error('Failed to apply layout - number of layouts should match number of columns');\r\n }\r\n layouts.forEach((layout, index) => columns[index].applyLayout(layout));\r\n transform(columns.map((column) => column.header));\r\n rowMap.forEach((row) => transform(row));\r\n };\r\n\r\n this.moveBefore = function(selected, target) {\r\n let index = target;\r\n\r\n if (target % 1 !== 0) {\r\n index = target ? columns[target.columnId].mapTo : columns.length;\r\n }\r\n if (index < 0 || index > columns.length) {\r\n return; // throw an error?\r\n }\r\n\r\n let mapTo = selected.mapTo,\r\n next = null;\r\n index -= mapTo < index ? 1 : 0;\r\n\r\n columns.forEach(c => {\r\n c.mapTo -= c.mapTo > mapTo ? 1 : 0;\r\n c.mapTo += c.mapTo >= index ? 1 : 0;\r\n next = c.mapTo === index + 1 ? c : next;\r\n });\r\n\r\n selected.mapTo = index;\r\n selected.moveBefore(next);\r\n };\r\n\r\n this.exchangeWith = function(selected, index) {\r\n if (index < 0 || index >= columns.length) {\r\n return;\r\n }\r\n columns.find(c => c.mapTo === index).mapTo = selected.mapTo;\r\n selected.mapTo = index;\r\n };\r\n\r\n this.columnFromPoint = function(x, y) {\r\n let column = columns.find(col => col.columnFromPoint(x, y));\r\n return column ? new ColumnAdapter(this, column) : undefined;\r\n };\r\n\r\n // function definitions\r\n\r\n function transform(row) {\r\n let parent = row[0].parent();\r\n let visible = [];\r\n\r\n row.forEach((cell, index) => {\r\n columns[index].applyCss(cell);\r\n visible[columns[index].mapTo] = row[index];\r\n row[index].detach();\r\n });\r\n\r\n visible.forEach(cell => parent.append(cell));\r\n }\r\n\r\n }\r\n\r\n return {\r\n require: ['^^uiScrollViewport'],\r\n restrict: 'A',\r\n link: ($scope, element, $attr, controllers) => {\r\n controllers[0].gridController = controllers[0].gridController || new GridController(controllers[0]);\r\n controllers[0].gridController.registerColumn(element);\r\n }\r\n };\r\n }])\r\n\r\n.directive('uiScrollTd', function() {\r\n return {\r\n require: ['?^^uiScrollViewport'],\r\n restrict: 'A',\r\n link: ($scope, element, $attr, controllers) => {\r\n if (!controllers[0]) {\r\n return;\r\n }\r\n let scope = $scope;\r\n let tdInitializer = $scope.uiScrollTdInitializer;\r\n if (!tdInitializer) {\r\n tdInitializer = $scope.uiScrollTdInitializer = {\r\n linking: true\r\n };\r\n }\r\n if (!tdInitializer.linking) {\r\n scope = tdInitializer.scope;\r\n }\r\n let gridController = controllers[0].gridController;\r\n if (gridController.registerCell(scope, element)) {\r\n $scope.$on('$destroy', () => gridController.unregisterCell(scope, element));\r\n }\r\n if (!tdInitializer.linking) {\r\n tdInitializer.onLink();\r\n }\r\n }\r\n };\r\n});\r\n"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"ui-scroll-grid.min.js","mappings":"AAAAA,QAAQC,OAAO,iBAAkB,IAC9BC,UAAU,aAAc,CAAC,OAAQ,WAAY,SAASC,EAASC,GAE9D,SAASC,EAAYC,GAEnBC,KAAKC,UAAY,kBAAMF,EAAWE,WAAW,EAE7CD,KAAKE,YAAc,SAACC,GAAM,OAAKJ,EAAWG,YAAYC,EAAO,EAE7DH,KAAKI,gBAAkB,SAACC,EAAGC,GAAC,OAAKP,EAAWK,gBAAgBC,EAAGC,EAAE,EAEjEC,OAAOC,eAAeR,KAAM,UAAW,CAAES,IAAK,kBAAMV,EAAWW,YAAY,GAC7E,CAEA,SAASC,EAAcZ,EAAYa,GAEjCZ,KAAKa,IAAM,WACT,IAAIC,EAAOC,UAAU,GACjBC,EAAQD,UAAU,GACtB,GAAwB,GAApBA,UAAUE,OACZ,OAAOL,EAAOM,OAAOL,IAAIC,GAEH,GAApBC,UAAUE,SACZL,EAAOM,OAAOL,IAAIC,EAAME,GACxBjB,EAAWoB,YAAW,SAACC,GAAG,OAAKA,EAAIR,EAAOS,IAAIR,IAAIC,EAAME,EAAM,IAC9DJ,EAAOC,IAAIC,GAAQE,EAEvB,EAEAhB,KAAKsB,WAAa,SAACC,GAAK,OAAKxB,EAAWuB,WAAWV,EAAQW,EAAM,EAEjEvB,KAAKwB,aAAe,SAACD,GAAK,OAAKxB,EAAWyB,aAAaZ,EAAQW,EAAM,EAErEhB,OAAOC,eAAeR,KAAM,WAAY,CAAES,IAAK,kBAAMG,EAAOS,EAAE,GAChE,CAEA,SAASI,EAAiB1B,EAAY2B,EAASR,GA0C7C,SAASS,EAAYC,EAASvB,EAAGC,GAC/B,IAAIuB,EAASD,EAAQC,SACrB,QAAIxB,EAAIwB,EAAOC,MAAQD,EAAOC,KAAOF,EAAQG,YAAW,GAAQ1B,GAE5DC,EAAIuB,EAAOG,KAAOH,EAAOG,IAAMJ,EAAQK,aAAY,GAAQ3B,EAGjE,CAEA,SAASgB,EAAWM,EAASM,GAC3BN,EAAQO,SACRD,EAAOE,OAAOR,EAChB,CAEA,SAASS,EAAST,GAChB,IAAIU,EAASV,EAAQU,SACrBV,EAAQO,SACRG,EAAOC,OAAOX,EAChB,CAEA,SAASY,EAASN,EAAQrB,GAExB,IAAK,IAAIC,KADToB,EAAOO,WAAW,SACD5B,EACXA,EAAI6B,eAAe5B,IACrBoB,EAAOrB,IAAIC,EAAMD,EAAIC,GAG3B,CAnEAd,KAAKkB,OAASA,EACdlB,KAAKa,IAAM,CAAC,EACZb,KAAK2C,MAAQjB,EAAQT,OACrBjB,KAAKqB,GAAKK,EAAQT,OAIlBjB,KAAKE,YAAc,SAASC,GAC1BH,KAAKa,IAAMpB,QAAQmD,OAAO,CAAC,EAAGzC,EAAOU,KACrCb,KAAK2C,MAAQxC,EAAOwC,MACpBH,EAASxC,KAAKkB,OAAQlB,KAAKa,IAC7B,EAEAb,KAAKsB,WAAa,SAASY,GAAQ,IAAAW,EAAA,KAC7BX,GACFZ,EAAWJ,EAAQgB,EAAOhB,QAC1BnB,EAAWoB,YAAW,SAACC,GAAG,OAAKE,EAAWF,EAAIyB,EAAKxB,IAAKD,EAAIc,EAAOb,IAAI,MAEvEgB,EAASnB,GACTnB,EAAWoB,YAAW,SAACC,GAAG,OAAKiB,EAASjB,EAAIyB,EAAKxB,IAAI,IAEzD,EAEArB,KAAKI,gBAAkB,SAASC,EAAGC,GAAG,IAAAwC,EAAA,KACpC,GAAInB,EAAYT,EAAQb,EAAGC,GACzB,OAAON,KAET,IAAI+C,EAAS,KAIb,OAHAhD,EAAWoB,YAAW,SAACC,GAAG,OACxB2B,EAASpB,EAAYP,EAAI0B,EAAKzB,IAAKhB,EAAGC,GAAKwC,EAAOC,CAAM,IAEnDA,CACT,EAEA/C,KAAKwC,SAAW,SAASN,GACvBM,EAASN,EAAQlC,KAAKa,IACxB,CAiCF,CAEA,SAASmC,EAAeC,GAAgB,IAAAC,EAAA,KAClCxB,EAAU,GACVyB,EAAS,IAAIC,IAuGjB,SAASC,EAAUjC,GACjB,IAAIkB,EAASlB,EAAI,GAAGkB,SAChBgB,EAAU,GAEdlC,EAAImC,SAAQ,SAACC,EAAMjC,GACjBG,EAAQH,GAAOiB,SAASgB,GACxBF,EAAQ5B,EAAQH,GAAOoB,OAASvB,EAAIG,GACpCH,EAAIG,GAAOY,QACb,IAEAmB,EAAQC,SAAQ,SAAAC,GAAI,OAAIlB,EAAOC,OAAOiB,EAAK,GAC7C,CAhHA3D,GAAS,WACPoD,EAAeQ,QAAQC,cAAcC,YAAc,IAAI7D,EAAYoD,GACnED,EAAeQ,QAAQJ,UAAY,SAACO,EAAOC,GAAI,OAAKR,EAAUF,EAAO1C,IAAImD,GAAa,CACxF,IAEA5D,KAAK8D,eAAiB,SAAS5C,GAC7BQ,EAAQqC,KAAK,IAAItC,EAAiBzB,KAAM0B,EAASR,GACnD,EAEAlB,KAAKgE,aAAe,SAASJ,EAAOJ,GAClC,IAAIpC,EAAM+B,EAAO1C,IAAImD,GAKrB,OAJKxC,IACHA,EAAM,GACN+B,EAAOc,IAAIL,EAAOxC,MAEhBA,EAAIH,QAAUS,EAAQT,SAG1BG,EAAI2C,KAAKP,GACF,GACT,EAEAxD,KAAKkE,eAAiB,SAASN,EAAOJ,GACpC,IAAIpC,EAAM+B,EAAO1C,IAAImD,GACjBO,EAAI/C,EAAIgD,QAAQZ,GACpBpC,EAAIiD,OAAOF,EAAG,GACT/C,EAAIH,QACPkC,EAAOmB,OAAOV,EAElB,EAEA5D,KAAKmB,WAAa,SAASoD,GACzBpB,EAAOI,QAAQgB,EACjB,EAEAvE,KAAKU,WAAa,WAAW,IAAA8D,EAAA,KACvBzB,EAAS,GAIb,OAHArB,EAAQ+C,QACLC,MAAK,SAACC,EAAGC,GAAC,OAAKD,EAAEhC,MAAQiC,EAAEjC,KAAK,IAChCY,SAAQ,SAAC3C,GAAM,OAAKmC,EAAOgB,KAAK,IAAIpD,EAAc6D,EAAM5D,GAAQ,IAC5DmC,CACT,EAEA/C,KAAKC,UAAY,WACf,IAAI8C,EAAS,GAMb,OALArB,EAAQ6B,SAAQ,SAAC3C,EAAQW,GAAK,OAAKwB,EAAOgB,KAAK,CAC7CxC,MAAOA,EACPV,IAAKpB,QAAQmD,OAAO,CAAC,EAAGhC,EAAOC,KAC/B8B,MAAO/B,EAAO+B,OACd,IACKI,CACT,EAEA/C,KAAKE,YAAc,SAAS2E,GAC1B,IAAKA,GAAWA,EAAQ5D,QAAUS,EAAQT,OACxC,MAAM,IAAI6D,MAAM,6EAElBD,EAAQtB,SAAQ,SAACpD,EAAQoB,GAAK,OAAKG,EAAQH,GAAOrB,YAAYC,EAAO,IACrEkD,EAAU3B,EAAQqD,KAAI,SAACnE,GAAM,OAAKA,EAAOM,MAAM,KAC/CiC,EAAOI,SAAQ,SAACnC,GAAG,OAAKiC,EAAUjC,EAAI,GACxC,EAEApB,KAAKsB,WAAa,SAAS0D,EAAU9C,GACnC,IAAIX,EAAQW,EAKZ,GAHIA,EAAS,GAAM,IACjBX,EAAQW,EAASR,EAAQQ,EAAO+C,UAAUtC,MAAQjB,EAAQT,UAExDM,EAAQ,GAAKA,EAAQG,EAAQT,QAAjC,CAIA,IAAI0B,EAAQqC,EAASrC,MACnBuC,EAAO,KACT3D,GAASoB,EAAQpB,EAAQ,EAAI,EAE7BG,EAAQ6B,SAAQ,SAAA4B,GACdA,EAAExC,OAASwC,EAAExC,MAAQA,EAAQ,EAAI,EACjCwC,EAAExC,OAASwC,EAAExC,OAASpB,EAAQ,EAAI,EAClC2D,EAAOC,EAAExC,QAAUpB,EAAQ,EAAI4D,EAAID,CACrC,IAEAF,EAASrC,MAAQpB,EACjByD,EAAS1D,WAAW4D,EAbpB,CAcF,EAEAlF,KAAKwB,aAAe,SAASwD,EAAUzD,GACjCA,EAAQ,GAAKA,GAASG,EAAQT,SAGlCS,EAAQ0D,MAAK,SAAAD,GAAC,OAAIA,EAAExC,QAAUpB,CAAK,IAAEoB,MAAQqC,EAASrC,MACtDqC,EAASrC,MAAQpB,EACnB,EAEAvB,KAAKI,gBAAkB,SAASC,EAAGC,GACjC,IAAIM,EAASc,EAAQ0D,MAAK,SAAAC,GAAG,OAAIA,EAAIjF,gBAAgBC,EAAGC,EAAE,IAC1D,OAAOM,EAAS,IAAID,EAAcX,KAAMY,QAAU0E,CACpD,CAiBF,CAEA,MAAO,CACLC,QAAS,CAAC,sBACVC,SAAU,IACVC,KAAM,SAACC,EAAQ9D,EAAS+D,EAAOC,GAC7BA,EAAY,GAAGC,eAAiBD,EAAY,GAAGC,gBAAkB,IAAI7C,EAAe4C,EAAY,IAChGA,EAAY,GAAGC,eAAe/B,eAAelC,EAC/C,EAEJ,IAEDjC,UAAU,cAAc,WACvB,MAAO,CACL4F,QAAS,CAAC,uBACVC,SAAU,IACVC,KAAM,SAACC,EAAQ9D,EAAS+D,EAAOC,GAC7B,GAAKA,EAAY,GAAjB,CAGA,IAAIhC,EAAQ8B,EACRI,EAAgBJ,EAAOK,sBACtBD,IACHA,EAAgBJ,EAAOK,sBAAwB,CAC7CC,SAAS,IAGRF,EAAcE,UACjBpC,EAAQkC,EAAclC,OAExB,IAAIiC,EAAiBD,EAAY,GAAGC,eAChCA,EAAe7B,aAAaJ,EAAOhC,IACrC8D,EAAOO,IAAI,YAAY,kBAAMJ,EAAe3B,eAAeN,EAAOhC,EAAQ,IAEvEkE,EAAcE,SACjBF,EAAcI,QAhBhB,CAkBF,EAEJ","sources":["webpack://angular-ui-scroll/./src/ui-scroll-grid.js"],"sourcesContent":["angular.module('ui.scroll.grid', [])\r\n .directive('uiScrollTh', ['$log', '$timeout', function(console, $timeout) {\r\n\r\n function GridAdapter(controller) {\r\n\r\n this.getLayout = () => controller.getLayout();\r\n\r\n this.applyLayout = (layout) => controller.applyLayout(layout);\r\n\r\n this.columnFromPoint = (x, y) => controller.columnFromPoint(x, y);\r\n\r\n Object.defineProperty(this, 'columns', { get: () => controller.getColumns() });\r\n }\r\n\r\n function ColumnAdapter(controller, column) {\r\n\r\n this.css = function( /* attr, value */ ) {\r\n var attr = arguments[0];\r\n var value = arguments[1];\r\n if (arguments.length == 1) {\r\n return column.header.css(attr);\r\n }\r\n if (arguments.length == 2) {\r\n column.header.css(attr, value);\r\n controller.forEachRow((row) => row[column.id].css(attr, value));\r\n column.css[attr] = value;\r\n }\r\n };\r\n\r\n this.moveBefore = (index) => controller.moveBefore(column, index);\r\n\r\n this.exchangeWith = (index) => controller.exchangeWith(column, index);\r\n\r\n Object.defineProperty(this, 'columnId', { get: () => column.id });\r\n }\r\n\r\n function ColumnController(controller, columns, header) {\r\n\r\n this.header = header;\r\n this.css = {};\r\n this.mapTo = columns.length;\r\n this.id = columns.length;\r\n\r\n // controller api methods\r\n\r\n this.applyLayout = function(layout) {\r\n this.css = angular.extend({}, layout.css);\r\n this.mapTo = layout.mapTo;\r\n applyCss(this.header, this.css);\r\n };\r\n\r\n this.moveBefore = function(target) {\r\n if (target) {\r\n moveBefore(header, target.header);\r\n controller.forEachRow((row) => moveBefore(row[this.id], row[target.id]));\r\n } else {\r\n moveLast(header);\r\n controller.forEachRow((row) => moveLast(row[this.id]));\r\n }\r\n };\r\n\r\n this.columnFromPoint = function(x, y) {\r\n if (insidePoint(header, x, y)) {\r\n return this;\r\n }\r\n let result = null;\r\n controller.forEachRow((row) =>\r\n result = insidePoint(row[this.id], x, y) ? this : result\r\n );\r\n return result;\r\n };\r\n\r\n this.applyCss = function(target) {\r\n applyCss(target, this.css);\r\n };\r\n\r\n // function definitions\r\n\r\n function insidePoint(element, x, y) {\r\n let offset = element.offset();\r\n if (x < offset.left || offset.left + element.outerWidth(true) < x)\r\n return false;\r\n if (y < offset.top || offset.top + element.outerHeight(true) < y)\r\n return false;\r\n return true;\r\n }\r\n\r\n function moveBefore(element, target) {\r\n element.detach();\r\n target.before(element);\r\n }\r\n\r\n function moveLast(element) {\r\n let parent = element.parent();\r\n element.detach();\r\n parent.append(element);\r\n }\r\n\r\n function applyCss(target, css) {\r\n target.removeAttr('style');\r\n for (let attr in css) {\r\n if (css.hasOwnProperty(attr)) {\r\n target.css(attr, css[attr]);\r\n }\r\n }\r\n }\r\n\r\n }\r\n\r\n function GridController(scrollViewport) {\r\n let columns = [];\r\n let rowMap = new Map();\r\n\r\n $timeout(() => {\r\n scrollViewport.adapter.publicContext.gridAdapter = new GridAdapter(this);\r\n scrollViewport.adapter.transform = (scope, item) => transform(rowMap.get(scope), item);\r\n });\r\n\r\n this.registerColumn = function(header) {\r\n columns.push(new ColumnController(this, columns, header));\r\n };\r\n\r\n this.registerCell = function(scope, cell) {\r\n let row = rowMap.get(scope);\r\n if (!row) {\r\n row = [];\r\n rowMap.set(scope, row);\r\n }\r\n if (row.length >= columns.length) {\r\n return false;\r\n }\r\n row.push(cell);\r\n return true;\r\n };\r\n\r\n this.unregisterCell = function(scope, cell) {\r\n let row = rowMap.get(scope);\r\n let i = row.indexOf(cell);\r\n row.splice(i, 1);\r\n if (!row.length) {\r\n rowMap.delete(scope);\r\n }\r\n };\r\n\r\n this.forEachRow = function(callback) {\r\n rowMap.forEach(callback);\r\n };\r\n\r\n this.getColumns = function() {\r\n let result = [];\r\n columns.slice()\r\n .sort((a, b) => a.mapTo - b.mapTo)\r\n .forEach((column) => result.push(new ColumnAdapter(this, column)));\r\n return result;\r\n };\r\n\r\n this.getLayout = function() {\r\n let result = [];\r\n columns.forEach((column, index) => result.push({\r\n index: index,\r\n css: angular.extend({}, column.css),\r\n mapTo: column.mapTo\r\n }));\r\n return result;\r\n };\r\n\r\n this.applyLayout = function(layouts) {\r\n if (!layouts || layouts.length != columns.length) {\r\n throw new Error('Failed to apply layout - number of layouts should match number of columns');\r\n }\r\n layouts.forEach((layout, index) => columns[index].applyLayout(layout));\r\n transform(columns.map((column) => column.header));\r\n rowMap.forEach((row) => transform(row));\r\n };\r\n\r\n this.moveBefore = function(selected, target) {\r\n let index = target;\r\n\r\n if (target % 1 !== 0) {\r\n index = target ? columns[target.columnId].mapTo : columns.length;\r\n }\r\n if (index < 0 || index > columns.length) {\r\n return; // throw an error?\r\n }\r\n\r\n let mapTo = selected.mapTo,\r\n next = null;\r\n index -= mapTo < index ? 1 : 0;\r\n\r\n columns.forEach(c => {\r\n c.mapTo -= c.mapTo > mapTo ? 1 : 0;\r\n c.mapTo += c.mapTo >= index ? 1 : 0;\r\n next = c.mapTo === index + 1 ? c : next;\r\n });\r\n\r\n selected.mapTo = index;\r\n selected.moveBefore(next);\r\n };\r\n\r\n this.exchangeWith = function(selected, index) {\r\n if (index < 0 || index >= columns.length) {\r\n return;\r\n }\r\n columns.find(c => c.mapTo === index).mapTo = selected.mapTo;\r\n selected.mapTo = index;\r\n };\r\n\r\n this.columnFromPoint = function(x, y) {\r\n let column = columns.find(col => col.columnFromPoint(x, y));\r\n return column ? new ColumnAdapter(this, column) : undefined;\r\n };\r\n\r\n // function definitions\r\n\r\n function transform(row) {\r\n let parent = row[0].parent();\r\n let visible = [];\r\n\r\n row.forEach((cell, index) => {\r\n columns[index].applyCss(cell);\r\n visible[columns[index].mapTo] = row[index];\r\n row[index].detach();\r\n });\r\n\r\n visible.forEach(cell => parent.append(cell));\r\n }\r\n\r\n }\r\n\r\n return {\r\n require: ['^^uiScrollViewport'],\r\n restrict: 'A',\r\n link: ($scope, element, $attr, controllers) => {\r\n controllers[0].gridController = controllers[0].gridController || new GridController(controllers[0]);\r\n controllers[0].gridController.registerColumn(element);\r\n }\r\n };\r\n }])\r\n\r\n.directive('uiScrollTd', function() {\r\n return {\r\n require: ['?^^uiScrollViewport'],\r\n restrict: 'A',\r\n link: ($scope, element, $attr, controllers) => {\r\n if (!controllers[0]) {\r\n return;\r\n }\r\n let scope = $scope;\r\n let tdInitializer = $scope.uiScrollTdInitializer;\r\n if (!tdInitializer) {\r\n tdInitializer = $scope.uiScrollTdInitializer = {\r\n linking: true\r\n };\r\n }\r\n if (!tdInitializer.linking) {\r\n scope = tdInitializer.scope;\r\n }\r\n let gridController = controllers[0].gridController;\r\n if (gridController.registerCell(scope, element)) {\r\n $scope.$on('$destroy', () => gridController.unregisterCell(scope, element));\r\n }\r\n if (!tdInitializer.linking) {\r\n tdInitializer.onLink();\r\n }\r\n }\r\n };\r\n});\r\n"],"names":["angular","module","directive","console","$timeout","GridAdapter","controller","this","getLayout","applyLayout","layout","columnFromPoint","x","y","Object","defineProperty","get","getColumns","ColumnAdapter","column","css","attr","arguments","value","length","header","forEachRow","row","id","moveBefore","index","exchangeWith","ColumnController","columns","insidePoint","element","offset","left","outerWidth","top","outerHeight","target","detach","before","moveLast","parent","append","applyCss","removeAttr","hasOwnProperty","mapTo","extend","_this","_this2","result","GridController","scrollViewport","_this3","rowMap","Map","transform","visible","forEach","cell","adapter","publicContext","gridAdapter","scope","item","registerColumn","push","registerCell","set","unregisterCell","i","indexOf","splice","delete","callback","_this4","slice","sort","a","b","layouts","Error","map","selected","columnId","next","c","find","col","undefined","require","restrict","link","$scope","$attr","controllers","gridController","tdInitializer","uiScrollTdInitializer","linking","$on","onLink"],"sourceRoot":""}
\ No newline at end of file
diff --git a/dist/ui-scroll.js b/dist/ui-scroll.js
index 385a5a5d..cd269959 100644
--- a/dist/ui-scroll.js
+++ b/dist/ui-scroll.js
@@ -1,119 +1,26 @@
/*!
* angular-ui-scroll
* https://github.com/angular-ui/ui-scroll
- * Version: 1.8.2 -- 2020-10-02T15:06:03.904Z
+ * Version: 1.9.0 -- 2023-04-19T12:05:19.939Z
* License: MIT
*/
-/******/ (function(modules) { // webpackBootstrap
-/******/ // The module cache
-/******/ var installedModules = {};
-/******/
-/******/ // The require function
-/******/ function __webpack_require__(moduleId) {
-/******/
-/******/ // Check if module is in cache
-/******/ if(installedModules[moduleId]) {
-/******/ return installedModules[moduleId].exports;
-/******/ }
-/******/ // Create a new module (and put it into the cache)
-/******/ var module = installedModules[moduleId] = {
-/******/ i: moduleId,
-/******/ l: false,
-/******/ exports: {}
-/******/ };
-/******/
-/******/ // Execute the module function
-/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
-/******/
-/******/ // Flag the module as loaded
-/******/ module.l = true;
-/******/
-/******/ // Return the exports of the module
-/******/ return module.exports;
-/******/ }
-/******/
-/******/
-/******/ // expose the modules object (__webpack_modules__)
-/******/ __webpack_require__.m = modules;
-/******/
-/******/ // expose the module cache
-/******/ __webpack_require__.c = installedModules;
-/******/
-/******/ // define getter function for harmony exports
-/******/ __webpack_require__.d = function(exports, name, getter) {
-/******/ if(!__webpack_require__.o(exports, name)) {
-/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
-/******/ }
-/******/ };
-/******/
-/******/ // define __esModule on exports
-/******/ __webpack_require__.r = function(exports) {
-/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
-/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
-/******/ }
-/******/ Object.defineProperty(exports, '__esModule', { value: true });
-/******/ };
-/******/
-/******/ // create a fake namespace object
-/******/ // mode & 1: value is a module id, require it
-/******/ // mode & 2: merge all properties of value into the ns
-/******/ // mode & 4: return value when already ns object
-/******/ // mode & 8|1: behave like require
-/******/ __webpack_require__.t = function(value, mode) {
-/******/ if(mode & 1) value = __webpack_require__(value);
-/******/ if(mode & 8) return value;
-/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
-/******/ var ns = Object.create(null);
-/******/ __webpack_require__.r(ns);
-/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
-/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
-/******/ return ns;
-/******/ };
-/******/
-/******/ // getDefaultExport function for compatibility with non-harmony modules
-/******/ __webpack_require__.n = function(module) {
-/******/ var getter = module && module.__esModule ?
-/******/ function getDefault() { return module['default']; } :
-/******/ function getModuleExports() { return module; };
-/******/ __webpack_require__.d(getter, 'a', getter);
-/******/ return getter;
-/******/ };
-/******/
-/******/ // Object.prototype.hasOwnProperty.call
-/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
-/******/
-/******/ // __webpack_public_path__
-/******/ __webpack_require__.p = "";
-/******/
-/******/
-/******/ // Load entry module and return exports
-/******/ return __webpack_require__(__webpack_require__.s = 1);
-/******/ })
-/************************************************************************/
-/******/ ([
-/* 0 */,
-/* 1 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-// ESM COMPAT FLAG
-__webpack_require__.r(__webpack_exports__);
-
-// CONCATENATED MODULE: ./src/modules/jqLiteExtras.js
-function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }
-
-function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); }
-
-function _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
-
+/******/ (() => { // webpackBootstrap
+/******/ "use strict";
+var __webpack_exports__ = {};
+
+;// CONCATENATED MODULE: ./src/modules/jqLiteExtras.js
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
+function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
+function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
+function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
+function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
-
-function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
-
+function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
+function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
+function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
+function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
/*!
globals: angular, window
List of used element methods available in JQuery but not in JQuery Lite
@@ -124,67 +31,54 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
element.scrollTop()
element.scrollTop(value)
*/
-var jqLiteExtras_JQLiteExtras =
-/*#__PURE__*/
-function () {
+var JQLiteExtras = /*#__PURE__*/function () {
function JQLiteExtras() {
_classCallCheck(this, JQLiteExtras);
}
-
_createClass(JQLiteExtras, [{
key: "registerFor",
value: function registerFor(element) {
- var convertToPx, css, getStyle, isWindow; // angular implementation blows up if elem is the window
-
+ var convertToPx, css, getStyle, isWindow;
+ // angular implementation blows up if elem is the window
css = angular.element.prototype.css;
-
element.prototype.css = function (name, value) {
var self = this;
var elem = self[0];
-
if (!(!elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style)) {
return css.call(self, name, value);
}
- }; // as defined in angularjs v1.0.5
-
+ };
+ // as defined in angularjs v1.0.5
isWindow = function isWindow(obj) {
return obj && obj.document && obj.location && obj.alert && obj.setInterval;
};
-
function scrollTo(self, direction, value) {
var elem = self[0];
-
var _top$left$direction = _slicedToArray({
- top: ['scrollTop', 'pageYOffset', 'scrollLeft'],
- left: ['scrollLeft', 'pageXOffset', 'scrollTop']
- }[direction], 3),
- method = _top$left$direction[0],
- prop = _top$left$direction[1],
- preserve = _top$left$direction[2];
-
+ top: ['scrollTop', 'pageYOffset', 'scrollLeft'],
+ left: ['scrollLeft', 'pageXOffset', 'scrollTop']
+ }[direction], 3),
+ method = _top$left$direction[0],
+ prop = _top$left$direction[1],
+ preserve = _top$left$direction[2];
var isValueDefined = typeof value !== 'undefined';
-
if (isWindow(elem)) {
if (isValueDefined) {
return elem.scrollTo(self[preserve].call(self), value);
}
-
return prop in elem ? elem[prop] : elem.document.documentElement[method];
} else {
if (isValueDefined) {
elem[method] = value;
}
-
return elem[method];
}
}
-
if (window.getComputedStyle) {
getStyle = function getStyle(elem) {
return window.getComputedStyle(elem, null);
};
-
convertToPx = function convertToPx(elem, value) {
return parseFloat(value);
};
@@ -192,42 +86,34 @@ function () {
getStyle = function getStyle(elem) {
return elem.currentStyle;
};
-
convertToPx = function convertToPx(elem, value) {
var left, result, rs, rsLeft, style;
var core_pnum = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source;
var rnumnonpx = new RegExp('^(' + core_pnum + ')(?!px)[a-z%]+$', 'i');
-
if (!rnumnonpx.test(value)) {
return parseFloat(value);
- } // ported from JQuery
-
+ }
+ // ported from JQuery
style = elem.style;
left = style.left;
rs = elem.runtimeStyle;
rsLeft = rs && rs.left;
-
if (rs) {
rs.left = style.left;
- } // put in the new values to get a computed style out
-
-
+ }
+ // put in the new values to get a computed style out
style.left = value;
result = style.pixelLeft;
style.left = left;
-
if (rsLeft) {
rs.left = rsLeft;
}
-
return result;
};
}
-
function getMeasurements(elem, measure) {
var base, borderA, borderB, computedMarginA, computedMarginB, computedStyle, dirA, dirB, marginA, marginB, paddingA, paddingB;
-
if (isWindow(elem)) {
base = document.documentElement[{
height: 'clientHeight',
@@ -239,14 +125,13 @@ function () {
border: 0,
margin: 0
};
- } // Start with offset property
-
+ }
+ // Start with offset property
var _width$height$measure = _slicedToArray({
width: [elem.offsetWidth, 'Left', 'Right'],
height: [elem.offsetHeight, 'Top', 'Bottom']
}[measure], 3);
-
base = _width$height$measure[0];
dirA = _width$height$measure[1];
dirB = _width$height$measure[2];
@@ -256,11 +141,12 @@ function () {
borderA = convertToPx(elem, computedStyle['border' + dirA + 'Width']) || 0;
borderB = convertToPx(elem, computedStyle['border' + dirB + 'Width']) || 0;
computedMarginA = computedStyle['margin' + dirA];
- computedMarginB = computedStyle['margin' + dirB]; // I do not care for width for now, so this hack is irrelevant
+ computedMarginB = computedStyle['margin' + dirB];
+
+ // I do not care for width for now, so this hack is irrelevant
// if ( !supportsPercentMargin )
// computedMarginA = hackPercentMargin( elem, computedStyle, computedMarginA )
// computedMarginB = hackPercentMargin( elem, computedStyle, computedMarginB )
-
marginA = convertToPx(elem, computedMarginA) || 0;
marginB = convertToPx(elem, computedMarginB) || 0;
return {
@@ -270,37 +156,34 @@ function () {
margin: marginA + marginB
};
}
-
function getWidthHeight(elem, direction, measure) {
var computedStyle, result;
var measurements = getMeasurements(elem, direction);
-
if (measurements.base > 0) {
return {
base: measurements.base - measurements.padding - measurements.border,
outer: measurements.base,
outerfull: measurements.base + measurements.margin
}[measure];
- } // Fall back to computed then uncomputed css if necessary
-
+ }
+ // Fall back to computed then uncomputed css if necessary
computedStyle = getStyle(elem);
result = computedStyle[direction];
-
if (result < 0 || result === null) {
result = elem.style[direction] || 0;
- } // Normalize "", auto, and prepare for extra
-
+ }
+ // Normalize "", auto, and prepare for extra
result = parseFloat(result) || 0;
return {
base: result - measurements.padding - measurements.border,
outer: result,
outerfull: result + measurements.padding + measurements.border + measurements.margin
}[measure];
- } // define missing methods
-
+ }
+ // define missing methods
return angular.forEach({
before: function before(newElem) {
var children, elem, i, j, parent, ref, self;
@@ -308,7 +191,6 @@ function () {
elem = self[0];
parent = self.parent();
children = parent.contents();
-
if (children[0] === elem) {
return parent.prepend(newElem);
} else {
@@ -318,19 +200,16 @@ function () {
return;
}
}
-
throw new Error('invalid DOM structure ' + elem.outerHTML);
}
},
height: function height(value) {
var self;
self = this;
-
if (typeof value !== 'undefined') {
if (angular.isNumber(value)) {
value = value + 'px';
}
-
return css.call(self, 'height', value);
} else {
return getWidthHeight(this[0], 'height', 'base');
@@ -342,7 +221,6 @@ function () {
outerWidth: function outerWidth(option) {
return getWidthHeight(this[0], 'width', option ? 'outerfull' : 'outer');
},
-
/*
The offset setter method is not implemented
*/
@@ -355,26 +233,23 @@ function () {
};
var elem = self[0];
var doc = elem && elem.ownerDocument;
-
if (arguments.length) {
if (value === undefined) {
return self;
- } // TODO: implement setter
-
-
+ }
+ // TODO: implement setter
throw new Error('offset setter method is not implemented');
}
-
if (!doc) {
return;
}
+ docElem = doc.documentElement;
- docElem = doc.documentElement; // TODO: Make sure it's not a disconnected DOM node
+ // TODO: Make sure it's not a disconnected DOM node
if (elem.getBoundingClientRect != null) {
box = elem.getBoundingClientRect();
}
-
win = doc.defaultView || doc.parentWindow;
return {
top: box.top + (win.pageYOffset || docElem.scrollTop) - (docElem.clientTop || 0),
@@ -394,53 +269,24 @@ function () {
});
}
}]);
-
return JQLiteExtras;
}();
-
-// CONCATENATED MODULE: ./src/modules/elementRoutines.js
+;// CONCATENATED MODULE: ./src/modules/elementRoutines.js
+function elementRoutines_typeof(obj) { "@babel/helpers - typeof"; return elementRoutines_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, elementRoutines_typeof(obj); }
function elementRoutines_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function elementRoutines_defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
-
-function elementRoutines_createClass(Constructor, protoProps, staticProps) { if (protoProps) elementRoutines_defineProperties(Constructor.prototype, protoProps); if (staticProps) elementRoutines_defineProperties(Constructor, staticProps); return Constructor; }
-
+function elementRoutines_defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, elementRoutines_toPropertyKey(descriptor.key), descriptor); } }
+function elementRoutines_createClass(Constructor, protoProps, staticProps) { if (protoProps) elementRoutines_defineProperties(Constructor.prototype, protoProps); if (staticProps) elementRoutines_defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
+function elementRoutines_toPropertyKey(arg) { var key = elementRoutines_toPrimitive(arg, "string"); return elementRoutines_typeof(key) === "symbol" ? key : String(key); }
+function elementRoutines_toPrimitive(input, hint) { if (elementRoutines_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (elementRoutines_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
var hideClassToken = 'ng-ui-scroll-hide';
-
-var ElementRoutines =
-/*#__PURE__*/
-function () {
- elementRoutines_createClass(ElementRoutines, null, [{
- key: "addCSSRules",
- value: function addCSSRules() {
- var selector = '.' + hideClassToken;
- var rules = 'display: none';
- var sheet = document.styleSheets[0];
- var index;
-
- try {
- index = sheet.cssRules.length;
- } catch (err) {
- index = 0;
- }
-
- if ('insertRule' in sheet) {
- sheet.insertRule(selector + '{' + rules + '}', index);
- } else if ('addRule' in sheet) {
- sheet.addRule(selector, rules, index);
- }
- }
- }]);
-
+var ElementRoutines = /*#__PURE__*/function () {
function ElementRoutines($injector, $q) {
elementRoutines_classCallCheck(this, ElementRoutines);
-
this.$animate = $injector.has && $injector.has('$animate') ? $injector.get('$animate') : null;
this.isAngularVersionLessThen1_3 = angular.version.major === 1 && angular.version.minor < 3;
this.$q = $q;
}
-
elementRoutines_createClass(ElementRoutines, [{
key: "hideElement",
value: function hideElement(wrapper) {
@@ -470,17 +316,16 @@ function () {
if (!this.$animate) {
return this.insertElement(newElement, previousElement);
}
-
if (this.isAngularVersionLessThen1_3) {
- var deferred = this.$q.defer(); // no need for parent - previous element is never null
-
+ var deferred = this.$q.defer();
+ // no need for parent - previous element is never null
this.$animate.enter(newElement, null, previousElement, function () {
return deferred.resolve();
});
return [deferred.promise];
- } // no need for parent - previous element is never null
-
+ }
+ // no need for parent - previous element is never null
return [this.$animate.enter(newElement, null, previousElement)];
}
}, {
@@ -489,7 +334,6 @@ function () {
if (!this.$animate) {
return this.removeElement(wrapper);
}
-
if (this.isAngularVersionLessThen1_3) {
var deferred = this.$q.defer();
this.$animate.leave(wrapper.element, function () {
@@ -498,18 +342,33 @@ function () {
});
return [deferred.promise];
}
-
return [this.$animate.leave(wrapper.element).then(function () {
return wrapper.scope.$destroy();
})];
}
+ }], [{
+ key: "addCSSRules",
+ value: function addCSSRules() {
+ var selector = '.' + hideClassToken;
+ var rules = 'display: none';
+ var sheet = document.styleSheets[0];
+ var index;
+ try {
+ index = sheet.cssRules.length;
+ } catch (err) {
+ index = 0;
+ }
+ if ('insertRule' in sheet) {
+ sheet.insertRule(selector + '{' + rules + '}', index);
+ } else if ('addRule' in sheet) {
+ sheet.addRule(selector, rules, index);
+ }
+ }
}]);
-
return ElementRoutines;
}();
-
-// CONCATENATED MODULE: ./src/modules/utils.js
+;// CONCATENATED MODULE: ./src/modules/utils.js
var OPERATIONS = {
PREPEND: 'prepend',
APPEND: 'append',
@@ -517,7 +376,7 @@ var OPERATIONS = {
REMOVE: 'remove',
NONE: 'none'
};
-// CONCATENATED MODULE: ./src/modules/buffer.js
+;// CONCATENATED MODULE: ./src/modules/buffer.js
function ScrollBuffer(elementRoutines, bufferSize, startIndex) {
var buffer = Object.create(Array.prototype);
@@ -548,12 +407,10 @@ function ScrollBuffer(elementRoutines, bufferSize, startIndex) {
} else {
--buffer.first;
}
-
buffer.insert(OPERATIONS.PREPEND, item);
});
buffer.minIndex = buffer.bof ? buffer.minIndex = buffer.first : Math.min(buffer.first, buffer.minIndex);
},
-
/**
* inserts wrapped element in the buffer
* the first argument is either operation keyword (see below) or a number for operation 'insert'
@@ -564,12 +421,10 @@ function ScrollBuffer(elementRoutines, bufferSize, startIndex) {
var wrapper = {
item: item
};
-
if (operation % 1 === 0) {
// it is an insert
wrapper.op = OPERATIONS.INSERT;
buffer.splice(operation, 0, wrapper);
-
if (shiftTop) {
buffer.first--;
} else {
@@ -577,12 +432,10 @@ function ScrollBuffer(elementRoutines, bufferSize, startIndex) {
}
} else {
wrapper.op = operation;
-
switch (operation) {
case OPERATIONS.APPEND:
buffer.push(wrapper);
break;
-
case OPERATIONS.PREPEND:
buffer.unshift(wrapper);
break;
@@ -596,29 +449,23 @@ function ScrollBuffer(elementRoutines, bufferSize, startIndex) {
for (var i = arg1; i < arg2; i++) {
elementRoutines.removeElement(buffer[i]);
}
-
return buffer.splice(arg1, arg2 - arg1);
- } // removes single item (wrapper) from the buffer
-
-
+ }
+ // removes single item (wrapper) from the buffer
buffer.splice(buffer.indexOf(arg1), 1);
-
if (arg1.shiftTop && buffer.first === this.getAbsMinIndex()) {
this.incrementMinIndex();
} else {
this.decrementMaxIndex();
}
-
if (arg1.shiftTop) {
buffer.first++;
} else {
buffer.next--;
}
-
if (!buffer.length) {
buffer.minIndex = Math.min(buffer.maxIndex, buffer.minIndex);
}
-
return elementRoutines.removeElementAnimated(arg1);
},
incrementMinIndex: function incrementMinIndex() {
@@ -627,40 +474,34 @@ function ScrollBuffer(elementRoutines, bufferSize, startIndex) {
buffer.minIndexUser++;
return;
}
-
if (buffer.minIndex === buffer.minIndexUser) {
buffer.minIndexUser++;
}
}
-
buffer.minIndex++;
},
decrementMaxIndex: function decrementMaxIndex() {
if (buffer.maxIndexUser !== null && buffer.maxIndex <= buffer.maxIndexUser) {
buffer.maxIndexUser--;
}
-
buffer.maxIndex--;
},
getAbsMinIndex: function getAbsMinIndex() {
if (buffer.minIndexUser !== null) {
return Math.min(buffer.minIndexUser, buffer.minIndex);
}
-
return buffer.minIndex;
},
getAbsMaxIndex: function getAbsMaxIndex() {
if (buffer.maxIndexUser !== null) {
return Math.max(buffer.maxIndexUser, buffer.maxIndex);
}
-
return buffer.maxIndex;
},
effectiveHeight: function effectiveHeight(elements) {
if (!elements.length) {
return 0;
}
-
var top = Number.MAX_VALUE;
var bottom = Number.NEGATIVE_INFINITY;
elements.forEach(function (wrapper) {
@@ -679,42 +520,35 @@ function ScrollBuffer(elementRoutines, bufferSize, startIndex) {
},
getFirstItem: function getFirstItem() {
var list = buffer.getItems();
-
if (!list.length) {
return null;
}
-
return list[0].item;
},
getLastItem: function getLastItem() {
var list = buffer.getItems();
-
if (!list.length) {
return null;
}
-
return list[list.length - 1].item;
}
});
buffer.reset(startIndex);
return buffer;
}
-// CONCATENATED MODULE: ./src/modules/padding.js
+;// CONCATENATED MODULE: ./src/modules/padding.js
+function padding_typeof(obj) { "@babel/helpers - typeof"; return padding_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, padding_typeof(obj); }
function padding_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function padding_defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
-
-function padding_createClass(Constructor, protoProps, staticProps) { if (protoProps) padding_defineProperties(Constructor.prototype, protoProps); if (staticProps) padding_defineProperties(Constructor, staticProps); return Constructor; }
-
+function padding_defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, padding_toPropertyKey(descriptor.key), descriptor); } }
+function padding_createClass(Constructor, protoProps, staticProps) { if (protoProps) padding_defineProperties(Constructor.prototype, protoProps); if (staticProps) padding_defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
+function padding_toPropertyKey(arg) { var key = padding_toPrimitive(arg, "string"); return padding_typeof(key) === "symbol" ? key : String(key); }
+function padding_toPrimitive(input, hint) { if (padding_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (padding_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
// Can't just extend the Array, due to Babel does not support built-in classes extending
// This solution was taken from https://stackoverflow.com/questions/46897414/es6-class-extends-array-workaround-for-es5-babel-transpile
-var CacheProto =
-/*#__PURE__*/
-function () {
+var CacheProto = /*#__PURE__*/function () {
function CacheProto() {
padding_classCallCheck(this, CacheProto);
}
-
padding_createClass(CacheProto, [{
key: "add",
value: function add(item) {
@@ -724,7 +558,6 @@ function () {
return;
}
}
-
this.push({
index: item.scope.$index,
height: item.element.outerHeight()
@@ -738,14 +571,12 @@ function () {
value: function remove(argument, _shiftTop) {
var index = argument % 1 === 0 ? argument : argument.scope.$index;
var shiftTop = argument % 1 === 0 ? _shiftTop : argument.shiftTop;
-
for (var i = this.length - 1; i >= 0; i--) {
if (this[i].index === index) {
this.splice(i, 1);
break;
}
}
-
if (!shiftTop) {
for (var _i = this.length - 1; _i >= 0; _i--) {
if (this[_i].index > index) {
@@ -760,71 +591,54 @@ function () {
this.length = 0;
}
}]);
-
return CacheProto;
}();
-
function Cache() {
var instance = [];
instance.push.apply(instance, arguments);
Object.setPrototypeOf(instance, Cache.prototype);
return instance;
}
-
Cache.prototype = Object.create(Array.prototype);
Object.getOwnPropertyNames(CacheProto.prototype).forEach(function (methodName) {
return Cache.prototype[methodName] = CacheProto.prototype[methodName];
});
-
function generateElement(template) {
if (template.nodeType !== Node.ELEMENT_NODE) {
throw new Error('ui-scroll directive requires an Element node for templating the view');
}
-
var element;
-
switch (template.tagName.toLowerCase()) {
case 'dl':
throw new Error("ui-scroll directive does not support <".concat(template.tagName, "> as a repeating tag: ").concat(template.outerHTML));
-
case 'tr':
var table = angular.element('');
element = table.find('tr');
break;
-
case 'li':
element = angular.element('');
break;
-
default:
element = angular.element('');
}
-
return element;
}
-
-var Padding =
-/*#__PURE__*/
-function () {
+var Padding = /*#__PURE__*/function () {
function Padding(template) {
padding_classCallCheck(this, Padding);
-
this.element = generateElement(template);
this.cache = new Cache();
}
-
padding_createClass(Padding, [{
key: "height",
value: function height() {
return this.element.height.apply(this.element, arguments);
}
}]);
-
return Padding;
}();
-
-/* harmony default export */ var modules_padding = (Padding);
-// CONCATENATED MODULE: ./src/modules/viewport.js
+/* harmony default export */ const modules_padding = (Padding);
+;// CONCATENATED MODULE: ./src/modules/viewport.js
function Viewport(elementRoutines, buffer, element, viewportController, $rootScope, padding) {
var topPadding = null;
@@ -837,7 +651,6 @@ function Viewport(elementRoutines, buffer, element, viewportController, $rootSco
'overflow-y': 'auto',
'display': 'block'
});
-
function bufferPadding() {
return viewport.outerHeight() * padding; // some extra space to initiate preload
}
@@ -858,11 +671,9 @@ function Viewport(elementRoutines, buffer, element, viewportController, $rootSco
if (!container) {
return true;
}
-
if (container !== viewport) {
viewport.css('height', window.getComputedStyle(container[0]).height);
}
-
return viewport.height() > 0;
},
bottomDataPos: function bottomDataPos() {
@@ -894,19 +705,15 @@ function Viewport(elementRoutines, buffer, element, viewportController, $rootSco
var overageHeight = 0;
var itemHeight = 0;
var emptySpaceHeight = viewport.bottomDataPos() - viewport.bottomVisiblePos() - bufferPadding();
-
for (var i = buffer.length - 1; i >= 0; i--) {
itemHeight = buffer[i].element.outerHeight(true);
-
if (overageHeight + itemHeight > emptySpaceHeight) {
break;
}
-
bottomPadding.cache.add(buffer[i]);
overageHeight += itemHeight;
overage++;
}
-
if (overage > 0) {
buffer.eof = false;
buffer.remove(buffer.length - overage, buffer.length);
@@ -923,19 +730,15 @@ function Viewport(elementRoutines, buffer, element, viewportController, $rootSco
var overageHeight = 0;
var itemHeight = 0;
var emptySpaceHeight = viewport.topVisiblePos() - viewport.topDataPos() - bufferPadding();
-
for (var i = 0; i < buffer.length; i++) {
itemHeight = buffer[i].element.outerHeight(true);
-
if (overageHeight + itemHeight > emptySpaceHeight) {
break;
}
-
topPadding.cache.add(buffer[i]);
overageHeight += itemHeight;
overage++;
}
-
if (overage > 0) {
// we need to adjust top padding element before items are removed from top
// to avoid strange behaviour of scroll bar during remove top items when we are at the very bottom
@@ -948,14 +751,14 @@ function Viewport(elementRoutines, buffer, element, viewportController, $rootSco
adjustPaddings: function adjustPaddings() {
if (!buffer.length) {
return;
- } // precise heights calculation based on items that are in buffer or that were in buffer once
-
+ }
+ // precise heights calculation based on items that are in buffer or that were in buffer once
var visibleItemsHeight = buffer.reduce(function (summ, item) {
return summ + item.element.outerHeight(true);
}, 0);
var topPaddingHeight = 0,
- topCount = 0;
+ topCount = 0;
topPadding.cache.forEach(function (item) {
if (item.index < buffer.first) {
topPaddingHeight += item.height;
@@ -963,7 +766,7 @@ function Viewport(elementRoutines, buffer, element, viewportController, $rootSco
}
});
var bottomPaddingHeight = 0,
- bottomCount = 0;
+ bottomCount = 0;
bottomPadding.cache.forEach(function (item) {
if (item.index >= buffer.next) {
bottomPaddingHeight += item.height;
@@ -971,13 +774,15 @@ function Viewport(elementRoutines, buffer, element, viewportController, $rootSco
}
});
var totalHeight = visibleItemsHeight + topPaddingHeight + bottomPaddingHeight;
- var averageItemHeight = totalHeight / (topCount + bottomCount + buffer.length); // average heights calculation, items that have never been reached
+ var averageItemHeight = totalHeight / (topCount + bottomCount + buffer.length);
+ // average heights calculation, items that have never been reached
var adjustTopPadding = buffer.minIndexUser !== null && buffer.minIndex > buffer.minIndexUser;
var adjustBottomPadding = buffer.maxIndexUser !== null && buffer.maxIndex < buffer.maxIndexUser;
var topPaddingHeightAdd = adjustTopPadding ? (buffer.minIndex - buffer.minIndexUser) * averageItemHeight : 0;
- var bottomPaddingHeightAdd = adjustBottomPadding ? (buffer.maxIndexUser - buffer.maxIndex) * averageItemHeight : 0; // paddings combine adjustment
+ var bottomPaddingHeightAdd = adjustBottomPadding ? (buffer.maxIndexUser - buffer.maxIndex) * averageItemHeight : 0;
+ // paddings combine adjustment
topPadding.height(topPaddingHeight + topPaddingHeightAdd);
bottomPadding.height(bottomPaddingHeight + bottomPaddingHeightAdd);
},
@@ -986,7 +791,6 @@ function Viewport(elementRoutines, buffer, element, viewportController, $rootSco
if (buffer.minIndexUser !== null && buffer.minIndex > buffer.minIndexUser) {
var diff = topPadding.height() - topPaddingHeightOld;
viewport.scrollTop(viewport.scrollTop() + diff);
-
while ((diff -= viewport.scrollTop()) > 0) {
bottomPadding.height(bottomPadding.height() + diff);
viewport.scrollTop(viewport.scrollTop() + diff);
@@ -997,15 +801,12 @@ function Viewport(elementRoutines, buffer, element, viewportController, $rootSco
if (!updates.prepended.length) {
return;
}
-
var height = buffer.effectiveHeight(updates.prepended);
var paddingHeight = topPadding.height() - height;
-
if (paddingHeight >= 0) {
topPadding.height(paddingHeight);
return;
}
-
var position = viewport.scrollTop();
var newPosition = position - paddingHeight;
viewport.synthetic = {
@@ -1034,21 +835,17 @@ function Viewport(elementRoutines, buffer, element, viewportController, $rootSco
});
return viewport;
}
-// CONCATENATED MODULE: ./src/modules/adapter.js
+;// CONCATENATED MODULE: ./src/modules/adapter.js
+function adapter_typeof(obj) { "@babel/helpers - typeof"; return adapter_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, adapter_typeof(obj); }
function adapter_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+function adapter_defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, adapter_toPropertyKey(descriptor.key), descriptor); } }
+function adapter_createClass(Constructor, protoProps, staticProps) { if (protoProps) adapter_defineProperties(Constructor.prototype, protoProps); if (staticProps) adapter_defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
+function adapter_toPropertyKey(arg) { var key = adapter_toPrimitive(arg, "string"); return adapter_typeof(key) === "symbol" ? key : String(key); }
+function adapter_toPrimitive(input, hint) { if (adapter_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (adapter_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
-function adapter_defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
-
-function adapter_createClass(Constructor, protoProps, staticProps) { if (protoProps) adapter_defineProperties(Constructor.prototype, protoProps); if (staticProps) adapter_defineProperties(Constructor, staticProps); return Constructor; }
-
-
-
-var adapter_Adapter =
-/*#__PURE__*/
-function () {
+var Adapter = /*#__PURE__*/function () {
function Adapter($scope, $parse, $attr, viewport, buffer, doAdjust, reload) {
adapter_classCallCheck(this, Adapter);
-
this.$parse = $parse;
this.$attr = $attr;
this.viewport = viewport;
@@ -1063,16 +860,13 @@ function () {
this.assignAdapter($attr.adapter);
this.generatePublicContext();
}
-
adapter_createClass(Adapter, [{
key: "assignAdapter",
value: function assignAdapter(adapterAttr) {
if (!adapterAttr || !(adapterAttr = adapterAttr.replace(/^\s+|\s+$/gm, ''))) {
return;
}
-
var adapterOnScope;
-
try {
this.$parse(adapterAttr).assign(this.startScope, {});
adapterOnScope = this.$parse(adapterAttr)(this.startScope);
@@ -1080,7 +874,6 @@ function () {
error.message = "Angular ui-scroll Adapter assignment exception.\n" + "Can't parse \"".concat(adapterAttr, "\" expression.\n") + error.message;
throw error;
}
-
angular.extend(adapterOnScope, this.publicContext);
this.publicContext = adapterOnScope;
}
@@ -1088,20 +881,17 @@ function () {
key: "generatePublicContext",
value: function generatePublicContext() {
var _this = this;
-
// these methods will be accessible out of ui-scroll via user defined adapter
var publicMethods = ['reload', 'applyUpdates', 'append', 'prepend', 'isBOF', 'isEOF', 'isEmpty'];
-
for (var i = publicMethods.length - 1; i >= 0; i--) {
this.publicContext[publicMethods[i]] = this[publicMethods[i]].bind(this);
- } // these read-only props will be accessible out of ui-scroll via user defined adapter
-
+ }
+ // these read-only props will be accessible out of ui-scroll via user defined adapter
var publicProps = ['isLoading', 'topVisible', 'topVisibleElement', 'topVisibleScope', 'bottomVisible', 'bottomVisibleElement', 'bottomVisibleScope'];
-
var _loop = function _loop(_i) {
- var property = void 0,
- attr = _this.$attr[publicProps[_i]];
+ var property,
+ attr = _this.$attr[publicProps[_i]];
Object.defineProperty(_this, publicProps[_i], {
get: function get() {
return property;
@@ -1109,21 +899,18 @@ function () {
set: function set(value) {
property = value;
_this.publicContext[publicProps[_i]] = value;
-
if (attr) {
_this.$parse(attr).assign(_this.startScope, value);
}
}
});
};
-
for (var _i = publicProps.length - 1; _i >= 0; _i--) {
_loop(_i);
- } // read-only immediately calculated public properties
-
+ }
+ // read-only immediately calculated public properties
var publicPropsImmediate = ['bufferFirst', 'bufferLast', 'bufferLength'];
-
var _loop2 = function _loop2(_i2) {
Object.defineProperty(_this.publicContext, publicPropsImmediate[_i2], {
get: function get() {
@@ -1131,12 +918,11 @@ function () {
}
});
};
-
for (var _i2 = publicPropsImmediate.length - 1; _i2 >= 0; _i2--) {
_loop2(_i2);
- } // non-read-only public property
-
+ }
+ // non-read-only public property
Object.defineProperty(this.publicContext, 'disabled', {
get: function get() {
return _this.disabled;
@@ -1166,6 +952,21 @@ function () {
value: function isEmpty() {
return !this.buffer.length;
}
+ }, {
+ key: "bufferLength",
+ get: function get() {
+ return this.buffer.getItems().length;
+ }
+ }, {
+ key: "bufferFirst",
+ get: function get() {
+ return this.buffer.getFirstItem();
+ }
+ }, {
+ key: "bufferLast",
+ get: function get() {
+ return this.buffer.getLastItem();
+ }
}, {
key: "append",
value: function append(newItems) {
@@ -1191,14 +992,12 @@ function () {
} else {
this.applyUpdatesIndex(arg1, arg2, arg3);
}
-
this.doAdjust();
}
}, {
key: "applyUpdatesFunc",
value: function applyUpdatesFunc(cb) {
var _this2 = this;
-
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
this.buffer.slice(0).forEach(function (wrapper) {
// we need to do it on the buffer clone, because buffer content
@@ -1210,47 +1009,41 @@ function () {
key: "applyUpdatesIndex",
value: function applyUpdatesIndex(index, newItems) {
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
-
if (index % 1 !== 0) {
throw new Error('applyUpdates - ' + index + ' is not a valid index (should be an integer)');
}
+ var _index = index - this.buffer.first;
- var _index = index - this.buffer.first; // apply updates only within buffer
-
-
+ // apply updates only within buffer
if (_index >= 0 && _index < this.buffer.length) {
this.applyUpdate(this.buffer[_index], newItems, options);
- } // out-of-buffer case: deletion may affect Paddings
+ }
+ // out-of-buffer case: deletion may affect Paddings
else if (index >= this.buffer.getAbsMinIndex() && index <= this.buffer.getAbsMaxIndex()) {
- if (angular.isArray(newItems) && !newItems.length) {
- this.viewport.removeCacheItem(index, !options.immutableTop && index === this.buffer.minIndex);
-
- if (!options.immutableTop && index === this.buffer.getAbsMinIndex()) {
- this.buffer.incrementMinIndex();
- } else {
- this.buffer.decrementMaxIndex();
- }
+ if (angular.isArray(newItems) && !newItems.length) {
+ this.viewport.removeCacheItem(index, !options.immutableTop && index === this.buffer.minIndex);
+ if (!options.immutableTop && index === this.buffer.getAbsMinIndex()) {
+ this.buffer.incrementMinIndex();
+ } else {
+ this.buffer.decrementMaxIndex();
}
}
+ }
}
}, {
key: "applyUpdate",
value: function applyUpdate(wrapper, newItems) {
var _this3 = this;
-
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
-
if (!angular.isArray(newItems)) {
return;
}
-
var position = this.buffer.indexOf(wrapper);
-
if (!newItems.reverse().some(function (newItem) {
return newItem === wrapper.item;
})) {
- wrapper.op = OPERATIONS.REMOVE; // try to catch "first" edge case on remove
-
+ wrapper.op = OPERATIONS.REMOVE;
+ // try to catch "first" edge case on remove
if (!options.immutableTop && !newItems.length) {
// this is the first item, or the previous one's part of the "shift-top" group
if (position === 0 && this.buffer.bof || position !== 0 && this.buffer[position - 1].shiftTop) {
@@ -1258,7 +1051,6 @@ function () {
}
}
}
-
newItems.forEach(function (newItem) {
if (newItem === wrapper.item) {
position--;
@@ -1272,73 +1064,49 @@ function () {
key: "calculateProperties",
value: function calculateProperties() {
var rowTop = null,
- topHeight = 0;
+ topHeight = 0;
var topDone = false,
- bottomDone = false;
+ bottomDone = false;
var length = this.buffer.length;
-
for (var i = 0; i < length; i++) {
var item = this.buffer[i];
var itemTop = item.element.offset().top;
-
if (rowTop !== itemTop) {
// a new row condition
var itemHeight = item.element.outerHeight(true);
var top = this.viewport.topDataPos() + topHeight + itemHeight;
-
if (!topDone && top > this.viewport.topVisiblePos()) {
topDone = true;
this['topVisible'] = item.item;
this['topVisibleElement'] = item.element;
this['topVisibleScope'] = item.scope;
}
-
if (!bottomDone && (top >= this.viewport.bottomVisiblePos() || i === length - 1 && this.isEOF())) {
bottomDone = true;
this['bottomVisible'] = item.item;
this['bottomVisibleElement'] = item.element;
this['bottomVisibleScope'] = item.scope;
}
-
topHeight += itemHeight;
}
-
rowTop = itemTop;
-
if (topDone && bottomDone) {
break;
}
}
}
- }, {
- key: "bufferLength",
- get: function get() {
- return this.buffer.getItems().length;
- }
- }, {
- key: "bufferFirst",
- get: function get() {
- return this.buffer.getFirstItem();
- }
- }, {
- key: "bufferLast",
- get: function get() {
- return this.buffer.getLastItem();
- }
}]);
-
return Adapter;
}();
-
-/* harmony default export */ var modules_adapter = (adapter_Adapter);
-// CONCATENATED MODULE: ./src/ui-scroll.js
+/* harmony default export */ const modules_adapter = (Adapter);
+;// CONCATENATED MODULE: ./src/ui-scroll.js
-angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtras).run(['JQLiteExtras', function (JQLiteExtras) {
+angular.module('ui.scroll', []).constant('JQLiteExtras', JQLiteExtras).run(['JQLiteExtras', function (JQLiteExtras) {
var elt = angular.element;
!(window.jQuery && elt.fn && elt.fn.jquery) ? new JQLiteExtras().registerFor(elt) : null;
ElementRoutines.addCSSRules();
@@ -1347,7 +1115,6 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
restrict: 'A',
controller: ['$scope', '$element', function (scope, element) {
var _this = this;
-
this.container = element;
this.viewport = element;
this.scope = scope;
@@ -1368,32 +1135,25 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
terminal: true,
link: link
};
-
function link($scope, element, $attr, controllers, linker) {
var match = $attr.uiScroll.match(/^\s*(\w+)\s+in\s+([(\w|\$)\.]+)\s*$/);
-
if (!match) {
throw new Error('Expected uiScroll in form of \'_item_ in _datasource_\' but got \'' + $attr.uiScroll + '\'');
}
-
function parseNumber(value, defaultValue, isFloat) {
if (!isFloat) {
value = value === null ? defaultValue : Math.floor(value);
}
-
return isNaN(value) ? defaultValue : value;
}
-
function parseNumericAttr(value, defaultValue, isFloat) {
var result = $parse(value)($scope);
return parseNumber(result, defaultValue, isFloat);
}
-
function parseBooleanAttr(value, defaultValue) {
var result = $parse(value)($scope);
return typeof result === 'boolean' ? result : defaultValue;
}
-
var BUFFER_MIN = 3;
var BUFFER_DEFAULT = 10;
var PADDING_MIN = 0.3;
@@ -1411,46 +1171,36 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
var handleInertia = parseBooleanAttr($attr.handleInertia, HANDLE_INERTIA_DEFAULT);
var startIndex = parseNumericAttr($attr.startIndex, START_INDEX_DEFAULT);
var ridActual = 0; // current data revision id
-
var pending = [];
var elementRoutines = new ElementRoutines($injector, $q);
var buffer = new ScrollBuffer(elementRoutines, bufferSize, startIndex);
var viewport = new Viewport(elementRoutines, buffer, element, viewportController, $rootScope, padding);
var adapter = new modules_adapter($scope, $parse, $attr, viewport, buffer, doAdjust, reload);
-
if (viewportController) {
viewportController.adapter = adapter;
}
-
var isDatasourceValid = function isDatasourceValid() {
return Object.prototype.toString.call(datasource) === '[object Object]' && typeof datasource.get === 'function';
};
-
datasource = $parse(datasourceName)($scope); // try to get datasource on scope
-
if (!isDatasourceValid()) {
datasource = $injector.get(datasourceName); // try to inject datasource as service
-
if (!isDatasourceValid()) {
throw new Error(datasourceName + ' is not a valid datasource');
}
}
-
var onRenderHandlers = [];
-
function onRenderHandlersRunner() {
onRenderHandlers.forEach(function (handler) {
return handler.run();
});
onRenderHandlers = [];
}
-
function persistDatasourceIndex(datasource, propName) {
- var getter; // need to postpone min/maxIndexUser processing if the view is empty
-
+ var getter;
+ // need to postpone min/maxIndexUser processing if the view is empty
if (angular.isNumber(datasource[propName])) {
getter = datasource[propName];
-
if (angular.isNumber(getter)) {
onRenderHandlers = onRenderHandlers.filter(function (handler) {
return handler.id !== propName;
@@ -1464,29 +1214,23 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
}
}
}
-
function defineDatasourceIndex(datasource, propName, propUserName) {
var descriptor = Object.getOwnPropertyDescriptor(datasource, propName);
-
if (descriptor && (descriptor.set || descriptor.get)) {
return;
}
-
var getter;
persistDatasourceIndex(datasource, propName);
Object.defineProperty(datasource, propName, {
set: function set(value) {
getter = value;
-
if (pending.length && !buffer.length) {
persistDatasourceIndex(datasource, propName);
return;
}
-
buffer[propUserName] = value;
var topPaddingHeightOld = viewport.topDataPos();
viewport.adjustPaddings();
-
if (propName === 'minIndex') {
viewport.onAfterMinIndexSet(topPaddingHeightOld);
}
@@ -1496,7 +1240,6 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
}
});
}
-
defineDatasourceIndex(datasource, 'minIndex', 'minIndexUser');
defineDatasourceIndex(datasource, 'maxIndex', 'maxIndexUser');
var fetchNext = datasource.get.length !== 2 ? function (success) {
@@ -1517,19 +1260,15 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
count: bufferSize
}, success);
};
-
var initialize = function initialize() {
var tryCount = 0;
-
if (!viewport.applyContainerStyle()) {
var timer = $interval(function () {
tryCount++;
-
if (viewport.applyContainerStyle()) {
$interval.cancel(timer);
doAdjust();
}
-
if (tryCount * VIEWPORT_POLLING_INTERVAL >= MAX_VIEWPORT_DELAY) {
$interval.cancel(timer);
throw Error("ui-scroll directive requires a viewport with non-zero height in ".concat(MAX_VIEWPORT_DELAY, "ms"));
@@ -1539,6 +1278,7 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
doAdjust();
}
};
+
/**
* Build padding elements
*
@@ -1546,13 +1286,11 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
* to prevent the directive scope from pollution a new scope is created and destroyed
* right after the builder creation is completed
*/
-
-
linker(function (clone, scope) {
- viewport.createPaddingElements(clone[0]); // we do not include the clone in the DOM. It means that the nested directives will not
+ viewport.createPaddingElements(clone[0]);
+ // we do not include the clone in the DOM. It means that the nested directives will not
// be able to reach the parent directives, but in this case it is intentional because we
// created the clone to access the template tag name
-
scope.$destroy();
clone.remove();
});
@@ -1562,41 +1300,35 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
});
viewport.on('mousewheel', wheelHandler);
initialize();
+
/* Private function definitions */
function isInvalid(rid) {
return rid && rid !== ridActual || $scope.$$destroyed;
}
-
function bindEvents() {
viewport.on('resize', resizeAndScrollHandler);
viewport.on('scroll', resizeAndScrollHandler);
}
-
function unbindEvents() {
viewport.off('resize', resizeAndScrollHandler);
viewport.off('scroll', resizeAndScrollHandler);
}
-
function reload() {
unbindEvents();
viewport.resetTopPadding();
viewport.resetBottomPadding();
-
if (arguments.length) {
startIndex = parseNumber(arguments[0], START_INDEX_DEFAULT, false);
}
-
buffer.reset(startIndex);
persistDatasourceIndex(datasource, 'minIndex');
persistDatasourceIndex(datasource, 'maxIndex');
doAdjust();
}
-
function isElementVisible(wrapper) {
return wrapper.element.height() && wrapper.element[0].offsetParent;
}
-
function visibilityWatcher(wrapper) {
if (isElementVisible(wrapper)) {
buffer.forEach(function (item) {
@@ -1605,7 +1337,6 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
delete item.unregisterVisibilityWatcher;
}
});
-
if (!pending.length) {
$timeout(function () {
return doAdjust();
@@ -1613,16 +1344,13 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
}
}
}
-
function insertWrapperContent(wrapper, insertAfter) {
createElement(wrapper, insertAfter, viewport.insertElement);
-
if (!isElementVisible(wrapper)) {
wrapper.unregisterVisibilityWatcher = wrapper.scope.$watch(function () {
return visibilityWatcher(wrapper);
});
}
-
elementRoutines.hideElement(wrapper); // hide inserted elements before data binding
}
@@ -1634,11 +1362,10 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
wrapper.element = clone;
wrapper.scope = scope;
scope[itemName] = wrapper.item;
- }); // ui-scroll-grid apply
-
+ });
+ // ui-scroll-grid apply
if (adapter.transform) {
var tdInitializer = wrapper.scope.uiScrollTdInitializer;
-
if (tdInitializer && tdInitializer.linking) {
adapter.transform(wrapper.scope, wrapper.element);
} else {
@@ -1650,10 +1377,8 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
};
}
}
-
return promises;
}
-
function updateDOM() {
var promises = [];
var toBePrepended = [];
@@ -1664,19 +1389,16 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
case OPERATIONS.PREPEND:
toBePrepended.unshift(wrapper);
break;
-
case OPERATIONS.APPEND:
insertWrapperContent(wrapper, i);
wrapper.op = OPERATIONS.NONE;
inserted.push(wrapper);
break;
-
case OPERATIONS.INSERT:
promises = promises.concat(createElement(wrapper, i, viewport.insertElementAnimated));
wrapper.op = OPERATIONS.NONE;
inserted.push(wrapper);
break;
-
case OPERATIONS.REMOVE:
toBeRemoved.push(wrapper);
}
@@ -1698,7 +1420,6 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
animated: promises
};
}
-
function updatePaddings(rid, updates) {
// schedule another doAdjust after animation completion
if (updates.animated.length) {
@@ -1710,7 +1431,6 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
viewport.adjustPaddings();
}
}
-
function enqueueFetch(rid, updates) {
if (viewport.shouldLoadBottom()) {
if (!updates || buffer.effectiveHeight(updates.inserted) > 0) {
@@ -1732,10 +1452,10 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
}
}
}
-
function processUpdates() {
- var updates = updateDOM(); // We need the item bindings to be processed before we can do adjustments
+ var updates = updateDOM();
+ // We need the item bindings to be processed before we can do adjustments
!$scope.$$phase && !$rootScope.$$phase && $scope.$digest();
updates.inserted.forEach(function (w) {
return elementRoutines.showElement(w);
@@ -1745,36 +1465,28 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
});
return updates;
}
-
function doAdjust(rid) {
if (!rid) {
// dismiss pending requests
pending = [];
rid = ++ridActual;
}
-
var updates = processUpdates();
-
if (isInvalid(rid)) {
return;
}
-
updatePaddings(rid, updates);
enqueueFetch(rid);
-
if (!pending.length) {
adapter.calculateProperties();
}
}
-
function doAdjustAfterFetch(rid) {
var updates = processUpdates();
viewport.onAfterPrepend(updates);
-
if (isInvalid(rid)) {
return;
}
-
updatePaddings(rid, updates);
onRenderHandlersRunner();
enqueueFetch(rid, updates);
@@ -1785,7 +1497,6 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
adapter.calculateProperties();
}
}
-
function fetch(rid) {
if (pending[0]) {
// scrolling down
@@ -1796,16 +1507,13 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
if (isInvalid(rid)) {
return;
}
-
if (result.length < bufferSize) {
buffer.eof = true;
}
-
if (result.length > 0) {
viewport.clipTop();
buffer.append(result);
}
-
doAdjustAfterFetch(rid);
});
}
@@ -1818,61 +1526,50 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
if (isInvalid(rid)) {
return;
}
-
if (result.length < bufferSize) {
- buffer.bof = true; // log 'bof is reached'
+ buffer.bof = true;
+ // log 'bof is reached'
}
if (result.length > 0) {
if (buffer.length) {
viewport.clipBottom();
}
-
buffer.prepend(result);
}
-
doAdjustAfterFetch(rid);
});
}
}
}
-
function fixInertia() {
if (!viewport.synthetic) {
return;
}
-
var oldPosition = viewport.synthetic.previous;
var newPosition = viewport.synthetic.next;
-
if (viewport.scrollTop() !== newPosition) {
requestAnimationFrame(function () {
var position = viewport.scrollTop();
var diff = oldPosition - position;
-
if (diff > 0) {
// inertia over synthetic
viewport.scrollTop(newPosition - diff);
} else {
viewport.scrollTop(newPosition);
}
-
viewport.synthetic = null;
});
return true;
}
-
viewport.synthetic = null;
}
-
function resizeAndScrollHandler() {
if (handleInertia && fixInertia()) {
return;
}
-
if (!$rootScope.$$phase && !adapter.isLoading && !adapter.disabled) {
enqueueFetch(ridActual);
-
if (pending.length) {
unbindEvents();
} else {
@@ -1881,12 +1578,10 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
}
}
}
-
function wheelHandler(event) {
if (!adapter.disabled) {
var scrollTop = viewport[0].scrollTop;
var yMax = viewport[0].scrollHeight - viewport[0].clientHeight;
-
if (scrollTop === 0 && !buffer.bof || scrollTop === yMax && !buffer.eof) {
event.preventDefault();
}
@@ -1894,7 +1589,6 @@ angular.module('ui.scroll', []).constant('JQLiteExtras', jqLiteExtras_JQLiteExtr
}
}
}]);
-
-/***/ })
-/******/ ]);
+/******/ })()
+;
//# sourceMappingURL=ui-scroll.js.map
\ No newline at end of file
diff --git a/dist/ui-scroll.js.map b/dist/ui-scroll.js.map
index e7ab38f1..d509e2ec 100644
--- a/dist/ui-scroll.js.map
+++ b/dist/ui-scroll.js.map
@@ -1 +1 @@
-{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/modules/jqLiteExtras.js","webpack:///./src/modules/elementRoutines.js","webpack:///./src/modules/utils.js","webpack:///./src/modules/buffer.js","webpack:///./src/modules/padding.js","webpack:///./src/modules/viewport.js","webpack:///./src/modules/adapter.js","webpack:///./src/ui-scroll.js"],"names":["JQLiteExtras","element","convertToPx","css","getStyle","isWindow","angular","prototype","name","value","self","elem","nodeType","style","call","obj","document","location","alert","setInterval","scrollTo","direction","top","left","method","prop","preserve","isValueDefined","documentElement","window","getComputedStyle","parseFloat","currentStyle","result","rs","rsLeft","core_pnum","source","rnumnonpx","RegExp","test","runtimeStyle","pixelLeft","getMeasurements","measure","base","borderA","borderB","computedMarginA","computedMarginB","computedStyle","dirA","dirB","marginA","marginB","paddingA","paddingB","height","width","padding","border","margin","offsetWidth","offsetHeight","getWidthHeight","measurements","outer","outerfull","forEach","before","newElem","children","i","j","parent","ref","contents","prepend","length","after","Error","outerHTML","isNumber","outerHeight","option","outerWidth","offset","docElem","win","box","doc","ownerDocument","arguments","undefined","getBoundingClientRect","defaultView","parentWindow","pageYOffset","scrollTop","clientTop","pageXOffset","scrollLeft","clientLeft","key","hideClassToken","ElementRoutines","selector","rules","sheet","styleSheets","index","cssRules","err","insertRule","addRule","$injector","$q","$animate","has","get","isAngularVersionLessThen1_3","version","major","minor","wrapper","addClass","removeClass","newElement","previousElement","remove","scope","$destroy","insertElement","deferred","defer","enter","resolve","promise","removeElement","leave","then","OPERATIONS","PREPEND","APPEND","INSERT","REMOVE","NONE","ScrollBuffer","elementRoutines","bufferSize","startIndex","buffer","Object","create","Array","extend","size","reset","eof","bof","first","next","minIndex","maxIndex","minIndexUser","maxIndexUser","append","items","item","insert","Math","max","immutableTop","reverse","min","operation","shiftTop","op","splice","push","unshift","arg1","arg2","indexOf","getAbsMinIndex","incrementMinIndex","decrementMaxIndex","removeElementAnimated","getAbsMaxIndex","effectiveHeight","elements","Number","MAX_VALUE","bottom","NEGATIVE_INFINITY","offsetParent","getItems","filter","getFirstItem","list","getLastItem","CacheProto","$index","sort","a","b","argument","_shiftTop","Cache","instance","apply","setPrototypeOf","getOwnPropertyNames","methodName","generateElement","template","Node","ELEMENT_NODE","tagName","toLowerCase","table","find","Padding","cache","Viewport","viewportController","$rootScope","topPadding","bottomPadding","viewport","container","bufferPadding","getScope","createPaddingElements","applyContainerStyle","bottomDataPos","scrollHeight","topDataPos","bottomVisiblePos","topVisiblePos","e","sibling","insertElementAnimated","shouldLoadBottom","clipBottom","overage","overageHeight","itemHeight","emptySpaceHeight","add","adjustPaddings","shouldLoadTop","clipTop","visibleItemsHeight","reduce","summ","topPaddingHeight","topCount","bottomPaddingHeight","bottomCount","totalHeight","averageItemHeight","adjustTopPadding","adjustBottomPadding","topPaddingHeightAdd","bottomPaddingHeightAdd","onAfterMinIndexSet","topPaddingHeightOld","diff","onAfterPrepend","updates","prepended","paddingHeight","position","newPosition","synthetic","previous","resetTopPadding","clear","resetBottomPadding","removeCacheItem","removeItem","Adapter","$scope","$parse","$attr","doAdjust","reload","isLoading","disabled","viewportScope","startScope","$parent","publicContext","assignAdapter","adapter","generatePublicContext","adapterAttr","replace","adapterOnScope","assign","error","message","publicMethods","bind","publicProps","property","attr","defineProperty","set","publicPropsImmediate","newItems","options","arg3","applyUpdatesFunc","applyUpdatesIndex","cb","slice","applyUpdate","_index","isArray","some","newItem","rowTop","topHeight","topDone","bottomDone","itemTop","isEOF","module","constant","run","elt","jQuery","fn","jquery","registerFor","addCSSRules","directive","restrict","controller","child","console","$timeout","$interval","require","transclude","priority","terminal","link","controllers","linker","match","uiScroll","parseNumber","defaultValue","isFloat","floor","isNaN","parseNumericAttr","parseBooleanAttr","BUFFER_MIN","BUFFER_DEFAULT","PADDING_MIN","PADDING_DEFAULT","HANDLE_INERTIA_DEFAULT","START_INDEX_DEFAULT","MAX_VIEWPORT_DELAY","VIEWPORT_POLLING_INTERVAL","datasource","itemName","datasourceName","handleInertia","ridActual","pending","isDatasourceValid","toString","onRenderHandlers","onRenderHandlersRunner","handler","persistDatasourceIndex","propName","getter","id","defineDatasourceIndex","propUserName","descriptor","getOwnPropertyDescriptor","fetchNext","success","count","fetchPrevious","initialize","tryCount","timer","cancel","clone","$on","unbindEvents","off","wheelHandler","on","isInvalid","rid","$$destroyed","bindEvents","resizeAndScrollHandler","isElementVisible","visibilityWatcher","unregisterVisibilityWatcher","insertWrapperContent","insertAfter","createElement","$watch","hideElement","promises","transform","tdInitializer","uiScrollTdInitializer","linking","onLink","updateDOM","toBePrepended","toBeRemoved","inserted","concat","removed","animated","updatePaddings","all","enqueueFetch","loading","fetch","processUpdates","$$phase","$digest","w","showElement","calculateProperties","doAdjustAfterFetch","shift","fixInertia","oldPosition","requestAnimationFrame","event","yMax","clientHeight","preventDefault"],"mappings":"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","file":"ui-scroll.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 1);\n","/*!\r\n globals: angular, window\r\n List of used element methods available in JQuery but not in JQuery Lite\r\n element.before(elem)\r\n element.height()\r\n element.outerHeight(true)\r\n element.height(value) = only for Top/Bottom padding elements\r\n element.scrollTop()\r\n element.scrollTop(value)\r\n */\r\n\r\nexport default class JQLiteExtras {\r\n\r\n registerFor(element) {\r\n let convertToPx, css, getStyle, isWindow;\r\n // angular implementation blows up if elem is the window\r\n css = angular.element.prototype.css;\r\n\r\n element.prototype.css = function (name, value) {\r\n let self = this;\r\n let elem = self[0];\r\n if (!(!elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style)) {\r\n return css.call(self, name, value);\r\n }\r\n };\r\n\r\n // as defined in angularjs v1.0.5\r\n isWindow = (obj) => obj && obj.document && obj.location && obj.alert && obj.setInterval;\r\n\r\n function scrollTo(self, direction, value) {\r\n let elem = self[0];\r\n let [method, prop, preserve] = {\r\n top: [\r\n 'scrollTop',\r\n 'pageYOffset',\r\n 'scrollLeft'\r\n ],\r\n left: [\r\n 'scrollLeft',\r\n 'pageXOffset',\r\n 'scrollTop'\r\n ]\r\n }[direction];\r\n\r\n const isValueDefined = typeof value !== 'undefined';\r\n if (isWindow(elem)) {\r\n if (isValueDefined) {\r\n return elem.scrollTo(self[preserve].call(self), value);\r\n }\r\n return (prop in elem) ? elem[prop] : elem.document.documentElement[method];\r\n } else {\r\n if (isValueDefined) {\r\n elem[method] = value;\r\n }\r\n return elem[method];\r\n }\r\n }\r\n\r\n if (window.getComputedStyle) {\r\n getStyle = (elem) => window.getComputedStyle(elem, null);\r\n convertToPx = (elem, value) => parseFloat(value);\r\n } else {\r\n getStyle = (elem) => elem.currentStyle;\r\n convertToPx = (elem, value) => {\r\n let left, result, rs, rsLeft, style;\r\n let core_pnum = /[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/.source;\r\n let rnumnonpx = new RegExp('^(' + core_pnum + ')(?!px)[a-z%]+$', 'i');\r\n\r\n if (!rnumnonpx.test(value)) {\r\n return parseFloat(value);\r\n }\r\n\r\n // ported from JQuery\r\n style = elem.style;\r\n left = style.left;\r\n rs = elem.runtimeStyle;\r\n rsLeft = rs && rs.left;\r\n if (rs) {\r\n rs.left = style.left;\r\n }\r\n // put in the new values to get a computed style out\r\n style.left = value;\r\n result = style.pixelLeft;\r\n style.left = left;\r\n if (rsLeft) {\r\n rs.left = rsLeft;\r\n }\r\n return result;\r\n };\r\n }\r\n\r\n function getMeasurements(elem, measure) {\r\n let base, borderA, borderB, computedMarginA, computedMarginB, computedStyle, dirA, dirB, marginA, marginB, paddingA, paddingB;\r\n\r\n if (isWindow(elem)) {\r\n base = document.documentElement[{height: 'clientHeight', width: 'clientWidth'}[measure]];\r\n\r\n return {\r\n base: base,\r\n padding: 0,\r\n border: 0,\r\n margin: 0\r\n };\r\n }\r\n\r\n // Start with offset property\r\n [\r\n base,\r\n dirA,\r\n dirB\r\n ] = {\r\n width: [\r\n elem.offsetWidth,\r\n 'Left',\r\n 'Right'\r\n ],\r\n height: [\r\n elem.offsetHeight,\r\n 'Top',\r\n 'Bottom'\r\n ]\r\n }[measure];\r\n\r\n computedStyle = getStyle(elem);\r\n paddingA = convertToPx(elem, computedStyle['padding' + dirA]) || 0;\r\n paddingB = convertToPx(elem, computedStyle['padding' + dirB]) || 0;\r\n borderA = convertToPx(elem, computedStyle['border' + dirA + 'Width']) || 0;\r\n borderB = convertToPx(elem, computedStyle['border' + dirB + 'Width']) || 0;\r\n computedMarginA = computedStyle['margin' + dirA];\r\n computedMarginB = computedStyle['margin' + dirB];\r\n\r\n // I do not care for width for now, so this hack is irrelevant\r\n // if ( !supportsPercentMargin )\r\n // computedMarginA = hackPercentMargin( elem, computedStyle, computedMarginA )\r\n // computedMarginB = hackPercentMargin( elem, computedStyle, computedMarginB )\r\n marginA = convertToPx(elem, computedMarginA) || 0;\r\n marginB = convertToPx(elem, computedMarginB) || 0;\r\n\r\n return {\r\n base: base,\r\n padding: paddingA + paddingB,\r\n border: borderA + borderB,\r\n margin: marginA + marginB\r\n };\r\n }\r\n\r\n function getWidthHeight(elem, direction, measure) {\r\n let computedStyle, result;\r\n\r\n let measurements = getMeasurements(elem, direction);\r\n\r\n if (measurements.base > 0) {\r\n return {\r\n base: measurements.base - measurements.padding - measurements.border,\r\n outer: measurements.base,\r\n outerfull: measurements.base + measurements.margin\r\n }[measure];\r\n }\r\n\r\n // Fall back to computed then uncomputed css if necessary\r\n computedStyle = getStyle(elem);\r\n result = computedStyle[direction];\r\n\r\n if (result < 0 || result === null) {\r\n result = elem.style[direction] || 0;\r\n }\r\n\r\n // Normalize \"\", auto, and prepare for extra\r\n result = parseFloat(result) || 0;\r\n\r\n return {\r\n base: result - measurements.padding - measurements.border,\r\n outer: result,\r\n outerfull: result + measurements.padding + measurements.border + measurements.margin\r\n }[measure];\r\n }\r\n\r\n // define missing methods\r\n return angular.forEach({\r\n before(newElem) {\r\n var children, elem, i, j, parent, ref, self;\r\n self = this;\r\n elem = self[0];\r\n parent = self.parent();\r\n children = parent.contents();\r\n if (children[0] === elem) {\r\n return parent.prepend(newElem);\r\n } else {\r\n for (i = j = 1, ref = children.length - 1; 1 <= ref ? j <= ref : j >= ref; i = 1 <= ref ? ++j : --j) {\r\n if (children[i] === elem) {\r\n angular.element(children[i - 1]).after(newElem);\r\n return;\r\n }\r\n }\r\n throw new Error('invalid DOM structure ' + elem.outerHTML);\r\n }\r\n },\r\n height (value){\r\n var self;\r\n self = this;\r\n if (typeof value !== 'undefined') {\r\n if (angular.isNumber(value)) {\r\n value = value + 'px';\r\n }\r\n return css.call(self, 'height', value);\r\n } else {\r\n return getWidthHeight(this[0], 'height', 'base');\r\n }\r\n },\r\n outerHeight(option) {\r\n return getWidthHeight(this[0], 'height', option ? 'outerfull' : 'outer');\r\n },\r\n outerWidth(option) {\r\n return getWidthHeight(this[0], 'width', option ? 'outerfull' : 'outer');\r\n },\r\n\r\n /*\r\n The offset setter method is not implemented\r\n */\r\n offset(value) {\r\n let docElem, win;\r\n let self = this;\r\n let box = {\r\n top: 0,\r\n left: 0\r\n };\r\n let elem = self[0];\r\n let doc = elem && elem.ownerDocument;\r\n\r\n if (arguments.length) {\r\n if (value === undefined) {\r\n return self;\r\n }\r\n // TODO: implement setter\r\n throw new Error('offset setter method is not implemented');\r\n }\r\n\r\n if (!doc) {\r\n return;\r\n }\r\n\r\n docElem = doc.documentElement;\r\n\r\n // TODO: Make sure it's not a disconnected DOM node\r\n\r\n if (elem.getBoundingClientRect != null) {\r\n box = elem.getBoundingClientRect();\r\n }\r\n\r\n win = doc.defaultView || doc.parentWindow;\r\n\r\n return {\r\n top: box.top + (win.pageYOffset || docElem.scrollTop) - (docElem.clientTop || 0),\r\n left: box.left + (win.pageXOffset || docElem.scrollLeft) - (docElem.clientLeft || 0)\r\n };\r\n },\r\n scrollTop(value) {\r\n return scrollTo(this, 'top', value);\r\n },\r\n scrollLeft(value) {\r\n return scrollTo(this, 'left', value);\r\n }\r\n }, (value, key) => {\r\n if (!element.prototype[key]) {\r\n return element.prototype[key] = value;\r\n }\r\n });\r\n }\r\n\r\n}\r\n","const hideClassToken = 'ng-ui-scroll-hide';\r\n\r\nexport default class ElementRoutines {\r\n\r\n static addCSSRules() {\r\n const selector = '.' + hideClassToken;\r\n const rules = 'display: none';\r\n const sheet = document.styleSheets[0];\r\n let index;\r\n try {\r\n index = sheet.cssRules.length;\r\n } catch (err) {\r\n index = 0;\r\n }\r\n if('insertRule' in sheet) {\r\n sheet.insertRule(selector + '{' + rules + '}', index);\r\n }\r\n else if('addRule' in sheet) {\r\n sheet.addRule(selector, rules, index);\r\n }\r\n }\r\n\r\n constructor($injector, $q) {\r\n this.$animate = ($injector.has && $injector.has('$animate')) ? $injector.get('$animate') : null;\r\n this.isAngularVersionLessThen1_3 = angular.version.major === 1 && angular.version.minor < 3;\r\n this.$q = $q;\r\n }\r\n\r\n hideElement(wrapper) {\r\n wrapper.element.addClass(hideClassToken);\r\n }\r\n\r\n showElement(wrapper) {\r\n wrapper.element.removeClass(hideClassToken);\r\n }\r\n\r\n insertElement(newElement, previousElement) {\r\n previousElement.after(newElement);\r\n return [];\r\n }\r\n\r\n removeElement(wrapper) {\r\n wrapper.element.remove();\r\n wrapper.scope.$destroy();\r\n return [];\r\n }\r\n\r\n insertElementAnimated(newElement, previousElement) {\r\n if (!this.$animate) {\r\n return this.insertElement(newElement, previousElement);\r\n }\r\n\r\n if (this.isAngularVersionLessThen1_3) {\r\n const deferred = this.$q.defer();\r\n // no need for parent - previous element is never null\r\n this.$animate.enter(newElement, null, previousElement, () => deferred.resolve());\r\n\r\n return [deferred.promise];\r\n }\r\n\r\n // no need for parent - previous element is never null\r\n return [this.$animate.enter(newElement, null, previousElement)];\r\n }\r\n\r\n removeElementAnimated(wrapper) {\r\n if (!this.$animate) {\r\n return this.removeElement(wrapper);\r\n }\r\n\r\n if (this.isAngularVersionLessThen1_3) {\r\n const deferred = this.$q.defer();\r\n this.$animate.leave(wrapper.element, () => {\r\n wrapper.scope.$destroy();\r\n return deferred.resolve();\r\n });\r\n\r\n return [deferred.promise];\r\n }\r\n\r\n return [(this.$animate.leave(wrapper.element)).then(() => wrapper.scope.$destroy())];\r\n }\r\n}","export const OPERATIONS = {\r\n PREPEND: 'prepend',\r\n APPEND: 'append',\r\n INSERT: 'insert',\r\n REMOVE: 'remove',\r\n NONE: 'none'\r\n};\r\n","import { OPERATIONS } from './utils';\r\n\r\nexport default function ScrollBuffer(elementRoutines, bufferSize, startIndex) {\r\n const buffer = Object.create(Array.prototype);\r\n\r\n angular.extend(buffer, {\r\n size: bufferSize,\r\n\r\n reset(startIndex) {\r\n buffer.remove(0, buffer.length);\r\n buffer.eof = false;\r\n buffer.bof = false;\r\n buffer.first = startIndex;\r\n buffer.next = startIndex;\r\n buffer.minIndex = startIndex;\r\n buffer.maxIndex = startIndex;\r\n buffer.minIndexUser = null;\r\n buffer.maxIndexUser = null;\r\n },\r\n\r\n append(items) {\r\n items.forEach((item) => {\r\n ++buffer.next;\r\n buffer.insert(OPERATIONS.APPEND, item);\r\n });\r\n buffer.maxIndex = buffer.eof ? buffer.next - 1 : Math.max(buffer.next - 1, buffer.maxIndex);\r\n },\r\n\r\n prepend(items, immutableTop) {\r\n items.reverse().forEach((item) => {\r\n if (immutableTop) {\r\n ++buffer.next;\r\n }\r\n else {\r\n --buffer.first;\r\n }\r\n buffer.insert(OPERATIONS.PREPEND, item);\r\n });\r\n buffer.minIndex = buffer.bof ? buffer.minIndex = buffer.first : Math.min(buffer.first, buffer.minIndex);\r\n },\r\n\r\n /**\r\n * inserts wrapped element in the buffer\r\n * the first argument is either operation keyword (see below) or a number for operation 'insert'\r\n * for insert the number is the index for the buffer element the new one have to be inserted after\r\n * operations: 'append', 'prepend', 'insert', 'remove', 'none'\r\n */\r\n insert(operation, item, shiftTop) {\r\n const wrapper = {\r\n item: item\r\n };\r\n\r\n if (operation % 1 === 0) { // it is an insert\r\n wrapper.op = OPERATIONS.INSERT;\r\n buffer.splice(operation, 0, wrapper);\r\n if (shiftTop) {\r\n buffer.first--;\r\n }\r\n else {\r\n buffer.next++;\r\n }\r\n } else {\r\n wrapper.op = operation;\r\n switch (operation) {\r\n case OPERATIONS.APPEND:\r\n buffer.push(wrapper);\r\n break;\r\n case OPERATIONS.PREPEND:\r\n buffer.unshift(wrapper);\r\n break;\r\n }\r\n }\r\n },\r\n\r\n // removes elements from buffer\r\n remove(arg1, arg2) {\r\n if (angular.isNumber(arg1)) {\r\n // removes items from arg1 (including) through arg2 (excluding)\r\n for (let i = arg1; i < arg2; i++) {\r\n elementRoutines.removeElement(buffer[i]);\r\n }\r\n return buffer.splice(arg1, arg2 - arg1);\r\n }\r\n // removes single item (wrapper) from the buffer\r\n buffer.splice(buffer.indexOf(arg1), 1);\r\n if (arg1.shiftTop && buffer.first === this.getAbsMinIndex()) {\r\n this.incrementMinIndex();\r\n }\r\n else {\r\n this.decrementMaxIndex();\r\n }\r\n if (arg1.shiftTop) {\r\n buffer.first++;\r\n }\r\n else {\r\n buffer.next--;\r\n }\r\n if (!buffer.length) {\r\n buffer.minIndex = Math.min(buffer.maxIndex, buffer.minIndex);\r\n }\r\n\r\n return elementRoutines.removeElementAnimated(arg1);\r\n },\r\n\r\n incrementMinIndex() {\r\n if (buffer.minIndexUser !== null) {\r\n if (buffer.minIndex > buffer.minIndexUser) {\r\n buffer.minIndexUser++;\r\n return;\r\n }\r\n if (buffer.minIndex === buffer.minIndexUser) {\r\n buffer.minIndexUser++;\r\n }\r\n }\r\n buffer.minIndex++;\r\n },\r\n\r\n decrementMaxIndex() {\r\n if (buffer.maxIndexUser !== null && buffer.maxIndex <= buffer.maxIndexUser) {\r\n buffer.maxIndexUser--;\r\n }\r\n buffer.maxIndex--;\r\n },\r\n\r\n getAbsMinIndex() {\r\n if (buffer.minIndexUser !== null) {\r\n return Math.min(buffer.minIndexUser, buffer.minIndex);\r\n }\r\n return buffer.minIndex;\r\n },\r\n\r\n getAbsMaxIndex() {\r\n if (buffer.maxIndexUser !== null) {\r\n return Math.max(buffer.maxIndexUser, buffer.maxIndex);\r\n }\r\n return buffer.maxIndex;\r\n },\r\n\r\n effectiveHeight(elements) {\r\n if (!elements.length) {\r\n return 0;\r\n }\r\n let top = Number.MAX_VALUE;\r\n let bottom = Number.NEGATIVE_INFINITY;\r\n elements.forEach((wrapper) => {\r\n if (wrapper.element[0].offsetParent) {\r\n // element style is not display:none\r\n top = Math.min(top, wrapper.element.offset().top);\r\n bottom = Math.max(bottom, wrapper.element.offset().top + wrapper.element.outerHeight(true));\r\n }\r\n });\r\n return Math.max(0, bottom - top);\r\n },\r\n\r\n getItems() {\r\n return buffer.filter(item => item.op === OPERATIONS.NONE);\r\n },\r\n\r\n getFirstItem() {\r\n const list = buffer.getItems();\r\n if (!list.length) {\r\n return null;\r\n }\r\n return list[0].item;\r\n },\r\n\r\n getLastItem() {\r\n const list = buffer.getItems();\r\n if (!list.length) {\r\n return null;\r\n }\r\n return list[list.length - 1].item;\r\n }\r\n\r\n });\r\n\r\n buffer.reset(startIndex);\r\n\r\n return buffer;\r\n}\r\n","// Can't just extend the Array, due to Babel does not support built-in classes extending\r\n// This solution was taken from https://stackoverflow.com/questions/46897414/es6-class-extends-array-workaround-for-es5-babel-transpile\r\nclass CacheProto {\r\n add(item) {\r\n for (let i = this.length - 1; i >= 0; i--) {\r\n if (this[i].index === item.scope.$index) {\r\n this[i].height = item.element.outerHeight();\r\n return;\r\n }\r\n }\r\n this.push({\r\n index: item.scope.$index,\r\n height: item.element.outerHeight()\r\n });\r\n this.sort((a, b) => ((a.index < b.index) ? -1 : ((a.index > b.index) ? 1 : 0)));\r\n }\r\n\r\n remove(argument, _shiftTop) {\r\n const index = argument % 1 === 0 ? argument : argument.scope.$index;\r\n const shiftTop = argument % 1 === 0 ? _shiftTop : argument.shiftTop;\r\n for (let i = this.length - 1; i >= 0; i--) {\r\n if (this[i].index === index) {\r\n this.splice(i, 1);\r\n break;\r\n }\r\n }\r\n if (!shiftTop) {\r\n for (let i = this.length - 1; i >= 0; i--) {\r\n if (this[i].index > index) {\r\n this[i].index--;\r\n }\r\n }\r\n }\r\n }\r\n\r\n clear() {\r\n this.length = 0;\r\n }\r\n}\r\n\r\nfunction Cache() {\r\n const instance = [];\r\n instance.push.apply(instance, arguments);\r\n Object.setPrototypeOf(instance, Cache.prototype);\r\n return instance;\r\n}\r\nCache.prototype = Object.create(Array.prototype);\r\nObject.getOwnPropertyNames(CacheProto.prototype).forEach(methodName =>\r\n Cache.prototype[methodName] = CacheProto.prototype[methodName]\r\n);\r\n\r\nfunction generateElement(template) {\r\n if (template.nodeType !== Node.ELEMENT_NODE) {\r\n throw new Error('ui-scroll directive requires an Element node for templating the view');\r\n }\r\n let element;\r\n switch (template.tagName.toLowerCase()) {\r\n case 'dl':\r\n throw new Error(`ui-scroll directive does not support <${template.tagName}> as a repeating tag: ${template.outerHTML}`);\r\n case 'tr':\r\n let table = angular.element('');\r\n element = table.find('tr');\r\n break;\r\n case 'li':\r\n element = angular.element('');\r\n break;\r\n default:\r\n element = angular.element('');\r\n }\r\n return element;\r\n}\r\n\r\nclass Padding {\r\n constructor(template) {\r\n this.element = generateElement(template);\r\n this.cache = new Cache();\r\n }\r\n\r\n height() {\r\n return this.element.height.apply(this.element, arguments);\r\n }\r\n}\r\n\r\nexport default Padding;","import Padding from './padding';\r\n\r\nexport default function Viewport(elementRoutines, buffer, element, viewportController, $rootScope, padding) {\r\n let topPadding = null;\r\n let bottomPadding = null;\r\n const viewport = viewportController && viewportController.viewport ? viewportController.viewport : angular.element(window);\r\n const container = viewportController && viewportController.container ? viewportController.container : undefined;\r\n const scope = viewportController && viewportController.scope ? viewportController.scope : $rootScope;\r\n\r\n viewport.css({\r\n 'overflow-anchor': 'none',\r\n 'overflow-y': 'auto',\r\n 'display': 'block'\r\n });\r\n\r\n function bufferPadding() {\r\n return viewport.outerHeight() * padding; // some extra space to initiate preload\r\n }\r\n\r\n angular.extend(viewport, {\r\n getScope() {\r\n return scope;\r\n },\r\n\r\n createPaddingElements(template) {\r\n topPadding = new Padding(template);\r\n bottomPadding = new Padding(template);\r\n element.before(topPadding.element);\r\n element.after(bottomPadding.element);\r\n topPadding.height(0);\r\n bottomPadding.height(0);\r\n },\r\n\r\n applyContainerStyle() {\r\n if (!container) {\r\n return true;\r\n }\r\n if (container !== viewport) {\r\n viewport.css('height', window.getComputedStyle(container[0]).height);\r\n }\r\n return viewport.height() > 0;\r\n },\r\n\r\n bottomDataPos() {\r\n let scrollHeight = viewport[0].scrollHeight;\r\n scrollHeight = scrollHeight != null ? scrollHeight : viewport[0].document.documentElement.scrollHeight;\r\n return scrollHeight - bottomPadding.height();\r\n },\r\n\r\n topDataPos() {\r\n return topPadding.height();\r\n },\r\n\r\n bottomVisiblePos() {\r\n return viewport.scrollTop() + viewport.outerHeight();\r\n },\r\n\r\n topVisiblePos() {\r\n return viewport.scrollTop();\r\n },\r\n\r\n insertElement(e, sibling) {\r\n return elementRoutines.insertElement(e, sibling || topPadding.element);\r\n },\r\n\r\n insertElementAnimated(e, sibling) {\r\n return elementRoutines.insertElementAnimated(e, sibling || topPadding.element);\r\n },\r\n\r\n shouldLoadBottom() {\r\n return !buffer.eof && viewport.bottomDataPos() < viewport.bottomVisiblePos() + bufferPadding();\r\n },\r\n\r\n clipBottom() {\r\n // clip the invisible items off the bottom\r\n let overage = 0;\r\n let overageHeight = 0;\r\n let itemHeight = 0;\r\n let emptySpaceHeight = viewport.bottomDataPos() - viewport.bottomVisiblePos() - bufferPadding();\r\n\r\n for (let i = buffer.length - 1; i >= 0; i--) {\r\n itemHeight = buffer[i].element.outerHeight(true);\r\n if (overageHeight + itemHeight > emptySpaceHeight) {\r\n break;\r\n }\r\n bottomPadding.cache.add(buffer[i]);\r\n overageHeight += itemHeight;\r\n overage++;\r\n }\r\n\r\n if (overage > 0) {\r\n buffer.eof = false;\r\n buffer.remove(buffer.length - overage, buffer.length);\r\n buffer.next -= overage;\r\n viewport.adjustPaddings();\r\n }\r\n },\r\n\r\n shouldLoadTop() {\r\n return !buffer.bof && (viewport.topDataPos() > viewport.topVisiblePos() - bufferPadding());\r\n },\r\n\r\n clipTop() {\r\n // clip the invisible items off the top\r\n let overage = 0;\r\n let overageHeight = 0;\r\n let itemHeight = 0;\r\n let emptySpaceHeight = viewport.topVisiblePos() - viewport.topDataPos() - bufferPadding();\r\n\r\n for (let i = 0; i < buffer.length; i++) {\r\n itemHeight = buffer[i].element.outerHeight(true);\r\n if (overageHeight + itemHeight > emptySpaceHeight) {\r\n break;\r\n }\r\n topPadding.cache.add(buffer[i]);\r\n overageHeight += itemHeight;\r\n overage++;\r\n }\r\n\r\n if (overage > 0) {\r\n // we need to adjust top padding element before items are removed from top\r\n // to avoid strange behaviour of scroll bar during remove top items when we are at the very bottom\r\n topPadding.height(topPadding.height() + overageHeight);\r\n buffer.bof = false;\r\n buffer.remove(0, overage);\r\n buffer.first += overage;\r\n }\r\n },\r\n\r\n adjustPaddings() {\r\n if (!buffer.length) {\r\n return;\r\n }\r\n\r\n // precise heights calculation based on items that are in buffer or that were in buffer once\r\n const visibleItemsHeight = buffer.reduce((summ, item) => summ + item.element.outerHeight(true), 0);\r\n\r\n let topPaddingHeight = 0, topCount = 0;\r\n topPadding.cache.forEach(item => {\r\n if (item.index < buffer.first) {\r\n topPaddingHeight += item.height;\r\n topCount++;\r\n }\r\n });\r\n\r\n let bottomPaddingHeight = 0, bottomCount = 0;\r\n bottomPadding.cache.forEach(item => {\r\n if (item.index >= buffer.next) {\r\n bottomPaddingHeight += item.height;\r\n bottomCount++;\r\n }\r\n });\r\n\r\n const totalHeight = visibleItemsHeight + topPaddingHeight + bottomPaddingHeight;\r\n const averageItemHeight = totalHeight / (topCount + bottomCount + buffer.length);\r\n\r\n // average heights calculation, items that have never been reached\r\n let adjustTopPadding = buffer.minIndexUser !== null && buffer.minIndex > buffer.minIndexUser;\r\n let adjustBottomPadding = buffer.maxIndexUser !== null && buffer.maxIndex < buffer.maxIndexUser;\r\n let topPaddingHeightAdd = adjustTopPadding ? (buffer.minIndex - buffer.minIndexUser) * averageItemHeight : 0;\r\n let bottomPaddingHeightAdd = adjustBottomPadding ? (buffer.maxIndexUser - buffer.maxIndex) * averageItemHeight : 0;\r\n\r\n // paddings combine adjustment\r\n topPadding.height(topPaddingHeight + topPaddingHeightAdd);\r\n bottomPadding.height(bottomPaddingHeight + bottomPaddingHeightAdd);\r\n },\r\n\r\n onAfterMinIndexSet(topPaddingHeightOld) {\r\n // additional scrollTop adjustment in case of datasource.minIndex external set\r\n if (buffer.minIndexUser !== null && buffer.minIndex > buffer.minIndexUser) {\r\n let diff = topPadding.height() - topPaddingHeightOld;\r\n viewport.scrollTop(viewport.scrollTop() + diff);\r\n while((diff -= viewport.scrollTop()) > 0) {\r\n bottomPadding.height(bottomPadding.height() + diff);\r\n viewport.scrollTop(viewport.scrollTop() + diff);\r\n }\r\n }\r\n },\r\n\r\n onAfterPrepend(updates) {\r\n if (!updates.prepended.length) {\r\n return;\r\n }\r\n const height = buffer.effectiveHeight(updates.prepended);\r\n const paddingHeight = topPadding.height() - height;\r\n if (paddingHeight >= 0) {\r\n topPadding.height(paddingHeight);\r\n return;\r\n }\r\n const position = viewport.scrollTop();\r\n const newPosition = position - paddingHeight;\r\n viewport.synthetic = { previous: position, next: newPosition };\r\n topPadding.height(0);\r\n viewport.scrollTop(newPosition);\r\n },\r\n\r\n resetTopPadding() {\r\n topPadding.height(0);\r\n topPadding.cache.clear();\r\n },\r\n\r\n resetBottomPadding() {\r\n bottomPadding.height(0);\r\n bottomPadding.cache.clear();\r\n },\r\n\r\n removeCacheItem(item, shiftTop) {\r\n topPadding.cache.remove(item, shiftTop);\r\n bottomPadding.cache.remove(item, shiftTop);\r\n },\r\n\r\n removeItem(item) {\r\n this.removeCacheItem(item);\r\n return buffer.remove(item);\r\n }\r\n });\r\n\r\n return viewport;\r\n}\r\n","import { OPERATIONS } from './utils';\r\n\r\nclass Adapter {\r\n\r\n constructor($scope, $parse, $attr, viewport, buffer, doAdjust, reload) {\r\n this.$parse = $parse;\r\n this.$attr = $attr;\r\n this.viewport = viewport;\r\n this.buffer = buffer;\r\n\r\n this.doAdjust = doAdjust;\r\n this.reload = reload;\r\n\r\n this.isLoading = false;\r\n this.disabled = false;\r\n\r\n const viewportScope = viewport.getScope();\r\n this.startScope = viewportScope.$parent ? viewportScope : $scope;\r\n\r\n this.publicContext = {};\r\n this.assignAdapter($attr.adapter);\r\n this.generatePublicContext();\r\n }\r\n\r\n assignAdapter(adapterAttr) {\r\n if (!adapterAttr || !(adapterAttr = adapterAttr.replace(/^\\s+|\\s+$/gm, ''))) {\r\n return;\r\n }\r\n let adapterOnScope;\r\n\r\n try {\r\n this.$parse(adapterAttr).assign(this.startScope, {});\r\n adapterOnScope = this.$parse(adapterAttr)(this.startScope);\r\n }\r\n catch (error) {\r\n error.message = `Angular ui-scroll Adapter assignment exception.\\n` +\r\n `Can't parse \"${adapterAttr}\" expression.\\n` +\r\n error.message;\r\n throw error;\r\n }\r\n\r\n angular.extend(adapterOnScope, this.publicContext);\r\n this.publicContext = adapterOnScope;\r\n }\r\n\r\n generatePublicContext() {\r\n // these methods will be accessible out of ui-scroll via user defined adapter\r\n const publicMethods = ['reload', 'applyUpdates', 'append', 'prepend', 'isBOF', 'isEOF', 'isEmpty'];\r\n for (let i = publicMethods.length - 1; i >= 0; i--) {\r\n this.publicContext[publicMethods[i]] = this[publicMethods[i]].bind(this);\r\n }\r\n\r\n // these read-only props will be accessible out of ui-scroll via user defined adapter\r\n const publicProps = ['isLoading', 'topVisible', 'topVisibleElement', 'topVisibleScope', 'bottomVisible', 'bottomVisibleElement', 'bottomVisibleScope'];\r\n for (let i = publicProps.length - 1; i >= 0; i--) {\r\n let property, attr = this.$attr[publicProps[i]];\r\n Object.defineProperty(this, publicProps[i], {\r\n get: () => property,\r\n set: (value) => {\r\n property = value;\r\n this.publicContext[publicProps[i]] = value;\r\n if (attr) {\r\n this.$parse(attr).assign(this.startScope, value);\r\n }\r\n }\r\n });\r\n }\r\n\r\n // read-only immediately calculated public properties\r\n const publicPropsImmediate = ['bufferFirst', 'bufferLast', 'bufferLength'];\r\n for (let i = publicPropsImmediate.length - 1; i >= 0; i--) {\r\n Object.defineProperty(this.publicContext, publicPropsImmediate[i], {\r\n get: () => this[publicPropsImmediate[i]]\r\n });\r\n }\r\n\r\n // non-read-only public property\r\n Object.defineProperty(this.publicContext, 'disabled', {\r\n get: () => this.disabled,\r\n set: (value) => (!(this.disabled = value)) ? this.doAdjust() : null\r\n });\r\n }\r\n\r\n loading(value) {\r\n this.isLoading = value;\r\n }\r\n\r\n isBOF() {\r\n return this.buffer.bof;\r\n }\r\n\r\n isEOF() {\r\n return this.buffer.eof;\r\n }\r\n\r\n isEmpty() {\r\n return !this.buffer.length;\r\n }\r\n\r\n get bufferLength() {\r\n return this.buffer.getItems().length;\r\n }\r\n\r\n get bufferFirst() {\r\n return this.buffer.getFirstItem();\r\n }\r\n\r\n get bufferLast() {\r\n return this.buffer.getLastItem();\r\n }\r\n\r\n append(newItems) {\r\n this.buffer.append(newItems);\r\n this.doAdjust();\r\n this.viewport.clipTop();\r\n this.viewport.clipBottom();\r\n }\r\n\r\n prepend(newItems, options = {}) {\r\n this.buffer.prepend(newItems, options.immutableTop);\r\n this.doAdjust();\r\n this.viewport.clipTop();\r\n this.viewport.clipBottom();\r\n }\r\n\r\n applyUpdates(arg1, arg2, arg3) {\r\n if (typeof arg1 === 'function') {\r\n this.applyUpdatesFunc(arg1, arg2);\r\n } else {\r\n this.applyUpdatesIndex(arg1, arg2, arg3);\r\n }\r\n this.doAdjust();\r\n }\r\n\r\n applyUpdatesFunc(cb, options = {}) {\r\n this.buffer.slice(0).forEach((wrapper) => {\r\n // we need to do it on the buffer clone, because buffer content\r\n // may change as we iterate through\r\n this.applyUpdate(wrapper, cb(wrapper.item, wrapper.scope, wrapper.element), options);\r\n });\r\n }\r\n\r\n applyUpdatesIndex(index, newItems, options = {}) {\r\n if (index % 1 !== 0) {\r\n throw new Error('applyUpdates - ' + index + ' is not a valid index (should be an integer)');\r\n }\r\n const _index = index - this.buffer.first;\r\n\r\n // apply updates only within buffer\r\n if (_index >= 0 && _index < this.buffer.length) {\r\n this.applyUpdate(this.buffer[_index], newItems, options);\r\n }\r\n // out-of-buffer case: deletion may affect Paddings\r\n else if(index >= this.buffer.getAbsMinIndex() && index <= this.buffer.getAbsMaxIndex()) {\r\n if(angular.isArray(newItems) && !newItems.length) {\r\n this.viewport.removeCacheItem(index, !options.immutableTop && index === this.buffer.minIndex);\r\n if (!options.immutableTop && index === this.buffer.getAbsMinIndex()) {\r\n this.buffer.incrementMinIndex();\r\n }\r\n else {\r\n this.buffer.decrementMaxIndex();\r\n }\r\n }\r\n }\r\n }\r\n\r\n applyUpdate(wrapper, newItems, options = {}) {\r\n if (!angular.isArray(newItems)) {\r\n return;\r\n }\r\n let position = this.buffer.indexOf(wrapper);\r\n if (!newItems.reverse().some(newItem => newItem === wrapper.item)) {\r\n wrapper.op = OPERATIONS.REMOVE;\r\n // try to catch \"first\" edge case on remove\r\n if (!options.immutableTop && !newItems.length) {\r\n // this is the first item, or the previous one's part of the \"shift-top\" group\r\n if (\r\n (position === 0 && this.buffer.bof) ||\r\n (position !== 0 && this.buffer[position - 1].shiftTop)\r\n ) {\r\n wrapper.shiftTop = true;\r\n }\r\n }\r\n }\r\n newItems.forEach((newItem) => {\r\n if (newItem === wrapper.item) {\r\n position--;\r\n } else {\r\n // 3 parameter (shiftTop) is to catch \"first\" edge case on insert\r\n this.buffer.insert(position + 1, newItem, !options.immutableTop && position === -1);\r\n }\r\n });\r\n }\r\n\r\n calculateProperties() {\r\n let rowTop = null, topHeight = 0;\r\n let topDone = false, bottomDone = false;\r\n const length = this.buffer.length;\r\n\r\n for (let i = 0; i < length; i++) {\r\n const item = this.buffer[i];\r\n const itemTop = item.element.offset().top;\r\n\r\n if (rowTop !== itemTop) { // a new row condition\r\n const itemHeight = item.element.outerHeight(true);\r\n const top = this.viewport.topDataPos() + topHeight + itemHeight;\r\n\r\n if (!topDone && top > this.viewport.topVisiblePos()) {\r\n topDone = true;\r\n this['topVisible'] = item.item;\r\n this['topVisibleElement'] = item.element;\r\n this['topVisibleScope'] = item.scope;\r\n }\r\n if (!bottomDone && (top >= this.viewport.bottomVisiblePos() || (i === length - 1 && this.isEOF()))) {\r\n bottomDone = true;\r\n this['bottomVisible'] = item.item;\r\n this['bottomVisibleElement'] = item.element;\r\n this['bottomVisibleScope'] = item.scope;\r\n }\r\n topHeight += itemHeight;\r\n }\r\n rowTop = itemTop;\r\n\r\n if (topDone && bottomDone) {\r\n break;\r\n }\r\n }\r\n }\r\n\r\n}\r\n\r\nexport default Adapter;\r\n","import JQLiteExtras from './modules/jqLiteExtras';\r\nimport ElementRoutines from './modules/elementRoutines.js';\r\nimport ScrollBuffer from './modules/buffer.js';\r\nimport Viewport from './modules/viewport.js';\r\nimport Adapter from './modules/adapter.js';\r\nimport { OPERATIONS } from './modules/utils';\r\n\r\nangular.module('ui.scroll', [])\r\n\r\n .constant('JQLiteExtras', JQLiteExtras)\r\n .run(['JQLiteExtras', (JQLiteExtras) => {\r\n const elt = angular.element;\r\n !(window.jQuery && elt.fn && elt.fn.jquery) ? (new JQLiteExtras()).registerFor(elt) : null;\r\n ElementRoutines.addCSSRules();\r\n }])\r\n\r\n .directive('uiScrollViewport', function () {\r\n return {\r\n restrict: 'A',\r\n controller: [\r\n '$scope',\r\n '$element',\r\n function (scope, element) {\r\n this.container = element;\r\n this.viewport = element;\r\n this.scope = scope;\r\n\r\n angular.forEach(element.children(), child => {\r\n if (child.tagName.toLowerCase() === 'tbody') {\r\n this.viewport = angular.element(child);\r\n }\r\n });\r\n\r\n return this;\r\n }\r\n ]\r\n };\r\n })\r\n\r\n .directive('uiScroll', [\r\n '$log',\r\n '$injector',\r\n '$rootScope',\r\n '$timeout',\r\n '$interval',\r\n '$q',\r\n '$parse',\r\n function (console, $injector, $rootScope, $timeout, $interval, $q, $parse) {\r\n\r\n return {\r\n require: ['?^uiScrollViewport'],\r\n restrict: 'A',\r\n transclude: 'element',\r\n priority: 1000,\r\n terminal: true,\r\n link: link\r\n };\r\n\r\n function link($scope, element, $attr, controllers, linker) {\r\n const match = $attr.uiScroll.match(/^\\s*(\\w+)\\s+in\\s+([(\\w|\\$)\\.]+)\\s*$/);\r\n if (!match) {\r\n throw new Error('Expected uiScroll in form of \\'_item_ in _datasource_\\' but got \\'' + $attr.uiScroll + '\\'');\r\n }\r\n\r\n function parseNumber(value, defaultValue, isFloat) {\r\n if (!isFloat) {\r\n value = value === null ? defaultValue : Math.floor(value);\r\n }\r\n return isNaN(value) ? defaultValue : value;\r\n }\r\n\r\n function parseNumericAttr(value, defaultValue, isFloat) {\r\n const result = $parse(value)($scope);\r\n return parseNumber(result, defaultValue, isFloat);\r\n }\r\n\r\n function parseBooleanAttr(value, defaultValue) {\r\n const result = $parse(value)($scope);\r\n return typeof result === 'boolean' ? result : defaultValue;\r\n }\r\n\r\n const BUFFER_MIN = 3;\r\n const BUFFER_DEFAULT = 10;\r\n const PADDING_MIN = 0.3;\r\n const PADDING_DEFAULT = 0.5;\r\n const HANDLE_INERTIA_DEFAULT = true;\r\n const START_INDEX_DEFAULT = 1;\r\n const MAX_VIEWPORT_DELAY = 500;\r\n const VIEWPORT_POLLING_INTERVAL = 50;\r\n\r\n let datasource = null;\r\n const itemName = match[1];\r\n const datasourceName = match[2];\r\n const viewportController = controllers[0];\r\n const bufferSize = Math.max(BUFFER_MIN, parseNumericAttr($attr.bufferSize, BUFFER_DEFAULT));\r\n const padding = Math.max(PADDING_MIN, parseNumericAttr($attr.padding, PADDING_DEFAULT, true));\r\n const handleInertia = parseBooleanAttr($attr.handleInertia, HANDLE_INERTIA_DEFAULT);\r\n let startIndex = parseNumericAttr($attr.startIndex, START_INDEX_DEFAULT);\r\n let ridActual = 0; // current data revision id\r\n let pending = [];\r\n\r\n const elementRoutines = new ElementRoutines($injector, $q);\r\n const buffer = new ScrollBuffer(elementRoutines, bufferSize, startIndex);\r\n const viewport = new Viewport(elementRoutines, buffer, element, viewportController, $rootScope, padding);\r\n const adapter = new Adapter($scope, $parse, $attr, viewport, buffer, doAdjust, reload);\r\n\r\n if (viewportController) {\r\n viewportController.adapter = adapter;\r\n }\r\n\r\n const isDatasourceValid = () =>\r\n Object.prototype.toString.call(datasource) === '[object Object]' && typeof datasource.get === 'function';\r\n\r\n datasource = $parse(datasourceName)($scope); // try to get datasource on scope\r\n if (!isDatasourceValid()) {\r\n datasource = $injector.get(datasourceName); // try to inject datasource as service\r\n if (!isDatasourceValid()) {\r\n throw new Error(datasourceName + ' is not a valid datasource');\r\n }\r\n }\r\n\r\n let onRenderHandlers = [];\r\n function onRenderHandlersRunner() {\r\n onRenderHandlers.forEach(handler => handler.run());\r\n onRenderHandlers = [];\r\n }\r\n function persistDatasourceIndex(datasource, propName) {\r\n let getter;\r\n // need to postpone min/maxIndexUser processing if the view is empty\r\n if(angular.isNumber(datasource[propName])) {\r\n getter = datasource[propName];\r\n if(angular.isNumber(getter)) {\r\n onRenderHandlers = onRenderHandlers.filter(handler => handler.id !== propName);\r\n onRenderHandlers.push({\r\n id: propName,\r\n run: () => datasource[propName] = getter\r\n });\r\n }\r\n }\r\n }\r\n\r\n function defineDatasourceIndex(datasource, propName, propUserName) {\r\n const descriptor = Object.getOwnPropertyDescriptor(datasource, propName);\r\n if (descriptor && (descriptor.set || descriptor.get)) {\r\n return;\r\n }\r\n let getter;\r\n persistDatasourceIndex(datasource, propName);\r\n Object.defineProperty(datasource, propName, {\r\n set: (value) => {\r\n getter = value;\r\n if(pending.length && !buffer.length) {\r\n persistDatasourceIndex(datasource, propName);\r\n return;\r\n }\r\n buffer[propUserName] = value;\r\n const topPaddingHeightOld = viewport.topDataPos();\r\n viewport.adjustPaddings();\r\n if (propName === 'minIndex') {\r\n viewport.onAfterMinIndexSet(topPaddingHeightOld);\r\n }\r\n },\r\n get: () => getter\r\n });\r\n }\r\n\r\n defineDatasourceIndex(datasource, 'minIndex', 'minIndexUser');\r\n defineDatasourceIndex(datasource, 'maxIndex', 'maxIndexUser');\r\n\r\n const fetchNext = (datasource.get.length !== 2) ?\r\n (success) => datasource.get(buffer.next, bufferSize, success) :\r\n (success) => {\r\n datasource.get({\r\n index: buffer.next,\r\n append: buffer.length ? buffer[buffer.length - 1].item : void 0,\r\n count: bufferSize\r\n }, success);\r\n };\r\n\r\n const fetchPrevious = (datasource.get.length !== 2) ?\r\n (success) => datasource.get(buffer.first - bufferSize, bufferSize, success) :\r\n (success) => {\r\n datasource.get({\r\n index: buffer.first - bufferSize,\r\n prepend: buffer.length ? buffer[0].item : void 0,\r\n count: bufferSize\r\n }, success);\r\n };\r\n\r\n const initialize = () => {\r\n let tryCount = 0;\r\n if(!viewport.applyContainerStyle()) {\r\n const timer = $interval(() => {\r\n tryCount++;\r\n if(viewport.applyContainerStyle()) {\r\n $interval.cancel(timer);\r\n doAdjust();\r\n }\r\n if(tryCount * VIEWPORT_POLLING_INTERVAL >= MAX_VIEWPORT_DELAY) {\r\n $interval.cancel(timer);\r\n throw Error(`ui-scroll directive requires a viewport with non-zero height in ${MAX_VIEWPORT_DELAY}ms`);\r\n }\r\n }, VIEWPORT_POLLING_INTERVAL);\r\n }\r\n else {\r\n doAdjust();\r\n }\r\n };\r\n\r\n /**\r\n * Build padding elements\r\n *\r\n * Calling linker is the only way I found to get access to the tag name of the template\r\n * to prevent the directive scope from pollution a new scope is created and destroyed\r\n * right after the builder creation is completed\r\n */\r\n linker((clone, scope) => {\r\n viewport.createPaddingElements(clone[0]);\r\n // we do not include the clone in the DOM. It means that the nested directives will not\r\n // be able to reach the parent directives, but in this case it is intentional because we\r\n // created the clone to access the template tag name\r\n scope.$destroy();\r\n clone.remove();\r\n });\r\n\r\n $scope.$on('$destroy', () => {\r\n unbindEvents();\r\n viewport.off('mousewheel', wheelHandler);\r\n });\r\n\r\n viewport.on('mousewheel', wheelHandler);\r\n\r\n initialize();\r\n\r\n /* Private function definitions */\r\n\r\n function isInvalid(rid) {\r\n return (rid && rid !== ridActual) || $scope.$$destroyed;\r\n }\r\n\r\n function bindEvents() {\r\n viewport.on('resize', resizeAndScrollHandler);\r\n viewport.on('scroll', resizeAndScrollHandler);\r\n }\r\n\r\n function unbindEvents() {\r\n viewport.off('resize', resizeAndScrollHandler);\r\n viewport.off('scroll', resizeAndScrollHandler);\r\n }\r\n\r\n function reload() {\r\n unbindEvents();\r\n viewport.resetTopPadding();\r\n viewport.resetBottomPadding();\r\n if (arguments.length) {\r\n startIndex = parseNumber(arguments[0], START_INDEX_DEFAULT, false);\r\n }\r\n buffer.reset(startIndex);\r\n persistDatasourceIndex(datasource, 'minIndex');\r\n persistDatasourceIndex(datasource, 'maxIndex');\r\n doAdjust();\r\n }\r\n\r\n function isElementVisible(wrapper) {\r\n return wrapper.element.height() && wrapper.element[0].offsetParent;\r\n }\r\n\r\n function visibilityWatcher(wrapper) {\r\n if (isElementVisible(wrapper)) {\r\n buffer.forEach((item) => {\r\n if (typeof item.unregisterVisibilityWatcher === 'function') {\r\n item.unregisterVisibilityWatcher();\r\n delete item.unregisterVisibilityWatcher;\r\n }\r\n });\r\n if (!pending.length) {\r\n $timeout(() => doAdjust());\r\n }\r\n }\r\n }\r\n\r\n function insertWrapperContent(wrapper, insertAfter) {\r\n createElement(wrapper, insertAfter, viewport.insertElement);\r\n if (!isElementVisible(wrapper)) {\r\n wrapper.unregisterVisibilityWatcher = wrapper.scope.$watch(() => visibilityWatcher(wrapper));\r\n }\r\n elementRoutines.hideElement(wrapper); // hide inserted elements before data binding\r\n }\r\n\r\n function createElement(wrapper, insertAfter, insertElement) {\r\n let promises = null;\r\n const sibling = (insertAfter > 0) ? buffer[insertAfter - 1].element : undefined;\r\n linker((clone, scope) => {\r\n promises = insertElement(clone, sibling);\r\n wrapper.element = clone;\r\n wrapper.scope = scope;\r\n scope[itemName] = wrapper.item;\r\n });\r\n // ui-scroll-grid apply\r\n if (adapter.transform) {\r\n const tdInitializer = wrapper.scope.uiScrollTdInitializer;\r\n if (tdInitializer && tdInitializer.linking) {\r\n adapter.transform(wrapper.scope, wrapper.element);\r\n } else {\r\n wrapper.scope.uiScrollTdInitializer = {\r\n onLink: () => adapter.transform(wrapper.scope, wrapper.element),\r\n scope: wrapper.scope\r\n };\r\n }\r\n }\r\n return promises;\r\n }\r\n\r\n function updateDOM() {\r\n let promises = [];\r\n const toBePrepended = [];\r\n const toBeRemoved = [];\r\n const inserted = [];\r\n\r\n buffer.forEach((wrapper, i) => {\r\n switch (wrapper.op) {\r\n case OPERATIONS.PREPEND:\r\n toBePrepended.unshift(wrapper);\r\n break;\r\n case OPERATIONS.APPEND:\r\n insertWrapperContent(wrapper, i);\r\n wrapper.op = OPERATIONS.NONE;\r\n inserted.push(wrapper);\r\n break;\r\n case OPERATIONS.INSERT:\r\n promises = promises.concat(createElement(wrapper, i, viewport.insertElementAnimated));\r\n wrapper.op = OPERATIONS.NONE;\r\n inserted.push(wrapper);\r\n break;\r\n case OPERATIONS.REMOVE:\r\n toBeRemoved.push(wrapper);\r\n }\r\n });\r\n\r\n toBeRemoved.forEach((wrapper) => promises = promises.concat(viewport.removeItem(wrapper)));\r\n\r\n if (toBePrepended.length)\r\n toBePrepended.forEach((wrapper) => {\r\n insertWrapperContent(wrapper);\r\n wrapper.op = OPERATIONS.NONE;\r\n });\r\n\r\n buffer.forEach((item, i) => item.scope.$index = buffer.first + i);\r\n\r\n return {\r\n prepended: toBePrepended,\r\n removed: toBeRemoved,\r\n inserted: inserted,\r\n animated: promises\r\n };\r\n\r\n }\r\n\r\n function updatePaddings(rid, updates) {\r\n // schedule another doAdjust after animation completion\r\n if (updates.animated.length) {\r\n $q.all(updates.animated).then(() => {\r\n viewport.adjustPaddings();\r\n doAdjust(rid);\r\n });\r\n } else {\r\n viewport.adjustPaddings();\r\n }\r\n }\r\n\r\n function enqueueFetch(rid, updates) {\r\n if (viewport.shouldLoadBottom()) {\r\n if (!updates || buffer.effectiveHeight(updates.inserted) > 0) {\r\n // this means that at least one item appended in the last batch has height > 0\r\n if (pending.push(true) === 1) {\r\n adapter.loading(true);\r\n fetch(rid);\r\n }\r\n }\r\n } else if (viewport.shouldLoadTop()) {\r\n if ((!updates || buffer.effectiveHeight(updates.prepended) > 0) || pending[0]) {\r\n // this means that at least one item appended in the last batch has height > 0\r\n // pending[0] = true means that previous fetch was appending. We need to force at least one prepend\r\n // BTW there will always be at least 1 element in the pending array because bottom is fetched first\r\n if (pending.push(false) === 1) {\r\n adapter.loading(true);\r\n fetch(rid);\r\n }\r\n }\r\n }\r\n }\r\n\r\n function processUpdates() {\r\n const updates = updateDOM();\r\n\r\n // We need the item bindings to be processed before we can do adjustments\r\n !$scope.$$phase && !$rootScope.$$phase && $scope.$digest();\r\n\r\n updates.inserted.forEach(w => elementRoutines.showElement(w));\r\n updates.prepended.forEach(w => elementRoutines.showElement(w));\r\n return updates;\r\n }\r\n\r\n function doAdjust(rid) {\r\n if (!rid) { // dismiss pending requests\r\n pending = [];\r\n rid = ++ridActual;\r\n }\r\n\r\n const updates = processUpdates();\r\n\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n updatePaddings(rid, updates);\r\n enqueueFetch(rid);\r\n\r\n if (!pending.length) {\r\n adapter.calculateProperties();\r\n }\r\n }\r\n\r\n function doAdjustAfterFetch(rid) {\r\n const updates = processUpdates();\r\n\r\n viewport.onAfterPrepend(updates);\r\n\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n updatePaddings(rid, updates);\r\n onRenderHandlersRunner();\r\n enqueueFetch(rid, updates);\r\n pending.shift();\r\n\r\n if (pending.length)\r\n fetch(rid);\r\n else {\r\n adapter.loading(false);\r\n bindEvents();\r\n adapter.calculateProperties();\r\n }\r\n }\r\n\r\n function fetch(rid) {\r\n if (pending[0]) {// scrolling down\r\n if (buffer.length && !viewport.shouldLoadBottom()) {\r\n doAdjustAfterFetch(rid);\r\n } else {\r\n fetchNext((result) => {\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n if (result.length < bufferSize) {\r\n buffer.eof = true;\r\n }\r\n\r\n if (result.length > 0) {\r\n viewport.clipTop();\r\n buffer.append(result);\r\n }\r\n\r\n doAdjustAfterFetch(rid);\r\n });\r\n }\r\n } else { // scrolling up\r\n if (buffer.length && !viewport.shouldLoadTop()) {\r\n doAdjustAfterFetch(rid);\r\n } else {\r\n fetchPrevious((result) => {\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n if (result.length < bufferSize) {\r\n buffer.bof = true;\r\n // log 'bof is reached'\r\n }\r\n\r\n if (result.length > 0) {\r\n if (buffer.length) {\r\n viewport.clipBottom();\r\n }\r\n buffer.prepend(result);\r\n }\r\n\r\n doAdjustAfterFetch(rid);\r\n });\r\n }\r\n }\r\n }\r\n\r\n function fixInertia() {\r\n if (!viewport.synthetic) {\r\n return;\r\n }\r\n const oldPosition = viewport.synthetic.previous;\r\n const newPosition = viewport.synthetic.next;\r\n if (viewport.scrollTop() !== newPosition) {\r\n requestAnimationFrame(() => {\r\n const position = viewport.scrollTop();\r\n const diff = oldPosition - position;\r\n if (diff > 0) { // inertia over synthetic\r\n viewport.scrollTop(newPosition - diff);\r\n } else {\r\n viewport.scrollTop(newPosition);\r\n }\r\n viewport.synthetic = null;\r\n });\r\n return true;\r\n }\r\n viewport.synthetic = null;\r\n }\r\n\r\n function resizeAndScrollHandler() {\r\n if (handleInertia && fixInertia()) {\r\n return;\r\n }\r\n if (!$rootScope.$$phase && !adapter.isLoading && !adapter.disabled) {\r\n\r\n enqueueFetch(ridActual);\r\n\r\n if (pending.length) {\r\n unbindEvents();\r\n } else {\r\n adapter.calculateProperties();\r\n !$scope.$$phase && $scope.$digest();\r\n }\r\n }\r\n }\r\n\r\n function wheelHandler(event) {\r\n if (!adapter.disabled) {\r\n const scrollTop = viewport[0].scrollTop;\r\n const yMax = viewport[0].scrollHeight - viewport[0].clientHeight;\r\n\r\n if ((scrollTop === 0 && !buffer.bof) || (scrollTop === yMax && !buffer.eof)) {\r\n event.preventDefault();\r\n }\r\n }\r\n }\r\n }\r\n\r\n }\r\n ]);\r\n"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"ui-scroll.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AATA,IAWqBA,YAAY;EAAA,SAAAA,aAAA;IAAAC,eAAA,OAAAD,YAAA;EAAA;EAAAE,YAAA,CAAAF,YAAA;IAAAG,GAAA;IAAAC,KAAA,EAE/B,SAAAC,YAAYC,OAAO,EAAE;MACnB,IAAIC,WAAW,EAAEC,GAAG,EAAEC,QAAQ,EAAEC,QAAQ;MACxC;MACAF,GAAG,GAAGG,OAAO,CAACL,OAAO,CAACM,SAAS,CAACJ,GAAG;MAEnCF,OAAO,CAACM,SAAS,CAACJ,GAAG,GAAG,UAAUK,IAAI,EAAET,KAAK,EAAE;QAC7C,IAAIU,IAAI,GAAG,IAAI;QACf,IAAIC,IAAI,GAAGD,IAAI,CAAC,CAAC,CAAC;QAClB,IAAI,EAAE,CAACC,IAAI,IAAIA,IAAI,CAACC,QAAQ,KAAK,CAAC,IAAID,IAAI,CAACC,QAAQ,KAAK,CAAC,IAAI,CAACD,IAAI,CAACE,KAAK,CAAC,EAAE;UACzE,OAAOT,GAAG,CAACU,IAAI,CAACJ,IAAI,EAAED,IAAI,EAAET,KAAK,CAAC;QACpC;MACF,CAAC;;MAED;MACAM,QAAQ,GAAG,SAAAA,SAACS,GAAG;QAAA,OAAKA,GAAG,IAAIA,GAAG,CAACC,QAAQ,IAAID,GAAG,CAACE,QAAQ,IAAIF,GAAG,CAACG,KAAK,IAAIH,GAAG,CAACI,WAAW;MAAA;MAEvF,SAASC,QAAQA,CAACV,IAAI,EAAEW,SAAS,EAAErB,KAAK,EAAE;QACxC,IAAIW,IAAI,GAAGD,IAAI,CAAC,CAAC,CAAC;QAClB,IAAAY,mBAAA,GAAAC,cAAA,CAA+B;YAC7BC,GAAG,EAAE,CACH,WAAW,EACX,aAAa,EACb,YAAY,CACb;YACDC,IAAI,EAAE,CACJ,YAAY,EACZ,aAAa,EACb,WAAW;UAEf,CAAC,CAACJ,SAAS,CAAC;UAXPK,MAAM,GAAAJ,mBAAA;UAAEK,IAAI,GAAAL,mBAAA;UAAEM,QAAQ,GAAAN,mBAAA;QAa3B,IAAMO,cAAc,GAAG,OAAO7B,KAAK,KAAK,WAAW;QACnD,IAAIM,QAAQ,CAACK,IAAI,CAAC,EAAE;UAClB,IAAIkB,cAAc,EAAE;YAClB,OAAOlB,IAAI,CAACS,QAAQ,CAACV,IAAI,CAACkB,QAAQ,CAAC,CAACd,IAAI,CAACJ,IAAI,CAAC,EAAEV,KAAK,CAAC;UACxD;UACA,OAAQ2B,IAAI,IAAIhB,IAAI,GAAIA,IAAI,CAACgB,IAAI,CAAC,GAAGhB,IAAI,CAACK,QAAQ,CAACc,eAAe,CAACJ,MAAM,CAAC;QAC5E,CAAC,MAAM;UACL,IAAIG,cAAc,EAAE;YAClBlB,IAAI,CAACe,MAAM,CAAC,GAAG1B,KAAK;UACtB;UACA,OAAOW,IAAI,CAACe,MAAM,CAAC;QACrB;MACF;MAEA,IAAIK,MAAM,CAACC,gBAAgB,EAAE;QAC3B3B,QAAQ,GAAG,SAAAA,SAACM,IAAI;UAAA,OAAKoB,MAAM,CAACC,gBAAgB,CAACrB,IAAI,EAAE,IAAI,CAAC;QAAA;QACxDR,WAAW,GAAG,SAAAA,YAACQ,IAAI,EAAEX,KAAK;UAAA,OAAKiC,UAAU,CAACjC,KAAK,CAAC;QAAA;MAClD,CAAC,MAAM;QACLK,QAAQ,GAAG,SAAAA,SAACM,IAAI;UAAA,OAAKA,IAAI,CAACuB,YAAY;QAAA;QACtC/B,WAAW,GAAG,SAAAA,YAACQ,IAAI,EAAEX,KAAK,EAAK;UAC7B,IAAIyB,IAAI,EAAEU,MAAM,EAAEC,EAAE,EAAEC,MAAM,EAAExB,KAAK;UACnC,IAAIyB,SAAS,GAAG,qCAAqC,CAACC,MAAM;UAC5D,IAAIC,SAAS,GAAG,IAAIC,MAAM,CAAC,IAAI,GAAGH,SAAS,GAAG,iBAAiB,EAAE,GAAG,CAAC;UAErE,IAAI,CAACE,SAAS,CAACE,IAAI,CAAC1C,KAAK,CAAC,EAAE;YAC1B,OAAOiC,UAAU,CAACjC,KAAK,CAAC;UAC1B;;UAEA;UACAa,KAAK,GAAGF,IAAI,CAACE,KAAK;UAClBY,IAAI,GAAGZ,KAAK,CAACY,IAAI;UACjBW,EAAE,GAAGzB,IAAI,CAACgC,YAAY;UACtBN,MAAM,GAAGD,EAAE,IAAIA,EAAE,CAACX,IAAI;UACtB,IAAIW,EAAE,EAAE;YACNA,EAAE,CAACX,IAAI,GAAGZ,KAAK,CAACY,IAAI;UACtB;UACA;UACAZ,KAAK,CAACY,IAAI,GAAGzB,KAAK;UAClBmC,MAAM,GAAGtB,KAAK,CAAC+B,SAAS;UACxB/B,KAAK,CAACY,IAAI,GAAGA,IAAI;UACjB,IAAIY,MAAM,EAAE;YACVD,EAAE,CAACX,IAAI,GAAGY,MAAM;UAClB;UACA,OAAOF,MAAM;QACf,CAAC;MACH;MAEA,SAASU,eAAeA,CAAClC,IAAI,EAAEmC,OAAO,EAAE;QACtC,IAAIC,IAAI,EAAEC,OAAO,EAAEC,OAAO,EAAEC,eAAe,EAAEC,eAAe,EAAEC,aAAa,EAAEC,IAAI,EAAEC,IAAI,EAAEC,OAAO,EAAEC,OAAO,EAAEC,QAAQ,EAAEC,QAAQ;QAE7H,IAAIpD,QAAQ,CAACK,IAAI,CAAC,EAAE;UAClBoC,IAAI,GAAG/B,QAAQ,CAACc,eAAe,CAAC;YAAC6B,MAAM,EAAE,cAAc;YAAEC,KAAK,EAAE;UAAa,CAAC,CAACd,OAAO,CAAC,CAAC;UAExF,OAAO;YACLC,IAAI,EAAEA,IAAI;YACVc,OAAO,EAAE,CAAC;YACVC,MAAM,EAAE,CAAC;YACTC,MAAM,EAAE;UACV,CAAC;QACH;;QAEA;QAAA,IAAAC,qBAAA,GAAAzC,cAAA,CAKI;UACFqC,KAAK,EAAE,CACLjD,IAAI,CAACsD,WAAW,EAChB,MAAM,EACN,OAAO,CACR;UACDN,MAAM,EAAE,CACNhD,IAAI,CAACuD,YAAY,EACjB,KAAK,EACL,QAAQ;QAEZ,CAAC,CAACpB,OAAO,CAAC;QAdRC,IAAI,GAAAiB,qBAAA;QACJX,IAAI,GAAAW,qBAAA;QACJV,IAAI,GAAAU,qBAAA;QAcNZ,aAAa,GAAG/C,QAAQ,CAACM,IAAI,CAAC;QAC9B8C,QAAQ,GAAGtD,WAAW,CAACQ,IAAI,EAAEyC,aAAa,CAAC,SAAS,GAAGC,IAAI,CAAC,CAAC,IAAI,CAAC;QAClEK,QAAQ,GAAGvD,WAAW,CAACQ,IAAI,EAAEyC,aAAa,CAAC,SAAS,GAAGE,IAAI,CAAC,CAAC,IAAI,CAAC;QAClEN,OAAO,GAAG7C,WAAW,CAACQ,IAAI,EAAEyC,aAAa,CAAC,QAAQ,GAAGC,IAAI,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC;QAC1EJ,OAAO,GAAG9C,WAAW,CAACQ,IAAI,EAAEyC,aAAa,CAAC,QAAQ,GAAGE,IAAI,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC;QAC1EJ,eAAe,GAAGE,aAAa,CAAC,QAAQ,GAAGC,IAAI,CAAC;QAChDF,eAAe,GAAGC,aAAa,CAAC,QAAQ,GAAGE,IAAI,CAAC;;QAEhD;QACA;QACA;QACA;QACAC,OAAO,GAAGpD,WAAW,CAACQ,IAAI,EAAEuC,eAAe,CAAC,IAAI,CAAC;QACjDM,OAAO,GAAGrD,WAAW,CAACQ,IAAI,EAAEwC,eAAe,CAAC,IAAI,CAAC;QAEjD,OAAO;UACLJ,IAAI,EAAEA,IAAI;UACVc,OAAO,EAAEJ,QAAQ,GAAGC,QAAQ;UAC5BI,MAAM,EAAEd,OAAO,GAAGC,OAAO;UACzBc,MAAM,EAAER,OAAO,GAAGC;QACpB,CAAC;MACH;MAEA,SAASW,cAAcA,CAACxD,IAAI,EAAEU,SAAS,EAAEyB,OAAO,EAAE;QAChD,IAAIM,aAAa,EAAEjB,MAAM;QAEzB,IAAIiC,YAAY,GAAGvB,eAAe,CAAClC,IAAI,EAAEU,SAAS,CAAC;QAEnD,IAAI+C,YAAY,CAACrB,IAAI,GAAG,CAAC,EAAE;UACzB,OAAO;YACLA,IAAI,EAAEqB,YAAY,CAACrB,IAAI,GAAGqB,YAAY,CAACP,OAAO,GAAGO,YAAY,CAACN,MAAM;YACpEO,KAAK,EAAED,YAAY,CAACrB,IAAI;YACxBuB,SAAS,EAAEF,YAAY,CAACrB,IAAI,GAAGqB,YAAY,CAACL;UAC9C,CAAC,CAACjB,OAAO,CAAC;QACZ;;QAEA;QACAM,aAAa,GAAG/C,QAAQ,CAACM,IAAI,CAAC;QAC9BwB,MAAM,GAAGiB,aAAa,CAAC/B,SAAS,CAAC;QAEjC,IAAIc,MAAM,GAAG,CAAC,IAAIA,MAAM,KAAK,IAAI,EAAE;UACjCA,MAAM,GAAGxB,IAAI,CAACE,KAAK,CAACQ,SAAS,CAAC,IAAI,CAAC;QACrC;;QAEA;QACAc,MAAM,GAAGF,UAAU,CAACE,MAAM,CAAC,IAAI,CAAC;QAEhC,OAAO;UACLY,IAAI,EAAEZ,MAAM,GAAGiC,YAAY,CAACP,OAAO,GAAGO,YAAY,CAACN,MAAM;UACzDO,KAAK,EAAElC,MAAM;UACbmC,SAAS,EAAEnC,MAAM,GAAGiC,YAAY,CAACP,OAAO,GAAGO,YAAY,CAACN,MAAM,GAAGM,YAAY,CAACL;QAChF,CAAC,CAACjB,OAAO,CAAC;MACZ;;MAEA;MACA,OAAOvC,OAAO,CAACgE,OAAO,CAAC;QACrBC,MAAM,WAAAA,OAACC,OAAO,EAAE;UACd,IAAIC,QAAQ,EAAE/D,IAAI,EAAEgE,CAAC,EAAEC,CAAC,EAAEC,MAAM,EAAEC,GAAG,EAAEpE,IAAI;UAC3CA,IAAI,GAAG,IAAI;UACXC,IAAI,GAAGD,IAAI,CAAC,CAAC,CAAC;UACdmE,MAAM,GAAGnE,IAAI,CAACmE,MAAM,EAAE;UACtBH,QAAQ,GAAGG,MAAM,CAACE,QAAQ,EAAE;UAC5B,IAAIL,QAAQ,CAAC,CAAC,CAAC,KAAK/D,IAAI,EAAE;YACxB,OAAOkE,MAAM,CAACG,OAAO,CAACP,OAAO,CAAC;UAChC,CAAC,MAAM;YACL,KAAKE,CAAC,GAAGC,CAAC,GAAG,CAAC,EAAEE,GAAG,GAAGJ,QAAQ,CAACO,MAAM,GAAG,CAAC,EAAE,CAAC,IAAIH,GAAG,GAAGF,CAAC,IAAIE,GAAG,GAAGF,CAAC,IAAIE,GAAG,EAAEH,CAAC,GAAG,CAAC,IAAIG,GAAG,GAAG,EAAEF,CAAC,GAAG,EAAEA,CAAC,EAAE;cACnG,IAAIF,QAAQ,CAACC,CAAC,CAAC,KAAKhE,IAAI,EAAE;gBACxBJ,OAAO,CAACL,OAAO,CAACwE,QAAQ,CAACC,CAAC,GAAG,CAAC,CAAC,CAAC,CAACO,KAAK,CAACT,OAAO,CAAC;gBAC/C;cACF;YACF;YACA,MAAM,IAAIU,KAAK,CAAC,wBAAwB,GAAGxE,IAAI,CAACyE,SAAS,CAAC;UAC5D;QACF,CAAC;QACDzB,MAAM,WAAAA,OAAE3D,KAAK,EAAC;UACZ,IAAIU,IAAI;UACRA,IAAI,GAAG,IAAI;UACX,IAAI,OAAOV,KAAK,KAAK,WAAW,EAAE;YAChC,IAAIO,OAAO,CAAC8E,QAAQ,CAACrF,KAAK,CAAC,EAAE;cAC3BA,KAAK,GAAGA,KAAK,GAAG,IAAI;YACtB;YACA,OAAOI,GAAG,CAACU,IAAI,CAACJ,IAAI,EAAE,QAAQ,EAAEV,KAAK,CAAC;UACxC,CAAC,MAAM;YACL,OAAOmE,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC;UAClD;QACF,CAAC;QACDmB,WAAW,WAAAA,YAACC,MAAM,EAAE;UAClB,OAAOpB,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAEoB,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC;QAC1E,CAAC;QACDC,UAAU,WAAAA,WAACD,MAAM,EAAE;UACjB,OAAOpB,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAEoB,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC;QACzE,CAAC;QAED;AACN;AACA;QACME,MAAM,WAAAA,OAACzF,KAAK,EAAE;UACZ,IAAI0F,OAAO,EAAEC,GAAG;UAChB,IAAIjF,IAAI,GAAG,IAAI;UACf,IAAIkF,GAAG,GAAG;YACRpE,GAAG,EAAE,CAAC;YACNC,IAAI,EAAE;UACR,CAAC;UACD,IAAId,IAAI,GAAGD,IAAI,CAAC,CAAC,CAAC;UAClB,IAAImF,GAAG,GAAGlF,IAAI,IAAIA,IAAI,CAACmF,aAAa;UAEpC,IAAIC,SAAS,CAACd,MAAM,EAAE;YACpB,IAAIjF,KAAK,KAAKgG,SAAS,EAAE;cACvB,OAAOtF,IAAI;YACb;YACA;YACA,MAAM,IAAIyE,KAAK,CAAC,yCAAyC,CAAC;UAC5D;UAEA,IAAI,CAACU,GAAG,EAAE;YACR;UACF;UAEAH,OAAO,GAAGG,GAAG,CAAC/D,eAAe;;UAE7B;;UAEA,IAAInB,IAAI,CAACsF,qBAAqB,IAAI,IAAI,EAAE;YACtCL,GAAG,GAAGjF,IAAI,CAACsF,qBAAqB,EAAE;UACpC;UAEAN,GAAG,GAAGE,GAAG,CAACK,WAAW,IAAIL,GAAG,CAACM,YAAY;UAEzC,OAAO;YACL3E,GAAG,EAAEoE,GAAG,CAACpE,GAAG,IAAImE,GAAG,CAACS,WAAW,IAAIV,OAAO,CAACW,SAAS,CAAC,IAAIX,OAAO,CAACY,SAAS,IAAI,CAAC,CAAC;YAChF7E,IAAI,EAAEmE,GAAG,CAACnE,IAAI,IAAIkE,GAAG,CAACY,WAAW,IAAIb,OAAO,CAACc,UAAU,CAAC,IAAId,OAAO,CAACe,UAAU,IAAI,CAAC;UACrF,CAAC;QACH,CAAC;QACDJ,SAAS,WAAAA,UAACrG,KAAK,EAAE;UACf,OAAOoB,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAEpB,KAAK,CAAC;QACrC,CAAC;QACDwG,UAAU,WAAAA,WAACxG,KAAK,EAAE;UAChB,OAAOoB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAEpB,KAAK,CAAC;QACtC;MACF,CAAC,EAAE,UAACA,KAAK,EAAED,GAAG,EAAK;QACjB,IAAI,CAACG,OAAO,CAACM,SAAS,CAACT,GAAG,CAAC,EAAE;UAC3B,OAAOG,OAAO,CAACM,SAAS,CAACT,GAAG,CAAC,GAAGC,KAAK;QACvC;MACF,CAAC,CAAC;IACJ;EAAC;EAAA,OAAAJ,YAAA;AAAA;;;;;;;;;AC3QH,IAAM+G,cAAc,GAAG,mBAAmB;AAAC,IAEtBC,eAAe;EAoBlC,SAAAA,gBAAYC,SAAS,EAAEC,EAAE,EAAE;IAAAjH,8BAAA,OAAA+G,eAAA;IACzB,IAAI,CAACG,QAAQ,GAAIF,SAAS,CAACG,GAAG,IAAIH,SAAS,CAACG,GAAG,CAAC,UAAU,CAAC,GAAIH,SAAS,CAACI,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI;IAC/F,IAAI,CAACC,2BAA2B,GAAG3G,OAAO,CAAC4G,OAAO,CAACC,KAAK,KAAK,CAAC,IAAI7G,OAAO,CAAC4G,OAAO,CAACE,KAAK,GAAG,CAAC;IAC3F,IAAI,CAACP,EAAE,GAAGA,EAAE;EACd;EAAChH,2BAAA,CAAA8G,eAAA;IAAA7G,GAAA;IAAAC,KAAA,EAED,SAAAsH,YAAYC,OAAO,EAAE;MACnBA,OAAO,CAACrH,OAAO,CAACsH,QAAQ,CAACb,cAAc,CAAC;IAC1C;EAAC;IAAA5G,GAAA;IAAAC,KAAA,EAED,SAAAyH,YAAYF,OAAO,EAAE;MACnBA,OAAO,CAACrH,OAAO,CAACwH,WAAW,CAACf,cAAc,CAAC;IAC7C;EAAC;IAAA5G,GAAA;IAAAC,KAAA,EAED,SAAA2H,cAAcC,UAAU,EAAEC,eAAe,EAAE;MACzCA,eAAe,CAAC3C,KAAK,CAAC0C,UAAU,CAAC;MACjC,OAAO,EAAE;IACX;EAAC;IAAA7H,GAAA;IAAAC,KAAA,EAED,SAAA8H,cAAcP,OAAO,EAAE;MACrBA,OAAO,CAACrH,OAAO,CAAC6H,MAAM,EAAE;MACxBR,OAAO,CAACS,KAAK,CAACC,QAAQ,EAAE;MACxB,OAAO,EAAE;IACX;EAAC;IAAAlI,GAAA;IAAAC,KAAA,EAED,SAAAkI,sBAAsBN,UAAU,EAAEC,eAAe,EAAE;MACjD,IAAI,CAAC,IAAI,CAACd,QAAQ,EAAE;QAClB,OAAO,IAAI,CAACY,aAAa,CAACC,UAAU,EAAEC,eAAe,CAAC;MACxD;MAEA,IAAI,IAAI,CAACX,2BAA2B,EAAE;QACpC,IAAMiB,QAAQ,GAAG,IAAI,CAACrB,EAAE,CAACsB,KAAK,EAAE;QAChC;QACA,IAAI,CAACrB,QAAQ,CAACsB,KAAK,CAACT,UAAU,EAAE,IAAI,EAAEC,eAAe,EAAE;UAAA,OAAMM,QAAQ,CAACG,OAAO,EAAE;QAAA,EAAC;QAEhF,OAAO,CAACH,QAAQ,CAACI,OAAO,CAAC;MAC3B;;MAEA;MACA,OAAO,CAAC,IAAI,CAACxB,QAAQ,CAACsB,KAAK,CAACT,UAAU,EAAE,IAAI,EAAEC,eAAe,CAAC,CAAC;IACjE;EAAC;IAAA9H,GAAA;IAAAC,KAAA,EAED,SAAAwI,sBAAsBjB,OAAO,EAAE;MAC7B,IAAI,CAAC,IAAI,CAACR,QAAQ,EAAE;QAClB,OAAO,IAAI,CAACe,aAAa,CAACP,OAAO,CAAC;MACpC;MAEA,IAAI,IAAI,CAACL,2BAA2B,EAAE;QACpC,IAAMiB,QAAQ,GAAG,IAAI,CAACrB,EAAE,CAACsB,KAAK,EAAE;QAChC,IAAI,CAACrB,QAAQ,CAAC0B,KAAK,CAAClB,OAAO,CAACrH,OAAO,EAAE,YAAM;UACzCqH,OAAO,CAACS,KAAK,CAACC,QAAQ,EAAE;UACxB,OAAOE,QAAQ,CAACG,OAAO,EAAE;QAC3B,CAAC,CAAC;QAEF,OAAO,CAACH,QAAQ,CAACI,OAAO,CAAC;MAC3B;MAEA,OAAO,CAAE,IAAI,CAACxB,QAAQ,CAAC0B,KAAK,CAAClB,OAAO,CAACrH,OAAO,CAAC,CAAEwI,IAAI,CAAC;QAAA,OAAMnB,OAAO,CAACS,KAAK,CAACC,QAAQ,EAAE;MAAA,EAAC,CAAC;IACtF;EAAC;IAAAlI,GAAA;IAAAC,KAAA,EA5ED,SAAA2I,YAAA,EAAqB;MACnB,IAAMC,QAAQ,GAAG,GAAG,GAAGjC,cAAc;MACrC,IAAMkC,KAAK,GAAG,eAAe;MAC7B,IAAMC,KAAK,GAAG9H,QAAQ,CAAC+H,WAAW,CAAC,CAAC,CAAC;MACrC,IAAIC,KAAK;MACT,IAAI;QACFA,KAAK,GAAGF,KAAK,CAACG,QAAQ,CAAChE,MAAM;MAC/B,CAAC,CAAC,OAAOiE,GAAG,EAAE;QACZF,KAAK,GAAG,CAAC;MACX;MACA,IAAG,YAAY,IAAIF,KAAK,EAAE;QACxBA,KAAK,CAACK,UAAU,CAACP,QAAQ,GAAG,GAAG,GAAGC,KAAK,GAAG,GAAG,EAAEG,KAAK,CAAC;MACvD,CAAC,MACI,IAAG,SAAS,IAAIF,KAAK,EAAE;QAC1BA,KAAK,CAACM,OAAO,CAACR,QAAQ,EAAEC,KAAK,EAAEG,KAAK,CAAC;MACvC;IACF;EAAC;EAAA,OAAApC,eAAA;AAAA;;;ACpBI,IAAMyC,UAAU,GAAG;EACxBC,OAAO,EAAE,SAAS;EAClBC,MAAM,EAAE,QAAQ;EAChBC,MAAM,EAAE,QAAQ;EAChBC,MAAM,EAAE,QAAQ;EAChBC,IAAI,EAAE;AACR,CAAC;;ACNoC;AAEtB,SAASC,YAAYA,CAACC,eAAe,EAAEC,UAAU,EAAEC,UAAU,EAAE;EAC5E,IAAMC,MAAM,GAAGC,MAAM,CAACC,MAAM,CAACC,KAAK,CAAC1J,SAAS,CAAC;EAE7CD,OAAO,CAAC4J,MAAM,CAACJ,MAAM,EAAE;IACrBK,IAAI,EAAEP,UAAU;IAEhBQ,KAAK,WAAAA,MAACP,UAAU,EAAE;MAChBC,MAAM,CAAChC,MAAM,CAAC,CAAC,EAAEgC,MAAM,CAAC9E,MAAM,CAAC;MAC/B8E,MAAM,CAACO,GAAG,GAAG,KAAK;MAClBP,MAAM,CAACQ,GAAG,GAAG,KAAK;MAClBR,MAAM,CAACS,KAAK,GAAGV,UAAU;MACzBC,MAAM,CAACU,IAAI,GAAGX,UAAU;MACxBC,MAAM,CAACW,QAAQ,GAAGZ,UAAU;MAC5BC,MAAM,CAACY,QAAQ,GAAGb,UAAU;MAC5BC,MAAM,CAACa,YAAY,GAAG,IAAI;MAC1Bb,MAAM,CAACc,YAAY,GAAG,IAAI;IAC5B,CAAC;IAEDC,MAAM,WAAAA,OAACC,KAAK,EAAE;MACZA,KAAK,CAACxG,OAAO,CAAC,UAACyG,IAAI,EAAK;QACtB,EAAEjB,MAAM,CAACU,IAAI;QACbV,MAAM,CAACkB,MAAM,CAAC5B,iBAAiB,EAAE2B,IAAI,CAAC;MACxC,CAAC,CAAC;MACFjB,MAAM,CAACY,QAAQ,GAAGZ,MAAM,CAACO,GAAG,GAAGP,MAAM,CAACU,IAAI,GAAG,CAAC,GAAGS,IAAI,CAACC,GAAG,CAACpB,MAAM,CAACU,IAAI,GAAG,CAAC,EAAEV,MAAM,CAACY,QAAQ,CAAC;IAC7F,CAAC;IAED3F,OAAO,WAAAA,QAAC+F,KAAK,EAAEK,YAAY,EAAE;MAC3BL,KAAK,CAACM,OAAO,EAAE,CAAC9G,OAAO,CAAC,UAACyG,IAAI,EAAK;QAChC,IAAII,YAAY,EAAE;UAChB,EAAErB,MAAM,CAACU,IAAI;QACf,CAAC,MACI;UACH,EAAEV,MAAM,CAACS,KAAK;QAChB;QACAT,MAAM,CAACkB,MAAM,CAAC5B,kBAAkB,EAAE2B,IAAI,CAAC;MACzC,CAAC,CAAC;MACFjB,MAAM,CAACW,QAAQ,GAAGX,MAAM,CAACQ,GAAG,GAAGR,MAAM,CAACW,QAAQ,GAAGX,MAAM,CAACS,KAAK,GAAGU,IAAI,CAACI,GAAG,CAACvB,MAAM,CAACS,KAAK,EAAET,MAAM,CAACW,QAAQ,CAAC;IACzG,CAAC;IAED;AACJ;AACA;AACA;AACA;AACA;IACIO,MAAM,WAAAA,OAACM,SAAS,EAAEP,IAAI,EAAEQ,QAAQ,EAAE;MAChC,IAAMjE,OAAO,GAAG;QACdyD,IAAI,EAAEA;MACR,CAAC;MAED,IAAIO,SAAS,GAAG,CAAC,KAAK,CAAC,EAAE;QAAE;QACzBhE,OAAO,CAACkE,EAAE,GAAGpC,iBAAiB;QAC9BU,MAAM,CAAC2B,MAAM,CAACH,SAAS,EAAE,CAAC,EAAEhE,OAAO,CAAC;QACpC,IAAIiE,QAAQ,EAAE;UACZzB,MAAM,CAACS,KAAK,EAAE;QAChB,CAAC,MACI;UACHT,MAAM,CAACU,IAAI,EAAE;QACf;MACF,CAAC,MAAM;QACLlD,OAAO,CAACkE,EAAE,GAAGF,SAAS;QACtB,QAAQA,SAAS;UACf,KAAKlC,iBAAiB;YACpBU,MAAM,CAAC4B,IAAI,CAACpE,OAAO,CAAC;YACpB;UACF,KAAK8B,kBAAkB;YACrBU,MAAM,CAAC6B,OAAO,CAACrE,OAAO,CAAC;YACvB;QAAM;MAEZ;IACF,CAAC;IAED;IACAQ,MAAM,WAAAA,OAAC8D,IAAI,EAAEC,IAAI,EAAE;MACjB,IAAIvL,OAAO,CAAC8E,QAAQ,CAACwG,IAAI,CAAC,EAAE;QAC1B;QACA,KAAK,IAAIlH,CAAC,GAAGkH,IAAI,EAAElH,CAAC,GAAGmH,IAAI,EAAEnH,CAAC,EAAE,EAAE;UAChCiF,eAAe,CAAC9B,aAAa,CAACiC,MAAM,CAACpF,CAAC,CAAC,CAAC;QAC1C;QACA,OAAOoF,MAAM,CAAC2B,MAAM,CAACG,IAAI,EAAEC,IAAI,GAAGD,IAAI,CAAC;MACzC;MACA;MACA9B,MAAM,CAAC2B,MAAM,CAAC3B,MAAM,CAACgC,OAAO,CAACF,IAAI,CAAC,EAAE,CAAC,CAAC;MACtC,IAAIA,IAAI,CAACL,QAAQ,IAAIzB,MAAM,CAACS,KAAK,KAAK,IAAI,CAACwB,cAAc,EAAE,EAAE;QAC3D,IAAI,CAACC,iBAAiB,EAAE;MAC1B,CAAC,MACI;QACH,IAAI,CAACC,iBAAiB,EAAE;MAC1B;MACA,IAAIL,IAAI,CAACL,QAAQ,EAAE;QACjBzB,MAAM,CAACS,KAAK,EAAE;MAChB,CAAC,MACI;QACHT,MAAM,CAACU,IAAI,EAAE;MACf;MACA,IAAI,CAACV,MAAM,CAAC9E,MAAM,EAAE;QAClB8E,MAAM,CAACW,QAAQ,GAAGQ,IAAI,CAACI,GAAG,CAACvB,MAAM,CAACY,QAAQ,EAAEZ,MAAM,CAACW,QAAQ,CAAC;MAC9D;MAEA,OAAOd,eAAe,CAACpB,qBAAqB,CAACqD,IAAI,CAAC;IACpD,CAAC;IAEDI,iBAAiB,WAAAA,kBAAA,EAAG;MAClB,IAAIlC,MAAM,CAACa,YAAY,KAAK,IAAI,EAAE;QAChC,IAAIb,MAAM,CAACW,QAAQ,GAAGX,MAAM,CAACa,YAAY,EAAE;UACzCb,MAAM,CAACa,YAAY,EAAE;UACrB;QACF;QACA,IAAIb,MAAM,CAACW,QAAQ,KAAKX,MAAM,CAACa,YAAY,EAAE;UAC3Cb,MAAM,CAACa,YAAY,EAAE;QACvB;MACF;MACAb,MAAM,CAACW,QAAQ,EAAE;IACnB,CAAC;IAEDwB,iBAAiB,WAAAA,kBAAA,EAAG;MAClB,IAAInC,MAAM,CAACc,YAAY,KAAK,IAAI,IAAId,MAAM,CAACY,QAAQ,IAAIZ,MAAM,CAACc,YAAY,EAAE;QAC1Ed,MAAM,CAACc,YAAY,EAAE;MACvB;MACAd,MAAM,CAACY,QAAQ,EAAE;IACnB,CAAC;IAEDqB,cAAc,WAAAA,eAAA,EAAG;MACf,IAAIjC,MAAM,CAACa,YAAY,KAAK,IAAI,EAAE;QAChC,OAAOM,IAAI,CAACI,GAAG,CAACvB,MAAM,CAACa,YAAY,EAAEb,MAAM,CAACW,QAAQ,CAAC;MACvD;MACA,OAAOX,MAAM,CAACW,QAAQ;IACxB,CAAC;IAEDyB,cAAc,WAAAA,eAAA,EAAG;MACf,IAAIpC,MAAM,CAACc,YAAY,KAAK,IAAI,EAAE;QAChC,OAAOK,IAAI,CAACC,GAAG,CAACpB,MAAM,CAACc,YAAY,EAAEd,MAAM,CAACY,QAAQ,CAAC;MACvD;MACA,OAAOZ,MAAM,CAACY,QAAQ;IACxB,CAAC;IAEDyB,eAAe,WAAAA,gBAACC,QAAQ,EAAE;MACxB,IAAI,CAACA,QAAQ,CAACpH,MAAM,EAAE;QACpB,OAAO,CAAC;MACV;MACA,IAAIzD,GAAG,GAAG8K,MAAM,CAACC,SAAS;MAC1B,IAAIC,MAAM,GAAGF,MAAM,CAACG,iBAAiB;MACrCJ,QAAQ,CAAC9H,OAAO,CAAC,UAACgD,OAAO,EAAK;QAC5B,IAAIA,OAAO,CAACrH,OAAO,CAAC,CAAC,CAAC,CAACwM,YAAY,EAAE;UACnC;UACAlL,GAAG,GAAG0J,IAAI,CAACI,GAAG,CAAC9J,GAAG,EAAE+F,OAAO,CAACrH,OAAO,CAACuF,MAAM,EAAE,CAACjE,GAAG,CAAC;UACjDgL,MAAM,GAAGtB,IAAI,CAACC,GAAG,CAACqB,MAAM,EAAEjF,OAAO,CAACrH,OAAO,CAACuF,MAAM,EAAE,CAACjE,GAAG,GAAG+F,OAAO,CAACrH,OAAO,CAACoF,WAAW,CAAC,IAAI,CAAC,CAAC;QAC7F;MACF,CAAC,CAAC;MACF,OAAO4F,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEqB,MAAM,GAAGhL,GAAG,CAAC;IAClC,CAAC;IAEDmL,QAAQ,WAAAA,SAAA,EAAG;MACT,OAAO5C,MAAM,CAAC6C,MAAM,CAAC,UAAA5B,IAAI;QAAA,OAAIA,IAAI,CAACS,EAAE,KAAKpC,eAAe;MAAA,EAAC;IAC3D,CAAC;IAEDwD,YAAY,WAAAA,aAAA,EAAG;MACb,IAAMC,IAAI,GAAG/C,MAAM,CAAC4C,QAAQ,EAAE;MAC9B,IAAI,CAACG,IAAI,CAAC7H,MAAM,EAAE;QAChB,OAAO,IAAI;MACb;MACA,OAAO6H,IAAI,CAAC,CAAC,CAAC,CAAC9B,IAAI;IACrB,CAAC;IAED+B,WAAW,WAAAA,YAAA,EAAG;MACZ,IAAMD,IAAI,GAAG/C,MAAM,CAAC4C,QAAQ,EAAE;MAC9B,IAAI,CAACG,IAAI,CAAC7H,MAAM,EAAE;QAChB,OAAO,IAAI;MACb;MACA,OAAO6H,IAAI,CAACA,IAAI,CAAC7H,MAAM,GAAG,CAAC,CAAC,CAAC+F,IAAI;IACnC;EAEF,CAAC,CAAC;EAEFjB,MAAM,CAACM,KAAK,CAACP,UAAU,CAAC;EAExB,OAAOC,MAAM;AACf;;;;;;;;ACnLA;AACA;AAAA,IACMiD,UAAU;EAAA,SAAAA,WAAA;IAAAnN,sBAAA,OAAAmN,UAAA;EAAA;EAAAlN,mBAAA,CAAAkN,UAAA;IAAAjN,GAAA;IAAAC,KAAA,EACd,SAAAiN,IAAIjC,IAAI,EAAE;MACR,KAAK,IAAIrG,CAAC,GAAG,IAAI,CAACM,MAAM,GAAG,CAAC,EAAEN,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;QACzC,IAAI,IAAI,CAACA,CAAC,CAAC,CAACqE,KAAK,KAAKgC,IAAI,CAAChD,KAAK,CAACkF,MAAM,EAAE;UACvC,IAAI,CAACvI,CAAC,CAAC,CAAChB,MAAM,GAAGqH,IAAI,CAAC9K,OAAO,CAACoF,WAAW,EAAE;UAC3C;QACF;MACF;MACA,IAAI,CAACqG,IAAI,CAAC;QACR3C,KAAK,EAAEgC,IAAI,CAAChD,KAAK,CAACkF,MAAM;QACxBvJ,MAAM,EAAEqH,IAAI,CAAC9K,OAAO,CAACoF,WAAW;MAClC,CAAC,CAAC;MACF,IAAI,CAAC6H,IAAI,CAAC,UAACC,CAAC,EAAEC,CAAC;QAAA,OAAOD,CAAC,CAACpE,KAAK,GAAGqE,CAAC,CAACrE,KAAK,GAAI,CAAC,CAAC,GAAKoE,CAAC,CAACpE,KAAK,GAAGqE,CAAC,CAACrE,KAAK,GAAI,CAAC,GAAG,CAAE;MAAA,CAAC,CAAC;IACjF;EAAC;IAAAjJ,GAAA;IAAAC,KAAA,EAED,SAAA+H,OAAOuF,QAAQ,EAAEC,SAAS,EAAE;MAC1B,IAAMvE,KAAK,GAAGsE,QAAQ,GAAG,CAAC,KAAK,CAAC,GAAGA,QAAQ,GAAGA,QAAQ,CAACtF,KAAK,CAACkF,MAAM;MACnE,IAAM1B,QAAQ,GAAG8B,QAAQ,GAAG,CAAC,KAAK,CAAC,GAAGC,SAAS,GAAGD,QAAQ,CAAC9B,QAAQ;MACnE,KAAK,IAAI7G,CAAC,GAAG,IAAI,CAACM,MAAM,GAAG,CAAC,EAAEN,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;QACzC,IAAI,IAAI,CAACA,CAAC,CAAC,CAACqE,KAAK,KAAKA,KAAK,EAAE;UAC3B,IAAI,CAAC0C,MAAM,CAAC/G,CAAC,EAAE,CAAC,CAAC;UACjB;QACF;MACF;MACA,IAAI,CAAC6G,QAAQ,EAAE;QACb,KAAK,IAAI7G,EAAC,GAAG,IAAI,CAACM,MAAM,GAAG,CAAC,EAAEN,EAAC,IAAI,CAAC,EAAEA,EAAC,EAAE,EAAE;UACzC,IAAI,IAAI,CAACA,EAAC,CAAC,CAACqE,KAAK,GAAGA,KAAK,EAAE;YACzB,IAAI,CAACrE,EAAC,CAAC,CAACqE,KAAK,EAAE;UACjB;QACF;MACF;IACF;EAAC;IAAAjJ,GAAA;IAAAC,KAAA,EAED,SAAAwN,MAAA,EAAQ;MACN,IAAI,CAACvI,MAAM,GAAG,CAAC;IACjB;EAAC;EAAA,OAAA+H,UAAA;AAAA;AAGH,SAASS,KAAKA,CAAA,EAAG;EACf,IAAMC,QAAQ,GAAG,EAAE;EACnBA,QAAQ,CAAC/B,IAAI,CAACgC,KAAK,CAACD,QAAQ,EAAE3H,SAAS,CAAC;EACxCiE,MAAM,CAAC4D,cAAc,CAACF,QAAQ,EAAED,KAAK,CAACjN,SAAS,CAAC;EAChD,OAAOkN,QAAQ;AACjB;AACAD,KAAK,CAACjN,SAAS,GAAGwJ,MAAM,CAACC,MAAM,CAACC,KAAK,CAAC1J,SAAS,CAAC;AAChDwJ,MAAM,CAAC6D,mBAAmB,CAACb,UAAU,CAACxM,SAAS,CAAC,CAAC+D,OAAO,CAAC,UAAAuJ,UAAU;EAAA,OACjEL,KAAK,CAACjN,SAAS,CAACsN,UAAU,CAAC,GAAGd,UAAU,CAACxM,SAAS,CAACsN,UAAU,CAAC;AAAA,EAC/D;AAED,SAASC,eAAeA,CAACC,QAAQ,EAAE;EACjC,IAAIA,QAAQ,CAACpN,QAAQ,KAAKqN,IAAI,CAACC,YAAY,EAAE;IAC3C,MAAM,IAAI/I,KAAK,CAAC,sEAAsE,CAAC;EACzF;EACA,IAAIjF,OAAO;EACX,QAAQ8N,QAAQ,CAACG,OAAO,CAACC,WAAW,EAAE;IACpC,KAAK,IAAI;MACP,MAAM,IAAIjJ,KAAK,0CAAAkJ,MAAA,CAA0CL,QAAQ,CAACG,OAAO,4BAAAE,MAAA,CAAyBL,QAAQ,CAAC5I,SAAS,EAAG;IACzH,KAAK,IAAI;MACP,IAAIkJ,KAAK,GAAG/N,OAAO,CAACL,OAAO,CAAC,8CAA8C,CAAC;MAC3EA,OAAO,GAAGoO,KAAK,CAACC,IAAI,CAAC,IAAI,CAAC;MAC1B;IACF,KAAK,IAAI;MACPrO,OAAO,GAAGK,OAAO,CAACL,OAAO,CAAC,WAAW,CAAC;MACtC;IACF;MACEA,OAAO,GAAGK,OAAO,CAACL,OAAO,CAAC,aAAa,CAAC;EAAC;EAE7C,OAAOA,OAAO;AAChB;AAAC,IAEKsO,OAAO;EACX,SAAAA,QAAYR,QAAQ,EAAE;IAAAnO,sBAAA,OAAA2O,OAAA;IACpB,IAAI,CAACtO,OAAO,GAAG6N,eAAe,CAACC,QAAQ,CAAC;IACxC,IAAI,CAACS,KAAK,GAAG,IAAIhB,KAAK,EAAE;EAC1B;EAAC3N,mBAAA,CAAA0O,OAAA;IAAAzO,GAAA;IAAAC,KAAA,EAED,SAAA2D,OAAA,EAAS;MACP,OAAO,IAAI,CAACzD,OAAO,CAACyD,MAAM,CAACgK,KAAK,CAAC,IAAI,CAACzN,OAAO,EAAE6F,SAAS,CAAC;IAC3D;EAAC;EAAA,OAAAyI,OAAA;AAAA;AAGH,sDAAeA,OAAO;;ACnFU;AAEjB,SAASE,QAAQA,CAAC9E,eAAe,EAAEG,MAAM,EAAE7J,OAAO,EAAEyO,kBAAkB,EAAEC,UAAU,EAAE/K,OAAO,EAAE;EAC1G,IAAIgL,UAAU,GAAG,IAAI;EACrB,IAAIC,aAAa,GAAG,IAAI;EACxB,IAAMC,QAAQ,GAAGJ,kBAAkB,IAAIA,kBAAkB,CAACI,QAAQ,GAAGJ,kBAAkB,CAACI,QAAQ,GAAGxO,OAAO,CAACL,OAAO,CAAC6B,MAAM,CAAC;EAC1H,IAAMiN,SAAS,GAAGL,kBAAkB,IAAIA,kBAAkB,CAACK,SAAS,GAAGL,kBAAkB,CAACK,SAAS,GAAGhJ,SAAS;EAC/G,IAAMgC,KAAK,GAAG2G,kBAAkB,IAAIA,kBAAkB,CAAC3G,KAAK,GAAG2G,kBAAkB,CAAC3G,KAAK,GAAG4G,UAAU;EAEpGG,QAAQ,CAAC3O,GAAG,CAAC;IACX,iBAAiB,EAAE,MAAM;IACzB,YAAY,EAAE,MAAM;IACpB,SAAS,EAAE;EACb,CAAC,CAAC;EAEF,SAAS6O,aAAaA,CAAA,EAAG;IACvB,OAAOF,QAAQ,CAACzJ,WAAW,EAAE,GAAGzB,OAAO,CAAC,CAAC;EAC3C;;EAEAtD,OAAO,CAAC4J,MAAM,CAAC4E,QAAQ,EAAE;IACvBG,QAAQ,WAAAA,SAAA,EAAG;MACT,OAAOlH,KAAK;IACd,CAAC;IAEDmH,qBAAqB,WAAAA,sBAACnB,QAAQ,EAAE;MAC9Ba,UAAU,GAAG,IAAIL,eAAO,CAACR,QAAQ,CAAC;MAClCc,aAAa,GAAG,IAAIN,eAAO,CAACR,QAAQ,CAAC;MACrC9N,OAAO,CAACsE,MAAM,CAACqK,UAAU,CAAC3O,OAAO,CAAC;MAClCA,OAAO,CAACgF,KAAK,CAAC4J,aAAa,CAAC5O,OAAO,CAAC;MACpC2O,UAAU,CAAClL,MAAM,CAAC,CAAC,CAAC;MACpBmL,aAAa,CAACnL,MAAM,CAAC,CAAC,CAAC;IACzB,CAAC;IAEDyL,mBAAmB,WAAAA,oBAAA,EAAG;MACpB,IAAI,CAACJ,SAAS,EAAE;QACd,OAAO,IAAI;MACb;MACA,IAAIA,SAAS,KAAKD,QAAQ,EAAE;QAC1BA,QAAQ,CAAC3O,GAAG,CAAC,QAAQ,EAAE2B,MAAM,CAACC,gBAAgB,CAACgN,SAAS,CAAC,CAAC,CAAC,CAAC,CAACrL,MAAM,CAAC;MACtE;MACA,OAAOoL,QAAQ,CAACpL,MAAM,EAAE,GAAG,CAAC;IAC9B,CAAC;IAED0L,aAAa,WAAAA,cAAA,EAAG;MACd,IAAIC,YAAY,GAAGP,QAAQ,CAAC,CAAC,CAAC,CAACO,YAAY;MAC3CA,YAAY,GAAGA,YAAY,IAAI,IAAI,GAAGA,YAAY,GAAGP,QAAQ,CAAC,CAAC,CAAC,CAAC/N,QAAQ,CAACc,eAAe,CAACwN,YAAY;MACtG,OAAOA,YAAY,GAAGR,aAAa,CAACnL,MAAM,EAAE;IAC9C,CAAC;IAED4L,UAAU,WAAAA,WAAA,EAAG;MACX,OAAOV,UAAU,CAAClL,MAAM,EAAE;IAC5B,CAAC;IAED6L,gBAAgB,WAAAA,iBAAA,EAAG;MACjB,OAAOT,QAAQ,CAAC1I,SAAS,EAAE,GAAG0I,QAAQ,CAACzJ,WAAW,EAAE;IACtD,CAAC;IAEDmK,aAAa,WAAAA,cAAA,EAAG;MACd,OAAOV,QAAQ,CAAC1I,SAAS,EAAE;IAC7B,CAAC;IAEDsB,aAAa,WAAAA,cAAC+H,CAAC,EAAEC,OAAO,EAAE;MACxB,OAAO/F,eAAe,CAACjC,aAAa,CAAC+H,CAAC,EAAEC,OAAO,IAAId,UAAU,CAAC3O,OAAO,CAAC;IACxE,CAAC;IAEDgI,qBAAqB,WAAAA,sBAACwH,CAAC,EAAEC,OAAO,EAAE;MAChC,OAAO/F,eAAe,CAAC1B,qBAAqB,CAACwH,CAAC,EAAEC,OAAO,IAAId,UAAU,CAAC3O,OAAO,CAAC;IAChF,CAAC;IAED0P,gBAAgB,WAAAA,iBAAA,EAAG;MACjB,OAAO,CAAC7F,MAAM,CAACO,GAAG,IAAIyE,QAAQ,CAACM,aAAa,EAAE,GAAGN,QAAQ,CAACS,gBAAgB,EAAE,GAAGP,aAAa,EAAE;IAChG,CAAC;IAEDY,UAAU,WAAAA,WAAA,EAAG;MACX;MACA,IAAIC,OAAO,GAAG,CAAC;MACf,IAAIC,aAAa,GAAG,CAAC;MACrB,IAAIC,UAAU,GAAG,CAAC;MAClB,IAAIC,gBAAgB,GAAGlB,QAAQ,CAACM,aAAa,EAAE,GAAGN,QAAQ,CAACS,gBAAgB,EAAE,GAAGP,aAAa,EAAE;MAE/F,KAAK,IAAItK,CAAC,GAAGoF,MAAM,CAAC9E,MAAM,GAAG,CAAC,EAAEN,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;QAC3CqL,UAAU,GAAGjG,MAAM,CAACpF,CAAC,CAAC,CAACzE,OAAO,CAACoF,WAAW,CAAC,IAAI,CAAC;QAChD,IAAIyK,aAAa,GAAGC,UAAU,GAAGC,gBAAgB,EAAE;UACjD;QACF;QACAnB,aAAa,CAACL,KAAK,CAACxB,GAAG,CAAClD,MAAM,CAACpF,CAAC,CAAC,CAAC;QAClCoL,aAAa,IAAIC,UAAU;QAC3BF,OAAO,EAAE;MACX;MAEA,IAAIA,OAAO,GAAG,CAAC,EAAE;QACf/F,MAAM,CAACO,GAAG,GAAG,KAAK;QAClBP,MAAM,CAAChC,MAAM,CAACgC,MAAM,CAAC9E,MAAM,GAAG6K,OAAO,EAAE/F,MAAM,CAAC9E,MAAM,CAAC;QACrD8E,MAAM,CAACU,IAAI,IAAIqF,OAAO;QACtBf,QAAQ,CAACmB,cAAc,EAAE;MAC3B;IACF,CAAC;IAEDC,aAAa,WAAAA,cAAA,EAAG;MACd,OAAO,CAACpG,MAAM,CAACQ,GAAG,IAAKwE,QAAQ,CAACQ,UAAU,EAAE,GAAGR,QAAQ,CAACU,aAAa,EAAE,GAAGR,aAAa,EAAG;IAC5F,CAAC;IAEDmB,OAAO,WAAAA,QAAA,EAAG;MACR;MACA,IAAIN,OAAO,GAAG,CAAC;MACf,IAAIC,aAAa,GAAG,CAAC;MACrB,IAAIC,UAAU,GAAG,CAAC;MAClB,IAAIC,gBAAgB,GAAGlB,QAAQ,CAACU,aAAa,EAAE,GAAGV,QAAQ,CAACQ,UAAU,EAAE,GAAGN,aAAa,EAAE;MAEzF,KAAK,IAAItK,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGoF,MAAM,CAAC9E,MAAM,EAAEN,CAAC,EAAE,EAAE;QACtCqL,UAAU,GAAGjG,MAAM,CAACpF,CAAC,CAAC,CAACzE,OAAO,CAACoF,WAAW,CAAC,IAAI,CAAC;QAChD,IAAIyK,aAAa,GAAGC,UAAU,GAAGC,gBAAgB,EAAE;UACjD;QACF;QACApB,UAAU,CAACJ,KAAK,CAACxB,GAAG,CAAClD,MAAM,CAACpF,CAAC,CAAC,CAAC;QAC/BoL,aAAa,IAAIC,UAAU;QAC3BF,OAAO,EAAE;MACX;MAEA,IAAIA,OAAO,GAAG,CAAC,EAAE;QACf;QACA;QACAjB,UAAU,CAAClL,MAAM,CAACkL,UAAU,CAAClL,MAAM,EAAE,GAAGoM,aAAa,CAAC;QACtDhG,MAAM,CAACQ,GAAG,GAAG,KAAK;QAClBR,MAAM,CAAChC,MAAM,CAAC,CAAC,EAAE+H,OAAO,CAAC;QACzB/F,MAAM,CAACS,KAAK,IAAIsF,OAAO;MACzB;IACF,CAAC;IAEDI,cAAc,WAAAA,eAAA,EAAG;MACf,IAAI,CAACnG,MAAM,CAAC9E,MAAM,EAAE;QAClB;MACF;;MAEA;MACA,IAAMoL,kBAAkB,GAAGtG,MAAM,CAACuG,MAAM,CAAC,UAACC,IAAI,EAAEvF,IAAI;QAAA,OAAKuF,IAAI,GAAGvF,IAAI,CAAC9K,OAAO,CAACoF,WAAW,CAAC,IAAI,CAAC;MAAA,GAAE,CAAC,CAAC;MAElG,IAAIkL,gBAAgB,GAAG,CAAC;QAAEC,QAAQ,GAAG,CAAC;MACtC5B,UAAU,CAACJ,KAAK,CAAClK,OAAO,CAAC,UAAAyG,IAAI,EAAI;QAC/B,IAAIA,IAAI,CAAChC,KAAK,GAAGe,MAAM,CAACS,KAAK,EAAE;UAC7BgG,gBAAgB,IAAIxF,IAAI,CAACrH,MAAM;UAC/B8M,QAAQ,EAAE;QACZ;MACF,CAAC,CAAC;MAEF,IAAIC,mBAAmB,GAAG,CAAC;QAAEC,WAAW,GAAG,CAAC;MAC5C7B,aAAa,CAACL,KAAK,CAAClK,OAAO,CAAC,UAAAyG,IAAI,EAAI;QAClC,IAAIA,IAAI,CAAChC,KAAK,IAAIe,MAAM,CAACU,IAAI,EAAE;UAC7BiG,mBAAmB,IAAI1F,IAAI,CAACrH,MAAM;UAClCgN,WAAW,EAAE;QACf;MACF,CAAC,CAAC;MAEF,IAAMC,WAAW,GAAGP,kBAAkB,GAAGG,gBAAgB,GAAGE,mBAAmB;MAC/E,IAAMG,iBAAiB,GAAGD,WAAW,IAAIH,QAAQ,GAAGE,WAAW,GAAG5G,MAAM,CAAC9E,MAAM,CAAC;;MAEhF;MACA,IAAI6L,gBAAgB,GAAG/G,MAAM,CAACa,YAAY,KAAK,IAAI,IAAIb,MAAM,CAACW,QAAQ,GAAGX,MAAM,CAACa,YAAY;MAC5F,IAAImG,mBAAmB,GAAGhH,MAAM,CAACc,YAAY,KAAK,IAAI,IAAId,MAAM,CAACY,QAAQ,GAAGZ,MAAM,CAACc,YAAY;MAC/F,IAAImG,mBAAmB,GAAGF,gBAAgB,GAAG,CAAC/G,MAAM,CAACW,QAAQ,GAAGX,MAAM,CAACa,YAAY,IAAIiG,iBAAiB,GAAG,CAAC;MAC5G,IAAII,sBAAsB,GAAGF,mBAAmB,GAAG,CAAChH,MAAM,CAACc,YAAY,GAAGd,MAAM,CAACY,QAAQ,IAAIkG,iBAAiB,GAAG,CAAC;;MAElH;MACAhC,UAAU,CAAClL,MAAM,CAAC6M,gBAAgB,GAAGQ,mBAAmB,CAAC;MACzDlC,aAAa,CAACnL,MAAM,CAAC+M,mBAAmB,GAAGO,sBAAsB,CAAC;IACpE,CAAC;IAEDC,kBAAkB,WAAAA,mBAACC,mBAAmB,EAAE;MACtC;MACA,IAAIpH,MAAM,CAACa,YAAY,KAAK,IAAI,IAAIb,MAAM,CAACW,QAAQ,GAAGX,MAAM,CAACa,YAAY,EAAE;QACzE,IAAIwG,IAAI,GAAGvC,UAAU,CAAClL,MAAM,EAAE,GAAGwN,mBAAmB;QACpDpC,QAAQ,CAAC1I,SAAS,CAAC0I,QAAQ,CAAC1I,SAAS,EAAE,GAAG+K,IAAI,CAAC;QAC/C,OAAM,CAACA,IAAI,IAAIrC,QAAQ,CAAC1I,SAAS,EAAE,IAAI,CAAC,EAAE;UACxCyI,aAAa,CAACnL,MAAM,CAACmL,aAAa,CAACnL,MAAM,EAAE,GAAGyN,IAAI,CAAC;UACnDrC,QAAQ,CAAC1I,SAAS,CAAC0I,QAAQ,CAAC1I,SAAS,EAAE,GAAG+K,IAAI,CAAC;QACjD;MACF;IACF,CAAC;IAEDC,cAAc,WAAAA,eAACC,OAAO,EAAE;MACtB,IAAI,CAACA,OAAO,CAACC,SAAS,CAACtM,MAAM,EAAE;QAC7B;MACF;MACA,IAAMtB,MAAM,GAAGoG,MAAM,CAACqC,eAAe,CAACkF,OAAO,CAACC,SAAS,CAAC;MACxD,IAAMC,aAAa,GAAG3C,UAAU,CAAClL,MAAM,EAAE,GAAGA,MAAM;MAClD,IAAI6N,aAAa,IAAI,CAAC,EAAE;QACtB3C,UAAU,CAAClL,MAAM,CAAC6N,aAAa,CAAC;QAChC;MACF;MACA,IAAMC,QAAQ,GAAG1C,QAAQ,CAAC1I,SAAS,EAAE;MACrC,IAAMqL,WAAW,GAAGD,QAAQ,GAAGD,aAAa;MAC5CzC,QAAQ,CAAC4C,SAAS,GAAG;QAAEC,QAAQ,EAAEH,QAAQ;QAAEhH,IAAI,EAAEiH;MAAY,CAAC;MAC9D7C,UAAU,CAAClL,MAAM,CAAC,CAAC,CAAC;MACpBoL,QAAQ,CAAC1I,SAAS,CAACqL,WAAW,CAAC;IACjC,CAAC;IAEDG,eAAe,WAAAA,gBAAA,EAAG;MAChBhD,UAAU,CAAClL,MAAM,CAAC,CAAC,CAAC;MACpBkL,UAAU,CAACJ,KAAK,CAACjB,KAAK,EAAE;IAC1B,CAAC;IAEDsE,kBAAkB,WAAAA,mBAAA,EAAG;MACnBhD,aAAa,CAACnL,MAAM,CAAC,CAAC,CAAC;MACvBmL,aAAa,CAACL,KAAK,CAACjB,KAAK,EAAE;IAC7B,CAAC;IAEDuE,eAAe,WAAAA,gBAAC/G,IAAI,EAAEQ,QAAQ,EAAE;MAC9BqD,UAAU,CAACJ,KAAK,CAAC1G,MAAM,CAACiD,IAAI,EAAEQ,QAAQ,CAAC;MACvCsD,aAAa,CAACL,KAAK,CAAC1G,MAAM,CAACiD,IAAI,EAAEQ,QAAQ,CAAC;IAC5C,CAAC;IAEDwG,UAAU,WAAAA,WAAChH,IAAI,EAAE;MACf,IAAI,CAAC+G,eAAe,CAAC/G,IAAI,CAAC;MAC1B,OAAOjB,MAAM,CAAChC,MAAM,CAACiD,IAAI,CAAC;IAC5B;EACF,CAAC,CAAC;EAEF,OAAO+D,QAAQ;AACjB;;;;;;;;AC1NqC;AAAA,IAE/BkD,OAAO;EAEX,SAAAA,QAAYC,MAAM,EAAEC,MAAM,EAAEC,KAAK,EAAErD,QAAQ,EAAEhF,MAAM,EAAEsI,QAAQ,EAAEC,MAAM,EAAE;IAAAzS,sBAAA,OAAAoS,OAAA;IACrE,IAAI,CAACE,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,KAAK,GAAGA,KAAK;IAClB,IAAI,CAACrD,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAAChF,MAAM,GAAGA,MAAM;IAEpB,IAAI,CAACsI,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,MAAM,GAAGA,MAAM;IAEpB,IAAI,CAACC,SAAS,GAAG,KAAK;IACtB,IAAI,CAACC,QAAQ,GAAG,KAAK;IAErB,IAAMC,aAAa,GAAG1D,QAAQ,CAACG,QAAQ,EAAE;IACzC,IAAI,CAACwD,UAAU,GAAGD,aAAa,CAACE,OAAO,GAAGF,aAAa,GAAGP,MAAM;IAEhE,IAAI,CAACU,aAAa,GAAG,CAAC,CAAC;IACvB,IAAI,CAACC,aAAa,CAACT,KAAK,CAACU,OAAO,CAAC;IACjC,IAAI,CAACC,qBAAqB,EAAE;EAC9B;EAACjT,mBAAA,CAAAmS,OAAA;IAAAlS,GAAA;IAAAC,KAAA,EAED,SAAA6S,cAAcG,WAAW,EAAE;MACzB,IAAI,CAACA,WAAW,IAAI,EAAEA,WAAW,GAAGA,WAAW,CAACC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,EAAE;QAC3E;MACF;MACA,IAAIC,cAAc;MAElB,IAAI;QACF,IAAI,CAACf,MAAM,CAACa,WAAW,CAAC,CAACG,MAAM,CAAC,IAAI,CAACT,UAAU,EAAE,CAAC,CAAC,CAAC;QACpDQ,cAAc,GAAG,IAAI,CAACf,MAAM,CAACa,WAAW,CAAC,CAAC,IAAI,CAACN,UAAU,CAAC;MAC5D,CAAC,CACD,OAAOU,KAAK,EAAE;QACZA,KAAK,CAACC,OAAO,GAAG,uEAAAhF,MAAA,CACE2E,WAAW,qBAAiB,GAC5CI,KAAK,CAACC,OAAO;QACf,MAAMD,KAAK;MACb;MAEA7S,OAAO,CAAC4J,MAAM,CAAC+I,cAAc,EAAE,IAAI,CAACN,aAAa,CAAC;MAClD,IAAI,CAACA,aAAa,GAAGM,cAAc;IACrC;EAAC;IAAAnT,GAAA;IAAAC,KAAA,EAED,SAAA+S,sBAAA,EAAwB;MAAA,IAAAO,KAAA;MACtB;MACA,IAAMC,aAAa,GAAG,CAAC,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC;MAClG,KAAK,IAAI5O,CAAC,GAAG4O,aAAa,CAACtO,MAAM,GAAG,CAAC,EAAEN,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;QAClD,IAAI,CAACiO,aAAa,CAACW,aAAa,CAAC5O,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC4O,aAAa,CAAC5O,CAAC,CAAC,CAAC,CAAC6O,IAAI,CAAC,IAAI,CAAC;MAC1E;;MAEA;MACA,IAAMC,WAAW,GAAG,CAAC,WAAW,EAAE,YAAY,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,eAAe,EAAE,sBAAsB,EAAE,oBAAoB,CAAC;MAAC,IAAAC,KAAA,YAAAA,MAAAC,EAAA,EACrG;QAChD,IAAIC,QAAQ;UAAEC,IAAI,GAAGP,KAAI,CAAClB,KAAK,CAACqB,WAAW,CAAC9O,EAAC,CAAC,CAAC;QAC/CqF,MAAM,CAAC8J,cAAc,CAACR,KAAI,EAAEG,WAAW,CAAC9O,EAAC,CAAC,EAAE;UAC1CsC,GAAG,EAAE,SAAAA,IAAA;YAAA,OAAM2M,QAAQ;UAAA;UACnBG,GAAG,EAAE,SAAAA,IAAC/T,KAAK,EAAK;YACd4T,QAAQ,GAAG5T,KAAK;YAChBsT,KAAI,CAACV,aAAa,CAACa,WAAW,CAAC9O,EAAC,CAAC,CAAC,GAAG3E,KAAK;YAC1C,IAAI6T,IAAI,EAAE;cACRP,KAAI,CAACnB,MAAM,CAAC0B,IAAI,CAAC,CAACV,MAAM,CAACG,KAAI,CAACZ,UAAU,EAAE1S,KAAK,CAAC;YAClD;UACF;QACF,CAAC,CAAC;MACJ,CAAC;MAZD,KAAK,IAAI2E,EAAC,GAAG8O,WAAW,CAACxO,MAAM,GAAG,CAAC,EAAEN,EAAC,IAAI,CAAC,EAAEA,EAAC,EAAE;QAAA+O,KAAA,CAAAC,EAAA;MAAA;;MAchD;MACA,IAAMK,oBAAoB,GAAG,CAAC,aAAa,EAAE,YAAY,EAAE,cAAc,CAAC;MAAC,IAAAC,MAAA,YAAAA,OAAAC,GAAA,EAChB;QACzDlK,MAAM,CAAC8J,cAAc,CAACR,KAAI,CAACV,aAAa,EAAEoB,oBAAoB,CAACrP,GAAC,CAAC,EAAE;UACjEsC,GAAG,EAAE,SAAAA,IAAA;YAAA,OAAMqM,KAAI,CAACU,oBAAoB,CAACrP,GAAC,CAAC,CAAC;UAAA;QAC1C,CAAC,CAAC;MACJ,CAAC;MAJD,KAAK,IAAIA,GAAC,GAAGqP,oBAAoB,CAAC/O,MAAM,GAAG,CAAC,EAAEN,GAAC,IAAI,CAAC,EAAEA,GAAC,EAAE;QAAAsP,MAAA,CAAAC,GAAA;MAAA;;MAMzD;MACAlK,MAAM,CAAC8J,cAAc,CAAC,IAAI,CAAClB,aAAa,EAAE,UAAU,EAAE;QACpD3L,GAAG,EAAE,SAAAA,IAAA;UAAA,OAAMqM,KAAI,CAACd,QAAQ;QAAA;QACxBuB,GAAG,EAAE,SAAAA,IAAC/T,KAAK;UAAA,OAAM,EAAEsT,KAAI,CAACd,QAAQ,GAAGxS,KAAK,CAAC,GAAIsT,KAAI,CAACjB,QAAQ,EAAE,GAAG,IAAI;QAAA;MACrE,CAAC,CAAC;IACJ;EAAC;IAAAtS,GAAA;IAAAC,KAAA,EAED,SAAAmU,QAAQnU,KAAK,EAAE;MACb,IAAI,CAACuS,SAAS,GAAGvS,KAAK;IACxB;EAAC;IAAAD,GAAA;IAAAC,KAAA,EAED,SAAAoU,MAAA,EAAQ;MACN,OAAO,IAAI,CAACrK,MAAM,CAACQ,GAAG;IACxB;EAAC;IAAAxK,GAAA;IAAAC,KAAA,EAED,SAAAqU,MAAA,EAAQ;MACN,OAAO,IAAI,CAACtK,MAAM,CAACO,GAAG;IACxB;EAAC;IAAAvK,GAAA;IAAAC,KAAA,EAED,SAAAsU,QAAA,EAAU;MACR,OAAO,CAAC,IAAI,CAACvK,MAAM,CAAC9E,MAAM;IAC5B;EAAC;IAAAlF,GAAA;IAAAkH,GAAA,EAED,SAAAA,IAAA,EAAmB;MACjB,OAAO,IAAI,CAAC8C,MAAM,CAAC4C,QAAQ,EAAE,CAAC1H,MAAM;IACtC;EAAC;IAAAlF,GAAA;IAAAkH,GAAA,EAED,SAAAA,IAAA,EAAkB;MAChB,OAAO,IAAI,CAAC8C,MAAM,CAAC8C,YAAY,EAAE;IACnC;EAAC;IAAA9M,GAAA;IAAAkH,GAAA,EAED,SAAAA,IAAA,EAAiB;MACf,OAAO,IAAI,CAAC8C,MAAM,CAACgD,WAAW,EAAE;IAClC;EAAC;IAAAhN,GAAA;IAAAC,KAAA,EAED,SAAA8K,OAAOyJ,QAAQ,EAAE;MACf,IAAI,CAACxK,MAAM,CAACe,MAAM,CAACyJ,QAAQ,CAAC;MAC5B,IAAI,CAAClC,QAAQ,EAAE;MACf,IAAI,CAACtD,QAAQ,CAACqB,OAAO,EAAE;MACvB,IAAI,CAACrB,QAAQ,CAACc,UAAU,EAAE;IAC5B;EAAC;IAAA9P,GAAA;IAAAC,KAAA,EAED,SAAAgF,QAAQuP,QAAQ,EAAgB;MAAA,IAAdC,OAAO,GAAAzO,SAAA,CAAAd,MAAA,QAAAc,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,CAAC,CAAC;MAC5B,IAAI,CAACgE,MAAM,CAAC/E,OAAO,CAACuP,QAAQ,EAAEC,OAAO,CAACpJ,YAAY,CAAC;MACnD,IAAI,CAACiH,QAAQ,EAAE;MACf,IAAI,CAACtD,QAAQ,CAACqB,OAAO,EAAE;MACvB,IAAI,CAACrB,QAAQ,CAACc,UAAU,EAAE;IAC5B;EAAC;IAAA9P,GAAA;IAAAC,KAAA,EAED,SAAAyU,aAAa5I,IAAI,EAAEC,IAAI,EAAE4I,IAAI,EAAE;MAC7B,IAAI,OAAO7I,IAAI,KAAK,UAAU,EAAE;QAC9B,IAAI,CAAC8I,gBAAgB,CAAC9I,IAAI,EAAEC,IAAI,CAAC;MACnC,CAAC,MAAM;QACL,IAAI,CAAC8I,iBAAiB,CAAC/I,IAAI,EAAEC,IAAI,EAAE4I,IAAI,CAAC;MAC1C;MACA,IAAI,CAACrC,QAAQ,EAAE;IACjB;EAAC;IAAAtS,GAAA;IAAAC,KAAA,EAED,SAAA2U,iBAAiBE,EAAE,EAAgB;MAAA,IAAAC,MAAA;MAAA,IAAdN,OAAO,GAAAzO,SAAA,CAAAd,MAAA,QAAAc,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,CAAC,CAAC;MAC/B,IAAI,CAACgE,MAAM,CAACgL,KAAK,CAAC,CAAC,CAAC,CAACxQ,OAAO,CAAC,UAACgD,OAAO,EAAK;QACxC;QACA;QACAuN,MAAI,CAACE,WAAW,CAACzN,OAAO,EAAEsN,EAAE,CAACtN,OAAO,CAACyD,IAAI,EAAEzD,OAAO,CAACS,KAAK,EAAET,OAAO,CAACrH,OAAO,CAAC,EAAEsU,OAAO,CAAC;MACtF,CAAC,CAAC;IACJ;EAAC;IAAAzU,GAAA;IAAAC,KAAA,EAED,SAAA4U,kBAAkB5L,KAAK,EAAEuL,QAAQ,EAAgB;MAAA,IAAdC,OAAO,GAAAzO,SAAA,CAAAd,MAAA,QAAAc,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,CAAC,CAAC;MAC7C,IAAIiD,KAAK,GAAG,CAAC,KAAK,CAAC,EAAE;QACnB,MAAM,IAAI7D,KAAK,CAAC,iBAAiB,GAAG6D,KAAK,GAAG,8CAA8C,CAAC;MAC7F;MACA,IAAMiM,MAAM,GAAGjM,KAAK,GAAG,IAAI,CAACe,MAAM,CAACS,KAAK;;MAExC;MACA,IAAIyK,MAAM,IAAI,CAAC,IAAIA,MAAM,GAAG,IAAI,CAAClL,MAAM,CAAC9E,MAAM,EAAE;QAC9C,IAAI,CAAC+P,WAAW,CAAC,IAAI,CAACjL,MAAM,CAACkL,MAAM,CAAC,EAAEV,QAAQ,EAAEC,OAAO,CAAC;MAC1D;MACA;MAAA,KACK,IAAGxL,KAAK,IAAI,IAAI,CAACe,MAAM,CAACiC,cAAc,EAAE,IAAIhD,KAAK,IAAI,IAAI,CAACe,MAAM,CAACoC,cAAc,EAAE,EAAE;QACtF,IAAG5L,OAAO,CAAC2U,OAAO,CAACX,QAAQ,CAAC,IAAI,CAACA,QAAQ,CAACtP,MAAM,EAAE;UAChD,IAAI,CAAC8J,QAAQ,CAACgD,eAAe,CAAC/I,KAAK,EAAE,CAACwL,OAAO,CAACpJ,YAAY,IAAIpC,KAAK,KAAK,IAAI,CAACe,MAAM,CAACW,QAAQ,CAAC;UAC7F,IAAI,CAAC8J,OAAO,CAACpJ,YAAY,IAAIpC,KAAK,KAAK,IAAI,CAACe,MAAM,CAACiC,cAAc,EAAE,EAAE;YACnE,IAAI,CAACjC,MAAM,CAACkC,iBAAiB,EAAE;UACjC,CAAC,MACI;YACH,IAAI,CAAClC,MAAM,CAACmC,iBAAiB,EAAE;UACjC;QACF;MACF;IACF;EAAC;IAAAnM,GAAA;IAAAC,KAAA,EAED,SAAAgV,YAAYzN,OAAO,EAAEgN,QAAQ,EAAgB;MAAA,IAAAY,MAAA;MAAA,IAAdX,OAAO,GAAAzO,SAAA,CAAAd,MAAA,QAAAc,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,CAAC,CAAC;MACzC,IAAI,CAACxF,OAAO,CAAC2U,OAAO,CAACX,QAAQ,CAAC,EAAE;QAC9B;MACF;MACA,IAAI9C,QAAQ,GAAG,IAAI,CAAC1H,MAAM,CAACgC,OAAO,CAACxE,OAAO,CAAC;MAC3C,IAAI,CAACgN,QAAQ,CAAClJ,OAAO,EAAE,CAAC+J,IAAI,CAAC,UAAAC,OAAO;QAAA,OAAIA,OAAO,KAAK9N,OAAO,CAACyD,IAAI;MAAA,EAAC,EAAE;QACjEzD,OAAO,CAACkE,EAAE,GAAGpC,iBAAiB;QAC9B;QACA,IAAI,CAACmL,OAAO,CAACpJ,YAAY,IAAI,CAACmJ,QAAQ,CAACtP,MAAM,EAAE;UAC7C;UACA,IACGwM,QAAQ,KAAK,CAAC,IAAI,IAAI,CAAC1H,MAAM,CAACQ,GAAG,IACjCkH,QAAQ,KAAK,CAAC,IAAI,IAAI,CAAC1H,MAAM,CAAC0H,QAAQ,GAAG,CAAC,CAAC,CAACjG,QAAS,EACtD;YACAjE,OAAO,CAACiE,QAAQ,GAAG,IAAI;UACzB;QACF;MACF;MACA+I,QAAQ,CAAChQ,OAAO,CAAC,UAAC8Q,OAAO,EAAK;QAC5B,IAAIA,OAAO,KAAK9N,OAAO,CAACyD,IAAI,EAAE;UAC5ByG,QAAQ,EAAE;QACZ,CAAC,MAAM;UACL;UACA0D,MAAI,CAACpL,MAAM,CAACkB,MAAM,CAACwG,QAAQ,GAAG,CAAC,EAAE4D,OAAO,EAAE,CAACb,OAAO,CAACpJ,YAAY,IAAIqG,QAAQ,KAAK,CAAC,CAAC,CAAC;QACrF;MACF,CAAC,CAAC;IACJ;EAAC;IAAA1R,GAAA;IAAAC,KAAA,EAED,SAAAsV,oBAAA,EAAsB;MACpB,IAAIC,MAAM,GAAG,IAAI;QAAEC,SAAS,GAAG,CAAC;MAChC,IAAIC,OAAO,GAAG,KAAK;QAAEC,UAAU,GAAG,KAAK;MACvC,IAAMzQ,MAAM,GAAG,IAAI,CAAC8E,MAAM,CAAC9E,MAAM;MAEjC,KAAK,IAAIN,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGM,MAAM,EAAEN,CAAC,EAAE,EAAE;QAC/B,IAAMqG,IAAI,GAAG,IAAI,CAACjB,MAAM,CAACpF,CAAC,CAAC;QAC3B,IAAMgR,OAAO,GAAG3K,IAAI,CAAC9K,OAAO,CAACuF,MAAM,EAAE,CAACjE,GAAG;QAEzC,IAAI+T,MAAM,KAAKI,OAAO,EAAE;UAAE;UACxB,IAAM3F,UAAU,GAAGhF,IAAI,CAAC9K,OAAO,CAACoF,WAAW,CAAC,IAAI,CAAC;UACjD,IAAM9D,GAAG,GAAG,IAAI,CAACuN,QAAQ,CAACQ,UAAU,EAAE,GAAGiG,SAAS,GAAGxF,UAAU;UAE/D,IAAI,CAACyF,OAAO,IAAIjU,GAAG,GAAG,IAAI,CAACuN,QAAQ,CAACU,aAAa,EAAE,EAAE;YACnDgG,OAAO,GAAG,IAAI;YACd,IAAI,CAAC,YAAY,CAAC,GAAGzK,IAAI,CAACA,IAAI;YAC9B,IAAI,CAAC,mBAAmB,CAAC,GAAGA,IAAI,CAAC9K,OAAO;YACxC,IAAI,CAAC,iBAAiB,CAAC,GAAG8K,IAAI,CAAChD,KAAK;UACtC;UACA,IAAI,CAAC0N,UAAU,KAAKlU,GAAG,IAAI,IAAI,CAACuN,QAAQ,CAACS,gBAAgB,EAAE,IAAK7K,CAAC,KAAKM,MAAM,GAAG,CAAC,IAAI,IAAI,CAACoP,KAAK,EAAG,CAAC,EAAE;YAClGqB,UAAU,GAAG,IAAI;YACjB,IAAI,CAAC,eAAe,CAAC,GAAG1K,IAAI,CAACA,IAAI;YACjC,IAAI,CAAC,sBAAsB,CAAC,GAAGA,IAAI,CAAC9K,OAAO;YAC3C,IAAI,CAAC,oBAAoB,CAAC,GAAG8K,IAAI,CAAChD,KAAK;UACzC;UACAwN,SAAS,IAAIxF,UAAU;QACzB;QACAuF,MAAM,GAAGI,OAAO;QAEhB,IAAIF,OAAO,IAAIC,UAAU,EAAE;UACzB;QACF;MACF;IACF;EAAC;EAAA,OAAAzD,OAAA;AAAA;AAIH,sDAAeA,OAAO;;ACvO4B;AACS;AACZ;AACF;AACF;AACE;AAE7C1R,OAAO,CAACqV,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAE5BC,QAAQ,CAAC,cAAc,EAAEjW,YAAY,CAAC,CACtCkW,GAAG,CAAC,CAAC,cAAc,EAAE,UAAClW,YAAY,EAAK;EACtC,IAAMmW,GAAG,GAAGxV,OAAO,CAACL,OAAO;EAC3B,EAAE6B,MAAM,CAACiU,MAAM,IAAID,GAAG,CAACE,EAAE,IAAIF,GAAG,CAACE,EAAE,CAACC,MAAM,CAAC,GAAI,IAAItW,YAAY,EAAE,CAAEK,WAAW,CAAC8V,GAAG,CAAC,GAAG,IAAI;EAC1FnP,2BAA2B,EAAE;AAC/B,CAAC,CAAC,CAAC,CAEFuP,SAAS,CAAC,kBAAkB,EAAE,YAAY;EACzC,OAAO;IACLC,QAAQ,EAAE,GAAG;IACbC,UAAU,EAAE,CACV,QAAQ,EACR,UAAU,EACV,UAAUrO,KAAK,EAAE9H,OAAO,EAAE;MAAA,IAAAoT,KAAA;MACxB,IAAI,CAACtE,SAAS,GAAG9O,OAAO;MACxB,IAAI,CAAC6O,QAAQ,GAAG7O,OAAO;MACvB,IAAI,CAAC8H,KAAK,GAAGA,KAAK;MAElBzH,OAAO,CAACgE,OAAO,CAACrE,OAAO,CAACwE,QAAQ,EAAE,EAAE,UAAA4R,KAAK,EAAI;QAC3C,IAAIA,KAAK,CAACnI,OAAO,CAACC,WAAW,EAAE,KAAK,OAAO,EAAE;UAC3CkF,KAAI,CAACvE,QAAQ,GAAGxO,OAAO,CAACL,OAAO,CAACoW,KAAK,CAAC;QACxC;MACF,CAAC,CAAC;MAEF,OAAO,IAAI;IACb,CAAC;EAEL,CAAC;AACH,CAAC,CAAC,CAEDH,SAAS,CAAC,UAAU,EAAE,CACrB,MAAM,EACN,WAAW,EACX,YAAY,EACZ,UAAU,EACV,WAAW,EACX,IAAI,EACJ,QAAQ,EACR,UAAUI,OAAO,EAAE1P,SAAS,EAAE+H,UAAU,EAAE4H,QAAQ,EAAEC,SAAS,EAAE3P,EAAE,EAAEqL,MAAM,EAAE;EAEzE,OAAO;IACLuE,OAAO,EAAE,CAAC,oBAAoB,CAAC;IAC/BN,QAAQ,EAAE,GAAG;IACbO,UAAU,EAAE,SAAS;IACrBC,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE,IAAI;IACdC,IAAI,EAAEA;EACR,CAAC;EAED,SAASA,IAAIA,CAAC5E,MAAM,EAAEhS,OAAO,EAAEkS,KAAK,EAAE2E,WAAW,EAAEC,MAAM,EAAE;IACzD,IAAMC,KAAK,GAAG7E,KAAK,CAAC8E,QAAQ,CAACD,KAAK,CAAC,qCAAqC,CAAC;IACzE,IAAI,CAACA,KAAK,EAAE;MACV,MAAM,IAAI9R,KAAK,CAAC,oEAAoE,GAAGiN,KAAK,CAAC8E,QAAQ,GAAG,IAAI,CAAC;IAC/G;IAEA,SAASC,WAAWA,CAACnX,KAAK,EAAEoX,YAAY,EAAEC,OAAO,EAAE;MACjD,IAAI,CAACA,OAAO,EAAE;QACZrX,KAAK,GAAGA,KAAK,KAAK,IAAI,GAAGoX,YAAY,GAAGlM,IAAI,CAACoM,KAAK,CAACtX,KAAK,CAAC;MAC3D;MACA,OAAOuX,KAAK,CAACvX,KAAK,CAAC,GAAGoX,YAAY,GAAGpX,KAAK;IAC5C;IAEA,SAASwX,gBAAgBA,CAACxX,KAAK,EAAEoX,YAAY,EAAEC,OAAO,EAAE;MACtD,IAAMlV,MAAM,GAAGgQ,MAAM,CAACnS,KAAK,CAAC,CAACkS,MAAM,CAAC;MACpC,OAAOiF,WAAW,CAAChV,MAAM,EAAEiV,YAAY,EAAEC,OAAO,CAAC;IACnD;IAEA,SAASI,gBAAgBA,CAACzX,KAAK,EAAEoX,YAAY,EAAE;MAC7C,IAAMjV,MAAM,GAAGgQ,MAAM,CAACnS,KAAK,CAAC,CAACkS,MAAM,CAAC;MACpC,OAAO,OAAO/P,MAAM,KAAK,SAAS,GAAGA,MAAM,GAAGiV,YAAY;IAC5D;IAEA,IAAMM,UAAU,GAAG,CAAC;IACpB,IAAMC,cAAc,GAAG,EAAE;IACzB,IAAMC,WAAW,GAAG,GAAG;IACvB,IAAMC,eAAe,GAAG,GAAG;IAC3B,IAAMC,sBAAsB,GAAG,IAAI;IACnC,IAAMC,mBAAmB,GAAG,CAAC;IAC7B,IAAMC,kBAAkB,GAAG,GAAG;IAC9B,IAAMC,yBAAyB,GAAG,EAAE;IAEpC,IAAIC,UAAU,GAAG,IAAI;IACrB,IAAMC,QAAQ,GAAGlB,KAAK,CAAC,CAAC,CAAC;IACzB,IAAMmB,cAAc,GAAGnB,KAAK,CAAC,CAAC,CAAC;IAC/B,IAAMtI,kBAAkB,GAAGoI,WAAW,CAAC,CAAC,CAAC;IACzC,IAAMlN,UAAU,GAAGqB,IAAI,CAACC,GAAG,CAACuM,UAAU,EAAEF,gBAAgB,CAACpF,KAAK,CAACvI,UAAU,EAAE8N,cAAc,CAAC,CAAC;IAC3F,IAAM9T,OAAO,GAAGqH,IAAI,CAACC,GAAG,CAACyM,WAAW,EAAEJ,gBAAgB,CAACpF,KAAK,CAACvO,OAAO,EAAEgU,eAAe,EAAE,IAAI,CAAC,CAAC;IAC7F,IAAMQ,aAAa,GAAGZ,gBAAgB,CAACrF,KAAK,CAACiG,aAAa,EAAEP,sBAAsB,CAAC;IACnF,IAAIhO,UAAU,GAAG0N,gBAAgB,CAACpF,KAAK,CAACtI,UAAU,EAAEiO,mBAAmB,CAAC;IACxE,IAAIO,SAAS,GAAG,CAAC,CAAC,CAAC;IACnB,IAAIC,OAAO,GAAG,EAAE;IAEhB,IAAM3O,eAAe,GAAG,IAAIhD,eAAe,CAACC,SAAS,EAAEC,EAAE,CAAC;IAC1D,IAAMiD,MAAM,GAAG,IAAIJ,YAAY,CAACC,eAAe,EAAEC,UAAU,EAAEC,UAAU,CAAC;IACxE,IAAMiF,QAAQ,GAAG,IAAIL,QAAQ,CAAC9E,eAAe,EAAEG,MAAM,EAAE7J,OAAO,EAAEyO,kBAAkB,EAAEC,UAAU,EAAE/K,OAAO,CAAC;IACxG,IAAMiP,OAAO,GAAG,IAAIb,eAAO,CAACC,MAAM,EAAEC,MAAM,EAAEC,KAAK,EAAErD,QAAQ,EAAEhF,MAAM,EAAEsI,QAAQ,EAAEC,MAAM,CAAC;IAEtF,IAAI3D,kBAAkB,EAAE;MACtBA,kBAAkB,CAACmE,OAAO,GAAGA,OAAO;IACtC;IAEA,IAAM0F,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAA;MAAA,OACrBxO,MAAM,CAACxJ,SAAS,CAACiY,QAAQ,CAAC3X,IAAI,CAACoX,UAAU,CAAC,KAAK,iBAAiB,IAAI,OAAOA,UAAU,CAACjR,GAAG,KAAK,UAAU;IAAA;IAE1GiR,UAAU,GAAG/F,MAAM,CAACiG,cAAc,CAAC,CAAClG,MAAM,CAAC,CAAC,CAAC;IAC7C,IAAI,CAACsG,iBAAiB,EAAE,EAAE;MACxBN,UAAU,GAAGrR,SAAS,CAACI,GAAG,CAACmR,cAAc,CAAC,CAAC,CAAC;MAC5C,IAAI,CAACI,iBAAiB,EAAE,EAAE;QACxB,MAAM,IAAIrT,KAAK,CAACiT,cAAc,GAAG,4BAA4B,CAAC;MAChE;IACF;IAEA,IAAIM,gBAAgB,GAAG,EAAE;IACzB,SAASC,sBAAsBA,CAAA,EAAG;MAChCD,gBAAgB,CAACnU,OAAO,CAAC,UAAAqU,OAAO;QAAA,OAAIA,OAAO,CAAC9C,GAAG,EAAE;MAAA,EAAC;MAClD4C,gBAAgB,GAAG,EAAE;IACvB;IACA,SAASG,sBAAsBA,CAACX,UAAU,EAAEY,QAAQ,EAAE;MACpD,IAAIC,MAAM;MACV;MACA,IAAIxY,OAAO,CAAC8E,QAAQ,CAAC6S,UAAU,CAACY,QAAQ,CAAC,CAAC,EAAE;QAC1CC,MAAM,GAAGb,UAAU,CAACY,QAAQ,CAAC;QAC7B,IAAIvY,OAAO,CAAC8E,QAAQ,CAAC0T,MAAM,CAAC,EAAE;UAC5BL,gBAAgB,GAAGA,gBAAgB,CAAC9L,MAAM,CAAC,UAAAgM,OAAO;YAAA,OAAIA,OAAO,CAACI,EAAE,KAAKF,QAAQ;UAAA,EAAC;UAC9EJ,gBAAgB,CAAC/M,IAAI,CAAC;YACpBqN,EAAE,EAAEF,QAAQ;YACZhD,GAAG,EAAE,SAAAA,IAAA;cAAA,OAAMoC,UAAU,CAACY,QAAQ,CAAC,GAAGC,MAAM;YAAA;UAC1C,CAAC,CAAC;QACJ;MACF;IACF;IAEA,SAASE,qBAAqBA,CAACf,UAAU,EAAEY,QAAQ,EAAEI,YAAY,EAAE;MACjE,IAAMC,UAAU,GAAGnP,MAAM,CAACoP,wBAAwB,CAAClB,UAAU,EAAEY,QAAQ,CAAC;MACxE,IAAIK,UAAU,KAAKA,UAAU,CAACpF,GAAG,IAAIoF,UAAU,CAAClS,GAAG,CAAC,EAAE;QACpD;MACF;MACA,IAAI8R,MAAM;MACVF,sBAAsB,CAACX,UAAU,EAAEY,QAAQ,CAAC;MAC5C9O,MAAM,CAAC8J,cAAc,CAACoE,UAAU,EAAEY,QAAQ,EAAE;QAC1C/E,GAAG,EAAE,SAAAA,IAAC/T,KAAK,EAAK;UACd+Y,MAAM,GAAG/Y,KAAK;UACd,IAAIuY,OAAO,CAACtT,MAAM,IAAI,CAAC8E,MAAM,CAAC9E,MAAM,EAAE;YACpC4T,sBAAsB,CAACX,UAAU,EAAEY,QAAQ,CAAC;YAC5C;UACF;UACA/O,MAAM,CAACmP,YAAY,CAAC,GAAGlZ,KAAK;UAC5B,IAAMmR,mBAAmB,GAAGpC,QAAQ,CAACQ,UAAU,EAAE;UACjDR,QAAQ,CAACmB,cAAc,EAAE;UACzB,IAAI4I,QAAQ,KAAK,UAAU,EAAE;YAC3B/J,QAAQ,CAACmC,kBAAkB,CAACC,mBAAmB,CAAC;UAClD;QACF,CAAC;QACDlK,GAAG,EAAE,SAAAA,IAAA;UAAA,OAAM8R,MAAM;QAAA;MACnB,CAAC,CAAC;IACJ;IAEAE,qBAAqB,CAACf,UAAU,EAAE,UAAU,EAAE,cAAc,CAAC;IAC7De,qBAAqB,CAACf,UAAU,EAAE,UAAU,EAAE,cAAc,CAAC;IAE7D,IAAMmB,SAAS,GAAInB,UAAU,CAACjR,GAAG,CAAChC,MAAM,KAAK,CAAC,GAC5C,UAACqU,OAAO;MAAA,OAAKpB,UAAU,CAACjR,GAAG,CAAC8C,MAAM,CAACU,IAAI,EAAEZ,UAAU,EAAEyP,OAAO,CAAC;IAAA,IAC7D,UAACA,OAAO,EAAK;MACXpB,UAAU,CAACjR,GAAG,CAAC;QACb+B,KAAK,EAAEe,MAAM,CAACU,IAAI;QAClBK,MAAM,EAAEf,MAAM,CAAC9E,MAAM,GAAG8E,MAAM,CAACA,MAAM,CAAC9E,MAAM,GAAG,CAAC,CAAC,CAAC+F,IAAI,GAAG,KAAK,CAAC;QAC/DuO,KAAK,EAAE1P;MACT,CAAC,EAAEyP,OAAO,CAAC;IACb,CAAC;IAEH,IAAME,aAAa,GAAItB,UAAU,CAACjR,GAAG,CAAChC,MAAM,KAAK,CAAC,GAChD,UAACqU,OAAO;MAAA,OAAKpB,UAAU,CAACjR,GAAG,CAAC8C,MAAM,CAACS,KAAK,GAAGX,UAAU,EAAEA,UAAU,EAAEyP,OAAO,CAAC;IAAA,IAC3E,UAACA,OAAO,EAAK;MACXpB,UAAU,CAACjR,GAAG,CAAC;QACb+B,KAAK,EAAEe,MAAM,CAACS,KAAK,GAAGX,UAAU;QAChC7E,OAAO,EAAE+E,MAAM,CAAC9E,MAAM,GAAG8E,MAAM,CAAC,CAAC,CAAC,CAACiB,IAAI,GAAG,KAAK,CAAC;QAChDuO,KAAK,EAAE1P;MACT,CAAC,EAAEyP,OAAO,CAAC;IACb,CAAC;IAEH,IAAMG,UAAU,GAAG,SAAbA,UAAUA,CAAA,EAAS;MACvB,IAAIC,QAAQ,GAAG,CAAC;MAChB,IAAI,CAAC3K,QAAQ,CAACK,mBAAmB,EAAE,EAAE;QACnC,IAAMuK,KAAK,GAAGlD,SAAS,CAAC,YAAM;UAC5BiD,QAAQ,EAAE;UACV,IAAI3K,QAAQ,CAACK,mBAAmB,EAAE,EAAE;YAClCqH,SAAS,CAACmD,MAAM,CAACD,KAAK,CAAC;YACvBtH,QAAQ,EAAE;UACZ;UACA,IAAIqH,QAAQ,GAAGzB,yBAAyB,IAAID,kBAAkB,EAAE;YAC9DvB,SAAS,CAACmD,MAAM,CAACD,KAAK,CAAC;YACvB,MAAMxU,KAAK,oEAAAkJ,MAAA,CAAoE2J,kBAAkB,QAAK;UACxG;QACF,CAAC,EAAEC,yBAAyB,CAAC;MAC/B,CAAC,MACI;QACH5F,QAAQ,EAAE;MACZ;IACF,CAAC;;IAED;AACR;AACA;AACA;AACA;AACA;AACA;IACQ2E,MAAM,CAAC,UAAC6C,KAAK,EAAE7R,KAAK,EAAK;MACvB+G,QAAQ,CAACI,qBAAqB,CAAC0K,KAAK,CAAC,CAAC,CAAC,CAAC;MACxC;MACA;MACA;MACA7R,KAAK,CAACC,QAAQ,EAAE;MAChB4R,KAAK,CAAC9R,MAAM,EAAE;IAChB,CAAC,CAAC;IAEFmK,MAAM,CAAC4H,GAAG,CAAC,UAAU,EAAE,YAAM;MAC3BC,YAAY,EAAE;MACdhL,QAAQ,CAACiL,GAAG,CAAC,YAAY,EAAEC,YAAY,CAAC;IAC1C,CAAC,CAAC;IAEFlL,QAAQ,CAACmL,EAAE,CAAC,YAAY,EAAED,YAAY,CAAC;IAEvCR,UAAU,EAAE;;IAEZ;;IAEA,SAASU,SAASA,CAACC,GAAG,EAAE;MACtB,OAAQA,GAAG,IAAIA,GAAG,KAAK9B,SAAS,IAAKpG,MAAM,CAACmI,WAAW;IACzD;IAEA,SAASC,UAAUA,CAAA,EAAG;MACpBvL,QAAQ,CAACmL,EAAE,CAAC,QAAQ,EAAEK,sBAAsB,CAAC;MAC7CxL,QAAQ,CAACmL,EAAE,CAAC,QAAQ,EAAEK,sBAAsB,CAAC;IAC/C;IAEA,SAASR,YAAYA,CAAA,EAAG;MACtBhL,QAAQ,CAACiL,GAAG,CAAC,QAAQ,EAAEO,sBAAsB,CAAC;MAC9CxL,QAAQ,CAACiL,GAAG,CAAC,QAAQ,EAAEO,sBAAsB,CAAC;IAChD;IAEA,SAASjI,MAAMA,CAAA,EAAG;MAChByH,YAAY,EAAE;MACdhL,QAAQ,CAAC8C,eAAe,EAAE;MAC1B9C,QAAQ,CAAC+C,kBAAkB,EAAE;MAC7B,IAAI/L,SAAS,CAACd,MAAM,EAAE;QACpB6E,UAAU,GAAGqN,WAAW,CAACpR,SAAS,CAAC,CAAC,CAAC,EAAEgS,mBAAmB,EAAE,KAAK,CAAC;MACpE;MACAhO,MAAM,CAACM,KAAK,CAACP,UAAU,CAAC;MACxB+O,sBAAsB,CAACX,UAAU,EAAE,UAAU,CAAC;MAC9CW,sBAAsB,CAACX,UAAU,EAAE,UAAU,CAAC;MAC9C7F,QAAQ,EAAE;IACZ;IAEA,SAASmI,gBAAgBA,CAACjT,OAAO,EAAE;MACjC,OAAOA,OAAO,CAACrH,OAAO,CAACyD,MAAM,EAAE,IAAI4D,OAAO,CAACrH,OAAO,CAAC,CAAC,CAAC,CAACwM,YAAY;IACpE;IAEA,SAAS+N,iBAAiBA,CAAClT,OAAO,EAAE;MAClC,IAAIiT,gBAAgB,CAACjT,OAAO,CAAC,EAAE;QAC7BwC,MAAM,CAACxF,OAAO,CAAC,UAACyG,IAAI,EAAK;UACvB,IAAI,OAAOA,IAAI,CAAC0P,2BAA2B,KAAK,UAAU,EAAE;YAC1D1P,IAAI,CAAC0P,2BAA2B,EAAE;YAClC,OAAO1P,IAAI,CAAC0P,2BAA2B;UACzC;QACF,CAAC,CAAC;QACF,IAAI,CAACnC,OAAO,CAACtT,MAAM,EAAE;UACnBuR,QAAQ,CAAC;YAAA,OAAMnE,QAAQ,EAAE;UAAA,EAAC;QAC5B;MACF;IACF;IAEA,SAASsI,oBAAoBA,CAACpT,OAAO,EAAEqT,WAAW,EAAE;MAClDC,aAAa,CAACtT,OAAO,EAAEqT,WAAW,EAAE7L,QAAQ,CAACpH,aAAa,CAAC;MAC3D,IAAI,CAAC6S,gBAAgB,CAACjT,OAAO,CAAC,EAAE;QAC9BA,OAAO,CAACmT,2BAA2B,GAAGnT,OAAO,CAACS,KAAK,CAAC8S,MAAM,CAAC;UAAA,OAAML,iBAAiB,CAAClT,OAAO,CAAC;QAAA,EAAC;MAC9F;MACAqC,eAAe,CAACtC,WAAW,CAACC,OAAO,CAAC,CAAC,CAAC;IACxC;;IAEA,SAASsT,aAAaA,CAACtT,OAAO,EAAEqT,WAAW,EAAEjT,aAAa,EAAE;MAC1D,IAAIoT,QAAQ,GAAG,IAAI;MACnB,IAAMpL,OAAO,GAAIiL,WAAW,GAAG,CAAC,GAAI7Q,MAAM,CAAC6Q,WAAW,GAAG,CAAC,CAAC,CAAC1a,OAAO,GAAG8F,SAAS;MAC/EgR,MAAM,CAAC,UAAC6C,KAAK,EAAE7R,KAAK,EAAK;QACvB+S,QAAQ,GAAGpT,aAAa,CAACkS,KAAK,EAAElK,OAAO,CAAC;QACxCpI,OAAO,CAACrH,OAAO,GAAG2Z,KAAK;QACvBtS,OAAO,CAACS,KAAK,GAAGA,KAAK;QACrBA,KAAK,CAACmQ,QAAQ,CAAC,GAAG5Q,OAAO,CAACyD,IAAI;MAChC,CAAC,CAAC;MACF;MACA,IAAI8H,OAAO,CAACkI,SAAS,EAAE;QACrB,IAAMC,aAAa,GAAG1T,OAAO,CAACS,KAAK,CAACkT,qBAAqB;QACzD,IAAID,aAAa,IAAIA,aAAa,CAACE,OAAO,EAAE;UAC1CrI,OAAO,CAACkI,SAAS,CAACzT,OAAO,CAACS,KAAK,EAAET,OAAO,CAACrH,OAAO,CAAC;QACnD,CAAC,MAAM;UACLqH,OAAO,CAACS,KAAK,CAACkT,qBAAqB,GAAG;YACpCE,MAAM,EAAE,SAAAA,OAAA;cAAA,OAAMtI,OAAO,CAACkI,SAAS,CAACzT,OAAO,CAACS,KAAK,EAAET,OAAO,CAACrH,OAAO,CAAC;YAAA;YAC/D8H,KAAK,EAAET,OAAO,CAACS;UACjB,CAAC;QACH;MACF;MACA,OAAO+S,QAAQ;IACjB;IAEA,SAASM,SAASA,CAAA,EAAG;MACnB,IAAIN,QAAQ,GAAG,EAAE;MACjB,IAAMO,aAAa,GAAG,EAAE;MACxB,IAAMC,WAAW,GAAG,EAAE;MACtB,IAAMC,QAAQ,GAAG,EAAE;MAEnBzR,MAAM,CAACxF,OAAO,CAAC,UAACgD,OAAO,EAAE5C,CAAC,EAAK;QAC7B,QAAQ4C,OAAO,CAACkE,EAAE;UAChB,KAAKpC,kBAAkB;YACrBiS,aAAa,CAAC1P,OAAO,CAACrE,OAAO,CAAC;YAC9B;UACF,KAAK8B,iBAAiB;YACpBsR,oBAAoB,CAACpT,OAAO,EAAE5C,CAAC,CAAC;YAChC4C,OAAO,CAACkE,EAAE,GAAGpC,eAAe;YAC5BmS,QAAQ,CAAC7P,IAAI,CAACpE,OAAO,CAAC;YACtB;UACF,KAAK8B,iBAAiB;YACpB0R,QAAQ,GAAGA,QAAQ,CAAC1M,MAAM,CAACwM,aAAa,CAACtT,OAAO,EAAE5C,CAAC,EAAEoK,QAAQ,CAAC7G,qBAAqB,CAAC,CAAC;YACrFX,OAAO,CAACkE,EAAE,GAAGpC,eAAe;YAC5BmS,QAAQ,CAAC7P,IAAI,CAACpE,OAAO,CAAC;YACtB;UACF,KAAK8B,iBAAiB;YACpBkS,WAAW,CAAC5P,IAAI,CAACpE,OAAO,CAAC;QAAC;MAEhC,CAAC,CAAC;MAEFgU,WAAW,CAAChX,OAAO,CAAC,UAACgD,OAAO;QAAA,OAAKwT,QAAQ,GAAGA,QAAQ,CAAC1M,MAAM,CAACU,QAAQ,CAACiD,UAAU,CAACzK,OAAO,CAAC,CAAC;MAAA,EAAC;MAE1F,IAAI+T,aAAa,CAACrW,MAAM,EACtBqW,aAAa,CAAC/W,OAAO,CAAC,UAACgD,OAAO,EAAK;QACjCoT,oBAAoB,CAACpT,OAAO,CAAC;QAC7BA,OAAO,CAACkE,EAAE,GAAGpC,eAAe;MAC9B,CAAC,CAAC;MAEJU,MAAM,CAACxF,OAAO,CAAC,UAACyG,IAAI,EAAErG,CAAC;QAAA,OAAKqG,IAAI,CAAChD,KAAK,CAACkF,MAAM,GAAGnD,MAAM,CAACS,KAAK,GAAG7F,CAAC;MAAA,EAAC;MAEjE,OAAO;QACL4M,SAAS,EAAE+J,aAAa;QACxBG,OAAO,EAAEF,WAAW;QACpBC,QAAQ,EAAEA,QAAQ;QAClBE,QAAQ,EAAEX;MACZ,CAAC;IAEH;IAEA,SAASY,cAAcA,CAACvB,GAAG,EAAE9I,OAAO,EAAE;MACpC;MACA,IAAIA,OAAO,CAACoK,QAAQ,CAACzW,MAAM,EAAE;QAC3B6B,EAAE,CAAC8U,GAAG,CAACtK,OAAO,CAACoK,QAAQ,CAAC,CAAChT,IAAI,CAAC,YAAM;UAClCqG,QAAQ,CAACmB,cAAc,EAAE;UACzBmC,QAAQ,CAAC+H,GAAG,CAAC;QACf,CAAC,CAAC;MACJ,CAAC,MAAM;QACLrL,QAAQ,CAACmB,cAAc,EAAE;MAC3B;IACF;IAEA,SAAS2L,YAAYA,CAACzB,GAAG,EAAE9I,OAAO,EAAE;MAClC,IAAIvC,QAAQ,CAACa,gBAAgB,EAAE,EAAE;QAC/B,IAAI,CAAC0B,OAAO,IAAIvH,MAAM,CAACqC,eAAe,CAACkF,OAAO,CAACkK,QAAQ,CAAC,GAAG,CAAC,EAAE;UAC5D;UACA,IAAIjD,OAAO,CAAC5M,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC5BmH,OAAO,CAACqB,OAAO,CAAC,IAAI,CAAC;YACrB2H,KAAK,CAAC1B,GAAG,CAAC;UACZ;QACF;MACF,CAAC,MAAM,IAAIrL,QAAQ,CAACoB,aAAa,EAAE,EAAE;QACnC,IAAK,CAACmB,OAAO,IAAIvH,MAAM,CAACqC,eAAe,CAACkF,OAAO,CAACC,SAAS,CAAC,GAAG,CAAC,IAAKgH,OAAO,CAAC,CAAC,CAAC,EAAE;UAC7E;UACA;UACA;UACA,IAAIA,OAAO,CAAC5M,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YAC7BmH,OAAO,CAACqB,OAAO,CAAC,IAAI,CAAC;YACrB2H,KAAK,CAAC1B,GAAG,CAAC;UACZ;QACF;MACF;IACF;IAEA,SAAS2B,cAAcA,CAAA,EAAG;MACxB,IAAMzK,OAAO,GAAG+J,SAAS,EAAE;;MAE3B;MACA,CAACnJ,MAAM,CAAC8J,OAAO,IAAI,CAACpN,UAAU,CAACoN,OAAO,IAAI9J,MAAM,CAAC+J,OAAO,EAAE;MAE1D3K,OAAO,CAACkK,QAAQ,CAACjX,OAAO,CAAC,UAAA2X,CAAC;QAAA,OAAItS,eAAe,CAACnC,WAAW,CAACyU,CAAC,CAAC;MAAA,EAAC;MAC7D5K,OAAO,CAACC,SAAS,CAAChN,OAAO,CAAC,UAAA2X,CAAC;QAAA,OAAItS,eAAe,CAACnC,WAAW,CAACyU,CAAC,CAAC;MAAA,EAAC;MAC9D,OAAO5K,OAAO;IAChB;IAEA,SAASe,QAAQA,CAAC+H,GAAG,EAAE;MACrB,IAAI,CAACA,GAAG,EAAE;QAAE;QACV7B,OAAO,GAAG,EAAE;QACZ6B,GAAG,GAAG,EAAE9B,SAAS;MACnB;MAEA,IAAMhH,OAAO,GAAGyK,cAAc,EAAE;MAEhC,IAAI5B,SAAS,CAACC,GAAG,CAAC,EAAE;QAClB;MACF;MAEAuB,cAAc,CAACvB,GAAG,EAAE9I,OAAO,CAAC;MAC5BuK,YAAY,CAACzB,GAAG,CAAC;MAEjB,IAAI,CAAC7B,OAAO,CAACtT,MAAM,EAAE;QACnB6N,OAAO,CAACwC,mBAAmB,EAAE;MAC/B;IACF;IAEA,SAAS6G,kBAAkBA,CAAC/B,GAAG,EAAE;MAC/B,IAAM9I,OAAO,GAAGyK,cAAc,EAAE;MAEhChN,QAAQ,CAACsC,cAAc,CAACC,OAAO,CAAC;MAEhC,IAAI6I,SAAS,CAACC,GAAG,CAAC,EAAE;QAClB;MACF;MAEAuB,cAAc,CAACvB,GAAG,EAAE9I,OAAO,CAAC;MAC5BqH,sBAAsB,EAAE;MACxBkD,YAAY,CAACzB,GAAG,EAAE9I,OAAO,CAAC;MAC1BiH,OAAO,CAAC6D,KAAK,EAAE;MAEf,IAAI7D,OAAO,CAACtT,MAAM,EAChB6W,KAAK,CAAC1B,GAAG,CAAC,CAAC,KACR;QACHtH,OAAO,CAACqB,OAAO,CAAC,KAAK,CAAC;QACtBmG,UAAU,EAAE;QACZxH,OAAO,CAACwC,mBAAmB,EAAE;MAC/B;IACF;IAEA,SAASwG,KAAKA,CAAC1B,GAAG,EAAE;MAClB,IAAI7B,OAAO,CAAC,CAAC,CAAC,EAAE;QAAC;QACf,IAAIxO,MAAM,CAAC9E,MAAM,IAAI,CAAC8J,QAAQ,CAACa,gBAAgB,EAAE,EAAE;UACjDuM,kBAAkB,CAAC/B,GAAG,CAAC;QACzB,CAAC,MAAM;UACLf,SAAS,CAAC,UAAClX,MAAM,EAAK;YACpB,IAAIgY,SAAS,CAACC,GAAG,CAAC,EAAE;cAClB;YACF;YAEA,IAAIjY,MAAM,CAAC8C,MAAM,GAAG4E,UAAU,EAAE;cAC9BE,MAAM,CAACO,GAAG,GAAG,IAAI;YACnB;YAEA,IAAInI,MAAM,CAAC8C,MAAM,GAAG,CAAC,EAAE;cACrB8J,QAAQ,CAACqB,OAAO,EAAE;cAClBrG,MAAM,CAACe,MAAM,CAAC3I,MAAM,CAAC;YACvB;YAEAga,kBAAkB,CAAC/B,GAAG,CAAC;UACzB,CAAC,CAAC;QACJ;MACF,CAAC,MAAM;QAAG;QACR,IAAIrQ,MAAM,CAAC9E,MAAM,IAAI,CAAC8J,QAAQ,CAACoB,aAAa,EAAE,EAAE;UAC9CgM,kBAAkB,CAAC/B,GAAG,CAAC;QACzB,CAAC,MAAM;UACLZ,aAAa,CAAC,UAACrX,MAAM,EAAK;YACxB,IAAIgY,SAAS,CAACC,GAAG,CAAC,EAAE;cAClB;YACF;YAEA,IAAIjY,MAAM,CAAC8C,MAAM,GAAG4E,UAAU,EAAE;cAC9BE,MAAM,CAACQ,GAAG,GAAG,IAAI;cACjB;YACF;;YAEA,IAAIpI,MAAM,CAAC8C,MAAM,GAAG,CAAC,EAAE;cACrB,IAAI8E,MAAM,CAAC9E,MAAM,EAAE;gBACjB8J,QAAQ,CAACc,UAAU,EAAE;cACvB;cACA9F,MAAM,CAAC/E,OAAO,CAAC7C,MAAM,CAAC;YACxB;YAEAga,kBAAkB,CAAC/B,GAAG,CAAC;UACzB,CAAC,CAAC;QACJ;MACF;IACF;IAEA,SAASiC,UAAUA,CAAA,EAAG;MACpB,IAAI,CAACtN,QAAQ,CAAC4C,SAAS,EAAE;QACvB;MACF;MACA,IAAM2K,WAAW,GAAGvN,QAAQ,CAAC4C,SAAS,CAACC,QAAQ;MAC/C,IAAMF,WAAW,GAAG3C,QAAQ,CAAC4C,SAAS,CAAClH,IAAI;MAC3C,IAAIsE,QAAQ,CAAC1I,SAAS,EAAE,KAAKqL,WAAW,EAAE;QACxC6K,qBAAqB,CAAC,YAAM;UAC1B,IAAM9K,QAAQ,GAAG1C,QAAQ,CAAC1I,SAAS,EAAE;UACrC,IAAM+K,IAAI,GAAGkL,WAAW,GAAG7K,QAAQ;UACnC,IAAIL,IAAI,GAAG,CAAC,EAAE;YAAE;YACdrC,QAAQ,CAAC1I,SAAS,CAACqL,WAAW,GAAGN,IAAI,CAAC;UACxC,CAAC,MAAM;YACLrC,QAAQ,CAAC1I,SAAS,CAACqL,WAAW,CAAC;UACjC;UACA3C,QAAQ,CAAC4C,SAAS,GAAG,IAAI;QAC3B,CAAC,CAAC;QACF,OAAO,IAAI;MACb;MACA5C,QAAQ,CAAC4C,SAAS,GAAG,IAAI;IAC3B;IAEA,SAAS4I,sBAAsBA,CAAA,EAAG;MAChC,IAAIlC,aAAa,IAAIgE,UAAU,EAAE,EAAE;QACjC;MACF;MACA,IAAI,CAACzN,UAAU,CAACoN,OAAO,IAAI,CAAClJ,OAAO,CAACP,SAAS,IAAI,CAACO,OAAO,CAACN,QAAQ,EAAE;QAElEqJ,YAAY,CAACvD,SAAS,CAAC;QAEvB,IAAIC,OAAO,CAACtT,MAAM,EAAE;UAClB8U,YAAY,EAAE;QAChB,CAAC,MAAM;UACLjH,OAAO,CAACwC,mBAAmB,EAAE;UAC7B,CAACpD,MAAM,CAAC8J,OAAO,IAAI9J,MAAM,CAAC+J,OAAO,EAAE;QACrC;MACF;IACF;IAEA,SAAShC,YAAYA,CAACuC,KAAK,EAAE;MAC3B,IAAI,CAAC1J,OAAO,CAACN,QAAQ,EAAE;QACrB,IAAMnM,SAAS,GAAG0I,QAAQ,CAAC,CAAC,CAAC,CAAC1I,SAAS;QACvC,IAAMoW,IAAI,GAAG1N,QAAQ,CAAC,CAAC,CAAC,CAACO,YAAY,GAAGP,QAAQ,CAAC,CAAC,CAAC,CAAC2N,YAAY;QAEhE,IAAKrW,SAAS,KAAK,CAAC,IAAI,CAAC0D,MAAM,CAACQ,GAAG,IAAMlE,SAAS,KAAKoW,IAAI,IAAI,CAAC1S,MAAM,CAACO,GAAI,EAAE;UAC3EkS,KAAK,CAACG,cAAc,EAAE;QACxB;MACF;IACF;EACF;AAEF,CAAC,CACF,CAAC","sources":["webpack://angular-ui-scroll/./src/modules/jqLiteExtras.js","webpack://angular-ui-scroll/./src/modules/elementRoutines.js","webpack://angular-ui-scroll/./src/modules/utils.js","webpack://angular-ui-scroll/./src/modules/buffer.js","webpack://angular-ui-scroll/./src/modules/padding.js","webpack://angular-ui-scroll/./src/modules/viewport.js","webpack://angular-ui-scroll/./src/modules/adapter.js","webpack://angular-ui-scroll/./src/ui-scroll.js"],"sourcesContent":["/*!\r\n globals: angular, window\r\n List of used element methods available in JQuery but not in JQuery Lite\r\n element.before(elem)\r\n element.height()\r\n element.outerHeight(true)\r\n element.height(value) = only for Top/Bottom padding elements\r\n element.scrollTop()\r\n element.scrollTop(value)\r\n */\r\n\r\nexport default class JQLiteExtras {\r\n\r\n registerFor(element) {\r\n let convertToPx, css, getStyle, isWindow;\r\n // angular implementation blows up if elem is the window\r\n css = angular.element.prototype.css;\r\n\r\n element.prototype.css = function (name, value) {\r\n let self = this;\r\n let elem = self[0];\r\n if (!(!elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style)) {\r\n return css.call(self, name, value);\r\n }\r\n };\r\n\r\n // as defined in angularjs v1.0.5\r\n isWindow = (obj) => obj && obj.document && obj.location && obj.alert && obj.setInterval;\r\n\r\n function scrollTo(self, direction, value) {\r\n let elem = self[0];\r\n let [method, prop, preserve] = {\r\n top: [\r\n 'scrollTop',\r\n 'pageYOffset',\r\n 'scrollLeft'\r\n ],\r\n left: [\r\n 'scrollLeft',\r\n 'pageXOffset',\r\n 'scrollTop'\r\n ]\r\n }[direction];\r\n\r\n const isValueDefined = typeof value !== 'undefined';\r\n if (isWindow(elem)) {\r\n if (isValueDefined) {\r\n return elem.scrollTo(self[preserve].call(self), value);\r\n }\r\n return (prop in elem) ? elem[prop] : elem.document.documentElement[method];\r\n } else {\r\n if (isValueDefined) {\r\n elem[method] = value;\r\n }\r\n return elem[method];\r\n }\r\n }\r\n\r\n if (window.getComputedStyle) {\r\n getStyle = (elem) => window.getComputedStyle(elem, null);\r\n convertToPx = (elem, value) => parseFloat(value);\r\n } else {\r\n getStyle = (elem) => elem.currentStyle;\r\n convertToPx = (elem, value) => {\r\n let left, result, rs, rsLeft, style;\r\n let core_pnum = /[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/.source;\r\n let rnumnonpx = new RegExp('^(' + core_pnum + ')(?!px)[a-z%]+$', 'i');\r\n\r\n if (!rnumnonpx.test(value)) {\r\n return parseFloat(value);\r\n }\r\n\r\n // ported from JQuery\r\n style = elem.style;\r\n left = style.left;\r\n rs = elem.runtimeStyle;\r\n rsLeft = rs && rs.left;\r\n if (rs) {\r\n rs.left = style.left;\r\n }\r\n // put in the new values to get a computed style out\r\n style.left = value;\r\n result = style.pixelLeft;\r\n style.left = left;\r\n if (rsLeft) {\r\n rs.left = rsLeft;\r\n }\r\n return result;\r\n };\r\n }\r\n\r\n function getMeasurements(elem, measure) {\r\n let base, borderA, borderB, computedMarginA, computedMarginB, computedStyle, dirA, dirB, marginA, marginB, paddingA, paddingB;\r\n\r\n if (isWindow(elem)) {\r\n base = document.documentElement[{height: 'clientHeight', width: 'clientWidth'}[measure]];\r\n\r\n return {\r\n base: base,\r\n padding: 0,\r\n border: 0,\r\n margin: 0\r\n };\r\n }\r\n\r\n // Start with offset property\r\n [\r\n base,\r\n dirA,\r\n dirB\r\n ] = {\r\n width: [\r\n elem.offsetWidth,\r\n 'Left',\r\n 'Right'\r\n ],\r\n height: [\r\n elem.offsetHeight,\r\n 'Top',\r\n 'Bottom'\r\n ]\r\n }[measure];\r\n\r\n computedStyle = getStyle(elem);\r\n paddingA = convertToPx(elem, computedStyle['padding' + dirA]) || 0;\r\n paddingB = convertToPx(elem, computedStyle['padding' + dirB]) || 0;\r\n borderA = convertToPx(elem, computedStyle['border' + dirA + 'Width']) || 0;\r\n borderB = convertToPx(elem, computedStyle['border' + dirB + 'Width']) || 0;\r\n computedMarginA = computedStyle['margin' + dirA];\r\n computedMarginB = computedStyle['margin' + dirB];\r\n\r\n // I do not care for width for now, so this hack is irrelevant\r\n // if ( !supportsPercentMargin )\r\n // computedMarginA = hackPercentMargin( elem, computedStyle, computedMarginA )\r\n // computedMarginB = hackPercentMargin( elem, computedStyle, computedMarginB )\r\n marginA = convertToPx(elem, computedMarginA) || 0;\r\n marginB = convertToPx(elem, computedMarginB) || 0;\r\n\r\n return {\r\n base: base,\r\n padding: paddingA + paddingB,\r\n border: borderA + borderB,\r\n margin: marginA + marginB\r\n };\r\n }\r\n\r\n function getWidthHeight(elem, direction, measure) {\r\n let computedStyle, result;\r\n\r\n let measurements = getMeasurements(elem, direction);\r\n\r\n if (measurements.base > 0) {\r\n return {\r\n base: measurements.base - measurements.padding - measurements.border,\r\n outer: measurements.base,\r\n outerfull: measurements.base + measurements.margin\r\n }[measure];\r\n }\r\n\r\n // Fall back to computed then uncomputed css if necessary\r\n computedStyle = getStyle(elem);\r\n result = computedStyle[direction];\r\n\r\n if (result < 0 || result === null) {\r\n result = elem.style[direction] || 0;\r\n }\r\n\r\n // Normalize \"\", auto, and prepare for extra\r\n result = parseFloat(result) || 0;\r\n\r\n return {\r\n base: result - measurements.padding - measurements.border,\r\n outer: result,\r\n outerfull: result + measurements.padding + measurements.border + measurements.margin\r\n }[measure];\r\n }\r\n\r\n // define missing methods\r\n return angular.forEach({\r\n before(newElem) {\r\n var children, elem, i, j, parent, ref, self;\r\n self = this;\r\n elem = self[0];\r\n parent = self.parent();\r\n children = parent.contents();\r\n if (children[0] === elem) {\r\n return parent.prepend(newElem);\r\n } else {\r\n for (i = j = 1, ref = children.length - 1; 1 <= ref ? j <= ref : j >= ref; i = 1 <= ref ? ++j : --j) {\r\n if (children[i] === elem) {\r\n angular.element(children[i - 1]).after(newElem);\r\n return;\r\n }\r\n }\r\n throw new Error('invalid DOM structure ' + elem.outerHTML);\r\n }\r\n },\r\n height (value){\r\n var self;\r\n self = this;\r\n if (typeof value !== 'undefined') {\r\n if (angular.isNumber(value)) {\r\n value = value + 'px';\r\n }\r\n return css.call(self, 'height', value);\r\n } else {\r\n return getWidthHeight(this[0], 'height', 'base');\r\n }\r\n },\r\n outerHeight(option) {\r\n return getWidthHeight(this[0], 'height', option ? 'outerfull' : 'outer');\r\n },\r\n outerWidth(option) {\r\n return getWidthHeight(this[0], 'width', option ? 'outerfull' : 'outer');\r\n },\r\n\r\n /*\r\n The offset setter method is not implemented\r\n */\r\n offset(value) {\r\n let docElem, win;\r\n let self = this;\r\n let box = {\r\n top: 0,\r\n left: 0\r\n };\r\n let elem = self[0];\r\n let doc = elem && elem.ownerDocument;\r\n\r\n if (arguments.length) {\r\n if (value === undefined) {\r\n return self;\r\n }\r\n // TODO: implement setter\r\n throw new Error('offset setter method is not implemented');\r\n }\r\n\r\n if (!doc) {\r\n return;\r\n }\r\n\r\n docElem = doc.documentElement;\r\n\r\n // TODO: Make sure it's not a disconnected DOM node\r\n\r\n if (elem.getBoundingClientRect != null) {\r\n box = elem.getBoundingClientRect();\r\n }\r\n\r\n win = doc.defaultView || doc.parentWindow;\r\n\r\n return {\r\n top: box.top + (win.pageYOffset || docElem.scrollTop) - (docElem.clientTop || 0),\r\n left: box.left + (win.pageXOffset || docElem.scrollLeft) - (docElem.clientLeft || 0)\r\n };\r\n },\r\n scrollTop(value) {\r\n return scrollTo(this, 'top', value);\r\n },\r\n scrollLeft(value) {\r\n return scrollTo(this, 'left', value);\r\n }\r\n }, (value, key) => {\r\n if (!element.prototype[key]) {\r\n return element.prototype[key] = value;\r\n }\r\n });\r\n }\r\n\r\n}\r\n","const hideClassToken = 'ng-ui-scroll-hide';\r\n\r\nexport default class ElementRoutines {\r\n\r\n static addCSSRules() {\r\n const selector = '.' + hideClassToken;\r\n const rules = 'display: none';\r\n const sheet = document.styleSheets[0];\r\n let index;\r\n try {\r\n index = sheet.cssRules.length;\r\n } catch (err) {\r\n index = 0;\r\n }\r\n if('insertRule' in sheet) {\r\n sheet.insertRule(selector + '{' + rules + '}', index);\r\n }\r\n else if('addRule' in sheet) {\r\n sheet.addRule(selector, rules, index);\r\n }\r\n }\r\n\r\n constructor($injector, $q) {\r\n this.$animate = ($injector.has && $injector.has('$animate')) ? $injector.get('$animate') : null;\r\n this.isAngularVersionLessThen1_3 = angular.version.major === 1 && angular.version.minor < 3;\r\n this.$q = $q;\r\n }\r\n\r\n hideElement(wrapper) {\r\n wrapper.element.addClass(hideClassToken);\r\n }\r\n\r\n showElement(wrapper) {\r\n wrapper.element.removeClass(hideClassToken);\r\n }\r\n\r\n insertElement(newElement, previousElement) {\r\n previousElement.after(newElement);\r\n return [];\r\n }\r\n\r\n removeElement(wrapper) {\r\n wrapper.element.remove();\r\n wrapper.scope.$destroy();\r\n return [];\r\n }\r\n\r\n insertElementAnimated(newElement, previousElement) {\r\n if (!this.$animate) {\r\n return this.insertElement(newElement, previousElement);\r\n }\r\n\r\n if (this.isAngularVersionLessThen1_3) {\r\n const deferred = this.$q.defer();\r\n // no need for parent - previous element is never null\r\n this.$animate.enter(newElement, null, previousElement, () => deferred.resolve());\r\n\r\n return [deferred.promise];\r\n }\r\n\r\n // no need for parent - previous element is never null\r\n return [this.$animate.enter(newElement, null, previousElement)];\r\n }\r\n\r\n removeElementAnimated(wrapper) {\r\n if (!this.$animate) {\r\n return this.removeElement(wrapper);\r\n }\r\n\r\n if (this.isAngularVersionLessThen1_3) {\r\n const deferred = this.$q.defer();\r\n this.$animate.leave(wrapper.element, () => {\r\n wrapper.scope.$destroy();\r\n return deferred.resolve();\r\n });\r\n\r\n return [deferred.promise];\r\n }\r\n\r\n return [(this.$animate.leave(wrapper.element)).then(() => wrapper.scope.$destroy())];\r\n }\r\n}","export const OPERATIONS = {\r\n PREPEND: 'prepend',\r\n APPEND: 'append',\r\n INSERT: 'insert',\r\n REMOVE: 'remove',\r\n NONE: 'none'\r\n};\r\n","import { OPERATIONS } from './utils';\r\n\r\nexport default function ScrollBuffer(elementRoutines, bufferSize, startIndex) {\r\n const buffer = Object.create(Array.prototype);\r\n\r\n angular.extend(buffer, {\r\n size: bufferSize,\r\n\r\n reset(startIndex) {\r\n buffer.remove(0, buffer.length);\r\n buffer.eof = false;\r\n buffer.bof = false;\r\n buffer.first = startIndex;\r\n buffer.next = startIndex;\r\n buffer.minIndex = startIndex;\r\n buffer.maxIndex = startIndex;\r\n buffer.minIndexUser = null;\r\n buffer.maxIndexUser = null;\r\n },\r\n\r\n append(items) {\r\n items.forEach((item) => {\r\n ++buffer.next;\r\n buffer.insert(OPERATIONS.APPEND, item);\r\n });\r\n buffer.maxIndex = buffer.eof ? buffer.next - 1 : Math.max(buffer.next - 1, buffer.maxIndex);\r\n },\r\n\r\n prepend(items, immutableTop) {\r\n items.reverse().forEach((item) => {\r\n if (immutableTop) {\r\n ++buffer.next;\r\n }\r\n else {\r\n --buffer.first;\r\n }\r\n buffer.insert(OPERATIONS.PREPEND, item);\r\n });\r\n buffer.minIndex = buffer.bof ? buffer.minIndex = buffer.first : Math.min(buffer.first, buffer.minIndex);\r\n },\r\n\r\n /**\r\n * inserts wrapped element in the buffer\r\n * the first argument is either operation keyword (see below) or a number for operation 'insert'\r\n * for insert the number is the index for the buffer element the new one have to be inserted after\r\n * operations: 'append', 'prepend', 'insert', 'remove', 'none'\r\n */\r\n insert(operation, item, shiftTop) {\r\n const wrapper = {\r\n item: item\r\n };\r\n\r\n if (operation % 1 === 0) { // it is an insert\r\n wrapper.op = OPERATIONS.INSERT;\r\n buffer.splice(operation, 0, wrapper);\r\n if (shiftTop) {\r\n buffer.first--;\r\n }\r\n else {\r\n buffer.next++;\r\n }\r\n } else {\r\n wrapper.op = operation;\r\n switch (operation) {\r\n case OPERATIONS.APPEND:\r\n buffer.push(wrapper);\r\n break;\r\n case OPERATIONS.PREPEND:\r\n buffer.unshift(wrapper);\r\n break;\r\n }\r\n }\r\n },\r\n\r\n // removes elements from buffer\r\n remove(arg1, arg2) {\r\n if (angular.isNumber(arg1)) {\r\n // removes items from arg1 (including) through arg2 (excluding)\r\n for (let i = arg1; i < arg2; i++) {\r\n elementRoutines.removeElement(buffer[i]);\r\n }\r\n return buffer.splice(arg1, arg2 - arg1);\r\n }\r\n // removes single item (wrapper) from the buffer\r\n buffer.splice(buffer.indexOf(arg1), 1);\r\n if (arg1.shiftTop && buffer.first === this.getAbsMinIndex()) {\r\n this.incrementMinIndex();\r\n }\r\n else {\r\n this.decrementMaxIndex();\r\n }\r\n if (arg1.shiftTop) {\r\n buffer.first++;\r\n }\r\n else {\r\n buffer.next--;\r\n }\r\n if (!buffer.length) {\r\n buffer.minIndex = Math.min(buffer.maxIndex, buffer.minIndex);\r\n }\r\n\r\n return elementRoutines.removeElementAnimated(arg1);\r\n },\r\n\r\n incrementMinIndex() {\r\n if (buffer.minIndexUser !== null) {\r\n if (buffer.minIndex > buffer.minIndexUser) {\r\n buffer.minIndexUser++;\r\n return;\r\n }\r\n if (buffer.minIndex === buffer.minIndexUser) {\r\n buffer.minIndexUser++;\r\n }\r\n }\r\n buffer.minIndex++;\r\n },\r\n\r\n decrementMaxIndex() {\r\n if (buffer.maxIndexUser !== null && buffer.maxIndex <= buffer.maxIndexUser) {\r\n buffer.maxIndexUser--;\r\n }\r\n buffer.maxIndex--;\r\n },\r\n\r\n getAbsMinIndex() {\r\n if (buffer.minIndexUser !== null) {\r\n return Math.min(buffer.minIndexUser, buffer.minIndex);\r\n }\r\n return buffer.minIndex;\r\n },\r\n\r\n getAbsMaxIndex() {\r\n if (buffer.maxIndexUser !== null) {\r\n return Math.max(buffer.maxIndexUser, buffer.maxIndex);\r\n }\r\n return buffer.maxIndex;\r\n },\r\n\r\n effectiveHeight(elements) {\r\n if (!elements.length) {\r\n return 0;\r\n }\r\n let top = Number.MAX_VALUE;\r\n let bottom = Number.NEGATIVE_INFINITY;\r\n elements.forEach((wrapper) => {\r\n if (wrapper.element[0].offsetParent) {\r\n // element style is not display:none\r\n top = Math.min(top, wrapper.element.offset().top);\r\n bottom = Math.max(bottom, wrapper.element.offset().top + wrapper.element.outerHeight(true));\r\n }\r\n });\r\n return Math.max(0, bottom - top);\r\n },\r\n\r\n getItems() {\r\n return buffer.filter(item => item.op === OPERATIONS.NONE);\r\n },\r\n\r\n getFirstItem() {\r\n const list = buffer.getItems();\r\n if (!list.length) {\r\n return null;\r\n }\r\n return list[0].item;\r\n },\r\n\r\n getLastItem() {\r\n const list = buffer.getItems();\r\n if (!list.length) {\r\n return null;\r\n }\r\n return list[list.length - 1].item;\r\n }\r\n\r\n });\r\n\r\n buffer.reset(startIndex);\r\n\r\n return buffer;\r\n}\r\n","// Can't just extend the Array, due to Babel does not support built-in classes extending\r\n// This solution was taken from https://stackoverflow.com/questions/46897414/es6-class-extends-array-workaround-for-es5-babel-transpile\r\nclass CacheProto {\r\n add(item) {\r\n for (let i = this.length - 1; i >= 0; i--) {\r\n if (this[i].index === item.scope.$index) {\r\n this[i].height = item.element.outerHeight();\r\n return;\r\n }\r\n }\r\n this.push({\r\n index: item.scope.$index,\r\n height: item.element.outerHeight()\r\n });\r\n this.sort((a, b) => ((a.index < b.index) ? -1 : ((a.index > b.index) ? 1 : 0)));\r\n }\r\n\r\n remove(argument, _shiftTop) {\r\n const index = argument % 1 === 0 ? argument : argument.scope.$index;\r\n const shiftTop = argument % 1 === 0 ? _shiftTop : argument.shiftTop;\r\n for (let i = this.length - 1; i >= 0; i--) {\r\n if (this[i].index === index) {\r\n this.splice(i, 1);\r\n break;\r\n }\r\n }\r\n if (!shiftTop) {\r\n for (let i = this.length - 1; i >= 0; i--) {\r\n if (this[i].index > index) {\r\n this[i].index--;\r\n }\r\n }\r\n }\r\n }\r\n\r\n clear() {\r\n this.length = 0;\r\n }\r\n}\r\n\r\nfunction Cache() {\r\n const instance = [];\r\n instance.push.apply(instance, arguments);\r\n Object.setPrototypeOf(instance, Cache.prototype);\r\n return instance;\r\n}\r\nCache.prototype = Object.create(Array.prototype);\r\nObject.getOwnPropertyNames(CacheProto.prototype).forEach(methodName =>\r\n Cache.prototype[methodName] = CacheProto.prototype[methodName]\r\n);\r\n\r\nfunction generateElement(template) {\r\n if (template.nodeType !== Node.ELEMENT_NODE) {\r\n throw new Error('ui-scroll directive requires an Element node for templating the view');\r\n }\r\n let element;\r\n switch (template.tagName.toLowerCase()) {\r\n case 'dl':\r\n throw new Error(`ui-scroll directive does not support <${template.tagName}> as a repeating tag: ${template.outerHTML}`);\r\n case 'tr':\r\n let table = angular.element('');\r\n element = table.find('tr');\r\n break;\r\n case 'li':\r\n element = angular.element('');\r\n break;\r\n default:\r\n element = angular.element('');\r\n }\r\n return element;\r\n}\r\n\r\nclass Padding {\r\n constructor(template) {\r\n this.element = generateElement(template);\r\n this.cache = new Cache();\r\n }\r\n\r\n height() {\r\n return this.element.height.apply(this.element, arguments);\r\n }\r\n}\r\n\r\nexport default Padding;","import Padding from './padding';\r\n\r\nexport default function Viewport(elementRoutines, buffer, element, viewportController, $rootScope, padding) {\r\n let topPadding = null;\r\n let bottomPadding = null;\r\n const viewport = viewportController && viewportController.viewport ? viewportController.viewport : angular.element(window);\r\n const container = viewportController && viewportController.container ? viewportController.container : undefined;\r\n const scope = viewportController && viewportController.scope ? viewportController.scope : $rootScope;\r\n\r\n viewport.css({\r\n 'overflow-anchor': 'none',\r\n 'overflow-y': 'auto',\r\n 'display': 'block'\r\n });\r\n\r\n function bufferPadding() {\r\n return viewport.outerHeight() * padding; // some extra space to initiate preload\r\n }\r\n\r\n angular.extend(viewport, {\r\n getScope() {\r\n return scope;\r\n },\r\n\r\n createPaddingElements(template) {\r\n topPadding = new Padding(template);\r\n bottomPadding = new Padding(template);\r\n element.before(topPadding.element);\r\n element.after(bottomPadding.element);\r\n topPadding.height(0);\r\n bottomPadding.height(0);\r\n },\r\n\r\n applyContainerStyle() {\r\n if (!container) {\r\n return true;\r\n }\r\n if (container !== viewport) {\r\n viewport.css('height', window.getComputedStyle(container[0]).height);\r\n }\r\n return viewport.height() > 0;\r\n },\r\n\r\n bottomDataPos() {\r\n let scrollHeight = viewport[0].scrollHeight;\r\n scrollHeight = scrollHeight != null ? scrollHeight : viewport[0].document.documentElement.scrollHeight;\r\n return scrollHeight - bottomPadding.height();\r\n },\r\n\r\n topDataPos() {\r\n return topPadding.height();\r\n },\r\n\r\n bottomVisiblePos() {\r\n return viewport.scrollTop() + viewport.outerHeight();\r\n },\r\n\r\n topVisiblePos() {\r\n return viewport.scrollTop();\r\n },\r\n\r\n insertElement(e, sibling) {\r\n return elementRoutines.insertElement(e, sibling || topPadding.element);\r\n },\r\n\r\n insertElementAnimated(e, sibling) {\r\n return elementRoutines.insertElementAnimated(e, sibling || topPadding.element);\r\n },\r\n\r\n shouldLoadBottom() {\r\n return !buffer.eof && viewport.bottomDataPos() < viewport.bottomVisiblePos() + bufferPadding();\r\n },\r\n\r\n clipBottom() {\r\n // clip the invisible items off the bottom\r\n let overage = 0;\r\n let overageHeight = 0;\r\n let itemHeight = 0;\r\n let emptySpaceHeight = viewport.bottomDataPos() - viewport.bottomVisiblePos() - bufferPadding();\r\n\r\n for (let i = buffer.length - 1; i >= 0; i--) {\r\n itemHeight = buffer[i].element.outerHeight(true);\r\n if (overageHeight + itemHeight > emptySpaceHeight) {\r\n break;\r\n }\r\n bottomPadding.cache.add(buffer[i]);\r\n overageHeight += itemHeight;\r\n overage++;\r\n }\r\n\r\n if (overage > 0) {\r\n buffer.eof = false;\r\n buffer.remove(buffer.length - overage, buffer.length);\r\n buffer.next -= overage;\r\n viewport.adjustPaddings();\r\n }\r\n },\r\n\r\n shouldLoadTop() {\r\n return !buffer.bof && (viewport.topDataPos() > viewport.topVisiblePos() - bufferPadding());\r\n },\r\n\r\n clipTop() {\r\n // clip the invisible items off the top\r\n let overage = 0;\r\n let overageHeight = 0;\r\n let itemHeight = 0;\r\n let emptySpaceHeight = viewport.topVisiblePos() - viewport.topDataPos() - bufferPadding();\r\n\r\n for (let i = 0; i < buffer.length; i++) {\r\n itemHeight = buffer[i].element.outerHeight(true);\r\n if (overageHeight + itemHeight > emptySpaceHeight) {\r\n break;\r\n }\r\n topPadding.cache.add(buffer[i]);\r\n overageHeight += itemHeight;\r\n overage++;\r\n }\r\n\r\n if (overage > 0) {\r\n // we need to adjust top padding element before items are removed from top\r\n // to avoid strange behaviour of scroll bar during remove top items when we are at the very bottom\r\n topPadding.height(topPadding.height() + overageHeight);\r\n buffer.bof = false;\r\n buffer.remove(0, overage);\r\n buffer.first += overage;\r\n }\r\n },\r\n\r\n adjustPaddings() {\r\n if (!buffer.length) {\r\n return;\r\n }\r\n\r\n // precise heights calculation based on items that are in buffer or that were in buffer once\r\n const visibleItemsHeight = buffer.reduce((summ, item) => summ + item.element.outerHeight(true), 0);\r\n\r\n let topPaddingHeight = 0, topCount = 0;\r\n topPadding.cache.forEach(item => {\r\n if (item.index < buffer.first) {\r\n topPaddingHeight += item.height;\r\n topCount++;\r\n }\r\n });\r\n\r\n let bottomPaddingHeight = 0, bottomCount = 0;\r\n bottomPadding.cache.forEach(item => {\r\n if (item.index >= buffer.next) {\r\n bottomPaddingHeight += item.height;\r\n bottomCount++;\r\n }\r\n });\r\n\r\n const totalHeight = visibleItemsHeight + topPaddingHeight + bottomPaddingHeight;\r\n const averageItemHeight = totalHeight / (topCount + bottomCount + buffer.length);\r\n\r\n // average heights calculation, items that have never been reached\r\n let adjustTopPadding = buffer.minIndexUser !== null && buffer.minIndex > buffer.minIndexUser;\r\n let adjustBottomPadding = buffer.maxIndexUser !== null && buffer.maxIndex < buffer.maxIndexUser;\r\n let topPaddingHeightAdd = adjustTopPadding ? (buffer.minIndex - buffer.minIndexUser) * averageItemHeight : 0;\r\n let bottomPaddingHeightAdd = adjustBottomPadding ? (buffer.maxIndexUser - buffer.maxIndex) * averageItemHeight : 0;\r\n\r\n // paddings combine adjustment\r\n topPadding.height(topPaddingHeight + topPaddingHeightAdd);\r\n bottomPadding.height(bottomPaddingHeight + bottomPaddingHeightAdd);\r\n },\r\n\r\n onAfterMinIndexSet(topPaddingHeightOld) {\r\n // additional scrollTop adjustment in case of datasource.minIndex external set\r\n if (buffer.minIndexUser !== null && buffer.minIndex > buffer.minIndexUser) {\r\n let diff = topPadding.height() - topPaddingHeightOld;\r\n viewport.scrollTop(viewport.scrollTop() + diff);\r\n while((diff -= viewport.scrollTop()) > 0) {\r\n bottomPadding.height(bottomPadding.height() + diff);\r\n viewport.scrollTop(viewport.scrollTop() + diff);\r\n }\r\n }\r\n },\r\n\r\n onAfterPrepend(updates) {\r\n if (!updates.prepended.length) {\r\n return;\r\n }\r\n const height = buffer.effectiveHeight(updates.prepended);\r\n const paddingHeight = topPadding.height() - height;\r\n if (paddingHeight >= 0) {\r\n topPadding.height(paddingHeight);\r\n return;\r\n }\r\n const position = viewport.scrollTop();\r\n const newPosition = position - paddingHeight;\r\n viewport.synthetic = { previous: position, next: newPosition };\r\n topPadding.height(0);\r\n viewport.scrollTop(newPosition);\r\n },\r\n\r\n resetTopPadding() {\r\n topPadding.height(0);\r\n topPadding.cache.clear();\r\n },\r\n\r\n resetBottomPadding() {\r\n bottomPadding.height(0);\r\n bottomPadding.cache.clear();\r\n },\r\n\r\n removeCacheItem(item, shiftTop) {\r\n topPadding.cache.remove(item, shiftTop);\r\n bottomPadding.cache.remove(item, shiftTop);\r\n },\r\n\r\n removeItem(item) {\r\n this.removeCacheItem(item);\r\n return buffer.remove(item);\r\n }\r\n });\r\n\r\n return viewport;\r\n}\r\n","import { OPERATIONS } from './utils';\r\n\r\nclass Adapter {\r\n\r\n constructor($scope, $parse, $attr, viewport, buffer, doAdjust, reload) {\r\n this.$parse = $parse;\r\n this.$attr = $attr;\r\n this.viewport = viewport;\r\n this.buffer = buffer;\r\n\r\n this.doAdjust = doAdjust;\r\n this.reload = reload;\r\n\r\n this.isLoading = false;\r\n this.disabled = false;\r\n\r\n const viewportScope = viewport.getScope();\r\n this.startScope = viewportScope.$parent ? viewportScope : $scope;\r\n\r\n this.publicContext = {};\r\n this.assignAdapter($attr.adapter);\r\n this.generatePublicContext();\r\n }\r\n\r\n assignAdapter(adapterAttr) {\r\n if (!adapterAttr || !(adapterAttr = adapterAttr.replace(/^\\s+|\\s+$/gm, ''))) {\r\n return;\r\n }\r\n let adapterOnScope;\r\n\r\n try {\r\n this.$parse(adapterAttr).assign(this.startScope, {});\r\n adapterOnScope = this.$parse(adapterAttr)(this.startScope);\r\n }\r\n catch (error) {\r\n error.message = `Angular ui-scroll Adapter assignment exception.\\n` +\r\n `Can't parse \"${adapterAttr}\" expression.\\n` +\r\n error.message;\r\n throw error;\r\n }\r\n\r\n angular.extend(adapterOnScope, this.publicContext);\r\n this.publicContext = adapterOnScope;\r\n }\r\n\r\n generatePublicContext() {\r\n // these methods will be accessible out of ui-scroll via user defined adapter\r\n const publicMethods = ['reload', 'applyUpdates', 'append', 'prepend', 'isBOF', 'isEOF', 'isEmpty'];\r\n for (let i = publicMethods.length - 1; i >= 0; i--) {\r\n this.publicContext[publicMethods[i]] = this[publicMethods[i]].bind(this);\r\n }\r\n\r\n // these read-only props will be accessible out of ui-scroll via user defined adapter\r\n const publicProps = ['isLoading', 'topVisible', 'topVisibleElement', 'topVisibleScope', 'bottomVisible', 'bottomVisibleElement', 'bottomVisibleScope'];\r\n for (let i = publicProps.length - 1; i >= 0; i--) {\r\n let property, attr = this.$attr[publicProps[i]];\r\n Object.defineProperty(this, publicProps[i], {\r\n get: () => property,\r\n set: (value) => {\r\n property = value;\r\n this.publicContext[publicProps[i]] = value;\r\n if (attr) {\r\n this.$parse(attr).assign(this.startScope, value);\r\n }\r\n }\r\n });\r\n }\r\n\r\n // read-only immediately calculated public properties\r\n const publicPropsImmediate = ['bufferFirst', 'bufferLast', 'bufferLength'];\r\n for (let i = publicPropsImmediate.length - 1; i >= 0; i--) {\r\n Object.defineProperty(this.publicContext, publicPropsImmediate[i], {\r\n get: () => this[publicPropsImmediate[i]]\r\n });\r\n }\r\n\r\n // non-read-only public property\r\n Object.defineProperty(this.publicContext, 'disabled', {\r\n get: () => this.disabled,\r\n set: (value) => (!(this.disabled = value)) ? this.doAdjust() : null\r\n });\r\n }\r\n\r\n loading(value) {\r\n this.isLoading = value;\r\n }\r\n\r\n isBOF() {\r\n return this.buffer.bof;\r\n }\r\n\r\n isEOF() {\r\n return this.buffer.eof;\r\n }\r\n\r\n isEmpty() {\r\n return !this.buffer.length;\r\n }\r\n\r\n get bufferLength() {\r\n return this.buffer.getItems().length;\r\n }\r\n\r\n get bufferFirst() {\r\n return this.buffer.getFirstItem();\r\n }\r\n\r\n get bufferLast() {\r\n return this.buffer.getLastItem();\r\n }\r\n\r\n append(newItems) {\r\n this.buffer.append(newItems);\r\n this.doAdjust();\r\n this.viewport.clipTop();\r\n this.viewport.clipBottom();\r\n }\r\n\r\n prepend(newItems, options = {}) {\r\n this.buffer.prepend(newItems, options.immutableTop);\r\n this.doAdjust();\r\n this.viewport.clipTop();\r\n this.viewport.clipBottom();\r\n }\r\n\r\n applyUpdates(arg1, arg2, arg3) {\r\n if (typeof arg1 === 'function') {\r\n this.applyUpdatesFunc(arg1, arg2);\r\n } else {\r\n this.applyUpdatesIndex(arg1, arg2, arg3);\r\n }\r\n this.doAdjust();\r\n }\r\n\r\n applyUpdatesFunc(cb, options = {}) {\r\n this.buffer.slice(0).forEach((wrapper) => {\r\n // we need to do it on the buffer clone, because buffer content\r\n // may change as we iterate through\r\n this.applyUpdate(wrapper, cb(wrapper.item, wrapper.scope, wrapper.element), options);\r\n });\r\n }\r\n\r\n applyUpdatesIndex(index, newItems, options = {}) {\r\n if (index % 1 !== 0) {\r\n throw new Error('applyUpdates - ' + index + ' is not a valid index (should be an integer)');\r\n }\r\n const _index = index - this.buffer.first;\r\n\r\n // apply updates only within buffer\r\n if (_index >= 0 && _index < this.buffer.length) {\r\n this.applyUpdate(this.buffer[_index], newItems, options);\r\n }\r\n // out-of-buffer case: deletion may affect Paddings\r\n else if(index >= this.buffer.getAbsMinIndex() && index <= this.buffer.getAbsMaxIndex()) {\r\n if(angular.isArray(newItems) && !newItems.length) {\r\n this.viewport.removeCacheItem(index, !options.immutableTop && index === this.buffer.minIndex);\r\n if (!options.immutableTop && index === this.buffer.getAbsMinIndex()) {\r\n this.buffer.incrementMinIndex();\r\n }\r\n else {\r\n this.buffer.decrementMaxIndex();\r\n }\r\n }\r\n }\r\n }\r\n\r\n applyUpdate(wrapper, newItems, options = {}) {\r\n if (!angular.isArray(newItems)) {\r\n return;\r\n }\r\n let position = this.buffer.indexOf(wrapper);\r\n if (!newItems.reverse().some(newItem => newItem === wrapper.item)) {\r\n wrapper.op = OPERATIONS.REMOVE;\r\n // try to catch \"first\" edge case on remove\r\n if (!options.immutableTop && !newItems.length) {\r\n // this is the first item, or the previous one's part of the \"shift-top\" group\r\n if (\r\n (position === 0 && this.buffer.bof) ||\r\n (position !== 0 && this.buffer[position - 1].shiftTop)\r\n ) {\r\n wrapper.shiftTop = true;\r\n }\r\n }\r\n }\r\n newItems.forEach((newItem) => {\r\n if (newItem === wrapper.item) {\r\n position--;\r\n } else {\r\n // 3 parameter (shiftTop) is to catch \"first\" edge case on insert\r\n this.buffer.insert(position + 1, newItem, !options.immutableTop && position === -1);\r\n }\r\n });\r\n }\r\n\r\n calculateProperties() {\r\n let rowTop = null, topHeight = 0;\r\n let topDone = false, bottomDone = false;\r\n const length = this.buffer.length;\r\n\r\n for (let i = 0; i < length; i++) {\r\n const item = this.buffer[i];\r\n const itemTop = item.element.offset().top;\r\n\r\n if (rowTop !== itemTop) { // a new row condition\r\n const itemHeight = item.element.outerHeight(true);\r\n const top = this.viewport.topDataPos() + topHeight + itemHeight;\r\n\r\n if (!topDone && top > this.viewport.topVisiblePos()) {\r\n topDone = true;\r\n this['topVisible'] = item.item;\r\n this['topVisibleElement'] = item.element;\r\n this['topVisibleScope'] = item.scope;\r\n }\r\n if (!bottomDone && (top >= this.viewport.bottomVisiblePos() || (i === length - 1 && this.isEOF()))) {\r\n bottomDone = true;\r\n this['bottomVisible'] = item.item;\r\n this['bottomVisibleElement'] = item.element;\r\n this['bottomVisibleScope'] = item.scope;\r\n }\r\n topHeight += itemHeight;\r\n }\r\n rowTop = itemTop;\r\n\r\n if (topDone && bottomDone) {\r\n break;\r\n }\r\n }\r\n }\r\n\r\n}\r\n\r\nexport default Adapter;\r\n","import JQLiteExtras from './modules/jqLiteExtras';\r\nimport ElementRoutines from './modules/elementRoutines.js';\r\nimport ScrollBuffer from './modules/buffer.js';\r\nimport Viewport from './modules/viewport.js';\r\nimport Adapter from './modules/adapter.js';\r\nimport { OPERATIONS } from './modules/utils';\r\n\r\nangular.module('ui.scroll', [])\r\n\r\n .constant('JQLiteExtras', JQLiteExtras)\r\n .run(['JQLiteExtras', (JQLiteExtras) => {\r\n const elt = angular.element;\r\n !(window.jQuery && elt.fn && elt.fn.jquery) ? (new JQLiteExtras()).registerFor(elt) : null;\r\n ElementRoutines.addCSSRules();\r\n }])\r\n\r\n .directive('uiScrollViewport', function () {\r\n return {\r\n restrict: 'A',\r\n controller: [\r\n '$scope',\r\n '$element',\r\n function (scope, element) {\r\n this.container = element;\r\n this.viewport = element;\r\n this.scope = scope;\r\n\r\n angular.forEach(element.children(), child => {\r\n if (child.tagName.toLowerCase() === 'tbody') {\r\n this.viewport = angular.element(child);\r\n }\r\n });\r\n\r\n return this;\r\n }\r\n ]\r\n };\r\n })\r\n\r\n .directive('uiScroll', [\r\n '$log',\r\n '$injector',\r\n '$rootScope',\r\n '$timeout',\r\n '$interval',\r\n '$q',\r\n '$parse',\r\n function (console, $injector, $rootScope, $timeout, $interval, $q, $parse) {\r\n\r\n return {\r\n require: ['?^uiScrollViewport'],\r\n restrict: 'A',\r\n transclude: 'element',\r\n priority: 1000,\r\n terminal: true,\r\n link: link\r\n };\r\n\r\n function link($scope, element, $attr, controllers, linker) {\r\n const match = $attr.uiScroll.match(/^\\s*(\\w+)\\s+in\\s+([(\\w|\\$)\\.]+)\\s*$/);\r\n if (!match) {\r\n throw new Error('Expected uiScroll in form of \\'_item_ in _datasource_\\' but got \\'' + $attr.uiScroll + '\\'');\r\n }\r\n\r\n function parseNumber(value, defaultValue, isFloat) {\r\n if (!isFloat) {\r\n value = value === null ? defaultValue : Math.floor(value);\r\n }\r\n return isNaN(value) ? defaultValue : value;\r\n }\r\n\r\n function parseNumericAttr(value, defaultValue, isFloat) {\r\n const result = $parse(value)($scope);\r\n return parseNumber(result, defaultValue, isFloat);\r\n }\r\n\r\n function parseBooleanAttr(value, defaultValue) {\r\n const result = $parse(value)($scope);\r\n return typeof result === 'boolean' ? result : defaultValue;\r\n }\r\n\r\n const BUFFER_MIN = 3;\r\n const BUFFER_DEFAULT = 10;\r\n const PADDING_MIN = 0.3;\r\n const PADDING_DEFAULT = 0.5;\r\n const HANDLE_INERTIA_DEFAULT = true;\r\n const START_INDEX_DEFAULT = 1;\r\n const MAX_VIEWPORT_DELAY = 500;\r\n const VIEWPORT_POLLING_INTERVAL = 50;\r\n\r\n let datasource = null;\r\n const itemName = match[1];\r\n const datasourceName = match[2];\r\n const viewportController = controllers[0];\r\n const bufferSize = Math.max(BUFFER_MIN, parseNumericAttr($attr.bufferSize, BUFFER_DEFAULT));\r\n const padding = Math.max(PADDING_MIN, parseNumericAttr($attr.padding, PADDING_DEFAULT, true));\r\n const handleInertia = parseBooleanAttr($attr.handleInertia, HANDLE_INERTIA_DEFAULT);\r\n let startIndex = parseNumericAttr($attr.startIndex, START_INDEX_DEFAULT);\r\n let ridActual = 0; // current data revision id\r\n let pending = [];\r\n\r\n const elementRoutines = new ElementRoutines($injector, $q);\r\n const buffer = new ScrollBuffer(elementRoutines, bufferSize, startIndex);\r\n const viewport = new Viewport(elementRoutines, buffer, element, viewportController, $rootScope, padding);\r\n const adapter = new Adapter($scope, $parse, $attr, viewport, buffer, doAdjust, reload);\r\n\r\n if (viewportController) {\r\n viewportController.adapter = adapter;\r\n }\r\n\r\n const isDatasourceValid = () =>\r\n Object.prototype.toString.call(datasource) === '[object Object]' && typeof datasource.get === 'function';\r\n\r\n datasource = $parse(datasourceName)($scope); // try to get datasource on scope\r\n if (!isDatasourceValid()) {\r\n datasource = $injector.get(datasourceName); // try to inject datasource as service\r\n if (!isDatasourceValid()) {\r\n throw new Error(datasourceName + ' is not a valid datasource');\r\n }\r\n }\r\n\r\n let onRenderHandlers = [];\r\n function onRenderHandlersRunner() {\r\n onRenderHandlers.forEach(handler => handler.run());\r\n onRenderHandlers = [];\r\n }\r\n function persistDatasourceIndex(datasource, propName) {\r\n let getter;\r\n // need to postpone min/maxIndexUser processing if the view is empty\r\n if (angular.isNumber(datasource[propName])) {\r\n getter = datasource[propName];\r\n if (angular.isNumber(getter)) {\r\n onRenderHandlers = onRenderHandlers.filter(handler => handler.id !== propName);\r\n onRenderHandlers.push({\r\n id: propName,\r\n run: () => datasource[propName] = getter\r\n });\r\n }\r\n }\r\n }\r\n\r\n function defineDatasourceIndex(datasource, propName, propUserName) {\r\n const descriptor = Object.getOwnPropertyDescriptor(datasource, propName);\r\n if (descriptor && (descriptor.set || descriptor.get)) {\r\n return;\r\n }\r\n let getter;\r\n persistDatasourceIndex(datasource, propName);\r\n Object.defineProperty(datasource, propName, {\r\n set: (value) => {\r\n getter = value;\r\n if (pending.length && !buffer.length) {\r\n persistDatasourceIndex(datasource, propName);\r\n return;\r\n }\r\n buffer[propUserName] = value;\r\n const topPaddingHeightOld = viewport.topDataPos();\r\n viewport.adjustPaddings();\r\n if (propName === 'minIndex') {\r\n viewport.onAfterMinIndexSet(topPaddingHeightOld);\r\n }\r\n },\r\n get: () => getter\r\n });\r\n }\r\n\r\n defineDatasourceIndex(datasource, 'minIndex', 'minIndexUser');\r\n defineDatasourceIndex(datasource, 'maxIndex', 'maxIndexUser');\r\n\r\n const fetchNext = (datasource.get.length !== 2) ?\r\n (success) => datasource.get(buffer.next, bufferSize, success) :\r\n (success) => {\r\n datasource.get({\r\n index: buffer.next,\r\n append: buffer.length ? buffer[buffer.length - 1].item : void 0,\r\n count: bufferSize\r\n }, success);\r\n };\r\n\r\n const fetchPrevious = (datasource.get.length !== 2) ?\r\n (success) => datasource.get(buffer.first - bufferSize, bufferSize, success) :\r\n (success) => {\r\n datasource.get({\r\n index: buffer.first - bufferSize,\r\n prepend: buffer.length ? buffer[0].item : void 0,\r\n count: bufferSize\r\n }, success);\r\n };\r\n\r\n const initialize = () => {\r\n let tryCount = 0;\r\n if (!viewport.applyContainerStyle()) {\r\n const timer = $interval(() => {\r\n tryCount++;\r\n if (viewport.applyContainerStyle()) {\r\n $interval.cancel(timer);\r\n doAdjust();\r\n }\r\n if (tryCount * VIEWPORT_POLLING_INTERVAL >= MAX_VIEWPORT_DELAY) {\r\n $interval.cancel(timer);\r\n throw Error(`ui-scroll directive requires a viewport with non-zero height in ${MAX_VIEWPORT_DELAY}ms`);\r\n }\r\n }, VIEWPORT_POLLING_INTERVAL);\r\n }\r\n else {\r\n doAdjust();\r\n }\r\n };\r\n\r\n /**\r\n * Build padding elements\r\n *\r\n * Calling linker is the only way I found to get access to the tag name of the template\r\n * to prevent the directive scope from pollution a new scope is created and destroyed\r\n * right after the builder creation is completed\r\n */\r\n linker((clone, scope) => {\r\n viewport.createPaddingElements(clone[0]);\r\n // we do not include the clone in the DOM. It means that the nested directives will not\r\n // be able to reach the parent directives, but in this case it is intentional because we\r\n // created the clone to access the template tag name\r\n scope.$destroy();\r\n clone.remove();\r\n });\r\n\r\n $scope.$on('$destroy', () => {\r\n unbindEvents();\r\n viewport.off('mousewheel', wheelHandler);\r\n });\r\n\r\n viewport.on('mousewheel', wheelHandler);\r\n\r\n initialize();\r\n\r\n /* Private function definitions */\r\n\r\n function isInvalid(rid) {\r\n return (rid && rid !== ridActual) || $scope.$$destroyed;\r\n }\r\n\r\n function bindEvents() {\r\n viewport.on('resize', resizeAndScrollHandler);\r\n viewport.on('scroll', resizeAndScrollHandler);\r\n }\r\n\r\n function unbindEvents() {\r\n viewport.off('resize', resizeAndScrollHandler);\r\n viewport.off('scroll', resizeAndScrollHandler);\r\n }\r\n\r\n function reload() {\r\n unbindEvents();\r\n viewport.resetTopPadding();\r\n viewport.resetBottomPadding();\r\n if (arguments.length) {\r\n startIndex = parseNumber(arguments[0], START_INDEX_DEFAULT, false);\r\n }\r\n buffer.reset(startIndex);\r\n persistDatasourceIndex(datasource, 'minIndex');\r\n persistDatasourceIndex(datasource, 'maxIndex');\r\n doAdjust();\r\n }\r\n\r\n function isElementVisible(wrapper) {\r\n return wrapper.element.height() && wrapper.element[0].offsetParent;\r\n }\r\n\r\n function visibilityWatcher(wrapper) {\r\n if (isElementVisible(wrapper)) {\r\n buffer.forEach((item) => {\r\n if (typeof item.unregisterVisibilityWatcher === 'function') {\r\n item.unregisterVisibilityWatcher();\r\n delete item.unregisterVisibilityWatcher;\r\n }\r\n });\r\n if (!pending.length) {\r\n $timeout(() => doAdjust());\r\n }\r\n }\r\n }\r\n\r\n function insertWrapperContent(wrapper, insertAfter) {\r\n createElement(wrapper, insertAfter, viewport.insertElement);\r\n if (!isElementVisible(wrapper)) {\r\n wrapper.unregisterVisibilityWatcher = wrapper.scope.$watch(() => visibilityWatcher(wrapper));\r\n }\r\n elementRoutines.hideElement(wrapper); // hide inserted elements before data binding\r\n }\r\n\r\n function createElement(wrapper, insertAfter, insertElement) {\r\n let promises = null;\r\n const sibling = (insertAfter > 0) ? buffer[insertAfter - 1].element : undefined;\r\n linker((clone, scope) => {\r\n promises = insertElement(clone, sibling);\r\n wrapper.element = clone;\r\n wrapper.scope = scope;\r\n scope[itemName] = wrapper.item;\r\n });\r\n // ui-scroll-grid apply\r\n if (adapter.transform) {\r\n const tdInitializer = wrapper.scope.uiScrollTdInitializer;\r\n if (tdInitializer && tdInitializer.linking) {\r\n adapter.transform(wrapper.scope, wrapper.element);\r\n } else {\r\n wrapper.scope.uiScrollTdInitializer = {\r\n onLink: () => adapter.transform(wrapper.scope, wrapper.element),\r\n scope: wrapper.scope\r\n };\r\n }\r\n }\r\n return promises;\r\n }\r\n\r\n function updateDOM() {\r\n let promises = [];\r\n const toBePrepended = [];\r\n const toBeRemoved = [];\r\n const inserted = [];\r\n\r\n buffer.forEach((wrapper, i) => {\r\n switch (wrapper.op) {\r\n case OPERATIONS.PREPEND:\r\n toBePrepended.unshift(wrapper);\r\n break;\r\n case OPERATIONS.APPEND:\r\n insertWrapperContent(wrapper, i);\r\n wrapper.op = OPERATIONS.NONE;\r\n inserted.push(wrapper);\r\n break;\r\n case OPERATIONS.INSERT:\r\n promises = promises.concat(createElement(wrapper, i, viewport.insertElementAnimated));\r\n wrapper.op = OPERATIONS.NONE;\r\n inserted.push(wrapper);\r\n break;\r\n case OPERATIONS.REMOVE:\r\n toBeRemoved.push(wrapper);\r\n }\r\n });\r\n\r\n toBeRemoved.forEach((wrapper) => promises = promises.concat(viewport.removeItem(wrapper)));\r\n\r\n if (toBePrepended.length)\r\n toBePrepended.forEach((wrapper) => {\r\n insertWrapperContent(wrapper);\r\n wrapper.op = OPERATIONS.NONE;\r\n });\r\n\r\n buffer.forEach((item, i) => item.scope.$index = buffer.first + i);\r\n\r\n return {\r\n prepended: toBePrepended,\r\n removed: toBeRemoved,\r\n inserted: inserted,\r\n animated: promises\r\n };\r\n\r\n }\r\n\r\n function updatePaddings(rid, updates) {\r\n // schedule another doAdjust after animation completion\r\n if (updates.animated.length) {\r\n $q.all(updates.animated).then(() => {\r\n viewport.adjustPaddings();\r\n doAdjust(rid);\r\n });\r\n } else {\r\n viewport.adjustPaddings();\r\n }\r\n }\r\n\r\n function enqueueFetch(rid, updates) {\r\n if (viewport.shouldLoadBottom()) {\r\n if (!updates || buffer.effectiveHeight(updates.inserted) > 0) {\r\n // this means that at least one item appended in the last batch has height > 0\r\n if (pending.push(true) === 1) {\r\n adapter.loading(true);\r\n fetch(rid);\r\n }\r\n }\r\n } else if (viewport.shouldLoadTop()) {\r\n if ((!updates || buffer.effectiveHeight(updates.prepended) > 0) || pending[0]) {\r\n // this means that at least one item appended in the last batch has height > 0\r\n // pending[0] = true means that previous fetch was appending. We need to force at least one prepend\r\n // BTW there will always be at least 1 element in the pending array because bottom is fetched first\r\n if (pending.push(false) === 1) {\r\n adapter.loading(true);\r\n fetch(rid);\r\n }\r\n }\r\n }\r\n }\r\n\r\n function processUpdates() {\r\n const updates = updateDOM();\r\n\r\n // We need the item bindings to be processed before we can do adjustments\r\n !$scope.$$phase && !$rootScope.$$phase && $scope.$digest();\r\n\r\n updates.inserted.forEach(w => elementRoutines.showElement(w));\r\n updates.prepended.forEach(w => elementRoutines.showElement(w));\r\n return updates;\r\n }\r\n\r\n function doAdjust(rid) {\r\n if (!rid) { // dismiss pending requests\r\n pending = [];\r\n rid = ++ridActual;\r\n }\r\n\r\n const updates = processUpdates();\r\n\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n updatePaddings(rid, updates);\r\n enqueueFetch(rid);\r\n\r\n if (!pending.length) {\r\n adapter.calculateProperties();\r\n }\r\n }\r\n\r\n function doAdjustAfterFetch(rid) {\r\n const updates = processUpdates();\r\n\r\n viewport.onAfterPrepend(updates);\r\n\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n updatePaddings(rid, updates);\r\n onRenderHandlersRunner();\r\n enqueueFetch(rid, updates);\r\n pending.shift();\r\n\r\n if (pending.length)\r\n fetch(rid);\r\n else {\r\n adapter.loading(false);\r\n bindEvents();\r\n adapter.calculateProperties();\r\n }\r\n }\r\n\r\n function fetch(rid) {\r\n if (pending[0]) {// scrolling down\r\n if (buffer.length && !viewport.shouldLoadBottom()) {\r\n doAdjustAfterFetch(rid);\r\n } else {\r\n fetchNext((result) => {\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n if (result.length < bufferSize) {\r\n buffer.eof = true;\r\n }\r\n\r\n if (result.length > 0) {\r\n viewport.clipTop();\r\n buffer.append(result);\r\n }\r\n\r\n doAdjustAfterFetch(rid);\r\n });\r\n }\r\n } else { // scrolling up\r\n if (buffer.length && !viewport.shouldLoadTop()) {\r\n doAdjustAfterFetch(rid);\r\n } else {\r\n fetchPrevious((result) => {\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n if (result.length < bufferSize) {\r\n buffer.bof = true;\r\n // log 'bof is reached'\r\n }\r\n\r\n if (result.length > 0) {\r\n if (buffer.length) {\r\n viewport.clipBottom();\r\n }\r\n buffer.prepend(result);\r\n }\r\n\r\n doAdjustAfterFetch(rid);\r\n });\r\n }\r\n }\r\n }\r\n\r\n function fixInertia() {\r\n if (!viewport.synthetic) {\r\n return;\r\n }\r\n const oldPosition = viewport.synthetic.previous;\r\n const newPosition = viewport.synthetic.next;\r\n if (viewport.scrollTop() !== newPosition) {\r\n requestAnimationFrame(() => {\r\n const position = viewport.scrollTop();\r\n const diff = oldPosition - position;\r\n if (diff > 0) { // inertia over synthetic\r\n viewport.scrollTop(newPosition - diff);\r\n } else {\r\n viewport.scrollTop(newPosition);\r\n }\r\n viewport.synthetic = null;\r\n });\r\n return true;\r\n }\r\n viewport.synthetic = null;\r\n }\r\n\r\n function resizeAndScrollHandler() {\r\n if (handleInertia && fixInertia()) {\r\n return;\r\n }\r\n if (!$rootScope.$$phase && !adapter.isLoading && !adapter.disabled) {\r\n\r\n enqueueFetch(ridActual);\r\n\r\n if (pending.length) {\r\n unbindEvents();\r\n } else {\r\n adapter.calculateProperties();\r\n !$scope.$$phase && $scope.$digest();\r\n }\r\n }\r\n }\r\n\r\n function wheelHandler(event) {\r\n if (!adapter.disabled) {\r\n const scrollTop = viewport[0].scrollTop;\r\n const yMax = viewport[0].scrollHeight - viewport[0].clientHeight;\r\n\r\n if ((scrollTop === 0 && !buffer.bof) || (scrollTop === yMax && !buffer.eof)) {\r\n event.preventDefault();\r\n }\r\n }\r\n }\r\n }\r\n\r\n }\r\n ]);\r\n"],"names":["JQLiteExtras","_classCallCheck","_createClass","key","value","registerFor","element","convertToPx","css","getStyle","isWindow","angular","prototype","name","self","elem","nodeType","style","call","obj","document","location","alert","setInterval","scrollTo","direction","_top$left$direction","_slicedToArray","top","left","method","prop","preserve","isValueDefined","documentElement","window","getComputedStyle","parseFloat","currentStyle","result","rs","rsLeft","core_pnum","source","rnumnonpx","RegExp","test","runtimeStyle","pixelLeft","getMeasurements","measure","base","borderA","borderB","computedMarginA","computedMarginB","computedStyle","dirA","dirB","marginA","marginB","paddingA","paddingB","height","width","padding","border","margin","_width$height$measure","offsetWidth","offsetHeight","getWidthHeight","measurements","outer","outerfull","forEach","before","newElem","children","i","j","parent","ref","contents","prepend","length","after","Error","outerHTML","isNumber","outerHeight","option","outerWidth","offset","docElem","win","box","doc","ownerDocument","arguments","undefined","getBoundingClientRect","defaultView","parentWindow","pageYOffset","scrollTop","clientTop","pageXOffset","scrollLeft","clientLeft","default","hideClassToken","ElementRoutines","$injector","$q","$animate","has","get","isAngularVersionLessThen1_3","version","major","minor","hideElement","wrapper","addClass","showElement","removeClass","insertElement","newElement","previousElement","removeElement","remove","scope","$destroy","insertElementAnimated","deferred","defer","enter","resolve","promise","removeElementAnimated","leave","then","addCSSRules","selector","rules","sheet","styleSheets","index","cssRules","err","insertRule","addRule","OPERATIONS","PREPEND","APPEND","INSERT","REMOVE","NONE","ScrollBuffer","elementRoutines","bufferSize","startIndex","buffer","Object","create","Array","extend","size","reset","eof","bof","first","next","minIndex","maxIndex","minIndexUser","maxIndexUser","append","items","item","insert","Math","max","immutableTop","reverse","min","operation","shiftTop","op","splice","push","unshift","arg1","arg2","indexOf","getAbsMinIndex","incrementMinIndex","decrementMaxIndex","getAbsMaxIndex","effectiveHeight","elements","Number","MAX_VALUE","bottom","NEGATIVE_INFINITY","offsetParent","getItems","filter","getFirstItem","list","getLastItem","CacheProto","add","$index","sort","a","b","argument","_shiftTop","clear","Cache","instance","apply","setPrototypeOf","getOwnPropertyNames","methodName","generateElement","template","Node","ELEMENT_NODE","tagName","toLowerCase","concat","table","find","Padding","cache","Viewport","viewportController","$rootScope","topPadding","bottomPadding","viewport","container","bufferPadding","getScope","createPaddingElements","applyContainerStyle","bottomDataPos","scrollHeight","topDataPos","bottomVisiblePos","topVisiblePos","e","sibling","shouldLoadBottom","clipBottom","overage","overageHeight","itemHeight","emptySpaceHeight","adjustPaddings","shouldLoadTop","clipTop","visibleItemsHeight","reduce","summ","topPaddingHeight","topCount","bottomPaddingHeight","bottomCount","totalHeight","averageItemHeight","adjustTopPadding","adjustBottomPadding","topPaddingHeightAdd","bottomPaddingHeightAdd","onAfterMinIndexSet","topPaddingHeightOld","diff","onAfterPrepend","updates","prepended","paddingHeight","position","newPosition","synthetic","previous","resetTopPadding","resetBottomPadding","removeCacheItem","removeItem","Adapter","$scope","$parse","$attr","doAdjust","reload","isLoading","disabled","viewportScope","startScope","$parent","publicContext","assignAdapter","adapter","generatePublicContext","adapterAttr","replace","adapterOnScope","assign","error","message","_this","publicMethods","bind","publicProps","_loop","_i","property","attr","defineProperty","set","publicPropsImmediate","_loop2","_i2","loading","isBOF","isEOF","isEmpty","newItems","options","applyUpdates","arg3","applyUpdatesFunc","applyUpdatesIndex","cb","_this2","slice","applyUpdate","_index","isArray","_this3","some","newItem","calculateProperties","rowTop","topHeight","topDone","bottomDone","itemTop","module","constant","run","elt","jQuery","fn","jquery","directive","restrict","controller","child","console","$timeout","$interval","require","transclude","priority","terminal","link","controllers","linker","match","uiScroll","parseNumber","defaultValue","isFloat","floor","isNaN","parseNumericAttr","parseBooleanAttr","BUFFER_MIN","BUFFER_DEFAULT","PADDING_MIN","PADDING_DEFAULT","HANDLE_INERTIA_DEFAULT","START_INDEX_DEFAULT","MAX_VIEWPORT_DELAY","VIEWPORT_POLLING_INTERVAL","datasource","itemName","datasourceName","handleInertia","ridActual","pending","isDatasourceValid","toString","onRenderHandlers","onRenderHandlersRunner","handler","persistDatasourceIndex","propName","getter","id","defineDatasourceIndex","propUserName","descriptor","getOwnPropertyDescriptor","fetchNext","success","count","fetchPrevious","initialize","tryCount","timer","cancel","clone","$on","unbindEvents","off","wheelHandler","on","isInvalid","rid","$$destroyed","bindEvents","resizeAndScrollHandler","isElementVisible","visibilityWatcher","unregisterVisibilityWatcher","insertWrapperContent","insertAfter","createElement","$watch","promises","transform","tdInitializer","uiScrollTdInitializer","linking","onLink","updateDOM","toBePrepended","toBeRemoved","inserted","removed","animated","updatePaddings","all","enqueueFetch","fetch","processUpdates","$$phase","$digest","w","doAdjustAfterFetch","shift","fixInertia","oldPosition","requestAnimationFrame","event","yMax","clientHeight","preventDefault"],"sourceRoot":""}
\ No newline at end of file
diff --git a/dist/ui-scroll.min.js b/dist/ui-scroll.min.js
index 1c721cfd..ce39730f 100644
--- a/dist/ui-scroll.min.js
+++ b/dist/ui-scroll.min.js
@@ -1,2 +1,2 @@
-!function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=1)}([,function(e,t,n){"use strict";function r(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=[],r=!0,i=!1,o=void 0;try{for(var a,u=e[Symbol.iterator]();!(r=(a=u.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==u.return||u.return()}finally{if(i)throw o}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function i(e,t){for(var n=0;n0?{base:s.base-s.padding-s.border,outer:s.base,outerfull:s.base+s.margin}[a]:(((u=i(e)[n])<0||null===u)&&(u=e.style[n]||0),{base:(u=parseFloat(u)||0)-s.padding-s.border,outer:u,outerfull:u+s.padding+s.border+s.margin}[a])}return n=angular.element.prototype.css,e.prototype.css=function(e,t){var r=this[0];if(r&&3!==r.nodeType&&8!==r.nodeType&&r.style)return n.call(this,e,t)},o=function(e){return e&&e.document&&e.location&&e.alert&&e.setInterval},window.getComputedStyle?(i=function(e){return window.getComputedStyle(e,null)},t=function(e,t){return parseFloat(t)}):(i=function(e){return e.currentStyle},t=function(e,t){var n,r,i,o,a;return new RegExp("^("+/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source+")(?!px)[a-z%]+$","i").test(t)?(n=(a=e.style).left,o=(i=e.runtimeStyle)&&i.left,i&&(i.left=a.left),a.left=t,r=a.pixelLeft,a.left=n,o&&(i.left=o),r):parseFloat(t)}),angular.forEach({before:function(e){var t,n,r,i,o,a;if(n=this[0],(t=(o=this.parent()).contents())[0]===n)return o.prepend(e);for(r=i=1,a=t.length-1;1<=a?i<=a:i>=a;r=1<=a?++i:--i)if(t[r]===n)return void angular.element(t[r-1]).after(e);throw new Error("invalid DOM structure "+n.outerHTML)},height:function(e){return void 0!==e?(angular.isNumber(e)&&(e+="px"),n.call(this,"height",e)):u(this[0],"height","base")},outerHeight:function(e){return u(this[0],"height",e?"outerfull":"outer")},outerWidth:function(e){return u(this[0],"width",e?"outerfull":"outer")},offset:function(e){var t,n,r=this,i={top:0,left:0},o=r[0],a=o&&o.ownerDocument;if(arguments.length){if(void 0===e)return r;throw new Error("offset setter method is not implemented")}if(a)return t=a.documentElement,null!=o.getBoundingClientRect&&(i=o.getBoundingClientRect()),n=a.defaultView||a.parentWindow,{top:i.top+(n.pageYOffset||t.scrollTop)-(t.clientTop||0),left:i.left+(n.pageXOffset||t.scrollLeft)-(t.clientLeft||0)}},scrollTop:function(e){return a(this,"top",e)},scrollLeft:function(e){return a(this,"left",e)}},(function(t,n){if(!e.prototype[n])return e.prototype[n]=t}))}}])&&i(t.prototype,n),o&&i(t,o),e}();function a(e,t){for(var n=0;nr.minIndexUser)return void r.minIndexUser++;r.minIndex===r.minIndexUser&&r.minIndexUser++}r.minIndex++},decrementMaxIndex:function(){null!==r.maxIndexUser&&r.maxIndex<=r.maxIndexUser&&r.maxIndexUser--,r.maxIndex--},getAbsMinIndex:function(){return null!==r.minIndexUser?Math.min(r.minIndexUser,r.minIndex):r.minIndex},getAbsMaxIndex:function(){return null!==r.maxIndexUser?Math.max(r.maxIndexUser,r.maxIndex):r.maxIndex},effectiveHeight:function(e){if(!e.length)return 0;var t=Number.MAX_VALUE,n=Number.NEGATIVE_INFINITY;return e.forEach((function(e){e.element[0].offsetParent&&(t=Math.min(t,e.element.offset().top),n=Math.max(n,e.element.offset().top+e.element.outerHeight(!0)))})),Math.max(0,n-t)},getItems:function(){return r.filter((function(e){return e.op===p}))},getFirstItem:function(){var e=r.getItems();return e.length?e[0].item:null},getLastItem:function(){var e=r.getItems();return e.length?e[e.length-1].item:null}}),r.reset(n),r}function g(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function v(e,t){for(var n=0;n=0;t--)if(this[t].index===e.scope.$index)return void(this[t].height=e.element.outerHeight());this.push({index:e.scope.$index,height:e.element.outerHeight()}),this.sort((function(e,t){return e.indext.index?1:0}))}},{key:"remove",value:function(e,t){for(var n=e%1==0?e:e.scope.$index,r=e%1==0?t:e.shiftTop,i=this.length-1;i>=0;i--)if(this[i].index===n){this.splice(i,1);break}if(!r)for(var o=this.length-1;o>=0;o--)this[o].index>n&&this[o].index--}},{key:"clear",value:function(){this.length=0}}]),e}();function y(){var e=[];return e.push.apply(e,arguments),Object.setPrototypeOf(e,y.prototype),e}y.prototype=Object.create(Array.prototype),Object.getOwnPropertyNames(x.prototype).forEach((function(e){return y.prototype[e]=x.prototype[e]}));var I=function(){function e(t){g(this,e),this.element=function(e){if(e.nodeType!==Node.ELEMENT_NODE)throw new Error("ui-scroll directive requires an Element node for templating the view");var t;switch(e.tagName.toLowerCase()){case"dl":throw new Error("ui-scroll directive does not support <".concat(e.tagName,"> as a repeating tag: ").concat(e.outerHTML));case"tr":t=angular.element("").find("tr");break;case"li":t=angular.element("");break;default:t=angular.element("")}return t}(t),this.cache=new y}return b(e,[{key:"height",value:function(){return this.element.height.apply(this.element,arguments)}}]),e}();function w(e,t,n,r,i,o){var a=null,u=null,s=r&&r.viewport?r.viewport:angular.element(window),l=r&&r.container?r.container:void 0,c=r&&r.scope?r.scope:i;function f(){return s.outerHeight()*o}return s.css({"overflow-anchor":"none","overflow-y":"auto",display:"block"}),angular.extend(s,{getScope:function(){return c},createPaddingElements:function(e){a=new I(e),u=new I(e),n.before(a.element),n.after(u.element),a.height(0),u.height(0)},applyContainerStyle:function(){return!l||(l!==s&&s.css("height",window.getComputedStyle(l[0]).height),s.height()>0)},bottomDataPos:function(){var e=s[0].scrollHeight;return(e=null!=e?e:s[0].document.documentElement.scrollHeight)-u.height()},topDataPos:function(){return a.height()},bottomVisiblePos:function(){return s.scrollTop()+s.outerHeight()},topVisiblePos:function(){return s.scrollTop()},insertElement:function(t,n){return e.insertElement(t,n||a.element)},insertElementAnimated:function(t,n){return e.insertElementAnimated(t,n||a.element)},shouldLoadBottom:function(){return!t.eof&&s.bottomDataPos()=0&&!(n+(r=t[o].element.outerHeight(!0))>i);o--)u.cache.add(t[o]),n+=r,e++;e>0&&(t.eof=!1,t.remove(t.length-e,t.length),t.next-=e,s.adjustPaddings())},shouldLoadTop:function(){return!t.bof&&s.topDataPos()>s.topVisiblePos()-f()},clipTop:function(){for(var e=0,n=0,r=0,i=s.topVisiblePos()-s.topDataPos()-f(),o=0;oi);o++)a.cache.add(t[o]),n+=r,e++;e>0&&(a.height(a.height()+n),t.bof=!1,t.remove(0,e),t.first+=e)},adjustPaddings:function(){if(t.length){var e=t.reduce((function(e,t){return e+t.element.outerHeight(!0)}),0),n=0,r=0;a.cache.forEach((function(e){e.index=t.next&&(i+=e.height,o++)}));var s=(e+n+i)/(r+o+t.length),l=null!==t.minIndexUser&&t.minIndex>t.minIndexUser,c=null!==t.maxIndexUser&&t.maxIndext.minIndexUser){var n=a.height()-e;for(s.scrollTop(s.scrollTop()+n);(n-=s.scrollTop())>0;)u.height(u.height()+n),s.scrollTop(s.scrollTop()+n)}},onAfterPrepend:function(e){if(e.prepended.length){var n=t.effectiveHeight(e.prepended),r=a.height()-n;if(r>=0)a.height(r);else{var i=s.scrollTop(),o=i-r;s.synthetic={previous:i,next:o},a.height(0),s.scrollTop(o)}}},resetTopPadding:function(){a.height(0),a.cache.clear()},resetBottomPadding:function(){u.height(0),u.cache.clear()},removeCacheItem:function(e,t){a.cache.remove(e,t),u.cache.remove(e,t)},removeItem:function(e){return this.removeCacheItem(e),t.remove(e)}}),s}function E(e,t){for(var n=0;n=0;n--)this.publicContext[t[n]]=this[t[n]].bind(this);for(var r=["isLoading","topVisible","topVisibleElement","topVisibleScope","bottomVisible","bottomVisibleElement","bottomVisibleScope"],i=function(t){var n=void 0,i=e.$attr[r[t]];Object.defineProperty(e,r[t],{get:function(){return n},set:function(o){n=o,e.publicContext[r[t]]=o,i&&e.$parse(i).assign(e.startScope,o)}})},o=r.length-1;o>=0;o--)i(o);for(var a=["bufferFirst","bufferLast","bufferLength"],u=function(t){Object.defineProperty(e.publicContext,a[t],{get:function(){return e[a[t]]}})},s=a.length-1;s>=0;s--)u(s);Object.defineProperty(this.publicContext,"disabled",{get:function(){return e.disabled},set:function(t){return(e.disabled=t)?null:e.doAdjust()}})}},{key:"loading",value:function(e){this.isLoading=e}},{key:"isBOF",value:function(){return this.buffer.bof}},{key:"isEOF",value:function(){return this.buffer.eof}},{key:"isEmpty",value:function(){return!this.buffer.length}},{key:"append",value:function(e){this.buffer.append(e),this.doAdjust(),this.viewport.clipTop(),this.viewport.clipBottom()}},{key:"prepend",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.buffer.prepend(e,t.immutableTop),this.doAdjust(),this.viewport.clipTop(),this.viewport.clipBottom()}},{key:"applyUpdates",value:function(e,t,n){"function"==typeof e?this.applyUpdatesFunc(e,t):this.applyUpdatesIndex(e,t,n),this.doAdjust()}},{key:"applyUpdatesFunc",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.buffer.slice(0).forEach((function(r){t.applyUpdate(r,e(r.item,r.scope,r.element),n)}))}},{key:"applyUpdatesIndex",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(e%1!=0)throw new Error("applyUpdates - "+e+" is not a valid index (should be an integer)");var r=e-this.buffer.first;r>=0&&r=this.buffer.getAbsMinIndex()&&e<=this.buffer.getAbsMaxIndex()&&angular.isArray(t)&&!t.length&&(this.viewport.removeCacheItem(e,!n.immutableTop&&e===this.buffer.minIndex),n.immutableTop||e!==this.buffer.getAbsMinIndex()?this.buffer.decrementMaxIndex():this.buffer.incrementMinIndex())}},{key:"applyUpdate",value:function(e,t){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(angular.isArray(t)){var i=this.buffer.indexOf(e);t.reverse().some((function(t){return t===e.item}))||(e.op=d,r.immutableTop||t.length||(0===i&&this.buffer.bof||0!==i&&this.buffer[i-1].shiftTop)&&(e.shiftTop=!0)),t.forEach((function(t){t===e.item?i--:n.buffer.insert(i+1,t,!r.immutableTop&&-1===i)}))}}},{key:"calculateProperties",value:function(){for(var e=null,t=0,n=!1,r=!1,i=this.buffer.length,o=0;othis.viewport.topVisiblePos()&&(n=!0,this.topVisible=a.item,this.topVisibleElement=a.element,this.topVisibleScope=a.scope),!r&&(l>=this.viewport.bottomVisiblePos()||o===i-1&&this.isEOF())&&(r=!0,this.bottomVisible=a.item,this.bottomVisibleElement=a.element,this.bottomVisibleScope=a.scope),t+=s}if(e=u,n&&r)break}}},{key:"bufferLength",get:function(){return this.buffer.getItems().length}},{key:"bufferFirst",get:function(){return this.buffer.getFirstItem()}},{key:"bufferLast",get:function(){return this.buffer.getLastItem()}}])&&E(t.prototype,n),r&&E(t,r),e}();angular.module("ui.scroll",[]).constant("JQLiteExtras",o).run(["JQLiteExtras",function(e){var t=angular.element;!(window.jQuery&&t.fn&&t.fn.jquery)&&(new e).registerFor(t),l.addCSSRules()}]).directive("uiScrollViewport",(function(){return{restrict:"A",controller:["$scope","$element",function(e,t){var n=this;return this.container=t,this.viewport=t,this.scope=e,angular.forEach(t.children(),(function(e){"tbody"===e.tagName.toLowerCase()&&(n.viewport=angular.element(e))})),this}]}})).directive("uiScroll",["$log","$injector","$rootScope","$timeout","$interval","$q","$parse",function(e,t,n,r,i,o,a){return{require:["?^uiScrollViewport"],restrict:"A",transclude:"element",priority:1e3,terminal:!0,link:function(e,u,s,g,v){var b=s.uiScroll.match(/^\s*(\w+)\s+in\s+([(\w|\$)\.]+)\s*$/);if(!b)throw new Error("Expected uiScroll in form of '_item_ in _datasource_' but got '"+s.uiScroll+"'");function x(e,t,n){return n||(e=null===e?t:Math.floor(e)),isNaN(e)?t:e}function y(t,n,r){return x(a(t)(e),n,r)}var I=null,E=b[1],$=b[2],P=g[0],k=Math.max(3,y(s.bufferSize,10)),S=Math.max(.3,y(s.padding,.5,!0)),A=(H=s.handleInertia,F=!0,N=a(H)(e),"boolean"==typeof N?N:F),O=y(s.startIndex,1),j=0,L=[],U=new l(t,o),M=new m(U,k,O),V=new w(U,M,u,P,n,S),C=new T(e,a,s,V,M,ee,(function(){Q(),V.resetTopPadding(),V.resetBottomPadding(),arguments.length&&(O=x(arguments[0],1,!1));M.reset(O),D(I,"minIndex"),D(I,"maxIndex"),ee()}));var H,F,N;P&&(P.adapter=C);var _=function(){return"[object Object]"===Object.prototype.toString.call(I)&&"function"==typeof I.get};if(!(I=a($)(e),_()||(I=t.get($),_())))throw new Error($+" is not a valid datasource");var B=[];function D(e,t){var n;angular.isNumber(e[t])&&(n=e[t],angular.isNumber(n)&&(B=B.filter((function(e){return e.id!==t}))).push({id:t,run:function(){return e[t]=n}}))}function R(e,t,n){var r,i=Object.getOwnPropertyDescriptor(e,t);i&&(i.set||i.get)||(D(e,t),Object.defineProperty(e,t,{set:function(i){if(r=i,!L.length||M.length){M[n]=i;var o=V.topDataPos();V.adjustPaddings(),"minIndex"===t&&V.onAfterMinIndexSet(o)}else D(e,t)},get:function(){return r}}))}R(I,"minIndex","minIndexUser"),R(I,"maxIndex","maxIndexUser");var W=2!==I.get.length?function(e){return I.get(M.next,k,e)}:function(e){I.get({index:M.next,append:M.length?M[M.length-1].item:void 0,count:k},e)},q=2!==I.get.length?function(e){return I.get(M.first-k,k,e)}:function(e){I.get({index:M.first-k,prepend:M.length?M[0].item:void 0,count:k},e)};function z(t){return t&&t!==j||e.$$destroyed}function Q(){V.off("resize",re),V.off("scroll",re)}function X(e){return e.element.height()&&e.element[0].offsetParent}function Y(e,t){J(e,t,V.insertElement),X(e)||(e.unregisterVisibilityWatcher=e.scope.$watch((function(){return function(e){X(e)&&(M.forEach((function(e){"function"==typeof e.unregisterVisibilityWatcher&&(e.unregisterVisibilityWatcher(),delete e.unregisterVisibilityWatcher)})),L.length||r((function(){return ee()})))}(e)}))),U.hideElement(e)}function J(e,t,n){var r=null,i=t>0?M[t-1].element:void 0;if(v((function(t,o){r=n(t,i),e.element=t,e.scope=o,o[E]=e.item})),C.transform){var o=e.scope.uiScrollTdInitializer;o&&o.linking?C.transform(e.scope,e.element):e.scope.uiScrollTdInitializer={onLink:function(){return C.transform(e.scope,e.element)},scope:e.scope}}return r}function G(e,t){t.animated.length?o.all(t.animated).then((function(){V.adjustPaddings(),ee(e)})):V.adjustPaddings()}function K(e,t){V.shouldLoadBottom()?(!t||M.effectiveHeight(t.inserted)>0)&&1===L.push(!0)&&(C.loading(!0),ne(e)):V.shouldLoadTop()&&(!t||M.effectiveHeight(t.prepended)>0||L[0])&&1===L.push(!1)&&(C.loading(!0),ne(e))}function Z(){var t,r,i,o,a=(t=[],r=[],i=[],o=[],M.forEach((function(e,n){switch(e.op){case c:r.unshift(e);break;case f:Y(e,n),e.op=p,o.push(e);break;case h:t=t.concat(J(e,n,V.insertElementAnimated)),e.op=p,o.push(e);break;case d:i.push(e)}})),i.forEach((function(e){return t=t.concat(V.removeItem(e))})),r.length&&r.forEach((function(e){Y(e),e.op=p})),M.forEach((function(e,t){return e.scope.$index=M.first+t})),{prepended:r,removed:i,inserted:o,animated:t});return!e.$$phase&&!n.$$phase&&e.$digest(),a.inserted.forEach((function(e){return U.showElement(e)})),a.prepended.forEach((function(e){return U.showElement(e)})),a}function ee(e){e||(L=[],e=++j);var t=Z();z(e)||(G(e,t),K(e),L.length||C.calculateProperties())}function te(e){var t=Z();V.onAfterPrepend(t),z(e)||(G(e,t),B.forEach((function(e){return e.run()})),B=[],K(e,t),L.shift(),L.length?ne(e):(C.loading(!1),V.on("resize",re),V.on("scroll",re),C.calculateProperties()))}function ne(e){L[0]?M.length&&!V.shouldLoadBottom()?te(e):W((function(t){z(e)||(t.length0&&(V.clipTop(),M.append(t)),te(e))})):M.length&&!V.shouldLoadTop()?te(e):q((function(t){z(e)||(t.length0&&(M.length&&V.clipBottom(),M.prepend(t)),te(e))}))}function re(){A&&function(){if(V.synthetic){var e=V.synthetic.previous,t=V.synthetic.next;if(V.scrollTop()!==t)return requestAnimationFrame((function(){var n=V.scrollTop(),r=e-n;r>0?V.scrollTop(t-r):V.scrollTop(t),V.synthetic=null})),!0;V.synthetic=null}}()||n.$$phase||C.isLoading||C.disabled||(K(j),L.length?Q():(C.calculateProperties(),!e.$$phase&&e.$digest()))}function ie(e){if(!C.disabled){var t=V[0].scrollTop,n=V[0].scrollHeight-V[0].clientHeight;(0===t&&!M.bof||t===n&&!M.eof)&&e.preventDefault()}}v((function(e,t){V.createPaddingElements(e[0]),t.$destroy(),e.remove()})),e.$on("$destroy",(function(){Q(),V.off("mousewheel",ie)})),V.on("mousewheel",ie),function(){var e=0;if(V.applyContainerStyle())ee();else var t=i((function(){if(e++,V.applyContainerStyle()&&(i.cancel(t),ee()),50*e>=500)throw i.cancel(t),Error("ui-scroll directive requires a viewport with non-zero height in ".concat(500,"ms"))}),50)}()}}}])}]);
+(()=>{"use strict";function e(t){return e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e(t)}function t(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,i,o,a,u=[],l=!0,s=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(u.push(r.value),u.length!==t);l=!0);}catch(e){s=!0,i=e}finally{try{if(!l&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(s)throw i}}return u}}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return n(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0?{base:l.base-l.padding-l.border,outer:l.base,outerfull:l.base+l.margin}[a]:(((u=i(e)[r])<0||null===u)&&(u=e.style[r]||0),{base:(u=parseFloat(u)||0)-l.padding-l.border,outer:u,outerfull:u+l.padding+l.border+l.margin}[a])}return r=angular.element.prototype.css,e.prototype.css=function(e,t){var n=this[0];if(n&&3!==n.nodeType&&8!==n.nodeType&&n.style)return r.call(this,e,t)},o=function(e){return e&&e.document&&e.location&&e.alert&&e.setInterval},window.getComputedStyle?(i=function(e){return window.getComputedStyle(e,null)},n=function(e,t){return parseFloat(t)}):(i=function(e){return e.currentStyle},n=function(e,t){var n,r,i,o,a;return new RegExp("^("+/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source+")(?!px)[a-z%]+$","i").test(t)?(n=(a=e.style).left,o=(i=e.runtimeStyle)&&i.left,i&&(i.left=a.left),a.left=t,r=a.pixelLeft,a.left=n,o&&(i.left=o),r):parseFloat(t)}),angular.forEach({before:function(e){var t,n,r,i,o,a;if(n=this[0],(t=(o=this.parent()).contents())[0]===n)return o.prepend(e);for(r=i=1,a=t.length-1;1<=a?i<=a:i>=a;r=1<=a?++i:--i)if(t[r]===n)return void angular.element(t[r-1]).after(e);throw new Error("invalid DOM structure "+n.outerHTML)},height:function(e){return void 0!==e?(angular.isNumber(e)&&(e+="px"),r.call(this,"height",e)):u(this[0],"height","base")},outerHeight:function(e){return u(this[0],"height",e?"outerfull":"outer")},outerWidth:function(e){return u(this[0],"width",e?"outerfull":"outer")},offset:function(e){var t,n,r={top:0,left:0},i=this[0],o=i&&i.ownerDocument;if(arguments.length){if(void 0===e)return this;throw new Error("offset setter method is not implemented")}if(o)return t=o.documentElement,null!=i.getBoundingClientRect&&(r=i.getBoundingClientRect()),n=o.defaultView||o.parentWindow,{top:r.top+(n.pageYOffset||t.scrollTop)-(t.clientTop||0),left:r.left+(n.pageXOffset||t.scrollLeft)-(t.clientLeft||0)}},scrollTop:function(e){return a(this,"top",e)},scrollLeft:function(e){return a(this,"left",e)}},(function(t,n){if(!e.prototype[n])return e.prototype[n]=t}))}}],i&&r(n.prototype,i),o&&r(n,o),Object.defineProperty(n,"prototype",{writable:!1}),e}();function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}function a(e,t){for(var n=0;nr.minIndexUser)return void r.minIndexUser++;r.minIndex===r.minIndexUser&&r.minIndexUser++}r.minIndex++},decrementMaxIndex:function(){null!==r.maxIndexUser&&r.maxIndex<=r.maxIndexUser&&r.maxIndexUser--,r.maxIndex--},getAbsMinIndex:function(){return null!==r.minIndexUser?Math.min(r.minIndexUser,r.minIndex):r.minIndex},getAbsMaxIndex:function(){return null!==r.maxIndexUser?Math.max(r.maxIndexUser,r.maxIndex):r.maxIndex},effectiveHeight:function(e){if(!e.length)return 0;var t=Number.MAX_VALUE,n=Number.NEGATIVE_INFINITY;return e.forEach((function(e){e.element[0].offsetParent&&(t=Math.min(t,e.element.offset().top),n=Math.max(n,e.element.offset().top+e.element.outerHeight(!0)))})),Math.max(0,n-t)},getItems:function(){return r.filter((function(e){return e.op===s.NONE}))},getFirstItem:function(){var e=r.getItems();return e.length?e[0].item:null},getLastItem:function(){var e=r.getItems();return e.length?e[e.length-1].item:null}}),r.reset(n),r}function c(e){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c(e)}function h(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function p(e,t){for(var n=0;n=0;t--)if(this[t].index===e.scope.$index)return void(this[t].height=e.element.outerHeight());this.push({index:e.scope.$index,height:e.element.outerHeight()}),this.sort((function(e,t){return e.indext.index?1:0}))}},{key:"remove",value:function(e,t){for(var n=e%1==0?e:e.scope.$index,r=e%1==0?t:e.shiftTop,i=this.length-1;i>=0;i--)if(this[i].index===n){this.splice(i,1);break}if(!r)for(var o=this.length-1;o>=0;o--)this[o].index>n&&this[o].index--}},{key:"clear",value:function(){this.length=0}}]),e}();function g(){var e=[];return e.push.apply(e,arguments),Object.setPrototypeOf(e,g.prototype),e}g.prototype=Object.create(Array.prototype),Object.getOwnPropertyNames(m.prototype).forEach((function(e){return g.prototype[e]=m.prototype[e]}));const b=function(){function e(t){h(this,e),this.element=function(e){if(e.nodeType!==Node.ELEMENT_NODE)throw new Error("ui-scroll directive requires an Element node for templating the view");var t;switch(e.tagName.toLowerCase()){case"dl":throw new Error("ui-scroll directive does not support <".concat(e.tagName,"> as a repeating tag: ").concat(e.outerHTML));case"tr":t=angular.element("").find("tr");break;case"li":t=angular.element("");break;default:t=angular.element("")}return t}(t),this.cache=new g}return d(e,[{key:"height",value:function(){return this.element.height.apply(this.element,arguments)}}]),e}();function v(e,t,n,r,i,o){var a=null,u=null,l=r&&r.viewport?r.viewport:angular.element(window),s=r&&r.container?r.container:void 0,f=r&&r.scope?r.scope:i;function c(){return l.outerHeight()*o}return l.css({"overflow-anchor":"none","overflow-y":"auto",display:"block"}),angular.extend(l,{getScope:function(){return f},createPaddingElements:function(e){a=new b(e),u=new b(e),n.before(a.element),n.after(u.element),a.height(0),u.height(0)},applyContainerStyle:function(){return!s||(s!==l&&l.css("height",window.getComputedStyle(s[0]).height),l.height()>0)},bottomDataPos:function(){var e=l[0].scrollHeight;return(e=null!=e?e:l[0].document.documentElement.scrollHeight)-u.height()},topDataPos:function(){return a.height()},bottomVisiblePos:function(){return l.scrollTop()+l.outerHeight()},topVisiblePos:function(){return l.scrollTop()},insertElement:function(t,n){return e.insertElement(t,n||a.element)},insertElementAnimated:function(t,n){return e.insertElementAnimated(t,n||a.element)},shouldLoadBottom:function(){return!t.eof&&l.bottomDataPos()=0&&!(n+(r=t[o].element.outerHeight(!0))>i);o--)u.cache.add(t[o]),n+=r,e++;e>0&&(t.eof=!1,t.remove(t.length-e,t.length),t.next-=e,l.adjustPaddings())},shouldLoadTop:function(){return!t.bof&&l.topDataPos()>l.topVisiblePos()-c()},clipTop:function(){for(var e=0,n=0,r=0,i=l.topVisiblePos()-l.topDataPos()-c(),o=0;oi);o++)a.cache.add(t[o]),n+=r,e++;e>0&&(a.height(a.height()+n),t.bof=!1,t.remove(0,e),t.first+=e)},adjustPaddings:function(){if(t.length){var e=t.reduce((function(e,t){return e+t.element.outerHeight(!0)}),0),n=0,r=0;a.cache.forEach((function(e){e.index=t.next&&(i+=e.height,o++)}));var l=(e+n+i)/(r+o+t.length),s=null!==t.minIndexUser&&t.minIndex>t.minIndexUser,f=null!==t.maxIndexUser&&t.maxIndext.minIndexUser){var n=a.height()-e;for(l.scrollTop(l.scrollTop()+n);(n-=l.scrollTop())>0;)u.height(u.height()+n),l.scrollTop(l.scrollTop()+n)}},onAfterPrepend:function(e){if(e.prepended.length){var n=t.effectiveHeight(e.prepended),r=a.height()-n;if(r>=0)a.height(r);else{var i=l.scrollTop(),o=i-r;l.synthetic={previous:i,next:o},a.height(0),l.scrollTop(o)}}},resetTopPadding:function(){a.height(0),a.cache.clear()},resetBottomPadding:function(){u.height(0),u.cache.clear()},removeCacheItem:function(e,t){a.cache.remove(e,t),u.cache.remove(e,t)},removeItem:function(e){return this.removeCacheItem(e),t.remove(e)}}),l}function y(e){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},y(e)}function x(e,t){for(var n=0;n=0;n--)this.publicContext[t[n]]=this[t[n]].bind(this);for(var r=["isLoading","topVisible","topVisibleElement","topVisibleScope","bottomVisible","bottomVisibleElement","bottomVisibleScope"],i=function(t){var n,i=e.$attr[r[t]];Object.defineProperty(e,r[t],{get:function(){return n},set:function(o){n=o,e.publicContext[r[t]]=o,i&&e.$parse(i).assign(e.startScope,o)}})},o=r.length-1;o>=0;o--)i(o);for(var a=["bufferFirst","bufferLast","bufferLength"],u=function(t){Object.defineProperty(e.publicContext,a[t],{get:function(){return e[a[t]]}})},l=a.length-1;l>=0;l--)u(l);Object.defineProperty(this.publicContext,"disabled",{get:function(){return e.disabled},set:function(t){return(e.disabled=t)?null:e.doAdjust()}})}},{key:"loading",value:function(e){this.isLoading=e}},{key:"isBOF",value:function(){return this.buffer.bof}},{key:"isEOF",value:function(){return this.buffer.eof}},{key:"isEmpty",value:function(){return!this.buffer.length}},{key:"bufferLength",get:function(){return this.buffer.getItems().length}},{key:"bufferFirst",get:function(){return this.buffer.getFirstItem()}},{key:"bufferLast",get:function(){return this.buffer.getLastItem()}},{key:"append",value:function(e){this.buffer.append(e),this.doAdjust(),this.viewport.clipTop(),this.viewport.clipBottom()}},{key:"prepend",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.buffer.prepend(e,t.immutableTop),this.doAdjust(),this.viewport.clipTop(),this.viewport.clipBottom()}},{key:"applyUpdates",value:function(e,t,n){"function"==typeof e?this.applyUpdatesFunc(e,t):this.applyUpdatesIndex(e,t,n),this.doAdjust()}},{key:"applyUpdatesFunc",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.buffer.slice(0).forEach((function(r){t.applyUpdate(r,e(r.item,r.scope,r.element),n)}))}},{key:"applyUpdatesIndex",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(e%1!=0)throw new Error("applyUpdates - "+e+" is not a valid index (should be an integer)");var r=e-this.buffer.first;r>=0&&r=this.buffer.getAbsMinIndex()&&e<=this.buffer.getAbsMaxIndex()&&angular.isArray(t)&&!t.length&&(this.viewport.removeCacheItem(e,!n.immutableTop&&e===this.buffer.minIndex),n.immutableTop||e!==this.buffer.getAbsMinIndex()?this.buffer.decrementMaxIndex():this.buffer.incrementMinIndex())}},{key:"applyUpdate",value:function(e,t){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(angular.isArray(t)){var i=this.buffer.indexOf(e);t.reverse().some((function(t){return t===e.item}))||(e.op=s.REMOVE,r.immutableTop||t.length||(0===i&&this.buffer.bof||0!==i&&this.buffer[i-1].shiftTop)&&(e.shiftTop=!0)),t.forEach((function(t){t===e.item?i--:n.buffer.insert(i+1,t,!r.immutableTop&&-1===i)}))}}},{key:"calculateProperties",value:function(){for(var e=null,t=0,n=!1,r=!1,i=this.buffer.length,o=0;othis.viewport.topVisiblePos()&&(n=!0,this.topVisible=a.item,this.topVisibleElement=a.element,this.topVisibleScope=a.scope),!r&&(s>=this.viewport.bottomVisiblePos()||o===i-1&&this.isEOF())&&(r=!0,this.bottomVisible=a.item,this.bottomVisibleElement=a.element,this.bottomVisibleScope=a.scope),t+=l}if(e=u,n&&r)break}}}],n&&x(t.prototype,n),r&&x(t,r),Object.defineProperty(t,"prototype",{writable:!1}),e}();angular.module("ui.scroll",[]).constant("JQLiteExtras",i).run(["JQLiteExtras",function(e){var t=angular.element;!(window.jQuery&&t.fn&&t.fn.jquery)&&(new e).registerFor(t),l.addCSSRules()}]).directive("uiScrollViewport",(function(){return{restrict:"A",controller:["$scope","$element",function(e,t){var n=this;return this.container=t,this.viewport=t,this.scope=e,angular.forEach(t.children(),(function(e){"tbody"===e.tagName.toLowerCase()&&(n.viewport=angular.element(e))})),this}]}})).directive("uiScroll",["$log","$injector","$rootScope","$timeout","$interval","$q","$parse",function(e,t,n,r,i,o,a){return{require:["?^uiScrollViewport"],restrict:"A",transclude:"element",priority:1e3,terminal:!0,link:function(e,u,c,h,p){var d=c.uiScroll.match(/^\s*(\w+)\s+in\s+([(\w|\$)\.]+)\s*$/);if(!d)throw new Error("Expected uiScroll in form of '_item_ in _datasource_' but got '"+c.uiScroll+"'");function m(e,t,n){return n||(e=null===e?t:Math.floor(e)),isNaN(e)?t:e}function g(t,n,r){return m(a(t)(e),n,r)}var b=null,y=d[1],x=d[2],w=h[0],I=Math.max(3,g(c.bufferSize,10)),P=Math.max(.3,g(c.padding,.5,!0)),S=(U=c.handleInertia,L=!0,V=a(U)(e),"boolean"==typeof V?V:L),T=g(c.startIndex,1),$=0,A=[],j=new l(t,o),O=new f(j,I,T),k=new v(j,O,u,w,n,P),N=new E(e,a,c,k,O,J,(function(){W(),k.resetTopPadding(),k.resetBottomPadding(),arguments.length&&(T=m(arguments[0],1,!1));O.reset(T),H(b,"minIndex"),H(b,"maxIndex"),J()}));var U,L,V;w&&(w.adapter=N);var M=function(){return"[object Object]"===Object.prototype.toString.call(b)&&"function"==typeof b.get};if(!(b=a(x)(e),M()||(b=t.get(x),M())))throw new Error(x+" is not a valid datasource");var C=[];function H(e,t){var n;angular.isNumber(e[t])&&(n=e[t],angular.isNumber(n)&&(C=C.filter((function(e){return e.id!==t}))).push({id:t,run:function(){return e[t]=n}}))}function D(e,t,n){var r,i=Object.getOwnPropertyDescriptor(e,t);i&&(i.set||i.get)||(H(e,t),Object.defineProperty(e,t,{set:function(i){if(r=i,!A.length||O.length){O[n]=i;var o=k.topDataPos();k.adjustPaddings(),"minIndex"===t&&k.onAfterMinIndexSet(o)}else H(e,t)},get:function(){return r}}))}D(b,"minIndex","minIndexUser"),D(b,"maxIndex","maxIndexUser");var R=2!==b.get.length?function(e){return b.get(O.next,I,e)}:function(e){b.get({index:O.next,append:O.length?O[O.length-1].item:void 0,count:I},e)},F=2!==b.get.length?function(e){return b.get(O.first-I,I,e)}:function(e){b.get({index:O.first-I,prepend:O.length?O[0].item:void 0,count:I},e)};function B(t){return t&&t!==$||e.$$destroyed}function W(){k.off("resize",Z),k.off("scroll",Z)}function _(e){return e.element.height()&&e.element[0].offsetParent}function q(e,t){z(e,t,k.insertElement),_(e)||(e.unregisterVisibilityWatcher=e.scope.$watch((function(){return function(e){_(e)&&(O.forEach((function(e){"function"==typeof e.unregisterVisibilityWatcher&&(e.unregisterVisibilityWatcher(),delete e.unregisterVisibilityWatcher)})),A.length||r((function(){return J()})))}(e)}))),j.hideElement(e)}function z(e,t,n){var r=null,i=t>0?O[t-1].element:void 0;if(p((function(t,o){r=n(t,i),e.element=t,e.scope=o,o[y]=e.item})),N.transform){var o=e.scope.uiScrollTdInitializer;o&&o.linking?N.transform(e.scope,e.element):e.scope.uiScrollTdInitializer={onLink:function(){return N.transform(e.scope,e.element)},scope:e.scope}}return r}function Q(e,t){t.animated.length?o.all(t.animated).then((function(){k.adjustPaddings(),J(e)})):k.adjustPaddings()}function X(e,t){k.shouldLoadBottom()?(!t||O.effectiveHeight(t.inserted)>0)&&1===A.push(!0)&&(N.loading(!0),K(e)):k.shouldLoadTop()&&(!t||O.effectiveHeight(t.prepended)>0||A[0])&&1===A.push(!1)&&(N.loading(!0),K(e))}function Y(){var t,r,i,o,a=(t=[],r=[],i=[],o=[],O.forEach((function(e,n){switch(e.op){case s.PREPEND:r.unshift(e);break;case s.APPEND:q(e,n),e.op=s.NONE,o.push(e);break;case s.INSERT:t=t.concat(z(e,n,k.insertElementAnimated)),e.op=s.NONE,o.push(e);break;case s.REMOVE:i.push(e)}})),i.forEach((function(e){return t=t.concat(k.removeItem(e))})),r.length&&r.forEach((function(e){q(e),e.op=s.NONE})),O.forEach((function(e,t){return e.scope.$index=O.first+t})),{prepended:r,removed:i,inserted:o,animated:t});return!e.$$phase&&!n.$$phase&&e.$digest(),a.inserted.forEach((function(e){return j.showElement(e)})),a.prepended.forEach((function(e){return j.showElement(e)})),a}function J(e){e||(A=[],e=++$);var t=Y();B(e)||(Q(e,t),X(e),A.length||N.calculateProperties())}function G(e){var t=Y();k.onAfterPrepend(t),B(e)||(Q(e,t),C.forEach((function(e){return e.run()})),C=[],X(e,t),A.shift(),A.length?K(e):(N.loading(!1),k.on("resize",Z),k.on("scroll",Z),N.calculateProperties()))}function K(e){A[0]?O.length&&!k.shouldLoadBottom()?G(e):R((function(t){B(e)||(t.length0&&(k.clipTop(),O.append(t)),G(e))})):O.length&&!k.shouldLoadTop()?G(e):F((function(t){B(e)||(t.length0&&(O.length&&k.clipBottom(),O.prepend(t)),G(e))}))}function Z(){S&&function(){if(k.synthetic){var e=k.synthetic.previous,t=k.synthetic.next;if(k.scrollTop()!==t)return requestAnimationFrame((function(){var n=k.scrollTop(),r=e-n;r>0?k.scrollTop(t-r):k.scrollTop(t),k.synthetic=null})),!0;k.synthetic=null}}()||n.$$phase||N.isLoading||N.disabled||(X($),A.length?W():(N.calculateProperties(),!e.$$phase&&e.$digest()))}function ee(e){if(!N.disabled){var t=k[0].scrollTop,n=k[0].scrollHeight-k[0].clientHeight;(0===t&&!O.bof||t===n&&!O.eof)&&e.preventDefault()}}p((function(e,t){k.createPaddingElements(e[0]),t.$destroy(),e.remove()})),e.$on("$destroy",(function(){W(),k.off("mousewheel",ee)})),k.on("mousewheel",ee),function(){var e=0;if(k.applyContainerStyle())J();else var t=i((function(){if(e++,k.applyContainerStyle()&&(i.cancel(t),J()),50*e>=500)throw i.cancel(t),Error("ui-scroll directive requires a viewport with non-zero height in ".concat(500,"ms"))}),50)}()}}}])})();
//# sourceMappingURL=ui-scroll.min.js.map
\ No newline at end of file
diff --git a/dist/ui-scroll.min.js.map b/dist/ui-scroll.min.js.map
index 20ca892d..3ce29c55 100644
--- a/dist/ui-scroll.min.js.map
+++ b/dist/ui-scroll.min.js.map
@@ -1 +1 @@
-{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/modules/jqLiteExtras.js","webpack:///./src/modules/elementRoutines.js","webpack:///./src/modules/utils.js","webpack:///./src/modules/buffer.js","webpack:///./src/modules/padding.js","webpack:///./src/modules/viewport.js","webpack:///./src/modules/adapter.js","webpack:///./src/ui-scroll.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","JQLiteExtras","element","convertToPx","css","getStyle","isWindow","scrollTo","self","direction","elem","top","left","method","prop","preserve","isValueDefined","document","documentElement","getWidthHeight","measure","result","measurements","base","borderA","borderB","computedMarginA","computedMarginB","computedStyle","dirA","dirB","paddingA","paddingB","height","width","padding","border","margin","offsetWidth","offsetHeight","getMeasurements","outer","outerfull","style","parseFloat","angular","this","nodeType","obj","location","alert","setInterval","window","getComputedStyle","currentStyle","rs","rsLeft","RegExp","source","test","runtimeStyle","pixelLeft","forEach","before","newElem","children","j","parent","ref","contents","prepend","length","after","Error","outerHTML","isNumber","outerHeight","option","outerWidth","offset","docElem","win","box","doc","ownerDocument","arguments","undefined","getBoundingClientRect","defaultView","parentWindow","pageYOffset","scrollTop","clientTop","pageXOffset","scrollLeft","clientLeft","hideClassToken","ElementRoutines","$injector","$q","$animate","has","isAngularVersionLessThen1_3","version","major","minor","index","selector","rules","sheet","styleSheets","cssRules","err","insertRule","addRule","wrapper","addClass","removeClass","newElement","previousElement","remove","scope","$destroy","insertElement","deferred","defer","enter","resolve","promise","removeElement","leave","then","OPERATIONS","ScrollBuffer","elementRoutines","bufferSize","startIndex","buffer","Array","extend","size","reset","eof","bof","first","next","minIndex","maxIndex","minIndexUser","maxIndexUser","append","items","item","insert","Math","max","immutableTop","reverse","min","operation","shiftTop","op","splice","push","unshift","arg1","arg2","indexOf","getAbsMinIndex","incrementMinIndex","decrementMaxIndex","removeElementAnimated","getAbsMaxIndex","effectiveHeight","elements","Number","MAX_VALUE","bottom","NEGATIVE_INFINITY","offsetParent","getItems","filter","getFirstItem","list","getLastItem","CacheProto","$index","sort","a","b","argument","_shiftTop","Cache","instance","apply","setPrototypeOf","getOwnPropertyNames","methodName","Padding","template","Node","ELEMENT_NODE","tagName","toLowerCase","find","generateElement","cache","Viewport","viewportController","$rootScope","topPadding","bottomPadding","viewport","container","bufferPadding","getScope","createPaddingElements","applyContainerStyle","bottomDataPos","scrollHeight","topDataPos","bottomVisiblePos","topVisiblePos","e","sibling","insertElementAnimated","shouldLoadBottom","clipBottom","overage","overageHeight","itemHeight","emptySpaceHeight","add","adjustPaddings","shouldLoadTop","clipTop","visibleItemsHeight","reduce","summ","topPaddingHeight","topCount","bottomPaddingHeight","bottomCount","averageItemHeight","adjustTopPadding","adjustBottomPadding","topPaddingHeightAdd","bottomPaddingHeightAdd","onAfterMinIndexSet","topPaddingHeightOld","diff","onAfterPrepend","updates","prepended","paddingHeight","position","newPosition","synthetic","previous","resetTopPadding","clear","resetBottomPadding","removeCacheItem","removeItem","Adapter","$scope","$parse","$attr","doAdjust","reload","isLoading","disabled","viewportScope","startScope","$parent","publicContext","assignAdapter","adapter","generatePublicContext","adapterAttr","replace","adapterOnScope","assign","error","message","publicMethods","publicProps","attr","set","publicPropsImmediate","newItems","options","arg3","applyUpdatesFunc","applyUpdatesIndex","cb","slice","applyUpdate","_index","isArray","some","newItem","rowTop","topHeight","topDone","bottomDone","itemTop","isEOF","constant","run","elt","jQuery","fn","jquery","registerFor","addCSSRules","directive","restrict","controller","child","console","$timeout","$interval","require","transclude","priority","terminal","link","controllers","linker","match","uiScroll","parseNumber","defaultValue","isFloat","floor","isNaN","parseNumericAttr","datasource","itemName","datasourceName","handleInertia","ridActual","pending","unbindEvents","persistDatasourceIndex","isDatasourceValid","toString","onRenderHandlers","propName","handler","id","defineDatasourceIndex","propUserName","descriptor","getOwnPropertyDescriptor","fetchNext","success","count","fetchPrevious","isInvalid","rid","$$destroyed","off","resizeAndScrollHandler","isElementVisible","insertWrapperContent","insertAfter","createElement","unregisterVisibilityWatcher","$watch","visibilityWatcher","hideElement","promises","clone","transform","tdInitializer","uiScrollTdInitializer","linking","onLink","updatePaddings","animated","all","enqueueFetch","inserted","loading","fetch","processUpdates","toBePrepended","toBeRemoved","concat","removed","$$phase","$digest","w","showElement","calculateProperties","doAdjustAfterFetch","shift","on","oldPosition","requestAnimationFrame","fixInertia","wheelHandler","event","yMax","clientHeight","preventDefault","$on","tryCount","timer","cancel","initialize"],"mappings":"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","file":"ui-scroll.min.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 1);\n","/*!\r\n globals: angular, window\r\n List of used element methods available in JQuery but not in JQuery Lite\r\n element.before(elem)\r\n element.height()\r\n element.outerHeight(true)\r\n element.height(value) = only for Top/Bottom padding elements\r\n element.scrollTop()\r\n element.scrollTop(value)\r\n */\r\n\r\nexport default class JQLiteExtras {\r\n\r\n registerFor(element) {\r\n let convertToPx, css, getStyle, isWindow;\r\n // angular implementation blows up if elem is the window\r\n css = angular.element.prototype.css;\r\n\r\n element.prototype.css = function (name, value) {\r\n let self = this;\r\n let elem = self[0];\r\n if (!(!elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style)) {\r\n return css.call(self, name, value);\r\n }\r\n };\r\n\r\n // as defined in angularjs v1.0.5\r\n isWindow = (obj) => obj && obj.document && obj.location && obj.alert && obj.setInterval;\r\n\r\n function scrollTo(self, direction, value) {\r\n let elem = self[0];\r\n let [method, prop, preserve] = {\r\n top: [\r\n 'scrollTop',\r\n 'pageYOffset',\r\n 'scrollLeft'\r\n ],\r\n left: [\r\n 'scrollLeft',\r\n 'pageXOffset',\r\n 'scrollTop'\r\n ]\r\n }[direction];\r\n\r\n const isValueDefined = typeof value !== 'undefined';\r\n if (isWindow(elem)) {\r\n if (isValueDefined) {\r\n return elem.scrollTo(self[preserve].call(self), value);\r\n }\r\n return (prop in elem) ? elem[prop] : elem.document.documentElement[method];\r\n } else {\r\n if (isValueDefined) {\r\n elem[method] = value;\r\n }\r\n return elem[method];\r\n }\r\n }\r\n\r\n if (window.getComputedStyle) {\r\n getStyle = (elem) => window.getComputedStyle(elem, null);\r\n convertToPx = (elem, value) => parseFloat(value);\r\n } else {\r\n getStyle = (elem) => elem.currentStyle;\r\n convertToPx = (elem, value) => {\r\n let left, result, rs, rsLeft, style;\r\n let core_pnum = /[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/.source;\r\n let rnumnonpx = new RegExp('^(' + core_pnum + ')(?!px)[a-z%]+$', 'i');\r\n\r\n if (!rnumnonpx.test(value)) {\r\n return parseFloat(value);\r\n }\r\n\r\n // ported from JQuery\r\n style = elem.style;\r\n left = style.left;\r\n rs = elem.runtimeStyle;\r\n rsLeft = rs && rs.left;\r\n if (rs) {\r\n rs.left = style.left;\r\n }\r\n // put in the new values to get a computed style out\r\n style.left = value;\r\n result = style.pixelLeft;\r\n style.left = left;\r\n if (rsLeft) {\r\n rs.left = rsLeft;\r\n }\r\n return result;\r\n };\r\n }\r\n\r\n function getMeasurements(elem, measure) {\r\n let base, borderA, borderB, computedMarginA, computedMarginB, computedStyle, dirA, dirB, marginA, marginB, paddingA, paddingB;\r\n\r\n if (isWindow(elem)) {\r\n base = document.documentElement[{height: 'clientHeight', width: 'clientWidth'}[measure]];\r\n\r\n return {\r\n base: base,\r\n padding: 0,\r\n border: 0,\r\n margin: 0\r\n };\r\n }\r\n\r\n // Start with offset property\r\n [\r\n base,\r\n dirA,\r\n dirB\r\n ] = {\r\n width: [\r\n elem.offsetWidth,\r\n 'Left',\r\n 'Right'\r\n ],\r\n height: [\r\n elem.offsetHeight,\r\n 'Top',\r\n 'Bottom'\r\n ]\r\n }[measure];\r\n\r\n computedStyle = getStyle(elem);\r\n paddingA = convertToPx(elem, computedStyle['padding' + dirA]) || 0;\r\n paddingB = convertToPx(elem, computedStyle['padding' + dirB]) || 0;\r\n borderA = convertToPx(elem, computedStyle['border' + dirA + 'Width']) || 0;\r\n borderB = convertToPx(elem, computedStyle['border' + dirB + 'Width']) || 0;\r\n computedMarginA = computedStyle['margin' + dirA];\r\n computedMarginB = computedStyle['margin' + dirB];\r\n\r\n // I do not care for width for now, so this hack is irrelevant\r\n // if ( !supportsPercentMargin )\r\n // computedMarginA = hackPercentMargin( elem, computedStyle, computedMarginA )\r\n // computedMarginB = hackPercentMargin( elem, computedStyle, computedMarginB )\r\n marginA = convertToPx(elem, computedMarginA) || 0;\r\n marginB = convertToPx(elem, computedMarginB) || 0;\r\n\r\n return {\r\n base: base,\r\n padding: paddingA + paddingB,\r\n border: borderA + borderB,\r\n margin: marginA + marginB\r\n };\r\n }\r\n\r\n function getWidthHeight(elem, direction, measure) {\r\n let computedStyle, result;\r\n\r\n let measurements = getMeasurements(elem, direction);\r\n\r\n if (measurements.base > 0) {\r\n return {\r\n base: measurements.base - measurements.padding - measurements.border,\r\n outer: measurements.base,\r\n outerfull: measurements.base + measurements.margin\r\n }[measure];\r\n }\r\n\r\n // Fall back to computed then uncomputed css if necessary\r\n computedStyle = getStyle(elem);\r\n result = computedStyle[direction];\r\n\r\n if (result < 0 || result === null) {\r\n result = elem.style[direction] || 0;\r\n }\r\n\r\n // Normalize \"\", auto, and prepare for extra\r\n result = parseFloat(result) || 0;\r\n\r\n return {\r\n base: result - measurements.padding - measurements.border,\r\n outer: result,\r\n outerfull: result + measurements.padding + measurements.border + measurements.margin\r\n }[measure];\r\n }\r\n\r\n // define missing methods\r\n return angular.forEach({\r\n before(newElem) {\r\n var children, elem, i, j, parent, ref, self;\r\n self = this;\r\n elem = self[0];\r\n parent = self.parent();\r\n children = parent.contents();\r\n if (children[0] === elem) {\r\n return parent.prepend(newElem);\r\n } else {\r\n for (i = j = 1, ref = children.length - 1; 1 <= ref ? j <= ref : j >= ref; i = 1 <= ref ? ++j : --j) {\r\n if (children[i] === elem) {\r\n angular.element(children[i - 1]).after(newElem);\r\n return;\r\n }\r\n }\r\n throw new Error('invalid DOM structure ' + elem.outerHTML);\r\n }\r\n },\r\n height (value){\r\n var self;\r\n self = this;\r\n if (typeof value !== 'undefined') {\r\n if (angular.isNumber(value)) {\r\n value = value + 'px';\r\n }\r\n return css.call(self, 'height', value);\r\n } else {\r\n return getWidthHeight(this[0], 'height', 'base');\r\n }\r\n },\r\n outerHeight(option) {\r\n return getWidthHeight(this[0], 'height', option ? 'outerfull' : 'outer');\r\n },\r\n outerWidth(option) {\r\n return getWidthHeight(this[0], 'width', option ? 'outerfull' : 'outer');\r\n },\r\n\r\n /*\r\n The offset setter method is not implemented\r\n */\r\n offset(value) {\r\n let docElem, win;\r\n let self = this;\r\n let box = {\r\n top: 0,\r\n left: 0\r\n };\r\n let elem = self[0];\r\n let doc = elem && elem.ownerDocument;\r\n\r\n if (arguments.length) {\r\n if (value === undefined) {\r\n return self;\r\n }\r\n // TODO: implement setter\r\n throw new Error('offset setter method is not implemented');\r\n }\r\n\r\n if (!doc) {\r\n return;\r\n }\r\n\r\n docElem = doc.documentElement;\r\n\r\n // TODO: Make sure it's not a disconnected DOM node\r\n\r\n if (elem.getBoundingClientRect != null) {\r\n box = elem.getBoundingClientRect();\r\n }\r\n\r\n win = doc.defaultView || doc.parentWindow;\r\n\r\n return {\r\n top: box.top + (win.pageYOffset || docElem.scrollTop) - (docElem.clientTop || 0),\r\n left: box.left + (win.pageXOffset || docElem.scrollLeft) - (docElem.clientLeft || 0)\r\n };\r\n },\r\n scrollTop(value) {\r\n return scrollTo(this, 'top', value);\r\n },\r\n scrollLeft(value) {\r\n return scrollTo(this, 'left', value);\r\n }\r\n }, (value, key) => {\r\n if (!element.prototype[key]) {\r\n return element.prototype[key] = value;\r\n }\r\n });\r\n }\r\n\r\n}\r\n","const hideClassToken = 'ng-ui-scroll-hide';\r\n\r\nexport default class ElementRoutines {\r\n\r\n static addCSSRules() {\r\n const selector = '.' + hideClassToken;\r\n const rules = 'display: none';\r\n const sheet = document.styleSheets[0];\r\n let index;\r\n try {\r\n index = sheet.cssRules.length;\r\n } catch (err) {\r\n index = 0;\r\n }\r\n if('insertRule' in sheet) {\r\n sheet.insertRule(selector + '{' + rules + '}', index);\r\n }\r\n else if('addRule' in sheet) {\r\n sheet.addRule(selector, rules, index);\r\n }\r\n }\r\n\r\n constructor($injector, $q) {\r\n this.$animate = ($injector.has && $injector.has('$animate')) ? $injector.get('$animate') : null;\r\n this.isAngularVersionLessThen1_3 = angular.version.major === 1 && angular.version.minor < 3;\r\n this.$q = $q;\r\n }\r\n\r\n hideElement(wrapper) {\r\n wrapper.element.addClass(hideClassToken);\r\n }\r\n\r\n showElement(wrapper) {\r\n wrapper.element.removeClass(hideClassToken);\r\n }\r\n\r\n insertElement(newElement, previousElement) {\r\n previousElement.after(newElement);\r\n return [];\r\n }\r\n\r\n removeElement(wrapper) {\r\n wrapper.element.remove();\r\n wrapper.scope.$destroy();\r\n return [];\r\n }\r\n\r\n insertElementAnimated(newElement, previousElement) {\r\n if (!this.$animate) {\r\n return this.insertElement(newElement, previousElement);\r\n }\r\n\r\n if (this.isAngularVersionLessThen1_3) {\r\n const deferred = this.$q.defer();\r\n // no need for parent - previous element is never null\r\n this.$animate.enter(newElement, null, previousElement, () => deferred.resolve());\r\n\r\n return [deferred.promise];\r\n }\r\n\r\n // no need for parent - previous element is never null\r\n return [this.$animate.enter(newElement, null, previousElement)];\r\n }\r\n\r\n removeElementAnimated(wrapper) {\r\n if (!this.$animate) {\r\n return this.removeElement(wrapper);\r\n }\r\n\r\n if (this.isAngularVersionLessThen1_3) {\r\n const deferred = this.$q.defer();\r\n this.$animate.leave(wrapper.element, () => {\r\n wrapper.scope.$destroy();\r\n return deferred.resolve();\r\n });\r\n\r\n return [deferred.promise];\r\n }\r\n\r\n return [(this.$animate.leave(wrapper.element)).then(() => wrapper.scope.$destroy())];\r\n }\r\n}","export const OPERATIONS = {\r\n PREPEND: 'prepend',\r\n APPEND: 'append',\r\n INSERT: 'insert',\r\n REMOVE: 'remove',\r\n NONE: 'none'\r\n};\r\n","import { OPERATIONS } from './utils';\r\n\r\nexport default function ScrollBuffer(elementRoutines, bufferSize, startIndex) {\r\n const buffer = Object.create(Array.prototype);\r\n\r\n angular.extend(buffer, {\r\n size: bufferSize,\r\n\r\n reset(startIndex) {\r\n buffer.remove(0, buffer.length);\r\n buffer.eof = false;\r\n buffer.bof = false;\r\n buffer.first = startIndex;\r\n buffer.next = startIndex;\r\n buffer.minIndex = startIndex;\r\n buffer.maxIndex = startIndex;\r\n buffer.minIndexUser = null;\r\n buffer.maxIndexUser = null;\r\n },\r\n\r\n append(items) {\r\n items.forEach((item) => {\r\n ++buffer.next;\r\n buffer.insert(OPERATIONS.APPEND, item);\r\n });\r\n buffer.maxIndex = buffer.eof ? buffer.next - 1 : Math.max(buffer.next - 1, buffer.maxIndex);\r\n },\r\n\r\n prepend(items, immutableTop) {\r\n items.reverse().forEach((item) => {\r\n if (immutableTop) {\r\n ++buffer.next;\r\n }\r\n else {\r\n --buffer.first;\r\n }\r\n buffer.insert(OPERATIONS.PREPEND, item);\r\n });\r\n buffer.minIndex = buffer.bof ? buffer.minIndex = buffer.first : Math.min(buffer.first, buffer.minIndex);\r\n },\r\n\r\n /**\r\n * inserts wrapped element in the buffer\r\n * the first argument is either operation keyword (see below) or a number for operation 'insert'\r\n * for insert the number is the index for the buffer element the new one have to be inserted after\r\n * operations: 'append', 'prepend', 'insert', 'remove', 'none'\r\n */\r\n insert(operation, item, shiftTop) {\r\n const wrapper = {\r\n item: item\r\n };\r\n\r\n if (operation % 1 === 0) { // it is an insert\r\n wrapper.op = OPERATIONS.INSERT;\r\n buffer.splice(operation, 0, wrapper);\r\n if (shiftTop) {\r\n buffer.first--;\r\n }\r\n else {\r\n buffer.next++;\r\n }\r\n } else {\r\n wrapper.op = operation;\r\n switch (operation) {\r\n case OPERATIONS.APPEND:\r\n buffer.push(wrapper);\r\n break;\r\n case OPERATIONS.PREPEND:\r\n buffer.unshift(wrapper);\r\n break;\r\n }\r\n }\r\n },\r\n\r\n // removes elements from buffer\r\n remove(arg1, arg2) {\r\n if (angular.isNumber(arg1)) {\r\n // removes items from arg1 (including) through arg2 (excluding)\r\n for (let i = arg1; i < arg2; i++) {\r\n elementRoutines.removeElement(buffer[i]);\r\n }\r\n return buffer.splice(arg1, arg2 - arg1);\r\n }\r\n // removes single item (wrapper) from the buffer\r\n buffer.splice(buffer.indexOf(arg1), 1);\r\n if (arg1.shiftTop && buffer.first === this.getAbsMinIndex()) {\r\n this.incrementMinIndex();\r\n }\r\n else {\r\n this.decrementMaxIndex();\r\n }\r\n if (arg1.shiftTop) {\r\n buffer.first++;\r\n }\r\n else {\r\n buffer.next--;\r\n }\r\n if (!buffer.length) {\r\n buffer.minIndex = Math.min(buffer.maxIndex, buffer.minIndex);\r\n }\r\n\r\n return elementRoutines.removeElementAnimated(arg1);\r\n },\r\n\r\n incrementMinIndex() {\r\n if (buffer.minIndexUser !== null) {\r\n if (buffer.minIndex > buffer.minIndexUser) {\r\n buffer.minIndexUser++;\r\n return;\r\n }\r\n if (buffer.minIndex === buffer.minIndexUser) {\r\n buffer.minIndexUser++;\r\n }\r\n }\r\n buffer.minIndex++;\r\n },\r\n\r\n decrementMaxIndex() {\r\n if (buffer.maxIndexUser !== null && buffer.maxIndex <= buffer.maxIndexUser) {\r\n buffer.maxIndexUser--;\r\n }\r\n buffer.maxIndex--;\r\n },\r\n\r\n getAbsMinIndex() {\r\n if (buffer.minIndexUser !== null) {\r\n return Math.min(buffer.minIndexUser, buffer.minIndex);\r\n }\r\n return buffer.minIndex;\r\n },\r\n\r\n getAbsMaxIndex() {\r\n if (buffer.maxIndexUser !== null) {\r\n return Math.max(buffer.maxIndexUser, buffer.maxIndex);\r\n }\r\n return buffer.maxIndex;\r\n },\r\n\r\n effectiveHeight(elements) {\r\n if (!elements.length) {\r\n return 0;\r\n }\r\n let top = Number.MAX_VALUE;\r\n let bottom = Number.NEGATIVE_INFINITY;\r\n elements.forEach((wrapper) => {\r\n if (wrapper.element[0].offsetParent) {\r\n // element style is not display:none\r\n top = Math.min(top, wrapper.element.offset().top);\r\n bottom = Math.max(bottom, wrapper.element.offset().top + wrapper.element.outerHeight(true));\r\n }\r\n });\r\n return Math.max(0, bottom - top);\r\n },\r\n\r\n getItems() {\r\n return buffer.filter(item => item.op === OPERATIONS.NONE);\r\n },\r\n\r\n getFirstItem() {\r\n const list = buffer.getItems();\r\n if (!list.length) {\r\n return null;\r\n }\r\n return list[0].item;\r\n },\r\n\r\n getLastItem() {\r\n const list = buffer.getItems();\r\n if (!list.length) {\r\n return null;\r\n }\r\n return list[list.length - 1].item;\r\n }\r\n\r\n });\r\n\r\n buffer.reset(startIndex);\r\n\r\n return buffer;\r\n}\r\n","// Can't just extend the Array, due to Babel does not support built-in classes extending\r\n// This solution was taken from https://stackoverflow.com/questions/46897414/es6-class-extends-array-workaround-for-es5-babel-transpile\r\nclass CacheProto {\r\n add(item) {\r\n for (let i = this.length - 1; i >= 0; i--) {\r\n if (this[i].index === item.scope.$index) {\r\n this[i].height = item.element.outerHeight();\r\n return;\r\n }\r\n }\r\n this.push({\r\n index: item.scope.$index,\r\n height: item.element.outerHeight()\r\n });\r\n this.sort((a, b) => ((a.index < b.index) ? -1 : ((a.index > b.index) ? 1 : 0)));\r\n }\r\n\r\n remove(argument, _shiftTop) {\r\n const index = argument % 1 === 0 ? argument : argument.scope.$index;\r\n const shiftTop = argument % 1 === 0 ? _shiftTop : argument.shiftTop;\r\n for (let i = this.length - 1; i >= 0; i--) {\r\n if (this[i].index === index) {\r\n this.splice(i, 1);\r\n break;\r\n }\r\n }\r\n if (!shiftTop) {\r\n for (let i = this.length - 1; i >= 0; i--) {\r\n if (this[i].index > index) {\r\n this[i].index--;\r\n }\r\n }\r\n }\r\n }\r\n\r\n clear() {\r\n this.length = 0;\r\n }\r\n}\r\n\r\nfunction Cache() {\r\n const instance = [];\r\n instance.push.apply(instance, arguments);\r\n Object.setPrototypeOf(instance, Cache.prototype);\r\n return instance;\r\n}\r\nCache.prototype = Object.create(Array.prototype);\r\nObject.getOwnPropertyNames(CacheProto.prototype).forEach(methodName =>\r\n Cache.prototype[methodName] = CacheProto.prototype[methodName]\r\n);\r\n\r\nfunction generateElement(template) {\r\n if (template.nodeType !== Node.ELEMENT_NODE) {\r\n throw new Error('ui-scroll directive requires an Element node for templating the view');\r\n }\r\n let element;\r\n switch (template.tagName.toLowerCase()) {\r\n case 'dl':\r\n throw new Error(`ui-scroll directive does not support <${template.tagName}> as a repeating tag: ${template.outerHTML}`);\r\n case 'tr':\r\n let table = angular.element('');\r\n element = table.find('tr');\r\n break;\r\n case 'li':\r\n element = angular.element('');\r\n break;\r\n default:\r\n element = angular.element('');\r\n }\r\n return element;\r\n}\r\n\r\nclass Padding {\r\n constructor(template) {\r\n this.element = generateElement(template);\r\n this.cache = new Cache();\r\n }\r\n\r\n height() {\r\n return this.element.height.apply(this.element, arguments);\r\n }\r\n}\r\n\r\nexport default Padding;","import Padding from './padding';\r\n\r\nexport default function Viewport(elementRoutines, buffer, element, viewportController, $rootScope, padding) {\r\n let topPadding = null;\r\n let bottomPadding = null;\r\n const viewport = viewportController && viewportController.viewport ? viewportController.viewport : angular.element(window);\r\n const container = viewportController && viewportController.container ? viewportController.container : undefined;\r\n const scope = viewportController && viewportController.scope ? viewportController.scope : $rootScope;\r\n\r\n viewport.css({\r\n 'overflow-anchor': 'none',\r\n 'overflow-y': 'auto',\r\n 'display': 'block'\r\n });\r\n\r\n function bufferPadding() {\r\n return viewport.outerHeight() * padding; // some extra space to initiate preload\r\n }\r\n\r\n angular.extend(viewport, {\r\n getScope() {\r\n return scope;\r\n },\r\n\r\n createPaddingElements(template) {\r\n topPadding = new Padding(template);\r\n bottomPadding = new Padding(template);\r\n element.before(topPadding.element);\r\n element.after(bottomPadding.element);\r\n topPadding.height(0);\r\n bottomPadding.height(0);\r\n },\r\n\r\n applyContainerStyle() {\r\n if (!container) {\r\n return true;\r\n }\r\n if (container !== viewport) {\r\n viewport.css('height', window.getComputedStyle(container[0]).height);\r\n }\r\n return viewport.height() > 0;\r\n },\r\n\r\n bottomDataPos() {\r\n let scrollHeight = viewport[0].scrollHeight;\r\n scrollHeight = scrollHeight != null ? scrollHeight : viewport[0].document.documentElement.scrollHeight;\r\n return scrollHeight - bottomPadding.height();\r\n },\r\n\r\n topDataPos() {\r\n return topPadding.height();\r\n },\r\n\r\n bottomVisiblePos() {\r\n return viewport.scrollTop() + viewport.outerHeight();\r\n },\r\n\r\n topVisiblePos() {\r\n return viewport.scrollTop();\r\n },\r\n\r\n insertElement(e, sibling) {\r\n return elementRoutines.insertElement(e, sibling || topPadding.element);\r\n },\r\n\r\n insertElementAnimated(e, sibling) {\r\n return elementRoutines.insertElementAnimated(e, sibling || topPadding.element);\r\n },\r\n\r\n shouldLoadBottom() {\r\n return !buffer.eof && viewport.bottomDataPos() < viewport.bottomVisiblePos() + bufferPadding();\r\n },\r\n\r\n clipBottom() {\r\n // clip the invisible items off the bottom\r\n let overage = 0;\r\n let overageHeight = 0;\r\n let itemHeight = 0;\r\n let emptySpaceHeight = viewport.bottomDataPos() - viewport.bottomVisiblePos() - bufferPadding();\r\n\r\n for (let i = buffer.length - 1; i >= 0; i--) {\r\n itemHeight = buffer[i].element.outerHeight(true);\r\n if (overageHeight + itemHeight > emptySpaceHeight) {\r\n break;\r\n }\r\n bottomPadding.cache.add(buffer[i]);\r\n overageHeight += itemHeight;\r\n overage++;\r\n }\r\n\r\n if (overage > 0) {\r\n buffer.eof = false;\r\n buffer.remove(buffer.length - overage, buffer.length);\r\n buffer.next -= overage;\r\n viewport.adjustPaddings();\r\n }\r\n },\r\n\r\n shouldLoadTop() {\r\n return !buffer.bof && (viewport.topDataPos() > viewport.topVisiblePos() - bufferPadding());\r\n },\r\n\r\n clipTop() {\r\n // clip the invisible items off the top\r\n let overage = 0;\r\n let overageHeight = 0;\r\n let itemHeight = 0;\r\n let emptySpaceHeight = viewport.topVisiblePos() - viewport.topDataPos() - bufferPadding();\r\n\r\n for (let i = 0; i < buffer.length; i++) {\r\n itemHeight = buffer[i].element.outerHeight(true);\r\n if (overageHeight + itemHeight > emptySpaceHeight) {\r\n break;\r\n }\r\n topPadding.cache.add(buffer[i]);\r\n overageHeight += itemHeight;\r\n overage++;\r\n }\r\n\r\n if (overage > 0) {\r\n // we need to adjust top padding element before items are removed from top\r\n // to avoid strange behaviour of scroll bar during remove top items when we are at the very bottom\r\n topPadding.height(topPadding.height() + overageHeight);\r\n buffer.bof = false;\r\n buffer.remove(0, overage);\r\n buffer.first += overage;\r\n }\r\n },\r\n\r\n adjustPaddings() {\r\n if (!buffer.length) {\r\n return;\r\n }\r\n\r\n // precise heights calculation based on items that are in buffer or that were in buffer once\r\n const visibleItemsHeight = buffer.reduce((summ, item) => summ + item.element.outerHeight(true), 0);\r\n\r\n let topPaddingHeight = 0, topCount = 0;\r\n topPadding.cache.forEach(item => {\r\n if (item.index < buffer.first) {\r\n topPaddingHeight += item.height;\r\n topCount++;\r\n }\r\n });\r\n\r\n let bottomPaddingHeight = 0, bottomCount = 0;\r\n bottomPadding.cache.forEach(item => {\r\n if (item.index >= buffer.next) {\r\n bottomPaddingHeight += item.height;\r\n bottomCount++;\r\n }\r\n });\r\n\r\n const totalHeight = visibleItemsHeight + topPaddingHeight + bottomPaddingHeight;\r\n const averageItemHeight = totalHeight / (topCount + bottomCount + buffer.length);\r\n\r\n // average heights calculation, items that have never been reached\r\n let adjustTopPadding = buffer.minIndexUser !== null && buffer.minIndex > buffer.minIndexUser;\r\n let adjustBottomPadding = buffer.maxIndexUser !== null && buffer.maxIndex < buffer.maxIndexUser;\r\n let topPaddingHeightAdd = adjustTopPadding ? (buffer.minIndex - buffer.minIndexUser) * averageItemHeight : 0;\r\n let bottomPaddingHeightAdd = adjustBottomPadding ? (buffer.maxIndexUser - buffer.maxIndex) * averageItemHeight : 0;\r\n\r\n // paddings combine adjustment\r\n topPadding.height(topPaddingHeight + topPaddingHeightAdd);\r\n bottomPadding.height(bottomPaddingHeight + bottomPaddingHeightAdd);\r\n },\r\n\r\n onAfterMinIndexSet(topPaddingHeightOld) {\r\n // additional scrollTop adjustment in case of datasource.minIndex external set\r\n if (buffer.minIndexUser !== null && buffer.minIndex > buffer.minIndexUser) {\r\n let diff = topPadding.height() - topPaddingHeightOld;\r\n viewport.scrollTop(viewport.scrollTop() + diff);\r\n while((diff -= viewport.scrollTop()) > 0) {\r\n bottomPadding.height(bottomPadding.height() + diff);\r\n viewport.scrollTop(viewport.scrollTop() + diff);\r\n }\r\n }\r\n },\r\n\r\n onAfterPrepend(updates) {\r\n if (!updates.prepended.length) {\r\n return;\r\n }\r\n const height = buffer.effectiveHeight(updates.prepended);\r\n const paddingHeight = topPadding.height() - height;\r\n if (paddingHeight >= 0) {\r\n topPadding.height(paddingHeight);\r\n return;\r\n }\r\n const position = viewport.scrollTop();\r\n const newPosition = position - paddingHeight;\r\n viewport.synthetic = { previous: position, next: newPosition };\r\n topPadding.height(0);\r\n viewport.scrollTop(newPosition);\r\n },\r\n\r\n resetTopPadding() {\r\n topPadding.height(0);\r\n topPadding.cache.clear();\r\n },\r\n\r\n resetBottomPadding() {\r\n bottomPadding.height(0);\r\n bottomPadding.cache.clear();\r\n },\r\n\r\n removeCacheItem(item, shiftTop) {\r\n topPadding.cache.remove(item, shiftTop);\r\n bottomPadding.cache.remove(item, shiftTop);\r\n },\r\n\r\n removeItem(item) {\r\n this.removeCacheItem(item);\r\n return buffer.remove(item);\r\n }\r\n });\r\n\r\n return viewport;\r\n}\r\n","import { OPERATIONS } from './utils';\r\n\r\nclass Adapter {\r\n\r\n constructor($scope, $parse, $attr, viewport, buffer, doAdjust, reload) {\r\n this.$parse = $parse;\r\n this.$attr = $attr;\r\n this.viewport = viewport;\r\n this.buffer = buffer;\r\n\r\n this.doAdjust = doAdjust;\r\n this.reload = reload;\r\n\r\n this.isLoading = false;\r\n this.disabled = false;\r\n\r\n const viewportScope = viewport.getScope();\r\n this.startScope = viewportScope.$parent ? viewportScope : $scope;\r\n\r\n this.publicContext = {};\r\n this.assignAdapter($attr.adapter);\r\n this.generatePublicContext();\r\n }\r\n\r\n assignAdapter(adapterAttr) {\r\n if (!adapterAttr || !(adapterAttr = adapterAttr.replace(/^\\s+|\\s+$/gm, ''))) {\r\n return;\r\n }\r\n let adapterOnScope;\r\n\r\n try {\r\n this.$parse(adapterAttr).assign(this.startScope, {});\r\n adapterOnScope = this.$parse(adapterAttr)(this.startScope);\r\n }\r\n catch (error) {\r\n error.message = `Angular ui-scroll Adapter assignment exception.\\n` +\r\n `Can't parse \"${adapterAttr}\" expression.\\n` +\r\n error.message;\r\n throw error;\r\n }\r\n\r\n angular.extend(adapterOnScope, this.publicContext);\r\n this.publicContext = adapterOnScope;\r\n }\r\n\r\n generatePublicContext() {\r\n // these methods will be accessible out of ui-scroll via user defined adapter\r\n const publicMethods = ['reload', 'applyUpdates', 'append', 'prepend', 'isBOF', 'isEOF', 'isEmpty'];\r\n for (let i = publicMethods.length - 1; i >= 0; i--) {\r\n this.publicContext[publicMethods[i]] = this[publicMethods[i]].bind(this);\r\n }\r\n\r\n // these read-only props will be accessible out of ui-scroll via user defined adapter\r\n const publicProps = ['isLoading', 'topVisible', 'topVisibleElement', 'topVisibleScope', 'bottomVisible', 'bottomVisibleElement', 'bottomVisibleScope'];\r\n for (let i = publicProps.length - 1; i >= 0; i--) {\r\n let property, attr = this.$attr[publicProps[i]];\r\n Object.defineProperty(this, publicProps[i], {\r\n get: () => property,\r\n set: (value) => {\r\n property = value;\r\n this.publicContext[publicProps[i]] = value;\r\n if (attr) {\r\n this.$parse(attr).assign(this.startScope, value);\r\n }\r\n }\r\n });\r\n }\r\n\r\n // read-only immediately calculated public properties\r\n const publicPropsImmediate = ['bufferFirst', 'bufferLast', 'bufferLength'];\r\n for (let i = publicPropsImmediate.length - 1; i >= 0; i--) {\r\n Object.defineProperty(this.publicContext, publicPropsImmediate[i], {\r\n get: () => this[publicPropsImmediate[i]]\r\n });\r\n }\r\n\r\n // non-read-only public property\r\n Object.defineProperty(this.publicContext, 'disabled', {\r\n get: () => this.disabled,\r\n set: (value) => (!(this.disabled = value)) ? this.doAdjust() : null\r\n });\r\n }\r\n\r\n loading(value) {\r\n this.isLoading = value;\r\n }\r\n\r\n isBOF() {\r\n return this.buffer.bof;\r\n }\r\n\r\n isEOF() {\r\n return this.buffer.eof;\r\n }\r\n\r\n isEmpty() {\r\n return !this.buffer.length;\r\n }\r\n\r\n get bufferLength() {\r\n return this.buffer.getItems().length;\r\n }\r\n\r\n get bufferFirst() {\r\n return this.buffer.getFirstItem();\r\n }\r\n\r\n get bufferLast() {\r\n return this.buffer.getLastItem();\r\n }\r\n\r\n append(newItems) {\r\n this.buffer.append(newItems);\r\n this.doAdjust();\r\n this.viewport.clipTop();\r\n this.viewport.clipBottom();\r\n }\r\n\r\n prepend(newItems, options = {}) {\r\n this.buffer.prepend(newItems, options.immutableTop);\r\n this.doAdjust();\r\n this.viewport.clipTop();\r\n this.viewport.clipBottom();\r\n }\r\n\r\n applyUpdates(arg1, arg2, arg3) {\r\n if (typeof arg1 === 'function') {\r\n this.applyUpdatesFunc(arg1, arg2);\r\n } else {\r\n this.applyUpdatesIndex(arg1, arg2, arg3);\r\n }\r\n this.doAdjust();\r\n }\r\n\r\n applyUpdatesFunc(cb, options = {}) {\r\n this.buffer.slice(0).forEach((wrapper) => {\r\n // we need to do it on the buffer clone, because buffer content\r\n // may change as we iterate through\r\n this.applyUpdate(wrapper, cb(wrapper.item, wrapper.scope, wrapper.element), options);\r\n });\r\n }\r\n\r\n applyUpdatesIndex(index, newItems, options = {}) {\r\n if (index % 1 !== 0) {\r\n throw new Error('applyUpdates - ' + index + ' is not a valid index (should be an integer)');\r\n }\r\n const _index = index - this.buffer.first;\r\n\r\n // apply updates only within buffer\r\n if (_index >= 0 && _index < this.buffer.length) {\r\n this.applyUpdate(this.buffer[_index], newItems, options);\r\n }\r\n // out-of-buffer case: deletion may affect Paddings\r\n else if(index >= this.buffer.getAbsMinIndex() && index <= this.buffer.getAbsMaxIndex()) {\r\n if(angular.isArray(newItems) && !newItems.length) {\r\n this.viewport.removeCacheItem(index, !options.immutableTop && index === this.buffer.minIndex);\r\n if (!options.immutableTop && index === this.buffer.getAbsMinIndex()) {\r\n this.buffer.incrementMinIndex();\r\n }\r\n else {\r\n this.buffer.decrementMaxIndex();\r\n }\r\n }\r\n }\r\n }\r\n\r\n applyUpdate(wrapper, newItems, options = {}) {\r\n if (!angular.isArray(newItems)) {\r\n return;\r\n }\r\n let position = this.buffer.indexOf(wrapper);\r\n if (!newItems.reverse().some(newItem => newItem === wrapper.item)) {\r\n wrapper.op = OPERATIONS.REMOVE;\r\n // try to catch \"first\" edge case on remove\r\n if (!options.immutableTop && !newItems.length) {\r\n // this is the first item, or the previous one's part of the \"shift-top\" group\r\n if (\r\n (position === 0 && this.buffer.bof) ||\r\n (position !== 0 && this.buffer[position - 1].shiftTop)\r\n ) {\r\n wrapper.shiftTop = true;\r\n }\r\n }\r\n }\r\n newItems.forEach((newItem) => {\r\n if (newItem === wrapper.item) {\r\n position--;\r\n } else {\r\n // 3 parameter (shiftTop) is to catch \"first\" edge case on insert\r\n this.buffer.insert(position + 1, newItem, !options.immutableTop && position === -1);\r\n }\r\n });\r\n }\r\n\r\n calculateProperties() {\r\n let rowTop = null, topHeight = 0;\r\n let topDone = false, bottomDone = false;\r\n const length = this.buffer.length;\r\n\r\n for (let i = 0; i < length; i++) {\r\n const item = this.buffer[i];\r\n const itemTop = item.element.offset().top;\r\n\r\n if (rowTop !== itemTop) { // a new row condition\r\n const itemHeight = item.element.outerHeight(true);\r\n const top = this.viewport.topDataPos() + topHeight + itemHeight;\r\n\r\n if (!topDone && top > this.viewport.topVisiblePos()) {\r\n topDone = true;\r\n this['topVisible'] = item.item;\r\n this['topVisibleElement'] = item.element;\r\n this['topVisibleScope'] = item.scope;\r\n }\r\n if (!bottomDone && (top >= this.viewport.bottomVisiblePos() || (i === length - 1 && this.isEOF()))) {\r\n bottomDone = true;\r\n this['bottomVisible'] = item.item;\r\n this['bottomVisibleElement'] = item.element;\r\n this['bottomVisibleScope'] = item.scope;\r\n }\r\n topHeight += itemHeight;\r\n }\r\n rowTop = itemTop;\r\n\r\n if (topDone && bottomDone) {\r\n break;\r\n }\r\n }\r\n }\r\n\r\n}\r\n\r\nexport default Adapter;\r\n","import JQLiteExtras from './modules/jqLiteExtras';\r\nimport ElementRoutines from './modules/elementRoutines.js';\r\nimport ScrollBuffer from './modules/buffer.js';\r\nimport Viewport from './modules/viewport.js';\r\nimport Adapter from './modules/adapter.js';\r\nimport { OPERATIONS } from './modules/utils';\r\n\r\nangular.module('ui.scroll', [])\r\n\r\n .constant('JQLiteExtras', JQLiteExtras)\r\n .run(['JQLiteExtras', (JQLiteExtras) => {\r\n const elt = angular.element;\r\n !(window.jQuery && elt.fn && elt.fn.jquery) ? (new JQLiteExtras()).registerFor(elt) : null;\r\n ElementRoutines.addCSSRules();\r\n }])\r\n\r\n .directive('uiScrollViewport', function () {\r\n return {\r\n restrict: 'A',\r\n controller: [\r\n '$scope',\r\n '$element',\r\n function (scope, element) {\r\n this.container = element;\r\n this.viewport = element;\r\n this.scope = scope;\r\n\r\n angular.forEach(element.children(), child => {\r\n if (child.tagName.toLowerCase() === 'tbody') {\r\n this.viewport = angular.element(child);\r\n }\r\n });\r\n\r\n return this;\r\n }\r\n ]\r\n };\r\n })\r\n\r\n .directive('uiScroll', [\r\n '$log',\r\n '$injector',\r\n '$rootScope',\r\n '$timeout',\r\n '$interval',\r\n '$q',\r\n '$parse',\r\n function (console, $injector, $rootScope, $timeout, $interval, $q, $parse) {\r\n\r\n return {\r\n require: ['?^uiScrollViewport'],\r\n restrict: 'A',\r\n transclude: 'element',\r\n priority: 1000,\r\n terminal: true,\r\n link: link\r\n };\r\n\r\n function link($scope, element, $attr, controllers, linker) {\r\n const match = $attr.uiScroll.match(/^\\s*(\\w+)\\s+in\\s+([(\\w|\\$)\\.]+)\\s*$/);\r\n if (!match) {\r\n throw new Error('Expected uiScroll in form of \\'_item_ in _datasource_\\' but got \\'' + $attr.uiScroll + '\\'');\r\n }\r\n\r\n function parseNumber(value, defaultValue, isFloat) {\r\n if (!isFloat) {\r\n value = value === null ? defaultValue : Math.floor(value);\r\n }\r\n return isNaN(value) ? defaultValue : value;\r\n }\r\n\r\n function parseNumericAttr(value, defaultValue, isFloat) {\r\n const result = $parse(value)($scope);\r\n return parseNumber(result, defaultValue, isFloat);\r\n }\r\n\r\n function parseBooleanAttr(value, defaultValue) {\r\n const result = $parse(value)($scope);\r\n return typeof result === 'boolean' ? result : defaultValue;\r\n }\r\n\r\n const BUFFER_MIN = 3;\r\n const BUFFER_DEFAULT = 10;\r\n const PADDING_MIN = 0.3;\r\n const PADDING_DEFAULT = 0.5;\r\n const HANDLE_INERTIA_DEFAULT = true;\r\n const START_INDEX_DEFAULT = 1;\r\n const MAX_VIEWPORT_DELAY = 500;\r\n const VIEWPORT_POLLING_INTERVAL = 50;\r\n\r\n let datasource = null;\r\n const itemName = match[1];\r\n const datasourceName = match[2];\r\n const viewportController = controllers[0];\r\n const bufferSize = Math.max(BUFFER_MIN, parseNumericAttr($attr.bufferSize, BUFFER_DEFAULT));\r\n const padding = Math.max(PADDING_MIN, parseNumericAttr($attr.padding, PADDING_DEFAULT, true));\r\n const handleInertia = parseBooleanAttr($attr.handleInertia, HANDLE_INERTIA_DEFAULT);\r\n let startIndex = parseNumericAttr($attr.startIndex, START_INDEX_DEFAULT);\r\n let ridActual = 0; // current data revision id\r\n let pending = [];\r\n\r\n const elementRoutines = new ElementRoutines($injector, $q);\r\n const buffer = new ScrollBuffer(elementRoutines, bufferSize, startIndex);\r\n const viewport = new Viewport(elementRoutines, buffer, element, viewportController, $rootScope, padding);\r\n const adapter = new Adapter($scope, $parse, $attr, viewport, buffer, doAdjust, reload);\r\n\r\n if (viewportController) {\r\n viewportController.adapter = adapter;\r\n }\r\n\r\n const isDatasourceValid = () =>\r\n Object.prototype.toString.call(datasource) === '[object Object]' && typeof datasource.get === 'function';\r\n\r\n datasource = $parse(datasourceName)($scope); // try to get datasource on scope\r\n if (!isDatasourceValid()) {\r\n datasource = $injector.get(datasourceName); // try to inject datasource as service\r\n if (!isDatasourceValid()) {\r\n throw new Error(datasourceName + ' is not a valid datasource');\r\n }\r\n }\r\n\r\n let onRenderHandlers = [];\r\n function onRenderHandlersRunner() {\r\n onRenderHandlers.forEach(handler => handler.run());\r\n onRenderHandlers = [];\r\n }\r\n function persistDatasourceIndex(datasource, propName) {\r\n let getter;\r\n // need to postpone min/maxIndexUser processing if the view is empty\r\n if(angular.isNumber(datasource[propName])) {\r\n getter = datasource[propName];\r\n if(angular.isNumber(getter)) {\r\n onRenderHandlers = onRenderHandlers.filter(handler => handler.id !== propName);\r\n onRenderHandlers.push({\r\n id: propName,\r\n run: () => datasource[propName] = getter\r\n });\r\n }\r\n }\r\n }\r\n\r\n function defineDatasourceIndex(datasource, propName, propUserName) {\r\n const descriptor = Object.getOwnPropertyDescriptor(datasource, propName);\r\n if (descriptor && (descriptor.set || descriptor.get)) {\r\n return;\r\n }\r\n let getter;\r\n persistDatasourceIndex(datasource, propName);\r\n Object.defineProperty(datasource, propName, {\r\n set: (value) => {\r\n getter = value;\r\n if(pending.length && !buffer.length) {\r\n persistDatasourceIndex(datasource, propName);\r\n return;\r\n }\r\n buffer[propUserName] = value;\r\n const topPaddingHeightOld = viewport.topDataPos();\r\n viewport.adjustPaddings();\r\n if (propName === 'minIndex') {\r\n viewport.onAfterMinIndexSet(topPaddingHeightOld);\r\n }\r\n },\r\n get: () => getter\r\n });\r\n }\r\n\r\n defineDatasourceIndex(datasource, 'minIndex', 'minIndexUser');\r\n defineDatasourceIndex(datasource, 'maxIndex', 'maxIndexUser');\r\n\r\n const fetchNext = (datasource.get.length !== 2) ?\r\n (success) => datasource.get(buffer.next, bufferSize, success) :\r\n (success) => {\r\n datasource.get({\r\n index: buffer.next,\r\n append: buffer.length ? buffer[buffer.length - 1].item : void 0,\r\n count: bufferSize\r\n }, success);\r\n };\r\n\r\n const fetchPrevious = (datasource.get.length !== 2) ?\r\n (success) => datasource.get(buffer.first - bufferSize, bufferSize, success) :\r\n (success) => {\r\n datasource.get({\r\n index: buffer.first - bufferSize,\r\n prepend: buffer.length ? buffer[0].item : void 0,\r\n count: bufferSize\r\n }, success);\r\n };\r\n\r\n const initialize = () => {\r\n let tryCount = 0;\r\n if(!viewport.applyContainerStyle()) {\r\n const timer = $interval(() => {\r\n tryCount++;\r\n if(viewport.applyContainerStyle()) {\r\n $interval.cancel(timer);\r\n doAdjust();\r\n }\r\n if(tryCount * VIEWPORT_POLLING_INTERVAL >= MAX_VIEWPORT_DELAY) {\r\n $interval.cancel(timer);\r\n throw Error(`ui-scroll directive requires a viewport with non-zero height in ${MAX_VIEWPORT_DELAY}ms`);\r\n }\r\n }, VIEWPORT_POLLING_INTERVAL);\r\n }\r\n else {\r\n doAdjust();\r\n }\r\n };\r\n\r\n /**\r\n * Build padding elements\r\n *\r\n * Calling linker is the only way I found to get access to the tag name of the template\r\n * to prevent the directive scope from pollution a new scope is created and destroyed\r\n * right after the builder creation is completed\r\n */\r\n linker((clone, scope) => {\r\n viewport.createPaddingElements(clone[0]);\r\n // we do not include the clone in the DOM. It means that the nested directives will not\r\n // be able to reach the parent directives, but in this case it is intentional because we\r\n // created the clone to access the template tag name\r\n scope.$destroy();\r\n clone.remove();\r\n });\r\n\r\n $scope.$on('$destroy', () => {\r\n unbindEvents();\r\n viewport.off('mousewheel', wheelHandler);\r\n });\r\n\r\n viewport.on('mousewheel', wheelHandler);\r\n\r\n initialize();\r\n\r\n /* Private function definitions */\r\n\r\n function isInvalid(rid) {\r\n return (rid && rid !== ridActual) || $scope.$$destroyed;\r\n }\r\n\r\n function bindEvents() {\r\n viewport.on('resize', resizeAndScrollHandler);\r\n viewport.on('scroll', resizeAndScrollHandler);\r\n }\r\n\r\n function unbindEvents() {\r\n viewport.off('resize', resizeAndScrollHandler);\r\n viewport.off('scroll', resizeAndScrollHandler);\r\n }\r\n\r\n function reload() {\r\n unbindEvents();\r\n viewport.resetTopPadding();\r\n viewport.resetBottomPadding();\r\n if (arguments.length) {\r\n startIndex = parseNumber(arguments[0], START_INDEX_DEFAULT, false);\r\n }\r\n buffer.reset(startIndex);\r\n persistDatasourceIndex(datasource, 'minIndex');\r\n persistDatasourceIndex(datasource, 'maxIndex');\r\n doAdjust();\r\n }\r\n\r\n function isElementVisible(wrapper) {\r\n return wrapper.element.height() && wrapper.element[0].offsetParent;\r\n }\r\n\r\n function visibilityWatcher(wrapper) {\r\n if (isElementVisible(wrapper)) {\r\n buffer.forEach((item) => {\r\n if (typeof item.unregisterVisibilityWatcher === 'function') {\r\n item.unregisterVisibilityWatcher();\r\n delete item.unregisterVisibilityWatcher;\r\n }\r\n });\r\n if (!pending.length) {\r\n $timeout(() => doAdjust());\r\n }\r\n }\r\n }\r\n\r\n function insertWrapperContent(wrapper, insertAfter) {\r\n createElement(wrapper, insertAfter, viewport.insertElement);\r\n if (!isElementVisible(wrapper)) {\r\n wrapper.unregisterVisibilityWatcher = wrapper.scope.$watch(() => visibilityWatcher(wrapper));\r\n }\r\n elementRoutines.hideElement(wrapper); // hide inserted elements before data binding\r\n }\r\n\r\n function createElement(wrapper, insertAfter, insertElement) {\r\n let promises = null;\r\n const sibling = (insertAfter > 0) ? buffer[insertAfter - 1].element : undefined;\r\n linker((clone, scope) => {\r\n promises = insertElement(clone, sibling);\r\n wrapper.element = clone;\r\n wrapper.scope = scope;\r\n scope[itemName] = wrapper.item;\r\n });\r\n // ui-scroll-grid apply\r\n if (adapter.transform) {\r\n const tdInitializer = wrapper.scope.uiScrollTdInitializer;\r\n if (tdInitializer && tdInitializer.linking) {\r\n adapter.transform(wrapper.scope, wrapper.element);\r\n } else {\r\n wrapper.scope.uiScrollTdInitializer = {\r\n onLink: () => adapter.transform(wrapper.scope, wrapper.element),\r\n scope: wrapper.scope\r\n };\r\n }\r\n }\r\n return promises;\r\n }\r\n\r\n function updateDOM() {\r\n let promises = [];\r\n const toBePrepended = [];\r\n const toBeRemoved = [];\r\n const inserted = [];\r\n\r\n buffer.forEach((wrapper, i) => {\r\n switch (wrapper.op) {\r\n case OPERATIONS.PREPEND:\r\n toBePrepended.unshift(wrapper);\r\n break;\r\n case OPERATIONS.APPEND:\r\n insertWrapperContent(wrapper, i);\r\n wrapper.op = OPERATIONS.NONE;\r\n inserted.push(wrapper);\r\n break;\r\n case OPERATIONS.INSERT:\r\n promises = promises.concat(createElement(wrapper, i, viewport.insertElementAnimated));\r\n wrapper.op = OPERATIONS.NONE;\r\n inserted.push(wrapper);\r\n break;\r\n case OPERATIONS.REMOVE:\r\n toBeRemoved.push(wrapper);\r\n }\r\n });\r\n\r\n toBeRemoved.forEach((wrapper) => promises = promises.concat(viewport.removeItem(wrapper)));\r\n\r\n if (toBePrepended.length)\r\n toBePrepended.forEach((wrapper) => {\r\n insertWrapperContent(wrapper);\r\n wrapper.op = OPERATIONS.NONE;\r\n });\r\n\r\n buffer.forEach((item, i) => item.scope.$index = buffer.first + i);\r\n\r\n return {\r\n prepended: toBePrepended,\r\n removed: toBeRemoved,\r\n inserted: inserted,\r\n animated: promises\r\n };\r\n\r\n }\r\n\r\n function updatePaddings(rid, updates) {\r\n // schedule another doAdjust after animation completion\r\n if (updates.animated.length) {\r\n $q.all(updates.animated).then(() => {\r\n viewport.adjustPaddings();\r\n doAdjust(rid);\r\n });\r\n } else {\r\n viewport.adjustPaddings();\r\n }\r\n }\r\n\r\n function enqueueFetch(rid, updates) {\r\n if (viewport.shouldLoadBottom()) {\r\n if (!updates || buffer.effectiveHeight(updates.inserted) > 0) {\r\n // this means that at least one item appended in the last batch has height > 0\r\n if (pending.push(true) === 1) {\r\n adapter.loading(true);\r\n fetch(rid);\r\n }\r\n }\r\n } else if (viewport.shouldLoadTop()) {\r\n if ((!updates || buffer.effectiveHeight(updates.prepended) > 0) || pending[0]) {\r\n // this means that at least one item appended in the last batch has height > 0\r\n // pending[0] = true means that previous fetch was appending. We need to force at least one prepend\r\n // BTW there will always be at least 1 element in the pending array because bottom is fetched first\r\n if (pending.push(false) === 1) {\r\n adapter.loading(true);\r\n fetch(rid);\r\n }\r\n }\r\n }\r\n }\r\n\r\n function processUpdates() {\r\n const updates = updateDOM();\r\n\r\n // We need the item bindings to be processed before we can do adjustments\r\n !$scope.$$phase && !$rootScope.$$phase && $scope.$digest();\r\n\r\n updates.inserted.forEach(w => elementRoutines.showElement(w));\r\n updates.prepended.forEach(w => elementRoutines.showElement(w));\r\n return updates;\r\n }\r\n\r\n function doAdjust(rid) {\r\n if (!rid) { // dismiss pending requests\r\n pending = [];\r\n rid = ++ridActual;\r\n }\r\n\r\n const updates = processUpdates();\r\n\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n updatePaddings(rid, updates);\r\n enqueueFetch(rid);\r\n\r\n if (!pending.length) {\r\n adapter.calculateProperties();\r\n }\r\n }\r\n\r\n function doAdjustAfterFetch(rid) {\r\n const updates = processUpdates();\r\n\r\n viewport.onAfterPrepend(updates);\r\n\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n updatePaddings(rid, updates);\r\n onRenderHandlersRunner();\r\n enqueueFetch(rid, updates);\r\n pending.shift();\r\n\r\n if (pending.length)\r\n fetch(rid);\r\n else {\r\n adapter.loading(false);\r\n bindEvents();\r\n adapter.calculateProperties();\r\n }\r\n }\r\n\r\n function fetch(rid) {\r\n if (pending[0]) {// scrolling down\r\n if (buffer.length && !viewport.shouldLoadBottom()) {\r\n doAdjustAfterFetch(rid);\r\n } else {\r\n fetchNext((result) => {\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n if (result.length < bufferSize) {\r\n buffer.eof = true;\r\n }\r\n\r\n if (result.length > 0) {\r\n viewport.clipTop();\r\n buffer.append(result);\r\n }\r\n\r\n doAdjustAfterFetch(rid);\r\n });\r\n }\r\n } else { // scrolling up\r\n if (buffer.length && !viewport.shouldLoadTop()) {\r\n doAdjustAfterFetch(rid);\r\n } else {\r\n fetchPrevious((result) => {\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n if (result.length < bufferSize) {\r\n buffer.bof = true;\r\n // log 'bof is reached'\r\n }\r\n\r\n if (result.length > 0) {\r\n if (buffer.length) {\r\n viewport.clipBottom();\r\n }\r\n buffer.prepend(result);\r\n }\r\n\r\n doAdjustAfterFetch(rid);\r\n });\r\n }\r\n }\r\n }\r\n\r\n function fixInertia() {\r\n if (!viewport.synthetic) {\r\n return;\r\n }\r\n const oldPosition = viewport.synthetic.previous;\r\n const newPosition = viewport.synthetic.next;\r\n if (viewport.scrollTop() !== newPosition) {\r\n requestAnimationFrame(() => {\r\n const position = viewport.scrollTop();\r\n const diff = oldPosition - position;\r\n if (diff > 0) { // inertia over synthetic\r\n viewport.scrollTop(newPosition - diff);\r\n } else {\r\n viewport.scrollTop(newPosition);\r\n }\r\n viewport.synthetic = null;\r\n });\r\n return true;\r\n }\r\n viewport.synthetic = null;\r\n }\r\n\r\n function resizeAndScrollHandler() {\r\n if (handleInertia && fixInertia()) {\r\n return;\r\n }\r\n if (!$rootScope.$$phase && !adapter.isLoading && !adapter.disabled) {\r\n\r\n enqueueFetch(ridActual);\r\n\r\n if (pending.length) {\r\n unbindEvents();\r\n } else {\r\n adapter.calculateProperties();\r\n !$scope.$$phase && $scope.$digest();\r\n }\r\n }\r\n }\r\n\r\n function wheelHandler(event) {\r\n if (!adapter.disabled) {\r\n const scrollTop = viewport[0].scrollTop;\r\n const yMax = viewport[0].scrollHeight - viewport[0].clientHeight;\r\n\r\n if ((scrollTop === 0 && !buffer.bof) || (scrollTop === yMax && !buffer.eof)) {\r\n event.preventDefault();\r\n }\r\n }\r\n }\r\n }\r\n\r\n }\r\n ]);\r\n"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"ui-scroll.min.js","mappings":"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","sources":["webpack://angular-ui-scroll/./src/modules/jqLiteExtras.js","webpack://angular-ui-scroll/./src/modules/elementRoutines.js","webpack://angular-ui-scroll/./src/modules/utils.js","webpack://angular-ui-scroll/./src/modules/buffer.js","webpack://angular-ui-scroll/./src/modules/padding.js","webpack://angular-ui-scroll/./src/modules/viewport.js","webpack://angular-ui-scroll/./src/modules/adapter.js","webpack://angular-ui-scroll/./src/ui-scroll.js"],"sourcesContent":["/*!\r\n globals: angular, window\r\n List of used element methods available in JQuery but not in JQuery Lite\r\n element.before(elem)\r\n element.height()\r\n element.outerHeight(true)\r\n element.height(value) = only for Top/Bottom padding elements\r\n element.scrollTop()\r\n element.scrollTop(value)\r\n */\r\n\r\nexport default class JQLiteExtras {\r\n\r\n registerFor(element) {\r\n let convertToPx, css, getStyle, isWindow;\r\n // angular implementation blows up if elem is the window\r\n css = angular.element.prototype.css;\r\n\r\n element.prototype.css = function (name, value) {\r\n let self = this;\r\n let elem = self[0];\r\n if (!(!elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style)) {\r\n return css.call(self, name, value);\r\n }\r\n };\r\n\r\n // as defined in angularjs v1.0.5\r\n isWindow = (obj) => obj && obj.document && obj.location && obj.alert && obj.setInterval;\r\n\r\n function scrollTo(self, direction, value) {\r\n let elem = self[0];\r\n let [method, prop, preserve] = {\r\n top: [\r\n 'scrollTop',\r\n 'pageYOffset',\r\n 'scrollLeft'\r\n ],\r\n left: [\r\n 'scrollLeft',\r\n 'pageXOffset',\r\n 'scrollTop'\r\n ]\r\n }[direction];\r\n\r\n const isValueDefined = typeof value !== 'undefined';\r\n if (isWindow(elem)) {\r\n if (isValueDefined) {\r\n return elem.scrollTo(self[preserve].call(self), value);\r\n }\r\n return (prop in elem) ? elem[prop] : elem.document.documentElement[method];\r\n } else {\r\n if (isValueDefined) {\r\n elem[method] = value;\r\n }\r\n return elem[method];\r\n }\r\n }\r\n\r\n if (window.getComputedStyle) {\r\n getStyle = (elem) => window.getComputedStyle(elem, null);\r\n convertToPx = (elem, value) => parseFloat(value);\r\n } else {\r\n getStyle = (elem) => elem.currentStyle;\r\n convertToPx = (elem, value) => {\r\n let left, result, rs, rsLeft, style;\r\n let core_pnum = /[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/.source;\r\n let rnumnonpx = new RegExp('^(' + core_pnum + ')(?!px)[a-z%]+$', 'i');\r\n\r\n if (!rnumnonpx.test(value)) {\r\n return parseFloat(value);\r\n }\r\n\r\n // ported from JQuery\r\n style = elem.style;\r\n left = style.left;\r\n rs = elem.runtimeStyle;\r\n rsLeft = rs && rs.left;\r\n if (rs) {\r\n rs.left = style.left;\r\n }\r\n // put in the new values to get a computed style out\r\n style.left = value;\r\n result = style.pixelLeft;\r\n style.left = left;\r\n if (rsLeft) {\r\n rs.left = rsLeft;\r\n }\r\n return result;\r\n };\r\n }\r\n\r\n function getMeasurements(elem, measure) {\r\n let base, borderA, borderB, computedMarginA, computedMarginB, computedStyle, dirA, dirB, marginA, marginB, paddingA, paddingB;\r\n\r\n if (isWindow(elem)) {\r\n base = document.documentElement[{height: 'clientHeight', width: 'clientWidth'}[measure]];\r\n\r\n return {\r\n base: base,\r\n padding: 0,\r\n border: 0,\r\n margin: 0\r\n };\r\n }\r\n\r\n // Start with offset property\r\n [\r\n base,\r\n dirA,\r\n dirB\r\n ] = {\r\n width: [\r\n elem.offsetWidth,\r\n 'Left',\r\n 'Right'\r\n ],\r\n height: [\r\n elem.offsetHeight,\r\n 'Top',\r\n 'Bottom'\r\n ]\r\n }[measure];\r\n\r\n computedStyle = getStyle(elem);\r\n paddingA = convertToPx(elem, computedStyle['padding' + dirA]) || 0;\r\n paddingB = convertToPx(elem, computedStyle['padding' + dirB]) || 0;\r\n borderA = convertToPx(elem, computedStyle['border' + dirA + 'Width']) || 0;\r\n borderB = convertToPx(elem, computedStyle['border' + dirB + 'Width']) || 0;\r\n computedMarginA = computedStyle['margin' + dirA];\r\n computedMarginB = computedStyle['margin' + dirB];\r\n\r\n // I do not care for width for now, so this hack is irrelevant\r\n // if ( !supportsPercentMargin )\r\n // computedMarginA = hackPercentMargin( elem, computedStyle, computedMarginA )\r\n // computedMarginB = hackPercentMargin( elem, computedStyle, computedMarginB )\r\n marginA = convertToPx(elem, computedMarginA) || 0;\r\n marginB = convertToPx(elem, computedMarginB) || 0;\r\n\r\n return {\r\n base: base,\r\n padding: paddingA + paddingB,\r\n border: borderA + borderB,\r\n margin: marginA + marginB\r\n };\r\n }\r\n\r\n function getWidthHeight(elem, direction, measure) {\r\n let computedStyle, result;\r\n\r\n let measurements = getMeasurements(elem, direction);\r\n\r\n if (measurements.base > 0) {\r\n return {\r\n base: measurements.base - measurements.padding - measurements.border,\r\n outer: measurements.base,\r\n outerfull: measurements.base + measurements.margin\r\n }[measure];\r\n }\r\n\r\n // Fall back to computed then uncomputed css if necessary\r\n computedStyle = getStyle(elem);\r\n result = computedStyle[direction];\r\n\r\n if (result < 0 || result === null) {\r\n result = elem.style[direction] || 0;\r\n }\r\n\r\n // Normalize \"\", auto, and prepare for extra\r\n result = parseFloat(result) || 0;\r\n\r\n return {\r\n base: result - measurements.padding - measurements.border,\r\n outer: result,\r\n outerfull: result + measurements.padding + measurements.border + measurements.margin\r\n }[measure];\r\n }\r\n\r\n // define missing methods\r\n return angular.forEach({\r\n before(newElem) {\r\n var children, elem, i, j, parent, ref, self;\r\n self = this;\r\n elem = self[0];\r\n parent = self.parent();\r\n children = parent.contents();\r\n if (children[0] === elem) {\r\n return parent.prepend(newElem);\r\n } else {\r\n for (i = j = 1, ref = children.length - 1; 1 <= ref ? j <= ref : j >= ref; i = 1 <= ref ? ++j : --j) {\r\n if (children[i] === elem) {\r\n angular.element(children[i - 1]).after(newElem);\r\n return;\r\n }\r\n }\r\n throw new Error('invalid DOM structure ' + elem.outerHTML);\r\n }\r\n },\r\n height (value){\r\n var self;\r\n self = this;\r\n if (typeof value !== 'undefined') {\r\n if (angular.isNumber(value)) {\r\n value = value + 'px';\r\n }\r\n return css.call(self, 'height', value);\r\n } else {\r\n return getWidthHeight(this[0], 'height', 'base');\r\n }\r\n },\r\n outerHeight(option) {\r\n return getWidthHeight(this[0], 'height', option ? 'outerfull' : 'outer');\r\n },\r\n outerWidth(option) {\r\n return getWidthHeight(this[0], 'width', option ? 'outerfull' : 'outer');\r\n },\r\n\r\n /*\r\n The offset setter method is not implemented\r\n */\r\n offset(value) {\r\n let docElem, win;\r\n let self = this;\r\n let box = {\r\n top: 0,\r\n left: 0\r\n };\r\n let elem = self[0];\r\n let doc = elem && elem.ownerDocument;\r\n\r\n if (arguments.length) {\r\n if (value === undefined) {\r\n return self;\r\n }\r\n // TODO: implement setter\r\n throw new Error('offset setter method is not implemented');\r\n }\r\n\r\n if (!doc) {\r\n return;\r\n }\r\n\r\n docElem = doc.documentElement;\r\n\r\n // TODO: Make sure it's not a disconnected DOM node\r\n\r\n if (elem.getBoundingClientRect != null) {\r\n box = elem.getBoundingClientRect();\r\n }\r\n\r\n win = doc.defaultView || doc.parentWindow;\r\n\r\n return {\r\n top: box.top + (win.pageYOffset || docElem.scrollTop) - (docElem.clientTop || 0),\r\n left: box.left + (win.pageXOffset || docElem.scrollLeft) - (docElem.clientLeft || 0)\r\n };\r\n },\r\n scrollTop(value) {\r\n return scrollTo(this, 'top', value);\r\n },\r\n scrollLeft(value) {\r\n return scrollTo(this, 'left', value);\r\n }\r\n }, (value, key) => {\r\n if (!element.prototype[key]) {\r\n return element.prototype[key] = value;\r\n }\r\n });\r\n }\r\n\r\n}\r\n","const hideClassToken = 'ng-ui-scroll-hide';\r\n\r\nexport default class ElementRoutines {\r\n\r\n static addCSSRules() {\r\n const selector = '.' + hideClassToken;\r\n const rules = 'display: none';\r\n const sheet = document.styleSheets[0];\r\n let index;\r\n try {\r\n index = sheet.cssRules.length;\r\n } catch (err) {\r\n index = 0;\r\n }\r\n if('insertRule' in sheet) {\r\n sheet.insertRule(selector + '{' + rules + '}', index);\r\n }\r\n else if('addRule' in sheet) {\r\n sheet.addRule(selector, rules, index);\r\n }\r\n }\r\n\r\n constructor($injector, $q) {\r\n this.$animate = ($injector.has && $injector.has('$animate')) ? $injector.get('$animate') : null;\r\n this.isAngularVersionLessThen1_3 = angular.version.major === 1 && angular.version.minor < 3;\r\n this.$q = $q;\r\n }\r\n\r\n hideElement(wrapper) {\r\n wrapper.element.addClass(hideClassToken);\r\n }\r\n\r\n showElement(wrapper) {\r\n wrapper.element.removeClass(hideClassToken);\r\n }\r\n\r\n insertElement(newElement, previousElement) {\r\n previousElement.after(newElement);\r\n return [];\r\n }\r\n\r\n removeElement(wrapper) {\r\n wrapper.element.remove();\r\n wrapper.scope.$destroy();\r\n return [];\r\n }\r\n\r\n insertElementAnimated(newElement, previousElement) {\r\n if (!this.$animate) {\r\n return this.insertElement(newElement, previousElement);\r\n }\r\n\r\n if (this.isAngularVersionLessThen1_3) {\r\n const deferred = this.$q.defer();\r\n // no need for parent - previous element is never null\r\n this.$animate.enter(newElement, null, previousElement, () => deferred.resolve());\r\n\r\n return [deferred.promise];\r\n }\r\n\r\n // no need for parent - previous element is never null\r\n return [this.$animate.enter(newElement, null, previousElement)];\r\n }\r\n\r\n removeElementAnimated(wrapper) {\r\n if (!this.$animate) {\r\n return this.removeElement(wrapper);\r\n }\r\n\r\n if (this.isAngularVersionLessThen1_3) {\r\n const deferred = this.$q.defer();\r\n this.$animate.leave(wrapper.element, () => {\r\n wrapper.scope.$destroy();\r\n return deferred.resolve();\r\n });\r\n\r\n return [deferred.promise];\r\n }\r\n\r\n return [(this.$animate.leave(wrapper.element)).then(() => wrapper.scope.$destroy())];\r\n }\r\n}","export const OPERATIONS = {\r\n PREPEND: 'prepend',\r\n APPEND: 'append',\r\n INSERT: 'insert',\r\n REMOVE: 'remove',\r\n NONE: 'none'\r\n};\r\n","import { OPERATIONS } from './utils';\r\n\r\nexport default function ScrollBuffer(elementRoutines, bufferSize, startIndex) {\r\n const buffer = Object.create(Array.prototype);\r\n\r\n angular.extend(buffer, {\r\n size: bufferSize,\r\n\r\n reset(startIndex) {\r\n buffer.remove(0, buffer.length);\r\n buffer.eof = false;\r\n buffer.bof = false;\r\n buffer.first = startIndex;\r\n buffer.next = startIndex;\r\n buffer.minIndex = startIndex;\r\n buffer.maxIndex = startIndex;\r\n buffer.minIndexUser = null;\r\n buffer.maxIndexUser = null;\r\n },\r\n\r\n append(items) {\r\n items.forEach((item) => {\r\n ++buffer.next;\r\n buffer.insert(OPERATIONS.APPEND, item);\r\n });\r\n buffer.maxIndex = buffer.eof ? buffer.next - 1 : Math.max(buffer.next - 1, buffer.maxIndex);\r\n },\r\n\r\n prepend(items, immutableTop) {\r\n items.reverse().forEach((item) => {\r\n if (immutableTop) {\r\n ++buffer.next;\r\n }\r\n else {\r\n --buffer.first;\r\n }\r\n buffer.insert(OPERATIONS.PREPEND, item);\r\n });\r\n buffer.minIndex = buffer.bof ? buffer.minIndex = buffer.first : Math.min(buffer.first, buffer.minIndex);\r\n },\r\n\r\n /**\r\n * inserts wrapped element in the buffer\r\n * the first argument is either operation keyword (see below) or a number for operation 'insert'\r\n * for insert the number is the index for the buffer element the new one have to be inserted after\r\n * operations: 'append', 'prepend', 'insert', 'remove', 'none'\r\n */\r\n insert(operation, item, shiftTop) {\r\n const wrapper = {\r\n item: item\r\n };\r\n\r\n if (operation % 1 === 0) { // it is an insert\r\n wrapper.op = OPERATIONS.INSERT;\r\n buffer.splice(operation, 0, wrapper);\r\n if (shiftTop) {\r\n buffer.first--;\r\n }\r\n else {\r\n buffer.next++;\r\n }\r\n } else {\r\n wrapper.op = operation;\r\n switch (operation) {\r\n case OPERATIONS.APPEND:\r\n buffer.push(wrapper);\r\n break;\r\n case OPERATIONS.PREPEND:\r\n buffer.unshift(wrapper);\r\n break;\r\n }\r\n }\r\n },\r\n\r\n // removes elements from buffer\r\n remove(arg1, arg2) {\r\n if (angular.isNumber(arg1)) {\r\n // removes items from arg1 (including) through arg2 (excluding)\r\n for (let i = arg1; i < arg2; i++) {\r\n elementRoutines.removeElement(buffer[i]);\r\n }\r\n return buffer.splice(arg1, arg2 - arg1);\r\n }\r\n // removes single item (wrapper) from the buffer\r\n buffer.splice(buffer.indexOf(arg1), 1);\r\n if (arg1.shiftTop && buffer.first === this.getAbsMinIndex()) {\r\n this.incrementMinIndex();\r\n }\r\n else {\r\n this.decrementMaxIndex();\r\n }\r\n if (arg1.shiftTop) {\r\n buffer.first++;\r\n }\r\n else {\r\n buffer.next--;\r\n }\r\n if (!buffer.length) {\r\n buffer.minIndex = Math.min(buffer.maxIndex, buffer.minIndex);\r\n }\r\n\r\n return elementRoutines.removeElementAnimated(arg1);\r\n },\r\n\r\n incrementMinIndex() {\r\n if (buffer.minIndexUser !== null) {\r\n if (buffer.minIndex > buffer.minIndexUser) {\r\n buffer.minIndexUser++;\r\n return;\r\n }\r\n if (buffer.minIndex === buffer.minIndexUser) {\r\n buffer.minIndexUser++;\r\n }\r\n }\r\n buffer.minIndex++;\r\n },\r\n\r\n decrementMaxIndex() {\r\n if (buffer.maxIndexUser !== null && buffer.maxIndex <= buffer.maxIndexUser) {\r\n buffer.maxIndexUser--;\r\n }\r\n buffer.maxIndex--;\r\n },\r\n\r\n getAbsMinIndex() {\r\n if (buffer.minIndexUser !== null) {\r\n return Math.min(buffer.minIndexUser, buffer.minIndex);\r\n }\r\n return buffer.minIndex;\r\n },\r\n\r\n getAbsMaxIndex() {\r\n if (buffer.maxIndexUser !== null) {\r\n return Math.max(buffer.maxIndexUser, buffer.maxIndex);\r\n }\r\n return buffer.maxIndex;\r\n },\r\n\r\n effectiveHeight(elements) {\r\n if (!elements.length) {\r\n return 0;\r\n }\r\n let top = Number.MAX_VALUE;\r\n let bottom = Number.NEGATIVE_INFINITY;\r\n elements.forEach((wrapper) => {\r\n if (wrapper.element[0].offsetParent) {\r\n // element style is not display:none\r\n top = Math.min(top, wrapper.element.offset().top);\r\n bottom = Math.max(bottom, wrapper.element.offset().top + wrapper.element.outerHeight(true));\r\n }\r\n });\r\n return Math.max(0, bottom - top);\r\n },\r\n\r\n getItems() {\r\n return buffer.filter(item => item.op === OPERATIONS.NONE);\r\n },\r\n\r\n getFirstItem() {\r\n const list = buffer.getItems();\r\n if (!list.length) {\r\n return null;\r\n }\r\n return list[0].item;\r\n },\r\n\r\n getLastItem() {\r\n const list = buffer.getItems();\r\n if (!list.length) {\r\n return null;\r\n }\r\n return list[list.length - 1].item;\r\n }\r\n\r\n });\r\n\r\n buffer.reset(startIndex);\r\n\r\n return buffer;\r\n}\r\n","// Can't just extend the Array, due to Babel does not support built-in classes extending\r\n// This solution was taken from https://stackoverflow.com/questions/46897414/es6-class-extends-array-workaround-for-es5-babel-transpile\r\nclass CacheProto {\r\n add(item) {\r\n for (let i = this.length - 1; i >= 0; i--) {\r\n if (this[i].index === item.scope.$index) {\r\n this[i].height = item.element.outerHeight();\r\n return;\r\n }\r\n }\r\n this.push({\r\n index: item.scope.$index,\r\n height: item.element.outerHeight()\r\n });\r\n this.sort((a, b) => ((a.index < b.index) ? -1 : ((a.index > b.index) ? 1 : 0)));\r\n }\r\n\r\n remove(argument, _shiftTop) {\r\n const index = argument % 1 === 0 ? argument : argument.scope.$index;\r\n const shiftTop = argument % 1 === 0 ? _shiftTop : argument.shiftTop;\r\n for (let i = this.length - 1; i >= 0; i--) {\r\n if (this[i].index === index) {\r\n this.splice(i, 1);\r\n break;\r\n }\r\n }\r\n if (!shiftTop) {\r\n for (let i = this.length - 1; i >= 0; i--) {\r\n if (this[i].index > index) {\r\n this[i].index--;\r\n }\r\n }\r\n }\r\n }\r\n\r\n clear() {\r\n this.length = 0;\r\n }\r\n}\r\n\r\nfunction Cache() {\r\n const instance = [];\r\n instance.push.apply(instance, arguments);\r\n Object.setPrototypeOf(instance, Cache.prototype);\r\n return instance;\r\n}\r\nCache.prototype = Object.create(Array.prototype);\r\nObject.getOwnPropertyNames(CacheProto.prototype).forEach(methodName =>\r\n Cache.prototype[methodName] = CacheProto.prototype[methodName]\r\n);\r\n\r\nfunction generateElement(template) {\r\n if (template.nodeType !== Node.ELEMENT_NODE) {\r\n throw new Error('ui-scroll directive requires an Element node for templating the view');\r\n }\r\n let element;\r\n switch (template.tagName.toLowerCase()) {\r\n case 'dl':\r\n throw new Error(`ui-scroll directive does not support <${template.tagName}> as a repeating tag: ${template.outerHTML}`);\r\n case 'tr':\r\n let table = angular.element('');\r\n element = table.find('tr');\r\n break;\r\n case 'li':\r\n element = angular.element('');\r\n break;\r\n default:\r\n element = angular.element('');\r\n }\r\n return element;\r\n}\r\n\r\nclass Padding {\r\n constructor(template) {\r\n this.element = generateElement(template);\r\n this.cache = new Cache();\r\n }\r\n\r\n height() {\r\n return this.element.height.apply(this.element, arguments);\r\n }\r\n}\r\n\r\nexport default Padding;","import Padding from './padding';\r\n\r\nexport default function Viewport(elementRoutines, buffer, element, viewportController, $rootScope, padding) {\r\n let topPadding = null;\r\n let bottomPadding = null;\r\n const viewport = viewportController && viewportController.viewport ? viewportController.viewport : angular.element(window);\r\n const container = viewportController && viewportController.container ? viewportController.container : undefined;\r\n const scope = viewportController && viewportController.scope ? viewportController.scope : $rootScope;\r\n\r\n viewport.css({\r\n 'overflow-anchor': 'none',\r\n 'overflow-y': 'auto',\r\n 'display': 'block'\r\n });\r\n\r\n function bufferPadding() {\r\n return viewport.outerHeight() * padding; // some extra space to initiate preload\r\n }\r\n\r\n angular.extend(viewport, {\r\n getScope() {\r\n return scope;\r\n },\r\n\r\n createPaddingElements(template) {\r\n topPadding = new Padding(template);\r\n bottomPadding = new Padding(template);\r\n element.before(topPadding.element);\r\n element.after(bottomPadding.element);\r\n topPadding.height(0);\r\n bottomPadding.height(0);\r\n },\r\n\r\n applyContainerStyle() {\r\n if (!container) {\r\n return true;\r\n }\r\n if (container !== viewport) {\r\n viewport.css('height', window.getComputedStyle(container[0]).height);\r\n }\r\n return viewport.height() > 0;\r\n },\r\n\r\n bottomDataPos() {\r\n let scrollHeight = viewport[0].scrollHeight;\r\n scrollHeight = scrollHeight != null ? scrollHeight : viewport[0].document.documentElement.scrollHeight;\r\n return scrollHeight - bottomPadding.height();\r\n },\r\n\r\n topDataPos() {\r\n return topPadding.height();\r\n },\r\n\r\n bottomVisiblePos() {\r\n return viewport.scrollTop() + viewport.outerHeight();\r\n },\r\n\r\n topVisiblePos() {\r\n return viewport.scrollTop();\r\n },\r\n\r\n insertElement(e, sibling) {\r\n return elementRoutines.insertElement(e, sibling || topPadding.element);\r\n },\r\n\r\n insertElementAnimated(e, sibling) {\r\n return elementRoutines.insertElementAnimated(e, sibling || topPadding.element);\r\n },\r\n\r\n shouldLoadBottom() {\r\n return !buffer.eof && viewport.bottomDataPos() < viewport.bottomVisiblePos() + bufferPadding();\r\n },\r\n\r\n clipBottom() {\r\n // clip the invisible items off the bottom\r\n let overage = 0;\r\n let overageHeight = 0;\r\n let itemHeight = 0;\r\n let emptySpaceHeight = viewport.bottomDataPos() - viewport.bottomVisiblePos() - bufferPadding();\r\n\r\n for (let i = buffer.length - 1; i >= 0; i--) {\r\n itemHeight = buffer[i].element.outerHeight(true);\r\n if (overageHeight + itemHeight > emptySpaceHeight) {\r\n break;\r\n }\r\n bottomPadding.cache.add(buffer[i]);\r\n overageHeight += itemHeight;\r\n overage++;\r\n }\r\n\r\n if (overage > 0) {\r\n buffer.eof = false;\r\n buffer.remove(buffer.length - overage, buffer.length);\r\n buffer.next -= overage;\r\n viewport.adjustPaddings();\r\n }\r\n },\r\n\r\n shouldLoadTop() {\r\n return !buffer.bof && (viewport.topDataPos() > viewport.topVisiblePos() - bufferPadding());\r\n },\r\n\r\n clipTop() {\r\n // clip the invisible items off the top\r\n let overage = 0;\r\n let overageHeight = 0;\r\n let itemHeight = 0;\r\n let emptySpaceHeight = viewport.topVisiblePos() - viewport.topDataPos() - bufferPadding();\r\n\r\n for (let i = 0; i < buffer.length; i++) {\r\n itemHeight = buffer[i].element.outerHeight(true);\r\n if (overageHeight + itemHeight > emptySpaceHeight) {\r\n break;\r\n }\r\n topPadding.cache.add(buffer[i]);\r\n overageHeight += itemHeight;\r\n overage++;\r\n }\r\n\r\n if (overage > 0) {\r\n // we need to adjust top padding element before items are removed from top\r\n // to avoid strange behaviour of scroll bar during remove top items when we are at the very bottom\r\n topPadding.height(topPadding.height() + overageHeight);\r\n buffer.bof = false;\r\n buffer.remove(0, overage);\r\n buffer.first += overage;\r\n }\r\n },\r\n\r\n adjustPaddings() {\r\n if (!buffer.length) {\r\n return;\r\n }\r\n\r\n // precise heights calculation based on items that are in buffer or that were in buffer once\r\n const visibleItemsHeight = buffer.reduce((summ, item) => summ + item.element.outerHeight(true), 0);\r\n\r\n let topPaddingHeight = 0, topCount = 0;\r\n topPadding.cache.forEach(item => {\r\n if (item.index < buffer.first) {\r\n topPaddingHeight += item.height;\r\n topCount++;\r\n }\r\n });\r\n\r\n let bottomPaddingHeight = 0, bottomCount = 0;\r\n bottomPadding.cache.forEach(item => {\r\n if (item.index >= buffer.next) {\r\n bottomPaddingHeight += item.height;\r\n bottomCount++;\r\n }\r\n });\r\n\r\n const totalHeight = visibleItemsHeight + topPaddingHeight + bottomPaddingHeight;\r\n const averageItemHeight = totalHeight / (topCount + bottomCount + buffer.length);\r\n\r\n // average heights calculation, items that have never been reached\r\n let adjustTopPadding = buffer.minIndexUser !== null && buffer.minIndex > buffer.minIndexUser;\r\n let adjustBottomPadding = buffer.maxIndexUser !== null && buffer.maxIndex < buffer.maxIndexUser;\r\n let topPaddingHeightAdd = adjustTopPadding ? (buffer.minIndex - buffer.minIndexUser) * averageItemHeight : 0;\r\n let bottomPaddingHeightAdd = adjustBottomPadding ? (buffer.maxIndexUser - buffer.maxIndex) * averageItemHeight : 0;\r\n\r\n // paddings combine adjustment\r\n topPadding.height(topPaddingHeight + topPaddingHeightAdd);\r\n bottomPadding.height(bottomPaddingHeight + bottomPaddingHeightAdd);\r\n },\r\n\r\n onAfterMinIndexSet(topPaddingHeightOld) {\r\n // additional scrollTop adjustment in case of datasource.minIndex external set\r\n if (buffer.minIndexUser !== null && buffer.minIndex > buffer.minIndexUser) {\r\n let diff = topPadding.height() - topPaddingHeightOld;\r\n viewport.scrollTop(viewport.scrollTop() + diff);\r\n while((diff -= viewport.scrollTop()) > 0) {\r\n bottomPadding.height(bottomPadding.height() + diff);\r\n viewport.scrollTop(viewport.scrollTop() + diff);\r\n }\r\n }\r\n },\r\n\r\n onAfterPrepend(updates) {\r\n if (!updates.prepended.length) {\r\n return;\r\n }\r\n const height = buffer.effectiveHeight(updates.prepended);\r\n const paddingHeight = topPadding.height() - height;\r\n if (paddingHeight >= 0) {\r\n topPadding.height(paddingHeight);\r\n return;\r\n }\r\n const position = viewport.scrollTop();\r\n const newPosition = position - paddingHeight;\r\n viewport.synthetic = { previous: position, next: newPosition };\r\n topPadding.height(0);\r\n viewport.scrollTop(newPosition);\r\n },\r\n\r\n resetTopPadding() {\r\n topPadding.height(0);\r\n topPadding.cache.clear();\r\n },\r\n\r\n resetBottomPadding() {\r\n bottomPadding.height(0);\r\n bottomPadding.cache.clear();\r\n },\r\n\r\n removeCacheItem(item, shiftTop) {\r\n topPadding.cache.remove(item, shiftTop);\r\n bottomPadding.cache.remove(item, shiftTop);\r\n },\r\n\r\n removeItem(item) {\r\n this.removeCacheItem(item);\r\n return buffer.remove(item);\r\n }\r\n });\r\n\r\n return viewport;\r\n}\r\n","import { OPERATIONS } from './utils';\r\n\r\nclass Adapter {\r\n\r\n constructor($scope, $parse, $attr, viewport, buffer, doAdjust, reload) {\r\n this.$parse = $parse;\r\n this.$attr = $attr;\r\n this.viewport = viewport;\r\n this.buffer = buffer;\r\n\r\n this.doAdjust = doAdjust;\r\n this.reload = reload;\r\n\r\n this.isLoading = false;\r\n this.disabled = false;\r\n\r\n const viewportScope = viewport.getScope();\r\n this.startScope = viewportScope.$parent ? viewportScope : $scope;\r\n\r\n this.publicContext = {};\r\n this.assignAdapter($attr.adapter);\r\n this.generatePublicContext();\r\n }\r\n\r\n assignAdapter(adapterAttr) {\r\n if (!adapterAttr || !(adapterAttr = adapterAttr.replace(/^\\s+|\\s+$/gm, ''))) {\r\n return;\r\n }\r\n let adapterOnScope;\r\n\r\n try {\r\n this.$parse(adapterAttr).assign(this.startScope, {});\r\n adapterOnScope = this.$parse(adapterAttr)(this.startScope);\r\n }\r\n catch (error) {\r\n error.message = `Angular ui-scroll Adapter assignment exception.\\n` +\r\n `Can't parse \"${adapterAttr}\" expression.\\n` +\r\n error.message;\r\n throw error;\r\n }\r\n\r\n angular.extend(adapterOnScope, this.publicContext);\r\n this.publicContext = adapterOnScope;\r\n }\r\n\r\n generatePublicContext() {\r\n // these methods will be accessible out of ui-scroll via user defined adapter\r\n const publicMethods = ['reload', 'applyUpdates', 'append', 'prepend', 'isBOF', 'isEOF', 'isEmpty'];\r\n for (let i = publicMethods.length - 1; i >= 0; i--) {\r\n this.publicContext[publicMethods[i]] = this[publicMethods[i]].bind(this);\r\n }\r\n\r\n // these read-only props will be accessible out of ui-scroll via user defined adapter\r\n const publicProps = ['isLoading', 'topVisible', 'topVisibleElement', 'topVisibleScope', 'bottomVisible', 'bottomVisibleElement', 'bottomVisibleScope'];\r\n for (let i = publicProps.length - 1; i >= 0; i--) {\r\n let property, attr = this.$attr[publicProps[i]];\r\n Object.defineProperty(this, publicProps[i], {\r\n get: () => property,\r\n set: (value) => {\r\n property = value;\r\n this.publicContext[publicProps[i]] = value;\r\n if (attr) {\r\n this.$parse(attr).assign(this.startScope, value);\r\n }\r\n }\r\n });\r\n }\r\n\r\n // read-only immediately calculated public properties\r\n const publicPropsImmediate = ['bufferFirst', 'bufferLast', 'bufferLength'];\r\n for (let i = publicPropsImmediate.length - 1; i >= 0; i--) {\r\n Object.defineProperty(this.publicContext, publicPropsImmediate[i], {\r\n get: () => this[publicPropsImmediate[i]]\r\n });\r\n }\r\n\r\n // non-read-only public property\r\n Object.defineProperty(this.publicContext, 'disabled', {\r\n get: () => this.disabled,\r\n set: (value) => (!(this.disabled = value)) ? this.doAdjust() : null\r\n });\r\n }\r\n\r\n loading(value) {\r\n this.isLoading = value;\r\n }\r\n\r\n isBOF() {\r\n return this.buffer.bof;\r\n }\r\n\r\n isEOF() {\r\n return this.buffer.eof;\r\n }\r\n\r\n isEmpty() {\r\n return !this.buffer.length;\r\n }\r\n\r\n get bufferLength() {\r\n return this.buffer.getItems().length;\r\n }\r\n\r\n get bufferFirst() {\r\n return this.buffer.getFirstItem();\r\n }\r\n\r\n get bufferLast() {\r\n return this.buffer.getLastItem();\r\n }\r\n\r\n append(newItems) {\r\n this.buffer.append(newItems);\r\n this.doAdjust();\r\n this.viewport.clipTop();\r\n this.viewport.clipBottom();\r\n }\r\n\r\n prepend(newItems, options = {}) {\r\n this.buffer.prepend(newItems, options.immutableTop);\r\n this.doAdjust();\r\n this.viewport.clipTop();\r\n this.viewport.clipBottom();\r\n }\r\n\r\n applyUpdates(arg1, arg2, arg3) {\r\n if (typeof arg1 === 'function') {\r\n this.applyUpdatesFunc(arg1, arg2);\r\n } else {\r\n this.applyUpdatesIndex(arg1, arg2, arg3);\r\n }\r\n this.doAdjust();\r\n }\r\n\r\n applyUpdatesFunc(cb, options = {}) {\r\n this.buffer.slice(0).forEach((wrapper) => {\r\n // we need to do it on the buffer clone, because buffer content\r\n // may change as we iterate through\r\n this.applyUpdate(wrapper, cb(wrapper.item, wrapper.scope, wrapper.element), options);\r\n });\r\n }\r\n\r\n applyUpdatesIndex(index, newItems, options = {}) {\r\n if (index % 1 !== 0) {\r\n throw new Error('applyUpdates - ' + index + ' is not a valid index (should be an integer)');\r\n }\r\n const _index = index - this.buffer.first;\r\n\r\n // apply updates only within buffer\r\n if (_index >= 0 && _index < this.buffer.length) {\r\n this.applyUpdate(this.buffer[_index], newItems, options);\r\n }\r\n // out-of-buffer case: deletion may affect Paddings\r\n else if(index >= this.buffer.getAbsMinIndex() && index <= this.buffer.getAbsMaxIndex()) {\r\n if(angular.isArray(newItems) && !newItems.length) {\r\n this.viewport.removeCacheItem(index, !options.immutableTop && index === this.buffer.minIndex);\r\n if (!options.immutableTop && index === this.buffer.getAbsMinIndex()) {\r\n this.buffer.incrementMinIndex();\r\n }\r\n else {\r\n this.buffer.decrementMaxIndex();\r\n }\r\n }\r\n }\r\n }\r\n\r\n applyUpdate(wrapper, newItems, options = {}) {\r\n if (!angular.isArray(newItems)) {\r\n return;\r\n }\r\n let position = this.buffer.indexOf(wrapper);\r\n if (!newItems.reverse().some(newItem => newItem === wrapper.item)) {\r\n wrapper.op = OPERATIONS.REMOVE;\r\n // try to catch \"first\" edge case on remove\r\n if (!options.immutableTop && !newItems.length) {\r\n // this is the first item, or the previous one's part of the \"shift-top\" group\r\n if (\r\n (position === 0 && this.buffer.bof) ||\r\n (position !== 0 && this.buffer[position - 1].shiftTop)\r\n ) {\r\n wrapper.shiftTop = true;\r\n }\r\n }\r\n }\r\n newItems.forEach((newItem) => {\r\n if (newItem === wrapper.item) {\r\n position--;\r\n } else {\r\n // 3 parameter (shiftTop) is to catch \"first\" edge case on insert\r\n this.buffer.insert(position + 1, newItem, !options.immutableTop && position === -1);\r\n }\r\n });\r\n }\r\n\r\n calculateProperties() {\r\n let rowTop = null, topHeight = 0;\r\n let topDone = false, bottomDone = false;\r\n const length = this.buffer.length;\r\n\r\n for (let i = 0; i < length; i++) {\r\n const item = this.buffer[i];\r\n const itemTop = item.element.offset().top;\r\n\r\n if (rowTop !== itemTop) { // a new row condition\r\n const itemHeight = item.element.outerHeight(true);\r\n const top = this.viewport.topDataPos() + topHeight + itemHeight;\r\n\r\n if (!topDone && top > this.viewport.topVisiblePos()) {\r\n topDone = true;\r\n this['topVisible'] = item.item;\r\n this['topVisibleElement'] = item.element;\r\n this['topVisibleScope'] = item.scope;\r\n }\r\n if (!bottomDone && (top >= this.viewport.bottomVisiblePos() || (i === length - 1 && this.isEOF()))) {\r\n bottomDone = true;\r\n this['bottomVisible'] = item.item;\r\n this['bottomVisibleElement'] = item.element;\r\n this['bottomVisibleScope'] = item.scope;\r\n }\r\n topHeight += itemHeight;\r\n }\r\n rowTop = itemTop;\r\n\r\n if (topDone && bottomDone) {\r\n break;\r\n }\r\n }\r\n }\r\n\r\n}\r\n\r\nexport default Adapter;\r\n","import JQLiteExtras from './modules/jqLiteExtras';\r\nimport ElementRoutines from './modules/elementRoutines.js';\r\nimport ScrollBuffer from './modules/buffer.js';\r\nimport Viewport from './modules/viewport.js';\r\nimport Adapter from './modules/adapter.js';\r\nimport { OPERATIONS } from './modules/utils';\r\n\r\nangular.module('ui.scroll', [])\r\n\r\n .constant('JQLiteExtras', JQLiteExtras)\r\n .run(['JQLiteExtras', (JQLiteExtras) => {\r\n const elt = angular.element;\r\n !(window.jQuery && elt.fn && elt.fn.jquery) ? (new JQLiteExtras()).registerFor(elt) : null;\r\n ElementRoutines.addCSSRules();\r\n }])\r\n\r\n .directive('uiScrollViewport', function () {\r\n return {\r\n restrict: 'A',\r\n controller: [\r\n '$scope',\r\n '$element',\r\n function (scope, element) {\r\n this.container = element;\r\n this.viewport = element;\r\n this.scope = scope;\r\n\r\n angular.forEach(element.children(), child => {\r\n if (child.tagName.toLowerCase() === 'tbody') {\r\n this.viewport = angular.element(child);\r\n }\r\n });\r\n\r\n return this;\r\n }\r\n ]\r\n };\r\n })\r\n\r\n .directive('uiScroll', [\r\n '$log',\r\n '$injector',\r\n '$rootScope',\r\n '$timeout',\r\n '$interval',\r\n '$q',\r\n '$parse',\r\n function (console, $injector, $rootScope, $timeout, $interval, $q, $parse) {\r\n\r\n return {\r\n require: ['?^uiScrollViewport'],\r\n restrict: 'A',\r\n transclude: 'element',\r\n priority: 1000,\r\n terminal: true,\r\n link: link\r\n };\r\n\r\n function link($scope, element, $attr, controllers, linker) {\r\n const match = $attr.uiScroll.match(/^\\s*(\\w+)\\s+in\\s+([(\\w|\\$)\\.]+)\\s*$/);\r\n if (!match) {\r\n throw new Error('Expected uiScroll in form of \\'_item_ in _datasource_\\' but got \\'' + $attr.uiScroll + '\\'');\r\n }\r\n\r\n function parseNumber(value, defaultValue, isFloat) {\r\n if (!isFloat) {\r\n value = value === null ? defaultValue : Math.floor(value);\r\n }\r\n return isNaN(value) ? defaultValue : value;\r\n }\r\n\r\n function parseNumericAttr(value, defaultValue, isFloat) {\r\n const result = $parse(value)($scope);\r\n return parseNumber(result, defaultValue, isFloat);\r\n }\r\n\r\n function parseBooleanAttr(value, defaultValue) {\r\n const result = $parse(value)($scope);\r\n return typeof result === 'boolean' ? result : defaultValue;\r\n }\r\n\r\n const BUFFER_MIN = 3;\r\n const BUFFER_DEFAULT = 10;\r\n const PADDING_MIN = 0.3;\r\n const PADDING_DEFAULT = 0.5;\r\n const HANDLE_INERTIA_DEFAULT = true;\r\n const START_INDEX_DEFAULT = 1;\r\n const MAX_VIEWPORT_DELAY = 500;\r\n const VIEWPORT_POLLING_INTERVAL = 50;\r\n\r\n let datasource = null;\r\n const itemName = match[1];\r\n const datasourceName = match[2];\r\n const viewportController = controllers[0];\r\n const bufferSize = Math.max(BUFFER_MIN, parseNumericAttr($attr.bufferSize, BUFFER_DEFAULT));\r\n const padding = Math.max(PADDING_MIN, parseNumericAttr($attr.padding, PADDING_DEFAULT, true));\r\n const handleInertia = parseBooleanAttr($attr.handleInertia, HANDLE_INERTIA_DEFAULT);\r\n let startIndex = parseNumericAttr($attr.startIndex, START_INDEX_DEFAULT);\r\n let ridActual = 0; // current data revision id\r\n let pending = [];\r\n\r\n const elementRoutines = new ElementRoutines($injector, $q);\r\n const buffer = new ScrollBuffer(elementRoutines, bufferSize, startIndex);\r\n const viewport = new Viewport(elementRoutines, buffer, element, viewportController, $rootScope, padding);\r\n const adapter = new Adapter($scope, $parse, $attr, viewport, buffer, doAdjust, reload);\r\n\r\n if (viewportController) {\r\n viewportController.adapter = adapter;\r\n }\r\n\r\n const isDatasourceValid = () =>\r\n Object.prototype.toString.call(datasource) === '[object Object]' && typeof datasource.get === 'function';\r\n\r\n datasource = $parse(datasourceName)($scope); // try to get datasource on scope\r\n if (!isDatasourceValid()) {\r\n datasource = $injector.get(datasourceName); // try to inject datasource as service\r\n if (!isDatasourceValid()) {\r\n throw new Error(datasourceName + ' is not a valid datasource');\r\n }\r\n }\r\n\r\n let onRenderHandlers = [];\r\n function onRenderHandlersRunner() {\r\n onRenderHandlers.forEach(handler => handler.run());\r\n onRenderHandlers = [];\r\n }\r\n function persistDatasourceIndex(datasource, propName) {\r\n let getter;\r\n // need to postpone min/maxIndexUser processing if the view is empty\r\n if (angular.isNumber(datasource[propName])) {\r\n getter = datasource[propName];\r\n if (angular.isNumber(getter)) {\r\n onRenderHandlers = onRenderHandlers.filter(handler => handler.id !== propName);\r\n onRenderHandlers.push({\r\n id: propName,\r\n run: () => datasource[propName] = getter\r\n });\r\n }\r\n }\r\n }\r\n\r\n function defineDatasourceIndex(datasource, propName, propUserName) {\r\n const descriptor = Object.getOwnPropertyDescriptor(datasource, propName);\r\n if (descriptor && (descriptor.set || descriptor.get)) {\r\n return;\r\n }\r\n let getter;\r\n persistDatasourceIndex(datasource, propName);\r\n Object.defineProperty(datasource, propName, {\r\n set: (value) => {\r\n getter = value;\r\n if (pending.length && !buffer.length) {\r\n persistDatasourceIndex(datasource, propName);\r\n return;\r\n }\r\n buffer[propUserName] = value;\r\n const topPaddingHeightOld = viewport.topDataPos();\r\n viewport.adjustPaddings();\r\n if (propName === 'minIndex') {\r\n viewport.onAfterMinIndexSet(topPaddingHeightOld);\r\n }\r\n },\r\n get: () => getter\r\n });\r\n }\r\n\r\n defineDatasourceIndex(datasource, 'minIndex', 'minIndexUser');\r\n defineDatasourceIndex(datasource, 'maxIndex', 'maxIndexUser');\r\n\r\n const fetchNext = (datasource.get.length !== 2) ?\r\n (success) => datasource.get(buffer.next, bufferSize, success) :\r\n (success) => {\r\n datasource.get({\r\n index: buffer.next,\r\n append: buffer.length ? buffer[buffer.length - 1].item : void 0,\r\n count: bufferSize\r\n }, success);\r\n };\r\n\r\n const fetchPrevious = (datasource.get.length !== 2) ?\r\n (success) => datasource.get(buffer.first - bufferSize, bufferSize, success) :\r\n (success) => {\r\n datasource.get({\r\n index: buffer.first - bufferSize,\r\n prepend: buffer.length ? buffer[0].item : void 0,\r\n count: bufferSize\r\n }, success);\r\n };\r\n\r\n const initialize = () => {\r\n let tryCount = 0;\r\n if (!viewport.applyContainerStyle()) {\r\n const timer = $interval(() => {\r\n tryCount++;\r\n if (viewport.applyContainerStyle()) {\r\n $interval.cancel(timer);\r\n doAdjust();\r\n }\r\n if (tryCount * VIEWPORT_POLLING_INTERVAL >= MAX_VIEWPORT_DELAY) {\r\n $interval.cancel(timer);\r\n throw Error(`ui-scroll directive requires a viewport with non-zero height in ${MAX_VIEWPORT_DELAY}ms`);\r\n }\r\n }, VIEWPORT_POLLING_INTERVAL);\r\n }\r\n else {\r\n doAdjust();\r\n }\r\n };\r\n\r\n /**\r\n * Build padding elements\r\n *\r\n * Calling linker is the only way I found to get access to the tag name of the template\r\n * to prevent the directive scope from pollution a new scope is created and destroyed\r\n * right after the builder creation is completed\r\n */\r\n linker((clone, scope) => {\r\n viewport.createPaddingElements(clone[0]);\r\n // we do not include the clone in the DOM. It means that the nested directives will not\r\n // be able to reach the parent directives, but in this case it is intentional because we\r\n // created the clone to access the template tag name\r\n scope.$destroy();\r\n clone.remove();\r\n });\r\n\r\n $scope.$on('$destroy', () => {\r\n unbindEvents();\r\n viewport.off('mousewheel', wheelHandler);\r\n });\r\n\r\n viewport.on('mousewheel', wheelHandler);\r\n\r\n initialize();\r\n\r\n /* Private function definitions */\r\n\r\n function isInvalid(rid) {\r\n return (rid && rid !== ridActual) || $scope.$$destroyed;\r\n }\r\n\r\n function bindEvents() {\r\n viewport.on('resize', resizeAndScrollHandler);\r\n viewport.on('scroll', resizeAndScrollHandler);\r\n }\r\n\r\n function unbindEvents() {\r\n viewport.off('resize', resizeAndScrollHandler);\r\n viewport.off('scroll', resizeAndScrollHandler);\r\n }\r\n\r\n function reload() {\r\n unbindEvents();\r\n viewport.resetTopPadding();\r\n viewport.resetBottomPadding();\r\n if (arguments.length) {\r\n startIndex = parseNumber(arguments[0], START_INDEX_DEFAULT, false);\r\n }\r\n buffer.reset(startIndex);\r\n persistDatasourceIndex(datasource, 'minIndex');\r\n persistDatasourceIndex(datasource, 'maxIndex');\r\n doAdjust();\r\n }\r\n\r\n function isElementVisible(wrapper) {\r\n return wrapper.element.height() && wrapper.element[0].offsetParent;\r\n }\r\n\r\n function visibilityWatcher(wrapper) {\r\n if (isElementVisible(wrapper)) {\r\n buffer.forEach((item) => {\r\n if (typeof item.unregisterVisibilityWatcher === 'function') {\r\n item.unregisterVisibilityWatcher();\r\n delete item.unregisterVisibilityWatcher;\r\n }\r\n });\r\n if (!pending.length) {\r\n $timeout(() => doAdjust());\r\n }\r\n }\r\n }\r\n\r\n function insertWrapperContent(wrapper, insertAfter) {\r\n createElement(wrapper, insertAfter, viewport.insertElement);\r\n if (!isElementVisible(wrapper)) {\r\n wrapper.unregisterVisibilityWatcher = wrapper.scope.$watch(() => visibilityWatcher(wrapper));\r\n }\r\n elementRoutines.hideElement(wrapper); // hide inserted elements before data binding\r\n }\r\n\r\n function createElement(wrapper, insertAfter, insertElement) {\r\n let promises = null;\r\n const sibling = (insertAfter > 0) ? buffer[insertAfter - 1].element : undefined;\r\n linker((clone, scope) => {\r\n promises = insertElement(clone, sibling);\r\n wrapper.element = clone;\r\n wrapper.scope = scope;\r\n scope[itemName] = wrapper.item;\r\n });\r\n // ui-scroll-grid apply\r\n if (adapter.transform) {\r\n const tdInitializer = wrapper.scope.uiScrollTdInitializer;\r\n if (tdInitializer && tdInitializer.linking) {\r\n adapter.transform(wrapper.scope, wrapper.element);\r\n } else {\r\n wrapper.scope.uiScrollTdInitializer = {\r\n onLink: () => adapter.transform(wrapper.scope, wrapper.element),\r\n scope: wrapper.scope\r\n };\r\n }\r\n }\r\n return promises;\r\n }\r\n\r\n function updateDOM() {\r\n let promises = [];\r\n const toBePrepended = [];\r\n const toBeRemoved = [];\r\n const inserted = [];\r\n\r\n buffer.forEach((wrapper, i) => {\r\n switch (wrapper.op) {\r\n case OPERATIONS.PREPEND:\r\n toBePrepended.unshift(wrapper);\r\n break;\r\n case OPERATIONS.APPEND:\r\n insertWrapperContent(wrapper, i);\r\n wrapper.op = OPERATIONS.NONE;\r\n inserted.push(wrapper);\r\n break;\r\n case OPERATIONS.INSERT:\r\n promises = promises.concat(createElement(wrapper, i, viewport.insertElementAnimated));\r\n wrapper.op = OPERATIONS.NONE;\r\n inserted.push(wrapper);\r\n break;\r\n case OPERATIONS.REMOVE:\r\n toBeRemoved.push(wrapper);\r\n }\r\n });\r\n\r\n toBeRemoved.forEach((wrapper) => promises = promises.concat(viewport.removeItem(wrapper)));\r\n\r\n if (toBePrepended.length)\r\n toBePrepended.forEach((wrapper) => {\r\n insertWrapperContent(wrapper);\r\n wrapper.op = OPERATIONS.NONE;\r\n });\r\n\r\n buffer.forEach((item, i) => item.scope.$index = buffer.first + i);\r\n\r\n return {\r\n prepended: toBePrepended,\r\n removed: toBeRemoved,\r\n inserted: inserted,\r\n animated: promises\r\n };\r\n\r\n }\r\n\r\n function updatePaddings(rid, updates) {\r\n // schedule another doAdjust after animation completion\r\n if (updates.animated.length) {\r\n $q.all(updates.animated).then(() => {\r\n viewport.adjustPaddings();\r\n doAdjust(rid);\r\n });\r\n } else {\r\n viewport.adjustPaddings();\r\n }\r\n }\r\n\r\n function enqueueFetch(rid, updates) {\r\n if (viewport.shouldLoadBottom()) {\r\n if (!updates || buffer.effectiveHeight(updates.inserted) > 0) {\r\n // this means that at least one item appended in the last batch has height > 0\r\n if (pending.push(true) === 1) {\r\n adapter.loading(true);\r\n fetch(rid);\r\n }\r\n }\r\n } else if (viewport.shouldLoadTop()) {\r\n if ((!updates || buffer.effectiveHeight(updates.prepended) > 0) || pending[0]) {\r\n // this means that at least one item appended in the last batch has height > 0\r\n // pending[0] = true means that previous fetch was appending. We need to force at least one prepend\r\n // BTW there will always be at least 1 element in the pending array because bottom is fetched first\r\n if (pending.push(false) === 1) {\r\n adapter.loading(true);\r\n fetch(rid);\r\n }\r\n }\r\n }\r\n }\r\n\r\n function processUpdates() {\r\n const updates = updateDOM();\r\n\r\n // We need the item bindings to be processed before we can do adjustments\r\n !$scope.$$phase && !$rootScope.$$phase && $scope.$digest();\r\n\r\n updates.inserted.forEach(w => elementRoutines.showElement(w));\r\n updates.prepended.forEach(w => elementRoutines.showElement(w));\r\n return updates;\r\n }\r\n\r\n function doAdjust(rid) {\r\n if (!rid) { // dismiss pending requests\r\n pending = [];\r\n rid = ++ridActual;\r\n }\r\n\r\n const updates = processUpdates();\r\n\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n updatePaddings(rid, updates);\r\n enqueueFetch(rid);\r\n\r\n if (!pending.length) {\r\n adapter.calculateProperties();\r\n }\r\n }\r\n\r\n function doAdjustAfterFetch(rid) {\r\n const updates = processUpdates();\r\n\r\n viewport.onAfterPrepend(updates);\r\n\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n updatePaddings(rid, updates);\r\n onRenderHandlersRunner();\r\n enqueueFetch(rid, updates);\r\n pending.shift();\r\n\r\n if (pending.length)\r\n fetch(rid);\r\n else {\r\n adapter.loading(false);\r\n bindEvents();\r\n adapter.calculateProperties();\r\n }\r\n }\r\n\r\n function fetch(rid) {\r\n if (pending[0]) {// scrolling down\r\n if (buffer.length && !viewport.shouldLoadBottom()) {\r\n doAdjustAfterFetch(rid);\r\n } else {\r\n fetchNext((result) => {\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n if (result.length < bufferSize) {\r\n buffer.eof = true;\r\n }\r\n\r\n if (result.length > 0) {\r\n viewport.clipTop();\r\n buffer.append(result);\r\n }\r\n\r\n doAdjustAfterFetch(rid);\r\n });\r\n }\r\n } else { // scrolling up\r\n if (buffer.length && !viewport.shouldLoadTop()) {\r\n doAdjustAfterFetch(rid);\r\n } else {\r\n fetchPrevious((result) => {\r\n if (isInvalid(rid)) {\r\n return;\r\n }\r\n\r\n if (result.length < bufferSize) {\r\n buffer.bof = true;\r\n // log 'bof is reached'\r\n }\r\n\r\n if (result.length > 0) {\r\n if (buffer.length) {\r\n viewport.clipBottom();\r\n }\r\n buffer.prepend(result);\r\n }\r\n\r\n doAdjustAfterFetch(rid);\r\n });\r\n }\r\n }\r\n }\r\n\r\n function fixInertia() {\r\n if (!viewport.synthetic) {\r\n return;\r\n }\r\n const oldPosition = viewport.synthetic.previous;\r\n const newPosition = viewport.synthetic.next;\r\n if (viewport.scrollTop() !== newPosition) {\r\n requestAnimationFrame(() => {\r\n const position = viewport.scrollTop();\r\n const diff = oldPosition - position;\r\n if (diff > 0) { // inertia over synthetic\r\n viewport.scrollTop(newPosition - diff);\r\n } else {\r\n viewport.scrollTop(newPosition);\r\n }\r\n viewport.synthetic = null;\r\n });\r\n return true;\r\n }\r\n viewport.synthetic = null;\r\n }\r\n\r\n function resizeAndScrollHandler() {\r\n if (handleInertia && fixInertia()) {\r\n return;\r\n }\r\n if (!$rootScope.$$phase && !adapter.isLoading && !adapter.disabled) {\r\n\r\n enqueueFetch(ridActual);\r\n\r\n if (pending.length) {\r\n unbindEvents();\r\n } else {\r\n adapter.calculateProperties();\r\n !$scope.$$phase && $scope.$digest();\r\n }\r\n }\r\n }\r\n\r\n function wheelHandler(event) {\r\n if (!adapter.disabled) {\r\n const scrollTop = viewport[0].scrollTop;\r\n const yMax = viewport[0].scrollHeight - viewport[0].clientHeight;\r\n\r\n if ((scrollTop === 0 && !buffer.bof) || (scrollTop === yMax && !buffer.eof)) {\r\n event.preventDefault();\r\n }\r\n }\r\n }\r\n }\r\n\r\n }\r\n ]);\r\n"],"names":["JQLiteExtras","_classCallCheck","key","value","element","convertToPx","css","getStyle","isWindow","scrollTo","self","direction","elem","_top$left$direction","_slicedToArray","top","left","method","prop","preserve","isValueDefined","call","document","documentElement","getWidthHeight","measure","result","measurements","base","borderA","borderB","computedMarginA","computedMarginB","computedStyle","dirA","dirB","paddingA","paddingB","height","width","padding","border","margin","_width$height$measure","offsetWidth","offsetHeight","getMeasurements","outer","outerfull","style","parseFloat","angular","prototype","name","this","nodeType","obj","location","alert","setInterval","window","getComputedStyle","currentStyle","rs","rsLeft","RegExp","source","test","runtimeStyle","pixelLeft","forEach","before","newElem","children","i","j","parent","ref","contents","prepend","length","after","Error","outerHTML","isNumber","outerHeight","option","outerWidth","offset","docElem","win","box","doc","ownerDocument","arguments","undefined","getBoundingClientRect","defaultView","parentWindow","pageYOffset","scrollTop","clientTop","pageXOffset","scrollLeft","clientLeft","hideClassToken","ElementRoutines","$injector","$q","$animate","has","get","isAngularVersionLessThen1_3","version","major","minor","index","selector","rules","sheet","styleSheets","cssRules","err","insertRule","addRule","wrapper","addClass","removeClass","newElement","previousElement","remove","scope","$destroy","insertElement","deferred","defer","enter","resolve","promise","removeElement","leave","then","OPERATIONS","PREPEND","APPEND","INSERT","REMOVE","NONE","ScrollBuffer","elementRoutines","bufferSize","startIndex","buffer","Object","create","Array","extend","size","reset","eof","bof","first","next","minIndex","maxIndex","minIndexUser","maxIndexUser","append","items","item","insert","Math","max","immutableTop","reverse","min","operation","shiftTop","op","splice","push","unshift","arg1","arg2","indexOf","getAbsMinIndex","incrementMinIndex","decrementMaxIndex","removeElementAnimated","getAbsMaxIndex","effectiveHeight","elements","Number","MAX_VALUE","bottom","NEGATIVE_INFINITY","offsetParent","getItems","filter","getFirstItem","list","getLastItem","CacheProto","_createClass","$index","sort","a","b","argument","_shiftTop","Cache","instance","apply","setPrototypeOf","getOwnPropertyNames","methodName","Padding","template","Node","ELEMENT_NODE","tagName","toLowerCase","concat","find","generateElement","cache","Viewport","viewportController","$rootScope","topPadding","bottomPadding","viewport","container","bufferPadding","getScope","createPaddingElements","applyContainerStyle","bottomDataPos","scrollHeight","topDataPos","bottomVisiblePos","topVisiblePos","e","sibling","insertElementAnimated","shouldLoadBottom","clipBottom","overage","overageHeight","itemHeight","emptySpaceHeight","add","adjustPaddings","shouldLoadTop","clipTop","visibleItemsHeight","reduce","summ","topPaddingHeight","topCount","bottomPaddingHeight","bottomCount","averageItemHeight","adjustTopPadding","adjustBottomPadding","topPaddingHeightAdd","bottomPaddingHeightAdd","onAfterMinIndexSet","topPaddingHeightOld","diff","onAfterPrepend","updates","prepended","paddingHeight","position","newPosition","synthetic","previous","resetTopPadding","clear","resetBottomPadding","removeCacheItem","removeItem","Adapter","$scope","$parse","$attr","doAdjust","reload","isLoading","disabled","viewportScope","startScope","$parent","publicContext","assignAdapter","adapter","generatePublicContext","adapterAttr","replace","adapterOnScope","assign","error","message","_this","publicMethods","bind","publicProps","_loop","_i","property","attr","defineProperty","set","publicPropsImmediate","_loop2","_i2","newItems","options","arg3","applyUpdatesFunc","applyUpdatesIndex","cb","_this2","slice","applyUpdate","_index","isArray","_this3","some","newItem","rowTop","topHeight","topDone","bottomDone","itemTop","isEOF","module","constant","run","elt","jQuery","fn","jquery","registerFor","addCSSRules","directive","restrict","controller","child","console","$timeout","$interval","require","transclude","priority","terminal","link","controllers","linker","match","uiScroll","parseNumber","defaultValue","isFloat","floor","isNaN","parseNumericAttr","datasource","itemName","datasourceName","handleInertia","ridActual","pending","unbindEvents","persistDatasourceIndex","isDatasourceValid","toString","onRenderHandlers","propName","getter","handler","id","defineDatasourceIndex","propUserName","descriptor","getOwnPropertyDescriptor","fetchNext","success","count","fetchPrevious","isInvalid","rid","$$destroyed","off","resizeAndScrollHandler","isElementVisible","insertWrapperContent","insertAfter","createElement","unregisterVisibilityWatcher","$watch","visibilityWatcher","hideElement","promises","clone","transform","tdInitializer","uiScrollTdInitializer","linking","onLink","updatePaddings","animated","all","enqueueFetch","inserted","loading","fetch","processUpdates","toBePrepended","toBeRemoved","removed","$$phase","$digest","w","showElement","calculateProperties","doAdjustAfterFetch","shift","on","oldPosition","requestAnimationFrame","fixInertia","wheelHandler","event","yMax","clientHeight","preventDefault","$on","tryCount","timer","cancel","initialize"],"sourceRoot":""}
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index 107c1b28..a3ca3f07 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,2163 +1,2960 @@
{
"name": "angular-ui-scroll",
- "version": "1.8.1",
- "lockfileVersion": 1,
+ "version": "1.9.0",
+ "lockfileVersion": 3,
"requires": true,
- "dependencies": {
- "@babel/code-frame": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz",
- "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==",
- "dev": true,
- "requires": {
- "@babel/highlight": "^7.0.0"
+ "packages": {
+ "": {
+ "name": "angular-ui-scroll",
+ "version": "1.9.0",
+ "license": "MIT",
+ "devDependencies": {
+ "@babel/core": "^7.21.4",
+ "@babel/preset-env": "^7.21.4",
+ "babel-loader": "^9.1.2",
+ "clean-webpack-plugin": "^4.0.0",
+ "copy-webpack-plugin": "^11.0.0",
+ "jasmine-core": "^4.6.0",
+ "jshint": "^2.13.6",
+ "karma": "^6.4.1",
+ "karma-chrome-launcher": "^3.1.1",
+ "karma-firefox-launcher": "^2.1.2",
+ "karma-jasmine": "^5.1.0",
+ "karma-sourcemap-loader": "^0.4.0",
+ "karma-webpack": "^5.0.0",
+ "npm-run-all": "^4.1.5",
+ "puppeteer": "^19.9.1",
+ "terser-webpack-plugin": "^5.3.7",
+ "webpack": "^5.79.0",
+ "webpack-cli": "^5.0.1",
+ "webpack-dev-server": "^4.13.3"
+ },
+ "peerDependencies": {
+ "angular": ">=1.2.0"
}
},
- "@babel/core": {
- "version": "7.3.3",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.3.3.tgz",
- "integrity": "sha512-w445QGI2qd0E0GlSnq6huRZWPMmQGCp5gd5ZWS4hagn0EiwzxD5QMFkpchyusAyVC1n27OKXzQ0/88aVU9n4xQ==",
+ "node_modules/@ampproject/remapping": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz",
+ "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==",
"dev": true,
- "requires": {
- "@babel/code-frame": "^7.0.0",
- "@babel/generator": "^7.3.3",
- "@babel/helpers": "^7.2.0",
- "@babel/parser": "^7.3.3",
- "@babel/template": "^7.2.2",
- "@babel/traverse": "^7.2.2",
- "@babel/types": "^7.3.3",
- "convert-source-map": "^1.1.0",
- "debug": "^4.1.0",
- "json5": "^2.1.0",
- "lodash": "^4.17.11",
- "resolve": "^1.3.2",
- "semver": "^5.4.1",
- "source-map": "^0.5.0"
+ "dependencies": {
+ "@jridgewell/gen-mapping": "^0.3.0",
+ "@jridgewell/trace-mapping": "^0.3.9"
+ },
+ "engines": {
+ "node": ">=6.0.0"
}
},
- "@babel/generator": {
- "version": "7.3.3",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.3.3.tgz",
- "integrity": "sha512-aEADYwRRZjJyMnKN7llGIlircxTCofm3dtV5pmY6ob18MSIuipHpA2yZWkPlycwu5HJcx/pADS3zssd8eY7/6A==",
+ "node_modules/@babel/code-frame": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz",
+ "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==",
"dev": true,
- "requires": {
- "@babel/types": "^7.3.3",
- "jsesc": "^2.5.1",
- "lodash": "^4.17.11",
- "source-map": "^0.5.0",
- "trim-right": "^1.0.1"
+ "dependencies": {
+ "@babel/highlight": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-annotate-as-pure": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz",
- "integrity": "sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q==",
+ "node_modules/@babel/compat-data": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.4.tgz",
+ "integrity": "sha512-/DYyDpeCfaVinT40FPGdkkb+lYSKvsVuMjDAG7jPOWWiM1ibOaB9CXJAlc4d1QpP/U2q2P9jbrSlClKSErd55g==",
"dev": true,
- "requires": {
- "@babel/types": "^7.0.0"
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-builder-binary-assignment-operator-visitor": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz",
- "integrity": "sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w==",
+ "node_modules/@babel/core": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.4.tgz",
+ "integrity": "sha512-qt/YV149Jman/6AfmlxJ04LMIu8bMoyl3RB91yTFrxQmgbrSvQMy7cI8Q62FHx1t8wJ8B5fu0UDoLwHAhUo1QA==",
"dev": true,
- "requires": {
- "@babel/helper-explode-assignable-expression": "^7.1.0",
- "@babel/types": "^7.0.0"
+ "dependencies": {
+ "@ampproject/remapping": "^2.2.0",
+ "@babel/code-frame": "^7.21.4",
+ "@babel/generator": "^7.21.4",
+ "@babel/helper-compilation-targets": "^7.21.4",
+ "@babel/helper-module-transforms": "^7.21.2",
+ "@babel/helpers": "^7.21.0",
+ "@babel/parser": "^7.21.4",
+ "@babel/template": "^7.20.7",
+ "@babel/traverse": "^7.21.4",
+ "@babel/types": "^7.21.4",
+ "convert-source-map": "^1.7.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.2",
+ "semver": "^6.3.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/babel"
}
},
- "@babel/helper-call-delegate": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.1.0.tgz",
- "integrity": "sha512-YEtYZrw3GUK6emQHKthltKNZwszBcHK58Ygcis+gVUrF4/FmTVr5CCqQNSfmvg2y+YDEANyYoaLz/SHsnusCwQ==",
+ "node_modules/@babel/generator": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.4.tgz",
+ "integrity": "sha512-NieM3pVIYW2SwGzKoqfPrQsf4xGs9M9AIG3ThppsSRmO+m7eQhmI6amajKMUeIO37wFfsvnvcxQFx6x6iqxDnA==",
"dev": true,
- "requires": {
- "@babel/helper-hoist-variables": "^7.0.0",
- "@babel/traverse": "^7.1.0",
- "@babel/types": "^7.0.0"
+ "dependencies": {
+ "@babel/types": "^7.21.4",
+ "@jridgewell/gen-mapping": "^0.3.2",
+ "@jridgewell/trace-mapping": "^0.3.17",
+ "jsesc": "^2.5.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-create-regexp-features-plugin": {
- "version": "7.8.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.8.tgz",
- "integrity": "sha512-LYVPdwkrQEiX9+1R29Ld/wTrmQu1SSKYnuOk3g0CkcZMA1p0gsNxJFj/3gBdaJ7Cg0Fnek5z0DsMULePP7Lrqg==",
+ "node_modules/@babel/helper-annotate-as-pure": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz",
+ "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==",
"dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.8.3",
- "@babel/helper-regex": "^7.8.3",
- "regexpu-core": "^4.7.0"
- },
"dependencies": {
- "@babel/helper-annotate-as-pure": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz",
- "integrity": "sha512-6o+mJrZBxOoEX77Ezv9zwW7WV8DdluouRKNY/IR5u/YTMuKHgugHOzYWlYvYLpLA9nPsQCAAASpCIbjI9Mv+Uw==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.8.3"
- }
- },
- "@babel/helper-regex": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.8.3.tgz",
- "integrity": "sha512-BWt0QtYv/cg/NecOAZMdcn/waj/5P26DR4mVLXfFtDokSR6fyuG0Pj+e2FqtSME+MqED1khnSMulkmGl8qWiUQ==",
- "dev": true,
- "requires": {
- "lodash": "^4.17.13"
- }
- },
- "@babel/types": {
- "version": "7.9.6",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.6.tgz",
- "integrity": "sha512-qxXzvBO//jO9ZnoasKF1uJzHd2+M6Q2ZPIVfnFps8JJvXy0ZBbwbNOmE6SGIY5XOY6d1Bo5lb9d9RJ8nv3WSeA==",
- "dev": true,
- "requires": {
- "@babel/helper-validator-identifier": "^7.9.5",
- "lodash": "^4.17.13",
- "to-fast-properties": "^2.0.0"
- }
- },
- "jsesc": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
- "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
- "dev": true
- },
- "regenerate-unicode-properties": {
- "version": "8.2.0",
- "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz",
- "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==",
- "dev": true,
- "requires": {
- "regenerate": "^1.4.0"
- }
- },
- "regexpu-core": {
- "version": "4.7.0",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz",
- "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==",
- "dev": true,
- "requires": {
- "regenerate": "^1.4.0",
- "regenerate-unicode-properties": "^8.2.0",
- "regjsgen": "^0.5.1",
- "regjsparser": "^0.6.4",
- "unicode-match-property-ecmascript": "^1.0.4",
- "unicode-match-property-value-ecmascript": "^1.2.0"
- }
- },
- "regjsgen": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz",
- "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==",
- "dev": true
- },
- "regjsparser": {
- "version": "0.6.4",
- "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz",
- "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==",
- "dev": true,
- "requires": {
- "jsesc": "~0.5.0"
- }
- },
- "unicode-match-property-value-ecmascript": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz",
- "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==",
- "dev": true
- }
+ "@babel/types": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-define-map": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.1.0.tgz",
- "integrity": "sha512-yPPcW8dc3gZLN+U1mhYV91QU3n5uTbx7DUdf8NnPbjS0RMwBuHi9Xt2MUgppmNz7CJxTBWsGczTiEp1CSOTPRg==",
+ "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": {
+ "version": "7.18.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz",
+ "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==",
"dev": true,
- "requires": {
- "@babel/helper-function-name": "^7.1.0",
- "@babel/types": "^7.0.0",
- "lodash": "^4.17.10"
+ "dependencies": {
+ "@babel/helper-explode-assignable-expression": "^7.18.6",
+ "@babel/types": "^7.18.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-explode-assignable-expression": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz",
- "integrity": "sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA==",
+ "node_modules/@babel/helper-compilation-targets": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.4.tgz",
+ "integrity": "sha512-Fa0tTuOXZ1iL8IeDFUWCzjZcn+sJGd9RZdH9esYVjEejGmzf+FFYQpMi/kZUk2kPy/q1H3/GPw7np8qar/stfg==",
"dev": true,
- "requires": {
- "@babel/traverse": "^7.1.0",
- "@babel/types": "^7.0.0"
+ "dependencies": {
+ "@babel/compat-data": "^7.21.4",
+ "@babel/helper-validator-option": "^7.21.0",
+ "browserslist": "^4.21.3",
+ "lru-cache": "^5.1.1",
+ "semver": "^6.3.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
}
},
- "@babel/helper-function-name": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz",
- "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==",
+ "node_modules/@babel/helper-create-class-features-plugin": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.4.tgz",
+ "integrity": "sha512-46QrX2CQlaFRF4TkwfTt6nJD7IHq8539cCL7SDpqWSDeJKY1xylKKY5F/33mJhLZ3mFvKv2gGrVS6NkyF6qs+Q==",
"dev": true,
- "requires": {
- "@babel/helper-get-function-arity": "^7.0.0",
- "@babel/template": "^7.1.0",
- "@babel/types": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-annotate-as-pure": "^7.18.6",
+ "@babel/helper-environment-visitor": "^7.18.9",
+ "@babel/helper-function-name": "^7.21.0",
+ "@babel/helper-member-expression-to-functions": "^7.21.0",
+ "@babel/helper-optimise-call-expression": "^7.18.6",
+ "@babel/helper-replace-supers": "^7.20.7",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0",
+ "@babel/helper-split-export-declaration": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
}
},
- "@babel/helper-get-function-arity": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz",
- "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==",
+ "node_modules/@babel/helper-create-regexp-features-plugin": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.4.tgz",
+ "integrity": "sha512-M00OuhU+0GyZ5iBBN9czjugzWrEq2vDpf/zCYHxxf93ul/Q5rv+a5h+/+0WnI1AebHNVtl5bFV0qsJoH23DbfA==",
"dev": true,
- "requires": {
- "@babel/types": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-annotate-as-pure": "^7.18.6",
+ "regexpu-core": "^5.3.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
}
},
- "@babel/helper-hoist-variables": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.0.0.tgz",
- "integrity": "sha512-Ggv5sldXUeSKsuzLkddtyhyHe2YantsxWKNi7A+7LeD12ExRDWTRk29JCXpaHPAbMaIPZSil7n+lq78WY2VY7w==",
+ "node_modules/@babel/helper-define-polyfill-provider": {
+ "version": "0.3.3",
+ "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz",
+ "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==",
"dev": true,
- "requires": {
- "@babel/types": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-compilation-targets": "^7.17.7",
+ "@babel/helper-plugin-utils": "^7.16.7",
+ "debug": "^4.1.1",
+ "lodash.debounce": "^4.0.8",
+ "resolve": "^1.14.2",
+ "semver": "^6.1.2"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.4.0-0"
}
},
- "@babel/helper-member-expression-to-functions": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0.tgz",
- "integrity": "sha512-avo+lm/QmZlv27Zsi0xEor2fKcqWG56D5ae9dzklpIaY7cQMK5N8VSpaNVPPagiqmy7LrEjK1IWdGMOqPu5csg==",
+ "node_modules/@babel/helper-environment-visitor": {
+ "version": "7.18.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz",
+ "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==",
"dev": true,
- "requires": {
- "@babel/types": "^7.0.0"
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-module-imports": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz",
- "integrity": "sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A==",
+ "node_modules/@babel/helper-explode-assignable-expression": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz",
+ "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==",
"dev": true,
- "requires": {
- "@babel/types": "^7.0.0"
+ "dependencies": {
+ "@babel/types": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-module-transforms": {
- "version": "7.2.2",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.2.2.tgz",
- "integrity": "sha512-YRD7I6Wsv+IHuTPkAmAS4HhY0dkPobgLftHp0cRGZSdrRvmZY8rFvae/GVu3bD00qscuvK3WPHB3YdNpBXUqrA==",
+ "node_modules/@babel/helper-function-name": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz",
+ "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==",
"dev": true,
- "requires": {
- "@babel/helper-module-imports": "^7.0.0",
- "@babel/helper-simple-access": "^7.1.0",
- "@babel/helper-split-export-declaration": "^7.0.0",
- "@babel/template": "^7.2.2",
- "@babel/types": "^7.2.2",
- "lodash": "^4.17.10"
+ "dependencies": {
+ "@babel/template": "^7.20.7",
+ "@babel/types": "^7.21.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-optimise-call-expression": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz",
- "integrity": "sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g==",
+ "node_modules/@babel/helper-hoist-variables": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz",
+ "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==",
"dev": true,
- "requires": {
- "@babel/types": "^7.0.0"
+ "dependencies": {
+ "@babel/types": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-plugin-utils": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz",
- "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==",
- "dev": true
- },
- "@babel/helper-regex": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.0.0.tgz",
- "integrity": "sha512-TR0/N0NDCcUIUEbqV6dCO+LptmmSQFQ7q70lfcEB4URsjD0E1HzicrwUH+ap6BAQ2jhCX9Q4UqZy4wilujWlkg==",
+ "node_modules/@babel/helper-member-expression-to-functions": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz",
+ "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==",
"dev": true,
- "requires": {
- "lodash": "^4.17.10"
+ "dependencies": {
+ "@babel/types": "^7.21.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-remap-async-to-generator": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz",
- "integrity": "sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg==",
+ "node_modules/@babel/helper-module-imports": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz",
+ "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==",
"dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.0.0",
- "@babel/helper-wrap-function": "^7.1.0",
- "@babel/template": "^7.1.0",
- "@babel/traverse": "^7.1.0",
- "@babel/types": "^7.0.0"
+ "dependencies": {
+ "@babel/types": "^7.21.4"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-replace-supers": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.2.3.tgz",
- "integrity": "sha512-GyieIznGUfPXPWu0yLS6U55Mz67AZD9cUk0BfirOWlPrXlBcan9Gz+vHGz+cPfuoweZSnPzPIm67VtQM0OWZbA==",
+ "node_modules/@babel/helper-module-transforms": {
+ "version": "7.21.2",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz",
+ "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==",
"dev": true,
- "requires": {
- "@babel/helper-member-expression-to-functions": "^7.0.0",
- "@babel/helper-optimise-call-expression": "^7.0.0",
- "@babel/traverse": "^7.2.3",
- "@babel/types": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-environment-visitor": "^7.18.9",
+ "@babel/helper-module-imports": "^7.18.6",
+ "@babel/helper-simple-access": "^7.20.2",
+ "@babel/helper-split-export-declaration": "^7.18.6",
+ "@babel/helper-validator-identifier": "^7.19.1",
+ "@babel/template": "^7.20.7",
+ "@babel/traverse": "^7.21.2",
+ "@babel/types": "^7.21.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-simple-access": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz",
- "integrity": "sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w==",
+ "node_modules/@babel/helper-optimise-call-expression": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz",
+ "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==",
"dev": true,
- "requires": {
- "@babel/template": "^7.1.0",
- "@babel/types": "^7.0.0"
+ "dependencies": {
+ "@babel/types": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-split-export-declaration": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz",
- "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==",
+ "node_modules/@babel/helper-plugin-utils": {
+ "version": "7.20.2",
+ "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz",
+ "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==",
"dev": true,
- "requires": {
- "@babel/types": "^7.0.0"
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-validator-identifier": {
- "version": "7.9.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz",
- "integrity": "sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==",
- "dev": true
- },
- "@babel/helper-wrap-function": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz",
- "integrity": "sha512-o9fP1BZLLSrYlxYEYyl2aS+Flun5gtjTIG8iln+XuEzQTs0PLagAGSXUcqruJwD5fM48jzIEggCKpIfWTcR7pQ==",
+ "node_modules/@babel/helper-remap-async-to-generator": {
+ "version": "7.18.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz",
+ "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==",
"dev": true,
- "requires": {
- "@babel/helper-function-name": "^7.1.0",
- "@babel/template": "^7.1.0",
- "@babel/traverse": "^7.1.0",
- "@babel/types": "^7.2.0"
+ "dependencies": {
+ "@babel/helper-annotate-as-pure": "^7.18.6",
+ "@babel/helper-environment-visitor": "^7.18.9",
+ "@babel/helper-wrap-function": "^7.18.9",
+ "@babel/types": "^7.18.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
}
},
- "@babel/helpers": {
- "version": "7.3.1",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.3.1.tgz",
- "integrity": "sha512-Q82R3jKsVpUV99mgX50gOPCWwco9Ec5Iln/8Vyu4osNIOQgSrd9RFrQeUvmvddFNoLwMyOUWU+5ckioEKpDoGA==",
+ "node_modules/@babel/helper-replace-supers": {
+ "version": "7.20.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz",
+ "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==",
"dev": true,
- "requires": {
- "@babel/template": "^7.1.2",
- "@babel/traverse": "^7.1.5",
- "@babel/types": "^7.3.0"
+ "dependencies": {
+ "@babel/helper-environment-visitor": "^7.18.9",
+ "@babel/helper-member-expression-to-functions": "^7.20.7",
+ "@babel/helper-optimise-call-expression": "^7.18.6",
+ "@babel/template": "^7.20.7",
+ "@babel/traverse": "^7.20.7",
+ "@babel/types": "^7.20.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/highlight": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz",
- "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==",
+ "node_modules/@babel/helper-simple-access": {
+ "version": "7.20.2",
+ "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz",
+ "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==",
"dev": true,
- "requires": {
- "chalk": "^2.0.0",
- "esutils": "^2.0.2",
- "js-tokens": "^4.0.0"
+ "dependencies": {
+ "@babel/types": "^7.20.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/parser": {
- "version": "7.3.3",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.3.3.tgz",
- "integrity": "sha512-xsH1CJoln2r74hR+y7cg2B5JCPaTh+Hd+EbBRk9nWGSNspuo6krjhX0Om6RnRQuIvFq8wVXCLKH3kwKDYhanSg==",
- "dev": true
- },
- "@babel/plugin-proposal-async-generator-functions": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz",
- "integrity": "sha512-+Dfo/SCQqrwx48ptLVGLdE39YtWRuKc/Y9I5Fy0P1DDBB9lsAHpjcEJQt+4IifuSOSTLBKJObJqMvaO1pIE8LQ==",
+ "node_modules/@babel/helper-skip-transparent-expression-wrappers": {
+ "version": "7.20.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz",
+ "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/helper-remap-async-to-generator": "^7.1.0",
- "@babel/plugin-syntax-async-generators": "^7.2.0"
+ "dependencies": {
+ "@babel/types": "^7.20.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/plugin-proposal-json-strings": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz",
- "integrity": "sha512-MAFV1CA/YVmYwZG0fBQyXhmj0BHCB5egZHCKWIFVv/XCxAeVGIHfos3SwDck4LvCllENIAg7xMKOG5kH0dzyUg==",
+ "node_modules/@babel/helper-split-export-declaration": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz",
+ "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/plugin-syntax-json-strings": "^7.2.0"
+ "dependencies": {
+ "@babel/types": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/plugin-proposal-object-rest-spread": {
- "version": "7.3.2",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.3.2.tgz",
- "integrity": "sha512-DjeMS+J2+lpANkYLLO+m6GjoTMygYglKmRe6cDTbFv3L9i6mmiE8fe6B8MtCSLZpVXscD5kn7s6SgtHrDoBWoA==",
+ "node_modules/@babel/helper-string-parser": {
+ "version": "7.19.4",
+ "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz",
+ "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/plugin-syntax-object-rest-spread": "^7.2.0"
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/plugin-proposal-optional-catch-binding": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz",
- "integrity": "sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g==",
+ "node_modules/@babel/helper-validator-identifier": {
+ "version": "7.19.1",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz",
+ "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/plugin-syntax-optional-catch-binding": "^7.2.0"
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/plugin-proposal-unicode-property-regex": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.2.0.tgz",
- "integrity": "sha512-LvRVYb7kikuOtIoUeWTkOxQEV1kYvL5B6U3iWEGCzPNRus1MzJweFqORTj+0jkxozkTSYNJozPOddxmqdqsRpw==",
+ "node_modules/@babel/helper-validator-option": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz",
+ "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/helper-regex": "^7.0.0",
- "regexpu-core": "^4.2.0"
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/plugin-syntax-async-generators": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz",
- "integrity": "sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg==",
+ "node_modules/@babel/helper-wrap-function": {
+ "version": "7.20.5",
+ "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz",
+ "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-function-name": "^7.19.0",
+ "@babel/template": "^7.18.10",
+ "@babel/traverse": "^7.20.5",
+ "@babel/types": "^7.20.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/plugin-syntax-json-strings": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz",
- "integrity": "sha512-5UGYnMSLRE1dqqZwug+1LISpA403HzlSfsg6P9VXU6TBjcSHeNlw4DxDx7LgpF+iKZoOG/+uzqoRHTdcUpiZNg==",
+ "node_modules/@babel/helpers": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz",
+ "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/template": "^7.20.7",
+ "@babel/traverse": "^7.21.0",
+ "@babel/types": "^7.21.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/plugin-syntax-object-rest-spread": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz",
- "integrity": "sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA==",
+ "node_modules/@babel/highlight": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
+ "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-validator-identifier": "^7.18.6",
+ "chalk": "^2.0.0",
+ "js-tokens": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/plugin-syntax-optional-catch-binding": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz",
- "integrity": "sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w==",
+ "node_modules/@babel/parser": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz",
+ "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0"
+ "bin": {
+ "parser": "bin/babel-parser.js"
+ },
+ "engines": {
+ "node": ">=6.0.0"
}
},
- "@babel/plugin-transform-arrow-functions": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz",
- "integrity": "sha512-ER77Cax1+8/8jCB9fo4Ud161OZzWN5qawi4GusDuRLcDbDG+bIGYY20zb2dfAFdTRGzrfq2xZPvF0R64EHnimg==",
+ "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz",
+ "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
}
},
- "@babel/plugin-transform-async-to-generator": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.2.0.tgz",
- "integrity": "sha512-CEHzg4g5UraReozI9D4fblBYABs7IM6UerAVG7EJVrTLC5keh00aEuLUT+O40+mJCEzaXkYfTCUKIyeDfMOFFQ==",
+ "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": {
+ "version": "7.20.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz",
+ "integrity": "sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==",
"dev": true,
- "requires": {
- "@babel/helper-module-imports": "^7.0.0",
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/helper-remap-async-to-generator": "^7.1.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0",
+ "@babel/plugin-proposal-optional-chaining": "^7.20.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.13.0"
}
},
- "@babel/plugin-transform-block-scoped-functions": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz",
- "integrity": "sha512-ntQPR6q1/NKuphly49+QiQiTN0O63uOwjdD6dhIjSWBI5xlrbUFh720TIpzBhpnrLfv2tNH/BXvLIab1+BAI0w==",
+ "node_modules/@babel/plugin-proposal-async-generator-functions": {
+ "version": "7.20.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz",
+ "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-environment-visitor": "^7.18.9",
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "@babel/helper-remap-async-to-generator": "^7.18.9",
+ "@babel/plugin-syntax-async-generators": "^7.8.4"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-block-scoping": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.2.0.tgz",
- "integrity": "sha512-vDTgf19ZEV6mx35yiPJe4fS02mPQUUcBNwWQSZFXSzTSbsJFQvHt7DqyS3LK8oOWALFOsJ+8bbqBgkirZteD5Q==",
+ "node_modules/@babel/plugin-proposal-class-properties": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz",
+ "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "lodash": "^4.17.10"
+ "dependencies": {
+ "@babel/helper-create-class-features-plugin": "^7.18.6",
+ "@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-classes": {
- "version": "7.3.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.3.3.tgz",
- "integrity": "sha512-n0CLbsg7KOXsMF4tSTLCApNMoXk0wOPb0DYfsOO1e7SfIb9gOyfbpKI2MZ+AXfqvlfzq2qsflJ1nEns48Caf2w==",
+ "node_modules/@babel/plugin-proposal-class-static-block": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz",
+ "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==",
"dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.0.0",
- "@babel/helper-define-map": "^7.1.0",
- "@babel/helper-function-name": "^7.1.0",
- "@babel/helper-optimise-call-expression": "^7.0.0",
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/helper-replace-supers": "^7.1.0",
- "@babel/helper-split-export-declaration": "^7.0.0",
- "globals": "^11.1.0"
+ "dependencies": {
+ "@babel/helper-create-class-features-plugin": "^7.21.0",
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "@babel/plugin-syntax-class-static-block": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.12.0"
}
},
- "@babel/plugin-transform-computed-properties": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz",
- "integrity": "sha512-kP/drqTxY6Xt3NNpKiMomfgkNn4o7+vKxK2DDKcBG9sHj51vHqMBGy8wbDS/J4lMxnqs153/T3+DmCEAkC5cpA==",
+ "node_modules/@babel/plugin-proposal-dynamic-import": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz",
+ "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.6",
+ "@babel/plugin-syntax-dynamic-import": "^7.8.3"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-destructuring": {
- "version": "7.3.2",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.3.2.tgz",
- "integrity": "sha512-Lrj/u53Ufqxl/sGxyjsJ2XNtNuEjDyjpqdhMNh5aZ+XFOdThL46KBj27Uem4ggoezSYBxKWAil6Hu8HtwqesYw==",
+ "node_modules/@babel/plugin-proposal-export-namespace-from": {
+ "version": "7.18.9",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz",
+ "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.9",
+ "@babel/plugin-syntax-export-namespace-from": "^7.8.3"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-dotall-regex": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.2.0.tgz",
- "integrity": "sha512-sKxnyHfizweTgKZf7XsXu/CNupKhzijptfTM+bozonIuyVrLWVUvYjE2bhuSBML8VQeMxq4Mm63Q9qvcvUcciQ==",
+ "node_modules/@babel/plugin-proposal-json-strings": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz",
+ "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/helper-regex": "^7.0.0",
- "regexpu-core": "^4.1.3"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.6",
+ "@babel/plugin-syntax-json-strings": "^7.8.3"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-duplicate-keys": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.2.0.tgz",
- "integrity": "sha512-q+yuxW4DsTjNceUiTzK0L+AfQ0zD9rWaTLiUqHA8p0gxx7lu1EylenfzjeIWNkPy6e/0VG/Wjw9uf9LueQwLOw==",
+ "node_modules/@babel/plugin-proposal-logical-assignment-operators": {
+ "version": "7.20.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz",
+ "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-exponentiation-operator": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz",
- "integrity": "sha512-umh4hR6N7mu4Elq9GG8TOu9M0bakvlsREEC+ialrQN6ABS4oDQ69qJv1VtR3uxlKMCQMCvzk7vr17RHKcjx68A==",
+ "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz",
+ "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==",
"dev": true,
- "requires": {
- "@babel/helper-builder-binary-assignment-operator-visitor": "^7.1.0",
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.6",
+ "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-for-of": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.2.0.tgz",
- "integrity": "sha512-Kz7Mt0SsV2tQk6jG5bBv5phVbkd0gd27SgYD4hH1aLMJRchM0dzHaXvrWhVZ+WxAlDoAKZ7Uy3jVTW2mKXQ1WQ==",
+ "node_modules/@babel/plugin-proposal-numeric-separator": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz",
+ "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.6",
+ "@babel/plugin-syntax-numeric-separator": "^7.10.4"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-function-name": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.2.0.tgz",
- "integrity": "sha512-kWgksow9lHdvBC2Z4mxTsvc7YdY7w/V6B2vy9cTIPtLEE9NhwoWivaxdNM/S37elu5bqlLP/qOY906LukO9lkQ==",
+ "node_modules/@babel/plugin-proposal-object-rest-spread": {
+ "version": "7.20.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz",
+ "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==",
"dev": true,
- "requires": {
- "@babel/helper-function-name": "^7.1.0",
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/compat-data": "^7.20.5",
+ "@babel/helper-compilation-targets": "^7.20.7",
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
+ "@babel/plugin-transform-parameters": "^7.20.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-literals": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz",
- "integrity": "sha512-2ThDhm4lI4oV7fVQ6pNNK+sx+c/GM5/SaML0w/r4ZB7sAneD/piDJtwdKlNckXeyGK7wlwg2E2w33C/Hh+VFCg==",
+ "node_modules/@babel/plugin-proposal-optional-catch-binding": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz",
+ "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.6",
+ "@babel/plugin-syntax-optional-catch-binding": "^7.8.3"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-modules-amd": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.2.0.tgz",
- "integrity": "sha512-mK2A8ucqz1qhrdqjS9VMIDfIvvT2thrEsIQzbaTdc5QFzhDjQv2CkJJ5f6BXIkgbmaoax3zBr2RyvV/8zeoUZw==",
+ "node_modules/@babel/plugin-proposal-optional-chaining": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz",
+ "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==",
"dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.1.0",
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0",
+ "@babel/plugin-syntax-optional-chaining": "^7.8.3"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-modules-commonjs": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.2.0.tgz",
- "integrity": "sha512-V6y0uaUQrQPXUrmj+hgnks8va2L0zcZymeU7TtWEgdRLNkceafKXEduv7QzgQAE4lT+suwooG9dC7LFhdRAbVQ==",
+ "node_modules/@babel/plugin-proposal-private-methods": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz",
+ "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==",
"dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.1.0",
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/helper-simple-access": "^7.1.0"
+ "dependencies": {
+ "@babel/helper-create-class-features-plugin": "^7.18.6",
+ "@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-modules-systemjs": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.2.0.tgz",
- "integrity": "sha512-aYJwpAhoK9a+1+O625WIjvMY11wkB/ok0WClVwmeo3mCjcNRjt+/8gHWrB5i+00mUju0gWsBkQnPpdvQ7PImmQ==",
+ "node_modules/@babel/plugin-proposal-private-property-in-object": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz",
+ "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==",
"dev": true,
- "requires": {
- "@babel/helper-hoist-variables": "^7.0.0",
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-annotate-as-pure": "^7.18.6",
+ "@babel/helper-create-class-features-plugin": "^7.21.0",
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "@babel/plugin-syntax-private-property-in-object": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-modules-umd": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.2.0.tgz",
- "integrity": "sha512-BV3bw6MyUH1iIsGhXlOK6sXhmSarZjtJ/vMiD9dNmpY8QXFFQTj+6v92pcfy1iqa8DeAfJFwoxcrS/TUZda6sw==",
+ "node_modules/@babel/plugin-proposal-unicode-property-regex": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz",
+ "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==",
"dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.1.0",
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-create-regexp-features-plugin": "^7.18.6",
+ "@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-named-capturing-groups-regex": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.8.3.tgz",
- "integrity": "sha512-f+tF/8UVPU86TrCb06JoPWIdDpTNSGGcAtaD9mLP0aYGA0OS0j7j7DHJR0GTFrUZPUU6loZhbsVZgTh0N+Qdnw==",
+ "node_modules/@babel/plugin-syntax-async-generators": {
+ "version": "7.8.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
+ "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
"dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.8.3"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-new-target": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.0.0.tgz",
- "integrity": "sha512-yin069FYjah+LbqfGeTfzIBODex/e++Yfa0rH0fpfam9uTbuEeEOx5GLGr210ggOV77mVRNoeqSYqeuaqSzVSw==",
+ "node_modules/@babel/plugin-syntax-class-properties": {
+ "version": "7.12.13",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz",
+ "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.12.13"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-object-super": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.2.0.tgz",
- "integrity": "sha512-VMyhPYZISFZAqAPVkiYb7dUe2AsVi2/wCT5+wZdsNO31FojQJa9ns40hzZ6U9f50Jlq4w6qwzdBB2uwqZ00ebg==",
+ "node_modules/@babel/plugin-syntax-class-static-block": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz",
+ "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/helper-replace-supers": "^7.1.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-parameters": {
- "version": "7.3.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.3.3.tgz",
- "integrity": "sha512-IrIP25VvXWu/VlBWTpsjGptpomtIkYrN/3aDp4UKm7xK6UxZY88kcJ1UwETbzHAlwN21MnNfwlar0u8y3KpiXw==",
+ "node_modules/@babel/plugin-syntax-dynamic-import": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
+ "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
"dev": true,
- "requires": {
- "@babel/helper-call-delegate": "^7.1.0",
- "@babel/helper-get-function-arity": "^7.0.0",
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-regenerator": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.0.0.tgz",
- "integrity": "sha512-sj2qzsEx8KDVv1QuJc/dEfilkg3RRPvPYx/VnKLtItVQRWt1Wqf5eVCOLZm29CiGFfYYsA3VPjfizTCV0S0Dlw==",
+ "node_modules/@babel/plugin-syntax-export-namespace-from": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz",
+ "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==",
"dev": true,
- "requires": {
- "regenerator-transform": "^0.13.3"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.3"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-shorthand-properties": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz",
- "integrity": "sha512-QP4eUM83ha9zmYtpbnyjTLAGKQritA5XW/iG9cjtuOI8s1RuL/3V6a3DeSHfKutJQ+ayUfeZJPcnCYEQzaPQqg==",
+ "node_modules/@babel/plugin-syntax-import-assertions": {
+ "version": "7.20.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz",
+ "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.19.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-spread": {
- "version": "7.2.2",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.2.2.tgz",
- "integrity": "sha512-KWfky/58vubwtS0hLqEnrWJjsMGaOeSBn90Ezn5Jeg9Z8KKHmELbP1yGylMlm5N6TPKeY9A2+UaSYLdxahg01w==",
+ "node_modules/@babel/plugin-syntax-json-strings": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
+ "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-sticky-regex": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz",
- "integrity": "sha512-KKYCoGaRAf+ckH8gEL3JHUaFVyNHKe3ASNsZ+AlktgHevvxGigoIttrEJb8iKN03Q7Eazlv1s6cx2B2cQ3Jabw==",
+ "node_modules/@babel/plugin-syntax-logical-assignment-operators": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
+ "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/helper-regex": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.10.4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-template-literals": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.2.0.tgz",
- "integrity": "sha512-FkPix00J9A/XWXv4VoKJBMeSkyY9x/TqIh76wzcdfl57RJJcf8CehQ08uwfhCDNtRQYtHQKBTwKZDEyjE13Lwg==",
+ "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
+ "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
"dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.0.0",
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-typeof-symbol": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz",
- "integrity": "sha512-2LNhETWYxiYysBtrBTqL8+La0jIoQQnIScUJc74OYvUGRmkskNY4EzLCnjHBzdmb38wqtTaixpo1NctEcvMDZw==",
+ "node_modules/@babel/plugin-syntax-numeric-separator": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
+ "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.10.4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-transform-unicode-regex": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.2.0.tgz",
- "integrity": "sha512-m48Y0lMhrbXEJnVUaYly29jRXbQ3ksxPrS1Tg8t+MHqzXhtBYAvI51euOBaoAlZLPHsieY9XPVMf80a5x0cPcA==",
+ "node_modules/@babel/plugin-syntax-object-rest-spread": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
+ "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/helper-regex": "^7.0.0",
- "regexpu-core": "^4.1.3"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/preset-env": {
- "version": "7.3.1",
- "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.3.1.tgz",
- "integrity": "sha512-FHKrD6Dxf30e8xgHQO0zJZpUPfVZg+Xwgz5/RdSWCbza9QLNk4Qbp40ctRoqDxml3O8RMzB1DU55SXeDG6PqHQ==",
+ "node_modules/@babel/plugin-syntax-optional-catch-binding": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
+ "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
"dev": true,
- "requires": {
- "@babel/helper-module-imports": "^7.0.0",
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/plugin-proposal-async-generator-functions": "^7.2.0",
- "@babel/plugin-proposal-json-strings": "^7.2.0",
- "@babel/plugin-proposal-object-rest-spread": "^7.3.1",
- "@babel/plugin-proposal-optional-catch-binding": "^7.2.0",
- "@babel/plugin-proposal-unicode-property-regex": "^7.2.0",
- "@babel/plugin-syntax-async-generators": "^7.2.0",
- "@babel/plugin-syntax-json-strings": "^7.2.0",
- "@babel/plugin-syntax-object-rest-spread": "^7.2.0",
- "@babel/plugin-syntax-optional-catch-binding": "^7.2.0",
- "@babel/plugin-transform-arrow-functions": "^7.2.0",
- "@babel/plugin-transform-async-to-generator": "^7.2.0",
- "@babel/plugin-transform-block-scoped-functions": "^7.2.0",
- "@babel/plugin-transform-block-scoping": "^7.2.0",
- "@babel/plugin-transform-classes": "^7.2.0",
- "@babel/plugin-transform-computed-properties": "^7.2.0",
- "@babel/plugin-transform-destructuring": "^7.2.0",
- "@babel/plugin-transform-dotall-regex": "^7.2.0",
- "@babel/plugin-transform-duplicate-keys": "^7.2.0",
- "@babel/plugin-transform-exponentiation-operator": "^7.2.0",
- "@babel/plugin-transform-for-of": "^7.2.0",
- "@babel/plugin-transform-function-name": "^7.2.0",
- "@babel/plugin-transform-literals": "^7.2.0",
- "@babel/plugin-transform-modules-amd": "^7.2.0",
- "@babel/plugin-transform-modules-commonjs": "^7.2.0",
- "@babel/plugin-transform-modules-systemjs": "^7.2.0",
- "@babel/plugin-transform-modules-umd": "^7.2.0",
- "@babel/plugin-transform-named-capturing-groups-regex": "^7.3.0",
- "@babel/plugin-transform-new-target": "^7.0.0",
- "@babel/plugin-transform-object-super": "^7.2.0",
- "@babel/plugin-transform-parameters": "^7.2.0",
- "@babel/plugin-transform-regenerator": "^7.0.0",
- "@babel/plugin-transform-shorthand-properties": "^7.2.0",
- "@babel/plugin-transform-spread": "^7.2.0",
- "@babel/plugin-transform-sticky-regex": "^7.2.0",
- "@babel/plugin-transform-template-literals": "^7.2.0",
- "@babel/plugin-transform-typeof-symbol": "^7.2.0",
- "@babel/plugin-transform-unicode-regex": "^7.2.0",
- "browserslist": "^4.3.4",
- "invariant": "^2.2.2",
- "js-levenshtein": "^1.1.3",
- "semver": "^5.3.0"
- }
- },
- "@babel/template": {
- "version": "7.2.2",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.2.2.tgz",
- "integrity": "sha512-zRL0IMM02AUDwghf5LMSSDEz7sBCO2YnNmpg3uWTZj/v1rcG2BmQUvaGU8GhU8BvfMh1k2KIAYZ7Ji9KXPUg7g==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.0.0",
- "@babel/parser": "^7.2.2",
- "@babel/types": "^7.2.2"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/traverse": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.2.3.tgz",
- "integrity": "sha512-Z31oUD/fJvEWVR0lNZtfgvVt512ForCTNKYcJBGbPb1QZfve4WGH8Wsy7+Mev33/45fhP/hwQtvgusNdcCMgSw==",
+ "node_modules/@babel/plugin-syntax-optional-chaining": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
+ "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
"dev": true,
- "requires": {
- "@babel/code-frame": "^7.0.0",
- "@babel/generator": "^7.2.2",
- "@babel/helper-function-name": "^7.1.0",
- "@babel/helper-split-export-declaration": "^7.0.0",
- "@babel/parser": "^7.2.3",
- "@babel/types": "^7.2.2",
- "debug": "^4.1.0",
- "globals": "^11.1.0",
- "lodash": "^4.17.10"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/types": {
- "version": "7.3.3",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.3.3.tgz",
- "integrity": "sha512-2tACZ80Wg09UnPg5uGAOUvvInaqLk3l/IAhQzlxLQOIXacr6bMsra5SH6AWw/hIDRCSbCdHP2KzSOD+cT7TzMQ==",
+ "node_modules/@babel/plugin-syntax-private-property-in-object": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz",
+ "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==",
"dev": true,
- "requires": {
- "esutils": "^2.0.2",
- "lodash": "^4.17.11",
- "to-fast-properties": "^2.0.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@nodelib/fs.scandir": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz",
- "integrity": "sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==",
+ "node_modules/@babel/plugin-syntax-top-level-await": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz",
+ "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==",
"dev": true,
- "requires": {
- "@nodelib/fs.stat": "2.0.3",
- "run-parallel": "^1.1.9"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@nodelib/fs.stat": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz",
- "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==",
- "dev": true
- },
- "@nodelib/fs.walk": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz",
- "integrity": "sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==",
+ "node_modules/@babel/plugin-transform-arrow-functions": {
+ "version": "7.20.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz",
+ "integrity": "sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==",
"dev": true,
- "requires": {
- "@nodelib/fs.scandir": "2.1.3",
- "fastq": "^1.6.0"
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.20.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@npmcli/move-file": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.0.1.tgz",
- "integrity": "sha512-Uv6h1sT+0DrblvIrolFtbvM1FgWm+/sy4B3pvLp67Zys+thcukzS5ekn7HsZFGpWP4Q3fYJCljbWQE/XivMRLw==",
+ "node_modules/@babel/plugin-transform-async-to-generator": {
+ "version": "7.20.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz",
+ "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==",
"dev": true,
- "requires": {
- "mkdirp": "^1.0.4"
- },
"dependencies": {
- "mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true
- }
+ "@babel/helper-module-imports": "^7.18.6",
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "@babel/helper-remap-async-to-generator": "^7.18.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@types/color-name": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz",
- "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==",
+ "node_modules/@babel/plugin-transform-block-scoped-functions": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz",
+ "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-block-scoping": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz",
+ "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.20.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-classes": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz",
+ "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-annotate-as-pure": "^7.18.6",
+ "@babel/helper-compilation-targets": "^7.20.7",
+ "@babel/helper-environment-visitor": "^7.18.9",
+ "@babel/helper-function-name": "^7.21.0",
+ "@babel/helper-optimise-call-expression": "^7.18.6",
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "@babel/helper-replace-supers": "^7.20.7",
+ "@babel/helper-split-export-declaration": "^7.18.6",
+ "globals": "^11.1.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-computed-properties": {
+ "version": "7.20.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz",
+ "integrity": "sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "@babel/template": "^7.20.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-destructuring": {
+ "version": "7.21.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.21.3.tgz",
+ "integrity": "sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.20.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-dotall-regex": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz",
+ "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-create-regexp-features-plugin": "^7.18.6",
+ "@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-duplicate-keys": {
+ "version": "7.18.9",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz",
+ "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-exponentiation-operator": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz",
+ "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6",
+ "@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-for-of": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz",
+ "integrity": "sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.20.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-function-name": {
+ "version": "7.18.9",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz",
+ "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-compilation-targets": "^7.18.9",
+ "@babel/helper-function-name": "^7.18.9",
+ "@babel/helper-plugin-utils": "^7.18.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-literals": {
+ "version": "7.18.9",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz",
+ "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-member-expression-literals": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz",
+ "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-modules-amd": {
+ "version": "7.20.11",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz",
+ "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-module-transforms": "^7.20.11",
+ "@babel/helper-plugin-utils": "^7.20.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-modules-commonjs": {
+ "version": "7.21.2",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz",
+ "integrity": "sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-module-transforms": "^7.21.2",
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "@babel/helper-simple-access": "^7.20.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-modules-systemjs": {
+ "version": "7.20.11",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz",
+ "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-hoist-variables": "^7.18.6",
+ "@babel/helper-module-transforms": "^7.20.11",
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "@babel/helper-validator-identifier": "^7.19.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-modules-umd": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz",
+ "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-module-transforms": "^7.18.6",
+ "@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-named-capturing-groups-regex": {
+ "version": "7.20.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz",
+ "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-create-regexp-features-plugin": "^7.20.5",
+ "@babel/helper-plugin-utils": "^7.20.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-new-target": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz",
+ "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-object-super": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz",
+ "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.6",
+ "@babel/helper-replace-supers": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-parameters": {
+ "version": "7.21.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.21.3.tgz",
+ "integrity": "sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.20.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-property-literals": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz",
+ "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-regenerator": {
+ "version": "7.20.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz",
+ "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "regenerator-transform": "^0.15.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-reserved-words": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz",
+ "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-shorthand-properties": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz",
+ "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-spread": {
+ "version": "7.20.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz",
+ "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-sticky-regex": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz",
+ "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-template-literals": {
+ "version": "7.18.9",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz",
+ "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-typeof-symbol": {
+ "version": "7.18.9",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz",
+ "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-unicode-escapes": {
+ "version": "7.18.10",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz",
+ "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.18.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-unicode-regex": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz",
+ "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-create-regexp-features-plugin": "^7.18.6",
+ "@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/preset-env": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.21.4.tgz",
+ "integrity": "sha512-2W57zHs2yDLm6GD5ZpvNn71lZ0B/iypSdIeq25OurDKji6AdzV07qp4s3n1/x5BqtiGaTrPN3nerlSCaC5qNTw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/compat-data": "^7.21.4",
+ "@babel/helper-compilation-targets": "^7.21.4",
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "@babel/helper-validator-option": "^7.21.0",
+ "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6",
+ "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.20.7",
+ "@babel/plugin-proposal-async-generator-functions": "^7.20.7",
+ "@babel/plugin-proposal-class-properties": "^7.18.6",
+ "@babel/plugin-proposal-class-static-block": "^7.21.0",
+ "@babel/plugin-proposal-dynamic-import": "^7.18.6",
+ "@babel/plugin-proposal-export-namespace-from": "^7.18.9",
+ "@babel/plugin-proposal-json-strings": "^7.18.6",
+ "@babel/plugin-proposal-logical-assignment-operators": "^7.20.7",
+ "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6",
+ "@babel/plugin-proposal-numeric-separator": "^7.18.6",
+ "@babel/plugin-proposal-object-rest-spread": "^7.20.7",
+ "@babel/plugin-proposal-optional-catch-binding": "^7.18.6",
+ "@babel/plugin-proposal-optional-chaining": "^7.21.0",
+ "@babel/plugin-proposal-private-methods": "^7.18.6",
+ "@babel/plugin-proposal-private-property-in-object": "^7.21.0",
+ "@babel/plugin-proposal-unicode-property-regex": "^7.18.6",
+ "@babel/plugin-syntax-async-generators": "^7.8.4",
+ "@babel/plugin-syntax-class-properties": "^7.12.13",
+ "@babel/plugin-syntax-class-static-block": "^7.14.5",
+ "@babel/plugin-syntax-dynamic-import": "^7.8.3",
+ "@babel/plugin-syntax-export-namespace-from": "^7.8.3",
+ "@babel/plugin-syntax-import-assertions": "^7.20.0",
+ "@babel/plugin-syntax-json-strings": "^7.8.3",
+ "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4",
+ "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
+ "@babel/plugin-syntax-numeric-separator": "^7.10.4",
+ "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
+ "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
+ "@babel/plugin-syntax-optional-chaining": "^7.8.3",
+ "@babel/plugin-syntax-private-property-in-object": "^7.14.5",
+ "@babel/plugin-syntax-top-level-await": "^7.14.5",
+ "@babel/plugin-transform-arrow-functions": "^7.20.7",
+ "@babel/plugin-transform-async-to-generator": "^7.20.7",
+ "@babel/plugin-transform-block-scoped-functions": "^7.18.6",
+ "@babel/plugin-transform-block-scoping": "^7.21.0",
+ "@babel/plugin-transform-classes": "^7.21.0",
+ "@babel/plugin-transform-computed-properties": "^7.20.7",
+ "@babel/plugin-transform-destructuring": "^7.21.3",
+ "@babel/plugin-transform-dotall-regex": "^7.18.6",
+ "@babel/plugin-transform-duplicate-keys": "^7.18.9",
+ "@babel/plugin-transform-exponentiation-operator": "^7.18.6",
+ "@babel/plugin-transform-for-of": "^7.21.0",
+ "@babel/plugin-transform-function-name": "^7.18.9",
+ "@babel/plugin-transform-literals": "^7.18.9",
+ "@babel/plugin-transform-member-expression-literals": "^7.18.6",
+ "@babel/plugin-transform-modules-amd": "^7.20.11",
+ "@babel/plugin-transform-modules-commonjs": "^7.21.2",
+ "@babel/plugin-transform-modules-systemjs": "^7.20.11",
+ "@babel/plugin-transform-modules-umd": "^7.18.6",
+ "@babel/plugin-transform-named-capturing-groups-regex": "^7.20.5",
+ "@babel/plugin-transform-new-target": "^7.18.6",
+ "@babel/plugin-transform-object-super": "^7.18.6",
+ "@babel/plugin-transform-parameters": "^7.21.3",
+ "@babel/plugin-transform-property-literals": "^7.18.6",
+ "@babel/plugin-transform-regenerator": "^7.20.5",
+ "@babel/plugin-transform-reserved-words": "^7.18.6",
+ "@babel/plugin-transform-shorthand-properties": "^7.18.6",
+ "@babel/plugin-transform-spread": "^7.20.7",
+ "@babel/plugin-transform-sticky-regex": "^7.18.6",
+ "@babel/plugin-transform-template-literals": "^7.18.9",
+ "@babel/plugin-transform-typeof-symbol": "^7.18.9",
+ "@babel/plugin-transform-unicode-escapes": "^7.18.10",
+ "@babel/plugin-transform-unicode-regex": "^7.18.6",
+ "@babel/preset-modules": "^0.1.5",
+ "@babel/types": "^7.21.4",
+ "babel-plugin-polyfill-corejs2": "^0.3.3",
+ "babel-plugin-polyfill-corejs3": "^0.6.0",
+ "babel-plugin-polyfill-regenerator": "^0.4.1",
+ "core-js-compat": "^3.25.1",
+ "semver": "^6.3.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/preset-modules": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz",
+ "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.0.0",
+ "@babel/plugin-proposal-unicode-property-regex": "^7.4.4",
+ "@babel/plugin-transform-dotall-regex": "^7.4.4",
+ "@babel/types": "^7.4.4",
+ "esutils": "^2.0.2"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/regjsgen": {
+ "version": "0.8.0",
+ "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz",
+ "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==",
"dev": true
},
- "@types/events": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz",
- "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==",
+ "node_modules/@babel/runtime": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz",
+ "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==",
+ "dev": true,
+ "dependencies": {
+ "regenerator-runtime": "^0.13.11"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/template": {
+ "version": "7.20.7",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz",
+ "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.18.6",
+ "@babel/parser": "^7.20.7",
+ "@babel/types": "^7.20.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/traverse": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.4.tgz",
+ "integrity": "sha512-eyKrRHKdyZxqDm+fV1iqL9UAHMoIg0nDaGqfIOd8rKH17m5snv7Gn4qgjBoFfLz9APvjFU/ICT00NVCv1Epp8Q==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.21.4",
+ "@babel/generator": "^7.21.4",
+ "@babel/helper-environment-visitor": "^7.18.9",
+ "@babel/helper-function-name": "^7.21.0",
+ "@babel/helper-hoist-variables": "^7.18.6",
+ "@babel/helper-split-export-declaration": "^7.18.6",
+ "@babel/parser": "^7.21.4",
+ "@babel/types": "^7.21.4",
+ "debug": "^4.1.0",
+ "globals": "^11.1.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/types": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz",
+ "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-string-parser": "^7.19.4",
+ "@babel/helper-validator-identifier": "^7.19.1",
+ "to-fast-properties": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@colors/colors": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz",
+ "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.1.90"
+ }
+ },
+ "node_modules/@discoveryjs/json-ext": {
+ "version": "0.5.7",
+ "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz",
+ "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==",
+ "dev": true,
+ "engines": {
+ "node": ">=10.0.0"
+ }
+ },
+ "node_modules/@jridgewell/gen-mapping": {
+ "version": "0.3.3",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz",
+ "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==",
+ "dev": true,
+ "dependencies": {
+ "@jridgewell/set-array": "^1.0.1",
+ "@jridgewell/sourcemap-codec": "^1.4.10",
+ "@jridgewell/trace-mapping": "^0.3.9"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/resolve-uri": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz",
+ "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/set-array": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
+ "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/source-map": {
+ "version": "0.3.3",
+ "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.3.tgz",
+ "integrity": "sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==",
+ "dev": true,
+ "dependencies": {
+ "@jridgewell/gen-mapping": "^0.3.0",
+ "@jridgewell/trace-mapping": "^0.3.9"
+ }
+ },
+ "node_modules/@jridgewell/sourcemap-codec": {
+ "version": "1.4.15",
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
+ "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==",
"dev": true
},
- "@types/glob": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz",
- "integrity": "sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==",
+ "node_modules/@jridgewell/trace-mapping": {
+ "version": "0.3.18",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz",
+ "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==",
"dev": true,
- "requires": {
- "@types/events": "*",
+ "dependencies": {
+ "@jridgewell/resolve-uri": "3.1.0",
+ "@jridgewell/sourcemap-codec": "1.4.14"
+ }
+ },
+ "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": {
+ "version": "1.4.14",
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
+ "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==",
+ "dev": true
+ },
+ "node_modules/@leichtgewicht/ip-codec": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz",
+ "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==",
+ "dev": true
+ },
+ "node_modules/@nodelib/fs.scandir": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "dev": true,
+ "dependencies": {
+ "@nodelib/fs.stat": "2.0.5",
+ "run-parallel": "^1.1.9"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.stat": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
+ "dev": true,
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.walk": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "dev": true,
+ "dependencies": {
+ "@nodelib/fs.scandir": "2.1.5",
+ "fastq": "^1.6.0"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@puppeteer/browsers": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-0.4.1.tgz",
+ "integrity": "sha512-4IICvy1McAkT/HyNZHIs7sp8ngBX1dmO0TPQ+FWq9ATQMqI8p+Ulm5A3kS2wYDh5HDHHkYrrETOu6rlj64VuTw==",
+ "dev": true,
+ "dependencies": {
+ "debug": "4.3.4",
+ "extract-zip": "2.0.1",
+ "https-proxy-agent": "5.0.1",
+ "progress": "2.0.3",
+ "proxy-from-env": "1.1.0",
+ "tar-fs": "2.1.1",
+ "unbzip2-stream": "1.4.3",
+ "yargs": "17.7.1"
+ },
+ "bin": {
+ "browsers": "lib/cjs/main-cli.js"
+ },
+ "engines": {
+ "node": ">=14.1.0"
+ },
+ "peerDependencies": {
+ "typescript": ">= 4.7.4"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@puppeteer/browsers/node_modules/cliui": {
+ "version": "8.0.1",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
+ "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
+ "dev": true,
+ "dependencies": {
+ "string-width": "^4.2.0",
+ "strip-ansi": "^6.0.1",
+ "wrap-ansi": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@puppeteer/browsers/node_modules/yargs": {
+ "version": "17.7.1",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz",
+ "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==",
+ "dev": true,
+ "dependencies": {
+ "cliui": "^8.0.1",
+ "escalade": "^3.1.1",
+ "get-caller-file": "^2.0.5",
+ "require-directory": "^2.1.1",
+ "string-width": "^4.2.3",
+ "y18n": "^5.0.5",
+ "yargs-parser": "^21.1.1"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@puppeteer/browsers/node_modules/yargs-parser": {
+ "version": "21.1.1",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
+ "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@socket.io/component-emitter": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz",
+ "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==",
+ "dev": true
+ },
+ "node_modules/@types/body-parser": {
+ "version": "1.19.2",
+ "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz",
+ "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==",
+ "dev": true,
+ "dependencies": {
+ "@types/connect": "*",
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/bonjour": {
+ "version": "3.5.10",
+ "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz",
+ "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==",
+ "dev": true,
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/connect": {
+ "version": "3.4.35",
+ "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz",
+ "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==",
+ "dev": true,
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/connect-history-api-fallback": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz",
+ "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==",
+ "dev": true,
+ "dependencies": {
+ "@types/express-serve-static-core": "*",
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/cookie": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz",
+ "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==",
+ "dev": true
+ },
+ "node_modules/@types/cors": {
+ "version": "2.8.13",
+ "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.13.tgz",
+ "integrity": "sha512-RG8AStHlUiV5ysZQKq97copd2UmVYw3/pRMLefISZ3S1hK104Cwm7iLQ3fTKx+lsUH2CE8FlLaYeEA2LSeqYUA==",
+ "dev": true,
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/eslint": {
+ "version": "8.37.0",
+ "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.37.0.tgz",
+ "integrity": "sha512-Piet7dG2JBuDIfohBngQ3rCt7MgO9xCO4xIMKxBThCq5PNRB91IjlJ10eJVwfoNtvTErmxLzwBZ7rHZtbOMmFQ==",
+ "dev": true,
+ "dependencies": {
+ "@types/estree": "*",
+ "@types/json-schema": "*"
+ }
+ },
+ "node_modules/@types/eslint-scope": {
+ "version": "3.7.4",
+ "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz",
+ "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==",
+ "dev": true,
+ "dependencies": {
+ "@types/eslint": "*",
+ "@types/estree": "*"
+ }
+ },
+ "node_modules/@types/estree": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz",
+ "integrity": "sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==",
+ "dev": true
+ },
+ "node_modules/@types/express": {
+ "version": "4.17.17",
+ "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz",
+ "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==",
+ "dev": true,
+ "dependencies": {
+ "@types/body-parser": "*",
+ "@types/express-serve-static-core": "^4.17.33",
+ "@types/qs": "*",
+ "@types/serve-static": "*"
+ }
+ },
+ "node_modules/@types/express-serve-static-core": {
+ "version": "4.17.33",
+ "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz",
+ "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==",
+ "dev": true,
+ "dependencies": {
+ "@types/node": "*",
+ "@types/qs": "*",
+ "@types/range-parser": "*"
+ }
+ },
+ "node_modules/@types/glob": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz",
+ "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==",
+ "dev": true,
+ "dependencies": {
"@types/minimatch": "*",
"@types/node": "*"
}
},
- "@types/json-schema": {
- "version": "7.0.6",
- "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.6.tgz",
- "integrity": "sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==",
+ "node_modules/@types/http-proxy": {
+ "version": "1.17.10",
+ "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.10.tgz",
+ "integrity": "sha512-Qs5aULi+zV1bwKAg5z1PWnDXWmsn+LxIvUGv6E2+OOMYhclZMO+OXd9pYVf2gLykf2I7IV2u7oTHwChPNsvJ7g==",
+ "dev": true,
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/json-schema": {
+ "version": "7.0.11",
+ "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz",
+ "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==",
+ "dev": true
+ },
+ "node_modules/@types/mime": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz",
+ "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==",
"dev": true
},
- "@types/minimatch": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz",
- "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==",
+ "node_modules/@types/minimatch": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz",
+ "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==",
"dev": true
},
- "@types/node": {
- "version": "14.0.1",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.1.tgz",
- "integrity": "sha512-FAYBGwC+W6F9+huFIDtn43cpy7+SzG+atzRiTfdp3inUKL2hXnd4rG8hylJLIh4+hqrQy1P17kvJByE/z825hA==",
+ "node_modules/@types/node": {
+ "version": "18.15.11",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.11.tgz",
+ "integrity": "sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==",
"dev": true
},
- "@webassemblyjs/ast": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz",
- "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==",
+ "node_modules/@types/qs": {
+ "version": "6.9.7",
+ "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz",
+ "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==",
+ "dev": true
+ },
+ "node_modules/@types/range-parser": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz",
+ "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==",
+ "dev": true
+ },
+ "node_modules/@types/retry": {
+ "version": "0.12.0",
+ "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz",
+ "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==",
+ "dev": true
+ },
+ "node_modules/@types/serve-index": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz",
+ "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==",
"dev": true,
- "requires": {
- "@webassemblyjs/helper-module-context": "1.9.0",
- "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
- "@webassemblyjs/wast-parser": "1.9.0"
+ "dependencies": {
+ "@types/express": "*"
}
},
- "@webassemblyjs/floating-point-hex-parser": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz",
- "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==",
- "dev": true
+ "node_modules/@types/serve-static": {
+ "version": "1.15.1",
+ "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz",
+ "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==",
+ "dev": true,
+ "dependencies": {
+ "@types/mime": "*",
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/sockjs": {
+ "version": "0.3.33",
+ "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz",
+ "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==",
+ "dev": true,
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/ws": {
+ "version": "8.5.4",
+ "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.4.tgz",
+ "integrity": "sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==",
+ "dev": true,
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/yauzl": {
+ "version": "2.10.0",
+ "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz",
+ "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==",
+ "dev": true,
+ "optional": true,
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@webassemblyjs/ast": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz",
+ "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==",
+ "dev": true,
+ "dependencies": {
+ "@webassemblyjs/helper-numbers": "1.11.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.1"
+ }
},
- "@webassemblyjs/helper-api-error": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz",
- "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==",
+ "node_modules/@webassemblyjs/floating-point-hex-parser": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz",
+ "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==",
"dev": true
},
- "@webassemblyjs/helper-buffer": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz",
- "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==",
+ "node_modules/@webassemblyjs/helper-api-error": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz",
+ "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==",
"dev": true
},
- "@webassemblyjs/helper-code-frame": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz",
- "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==",
- "dev": true,
- "requires": {
- "@webassemblyjs/wast-printer": "1.9.0"
- }
- },
- "@webassemblyjs/helper-fsm": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz",
- "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==",
+ "node_modules/@webassemblyjs/helper-buffer": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz",
+ "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==",
"dev": true
},
- "@webassemblyjs/helper-module-context": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz",
- "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==",
+ "node_modules/@webassemblyjs/helper-numbers": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz",
+ "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==",
"dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0"
+ "dependencies": {
+ "@webassemblyjs/floating-point-hex-parser": "1.11.1",
+ "@webassemblyjs/helper-api-error": "1.11.1",
+ "@xtuc/long": "4.2.2"
}
},
- "@webassemblyjs/helper-wasm-bytecode": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz",
- "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==",
+ "node_modules/@webassemblyjs/helper-wasm-bytecode": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz",
+ "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==",
"dev": true
},
- "@webassemblyjs/helper-wasm-section": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz",
- "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==",
+ "node_modules/@webassemblyjs/helper-wasm-section": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz",
+ "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==",
"dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/helper-buffer": "1.9.0",
- "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
- "@webassemblyjs/wasm-gen": "1.9.0"
+ "dependencies": {
+ "@webassemblyjs/ast": "1.11.1",
+ "@webassemblyjs/helper-buffer": "1.11.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
+ "@webassemblyjs/wasm-gen": "1.11.1"
}
},
- "@webassemblyjs/ieee754": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz",
- "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==",
+ "node_modules/@webassemblyjs/ieee754": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz",
+ "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"@xtuc/ieee754": "^1.2.0"
}
},
- "@webassemblyjs/leb128": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz",
- "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==",
+ "node_modules/@webassemblyjs/leb128": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz",
+ "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==",
"dev": true,
- "requires": {
+ "dependencies": {
"@xtuc/long": "4.2.2"
}
},
- "@webassemblyjs/utf8": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz",
- "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==",
+ "node_modules/@webassemblyjs/utf8": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz",
+ "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==",
"dev": true
},
- "@webassemblyjs/wasm-edit": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz",
- "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==",
+ "node_modules/@webassemblyjs/wasm-edit": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz",
+ "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==",
"dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/helper-buffer": "1.9.0",
- "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
- "@webassemblyjs/helper-wasm-section": "1.9.0",
- "@webassemblyjs/wasm-gen": "1.9.0",
- "@webassemblyjs/wasm-opt": "1.9.0",
- "@webassemblyjs/wasm-parser": "1.9.0",
- "@webassemblyjs/wast-printer": "1.9.0"
+ "dependencies": {
+ "@webassemblyjs/ast": "1.11.1",
+ "@webassemblyjs/helper-buffer": "1.11.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
+ "@webassemblyjs/helper-wasm-section": "1.11.1",
+ "@webassemblyjs/wasm-gen": "1.11.1",
+ "@webassemblyjs/wasm-opt": "1.11.1",
+ "@webassemblyjs/wasm-parser": "1.11.1",
+ "@webassemblyjs/wast-printer": "1.11.1"
}
},
- "@webassemblyjs/wasm-gen": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz",
- "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==",
+ "node_modules/@webassemblyjs/wasm-gen": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz",
+ "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==",
"dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
- "@webassemblyjs/ieee754": "1.9.0",
- "@webassemblyjs/leb128": "1.9.0",
- "@webassemblyjs/utf8": "1.9.0"
+ "dependencies": {
+ "@webassemblyjs/ast": "1.11.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
+ "@webassemblyjs/ieee754": "1.11.1",
+ "@webassemblyjs/leb128": "1.11.1",
+ "@webassemblyjs/utf8": "1.11.1"
}
},
- "@webassemblyjs/wasm-opt": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz",
- "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==",
+ "node_modules/@webassemblyjs/wasm-opt": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz",
+ "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==",
"dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/helper-buffer": "1.9.0",
- "@webassemblyjs/wasm-gen": "1.9.0",
- "@webassemblyjs/wasm-parser": "1.9.0"
+ "dependencies": {
+ "@webassemblyjs/ast": "1.11.1",
+ "@webassemblyjs/helper-buffer": "1.11.1",
+ "@webassemblyjs/wasm-gen": "1.11.1",
+ "@webassemblyjs/wasm-parser": "1.11.1"
}
},
- "@webassemblyjs/wasm-parser": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz",
- "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==",
+ "node_modules/@webassemblyjs/wasm-parser": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz",
+ "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==",
"dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/helper-api-error": "1.9.0",
- "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
- "@webassemblyjs/ieee754": "1.9.0",
- "@webassemblyjs/leb128": "1.9.0",
- "@webassemblyjs/utf8": "1.9.0"
+ "dependencies": {
+ "@webassemblyjs/ast": "1.11.1",
+ "@webassemblyjs/helper-api-error": "1.11.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
+ "@webassemblyjs/ieee754": "1.11.1",
+ "@webassemblyjs/leb128": "1.11.1",
+ "@webassemblyjs/utf8": "1.11.1"
}
},
- "@webassemblyjs/wast-parser": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz",
- "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/floating-point-hex-parser": "1.9.0",
- "@webassemblyjs/helper-api-error": "1.9.0",
- "@webassemblyjs/helper-code-frame": "1.9.0",
- "@webassemblyjs/helper-fsm": "1.9.0",
+ "node_modules/@webassemblyjs/wast-printer": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz",
+ "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==",
+ "dev": true,
+ "dependencies": {
+ "@webassemblyjs/ast": "1.11.1",
"@xtuc/long": "4.2.2"
}
},
- "@webassemblyjs/wast-printer": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz",
- "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==",
+ "node_modules/@webpack-cli/configtest": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.0.1.tgz",
+ "integrity": "sha512-njsdJXJSiS2iNbQVS0eT8A/KPnmyH4pv1APj2K0d1wrZcBLw+yppxOy4CGqa0OxDJkzfL/XELDhD8rocnIwB5A==",
"dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/wast-parser": "1.9.0",
- "@xtuc/long": "4.2.2"
+ "engines": {
+ "node": ">=14.15.0"
+ },
+ "peerDependencies": {
+ "webpack": "5.x.x",
+ "webpack-cli": "5.x.x"
+ }
+ },
+ "node_modules/@webpack-cli/info": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.1.tgz",
+ "integrity": "sha512-fE1UEWTwsAxRhrJNikE7v4EotYflkEhBL7EbajfkPlf6E37/2QshOy/D48Mw8G5XMFlQtS6YV42vtbG9zBpIQA==",
+ "dev": true,
+ "engines": {
+ "node": ">=14.15.0"
+ },
+ "peerDependencies": {
+ "webpack": "5.x.x",
+ "webpack-cli": "5.x.x"
+ }
+ },
+ "node_modules/@webpack-cli/serve": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.1.tgz",
+ "integrity": "sha512-0G7tNyS+yW8TdgHwZKlDWYXFA6OJQnoLCQvYKkQP0Q2X205PSQ6RNUj0M+1OB/9gRQaUZ/ccYfaxd0nhaWKfjw==",
+ "dev": true,
+ "engines": {
+ "node": ">=14.15.0"
+ },
+ "peerDependencies": {
+ "webpack": "5.x.x",
+ "webpack-cli": "5.x.x"
+ },
+ "peerDependenciesMeta": {
+ "webpack-dev-server": {
+ "optional": true
+ }
}
},
- "@xtuc/ieee754": {
+ "node_modules/@xtuc/ieee754": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
"integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
"dev": true
},
- "@xtuc/long": {
+ "node_modules/@xtuc/long": {
"version": "4.2.2",
"resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz",
"integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==",
"dev": true
},
- "accepts": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz",
- "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=",
+ "node_modules/accepts": {
+ "version": "1.3.8",
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
+ "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
"dev": true,
- "requires": {
- "mime-types": "~2.1.18",
- "negotiator": "0.6.1"
+ "dependencies": {
+ "mime-types": "~2.1.34",
+ "negotiator": "0.6.3"
+ },
+ "engines": {
+ "node": ">= 0.6"
}
},
- "acorn": {
- "version": "6.4.1",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz",
- "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==",
- "dev": true
+ "node_modules/acorn": {
+ "version": "8.8.2",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz",
+ "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==",
+ "dev": true,
+ "bin": {
+ "acorn": "bin/acorn"
+ },
+ "engines": {
+ "node": ">=0.4.0"
+ }
},
- "after": {
- "version": "0.8.2",
- "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz",
- "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=",
- "dev": true
+ "node_modules/acorn-import-assertions": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz",
+ "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==",
+ "dev": true,
+ "peerDependencies": {
+ "acorn": "^8"
+ }
},
- "aggregate-error": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz",
- "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==",
+ "node_modules/agent-base": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
+ "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
"dev": true,
- "requires": {
- "clean-stack": "^2.0.0",
- "indent-string": "^4.0.0"
+ "dependencies": {
+ "debug": "4"
+ },
+ "engines": {
+ "node": ">= 6.0.0"
}
},
- "ajv": {
- "version": "6.9.1",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.9.1.tgz",
- "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==",
+ "node_modules/ajv": {
+ "version": "8.12.0",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz",
+ "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==",
"dev": true,
- "requires": {
- "fast-deep-equal": "^2.0.1",
- "fast-json-stable-stringify": "^2.0.0",
- "json-schema-traverse": "^0.4.1",
+ "dependencies": {
+ "fast-deep-equal": "^3.1.1",
+ "json-schema-traverse": "^1.0.0",
+ "require-from-string": "^2.0.2",
"uri-js": "^4.2.2"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/epoberezkin"
}
},
- "ajv-errors": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz",
- "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==",
- "dev": true
+ "node_modules/ajv-formats": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz",
+ "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==",
+ "dev": true,
+ "dependencies": {
+ "ajv": "^8.0.0"
+ },
+ "peerDependencies": {
+ "ajv": "^8.0.0"
+ },
+ "peerDependenciesMeta": {
+ "ajv": {
+ "optional": true
+ }
+ }
},
- "ajv-keywords": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.0.tgz",
- "integrity": "sha512-aUjdRFISbuFOl0EIZc+9e4FfZp0bDZgAdOOf30bJmw8VM9v84SHyVyxDfbWxpGYbdZD/9XoKxfHVNmxPkhwyGw==",
- "dev": true
+ "node_modules/ajv-keywords": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz",
+ "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==",
+ "dev": true,
+ "dependencies": {
+ "fast-deep-equal": "^3.1.3"
+ },
+ "peerDependencies": {
+ "ajv": "^8.8.2"
+ }
},
- "ansi-colors": {
- "version": "3.2.3",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz",
- "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==",
- "dev": true
+ "node_modules/angular": {
+ "version": "1.8.3",
+ "resolved": "https://registry.npmjs.org/angular/-/angular-1.8.3.tgz",
+ "integrity": "sha512-5qjkWIQQVsHj4Sb5TcEs4WZWpFeVFHXwxEBHUhrny41D8UrBAd6T/6nPPAsLngJCReIOqi95W3mxdveveutpZw==",
+ "deprecated": "For the actively supported Angular, see https://www.npmjs.com/package/@angular/core. AngularJS support has officially ended. For extended AngularJS support options, see https://goo.gle/angularjs-path-forward.",
+ "peer": true
},
- "ansi-html": {
- "version": "0.0.7",
- "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz",
- "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=",
- "dev": true
+ "node_modules/ansi-html-community": {
+ "version": "0.0.8",
+ "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz",
+ "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==",
+ "dev": true,
+ "engines": [
+ "node >= 0.8.0"
+ ],
+ "bin": {
+ "ansi-html": "bin/ansi-html"
+ }
},
- "ansi-regex": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
- "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
- "dev": true
+ "node_modules/ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "ansi-styles": {
+ "node_modules/ansi-styles": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
"dev": true,
- "requires": {
+ "dependencies": {
"color-convert": "^1.9.0"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "anymatch": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
- "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
- "dev": true,
- "requires": {
- "micromatch": "^3.1.4",
- "normalize-path": "^2.1.1"
- },
- "dependencies": {
- "normalize-path": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
- "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
- "dev": true,
- "requires": {
- "remove-trailing-separator": "^1.0.1"
- }
- }
+ "node_modules/anymatch": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
+ "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
+ "dev": true,
+ "dependencies": {
+ "normalize-path": "^3.0.0",
+ "picomatch": "^2.0.4"
+ },
+ "engines": {
+ "node": ">= 8"
}
},
- "aproba": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
- "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==",
- "dev": true
- },
- "arr-diff": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
- "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
- "dev": true
- },
- "arr-flatten": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
- "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
- "dev": true
- },
- "arr-union": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
- "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=",
+ "node_modules/argparse": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
+ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
"dev": true
},
- "array-filter": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz",
- "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=",
- "dev": true
+ "node_modules/array-buffer-byte-length": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz",
+ "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "is-array-buffer": "^3.0.1"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "array-flatten": {
+ "node_modules/array-flatten": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz",
"integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==",
"dev": true
},
- "array-map": {
- "version": "0.0.0",
- "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz",
- "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=",
- "dev": true
- },
- "array-reduce": {
- "version": "0.0.0",
- "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz",
- "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=",
- "dev": true
- },
- "array-union": {
+ "node_modules/array-union": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
- "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=",
+ "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==",
"dev": true,
- "requires": {
+ "dependencies": {
"array-uniq": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "array-uniq": {
+ "node_modules/array-uniq": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
- "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
- "dev": true
- },
- "array-unique": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
- "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=",
- "dev": true
- },
- "arraybuffer.slice": {
- "version": "0.0.7",
- "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz",
- "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==",
- "dev": true
+ "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "asn1.js": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz",
- "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==",
+ "node_modules/available-typed-arrays": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz",
+ "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==",
"dev": true,
- "requires": {
- "bn.js": "^4.0.0",
- "inherits": "^2.0.1",
- "minimalistic-assert": "^1.0.0",
- "safer-buffer": "^2.1.0"
+ "engines": {
+ "node": ">= 0.4"
},
- "dependencies": {
- "bn.js": {
- "version": "4.11.9",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
- "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
- "dev": true
- }
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "assert": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz",
- "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==",
+ "node_modules/babel-loader": {
+ "version": "9.1.2",
+ "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.2.tgz",
+ "integrity": "sha512-mN14niXW43tddohGl8HPu5yfQq70iUThvFL/4QzESA7GcZoC0eVOhvWdQ8+3UlSjaDE9MVtsW9mxDY07W7VpVA==",
"dev": true,
- "requires": {
- "object-assign": "^4.1.1",
- "util": "0.10.3"
- },
"dependencies": {
- "inherits": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
- "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=",
- "dev": true
- },
- "util": {
- "version": "0.10.3",
- "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
- "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
- "dev": true,
- "requires": {
- "inherits": "2.0.1"
- }
- }
+ "find-cache-dir": "^3.3.2",
+ "schema-utils": "^4.0.0"
+ },
+ "engines": {
+ "node": ">= 14.15.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.12.0",
+ "webpack": ">=5"
}
},
- "assign-symbols": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
- "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=",
- "dev": true
- },
- "async": {
- "version": "2.6.2",
- "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz",
- "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==",
+ "node_modules/babel-plugin-polyfill-corejs2": {
+ "version": "0.3.3",
+ "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz",
+ "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==",
"dev": true,
- "requires": {
- "lodash": "^4.17.11"
+ "dependencies": {
+ "@babel/compat-data": "^7.17.7",
+ "@babel/helper-define-polyfill-provider": "^0.3.3",
+ "semver": "^6.1.1"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "async-each": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz",
- "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==",
- "dev": true
- },
- "async-limiter": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz",
- "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==",
- "dev": true
- },
- "atob": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
- "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==",
- "dev": true
- },
- "babel-loader": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz",
- "integrity": "sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==",
+ "node_modules/babel-plugin-polyfill-corejs3": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz",
+ "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==",
"dev": true,
- "requires": {
- "find-cache-dir": "^2.1.0",
- "loader-utils": "^1.4.0",
- "mkdirp": "^0.5.3",
- "pify": "^4.0.1",
- "schema-utils": "^2.6.5"
+ "dependencies": {
+ "@babel/helper-define-polyfill-provider": "^0.3.3",
+ "core-js-compat": "^3.25.1"
},
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/babel-plugin-polyfill-regenerator": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz",
+ "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==",
+ "dev": true,
"dependencies": {
- "ajv": {
- "version": "6.12.0",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz",
- "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==",
- "dev": true,
- "requires": {
- "fast-deep-equal": "^3.1.1",
- "fast-json-stable-stringify": "^2.0.0",
- "json-schema-traverse": "^0.4.1",
- "uri-js": "^4.2.2"
- }
- },
- "ajv-keywords": {
- "version": "3.4.1",
- "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz",
- "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==",
- "dev": true
- },
- "emojis-list": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
- "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==",
- "dev": true
- },
- "fast-deep-equal": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz",
- "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==",
- "dev": true
- },
- "json5": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
- "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
- "dev": true,
- "requires": {
- "minimist": "^1.2.0"
- }
- },
- "loader-utils": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz",
- "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==",
- "dev": true,
- "requires": {
- "big.js": "^5.2.2",
- "emojis-list": "^3.0.0",
- "json5": "^1.0.1"
- }
- },
- "mkdirp": {
- "version": "0.5.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz",
- "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==",
- "dev": true,
- "requires": {
- "minimist": "^1.2.5"
- }
- },
- "pify": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
- "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
- "dev": true
- },
- "schema-utils": {
- "version": "2.6.5",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.6.5.tgz",
- "integrity": "sha512-5KXuwKziQrTVHh8j/Uxz+QUbxkaLW9X/86NBlx/gnKgtsZA2GIVMUn17qWhRFwF8jdYb3Dig5hRO/W5mZqy6SQ==",
- "dev": true,
- "requires": {
- "ajv": "^6.12.0",
- "ajv-keywords": "^3.4.1"
- }
- }
+ "@babel/helper-define-polyfill-provider": "^0.3.3"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "backo2": {
+ "node_modules/balanced-match": {
"version": "1.0.2",
- "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz",
- "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
"dev": true
},
- "balanced-match": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
- "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
- "dev": true
- },
- "base": {
- "version": "0.11.2",
- "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
- "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
- "dev": true,
- "requires": {
- "cache-base": "^1.0.1",
- "class-utils": "^0.3.5",
- "component-emitter": "^1.2.1",
- "define-property": "^1.0.0",
- "isobject": "^3.0.1",
- "mixin-deep": "^1.2.0",
- "pascalcase": "^0.1.1"
- },
- "dependencies": {
- "define-property": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
- "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^1.0.0"
- }
- },
- "is-accessor-descriptor": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
- "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
- "dev": true,
- "requires": {
- "kind-of": "^6.0.0"
- }
+ "node_modules/base64-js": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
+ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
},
- "is-data-descriptor": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
- "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
- "dev": true,
- "requires": {
- "kind-of": "^6.0.0"
- }
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
},
- "is-descriptor": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
- "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "^1.0.0",
- "is-data-descriptor": "^1.0.0",
- "kind-of": "^6.0.2"
- }
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
}
- }
- },
- "base64-arraybuffer": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz",
- "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=",
- "dev": true
- },
- "base64-js": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz",
- "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==",
- "dev": true
+ ]
},
- "base64id": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz",
- "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=",
- "dev": true
+ "node_modules/base64id": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz",
+ "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==",
+ "dev": true,
+ "engines": {
+ "node": "^4.5.0 || >= 5.9"
+ }
},
- "batch": {
+ "node_modules/batch": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz",
- "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=",
+ "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==",
"dev": true
},
- "better-assert": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz",
- "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=",
+ "node_modules/binary-extensions": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
+ "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
"dev": true,
- "requires": {
- "callsite": "1.0.0"
+ "engines": {
+ "node": ">=8"
}
},
- "big.js": {
- "version": "5.2.2",
- "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
- "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==",
- "dev": true
- },
- "binary-extensions": {
- "version": "1.13.1",
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz",
- "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==",
- "dev": true
- },
- "bindings": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
- "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
+ "node_modules/bl": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz",
+ "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==",
"dev": true,
- "optional": true,
- "requires": {
- "file-uri-to-path": "1.0.0"
+ "dependencies": {
+ "buffer": "^5.5.0",
+ "inherits": "^2.0.4",
+ "readable-stream": "^3.4.0"
}
},
- "blob": {
- "version": "0.0.5",
- "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz",
- "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==",
- "dev": true
- },
- "bluebird": {
- "version": "3.7.2",
- "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
- "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==",
- "dev": true
+ "node_modules/bl/node_modules/readable-stream": {
+ "version": "3.6.2",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+ "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
+ "dev": true,
+ "dependencies": {
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
},
- "bn.js": {
- "version": "5.1.3",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.3.tgz",
- "integrity": "sha512-GkTiFpjFtUzU9CbMeJ5iazkCzGL3jrhzerzZIuqLABjbwRaFt33I9tUdSNryIptM+RxDet6OKm2WnLXzW51KsQ==",
- "dev": true
+ "node_modules/bl/node_modules/string_decoder": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
+ "dev": true,
+ "dependencies": {
+ "safe-buffer": "~5.2.0"
+ }
},
- "body-parser": {
- "version": "1.19.0",
- "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz",
- "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==",
+ "node_modules/body-parser": {
+ "version": "1.20.2",
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz",
+ "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==",
"dev": true,
- "requires": {
- "bytes": "3.1.0",
- "content-type": "~1.0.4",
+ "dependencies": {
+ "bytes": "3.1.2",
+ "content-type": "~1.0.5",
"debug": "2.6.9",
- "depd": "~1.1.2",
- "http-errors": "1.7.2",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "http-errors": "2.0.0",
"iconv-lite": "0.4.24",
- "on-finished": "~2.3.0",
- "qs": "6.7.0",
- "raw-body": "2.4.0",
- "type-is": "~1.6.17"
+ "on-finished": "2.4.1",
+ "qs": "6.11.0",
+ "raw-body": "2.5.2",
+ "type-is": "~1.6.18",
+ "unpipe": "1.0.0"
},
+ "engines": {
+ "node": ">= 0.8",
+ "npm": "1.2.8000 || >= 1.4.16"
+ }
+ },
+ "node_modules/body-parser/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
"dependencies": {
- "bytes": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz",
- "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==",
- "dev": true
- },
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "http-errors": {
- "version": "1.7.2",
- "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz",
- "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==",
- "dev": true,
- "requires": {
- "depd": "~1.1.2",
- "inherits": "2.0.3",
- "setprototypeof": "1.1.1",
- "statuses": ">= 1.5.0 < 2",
- "toidentifier": "1.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- },
- "setprototypeof": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz",
- "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==",
- "dev": true
- }
+ "ms": "2.0.0"
}
},
- "bonjour": {
- "version": "3.5.0",
- "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz",
- "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=",
+ "node_modules/body-parser/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true
+ },
+ "node_modules/bonjour-service": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.1.tgz",
+ "integrity": "sha512-Z/5lQRMOG9k7W+FkeGTNjh7htqn/2LMnfOvBZ8pynNZCM9MwkQkI3zeI4oz09uWdcgmgHugVvBqxGg4VQJ5PCg==",
"dev": true,
- "requires": {
- "array-flatten": "^2.1.0",
- "deep-equal": "^1.0.1",
+ "dependencies": {
+ "array-flatten": "^2.1.2",
"dns-equal": "^1.0.0",
- "dns-txt": "^2.0.2",
- "multicast-dns": "^6.0.1",
- "multicast-dns-service-types": "^1.1.0"
+ "fast-deep-equal": "^3.1.3",
+ "multicast-dns": "^7.2.5"
}
},
- "brace-expansion": {
+ "node_modules/brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"dev": true,
- "requires": {
+ "dependencies": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
}
},
- "braces": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
- "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
- "dev": true,
- "requires": {
- "arr-flatten": "^1.1.0",
- "array-unique": "^0.3.2",
- "extend-shallow": "^2.0.1",
- "fill-range": "^4.0.0",
- "isobject": "^3.0.1",
- "repeat-element": "^1.1.2",
- "snapdragon": "^0.8.1",
- "snapdragon-node": "^2.0.1",
- "split-string": "^3.0.2",
- "to-regex": "^3.0.1"
- },
- "dependencies": {
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "^0.1.0"
- }
- }
- }
- },
- "brorand": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
- "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=",
- "dev": true
- },
- "browserify-aes": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
- "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
- "dev": true,
- "requires": {
- "buffer-xor": "^1.0.3",
- "cipher-base": "^1.0.0",
- "create-hash": "^1.1.0",
- "evp_bytestokey": "^1.0.3",
- "inherits": "^2.0.1",
- "safe-buffer": "^5.0.1"
- }
- },
- "browserify-cipher": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz",
- "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==",
- "dev": true,
- "requires": {
- "browserify-aes": "^1.0.4",
- "browserify-des": "^1.0.0",
- "evp_bytestokey": "^1.0.0"
- }
- },
- "browserify-des": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz",
- "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==",
- "dev": true,
- "requires": {
- "cipher-base": "^1.0.1",
- "des.js": "^1.0.0",
- "inherits": "^2.0.1",
- "safe-buffer": "^5.1.2"
- }
- },
- "browserify-rsa": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
- "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
+ "node_modules/braces": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
+ "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
"dev": true,
- "requires": {
- "bn.js": "^4.1.0",
- "randombytes": "^2.0.1"
- },
"dependencies": {
- "bn.js": {
- "version": "4.11.9",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
- "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
- "dev": true
- }
+ "fill-range": "^7.0.1"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "browserify-sign": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz",
- "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==",
+ "node_modules/browserslist": {
+ "version": "4.21.5",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz",
+ "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==",
"dev": true,
- "requires": {
- "bn.js": "^5.1.1",
- "browserify-rsa": "^4.0.1",
- "create-hash": "^1.2.0",
- "create-hmac": "^1.1.7",
- "elliptic": "^6.5.3",
- "inherits": "^2.0.4",
- "parse-asn1": "^5.1.5",
- "readable-stream": "^3.6.0",
- "safe-buffer": "^5.2.0"
- },
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ }
+ ],
"dependencies": {
- "inherits": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
- "dev": true
+ "caniuse-lite": "^1.0.30001449",
+ "electron-to-chromium": "^1.4.284",
+ "node-releases": "^2.0.8",
+ "update-browserslist-db": "^1.0.10"
+ },
+ "bin": {
+ "browserslist": "cli.js"
+ },
+ "engines": {
+ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
+ }
+ },
+ "node_modules/buffer": {
+ "version": "5.7.1",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
+ "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
},
- "readable-stream": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
- "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
- "dev": true,
- "requires": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- }
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
},
- "safe-buffer": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
- "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
- "dev": true
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
}
+ ],
+ "dependencies": {
+ "base64-js": "^1.3.1",
+ "ieee754": "^1.1.13"
}
},
- "browserify-zlib": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz",
- "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==",
+ "node_modules/buffer-crc32": {
+ "version": "0.2.13",
+ "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
+ "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==",
"dev": true,
- "requires": {
- "pako": "~1.0.5"
+ "engines": {
+ "node": "*"
}
},
- "browserslist": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.4.1.tgz",
- "integrity": "sha512-pEBxEXg7JwaakBXjATYw/D1YZh4QUSCX/Mnd/wnqSRPPSi1U39iDhDoKGoBUcraKdxDlrYqJxSI5nNvD+dWP2A==",
+ "node_modules/buffer-from": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
+ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
+ "dev": true
+ },
+ "node_modules/bytes": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
+ "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
"dev": true,
- "requires": {
- "caniuse-lite": "^1.0.30000929",
- "electron-to-chromium": "^1.3.103",
- "node-releases": "^1.1.3"
+ "engines": {
+ "node": ">= 0.8"
}
},
- "buffer": {
- "version": "4.9.2",
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz",
- "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==",
+ "node_modules/call-bind": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
+ "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
"dev": true,
- "requires": {
- "base64-js": "^1.0.2",
- "ieee754": "^1.1.4",
- "isarray": "^1.0.0"
+ "dependencies": {
+ "function-bind": "^1.1.1",
+ "get-intrinsic": "^1.0.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "buffer-from": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
- "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
- "dev": true
- },
- "buffer-indexof": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz",
- "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==",
- "dev": true
- },
- "buffer-xor": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
- "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=",
- "dev": true
- },
- "builtin-status-codes": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
- "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=",
- "dev": true
- },
- "bytes": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
- "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=",
- "dev": true
+ "node_modules/callsites": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
},
- "cacache": {
- "version": "12.0.4",
- "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz",
- "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==",
+ "node_modules/caniuse-lite": {
+ "version": "1.0.30001480",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001480.tgz",
+ "integrity": "sha512-q7cpoPPvZYgtyC4VaBSN0Bt+PJ4c4EYRf0DrduInOz2SkFpHD5p3LnvEpqBp7UnJn+8x1Ogl1s38saUxe+ihQQ==",
"dev": true,
- "requires": {
- "bluebird": "^3.5.5",
- "chownr": "^1.1.1",
- "figgy-pudding": "^3.5.1",
- "glob": "^7.1.4",
- "graceful-fs": "^4.1.15",
- "infer-owner": "^1.0.3",
- "lru-cache": "^5.1.1",
- "mississippi": "^3.0.0",
- "mkdirp": "^0.5.1",
- "move-concurrently": "^1.0.1",
- "promise-inflight": "^1.0.1",
- "rimraf": "^2.6.3",
- "ssri": "^6.0.1",
- "unique-filename": "^1.1.1",
- "y18n": "^4.0.0"
- },
- "dependencies": {
- "glob": {
- "version": "7.1.6",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
- "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
- "dev": true,
- "requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- }
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
},
- "lru-cache": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
- "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
- "dev": true,
- "requires": {
- "yallist": "^3.0.2"
- }
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
},
- "yallist": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
- "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
- "dev": true
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
}
- }
- },
- "cache-base": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
- "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
- "dev": true,
- "requires": {
- "collection-visit": "^1.0.0",
- "component-emitter": "^1.2.1",
- "get-value": "^2.0.6",
- "has-value": "^1.0.0",
- "isobject": "^3.0.1",
- "set-value": "^2.0.0",
- "to-object-path": "^0.3.0",
- "union-value": "^1.0.0",
- "unset-value": "^1.0.0"
- }
- },
- "callsite": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz",
- "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=",
- "dev": true
- },
- "camelcase": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.0.0.tgz",
- "integrity": "sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA==",
- "dev": true
+ ]
},
- "caniuse-lite": {
- "version": "1.0.30000938",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000938.tgz",
- "integrity": "sha512-ekW8NQ3/FvokviDxhdKLZZAx7PptXNwxKgXtnR5y+PR3hckwuP3yJ1Ir+4/c97dsHNqtAyfKUGdw8P4EYzBNgw==",
- "dev": true
- },
- "chalk": {
+ "node_modules/chalk": {
"version": "2.4.2",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"ansi-styles": "^3.2.1",
"escape-string-regexp": "^1.0.5",
"supports-color": "^5.3.0"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "chokidar": {
- "version": "2.1.8",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz",
- "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==",
+ "node_modules/chokidar": {
+ "version": "3.5.3",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
+ "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
"dev": true,
- "requires": {
- "anymatch": "^2.0.0",
- "async-each": "^1.0.1",
- "braces": "^2.3.2",
- "fsevents": "^1.2.7",
- "glob-parent": "^3.1.0",
- "inherits": "^2.0.3",
- "is-binary-path": "^1.0.0",
- "is-glob": "^4.0.0",
- "normalize-path": "^3.0.0",
- "path-is-absolute": "^1.0.0",
- "readdirp": "^2.2.1",
- "upath": "^1.1.1"
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://paulmillr.com/funding/"
+ }
+ ],
+ "dependencies": {
+ "anymatch": "~3.1.2",
+ "braces": "~3.0.2",
+ "glob-parent": "~5.1.2",
+ "is-binary-path": "~2.1.0",
+ "is-glob": "~4.0.1",
+ "normalize-path": "~3.0.0",
+ "readdirp": "~3.6.0"
+ },
+ "engines": {
+ "node": ">= 8.10.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ }
+ },
+ "node_modules/chokidar/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
+ "dependencies": {
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
}
},
- "chownr": {
+ "node_modules/chownr": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz",
"integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==",
"dev": true
},
- "chrome-trace-event": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz",
- "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==",
- "dev": true,
- "requires": {
- "tslib": "^1.9.0"
- }
- },
- "cipher-base": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
- "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
+ "node_modules/chrome-trace-event": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz",
+ "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==",
"dev": true,
- "requires": {
- "inherits": "^2.0.1",
- "safe-buffer": "^5.0.1"
+ "engines": {
+ "node": ">=6.0"
}
},
- "class-utils": {
- "version": "0.3.6",
- "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
- "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
+ "node_modules/chromium-bidi": {
+ "version": "0.4.6",
+ "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.4.6.tgz",
+ "integrity": "sha512-TQOkWRaLI/IWvoP8XC+7jO4uHTIiAUiklXU1T0qszlUFEai9LgKXIBXy3pOS3EnQZ3bQtMbKUPkug0fTAEHCSw==",
"dev": true,
- "requires": {
- "arr-union": "^3.1.0",
- "define-property": "^0.2.5",
- "isobject": "^3.0.0",
- "static-extend": "^0.1.1"
- },
"dependencies": {
- "define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^0.1.0"
- }
- }
+ "mitt": "3.0.0"
+ },
+ "peerDependencies": {
+ "devtools-protocol": "*"
}
},
- "clean-stack": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz",
- "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==",
- "dev": true
- },
- "clean-webpack-plugin": {
- "version": "0.1.19",
- "resolved": "https://registry.npmjs.org/clean-webpack-plugin/-/clean-webpack-plugin-0.1.19.tgz",
- "integrity": "sha512-M1Li5yLHECcN2MahoreuODul5LkjohJGFxLPTjl3j1ttKrF5rgjZET1SJduuqxLAuT1gAPOdkhg03qcaaU1KeA==",
+ "node_modules/clean-webpack-plugin": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/clean-webpack-plugin/-/clean-webpack-plugin-4.0.0.tgz",
+ "integrity": "sha512-WuWE1nyTNAyW5T7oNyys2EN0cfP2fdRxhxnIQWiAp0bMabPdHhoGxM8A6YL2GhqwgrPnnaemVE7nv5XJ2Fhh2w==",
"dev": true,
- "requires": {
- "rimraf": "^2.6.1"
+ "dependencies": {
+ "del": "^4.1.1"
+ },
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "webpack": ">=4.0.0 <6.0.0"
}
},
- "cli": {
+ "node_modules/cli": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/cli/-/cli-1.0.1.tgz",
- "integrity": "sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ=",
+ "integrity": "sha512-41U72MB56TfUMGndAKK8vJ78eooOD4Z5NOL4xEfjc0c23s+6EYKXlXsmACBVclLP1yOfWCgEganVzddVrSNoTg==",
"dev": true,
- "requires": {
+ "dependencies": {
"exit": "0.1.2",
"glob": "^7.1.1"
+ },
+ "engines": {
+ "node": ">=0.2.5"
}
},
- "cliui": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
- "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
+ "node_modules/cliui": {
+ "version": "7.0.4",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
+ "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"string-width": "^4.2.0",
"strip-ansi": "^6.0.0",
- "wrap-ansi": "^6.2.0"
+ "wrap-ansi": "^7.0.0"
}
},
- "clone-deep": {
+ "node_modules/clone-deep": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz",
"integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"is-plain-object": "^2.0.4",
"kind-of": "^6.0.2",
"shallow-clone": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
}
},
- "collection-visit": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
- "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=",
- "dev": true,
- "requires": {
- "map-visit": "^1.0.0",
- "object-visit": "^1.0.0"
- }
- },
- "color-convert": {
+ "node_modules/color-convert": {
"version": "1.9.3",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
"integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
"dev": true,
- "requires": {
+ "dependencies": {
"color-name": "1.1.3"
}
},
- "color-name": {
+ "node_modules/color-name": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
- "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
+ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
"dev": true
},
- "colors": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz",
- "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==",
+ "node_modules/colorette": {
+ "version": "2.0.20",
+ "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz",
+ "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==",
"dev": true
},
- "commander": {
+ "node_modules/commander": {
"version": "2.20.3",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
"integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
"dev": true
},
- "commondir": {
+ "node_modules/commondir": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
- "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
+ "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==",
"dev": true
},
- "component-bind": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
- "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=",
- "dev": true
- },
- "component-emitter": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
- "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=",
- "dev": true
- },
- "component-inherit": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz",
- "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=",
- "dev": true
- },
- "compressible": {
+ "node_modules/compressible": {
"version": "2.0.18",
"resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz",
"integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==",
"dev": true,
- "requires": {
+ "dependencies": {
"mime-db": ">= 1.43.0 < 2"
},
- "dependencies": {
- "mime-db": {
- "version": "1.44.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz",
- "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==",
- "dev": true
- }
+ "engines": {
+ "node": ">= 0.6"
}
},
- "compression": {
+ "node_modules/compression": {
"version": "1.7.4",
"resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz",
"integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"accepts": "~1.3.5",
"bytes": "3.0.0",
"compressible": "~2.0.16",
@@ -2166,631 +2963,325 @@
"safe-buffer": "5.1.2",
"vary": "~1.1.2"
},
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/compression/node_modules/bytes": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
+ "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/compression/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
"dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
+ "ms": "2.0.0"
}
},
- "concat-map": {
+ "node_modules/compression/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true
+ },
+ "node_modules/compression/node_modules/safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+ "dev": true
+ },
+ "node_modules/concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
"dev": true
},
- "concat-stream": {
- "version": "1.6.2",
- "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
- "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
- "dev": true,
- "requires": {
- "buffer-from": "^1.0.0",
- "inherits": "^2.0.3",
- "readable-stream": "^2.2.2",
- "typedarray": "^0.0.6"
- }
- },
- "connect": {
+ "node_modules/connect": {
"version": "3.7.0",
"resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz",
"integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"debug": "2.6.9",
"finalhandler": "1.1.2",
"parseurl": "~1.3.3",
"utils-merge": "1.0.1"
},
+ "engines": {
+ "node": ">= 0.10.0"
+ }
+ },
+ "node_modules/connect-history-api-fallback": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz",
+ "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.8"
+ }
+ },
+ "node_modules/connect/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
"dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
+ "ms": "2.0.0"
}
},
- "connect-history-api-fallback": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz",
- "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==",
+ "node_modules/connect/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
"dev": true
},
- "console-browserify": {
+ "node_modules/console-browserify": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz",
- "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=",
+ "integrity": "sha512-duS7VP5pvfsNLDvL1O4VOEbw37AI3A4ZUQYemvDlnpGrNu9tprR7BYWpDYwC0Xia0Zxz5ZupdiIrUp0GH1aXfg==",
"dev": true,
- "requires": {
+ "dependencies": {
"date-now": "^0.1.4"
}
},
- "constants-browserify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
- "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=",
- "dev": true
+ "node_modules/content-disposition": {
+ "version": "0.5.4",
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
+ "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
+ "dev": true,
+ "dependencies": {
+ "safe-buffer": "5.2.1"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
},
- "content-disposition": {
- "version": "0.5.3",
- "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz",
- "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==",
+ "node_modules/content-type": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
+ "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
"dev": true,
- "requires": {
- "safe-buffer": "5.1.2"
+ "engines": {
+ "node": ">= 0.6"
}
},
- "content-type": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
- "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==",
+ "node_modules/convert-source-map": {
+ "version": "1.9.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz",
+ "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==",
"dev": true
},
- "convert-source-map": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz",
- "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==",
+ "node_modules/cookie": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz",
+ "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==",
"dev": true,
- "requires": {
- "safe-buffer": "~5.1.1"
+ "engines": {
+ "node": ">= 0.6"
}
},
- "cookie": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
- "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=",
- "dev": true
- },
- "cookie-signature": {
+ "node_modules/cookie-signature": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
- "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=",
+ "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==",
"dev": true
},
- "copy-concurrently": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz",
- "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==",
- "dev": true,
- "requires": {
- "aproba": "^1.1.1",
- "fs-write-stream-atomic": "^1.0.8",
- "iferr": "^0.1.5",
- "mkdirp": "^0.5.1",
- "rimraf": "^2.5.4",
- "run-queue": "^1.0.0"
- }
- },
- "copy-descriptor": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
- "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=",
- "dev": true
- },
- "copy-webpack-plugin": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-6.1.1.tgz",
- "integrity": "sha512-4TlkHFYkrZ3WppLA5XkPmBLI5lnEpFsXvpeqxCf5PzkratZiVklNXsvoQkLhUU43q7ZL3AOXtaHAd9jLNJoU0w==",
- "dev": true,
- "requires": {
- "cacache": "^15.0.5",
- "fast-glob": "^3.2.4",
- "find-cache-dir": "^3.3.1",
- "glob-parent": "^5.1.1",
- "globby": "^11.0.1",
- "loader-utils": "^2.0.0",
+ "node_modules/copy-webpack-plugin": {
+ "version": "11.0.0",
+ "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz",
+ "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==",
+ "dev": true,
+ "dependencies": {
+ "fast-glob": "^3.2.11",
+ "glob-parent": "^6.0.1",
+ "globby": "^13.1.1",
"normalize-path": "^3.0.0",
- "p-limit": "^3.0.2",
- "schema-utils": "^2.7.1",
- "serialize-javascript": "^5.0.1",
- "webpack-sources": "^1.4.3"
+ "schema-utils": "^4.0.0",
+ "serialize-javascript": "^6.0.0"
},
+ "engines": {
+ "node": ">= 14.15.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/webpack"
+ },
+ "peerDependencies": {
+ "webpack": "^5.1.0"
+ }
+ },
+ "node_modules/core-js-compat": {
+ "version": "3.30.1",
+ "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.30.1.tgz",
+ "integrity": "sha512-d690npR7MC6P0gq4npTl5n2VQeNAmUrJ90n+MHiKS7W2+xno4o3F5GDEuylSdi6EJ3VssibSGXOa1r3YXD3Mhw==",
+ "dev": true,
"dependencies": {
- "ajv": {
- "version": "6.12.5",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.5.tgz",
- "integrity": "sha512-lRF8RORchjpKG50/WFf8xmg7sgCLFiYNNnqdKflk63whMQcWR5ngGjiSXkL9bjxy6B2npOK2HSMN49jEBMSkag==",
- "dev": true,
- "requires": {
- "fast-deep-equal": "^3.1.1",
- "fast-json-stable-stringify": "^2.0.0",
- "json-schema-traverse": "^0.4.1",
- "uri-js": "^4.2.2"
- }
- },
- "ajv-keywords": {
- "version": "3.5.2",
- "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
- "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
- "dev": true
- },
- "cacache": {
- "version": "15.0.5",
- "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.0.5.tgz",
- "integrity": "sha512-lloiL22n7sOjEEXdL8NAjTgv9a1u43xICE9/203qonkZUCj5X1UEWIdf2/Y0d6QcCtMzbKQyhrcDbdvlZTs/+A==",
- "dev": true,
- "requires": {
- "@npmcli/move-file": "^1.0.1",
- "chownr": "^2.0.0",
- "fs-minipass": "^2.0.0",
- "glob": "^7.1.4",
- "infer-owner": "^1.0.4",
- "lru-cache": "^6.0.0",
- "minipass": "^3.1.1",
- "minipass-collect": "^1.0.2",
- "minipass-flush": "^1.0.5",
- "minipass-pipeline": "^1.2.2",
- "mkdirp": "^1.0.3",
- "p-map": "^4.0.0",
- "promise-inflight": "^1.0.1",
- "rimraf": "^3.0.2",
- "ssri": "^8.0.0",
- "tar": "^6.0.2",
- "unique-filename": "^1.1.1"
- }
- },
- "chownr": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
- "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
- "dev": true
- },
- "emojis-list": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
- "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==",
- "dev": true
- },
- "fast-deep-equal": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
- "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
- "dev": true
- },
- "find-cache-dir": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz",
- "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==",
- "dev": true,
- "requires": {
- "commondir": "^1.0.1",
- "make-dir": "^3.0.2",
- "pkg-dir": "^4.1.0"
- }
- },
- "find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "requires": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- }
- },
- "glob": {
- "version": "7.1.6",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
- "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
- "dev": true,
- "requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- }
- },
- "glob-parent": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz",
- "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==",
- "dev": true,
- "requires": {
- "is-glob": "^4.0.1"
- }
- },
- "json5": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz",
- "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==",
- "dev": true,
- "requires": {
- "minimist": "^1.2.5"
- }
- },
- "loader-utils": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz",
- "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==",
- "dev": true,
- "requires": {
- "big.js": "^5.2.2",
- "emojis-list": "^3.0.0",
- "json5": "^2.1.2"
- }
- },
- "locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "requires": {
- "p-locate": "^4.1.0"
- }
- },
- "make-dir": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
- "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
- "dev": true,
- "requires": {
- "semver": "^6.0.0"
- }
- },
- "mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true
- },
- "p-limit": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.0.2.tgz",
- "integrity": "sha512-iwqZSOoWIW+Ew4kAGUlN16J4M7OB3ysMLSZtnhmqx7njIHFPlxWBX8xo3lVTyFVq6mI/lL9qt2IsN1sHwaxJkg==",
- "dev": true,
- "requires": {
- "p-try": "^2.0.0"
- }
- },
- "p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "requires": {
- "p-limit": "^2.2.0"
- },
- "dependencies": {
- "p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "requires": {
- "p-try": "^2.0.0"
- }
- }
- }
- },
- "p-map": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz",
- "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==",
- "dev": true,
- "requires": {
- "aggregate-error": "^3.0.0"
- }
- },
- "path-exists": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
- "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
- "dev": true
- },
- "pkg-dir": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
- "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
- "dev": true,
- "requires": {
- "find-up": "^4.0.0"
- }
- },
- "rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dev": true,
- "requires": {
- "glob": "^7.1.3"
- }
- },
- "schema-utils": {
- "version": "2.7.1",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
- "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==",
- "dev": true,
- "requires": {
- "@types/json-schema": "^7.0.5",
- "ajv": "^6.12.4",
- "ajv-keywords": "^3.5.2"
- }
- },
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true
- },
- "serialize-javascript": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz",
- "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==",
- "dev": true,
- "requires": {
- "randombytes": "^2.1.0"
- }
- },
- "ssri": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.0.tgz",
- "integrity": "sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA==",
- "dev": true,
- "requires": {
- "minipass": "^3.1.1"
- }
- }
+ "browserslist": "^4.21.5"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/core-js"
}
},
- "core-util-is": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
- "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
+ "node_modules/core-util-is": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
+ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
"dev": true
},
- "create-ecdh": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz",
- "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==",
+ "node_modules/cors": {
+ "version": "2.8.5",
+ "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz",
+ "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==",
"dev": true,
- "requires": {
- "bn.js": "^4.1.0",
- "elliptic": "^6.5.3"
- },
"dependencies": {
- "bn.js": {
- "version": "4.11.9",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
- "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
- "dev": true
- }
+ "object-assign": "^4",
+ "vary": "^1"
+ },
+ "engines": {
+ "node": ">= 0.10"
}
},
- "create-hash": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
- "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
+ "node_modules/cosmiconfig": {
+ "version": "8.1.3",
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.1.3.tgz",
+ "integrity": "sha512-/UkO2JKI18b5jVMJUp0lvKFMpa/Gye+ZgZjKD+DGEN9y7NRcf/nK1A0sp67ONmKtnDCNMS44E6jrk0Yc3bDuUw==",
"dev": true,
- "requires": {
- "cipher-base": "^1.0.1",
- "inherits": "^2.0.1",
- "md5.js": "^1.3.4",
- "ripemd160": "^2.0.1",
- "sha.js": "^2.4.0"
+ "dependencies": {
+ "import-fresh": "^3.2.1",
+ "js-yaml": "^4.1.0",
+ "parse-json": "^5.0.0",
+ "path-type": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/d-fischer"
}
},
- "create-hmac": {
- "version": "1.1.7",
- "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
- "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
+ "node_modules/cross-fetch": {
+ "version": "3.1.5",
+ "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz",
+ "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==",
"dev": true,
- "requires": {
- "cipher-base": "^1.0.3",
- "create-hash": "^1.1.0",
- "inherits": "^2.0.1",
- "ripemd160": "^2.0.0",
- "safe-buffer": "^5.0.1",
- "sha.js": "^2.4.8"
+ "dependencies": {
+ "node-fetch": "2.6.7"
}
},
- "cross-spawn": {
+ "node_modules/cross-spawn": {
"version": "6.0.5",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
"integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"nice-try": "^1.0.4",
"path-key": "^2.0.1",
"semver": "^5.5.0",
"shebang-command": "^1.2.0",
"which": "^1.2.9"
+ },
+ "engines": {
+ "node": ">=4.8"
}
},
- "crypto-browserify": {
- "version": "3.12.0",
- "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
- "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==",
+ "node_modules/cross-spawn/node_modules/semver": {
+ "version": "5.7.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
+ "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
"dev": true,
- "requires": {
- "browserify-cipher": "^1.0.0",
- "browserify-sign": "^4.0.0",
- "create-ecdh": "^4.0.0",
- "create-hash": "^1.1.0",
- "create-hmac": "^1.1.0",
- "diffie-hellman": "^5.0.0",
- "inherits": "^2.0.1",
- "pbkdf2": "^3.0.3",
- "public-encrypt": "^4.0.0",
- "randombytes": "^2.0.0",
- "randomfill": "^1.0.3"
+ "bin": {
+ "semver": "bin/semver"
}
},
- "custom-event": {
+ "node_modules/custom-event": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz",
- "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=",
- "dev": true
- },
- "cyclist": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz",
- "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=",
- "dev": true
- },
- "date-format": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/date-format/-/date-format-2.1.0.tgz",
- "integrity": "sha512-bYQuGLeFxhkxNOF3rcMtiZxvCBAquGzZm6oWA1oZ0g2THUzivaRhv8uOhdr19LmoobSOLoIAxeUK2RdbM8IFTA==",
- "dev": true
- },
- "date-now": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz",
- "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=",
+ "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==",
"dev": true
},
- "debug": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
- "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
+ "node_modules/date-format": {
+ "version": "4.0.14",
+ "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.14.tgz",
+ "integrity": "sha512-39BOQLs9ZjKh0/patS9nrT8wc3ioX3/eA/zgbKNopnF2wCqJEoxywwwElATYvRsXdnOxA/OQeQoFZ3rFjVajhg==",
"dev": true,
- "requires": {
- "ms": "^2.1.1"
+ "engines": {
+ "node": ">=4.0"
}
},
- "decamelize": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
- "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
- "dev": true
- },
- "decode-uri-component": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz",
- "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=",
+ "node_modules/date-now": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz",
+ "integrity": "sha512-AsElvov3LoNB7tf5k37H2jYSB+ZZPMT5sG2QjJCcdlV5chIv6htBUBUui2IKRjgtKAKtCBN7Zbwa+MtwLjSeNw==",
"dev": true
},
- "deep-equal": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz",
- "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==",
+ "node_modules/debug": {
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"dev": true,
- "requires": {
- "is-arguments": "^1.0.4",
- "is-date-object": "^1.0.1",
- "is-regex": "^1.0.4",
- "object-is": "^1.0.1",
- "object-keys": "^1.1.1",
- "regexp.prototype.flags": "^1.2.0"
- },
"dependencies": {
- "object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
- "dev": true
+ "ms": "2.1.2"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
}
}
},
- "default-gateway": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz",
- "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==",
+ "node_modules/default-gateway": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz",
+ "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==",
"dev": true,
- "requires": {
- "execa": "^1.0.0",
- "ip-regex": "^2.1.0"
+ "dependencies": {
+ "execa": "^5.0.0"
+ },
+ "engines": {
+ "node": ">= 10"
}
},
- "define-properties": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
- "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
+ "node_modules/define-lazy-prop": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz",
+ "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==",
"dev": true,
- "requires": {
- "object-keys": "^1.0.12"
+ "engines": {
+ "node": ">=8"
}
},
- "define-property": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
- "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
+ "node_modules/define-properties": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz",
+ "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==",
"dev": true,
- "requires": {
- "is-descriptor": "^1.0.2",
- "isobject": "^3.0.1"
- },
"dependencies": {
- "is-accessor-descriptor": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
- "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
- "dev": true,
- "requires": {
- "kind-of": "^6.0.0"
- }
- },
- "is-data-descriptor": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
- "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
- "dev": true,
- "requires": {
- "kind-of": "^6.0.0"
- }
- },
- "is-descriptor": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
- "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "^1.0.0",
- "is-data-descriptor": "^1.0.0",
- "kind-of": "^6.0.2"
- }
- }
+ "has-property-descriptors": "^1.0.0",
+ "object-keys": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "del": {
+ "node_modules/del": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz",
"integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"@types/glob": "^7.1.1",
"globby": "^6.1.0",
"is-path-cwd": "^2.0.0",
@@ -2799,1014 +3290,852 @@
"pify": "^4.0.1",
"rimraf": "^2.6.3"
},
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/del/node_modules/globby": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
+ "integrity": "sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw==",
+ "dev": true,
"dependencies": {
- "globby": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
- "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=",
- "dev": true,
- "requires": {
- "array-union": "^1.0.1",
- "glob": "^7.0.3",
- "object-assign": "^4.0.1",
- "pify": "^2.0.0",
- "pinkie-promise": "^2.0.0"
- },
- "dependencies": {
- "pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
- "dev": true
- }
- }
- },
- "pify": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
- "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
- "dev": true
- }
+ "array-union": "^1.0.1",
+ "glob": "^7.0.3",
+ "object-assign": "^4.0.1",
+ "pify": "^2.0.0",
+ "pinkie-promise": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "depd": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
- "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
- "dev": true
+ "node_modules/del/node_modules/globby/node_modules/pify": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+ "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "des.js": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz",
- "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==",
+ "node_modules/depd": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
+ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
"dev": true,
- "requires": {
- "inherits": "^2.0.1",
- "minimalistic-assert": "^1.0.0"
+ "engines": {
+ "node": ">= 0.8"
}
},
- "destroy": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
- "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=",
- "dev": true
+ "node_modules/destroy": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
+ "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8",
+ "npm": "1.2.8000 || >= 1.4.16"
+ }
},
- "detect-file": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz",
- "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=",
+ "node_modules/detect-node": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz",
+ "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==",
"dev": true
},
- "detect-node": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz",
- "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==",
+ "node_modules/devtools-protocol": {
+ "version": "0.0.1107588",
+ "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1107588.tgz",
+ "integrity": "sha512-yIR+pG9x65Xko7bErCUSQaDLrO/P1p3JUzEk7JCU4DowPcGHkTGUGQapcfcLc4qj0UaALwZ+cr0riFgiqpixcg==",
"dev": true
},
- "di": {
+ "node_modules/di": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz",
- "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=",
+ "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==",
"dev": true
},
- "diffie-hellman": {
- "version": "5.0.3",
- "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
- "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
- "dev": true,
- "requires": {
- "bn.js": "^4.1.0",
- "miller-rabin": "^4.0.0",
- "randombytes": "^2.0.0"
- },
- "dependencies": {
- "bn.js": {
- "version": "4.11.9",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
- "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
- "dev": true
- }
- }
- },
- "dir-glob": {
+ "node_modules/dir-glob": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
"integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
"dev": true,
- "requires": {
+ "dependencies": {
"path-type": "^4.0.0"
},
- "dependencies": {
- "path-type": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
- "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
- "dev": true
- }
+ "engines": {
+ "node": ">=8"
}
},
- "dns-equal": {
+ "node_modules/dns-equal": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz",
- "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=",
+ "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==",
"dev": true
},
- "dns-packet": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz",
- "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==",
- "dev": true,
- "requires": {
- "ip": "^1.1.0",
- "safe-buffer": "^5.0.1"
- }
- },
- "dns-txt": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz",
- "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=",
+ "node_modules/dns-packet": {
+ "version": "5.6.0",
+ "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.0.tgz",
+ "integrity": "sha512-rza3UH1LwdHh9qyPXp8lkwpjSNk/AMD3dPytUoRoqnypDUhY0xvbdmVhWOfxO68frEfV9BU8V12Ez7ZsHGZpCQ==",
"dev": true,
- "requires": {
- "buffer-indexof": "^1.0.0"
+ "dependencies": {
+ "@leichtgewicht/ip-codec": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=6"
}
},
- "dom-serialize": {
+ "node_modules/dom-serialize": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz",
- "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=",
+ "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"custom-event": "~1.0.0",
"ent": "~2.2.0",
"extend": "^3.0.0",
"void-elements": "^2.0.0"
}
},
- "dom-serializer": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz",
- "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==",
+ "node_modules/dom-serializer": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz",
+ "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==",
"dev": true,
- "requires": {
- "domelementtype": "^1.3.0",
- "entities": "^1.1.1"
- },
"dependencies": {
- "entities": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
- "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==",
- "dev": true
- }
+ "domelementtype": "^2.0.1",
+ "entities": "^2.0.0"
}
},
- "domain-browser": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz",
- "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==",
- "dev": true
+ "node_modules/dom-serializer/node_modules/domelementtype": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
+ "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/fb55"
+ }
+ ]
+ },
+ "node_modules/dom-serializer/node_modules/entities": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz",
+ "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/fb55/entities?sponsor=1"
+ }
},
- "domelementtype": {
+ "node_modules/domelementtype": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
"integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==",
"dev": true
},
- "domhandler": {
+ "node_modules/domhandler": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz",
- "integrity": "sha1-LeWaCCLVAn+r/28DLCsloqir5zg=",
+ "integrity": "sha512-q9bUwjfp7Eif8jWxxxPSykdRZAb6GkguBGSgvvCrhI9wB71W2K/Kvv4E61CF/mcCfnVJDeDWx/Vb/uAqbDj6UQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"domelementtype": "1"
}
},
- "domutils": {
+ "node_modules/domutils": {
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
- "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=",
+ "integrity": "sha512-gSu5Oi/I+3wDENBsOWBiRK1eoGxcywYSqg3rR960/+EfY0CF4EX1VPkgHOZ3WiS/Jg2DtliF6BhWcHlfpYUcGw==",
"dev": true,
- "requires": {
+ "dependencies": {
"dom-serializer": "0",
"domelementtype": "1"
}
},
- "duplexify": {
- "version": "3.7.1",
- "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz",
- "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==",
- "dev": true,
- "requires": {
- "end-of-stream": "^1.0.0",
- "inherits": "^2.0.1",
- "readable-stream": "^2.0.0",
- "stream-shift": "^1.0.0"
- }
- },
- "ee-first": {
+ "node_modules/ee-first": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
- "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=",
- "dev": true
- },
- "electron-to-chromium": {
- "version": "1.3.113",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.113.tgz",
- "integrity": "sha512-De+lPAxEcpxvqPTyZAXELNpRZXABRxf+uL/rSykstQhzj/B0l1150G/ExIIxKc16lI89Hgz81J0BHAcbTqK49g==",
+ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==",
"dev": true
},
- "elliptic": {
- "version": "6.5.3",
- "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz",
- "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==",
- "dev": true,
- "requires": {
- "bn.js": "^4.4.0",
- "brorand": "^1.0.1",
- "hash.js": "^1.0.0",
- "hmac-drbg": "^1.0.0",
- "inherits": "^2.0.1",
- "minimalistic-assert": "^1.0.0",
- "minimalistic-crypto-utils": "^1.0.0"
- },
- "dependencies": {
- "bn.js": {
- "version": "4.11.9",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
- "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
- "dev": true
- }
- }
- },
- "emoji-regex": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
- "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
+ "node_modules/electron-to-chromium": {
+ "version": "1.4.368",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.368.tgz",
+ "integrity": "sha512-e2aeCAixCj9M7nJxdB/wDjO6mbYX+lJJxSJCXDzlr5YPGYVofuJwGN9nKg2o6wWInjX6XmxRinn3AeJMK81ltw==",
"dev": true
},
- "emojis-list": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz",
- "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=",
+ "node_modules/emoji-regex": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
"dev": true
},
- "encodeurl": {
+ "node_modules/encodeurl": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
- "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=",
- "dev": true
+ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8"
+ }
},
- "end-of-stream": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz",
- "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==",
+ "node_modules/end-of-stream": {
+ "version": "1.4.4",
+ "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
+ "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
"dev": true,
- "requires": {
+ "dependencies": {
"once": "^1.4.0"
}
},
- "engine.io": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.2.1.tgz",
- "integrity": "sha512-+VlKzHzMhaU+GsCIg4AoXF1UdDFjHHwMmMKqMJNDNLlUlejz58FCy4LBqB2YVJskHGYl06BatYWKP2TVdVXE5w==",
+ "node_modules/engine.io": {
+ "version": "6.4.1",
+ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.4.1.tgz",
+ "integrity": "sha512-JFYQurD/nbsA5BSPmbaOSLa3tSVj8L6o4srSwXXY3NqE+gGUNmmPTbhn8tjzcCtSqhFgIeqef81ngny8JM25hw==",
"dev": true,
- "requires": {
+ "dependencies": {
+ "@types/cookie": "^0.4.1",
+ "@types/cors": "^2.8.12",
+ "@types/node": ">=10.0.0",
"accepts": "~1.3.4",
- "base64id": "1.0.0",
- "cookie": "0.3.1",
- "debug": "~3.1.0",
- "engine.io-parser": "~2.1.0",
- "ws": "~3.3.1"
+ "base64id": "2.0.0",
+ "cookie": "~0.4.1",
+ "cors": "~2.8.5",
+ "debug": "~4.3.1",
+ "engine.io-parser": "~5.0.3",
+ "ws": "~8.11.0"
},
- "dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
+ "engines": {
+ "node": ">=10.0.0"
}
},
- "engine.io-client": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz",
- "integrity": "sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw==",
- "dev": true,
- "requires": {
- "component-emitter": "1.2.1",
- "component-inherit": "0.0.3",
- "debug": "~3.1.0",
- "engine.io-parser": "~2.1.1",
- "has-cors": "1.1.0",
- "indexof": "0.0.1",
- "parseqs": "0.0.5",
- "parseuri": "0.0.5",
- "ws": "~3.3.1",
- "xmlhttprequest-ssl": "~1.5.4",
- "yeast": "0.1.2"
- },
- "dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
+ "node_modules/engine.io-parser": {
+ "version": "5.0.6",
+ "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.6.tgz",
+ "integrity": "sha512-tjuoZDMAdEhVnSFleYPCtdL2GXwVTGtNjoeJd9IhIG3C1xs9uwxqRNEu5WpnDZCaozwVlK/nuQhpodhXSIMaxw==",
+ "dev": true,
+ "engines": {
+ "node": ">=10.0.0"
}
},
- "engine.io-parser": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.3.tgz",
- "integrity": "sha512-6HXPre2O4Houl7c4g7Ic/XzPnHBvaEmN90vtRO9uLmwtRqQmTOw0QMevL1TOfL2Cpu1VzsaTmMotQgMdkzGkVA==",
+ "node_modules/engine.io/node_modules/ws": {
+ "version": "8.11.0",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz",
+ "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==",
"dev": true,
- "requires": {
- "after": "0.8.2",
- "arraybuffer.slice": "~0.0.7",
- "base64-arraybuffer": "0.1.5",
- "blob": "0.0.5",
- "has-binary2": "~1.0.2"
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": "^5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
}
},
- "enhanced-resolve": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz",
- "integrity": "sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==",
+ "node_modules/enhanced-resolve": {
+ "version": "5.12.0",
+ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz",
+ "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==",
"dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "memory-fs": "^0.5.0",
- "tapable": "^1.0.0"
- },
- "dependencies": {
- "memory-fs": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz",
- "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==",
- "dev": true,
- "requires": {
- "errno": "^0.1.3",
- "readable-stream": "^2.0.1"
- }
- }
+ "dependencies": {
+ "graceful-fs": "^4.2.4",
+ "tapable": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=10.13.0"
}
},
- "ent": {
+ "node_modules/ent": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz",
- "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=",
+ "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==",
"dev": true
},
- "entities": {
+ "node_modules/entities": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz",
- "integrity": "sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY=",
+ "integrity": "sha512-LbLqfXgJMmy81t+7c14mnulFHJ170cM6E+0vMXR9k/ZiZwgX8i5pNgjTCX3SO4VeUsFLV+8InixoretwU+MjBQ==",
"dev": true
},
- "errno": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz",
- "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==",
+ "node_modules/envinfo": {
+ "version": "7.8.1",
+ "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz",
+ "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==",
"dev": true,
- "requires": {
- "prr": "~1.0.1"
+ "bin": {
+ "envinfo": "dist/cli.js"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "error-ex": {
+ "node_modules/error-ex": {
"version": "1.3.2",
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
"integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
"dev": true,
- "requires": {
+ "dependencies": {
"is-arrayish": "^0.2.1"
}
},
- "es-abstract": {
- "version": "1.13.0",
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz",
- "integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==",
+ "node_modules/es-abstract": {
+ "version": "1.21.2",
+ "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.2.tgz",
+ "integrity": "sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==",
"dev": true,
- "requires": {
- "es-to-primitive": "^1.2.0",
- "function-bind": "^1.1.1",
+ "dependencies": {
+ "array-buffer-byte-length": "^1.0.0",
+ "available-typed-arrays": "^1.0.5",
+ "call-bind": "^1.0.2",
+ "es-set-tostringtag": "^2.0.1",
+ "es-to-primitive": "^1.2.1",
+ "function.prototype.name": "^1.1.5",
+ "get-intrinsic": "^1.2.0",
+ "get-symbol-description": "^1.0.0",
+ "globalthis": "^1.0.3",
+ "gopd": "^1.0.1",
"has": "^1.0.3",
- "is-callable": "^1.1.4",
- "is-regex": "^1.0.4",
- "object-keys": "^1.0.12"
+ "has-property-descriptors": "^1.0.0",
+ "has-proto": "^1.0.1",
+ "has-symbols": "^1.0.3",
+ "internal-slot": "^1.0.5",
+ "is-array-buffer": "^3.0.2",
+ "is-callable": "^1.2.7",
+ "is-negative-zero": "^2.0.2",
+ "is-regex": "^1.1.4",
+ "is-shared-array-buffer": "^1.0.2",
+ "is-string": "^1.0.7",
+ "is-typed-array": "^1.1.10",
+ "is-weakref": "^1.0.2",
+ "object-inspect": "^1.12.3",
+ "object-keys": "^1.1.1",
+ "object.assign": "^4.1.4",
+ "regexp.prototype.flags": "^1.4.3",
+ "safe-regex-test": "^1.0.0",
+ "string.prototype.trim": "^1.2.7",
+ "string.prototype.trimend": "^1.0.6",
+ "string.prototype.trimstart": "^1.0.6",
+ "typed-array-length": "^1.0.4",
+ "unbox-primitive": "^1.0.2",
+ "which-typed-array": "^1.1.9"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "es-to-primitive": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz",
- "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==",
+ "node_modules/es-module-lexer": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.2.1.tgz",
+ "integrity": "sha512-9978wrXM50Y4rTMmW5kXIC09ZdXQZqkE4mxhwkd8VbzsGkXGPgV4zWuqQJgCEzYngdo2dYDa0l8xhX4fkSwJSg==",
+ "dev": true
+ },
+ "node_modules/es-set-tostringtag": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz",
+ "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==",
+ "dev": true,
+ "dependencies": {
+ "get-intrinsic": "^1.1.3",
+ "has": "^1.0.3",
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/es-to-primitive": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
+ "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
"dev": true,
- "requires": {
+ "dependencies": {
"is-callable": "^1.1.4",
"is-date-object": "^1.0.1",
"is-symbol": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/escalade": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
+ "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
}
},
- "escape-html": {
+ "node_modules/escape-html": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
- "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=",
+ "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==",
"dev": true
},
- "escape-string-regexp": {
+ "node_modules/escape-string-regexp": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
- "dev": true
+ "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.8.0"
+ }
},
- "eslint-scope": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz",
- "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==",
+ "node_modules/eslint-scope": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
+ "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
"dev": true,
- "requires": {
- "esrecurse": "^4.1.0",
+ "dependencies": {
+ "esrecurse": "^4.3.0",
"estraverse": "^4.1.1"
+ },
+ "engines": {
+ "node": ">=8.0.0"
}
},
- "esrecurse": {
+ "node_modules/esrecurse": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
"integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
"dev": true,
- "requires": {
+ "dependencies": {
"estraverse": "^5.2.0"
},
- "dependencies": {
- "estraverse": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz",
- "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==",
- "dev": true
- }
+ "engines": {
+ "node": ">=4.0"
}
},
- "estraverse": {
+ "node_modules/esrecurse/node_modules/estraverse": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
+ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
+ "dev": true,
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
+ "node_modules/estraverse": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
"integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=4.0"
+ }
},
- "esutils": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz",
- "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=",
- "dev": true
+ "node_modules/esutils": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
+ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "etag": {
+ "node_modules/etag": {
"version": "1.8.1",
"resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
- "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=",
- "dev": true
+ "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.6"
+ }
},
- "eventemitter3": {
+ "node_modules/eventemitter3": {
"version": "4.0.7",
"resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz",
"integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==",
"dev": true
},
- "events": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz",
- "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==",
- "dev": true
+ "node_modules/events": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
+ "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.8.x"
+ }
},
- "eventsource": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz",
- "integrity": "sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==",
+ "node_modules/execa": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz",
+ "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==",
"dev": true,
- "requires": {
- "original": "^1.0.0"
+ "dependencies": {
+ "cross-spawn": "^7.0.3",
+ "get-stream": "^6.0.0",
+ "human-signals": "^2.1.0",
+ "is-stream": "^2.0.0",
+ "merge-stream": "^2.0.0",
+ "npm-run-path": "^4.0.1",
+ "onetime": "^5.1.2",
+ "signal-exit": "^3.0.3",
+ "strip-final-newline": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sindresorhus/execa?sponsor=1"
}
},
- "evp_bytestokey": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
- "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
+ "node_modules/execa/node_modules/cross-spawn": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
+ "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
"dev": true,
- "requires": {
- "md5.js": "^1.3.4",
- "safe-buffer": "^5.1.1"
+ "dependencies": {
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
+ },
+ "engines": {
+ "node": ">= 8"
}
},
- "execa": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz",
- "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==",
+ "node_modules/execa/node_modules/get-stream": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
+ "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==",
"dev": true,
- "requires": {
- "cross-spawn": "^6.0.0",
- "get-stream": "^4.0.0",
- "is-stream": "^1.1.0",
- "npm-run-path": "^2.0.0",
- "p-finally": "^1.0.0",
- "signal-exit": "^3.0.0",
- "strip-eof": "^1.0.0"
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "exit": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
- "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
- "dev": true
+ "node_modules/execa/node_modules/path-key": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "expand-brackets": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
- "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=",
+ "node_modules/execa/node_modules/shebang-command": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
"dev": true,
- "requires": {
- "debug": "^2.3.3",
- "define-property": "^0.2.5",
- "extend-shallow": "^2.0.1",
- "posix-character-classes": "^0.1.0",
- "regex-not": "^1.0.0",
- "snapdragon": "^0.8.1",
- "to-regex": "^3.0.1"
- },
"dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^0.1.0"
- }
- },
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "^0.1.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
+ "shebang-regex": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/execa/node_modules/shebang-regex": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
}
},
- "expand-tilde": {
+ "node_modules/execa/node_modules/which": {
"version": "2.0.2",
- "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz",
- "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=",
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
+ "dev": true,
+ "dependencies": {
+ "isexe": "^2.0.0"
+ },
+ "bin": {
+ "node-which": "bin/node-which"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/exit": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
+ "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==",
"dev": true,
- "requires": {
- "homedir-polyfill": "^1.0.1"
+ "engines": {
+ "node": ">= 0.8.0"
}
},
- "express": {
- "version": "4.17.1",
- "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz",
- "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==",
+ "node_modules/express": {
+ "version": "4.18.2",
+ "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz",
+ "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==",
"dev": true,
- "requires": {
- "accepts": "~1.3.7",
+ "dependencies": {
+ "accepts": "~1.3.8",
"array-flatten": "1.1.1",
- "body-parser": "1.19.0",
- "content-disposition": "0.5.3",
+ "body-parser": "1.20.1",
+ "content-disposition": "0.5.4",
"content-type": "~1.0.4",
- "cookie": "0.4.0",
+ "cookie": "0.5.0",
"cookie-signature": "1.0.6",
"debug": "2.6.9",
- "depd": "~1.1.2",
+ "depd": "2.0.0",
"encodeurl": "~1.0.2",
"escape-html": "~1.0.3",
"etag": "~1.8.1",
- "finalhandler": "~1.1.2",
+ "finalhandler": "1.2.0",
"fresh": "0.5.2",
+ "http-errors": "2.0.0",
"merge-descriptors": "1.0.1",
"methods": "~1.1.2",
- "on-finished": "~2.3.0",
+ "on-finished": "2.4.1",
"parseurl": "~1.3.3",
"path-to-regexp": "0.1.7",
- "proxy-addr": "~2.0.5",
- "qs": "6.7.0",
+ "proxy-addr": "~2.0.7",
+ "qs": "6.11.0",
"range-parser": "~1.2.1",
- "safe-buffer": "5.1.2",
- "send": "0.17.1",
- "serve-static": "1.14.1",
- "setprototypeof": "1.1.1",
- "statuses": "~1.5.0",
+ "safe-buffer": "5.2.1",
+ "send": "0.18.0",
+ "serve-static": "1.15.0",
+ "setprototypeof": "1.2.0",
+ "statuses": "2.0.1",
"type-is": "~1.6.18",
"utils-merge": "1.0.1",
"vary": "~1.1.2"
},
+ "engines": {
+ "node": ">= 0.10.0"
+ }
+ },
+ "node_modules/express/node_modules/array-flatten": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
+ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==",
+ "dev": true
+ },
+ "node_modules/express/node_modules/body-parser": {
+ "version": "1.20.1",
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz",
+ "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==",
+ "dev": true,
"dependencies": {
- "accepts": {
- "version": "1.3.7",
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz",
- "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==",
- "dev": true,
- "requires": {
- "mime-types": "~2.1.24",
- "negotiator": "0.6.2"
- }
- },
- "array-flatten": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
- "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=",
- "dev": true
- },
- "body-parser": {
- "version": "1.19.0",
- "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz",
- "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==",
- "dev": true,
- "requires": {
- "bytes": "3.1.0",
- "content-type": "~1.0.4",
- "debug": "2.6.9",
- "depd": "~1.1.2",
- "http-errors": "1.7.2",
- "iconv-lite": "0.4.24",
- "on-finished": "~2.3.0",
- "qs": "6.7.0",
- "raw-body": "2.4.0",
- "type-is": "~1.6.17"
- }
- },
- "bytes": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz",
- "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==",
- "dev": true
- },
- "cookie": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz",
- "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==",
- "dev": true
- },
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "http-errors": {
- "version": "1.7.2",
- "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz",
- "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==",
- "dev": true,
- "requires": {
- "depd": "~1.1.2",
- "inherits": "2.0.3",
- "setprototypeof": "1.1.1",
- "statuses": ">= 1.5.0 < 2",
- "toidentifier": "1.0.0"
- }
- },
- "iconv-lite": {
- "version": "0.4.24",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
- "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
- "dev": true,
- "requires": {
- "safer-buffer": ">= 2.1.2 < 3"
- }
- },
- "mime-db": {
- "version": "1.44.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz",
- "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==",
- "dev": true
- },
- "mime-types": {
- "version": "2.1.27",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz",
- "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==",
- "dev": true,
- "requires": {
- "mime-db": "1.44.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- },
- "negotiator": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz",
- "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==",
- "dev": true
- },
- "qs": {
- "version": "6.7.0",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz",
- "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==",
- "dev": true
- },
- "range-parser": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
- "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
- "dev": true
- },
- "raw-body": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz",
- "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==",
- "dev": true,
- "requires": {
- "bytes": "3.1.0",
- "http-errors": "1.7.2",
- "iconv-lite": "0.4.24",
- "unpipe": "1.0.0"
- }
- },
- "setprototypeof": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz",
- "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==",
- "dev": true
- },
- "type-is": {
- "version": "1.6.18",
- "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
- "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
- "dev": true,
- "requires": {
- "media-typer": "0.3.0",
- "mime-types": "~2.1.24"
- }
- }
+ "bytes": "3.1.2",
+ "content-type": "~1.0.4",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "http-errors": "2.0.0",
+ "iconv-lite": "0.4.24",
+ "on-finished": "2.4.1",
+ "qs": "6.11.0",
+ "raw-body": "2.5.1",
+ "type-is": "~1.6.18",
+ "unpipe": "1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8",
+ "npm": "1.2.8000 || >= 1.4.16"
+ }
+ },
+ "node_modules/express/node_modules/cookie": {
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
+ "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/express/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "dependencies": {
+ "ms": "2.0.0"
+ }
+ },
+ "node_modules/express/node_modules/finalhandler": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz",
+ "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==",
+ "dev": true,
+ "dependencies": {
+ "debug": "2.6.9",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "on-finished": "2.4.1",
+ "parseurl": "~1.3.3",
+ "statuses": "2.0.1",
+ "unpipe": "~1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/express/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true
+ },
+ "node_modules/express/node_modules/raw-body": {
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz",
+ "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==",
+ "dev": true,
+ "dependencies": {
+ "bytes": "3.1.2",
+ "http-errors": "2.0.0",
+ "iconv-lite": "0.4.24",
+ "unpipe": "1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/express/node_modules/statuses": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
+ "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8"
}
},
- "extend": {
+ "node_modules/extend": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
"integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
"dev": true
},
- "extend-shallow": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
- "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=",
- "dev": true,
- "requires": {
- "assign-symbols": "^1.0.0",
- "is-extendable": "^1.0.1"
- },
- "dependencies": {
- "is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
- "dev": true,
- "requires": {
- "is-plain-object": "^2.0.4"
- }
- }
- }
- },
- "extglob": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
- "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
- "dev": true,
- "requires": {
- "array-unique": "^0.3.2",
- "define-property": "^1.0.0",
- "expand-brackets": "^2.1.4",
- "extend-shallow": "^2.0.1",
- "fragment-cache": "^0.2.1",
- "regex-not": "^1.0.0",
- "snapdragon": "^0.8.1",
- "to-regex": "^3.0.1"
- },
- "dependencies": {
- "define-property": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
- "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^1.0.0"
- }
- },
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "^0.1.0"
- }
- },
- "is-accessor-descriptor": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
- "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
- "dev": true,
- "requires": {
- "kind-of": "^6.0.0"
- }
- },
- "is-data-descriptor": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
- "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
- "dev": true,
- "requires": {
- "kind-of": "^6.0.0"
- }
- },
- "is-descriptor": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
- "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "^1.0.0",
- "is-data-descriptor": "^1.0.0",
- "kind-of": "^6.0.2"
- }
- }
+ "node_modules/extract-zip": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz",
+ "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==",
+ "dev": true,
+ "dependencies": {
+ "debug": "^4.1.1",
+ "get-stream": "^5.1.0",
+ "yauzl": "^2.10.0"
+ },
+ "bin": {
+ "extract-zip": "cli.js"
+ },
+ "engines": {
+ "node": ">= 10.17.0"
+ },
+ "optionalDependencies": {
+ "@types/yauzl": "^2.9.1"
}
},
- "fast-deep-equal": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz",
- "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=",
+ "node_modules/fast-deep-equal": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
"dev": true
},
- "fast-glob": {
- "version": "3.2.4",
- "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz",
- "integrity": "sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==",
+ "node_modules/fast-glob": {
+ "version": "3.2.12",
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz",
+ "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==",
"dev": true,
- "requires": {
+ "dependencies": {
"@nodelib/fs.stat": "^2.0.2",
"@nodelib/fs.walk": "^1.2.3",
- "glob-parent": "^5.1.0",
+ "glob-parent": "^5.1.2",
"merge2": "^1.3.0",
- "micromatch": "^4.0.2",
- "picomatch": "^2.2.1"
+ "micromatch": "^4.0.4"
},
+ "engines": {
+ "node": ">=8.6.0"
+ }
+ },
+ "node_modules/fast-glob/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
"dependencies": {
- "braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
- "dev": true,
- "requires": {
- "fill-range": "^7.0.1"
- }
- },
- "fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
- "dev": true,
- "requires": {
- "to-regex-range": "^5.0.1"
- }
- },
- "glob-parent": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz",
- "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==",
- "dev": true,
- "requires": {
- "is-glob": "^4.0.1"
- }
- },
- "is-number": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
- "dev": true
- },
- "micromatch": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz",
- "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==",
- "dev": true,
- "requires": {
- "braces": "^3.0.1",
- "picomatch": "^2.0.5"
- }
- },
- "to-regex-range": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
- "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
- "dev": true,
- "requires": {
- "is-number": "^7.0.0"
- }
- }
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
}
},
- "fast-json-stable-stringify": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz",
- "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=",
+ "node_modules/fast-json-stable-stringify": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
+ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
"dev": true
},
- "fastq": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.8.0.tgz",
- "integrity": "sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q==",
+ "node_modules/fastest-levenshtein": {
+ "version": "1.0.16",
+ "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz",
+ "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 4.9.1"
+ }
+ },
+ "node_modules/fastq": {
+ "version": "1.15.0",
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz",
+ "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
"dev": true,
- "requires": {
+ "dependencies": {
"reusify": "^1.0.4"
}
},
- "faye-websocket": {
- "version": "0.10.0",
- "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz",
- "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=",
+ "node_modules/faye-websocket": {
+ "version": "0.11.4",
+ "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz",
+ "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==",
"dev": true,
- "requires": {
+ "dependencies": {
"websocket-driver": ">=0.5.1"
+ },
+ "engines": {
+ "node": ">=0.8.0"
}
},
- "figgy-pudding": {
- "version": "3.5.2",
- "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz",
- "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==",
- "dev": true
- },
- "file-uri-to-path": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
- "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
+ "node_modules/fd-slicer": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
+ "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==",
"dev": true,
- "optional": true
+ "dependencies": {
+ "pend": "~1.2.0"
+ }
},
- "fill-range": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
- "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
- "dev": true,
- "requires": {
- "extend-shallow": "^2.0.1",
- "is-number": "^3.0.0",
- "repeat-string": "^1.6.1",
- "to-regex-range": "^2.1.0"
- },
- "dependencies": {
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "^0.1.0"
- }
- }
+ "node_modules/fill-range": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
+ "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "dev": true,
+ "dependencies": {
+ "to-regex-range": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "finalhandler": {
+ "node_modules/finalhandler": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz",
"integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==",
"dev": true,
- "requires": {
+ "dependencies": {
"debug": "2.6.9",
"encodeurl": "~1.0.2",
"escape-html": "~1.0.3",
@@ -3815,2374 +4144,1808 @@
"statuses": "~1.5.0",
"unpipe": "~1.0.0"
},
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- },
- "parseurl": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
- "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
- "dev": true
- }
+ "engines": {
+ "node": ">= 0.8"
}
},
- "find-cache-dir": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz",
- "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==",
+ "node_modules/finalhandler/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"dev": true,
- "requires": {
- "commondir": "^1.0.1",
- "make-dir": "^2.0.0",
- "pkg-dir": "^3.0.0"
+ "dependencies": {
+ "ms": "2.0.0"
}
},
- "find-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
- "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
+ "node_modules/finalhandler/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true
+ },
+ "node_modules/finalhandler/node_modules/on-finished": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
+ "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==",
"dev": true,
- "requires": {
- "locate-path": "^3.0.0"
+ "dependencies": {
+ "ee-first": "1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.8"
}
},
- "findup-sync": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz",
- "integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==",
+ "node_modules/find-cache-dir": {
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz",
+ "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==",
"dev": true,
- "requires": {
- "detect-file": "^1.0.0",
- "is-glob": "^4.0.0",
- "micromatch": "^3.0.4",
- "resolve-dir": "^1.0.1"
+ "dependencies": {
+ "commondir": "^1.0.1",
+ "make-dir": "^3.0.2",
+ "pkg-dir": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/avajs/find-cache-dir?sponsor=1"
}
},
- "flatted": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz",
- "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==",
- "dev": true
- },
- "flush-write-stream": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz",
- "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==",
+ "node_modules/find-up": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
"dev": true,
- "requires": {
- "inherits": "^2.0.3",
- "readable-stream": "^2.3.6"
+ "dependencies": {
+ "locate-path": "^5.0.0",
+ "path-exists": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "follow-redirects": {
- "version": "1.13.0",
- "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.0.tgz",
- "integrity": "sha512-aq6gF1BEKje4a9i9+5jimNFIpq4Q1WiwBToeRK5NvZBd/TRsmW8BsJfOEGkr76TbOyPVD3OVDN910EcUNtRYEA==",
+ "node_modules/flatted": {
+ "version": "3.2.7",
+ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz",
+ "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==",
"dev": true
},
- "for-in": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
- "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
- "dev": true
+ "node_modules/follow-redirects": {
+ "version": "1.15.2",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz",
+ "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://github.com/sponsors/RubenVerborgh"
+ }
+ ],
+ "engines": {
+ "node": ">=4.0"
+ },
+ "peerDependenciesMeta": {
+ "debug": {
+ "optional": true
+ }
+ }
},
- "forwarded": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz",
- "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=",
- "dev": true
+ "node_modules/for-each": {
+ "version": "0.3.3",
+ "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz",
+ "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==",
+ "dev": true,
+ "dependencies": {
+ "is-callable": "^1.1.3"
+ }
},
- "fragment-cache": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
- "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=",
+ "node_modules/forwarded": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
+ "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
"dev": true,
- "requires": {
- "map-cache": "^0.2.2"
+ "engines": {
+ "node": ">= 0.6"
}
},
- "fresh": {
+ "node_modules/fresh": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
- "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=",
- "dev": true
- },
- "from2": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz",
- "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=",
+ "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
"dev": true,
- "requires": {
- "inherits": "^2.0.1",
- "readable-stream": "^2.0.0"
+ "engines": {
+ "node": ">= 0.6"
}
},
- "fs-access": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz",
- "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=",
- "dev": true,
- "requires": {
- "null-check": "^1.0.0"
- }
+ "node_modules/fs-constants": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
+ "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==",
+ "dev": true
},
- "fs-extra": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz",
- "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==",
+ "node_modules/fs-extra": {
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
+ "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
"dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
+ "dependencies": {
+ "graceful-fs": "^4.2.0",
"jsonfile": "^4.0.0",
"universalify": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=6 <7 || >=8"
}
},
- "fs-minipass": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
- "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
- "dev": true,
- "requires": {
- "minipass": "^3.0.0"
- }
- },
- "fs-write-stream-atomic": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz",
- "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "iferr": "^0.1.5",
- "imurmurhash": "^0.1.4",
- "readable-stream": "1 || 2"
- }
+ "node_modules/fs-monkey": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz",
+ "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==",
+ "dev": true
},
- "fs.realpath": {
+ "node_modules/fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
+ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
"dev": true
},
- "fsevents": {
- "version": "1.2.12",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.12.tgz",
- "integrity": "sha512-Ggd/Ktt7E7I8pxZRbGIs7vwqAPscSESMrCSkx2FtWeqmheJgCo2R74fTsZFCifr0VTPwqRpPv17+6b8Zp7th0Q==",
+ "node_modules/fsevents": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
+ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
"dev": true,
+ "hasInstallScript": true,
"optional": true,
- "requires": {
- "bindings": "^1.5.0",
- "nan": "^2.12.1",
- "node-pre-gyp": "*"
- },
- "dependencies": {
- "abbrev": {
- "version": "1.1.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "ansi-regex": {
- "version": "2.1.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "aproba": {
- "version": "1.2.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "are-we-there-yet": {
- "version": "1.1.5",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "delegates": "^1.0.0",
- "readable-stream": "^2.0.6"
- }
- },
- "balanced-match": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "brace-expansion": {
- "version": "1.1.11",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "chownr": {
- "version": "1.1.4",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "code-point-at": {
- "version": "1.1.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "concat-map": {
- "version": "0.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "console-control-strings": {
- "version": "1.1.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "core-util-is": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "debug": {
- "version": "3.2.6",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "ms": "^2.1.1"
- }
- },
- "deep-extend": {
- "version": "0.6.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "delegates": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "detect-libc": {
- "version": "1.0.3",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "fs-minipass": {
- "version": "1.2.7",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "minipass": "^2.6.0"
- }
- },
- "fs.realpath": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "gauge": {
- "version": "2.7.4",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "aproba": "^1.0.3",
- "console-control-strings": "^1.0.0",
- "has-unicode": "^2.0.0",
- "object-assign": "^4.1.0",
- "signal-exit": "^3.0.0",
- "string-width": "^1.0.1",
- "strip-ansi": "^3.0.1",
- "wide-align": "^1.1.0"
- }
- },
- "glob": {
- "version": "7.1.6",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- }
- },
- "has-unicode": {
- "version": "2.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "iconv-lite": {
- "version": "0.4.24",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "safer-buffer": ">= 2.1.2 < 3"
- }
- },
- "ignore-walk": {
- "version": "3.0.3",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "minimatch": "^3.0.4"
- }
- },
- "inflight": {
- "version": "1.0.6",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "once": "^1.3.0",
- "wrappy": "1"
- }
- },
- "inherits": {
- "version": "2.0.4",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "ini": {
- "version": "1.3.5",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "number-is-nan": "^1.0.0"
- }
- },
- "isarray": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "minimatch": {
- "version": "3.0.4",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "minimist": {
- "version": "1.2.5",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "minipass": {
- "version": "2.9.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "safe-buffer": "^5.1.2",
- "yallist": "^3.0.0"
- }
- },
- "minizlib": {
- "version": "1.3.3",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "minipass": "^2.9.0"
- }
- },
- "mkdirp": {
- "version": "0.5.3",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "minimist": "^1.2.5"
- }
- },
- "ms": {
- "version": "2.1.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "needle": {
- "version": "2.3.3",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "debug": "^3.2.6",
- "iconv-lite": "^0.4.4",
- "sax": "^1.2.4"
- }
- },
- "node-pre-gyp": {
- "version": "0.14.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "detect-libc": "^1.0.2",
- "mkdirp": "^0.5.1",
- "needle": "^2.2.1",
- "nopt": "^4.0.1",
- "npm-packlist": "^1.1.6",
- "npmlog": "^4.0.2",
- "rc": "^1.2.7",
- "rimraf": "^2.6.1",
- "semver": "^5.3.0",
- "tar": "^4.4.2"
- }
- },
- "nopt": {
- "version": "4.0.3",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "abbrev": "1",
- "osenv": "^0.1.4"
- }
- },
- "npm-bundled": {
- "version": "1.1.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "npm-normalize-package-bin": "^1.0.1"
- }
- },
- "npm-normalize-package-bin": {
- "version": "1.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "npm-packlist": {
- "version": "1.4.8",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "ignore-walk": "^3.0.1",
- "npm-bundled": "^1.0.1",
- "npm-normalize-package-bin": "^1.0.1"
- }
- },
- "npmlog": {
- "version": "4.1.2",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "are-we-there-yet": "~1.1.2",
- "console-control-strings": "~1.1.0",
- "gauge": "~2.7.3",
- "set-blocking": "~2.0.0"
- }
- },
- "number-is-nan": {
- "version": "1.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "object-assign": {
- "version": "4.1.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "once": {
- "version": "1.4.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "wrappy": "1"
- }
- },
- "os-homedir": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "os-tmpdir": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "osenv": {
- "version": "0.1.5",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "os-homedir": "^1.0.0",
- "os-tmpdir": "^1.0.0"
- }
- },
- "path-is-absolute": {
- "version": "1.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "process-nextick-args": {
- "version": "2.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "rc": {
- "version": "1.2.8",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "deep-extend": "^0.6.0",
- "ini": "~1.3.0",
- "minimist": "^1.2.0",
- "strip-json-comments": "~2.0.1"
- }
- },
- "readable-stream": {
- "version": "2.3.7",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
- "rimraf": {
- "version": "2.7.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "glob": "^7.1.3"
- }
- },
- "safe-buffer": {
- "version": "5.1.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "safer-buffer": {
- "version": "2.1.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "sax": {
- "version": "1.2.4",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "semver": {
- "version": "5.7.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "set-blocking": {
- "version": "2.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "signal-exit": {
- "version": "3.0.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "string-width": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "code-point-at": "^1.0.0",
- "is-fullwidth-code-point": "^1.0.0",
- "strip-ansi": "^3.0.0"
- }
- },
- "string_decoder": {
- "version": "1.1.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "safe-buffer": "~5.1.0"
- }
- },
- "strip-ansi": {
- "version": "3.0.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "ansi-regex": "^2.0.0"
- }
- },
- "strip-json-comments": {
- "version": "2.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "tar": {
- "version": "4.4.13",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "chownr": "^1.1.1",
- "fs-minipass": "^1.2.5",
- "minipass": "^2.8.6",
- "minizlib": "^1.2.1",
- "mkdirp": "^0.5.0",
- "safe-buffer": "^5.1.2",
- "yallist": "^3.0.3"
- }
- },
- "util-deprecate": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "wide-align": {
- "version": "1.1.3",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "string-width": "^1.0.2 || 2"
- }
- },
- "wrappy": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "yallist": {
- "version": "3.1.1",
- "bundled": true,
- "dev": true,
- "optional": true
- }
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
}
},
- "function-bind": {
+ "node_modules/function-bind": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
"dev": true
},
- "get-caller-file": {
+ "node_modules/function.prototype.name": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz",
+ "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.3",
+ "es-abstract": "^1.19.0",
+ "functions-have-names": "^1.2.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/functions-have-names": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz",
+ "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/gensync": {
+ "version": "1.0.0-beta.2",
+ "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
+ "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/get-caller-file": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": "6.* || 8.* || >= 10.*"
+ }
+ },
+ "node_modules/get-intrinsic": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz",
+ "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==",
+ "dev": true,
+ "dependencies": {
+ "function-bind": "^1.1.1",
+ "has": "^1.0.3",
+ "has-symbols": "^1.0.3"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "get-stream": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz",
- "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==",
+ "node_modules/get-stream": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
+ "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
"dev": true,
- "requires": {
+ "dependencies": {
"pump": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "get-value": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
- "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=",
- "dev": true
+ "node_modules/get-symbol-description": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz",
+ "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "get-intrinsic": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "glob": {
- "version": "7.1.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz",
- "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==",
+ "node_modules/glob": {
+ "version": "7.2.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
+ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
"dev": true,
- "requires": {
+ "dependencies": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
"inherits": "2",
- "minimatch": "^3.0.4",
+ "minimatch": "^3.1.1",
"once": "^1.3.0",
"path-is-absolute": "^1.0.0"
+ },
+ "engines": {
+ "node": "*"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
}
},
- "glob-parent": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
- "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
- "dev": true,
- "requires": {
- "is-glob": "^3.1.0",
- "path-dirname": "^1.0.0"
- },
- "dependencies": {
- "is-glob": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
- "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
- "dev": true,
- "requires": {
- "is-extglob": "^2.1.0"
- }
- }
+ "node_modules/glob-parent": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
+ "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
+ "dev": true,
+ "dependencies": {
+ "is-glob": "^4.0.3"
+ },
+ "engines": {
+ "node": ">=10.13.0"
}
},
- "global-modules": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz",
- "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==",
- "dev": true,
- "requires": {
- "global-prefix": "^3.0.0"
- },
- "dependencies": {
- "global-prefix": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz",
- "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==",
- "dev": true,
- "requires": {
- "ini": "^1.3.5",
- "kind-of": "^6.0.2",
- "which": "^1.3.1"
- }
- }
+ "node_modules/glob-to-regexp": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
+ "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==",
+ "dev": true
+ },
+ "node_modules/glob/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
}
},
- "global-prefix": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz",
- "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=",
+ "node_modules/globals": {
+ "version": "11.12.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
+ "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
"dev": true,
- "requires": {
- "expand-tilde": "^2.0.2",
- "homedir-polyfill": "^1.0.1",
- "ini": "^1.3.4",
- "is-windows": "^1.0.1",
- "which": "^1.2.14"
+ "engines": {
+ "node": ">=4"
}
},
- "globals": {
- "version": "11.11.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz",
- "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==",
- "dev": true
+ "node_modules/globalthis": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz",
+ "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==",
+ "dev": true,
+ "dependencies": {
+ "define-properties": "^1.1.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "globby": {
- "version": "11.0.1",
- "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz",
- "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==",
+ "node_modules/globby": {
+ "version": "13.1.4",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.4.tgz",
+ "integrity": "sha512-iui/IiiW+QrJ1X1hKH5qwlMQyv34wJAYwH1vrf8b9kBA4sNiif3gKsMHa+BrdnOpEudWjpotfa7LrTzB1ERS/g==",
"dev": true,
- "requires": {
- "array-union": "^2.1.0",
+ "dependencies": {
"dir-glob": "^3.0.1",
- "fast-glob": "^3.1.1",
- "ignore": "^5.1.4",
- "merge2": "^1.3.0",
- "slash": "^3.0.0"
+ "fast-glob": "^3.2.11",
+ "ignore": "^5.2.0",
+ "merge2": "^1.4.1",
+ "slash": "^4.0.0"
},
+ "engines": {
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/gopd": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
+ "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
+ "dev": true,
"dependencies": {
- "array-union": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
- "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
- "dev": true
- }
+ "get-intrinsic": "^1.1.3"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "graceful-fs": {
- "version": "4.1.15",
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz",
- "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==",
+ "node_modules/graceful-fs": {
+ "version": "4.2.11",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
"dev": true
},
- "handle-thing": {
+ "node_modules/handle-thing": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz",
"integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==",
"dev": true
},
- "has": {
+ "node_modules/has": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
"integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
"dev": true,
- "requires": {
+ "dependencies": {
"function-bind": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4.0"
}
},
- "has-binary2": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz",
- "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==",
+ "node_modules/has-bigints": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz",
+ "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==",
"dev": true,
- "requires": {
- "isarray": "2.0.1"
- },
- "dependencies": {
- "isarray": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz",
- "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=",
- "dev": true
- }
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "has-cors": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz",
- "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=",
- "dev": true
- },
- "has-flag": {
+ "node_modules/has-flag": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
- "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
- "dev": true
- },
- "has-symbols": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz",
- "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=",
- "dev": true
- },
- "has-value": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
- "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=",
+ "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
"dev": true,
- "requires": {
- "get-value": "^2.0.6",
- "has-values": "^1.0.0",
- "isobject": "^3.0.0"
+ "engines": {
+ "node": ">=4"
}
},
- "has-values": {
+ "node_modules/has-property-descriptors": {
"version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
- "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=",
- "dev": true,
- "requires": {
- "is-number": "^3.0.0",
- "kind-of": "^4.0.0"
- },
- "dependencies": {
- "kind-of": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
- "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
- }
- },
- "hash-base": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz",
- "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==",
+ "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz",
+ "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==",
"dev": true,
- "requires": {
- "inherits": "^2.0.4",
- "readable-stream": "^3.6.0",
- "safe-buffer": "^5.2.0"
- },
"dependencies": {
- "inherits": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
- "dev": true
- },
- "readable-stream": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
- "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
- "dev": true,
- "requires": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- }
- },
- "safe-buffer": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
- "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
- "dev": true
- }
+ "get-intrinsic": "^1.1.1"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "hash.js": {
- "version": "1.1.7",
- "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
- "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
+ "node_modules/has-proto": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz",
+ "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==",
"dev": true,
- "requires": {
- "inherits": "^2.0.3",
- "minimalistic-assert": "^1.0.1"
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "hmac-drbg": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
- "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
+ "node_modules/has-symbols": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
+ "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
"dev": true,
- "requires": {
- "hash.js": "^1.0.3",
- "minimalistic-assert": "^1.0.0",
- "minimalistic-crypto-utils": "^1.0.1"
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "homedir-polyfill": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz",
- "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==",
+ "node_modules/has-tostringtag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz",
+ "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==",
"dev": true,
- "requires": {
- "parse-passwd": "^1.0.0"
+ "dependencies": {
+ "has-symbols": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "hosted-git-info": {
- "version": "2.7.1",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz",
- "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==",
+ "node_modules/hosted-git-info": {
+ "version": "2.8.9",
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
+ "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
"dev": true
},
- "hpack.js": {
+ "node_modules/hpack.js": {
"version": "2.1.6",
"resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz",
- "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=",
+ "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"inherits": "^2.0.1",
"obuf": "^1.0.0",
"readable-stream": "^2.0.1",
"wbuf": "^1.1.0"
}
},
- "html-entities": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.3.1.tgz",
- "integrity": "sha512-rhE/4Z3hIhzHAUKbW8jVcCyuT5oJCXXqhN/6mXXVCpzTmvJnoH2HL/bt3EZ6p55jbFJBeAe1ZNpL5BugLujxNA==",
+ "node_modules/hpack.js/node_modules/isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
+ "dev": true
+ },
+ "node_modules/hpack.js/node_modules/readable-stream": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
+ "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
+ "dev": true,
+ "dependencies": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.1.1",
+ "util-deprecate": "~1.0.1"
+ }
+ },
+ "node_modules/hpack.js/node_modules/safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+ "dev": true
+ },
+ "node_modules/hpack.js/node_modules/string_decoder": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "dev": true,
+ "dependencies": {
+ "safe-buffer": "~5.1.0"
+ }
+ },
+ "node_modules/html-entities": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz",
+ "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==",
"dev": true
},
- "htmlparser2": {
+ "node_modules/htmlparser2": {
"version": "3.8.3",
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz",
- "integrity": "sha1-mWwosZFRaovoZQGn15dX5ccMEGg=",
+ "integrity": "sha512-hBxEg3CYXe+rPIua8ETe7tmG3XDn9B0edOE/e9wH2nLczxzgdu0m0aNHY+5wFZiviLWLdANPJTssa92dMcXQ5Q==",
"dev": true,
- "requires": {
+ "dependencies": {
"domelementtype": "1",
"domhandler": "2.3",
"domutils": "1.5",
"entities": "1.0",
"readable-stream": "1.1"
- },
- "dependencies": {
- "isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
- "dev": true
- },
- "readable-stream": {
- "version": "1.1.14",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
- "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
- "dev": true,
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "0.0.1",
- "string_decoder": "~0.10.x"
- }
- },
- "string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
- "dev": true
- }
}
},
- "http-deceiver": {
+ "node_modules/http-deceiver": {
"version": "1.2.7",
"resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz",
- "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=",
+ "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==",
"dev": true
},
- "http-errors": {
- "version": "1.6.3",
- "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
- "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=",
+ "node_modules/http-errors": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz",
+ "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==",
"dev": true,
- "requires": {
- "depd": "~1.1.2",
- "inherits": "2.0.3",
- "setprototypeof": "1.1.0",
- "statuses": ">= 1.4.0 < 2"
+ "dependencies": {
+ "depd": "2.0.0",
+ "inherits": "2.0.4",
+ "setprototypeof": "1.2.0",
+ "statuses": "2.0.1",
+ "toidentifier": "1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.8"
}
},
- "http-proxy": {
+ "node_modules/http-errors/node_modules/statuses": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
+ "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/http-parser-js": {
+ "version": "0.5.8",
+ "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz",
+ "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==",
+ "dev": true
+ },
+ "node_modules/http-proxy": {
"version": "1.18.1",
"resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz",
"integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"eventemitter3": "^4.0.0",
"follow-redirects": "^1.0.0",
"requires-port": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=8.0.0"
}
},
- "http-proxy-middleware": {
- "version": "0.19.1",
- "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz",
- "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==",
+ "node_modules/http-proxy-middleware": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz",
+ "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==",
"dev": true,
- "requires": {
- "http-proxy": "^1.17.0",
- "is-glob": "^4.0.0",
- "lodash": "^4.17.11",
- "micromatch": "^3.1.10"
+ "dependencies": {
+ "@types/http-proxy": "^1.17.8",
+ "http-proxy": "^1.18.1",
+ "is-glob": "^4.0.1",
+ "is-plain-obj": "^3.0.0",
+ "micromatch": "^4.0.2"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "peerDependencies": {
+ "@types/express": "^4.17.13"
+ },
+ "peerDependenciesMeta": {
+ "@types/express": {
+ "optional": true
+ }
}
},
- "https-browserify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
- "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=",
- "dev": true
+ "node_modules/https-proxy-agent": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
+ "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
+ "dev": true,
+ "dependencies": {
+ "agent-base": "6",
+ "debug": "4"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/human-signals": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz",
+ "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==",
+ "dev": true,
+ "engines": {
+ "node": ">=10.17.0"
+ }
},
- "iconv-lite": {
+ "node_modules/iconv-lite": {
"version": "0.4.24",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
"integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
"dev": true,
- "requires": {
+ "dependencies": {
"safer-buffer": ">= 2.1.2 < 3"
+ },
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "ieee754": {
- "version": "1.1.13",
- "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz",
- "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==",
- "dev": true
- },
- "iferr": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz",
- "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=",
- "dev": true
- },
- "ignore": {
- "version": "5.1.8",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz",
- "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==",
- "dev": true
+ "node_modules/ieee754": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
+ "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
},
- "import-local": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz",
- "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==",
+ "node_modules/ignore": {
+ "version": "5.2.4",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz",
+ "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==",
"dev": true,
- "requires": {
- "pkg-dir": "^3.0.0",
- "resolve-cwd": "^2.0.0"
+ "engines": {
+ "node": ">= 4"
}
},
- "imurmurhash": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
- "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
- "dev": true
- },
- "indent-string": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
- "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
- "dev": true
- },
- "indexof": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz",
- "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=",
- "dev": true
+ "node_modules/import-fresh": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
+ "dev": true,
+ "dependencies": {
+ "parent-module": "^1.0.0",
+ "resolve-from": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
},
- "infer-owner": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz",
- "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==",
- "dev": true
+ "node_modules/import-local": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz",
+ "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==",
+ "dev": true,
+ "dependencies": {
+ "pkg-dir": "^4.2.0",
+ "resolve-cwd": "^3.0.0"
+ },
+ "bin": {
+ "import-local-fixture": "fixtures/cli.js"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
},
- "inflight": {
+ "node_modules/inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
- "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
+ "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
"dev": true,
- "requires": {
+ "dependencies": {
"once": "^1.3.0",
"wrappy": "1"
}
},
- "inherits": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
- "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
- "dev": true
- },
- "ini": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
- "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==",
+ "node_modules/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
"dev": true
},
- "internal-ip": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz",
- "integrity": "sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==",
+ "node_modules/internal-slot": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz",
+ "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==",
"dev": true,
- "requires": {
- "default-gateway": "^4.2.0",
- "ipaddr.js": "^1.9.0"
+ "dependencies": {
+ "get-intrinsic": "^1.2.0",
+ "has": "^1.0.3",
+ "side-channel": "^1.0.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
}
},
- "interpret": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.2.0.tgz",
- "integrity": "sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw==",
- "dev": true
- },
- "invariant": {
- "version": "2.2.4",
- "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
- "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
+ "node_modules/interpret": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz",
+ "integrity": "sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==",
"dev": true,
- "requires": {
- "loose-envify": "^1.0.0"
+ "engines": {
+ "node": ">=10.13.0"
}
},
- "invert-kv": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz",
- "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==",
- "dev": true
- },
- "ip": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz",
- "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=",
- "dev": true
- },
- "ip-regex": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz",
- "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=",
- "dev": true
- },
- "ipaddr.js": {
- "version": "1.9.1",
- "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
- "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
- "dev": true
- },
- "is-absolute-url": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz",
- "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==",
- "dev": true
+ "node_modules/ipaddr.js": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz",
+ "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==",
+ "dev": true,
+ "engines": {
+ "node": ">= 10"
+ }
},
- "is-accessor-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
- "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
+ "node_modules/is-array-buffer": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz",
+ "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==",
"dev": true,
- "requires": {
- "kind-of": "^3.0.2"
- },
"dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
+ "call-bind": "^1.0.2",
+ "get-intrinsic": "^1.2.0",
+ "is-typed-array": "^1.1.10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-arguments": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz",
- "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==",
- "dev": true
- },
- "is-arrayish": {
+ "node_modules/is-arrayish": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
- "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
+ "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==",
"dev": true
},
- "is-binary-path": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
- "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
+ "node_modules/is-bigint": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz",
+ "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==",
"dev": true,
- "requires": {
- "binary-extensions": "^1.0.0"
+ "dependencies": {
+ "has-bigints": "^1.0.1"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-buffer": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
- "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
- "dev": true
+ "node_modules/is-binary-path": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
+ "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
+ "dev": true,
+ "dependencies": {
+ "binary-extensions": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
},
- "is-callable": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz",
- "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==",
- "dev": true
+ "node_modules/is-boolean-object": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz",
+ "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "is-data-descriptor": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
- "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
+ "node_modules/is-callable": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz",
+ "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==",
"dev": true,
- "requires": {
- "kind-of": "^3.0.2"
+ "engines": {
+ "node": ">= 0.4"
},
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-date-object": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz",
- "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=",
- "dev": true
- },
- "is-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
- "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
+ "node_modules/is-core-module": {
+ "version": "2.12.0",
+ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz",
+ "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==",
"dev": true,
- "requires": {
- "is-accessor-descriptor": "^0.1.6",
- "is-data-descriptor": "^0.1.4",
- "kind-of": "^5.0.0"
+ "dependencies": {
+ "has": "^1.0.3"
},
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-date-object": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz",
+ "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==",
+ "dev": true,
"dependencies": {
- "kind-of": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
- "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
- "dev": true
- }
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-extendable": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
- "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
- "dev": true
+ "node_modules/is-docker": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz",
+ "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==",
+ "dev": true,
+ "bin": {
+ "is-docker": "cli.js"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
},
- "is-extglob": {
+ "node_modules/is-extglob": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
- "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
- "dev": true
+ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "is-fullwidth-code-point": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
- "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
- "dev": true
+ "node_modules/is-fullwidth-code-point": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "is-glob": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
- "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
+ "node_modules/is-glob": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
+ "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
"dev": true,
- "requires": {
+ "dependencies": {
"is-extglob": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "is-number": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
- "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
+ "node_modules/is-negative-zero": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz",
+ "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==",
"dev": true,
- "requires": {
- "kind-of": "^3.0.2"
+ "engines": {
+ "node": ">= 0.4"
},
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-number": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.12.0"
+ }
+ },
+ "node_modules/is-number-object": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz",
+ "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==",
+ "dev": true,
"dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-path-cwd": {
+ "node_modules/is-path-cwd": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz",
"integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
},
- "is-path-in-cwd": {
+ "node_modules/is-path-in-cwd": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz",
"integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"is-path-inside": "^2.1.0"
+ },
+ "engines": {
+ "node": ">=6"
}
},
- "is-path-inside": {
+ "node_modules/is-path-inside": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz",
"integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==",
"dev": true,
- "requires": {
+ "dependencies": {
"path-is-inside": "^1.0.2"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/is-plain-obj": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz",
+ "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "is-plain-object": {
+ "node_modules/is-plain-object": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
"integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
"dev": true,
- "requires": {
+ "dependencies": {
"isobject": "^3.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "is-regex": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz",
- "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=",
+ "node_modules/is-regex": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz",
+ "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-shared-array-buffer": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz",
+ "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==",
"dev": true,
- "requires": {
- "has": "^1.0.1"
+ "dependencies": {
+ "call-bind": "^1.0.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-stream": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
- "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=",
- "dev": true
+ "node_modules/is-stream": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
},
- "is-symbol": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz",
- "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==",
+ "node_modules/is-string": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz",
+ "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==",
+ "dev": true,
+ "dependencies": {
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-symbol": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz",
+ "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==",
+ "dev": true,
+ "dependencies": {
+ "has-symbols": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-typed-array": {
+ "version": "1.1.10",
+ "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz",
+ "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==",
"dev": true,
- "requires": {
- "has-symbols": "^1.0.0"
+ "dependencies": {
+ "available-typed-arrays": "^1.0.5",
+ "call-bind": "^1.0.2",
+ "for-each": "^0.3.3",
+ "gopd": "^1.0.1",
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-windows": {
+ "node_modules/is-weakref": {
"version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
- "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
- "dev": true
+ "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz",
+ "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "is-wsl": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz",
- "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=",
- "dev": true
+ "node_modules/is-wsl": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz",
+ "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
+ "dev": true,
+ "dependencies": {
+ "is-docker": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
},
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
+ "node_modules/isarray": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
+ "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==",
"dev": true
},
- "isbinaryfile": {
- "version": "4.0.6",
- "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.6.tgz",
- "integrity": "sha512-ORrEy+SNVqUhrCaal4hA4fBzhggQQ+BaLntyPOdoEiwlKZW9BZiJXjg3RMiruE4tPEI3pyVPpySHQF/dKWperg==",
- "dev": true
+ "node_modules/isbinaryfile": {
+ "version": "4.0.10",
+ "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz",
+ "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==",
+ "dev": true,
+ "engines": {
+ "node": ">= 8.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/gjtorikian/"
+ }
},
- "isexe": {
+ "node_modules/isexe": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
- "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
"dev": true
},
- "isobject": {
+ "node_modules/isobject": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true
+ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "jasmine-core": {
- "version": "2.99.1",
- "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.99.1.tgz",
- "integrity": "sha1-5kAN8ea1bhMLYcS80JPap/boyhU=",
+ "node_modules/jasmine-core": {
+ "version": "4.6.0",
+ "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.6.0.tgz",
+ "integrity": "sha512-O236+gd0ZXS8YAjFx8xKaJ94/erqUliEkJTDedyE7iHvv4ZVqi+q+8acJxu05/WJDKm512EUNn809In37nWlAQ==",
"dev": true
},
- "jest-worker": {
- "version": "26.3.0",
- "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.3.0.tgz",
- "integrity": "sha512-Vmpn2F6IASefL+DVBhPzI2J9/GJUsqzomdeN+P+dK8/jKxbh8R3BtFnx3FIta7wYlPU62cpJMJQo4kuOowcMnw==",
+ "node_modules/jest-worker": {
+ "version": "27.5.1",
+ "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz",
+ "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==",
"dev": true,
- "requires": {
+ "dependencies": {
"@types/node": "*",
"merge-stream": "^2.0.0",
- "supports-color": "^7.0.0"
+ "supports-color": "^8.0.0"
},
- "dependencies": {
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "engines": {
+ "node": ">= 10.13.0"
}
},
- "js-levenshtein": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz",
- "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==",
- "dev": true
+ "node_modules/jest-worker/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-worker/node_modules/supports-color": {
+ "version": "8.1.1",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
+ "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/supports-color?sponsor=1"
+ }
},
- "js-tokens": {
+ "node_modules/js-tokens": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
"integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
"dev": true
},
- "jsesc": {
+ "node_modules/js-yaml": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
+ "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
+ "dev": true,
+ "dependencies": {
+ "argparse": "^2.0.1"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
+ "node_modules/jsesc": {
"version": "2.5.2",
"resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
"integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
- "dev": true
+ "dev": true,
+ "bin": {
+ "jsesc": "bin/jsesc"
+ },
+ "engines": {
+ "node": ">=4"
+ }
},
- "jshint": {
- "version": "2.10.1",
- "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.10.1.tgz",
- "integrity": "sha512-9GpPfKeffYBl7oBDX2lHPG16j0AM7D2bn3aLy9DaWTr6CWa0i/7UGhX8WLZ7V14QQnnr4hXbjauTLYg06F+HYw==",
+ "node_modules/jshint": {
+ "version": "2.13.6",
+ "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.13.6.tgz",
+ "integrity": "sha512-IVdB4G0NTTeQZrBoM8C5JFVLjV2KtZ9APgybDA1MK73xb09qFs0jCXyQLnCOp1cSZZZbvhq/6mfXHUTaDkffuQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"cli": "~1.0.0",
"console-browserify": "1.1.x",
"exit": "0.1.x",
"htmlparser2": "3.8.x",
- "lodash": "~4.17.10",
+ "lodash": "~4.17.21",
"minimatch": "~3.0.2",
- "shelljs": "0.3.x",
"strip-json-comments": "1.0.x"
+ },
+ "bin": {
+ "jshint": "bin/jshint"
}
},
- "json-parse-better-errors": {
+ "node_modules/json-parse-better-errors": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
"integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
"dev": true
},
- "json-schema-traverse": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
- "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
+ "node_modules/json-parse-even-better-errors": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
"dev": true
},
- "json3": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.3.tgz",
- "integrity": "sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==",
+ "node_modules/json-schema-traverse": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
+ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
"dev": true
},
- "json5": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.0.tgz",
- "integrity": "sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ==",
+ "node_modules/json5": {
+ "version": "2.2.3",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
+ "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
"dev": true,
- "requires": {
- "minimist": "^1.2.0"
+ "bin": {
+ "json5": "lib/cli.js"
+ },
+ "engines": {
+ "node": ">=6"
}
},
- "jsonfile": {
+ "node_modules/jsonfile": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
- "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
+ "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==",
"dev": true,
- "requires": {
+ "optionalDependencies": {
"graceful-fs": "^4.1.6"
}
},
- "jsonify": {
- "version": "0.0.0",
- "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz",
- "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=",
- "dev": true
- },
- "karma": {
- "version": "5.0.5",
- "resolved": "https://registry.npmjs.org/karma/-/karma-5.0.5.tgz",
- "integrity": "sha512-Q4Su7kNwkTgqS+KbSCYgH0p4a/0JIxVLyp7qKNV7vgPNhIF4kIoh0GlUfMKpw67BrR3hgPQSJoxgF7xnzUtPpg==",
+ "node_modules/karma": {
+ "version": "6.4.1",
+ "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.1.tgz",
+ "integrity": "sha512-Cj57NKOskK7wtFWSlMvZf459iX+kpYIPXmkNUzP2WAFcA7nhr/ALn5R7sw3w+1udFDcpMx/tuB8d5amgm3ijaA==",
"dev": true,
- "requires": {
- "body-parser": "^1.16.1",
+ "dependencies": {
+ "@colors/colors": "1.5.0",
+ "body-parser": "^1.19.0",
"braces": "^3.0.2",
- "chokidar": "^3.0.0",
- "colors": "^1.1.0",
- "connect": "^3.6.0",
+ "chokidar": "^3.5.1",
+ "connect": "^3.7.0",
"di": "^0.0.1",
- "dom-serialize": "^2.2.0",
- "flatted": "^2.0.0",
- "glob": "^7.1.1",
- "graceful-fs": "^4.1.2",
- "http-proxy": "^1.13.0",
- "isbinaryfile": "^4.0.2",
- "lodash": "^4.17.14",
- "log4js": "^4.0.0",
- "mime": "^2.3.1",
- "minimatch": "^3.0.2",
- "qjobs": "^1.1.4",
- "range-parser": "^1.2.0",
- "rimraf": "^2.6.0",
- "socket.io": "2.1.1",
+ "dom-serialize": "^2.2.1",
+ "glob": "^7.1.7",
+ "graceful-fs": "^4.2.6",
+ "http-proxy": "^1.18.1",
+ "isbinaryfile": "^4.0.8",
+ "lodash": "^4.17.21",
+ "log4js": "^6.4.1",
+ "mime": "^2.5.2",
+ "minimatch": "^3.0.4",
+ "mkdirp": "^0.5.5",
+ "qjobs": "^1.2.0",
+ "range-parser": "^1.2.1",
+ "rimraf": "^3.0.2",
+ "socket.io": "^4.4.1",
"source-map": "^0.6.1",
- "tmp": "0.0.33",
- "ua-parser-js": "0.7.21",
- "yargs": "^15.3.1"
- },
- "dependencies": {
- "anymatch": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz",
- "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==",
- "dev": true,
- "requires": {
- "normalize-path": "^3.0.0",
- "picomatch": "^2.0.4"
- }
- },
- "binary-extensions": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz",
- "integrity": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==",
- "dev": true
- },
- "braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
- "dev": true,
- "requires": {
- "fill-range": "^7.0.1"
- }
- },
- "chokidar": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.0.tgz",
- "integrity": "sha512-aXAaho2VJtisB/1fg1+3nlLJqGOuewTzQpd/Tz0yTg2R0e4IGtshYvtjowyEumcBv2z+y4+kc75Mz7j5xJskcQ==",
- "dev": true,
- "requires": {
- "anymatch": "~3.1.1",
- "braces": "~3.0.2",
- "fsevents": "~2.1.2",
- "glob-parent": "~5.1.0",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.4.0"
- }
- },
- "fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
- "dev": true,
- "requires": {
- "to-regex-range": "^5.0.1"
- }
- },
- "fsevents": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz",
- "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==",
- "dev": true,
- "optional": true
- },
- "glob-parent": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz",
- "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==",
- "dev": true,
- "requires": {
- "is-glob": "^4.0.1"
- }
- },
- "is-binary-path": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
- "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
- "dev": true,
- "requires": {
- "binary-extensions": "^2.0.0"
- }
- },
- "is-number": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
- "dev": true
- },
- "readdirp": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz",
- "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==",
- "dev": true,
- "requires": {
- "picomatch": "^2.2.1"
- }
- },
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
- },
- "to-regex-range": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
- "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
- "dev": true,
- "requires": {
- "is-number": "^7.0.0"
- }
- }
+ "tmp": "^0.2.1",
+ "ua-parser-js": "^0.7.30",
+ "yargs": "^16.1.1"
+ },
+ "bin": {
+ "karma": "bin/karma"
+ },
+ "engines": {
+ "node": ">= 10"
}
},
- "karma-chrome-launcher": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-2.2.0.tgz",
- "integrity": "sha512-uf/ZVpAabDBPvdPdveyk1EPgbnloPvFFGgmRhYLTDH7gEB4nZdSBk8yTU47w1g/drLSx5uMOkjKk7IWKfWg/+w==",
+ "node_modules/karma-chrome-launcher": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.1.tgz",
+ "integrity": "sha512-hsIglcq1vtboGPAN+DGCISCFOxW+ZVnIqhDQcCMqqCp+4dmJ0Qpq5QAjkbA0X2L9Mi6OBkHi2Srrbmm7pUKkzQ==",
"dev": true,
- "requires": {
- "fs-access": "^1.0.0",
+ "dependencies": {
"which": "^1.2.1"
}
},
- "karma-firefox-launcher": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/karma-firefox-launcher/-/karma-firefox-launcher-1.1.0.tgz",
- "integrity": "sha512-LbZ5/XlIXLeQ3cqnCbYLn+rOVhuMIK9aZwlP6eOLGzWdo1UVp7t6CN3DP4SafiRLjexKwHeKHDm0c38Mtd3VxA==",
- "dev": true
+ "node_modules/karma-firefox-launcher": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/karma-firefox-launcher/-/karma-firefox-launcher-2.1.2.tgz",
+ "integrity": "sha512-VV9xDQU1QIboTrjtGVD4NCfzIH7n01ZXqy/qpBhnOeGVOkG5JYPEm8kuSd7psHE6WouZaQ9Ool92g8LFweSNMA==",
+ "dev": true,
+ "dependencies": {
+ "is-wsl": "^2.2.0",
+ "which": "^2.0.1"
+ }
},
- "karma-jasmine": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-2.0.1.tgz",
- "integrity": "sha512-iuC0hmr9b+SNn1DaUD2QEYtUxkS1J+bSJSn7ejdEexs7P8EYvA1CWkEdrDQ+8jVH3AgWlCNwjYsT1chjcNW9lA==",
+ "node_modules/karma-firefox-launcher/node_modules/which": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
"dev": true,
- "requires": {
- "jasmine-core": "^3.3"
+ "dependencies": {
+ "isexe": "^2.0.0"
+ },
+ "bin": {
+ "node-which": "bin/node-which"
},
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/karma-jasmine": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz",
+ "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==",
+ "dev": true,
"dependencies": {
- "jasmine-core": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.3.0.tgz",
- "integrity": "sha512-3/xSmG/d35hf80BEN66Y6g9Ca5l/Isdeg/j6zvbTYlTzeKinzmaTM4p9am5kYqOmE05D7s1t8FGjzdSnbUbceA==",
- "dev": true
- }
+ "jasmine-core": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "peerDependencies": {
+ "karma": "^6.0.0"
}
},
- "karma-sourcemap-loader": {
- "version": "0.3.7",
- "resolved": "https://registry.npmjs.org/karma-sourcemap-loader/-/karma-sourcemap-loader-0.3.7.tgz",
- "integrity": "sha1-kTIsd/jxPUb+0GKwQuEAnUxFBdg=",
+ "node_modules/karma-sourcemap-loader": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/karma-sourcemap-loader/-/karma-sourcemap-loader-0.4.0.tgz",
+ "integrity": "sha512-xCRL3/pmhAYF3I6qOrcn0uhbQevitc2DERMPH82FMnG+4WReoGcGFZb1pURf2a5apyrOHRdvD+O6K7NljqKHyA==",
"dev": true,
- "requires": {
- "graceful-fs": "^4.1.2"
+ "dependencies": {
+ "graceful-fs": "^4.2.10"
}
},
- "karma-webpack": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/karma-webpack/-/karma-webpack-4.0.2.tgz",
- "integrity": "sha512-970/okAsdUOmiMOCY8sb17A2I8neS25Ad9uhyK3GHgmRSIFJbDcNEFE8dqqUhNe9OHiCC9k3DMrSmtd/0ymP1A==",
+ "node_modules/karma-webpack": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/karma-webpack/-/karma-webpack-5.0.0.tgz",
+ "integrity": "sha512-+54i/cd3/piZuP3dr54+NcFeKOPnys5QeM1IY+0SPASwrtHsliXUiCL50iW+K9WWA7RvamC4macvvQ86l3KtaA==",
"dev": true,
- "requires": {
- "clone-deep": "^4.0.1",
- "loader-utils": "^1.1.0",
- "neo-async": "^2.6.1",
- "schema-utils": "^1.0.0",
- "source-map": "^0.7.3",
- "webpack-dev-middleware": "^3.7.0"
- },
- "dependencies": {
- "source-map": {
- "version": "0.7.3",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
- "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
- "dev": true
- }
+ "dependencies": {
+ "glob": "^7.1.3",
+ "minimatch": "^3.0.4",
+ "webpack-merge": "^4.1.5"
+ },
+ "engines": {
+ "node": ">= 6"
+ },
+ "peerDependencies": {
+ "webpack": "^5.0.0"
}
},
- "killable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz",
- "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==",
- "dev": true
+ "node_modules/karma/node_modules/rimraf": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "dev": true,
+ "dependencies": {
+ "glob": "^7.1.3"
+ },
+ "bin": {
+ "rimraf": "bin.js"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
},
- "kind-of": {
+ "node_modules/kind-of": {
"version": "6.0.3",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
"integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "lcid": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz",
- "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==",
+ "node_modules/launch-editor": {
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.0.tgz",
+ "integrity": "sha512-JpDCcQnyAAzZZaZ7vEiSqL690w7dAEyLao+KC96zBplnYbJS7TYNjvM3M7y3dGz+v7aIsJk3hllWuc0kWAjyRQ==",
"dev": true,
- "requires": {
- "invert-kv": "^2.0.0"
+ "dependencies": {
+ "picocolors": "^1.0.0",
+ "shell-quote": "^1.7.3"
}
},
- "load-json-file": {
+ "node_modules/lines-and-columns": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
+ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
+ "dev": true
+ },
+ "node_modules/load-json-file": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz",
- "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=",
+ "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==",
"dev": true,
- "requires": {
+ "dependencies": {
"graceful-fs": "^4.1.2",
"parse-json": "^4.0.0",
"pify": "^3.0.0",
"strip-bom": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "loader-runner": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz",
- "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==",
- "dev": true
- },
- "loader-utils": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz",
- "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==",
- "dev": true,
- "requires": {
- "big.js": "^5.2.2",
- "emojis-list": "^2.0.0",
- "json5": "^1.0.1"
- },
- "dependencies": {
- "json5": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
- "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
- "dev": true,
- "requires": {
- "minimist": "^1.2.0"
- }
- }
+ "node_modules/load-json-file/node_modules/parse-json": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
+ "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==",
+ "dev": true,
+ "dependencies": {
+ "error-ex": "^1.3.1",
+ "json-parse-better-errors": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "locate-path": {
+ "node_modules/load-json-file/node_modules/pify": {
"version": "3.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
- "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
+ "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==",
"dev": true,
- "requires": {
- "p-locate": "^3.0.0",
- "path-exists": "^3.0.0"
+ "engines": {
+ "node": ">=4"
}
},
- "lodash": {
- "version": "4.17.19",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz",
- "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==",
- "dev": true
- },
- "log4js": {
- "version": "4.5.1",
- "resolved": "https://registry.npmjs.org/log4js/-/log4js-4.5.1.tgz",
- "integrity": "sha512-EEEgFcE9bLgaYUKuozyFfytQM2wDHtXn4tAN41pkaxpNjAykv11GVdeI4tHtmPWW4Xrgh9R/2d7XYghDVjbKKw==",
+ "node_modules/loader-runner": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz",
+ "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==",
"dev": true,
- "requires": {
- "date-format": "^2.0.0",
- "debug": "^4.1.1",
- "flatted": "^2.0.0",
- "rfdc": "^1.1.4",
- "streamroller": "^1.0.6"
+ "engines": {
+ "node": ">=6.11.5"
}
},
- "loglevel": {
- "version": "1.6.8",
- "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.8.tgz",
- "integrity": "sha512-bsU7+gc9AJ2SqpzxwU3+1fedl8zAntbtC5XYlt3s2j1hJcn2PsXSmgN8TaLG/J1/2mod4+cE/3vNL70/c1RNCA==",
- "dev": true
- },
- "loose-envify": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
- "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
+ "node_modules/locate-path": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
+ "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
"dev": true,
- "requires": {
- "js-tokens": "^3.0.0 || ^4.0.0"
+ "dependencies": {
+ "p-locate": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
+ "node_modules/lodash": {
+ "version": "4.17.21",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
+ "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
+ "dev": true
},
- "make-dir": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz",
- "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==",
- "dev": true,
- "requires": {
- "pify": "^4.0.1",
- "semver": "^5.6.0"
- },
- "dependencies": {
- "pify": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
- "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
- "dev": true
- }
- }
+ "node_modules/lodash.debounce": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
+ "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==",
+ "dev": true
},
- "map-age-cleaner": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz",
- "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==",
+ "node_modules/log4js": {
+ "version": "6.9.1",
+ "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.9.1.tgz",
+ "integrity": "sha512-1somDdy9sChrr9/f4UlzhdaGfDR2c/SaD2a4T7qEkG4jTS57/B3qmnjLYePwQ8cqWnUHZI0iAKxMBpCZICiZ2g==",
"dev": true,
- "requires": {
- "p-defer": "^1.0.0"
+ "dependencies": {
+ "date-format": "^4.0.14",
+ "debug": "^4.3.4",
+ "flatted": "^3.2.7",
+ "rfdc": "^1.3.0",
+ "streamroller": "^3.1.5"
+ },
+ "engines": {
+ "node": ">=8.0"
}
},
- "map-cache": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
- "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=",
- "dev": true
- },
- "map-visit": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
- "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=",
+ "node_modules/lru-cache": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
+ "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
"dev": true,
- "requires": {
- "object-visit": "^1.0.0"
+ "dependencies": {
+ "yallist": "^3.0.2"
}
},
- "md5.js": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
- "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==",
+ "node_modules/make-dir": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
+ "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
"dev": true,
- "requires": {
- "hash-base": "^3.0.0",
- "inherits": "^2.0.1",
- "safe-buffer": "^5.1.2"
+ "dependencies": {
+ "semver": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "media-typer": {
+ "node_modules/media-typer": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
- "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=",
- "dev": true
- },
- "mem": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/mem/-/mem-4.1.0.tgz",
- "integrity": "sha512-I5u6Q1x7wxO0kdOpYBB28xueHADYps5uty/zg936CiG8NTe5sJL8EjrCuLneuDW3PlMdZBGDIn8BirEVdovZvg==",
+ "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
"dev": true,
- "requires": {
- "map-age-cleaner": "^0.1.1",
- "mimic-fn": "^1.0.0",
- "p-is-promise": "^2.0.0"
+ "engines": {
+ "node": ">= 0.6"
}
},
- "memory-fs": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz",
- "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=",
+ "node_modules/memfs": {
+ "version": "3.5.0",
+ "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.0.tgz",
+ "integrity": "sha512-yK6o8xVJlQerz57kvPROwTMgx5WtGwC2ZxDtOUsnGl49rHjYkfQoPNZPCKH73VdLE1BwBu/+Fx/NL8NYMUw2aA==",
"dev": true,
- "requires": {
- "errno": "^0.1.3",
- "readable-stream": "^2.0.1"
+ "dependencies": {
+ "fs-monkey": "^1.0.3"
+ },
+ "engines": {
+ "node": ">= 4.0.0"
}
},
- "memorystream": {
+ "node_modules/memorystream": {
"version": "0.3.1",
"resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz",
- "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=",
- "dev": true
+ "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.10.0"
+ }
},
- "merge-descriptors": {
+ "node_modules/merge-descriptors": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
- "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=",
+ "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==",
"dev": true
},
- "merge-stream": {
+ "node_modules/merge-stream": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
"integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
"dev": true
},
- "merge2": {
+ "node_modules/merge2": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
"integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">= 8"
+ }
},
- "methods": {
+ "node_modules/methods": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
- "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=",
- "dev": true
- },
- "micromatch": {
- "version": "3.1.10",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
- "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
- "dev": true,
- "requires": {
- "arr-diff": "^4.0.0",
- "array-unique": "^0.3.2",
- "braces": "^2.3.1",
- "define-property": "^2.0.2",
- "extend-shallow": "^3.0.2",
- "extglob": "^2.0.4",
- "fragment-cache": "^0.2.1",
- "kind-of": "^6.0.2",
- "nanomatch": "^1.2.9",
- "object.pick": "^1.3.0",
- "regex-not": "^1.0.0",
- "snapdragon": "^0.8.1",
- "to-regex": "^3.0.2"
+ "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.6"
}
},
- "miller-rabin": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz",
- "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==",
+ "node_modules/micromatch": {
+ "version": "4.0.5",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz",
+ "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
"dev": true,
- "requires": {
- "bn.js": "^4.0.0",
- "brorand": "^1.0.1"
- },
"dependencies": {
- "bn.js": {
- "version": "4.11.9",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
- "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
- "dev": true
- }
+ "braces": "^3.0.2",
+ "picomatch": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=8.6"
}
},
- "mime": {
- "version": "2.4.5",
- "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.5.tgz",
- "integrity": "sha512-3hQhEUF027BuxZjQA3s7rIv/7VCQPa27hN9u9g87sEkWaKwQPuXOkVKtOeiyUrnWqTDiOs8Ed2rwg733mB0R5w==",
- "dev": true
- },
- "mime-db": {
- "version": "1.38.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.38.0.tgz",
- "integrity": "sha512-bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg==",
- "dev": true
- },
- "mime-types": {
- "version": "2.1.22",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.22.tgz",
- "integrity": "sha512-aGl6TZGnhm/li6F7yx82bJiBZwgiEa4Hf6CNr8YO+r5UHr53tSTYZb102zyU50DOWWKeOv0uQLRL0/9EiKWCog==",
+ "node_modules/mime": {
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz",
+ "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==",
"dev": true,
- "requires": {
- "mime-db": "~1.38.0"
+ "bin": {
+ "mime": "cli.js"
+ },
+ "engines": {
+ "node": ">=4.0.0"
}
},
- "mimic-fn": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz",
- "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==",
- "dev": true
- },
- "minimalistic-assert": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
- "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==",
- "dev": true
- },
- "minimalistic-crypto-utils": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
- "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=",
- "dev": true
- },
- "minimatch": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
- "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+ "node_modules/mime-db": {
+ "version": "1.52.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
"dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
+ "engines": {
+ "node": ">= 0.6"
}
},
- "minimist": {
- "version": "1.2.5",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
- "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
- "dev": true
- },
- "minipass": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.1.tgz",
- "integrity": "sha512-UFqVihv6PQgwj8/yTGvl9kPz7xIAY+R5z6XYjRInD3Gk3qx6QGSD6zEcpeG4Dy/lQnv1J6zv8ejV90hyYIKf3w==",
+ "node_modules/mime-types": {
+ "version": "2.1.35",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
"dev": true,
- "requires": {
- "yallist": "^4.0.0"
- },
"dependencies": {
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- }
+ "mime-db": "1.52.0"
+ },
+ "engines": {
+ "node": ">= 0.6"
}
},
- "minipass-collect": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz",
- "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==",
+ "node_modules/mimic-fn": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
+ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
"dev": true,
- "requires": {
- "minipass": "^3.0.0"
+ "engines": {
+ "node": ">=6"
}
},
- "minipass-flush": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz",
- "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==",
- "dev": true,
- "requires": {
- "minipass": "^3.0.0"
- }
+ "node_modules/minimalistic-assert": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
+ "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==",
+ "dev": true
},
- "minipass-pipeline": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.2.tgz",
- "integrity": "sha512-3JS5A2DKhD2g0Gg8x3yamO0pj7YeKGwVlDS90pF++kxptwx/F+B//roxf9SqYil5tQo65bijy+dAuAFZmYOouA==",
+ "node_modules/minimatch": {
+ "version": "3.0.8",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz",
+ "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==",
"dev": true,
- "requires": {
- "minipass": "^3.0.0"
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
}
},
- "minizlib": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
- "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
+ "node_modules/minimist": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
+ "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
"dev": true,
- "requires": {
- "minipass": "^3.0.0",
- "yallist": "^4.0.0"
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "mississippi": {
+ "node_modules/mitt": {
"version": "3.0.0",
- "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz",
- "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==",
- "dev": true,
- "requires": {
- "concat-stream": "^1.5.0",
- "duplexify": "^3.4.2",
- "end-of-stream": "^1.1.0",
- "flush-write-stream": "^1.0.0",
- "from2": "^2.1.0",
- "parallel-transform": "^1.1.0",
- "pump": "^3.0.0",
- "pumpify": "^1.3.3",
- "stream-each": "^1.1.0",
- "through2": "^2.0.0"
- }
- },
- "mixin-deep": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz",
- "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==",
- "dev": true,
- "requires": {
- "for-in": "^1.0.2",
- "is-extendable": "^1.0.1"
- },
- "dependencies": {
- "is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
- "dev": true,
- "requires": {
- "is-plain-object": "^2.0.4"
- }
- }
- }
+ "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.0.tgz",
+ "integrity": "sha512-7dX2/10ITVyqh4aOSVI9gdape+t9l2/8QxHrFmUXu4EEUpdlxl6RudZUPZoc+zuY2hk1j7XxVroIVIan/pD/SQ==",
+ "dev": true
},
- "mkdirp": {
- "version": "0.5.5",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
- "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
+ "node_modules/mkdirp": {
+ "version": "0.5.6",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
+ "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==",
"dev": true,
- "requires": {
- "minimist": "^1.2.5"
+ "dependencies": {
+ "minimist": "^1.2.6"
+ },
+ "bin": {
+ "mkdirp": "bin/cmd.js"
}
},
- "move-concurrently": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz",
- "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=",
- "dev": true,
- "requires": {
- "aproba": "^1.1.1",
- "copy-concurrently": "^1.0.0",
- "fs-write-stream-atomic": "^1.0.8",
- "mkdirp": "^0.5.1",
- "rimraf": "^2.5.4",
- "run-queue": "^1.0.3"
- }
+ "node_modules/mkdirp-classic": {
+ "version": "0.5.3",
+ "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz",
+ "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==",
+ "dev": true
},
- "ms": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
- "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
+ "node_modules/ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
"dev": true
},
- "multicast-dns": {
- "version": "6.2.3",
- "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz",
- "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==",
+ "node_modules/multicast-dns": {
+ "version": "7.2.5",
+ "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz",
+ "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==",
"dev": true,
- "requires": {
- "dns-packet": "^1.3.1",
+ "dependencies": {
+ "dns-packet": "^5.2.2",
"thunky": "^1.0.2"
+ },
+ "bin": {
+ "multicast-dns": "cli.js"
}
},
- "multicast-dns-service-types": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz",
- "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=",
- "dev": true
- },
- "nan": {
- "version": "2.14.0",
- "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz",
- "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==",
- "dev": true,
- "optional": true
- },
- "nanomatch": {
- "version": "1.2.13",
- "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",
- "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==",
+ "node_modules/negotiator": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
+ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
"dev": true,
- "requires": {
- "arr-diff": "^4.0.0",
- "array-unique": "^0.3.2",
- "define-property": "^2.0.2",
- "extend-shallow": "^3.0.2",
- "fragment-cache": "^0.2.1",
- "is-windows": "^1.0.2",
- "kind-of": "^6.0.2",
- "object.pick": "^1.3.0",
- "regex-not": "^1.0.0",
- "snapdragon": "^0.8.1",
- "to-regex": "^3.0.1"
+ "engines": {
+ "node": ">= 0.6"
}
},
- "negotiator": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz",
- "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=",
- "dev": true
- },
- "neo-async": {
- "version": "2.6.1",
- "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz",
- "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==",
+ "node_modules/neo-async": {
+ "version": "2.6.2",
+ "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
+ "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
"dev": true
},
- "nice-try": {
+ "node_modules/nice-try": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
"integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
"dev": true
},
- "node-forge": {
- "version": "0.10.0",
- "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz",
- "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==",
- "dev": true
- },
- "node-libs-browser": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz",
- "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==",
- "dev": true,
- "requires": {
- "assert": "^1.1.1",
- "browserify-zlib": "^0.2.0",
- "buffer": "^4.3.0",
- "console-browserify": "^1.1.0",
- "constants-browserify": "^1.0.0",
- "crypto-browserify": "^3.11.0",
- "domain-browser": "^1.1.1",
- "events": "^3.0.0",
- "https-browserify": "^1.0.0",
- "os-browserify": "^0.3.0",
- "path-browserify": "0.0.1",
- "process": "^0.11.10",
- "punycode": "^1.2.4",
- "querystring-es3": "^0.2.0",
- "readable-stream": "^2.3.3",
- "stream-browserify": "^2.0.1",
- "stream-http": "^2.7.2",
- "string_decoder": "^1.0.0",
- "timers-browserify": "^2.0.4",
- "tty-browserify": "0.0.0",
- "url": "^0.11.0",
- "util": "^0.11.0",
- "vm-browserify": "^1.0.1"
- },
- "dependencies": {
- "punycode": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
- "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
- "dev": true
+ "node_modules/node-fetch": {
+ "version": "2.6.7",
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
+ "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
+ "dev": true,
+ "dependencies": {
+ "whatwg-url": "^5.0.0"
+ },
+ "engines": {
+ "node": "4.x || >=6.0.0"
+ },
+ "peerDependencies": {
+ "encoding": "^0.1.0"
+ },
+ "peerDependenciesMeta": {
+ "encoding": {
+ "optional": true
}
}
},
- "node-releases": {
- "version": "1.1.7",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.7.tgz",
- "integrity": "sha512-bKdrwaqJUPHqlCzDD7so/R+Nk0jGv9a11ZhLrD9f6i947qGLrGAhU3OxRENa19QQmwzGy/g6zCDEuLGDO8HPvA==",
+ "node_modules/node-forge": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz",
+ "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==",
"dev": true,
- "requires": {
- "semver": "^5.3.0"
+ "engines": {
+ "node": ">= 6.13.0"
}
},
- "normalize-package-data": {
+ "node_modules/node-releases": {
+ "version": "2.0.10",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz",
+ "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==",
+ "dev": true
+ },
+ "node_modules/normalize-package-data": {
"version": "2.5.0",
"resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
"integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
"dev": true,
- "requires": {
+ "dependencies": {
"hosted-git-info": "^2.1.4",
"resolve": "^1.10.0",
"semver": "2 || 3 || 4 || 5",
"validate-npm-package-license": "^3.0.1"
}
},
- "normalize-path": {
+ "node_modules/normalize-package-data/node_modules/semver": {
+ "version": "5.7.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
+ "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+ "dev": true,
+ "bin": {
+ "semver": "bin/semver"
+ }
+ },
+ "node_modules/normalize-path": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "npm-run-all": {
+ "node_modules/npm-run-all": {
"version": "4.1.5",
"resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz",
"integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"ansi-styles": "^3.2.1",
"chalk": "^2.4.1",
"cross-spawn": "^6.0.5",
@@ -6192,1185 +5955,1020 @@
"read-pkg": "^3.0.0",
"shell-quote": "^1.6.1",
"string.prototype.padend": "^3.0.0"
+ },
+ "bin": {
+ "npm-run-all": "bin/npm-run-all/index.js",
+ "run-p": "bin/run-p/index.js",
+ "run-s": "bin/run-s/index.js"
+ },
+ "engines": {
+ "node": ">= 4"
}
},
- "npm-run-path": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
- "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=",
+ "node_modules/npm-run-path": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
+ "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
"dev": true,
- "requires": {
- "path-key": "^2.0.0"
+ "dependencies": {
+ "path-key": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "null-check": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/null-check/-/null-check-1.0.0.tgz",
- "integrity": "sha1-l33/1xdgErnsMNKjnbXPcqBDnt0=",
- "dev": true
- },
- "object-assign": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
- "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
- "dev": true
- },
- "object-component": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz",
- "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=",
- "dev": true
- },
- "object-copy": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
- "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=",
+ "node_modules/npm-run-path/node_modules/path-key": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
"dev": true,
- "requires": {
- "copy-descriptor": "^0.1.0",
- "define-property": "^0.2.5",
- "kind-of": "^3.0.3"
- },
- "dependencies": {
- "define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^0.1.0"
- }
- },
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
+ "engines": {
+ "node": ">=8"
}
},
- "object-inspect": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz",
- "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==",
- "dev": true
- },
- "object-is": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz",
- "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==",
+ "node_modules/object-assign": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
+ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
"dev": true,
- "requires": {
- "define-properties": "^1.1.3",
- "es-abstract": "^1.17.5"
- },
- "dependencies": {
- "es-abstract": {
- "version": "1.17.5",
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz",
- "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==",
- "dev": true,
- "requires": {
- "es-to-primitive": "^1.2.1",
- "function-bind": "^1.1.1",
- "has": "^1.0.3",
- "has-symbols": "^1.0.1",
- "is-callable": "^1.1.5",
- "is-regex": "^1.0.5",
- "object-inspect": "^1.7.0",
- "object-keys": "^1.1.1",
- "object.assign": "^4.1.0",
- "string.prototype.trimleft": "^2.1.1",
- "string.prototype.trimright": "^2.1.1"
- }
- },
- "es-to-primitive": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
- "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
- "dev": true,
- "requires": {
- "is-callable": "^1.1.4",
- "is-date-object": "^1.0.1",
- "is-symbol": "^1.0.2"
- }
- },
- "has-symbols": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz",
- "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==",
- "dev": true
- },
- "is-callable": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz",
- "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==",
- "dev": true
- },
- "is-regex": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz",
- "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==",
- "dev": true,
- "requires": {
- "has": "^1.0.3"
- }
- },
- "object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
- "dev": true
- }
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "object-keys": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.0.tgz",
- "integrity": "sha512-6OO5X1+2tYkNyNEx6TsCxEqFfRWaqx6EtMiSbGrw8Ob8v9Ne+Hl8rBAgLBZn5wjEz3s/s6U1WXFUFOcxxAwUpg==",
- "dev": true
- },
- "object-visit": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
- "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=",
+ "node_modules/object-inspect": {
+ "version": "1.12.3",
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz",
+ "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==",
"dev": true,
- "requires": {
- "isobject": "^3.0.0"
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "object.assign": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
- "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
+ "node_modules/object-keys": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
+ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
"dev": true,
- "requires": {
- "define-properties": "^1.1.2",
- "function-bind": "^1.1.1",
- "has-symbols": "^1.0.0",
- "object-keys": "^1.0.11"
+ "engines": {
+ "node": ">= 0.4"
}
},
- "object.pick": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
- "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=",
+ "node_modules/object.assign": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz",
+ "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==",
"dev": true,
- "requires": {
- "isobject": "^3.0.1"
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.4",
+ "has-symbols": "^1.0.3",
+ "object-keys": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "obuf": {
+ "node_modules/obuf": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz",
"integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==",
"dev": true
},
- "on-finished": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
- "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
+ "node_modules/on-finished": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
+ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
"dev": true,
- "requires": {
+ "dependencies": {
"ee-first": "1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.8"
}
},
- "on-headers": {
+ "node_modules/on-headers": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz",
"integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8"
+ }
},
- "once": {
+ "node_modules/once": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
- "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
+ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
"dev": true,
- "requires": {
+ "dependencies": {
"wrappy": "1"
}
},
- "opn": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz",
- "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==",
- "dev": true,
- "requires": {
- "is-wsl": "^1.1.0"
- }
- },
- "original": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz",
- "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==",
+ "node_modules/onetime": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
+ "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
"dev": true,
- "requires": {
- "url-parse": "^1.4.3"
+ "dependencies": {
+ "mimic-fn": "^2.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "os-browserify": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
- "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=",
- "dev": true
- },
- "os-locale": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz",
- "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==",
+ "node_modules/open": {
+ "version": "8.4.2",
+ "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz",
+ "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==",
"dev": true,
- "requires": {
- "execa": "^1.0.0",
- "lcid": "^2.0.0",
- "mem": "^4.0.0"
+ "dependencies": {
+ "define-lazy-prop": "^2.0.0",
+ "is-docker": "^2.1.1",
+ "is-wsl": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "os-tmpdir": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
- "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
- "dev": true
- },
- "p-defer": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz",
- "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=",
- "dev": true
- },
- "p-finally": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
- "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=",
- "dev": true
- },
- "p-is-promise": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.0.0.tgz",
- "integrity": "sha512-pzQPhYMCAgLAKPWD2jC3Se9fEfrD9npNos0y150EeqZll7akhEgGhTW/slB6lHku8AvYGiJ+YJ5hfHKePPgFWg==",
- "dev": true
- },
- "p-limit": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.1.0.tgz",
- "integrity": "sha512-NhURkNcrVB+8hNfLuysU8enY5xn2KXphsHBaC2YmRNTZRc7RWusw6apSpdEj3jo4CMb6W9nrF6tTnsJsJeyu6g==",
+ "node_modules/p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
"dev": true,
- "requires": {
+ "dependencies": {
"p-try": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "p-locate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
- "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
+ "node_modules/p-locate": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
+ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
"dev": true,
- "requires": {
- "p-limit": "^2.0.0"
+ "dependencies": {
+ "p-limit": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "p-map": {
+ "node_modules/p-map": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz",
"integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==",
- "dev": true
- },
- "p-retry": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz",
- "integrity": "sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w==",
- "dev": true,
- "requires": {
- "retry": "^0.12.0"
- }
- },
- "p-try": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz",
- "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==",
- "dev": true
- },
- "pako": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
- "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==",
- "dev": true
- },
- "parallel-transform": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz",
- "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==",
"dev": true,
- "requires": {
- "cyclist": "^1.0.1",
- "inherits": "^2.0.3",
- "readable-stream": "^2.1.5"
+ "engines": {
+ "node": ">=6"
}
},
- "parse-asn1": {
- "version": "5.1.6",
- "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz",
- "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==",
+ "node_modules/p-retry": {
+ "version": "4.6.2",
+ "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz",
+ "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==",
"dev": true,
- "requires": {
- "asn1.js": "^5.2.0",
- "browserify-aes": "^1.0.0",
- "evp_bytestokey": "^1.0.0",
- "pbkdf2": "^3.0.3",
- "safe-buffer": "^5.1.1"
+ "dependencies": {
+ "@types/retry": "0.12.0",
+ "retry": "^0.13.1"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "parse-json": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
- "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=",
+ "node_modules/p-try": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
+ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
"dev": true,
- "requires": {
- "error-ex": "^1.3.1",
- "json-parse-better-errors": "^1.0.1"
+ "engines": {
+ "node": ">=6"
}
},
- "parse-passwd": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz",
- "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=",
- "dev": true
- },
- "parseqs": {
- "version": "0.0.5",
- "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz",
- "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=",
+ "node_modules/parent-module": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
"dev": true,
- "requires": {
- "better-assert": "~1.0.0"
+ "dependencies": {
+ "callsites": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
}
},
- "parseuri": {
- "version": "0.0.5",
- "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz",
- "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=",
+ "node_modules/parse-json": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
+ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
"dev": true,
- "requires": {
- "better-assert": "~1.0.0"
+ "dependencies": {
+ "@babel/code-frame": "^7.0.0",
+ "error-ex": "^1.3.1",
+ "json-parse-even-better-errors": "^2.3.0",
+ "lines-and-columns": "^1.1.6"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "parseurl": {
+ "node_modules/parseurl": {
"version": "1.3.3",
"resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
"integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
- "dev": true
- },
- "pascalcase": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
- "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=",
- "dev": true
- },
- "path-browserify": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz",
- "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==",
- "dev": true
- },
- "path-dirname": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz",
- "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8"
+ }
},
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "dev": true
+ "node_modules/path-exists": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "path-is-absolute": {
+ "node_modules/path-is-absolute": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
- "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
- "dev": true
+ "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "path-is-inside": {
+ "node_modules/path-is-inside": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz",
- "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=",
+ "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==",
"dev": true
},
- "path-key": {
+ "node_modules/path-key": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
- "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
- "dev": true
+ "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
},
- "path-parse": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
- "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
+ "node_modules/path-parse": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
"dev": true
},
- "path-to-regexp": {
+ "node_modules/path-to-regexp": {
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
- "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=",
+ "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==",
"dev": true
},
- "path-type": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
- "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
- "dev": true,
- "requires": {
- "pify": "^3.0.0"
- }
- },
- "pbkdf2": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz",
- "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==",
+ "node_modules/path-type": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
"dev": true,
- "requires": {
- "create-hash": "^1.1.2",
- "create-hmac": "^1.1.4",
- "ripemd160": "^2.0.1",
- "safe-buffer": "^5.0.1",
- "sha.js": "^2.4.8"
+ "engines": {
+ "node": ">=8"
}
},
- "picomatch": {
- "version": "2.2.2",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz",
- "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==",
+ "node_modules/pend": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
+ "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==",
"dev": true
},
- "pidtree": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.0.tgz",
- "integrity": "sha512-9CT4NFlDcosssyg8KVFltgokyKZIFjoBxw8CTGy+5F38Y1eQWrt8tRayiUOXE+zVKQnYu5BR8JjCtvK3BcnBhg==",
+ "node_modules/picocolors": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
+ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
"dev": true
},
- "pify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
- "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
- "dev": true
+ "node_modules/picomatch": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
+ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
+ "dev": true,
+ "engines": {
+ "node": ">=8.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
+ "node_modules/pidtree": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz",
+ "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==",
+ "dev": true,
+ "bin": {
+ "pidtree": "bin/pidtree.js"
+ },
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/pify": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
+ "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
},
- "pinkie": {
+ "node_modules/pinkie": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
- "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=",
- "dev": true
+ "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "pinkie-promise": {
+ "node_modules/pinkie-promise": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
- "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
+ "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==",
"dev": true,
- "requires": {
+ "dependencies": {
"pinkie": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "pkg-dir": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz",
- "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==",
- "dev": true,
- "requires": {
- "find-up": "^3.0.0"
- }
- },
- "portfinder": {
- "version": "1.0.26",
- "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.26.tgz",
- "integrity": "sha512-Xi7mKxJHHMI3rIUrnm/jjUgwhbYMkp/XKEcZX3aG4BrumLpq3nmoQMX+ClYnDZnZ/New7IatC1no5RX0zo1vXQ==",
+ "node_modules/pkg-dir": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
+ "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
"dev": true,
- "requires": {
- "async": "^2.6.2",
- "debug": "^3.1.1",
- "mkdirp": "^0.5.1"
- },
"dependencies": {
- "debug": {
- "version": "3.2.6",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
- "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
- "dev": true,
- "requires": {
- "ms": "^2.1.1"
- }
- }
+ "find-up": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "posix-character-classes": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
- "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=",
- "dev": true
- },
- "private": {
- "version": "0.1.8",
- "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz",
- "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==",
- "dev": true
- },
- "process": {
- "version": "0.11.10",
- "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
- "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=",
- "dev": true
- },
- "process-nextick-args": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz",
- "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==",
+ "node_modules/process-nextick-args": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
+ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
"dev": true
},
- "promise-inflight": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz",
- "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=",
- "dev": true
+ "node_modules/progress": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
+ "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.4.0"
+ }
},
- "proxy-addr": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz",
- "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==",
+ "node_modules/proxy-addr": {
+ "version": "2.0.7",
+ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz",
+ "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==",
"dev": true,
- "requires": {
- "forwarded": "~0.1.2",
+ "dependencies": {
+ "forwarded": "0.2.0",
"ipaddr.js": "1.9.1"
+ },
+ "engines": {
+ "node": ">= 0.10"
}
},
- "prr": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz",
- "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=",
- "dev": true
- },
- "public-encrypt": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz",
- "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==",
- "dev": true,
- "requires": {
- "bn.js": "^4.1.0",
- "browserify-rsa": "^4.0.0",
- "create-hash": "^1.1.0",
- "parse-asn1": "^5.0.0",
- "randombytes": "^2.0.1",
- "safe-buffer": "^5.1.2"
- },
- "dependencies": {
- "bn.js": {
- "version": "4.11.9",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
- "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
- "dev": true
- }
+ "node_modules/proxy-addr/node_modules/ipaddr.js": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
+ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.10"
}
},
- "pump": {
+ "node_modules/proxy-from-env": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
+ "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==",
+ "dev": true
+ },
+ "node_modules/pump": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
"integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
"dev": true,
- "requires": {
+ "dependencies": {
"end-of-stream": "^1.1.0",
"once": "^1.3.1"
}
},
- "pumpify": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz",
- "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==",
+ "node_modules/punycode": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz",
+ "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==",
"dev": true,
- "requires": {
- "duplexify": "^3.6.0",
- "inherits": "^2.0.3",
- "pump": "^2.0.0"
- },
- "dependencies": {
- "pump": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz",
- "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==",
- "dev": true,
- "requires": {
- "end-of-stream": "^1.1.0",
- "once": "^1.3.1"
- }
- }
+ "engines": {
+ "node": ">=6"
}
},
- "punycode": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
- "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
- "dev": true
+ "node_modules/puppeteer": {
+ "version": "19.9.1",
+ "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-19.9.1.tgz",
+ "integrity": "sha512-Ii8yZySNdpPzeKAK6ROFQ+gAi04igoZ0cPsBE1LW9fmzkqQTqbJpEGhJ/5gBS8oVqkQ2CNFA4BskJl75zaWWgA==",
+ "dev": true,
+ "hasInstallScript": true,
+ "dependencies": {
+ "@puppeteer/browsers": "0.4.1",
+ "cosmiconfig": "8.1.3",
+ "https-proxy-agent": "5.0.1",
+ "progress": "2.0.3",
+ "proxy-from-env": "1.1.0",
+ "puppeteer-core": "19.9.1"
+ }
+ },
+ "node_modules/puppeteer-core": {
+ "version": "19.9.1",
+ "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-19.9.1.tgz",
+ "integrity": "sha512-46JGqhqTgYO5DuUMRGUiMCKM/86uHMsMCK7Fw7cbY/p+eCKLIPGVyQyI/E0UcGYa0+OH3dz0ResaDdHxqCgDDw==",
+ "dev": true,
+ "dependencies": {
+ "@puppeteer/browsers": "0.4.1",
+ "chromium-bidi": "0.4.6",
+ "cross-fetch": "3.1.5",
+ "debug": "4.3.4",
+ "devtools-protocol": "0.0.1107588",
+ "extract-zip": "2.0.1",
+ "https-proxy-agent": "5.0.1",
+ "proxy-from-env": "1.1.0",
+ "tar-fs": "2.1.1",
+ "unbzip2-stream": "1.4.3",
+ "ws": "8.13.0"
+ },
+ "engines": {
+ "node": ">=14.14.0"
+ },
+ "peerDependencies": {
+ "typescript": ">= 4.7.4"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
},
- "qjobs": {
+ "node_modules/qjobs": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz",
"integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==",
- "dev": true
- },
- "qs": {
- "version": "6.7.0",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz",
- "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==",
- "dev": true
- },
- "querystring": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz",
- "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.9"
+ }
},
- "querystring-es3": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz",
- "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=",
- "dev": true
+ "node_modules/qs": {
+ "version": "6.11.0",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
+ "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
+ "dev": true,
+ "dependencies": {
+ "side-channel": "^1.0.4"
+ },
+ "engines": {
+ "node": ">=0.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "querystringify": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.1.tgz",
- "integrity": "sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA==",
- "dev": true
+ "node_modules/queue-microtask": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
+ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
},
- "randombytes": {
+ "node_modules/randombytes": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
"integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
"dev": true,
- "requires": {
- "safe-buffer": "^5.1.0"
- }
- },
- "randomfill": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz",
- "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==",
- "dev": true,
- "requires": {
- "randombytes": "^2.0.5",
+ "dependencies": {
"safe-buffer": "^5.1.0"
}
},
- "range-parser": {
+ "node_modules/range-parser": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
"integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">= 0.6"
+ }
},
- "raw-body": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz",
- "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==",
+ "node_modules/raw-body": {
+ "version": "2.5.2",
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz",
+ "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==",
"dev": true,
- "requires": {
- "bytes": "3.1.0",
- "http-errors": "1.7.2",
+ "dependencies": {
+ "bytes": "3.1.2",
+ "http-errors": "2.0.0",
"iconv-lite": "0.4.24",
"unpipe": "1.0.0"
},
- "dependencies": {
- "bytes": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz",
- "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==",
- "dev": true
- },
- "http-errors": {
- "version": "1.7.2",
- "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz",
- "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==",
- "dev": true,
- "requires": {
- "depd": "~1.1.2",
- "inherits": "2.0.3",
- "setprototypeof": "1.1.1",
- "statuses": ">= 1.5.0 < 2",
- "toidentifier": "1.0.0"
- }
- },
- "setprototypeof": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz",
- "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==",
- "dev": true
- }
+ "engines": {
+ "node": ">= 0.8"
}
},
- "read-pkg": {
+ "node_modules/read-pkg": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
- "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=",
+ "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==",
"dev": true,
- "requires": {
+ "dependencies": {
"load-json-file": "^4.0.0",
"normalize-package-data": "^2.3.2",
"path-type": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "readable-stream": {
- "version": "2.3.6",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
- "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
+ "node_modules/read-pkg/node_modules/path-type": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
+ "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
"dev": true,
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
+ "dependencies": {
+ "pify": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "readdirp": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
- "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
+ "node_modules/read-pkg/node_modules/pify": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
+ "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==",
"dev": true,
- "requires": {
- "graceful-fs": "^4.1.11",
- "micromatch": "^3.1.10",
- "readable-stream": "^2.0.2"
+ "engines": {
+ "node": ">=4"
}
},
- "regenerate": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz",
- "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==",
- "dev": true
+ "node_modules/readable-stream": {
+ "version": "1.1.14",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
+ "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==",
+ "dev": true,
+ "dependencies": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.1",
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
+ }
},
- "regenerate-unicode-properties": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-7.0.0.tgz",
- "integrity": "sha512-s5NGghCE4itSlUS+0WUj88G6cfMVMmH8boTPNvABf8od+2dhT9WDlWu8n01raQAJZMOK8Ch6jSexaRO7swd6aw==",
+ "node_modules/readdirp": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
+ "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
"dev": true,
- "requires": {
- "regenerate": "^1.4.0"
+ "dependencies": {
+ "picomatch": "^2.2.1"
+ },
+ "engines": {
+ "node": ">=8.10.0"
}
},
- "regenerator-transform": {
- "version": "0.13.3",
- "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.13.3.tgz",
- "integrity": "sha512-5ipTrZFSq5vU2YoGoww4uaRVAK4wyYC4TSICibbfEPOruUu8FFP7ErV0BjmbIOEpn3O/k9na9UEdYR/3m7N6uA==",
+ "node_modules/rechoir": {
+ "version": "0.8.0",
+ "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.8.0.tgz",
+ "integrity": "sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==",
"dev": true,
- "requires": {
- "private": "^0.1.6"
+ "dependencies": {
+ "resolve": "^1.20.0"
+ },
+ "engines": {
+ "node": ">= 10.13.0"
}
},
- "regex-not": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
- "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
+ "node_modules/regenerate": {
+ "version": "1.4.2",
+ "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz",
+ "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==",
+ "dev": true
+ },
+ "node_modules/regenerate-unicode-properties": {
+ "version": "10.1.0",
+ "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz",
+ "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==",
"dev": true,
- "requires": {
- "extend-shallow": "^3.0.2",
- "safe-regex": "^1.1.0"
+ "dependencies": {
+ "regenerate": "^1.4.2"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "regexp.prototype.flags": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz",
- "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==",
+ "node_modules/regenerator-runtime": {
+ "version": "0.13.11",
+ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz",
+ "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==",
+ "dev": true
+ },
+ "node_modules/regenerator-transform": {
+ "version": "0.15.1",
+ "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz",
+ "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==",
"dev": true,
- "requires": {
- "define-properties": "^1.1.3",
- "es-abstract": "^1.17.0-next.1"
- },
- "dependencies": {
- "es-abstract": {
- "version": "1.17.5",
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz",
- "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==",
- "dev": true,
- "requires": {
- "es-to-primitive": "^1.2.1",
- "function-bind": "^1.1.1",
- "has": "^1.0.3",
- "has-symbols": "^1.0.1",
- "is-callable": "^1.1.5",
- "is-regex": "^1.0.5",
- "object-inspect": "^1.7.0",
- "object-keys": "^1.1.1",
- "object.assign": "^4.1.0",
- "string.prototype.trimleft": "^2.1.1",
- "string.prototype.trimright": "^2.1.1"
- }
- },
- "es-to-primitive": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
- "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
- "dev": true,
- "requires": {
- "is-callable": "^1.1.4",
- "is-date-object": "^1.0.1",
- "is-symbol": "^1.0.2"
- }
- },
- "has-symbols": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz",
- "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==",
- "dev": true
- },
- "is-callable": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz",
- "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==",
- "dev": true
- },
- "is-regex": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz",
- "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==",
- "dev": true,
- "requires": {
- "has": "^1.0.3"
- }
- },
- "object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
- "dev": true
- }
+ "dependencies": {
+ "@babel/runtime": "^7.8.4"
}
},
- "regexpu-core": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.4.0.tgz",
- "integrity": "sha512-eDDWElbwwI3K0Lo6CqbQbA6FwgtCz4kYTarrri1okfkRLZAqstU+B3voZBCjg8Fl6iq0gXrJG6MvRgLthfvgOA==",
+ "node_modules/regexp.prototype.flags": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz",
+ "integrity": "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==",
"dev": true,
- "requires": {
- "regenerate": "^1.4.0",
- "regenerate-unicode-properties": "^7.0.0",
- "regjsgen": "^0.5.0",
- "regjsparser": "^0.6.0",
- "unicode-match-property-ecmascript": "^1.0.4",
- "unicode-match-property-value-ecmascript": "^1.0.2"
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.2.0",
+ "functions-have-names": "^1.2.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "regjsgen": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.0.tgz",
- "integrity": "sha512-RnIrLhrXCX5ow/E5/Mh2O4e/oa1/jW0eaBKTSy3LaCj+M3Bqvm97GWDp2yUtzIs4LEn65zR2yiYGFqb2ApnzDA==",
- "dev": true
+ "node_modules/regexpu-core": {
+ "version": "5.3.2",
+ "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz",
+ "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/regjsgen": "^0.8.0",
+ "regenerate": "^1.4.2",
+ "regenerate-unicode-properties": "^10.1.0",
+ "regjsparser": "^0.9.1",
+ "unicode-match-property-ecmascript": "^2.0.0",
+ "unicode-match-property-value-ecmascript": "^2.1.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
},
- "regjsparser": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz",
- "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==",
+ "node_modules/regjsparser": {
+ "version": "0.9.1",
+ "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz",
+ "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"jsesc": "~0.5.0"
},
- "dependencies": {
- "jsesc": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
- "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
- "dev": true
- }
+ "bin": {
+ "regjsparser": "bin/parser"
}
},
- "remove-trailing-separator": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
- "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=",
- "dev": true
- },
- "repeat-element": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz",
- "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==",
- "dev": true
- },
- "repeat-string": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
- "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
- "dev": true
+ "node_modules/regjsparser/node_modules/jsesc": {
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
+ "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==",
+ "dev": true,
+ "bin": {
+ "jsesc": "bin/jsesc"
+ }
},
- "require-directory": {
+ "node_modules/require-directory": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
- "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
- "dev": true
+ "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "require-main-filename": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
- "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
- "dev": true
+ "node_modules/require-from-string": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
+ "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "requires-port": {
+ "node_modules/requires-port": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
- "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=",
+ "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==",
"dev": true
},
- "resolve": {
- "version": "1.10.0",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.10.0.tgz",
- "integrity": "sha512-3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg==",
+ "node_modules/resolve": {
+ "version": "1.22.2",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz",
+ "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==",
"dev": true,
- "requires": {
- "path-parse": "^1.0.6"
+ "dependencies": {
+ "is-core-module": "^2.11.0",
+ "path-parse": "^1.0.7",
+ "supports-preserve-symlinks-flag": "^1.0.0"
+ },
+ "bin": {
+ "resolve": "bin/resolve"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "resolve-cwd": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz",
- "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=",
+ "node_modules/resolve-cwd": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
+ "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==",
"dev": true,
- "requires": {
- "resolve-from": "^3.0.0"
+ "dependencies": {
+ "resolve-from": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "resolve-dir": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz",
- "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=",
- "dev": true,
- "requires": {
- "expand-tilde": "^2.0.0",
- "global-modules": "^1.0.0"
- },
- "dependencies": {
- "global-modules": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz",
- "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==",
- "dev": true,
- "requires": {
- "global-prefix": "^1.0.1",
- "is-windows": "^1.0.1",
- "resolve-dir": "^1.0.0"
- }
- }
+ "node_modules/resolve-cwd/node_modules/resolve-from": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
+ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
}
},
- "resolve-from": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
- "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=",
- "dev": true
- },
- "resolve-url": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
- "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
- "dev": true
- },
- "ret": {
- "version": "0.1.15",
- "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
- "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
- "dev": true
+ "node_modules/resolve-from": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
},
- "retry": {
- "version": "0.12.0",
- "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz",
- "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=",
- "dev": true
+ "node_modules/retry": {
+ "version": "0.13.1",
+ "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz",
+ "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 4"
+ }
},
- "reusify": {
+ "node_modules/reusify": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
"integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "iojs": ">=1.0.0",
+ "node": ">=0.10.0"
+ }
},
- "rfdc": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.1.4.tgz",
- "integrity": "sha512-5C9HXdzK8EAqN7JDif30jqsBzavB7wLpaubisuQIGHWf2gUXSpzy6ArX/+Da8RjFpagWsCn+pIgxTMAmKw9Zug==",
+ "node_modules/rfdc": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz",
+ "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==",
"dev": true
},
- "rimraf": {
- "version": "2.6.3",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
- "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
+ "node_modules/rimraf": {
+ "version": "2.7.1",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
+ "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
"dev": true,
- "requires": {
+ "dependencies": {
"glob": "^7.1.3"
- }
- },
- "ripemd160": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
- "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
- "dev": true,
- "requires": {
- "hash-base": "^3.0.0",
- "inherits": "^2.0.1"
- }
- },
- "run-parallel": {
- "version": "1.1.9",
- "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz",
- "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==",
- "dev": true
+ },
+ "bin": {
+ "rimraf": "bin.js"
+ }
},
- "run-queue": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz",
- "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=",
+ "node_modules/run-parallel": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
+ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
"dev": true,
- "requires": {
- "aproba": "^1.1.1"
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "dependencies": {
+ "queue-microtask": "^1.2.2"
}
},
- "safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
- "dev": true
+ "node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
},
- "safe-regex": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
- "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
+ "node_modules/safe-regex-test": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz",
+ "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==",
"dev": true,
- "requires": {
- "ret": "~0.1.10"
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "get-intrinsic": "^1.1.3",
+ "is-regex": "^1.1.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "safer-buffer": {
+ "node_modules/safer-buffer": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
"dev": true
},
- "schema-utils": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
- "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
+ "node_modules/schema-utils": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.1.tgz",
+ "integrity": "sha512-lELhBAAly9NowEsX0yZBlw9ahZG+sK/1RJ21EpzdYHKEs13Vku3LJ+MIPhh4sMs0oCCeufZQEQbMekiA4vuVIQ==",
"dev": true,
- "requires": {
- "ajv": "^6.1.0",
- "ajv-errors": "^1.0.0",
- "ajv-keywords": "^3.1.0"
+ "dependencies": {
+ "@types/json-schema": "^7.0.9",
+ "ajv": "^8.9.0",
+ "ajv-formats": "^2.1.1",
+ "ajv-keywords": "^5.1.0"
+ },
+ "engines": {
+ "node": ">= 12.13.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/webpack"
}
},
- "select-hose": {
+ "node_modules/select-hose": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz",
- "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=",
+ "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==",
"dev": true
},
- "selfsigned": {
- "version": "1.10.8",
- "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.8.tgz",
- "integrity": "sha512-2P4PtieJeEwVgTU9QEcwIRDQ/mXJLX8/+I3ur+Pg16nS8oNbrGxEso9NyYWy8NAmXiNl4dlAp5MwoNeCWzON4w==",
+ "node_modules/selfsigned": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz",
+ "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==",
"dev": true,
- "requires": {
- "node-forge": "^0.10.0"
+ "dependencies": {
+ "node-forge": "^1"
+ },
+ "engines": {
+ "node": ">=10"
}
},
- "semver": {
- "version": "5.6.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz",
- "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==",
- "dev": true
+ "node_modules/semver": {
+ "version": "6.3.0",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+ "dev": true,
+ "bin": {
+ "semver": "bin/semver.js"
+ }
},
- "send": {
- "version": "0.17.1",
- "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz",
- "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==",
+ "node_modules/send": {
+ "version": "0.18.0",
+ "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz",
+ "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==",
"dev": true,
- "requires": {
+ "dependencies": {
"debug": "2.6.9",
- "depd": "~1.1.2",
- "destroy": "~1.0.4",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
"encodeurl": "~1.0.2",
"escape-html": "~1.0.3",
"etag": "~1.8.1",
"fresh": "0.5.2",
- "http-errors": "~1.7.2",
+ "http-errors": "2.0.0",
"mime": "1.6.0",
- "ms": "2.1.1",
- "on-finished": "~2.3.0",
+ "ms": "2.1.3",
+ "on-finished": "2.4.1",
"range-parser": "~1.2.1",
- "statuses": "~1.5.0"
+ "statuses": "2.0.1"
},
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/send/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
"dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- },
- "dependencies": {
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
- }
- },
- "http-errors": {
- "version": "1.7.3",
- "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz",
- "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==",
- "dev": true,
- "requires": {
- "depd": "~1.1.2",
- "inherits": "2.0.4",
- "setprototypeof": "1.1.1",
- "statuses": ">= 1.5.0 < 2",
- "toidentifier": "1.0.0"
- }
- },
- "inherits": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
- "dev": true
- },
- "mime": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
- "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
- "dev": true
- },
- "range-parser": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
- "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
- "dev": true
- },
- "setprototypeof": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz",
- "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==",
- "dev": true
- }
+ "ms": "2.0.0"
}
},
- "serialize-javascript": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz",
- "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==",
+ "node_modules/send/node_modules/debug/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true
+ },
+ "node_modules/send/node_modules/mime": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
+ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
+ "dev": true,
+ "bin": {
+ "mime": "cli.js"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/send/node_modules/ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+ "dev": true
+ },
+ "node_modules/send/node_modules/statuses": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
+ "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/serialize-javascript": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz",
+ "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==",
"dev": true,
- "requires": {
+ "dependencies": {
"randombytes": "^2.1.0"
}
},
- "serve-index": {
+ "node_modules/serve-index": {
"version": "1.9.1",
"resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz",
- "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=",
+ "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==",
"dev": true,
- "requires": {
+ "dependencies": {
"accepts": "~1.3.4",
"batch": "0.6.1",
"debug": "2.6.9",
@@ -7379,2531 +6977,1538 @@
"mime-types": "~2.1.17",
"parseurl": "~1.3.2"
},
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
+ "engines": {
+ "node": ">= 0.8.0"
}
},
- "serve-static": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz",
- "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==",
+ "node_modules/serve-index/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"dev": true,
- "requires": {
- "encodeurl": "~1.0.2",
- "escape-html": "~1.0.3",
- "parseurl": "~1.3.3",
- "send": "0.17.1"
+ "dependencies": {
+ "ms": "2.0.0"
}
},
- "set-blocking": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
- "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
- "dev": true
+ "node_modules/serve-index/node_modules/depd": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
+ "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.6"
+ }
},
- "set-value": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz",
- "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==",
- "dev": true,
- "requires": {
- "extend-shallow": "^2.0.1",
- "is-extendable": "^0.1.1",
- "is-plain-object": "^2.0.3",
- "split-string": "^3.0.1"
- },
- "dependencies": {
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "^0.1.0"
- }
- }
+ "node_modules/serve-index/node_modules/http-errors": {
+ "version": "1.6.3",
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
+ "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==",
+ "dev": true,
+ "dependencies": {
+ "depd": "~1.1.2",
+ "inherits": "2.0.3",
+ "setprototypeof": "1.1.0",
+ "statuses": ">= 1.4.0 < 2"
+ },
+ "engines": {
+ "node": ">= 0.6"
}
},
- "setimmediate": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
- "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=",
+ "node_modules/serve-index/node_modules/inherits": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
+ "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==",
"dev": true
},
- "setprototypeof": {
+ "node_modules/serve-index/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true
+ },
+ "node_modules/serve-index/node_modules/setprototypeof": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
"integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==",
"dev": true
},
- "sha.js": {
- "version": "2.4.11",
- "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
- "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
+ "node_modules/serve-static": {
+ "version": "1.15.0",
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz",
+ "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==",
"dev": true,
- "requires": {
- "inherits": "^2.0.1",
- "safe-buffer": "^5.0.1"
+ "dependencies": {
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "parseurl": "~1.3.3",
+ "send": "0.18.0"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
}
},
- "shallow-clone": {
+ "node_modules/setprototypeof": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
+ "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
+ "dev": true
+ },
+ "node_modules/shallow-clone": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
"integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==",
"dev": true,
- "requires": {
+ "dependencies": {
"kind-of": "^6.0.2"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "shebang-command": {
+ "node_modules/shebang-command": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
- "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
+ "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==",
"dev": true,
- "requires": {
+ "dependencies": {
"shebang-regex": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "shebang-regex": {
+ "node_modules/shebang-regex": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
- "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
- "dev": true
- },
- "shell-quote": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz",
- "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=",
+ "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==",
"dev": true,
- "requires": {
- "array-filter": "~0.0.0",
- "array-map": "~0.0.0",
- "array-reduce": "~0.0.0",
- "jsonify": "~0.0.0"
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "shelljs": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.3.0.tgz",
- "integrity": "sha1-NZbmMHp4FUT1kfN9phg2DzHbV7E=",
- "dev": true
- },
- "signal-exit": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
- "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=",
- "dev": true
- },
- "slash": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
- "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
- "dev": true
+ "node_modules/shell-quote": {
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz",
+ "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "snapdragon": {
- "version": "0.8.2",
- "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
- "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
+ "node_modules/side-channel": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
+ "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
"dev": true,
- "requires": {
- "base": "^0.11.1",
- "debug": "^2.2.0",
- "define-property": "^0.2.5",
- "extend-shallow": "^2.0.1",
- "map-cache": "^0.2.2",
- "source-map": "^0.5.6",
- "source-map-resolve": "^0.5.0",
- "use": "^3.1.0"
- },
"dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^0.1.0"
- }
- },
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "^0.1.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
+ "call-bind": "^1.0.0",
+ "get-intrinsic": "^1.0.2",
+ "object-inspect": "^1.9.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "snapdragon-node": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
- "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
- "dev": true,
- "requires": {
- "define-property": "^1.0.0",
- "isobject": "^3.0.0",
- "snapdragon-util": "^3.0.1"
- },
- "dependencies": {
- "define-property": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
- "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^1.0.0"
- }
- },
- "is-accessor-descriptor": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
- "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
- "dev": true,
- "requires": {
- "kind-of": "^6.0.0"
- }
- },
- "is-data-descriptor": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
- "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
- "dev": true,
- "requires": {
- "kind-of": "^6.0.0"
- }
- },
- "is-descriptor": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
- "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "^1.0.0",
- "is-data-descriptor": "^1.0.0",
- "kind-of": "^6.0.2"
- }
- }
- }
+ "node_modules/signal-exit": {
+ "version": "3.0.7",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
+ "dev": true
},
- "snapdragon-util": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
- "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
+ "node_modules/slash": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz",
+ "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==",
"dev": true,
- "requires": {
- "kind-of": "^3.2.0"
+ "engines": {
+ "node": ">=12"
},
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "socket.io": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz",
- "integrity": "sha512-rORqq9c+7W0DAK3cleWNSyfv/qKXV99hV4tZe+gGLfBECw3XEhBy7x85F3wypA9688LKjtwO9pX9L33/xQI8yA==",
+ "node_modules/socket.io": {
+ "version": "4.6.1",
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.6.1.tgz",
+ "integrity": "sha512-KMcaAi4l/8+xEjkRICl6ak8ySoxsYG+gG6/XfRCPJPQ/haCRIJBTL4wIl8YCsmtaBovcAXGLOShyVWQ/FG8GZA==",
"dev": true,
- "requires": {
- "debug": "~3.1.0",
- "engine.io": "~3.2.0",
- "has-binary2": "~1.0.2",
- "socket.io-adapter": "~1.1.0",
- "socket.io-client": "2.1.1",
- "socket.io-parser": "~3.2.0"
- },
"dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
+ "accepts": "~1.3.4",
+ "base64id": "~2.0.0",
+ "debug": "~4.3.2",
+ "engine.io": "~6.4.1",
+ "socket.io-adapter": "~2.5.2",
+ "socket.io-parser": "~4.2.1"
+ },
+ "engines": {
+ "node": ">=10.0.0"
}
},
- "socket.io-adapter": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz",
- "integrity": "sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==",
- "dev": true
- },
- "socket.io-client": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.1.1.tgz",
- "integrity": "sha512-jxnFyhAuFxYfjqIgduQlhzqTcOEQSn+OHKVfAxWaNWa7ecP7xSNk2Dx/3UEsDcY7NcFafxvNvKPmmO7HTwTxGQ==",
- "dev": true,
- "requires": {
- "backo2": "1.0.2",
- "base64-arraybuffer": "0.1.5",
- "component-bind": "1.0.0",
- "component-emitter": "1.2.1",
- "debug": "~3.1.0",
- "engine.io-client": "~3.2.0",
- "has-binary2": "~1.0.2",
- "has-cors": "1.1.0",
- "indexof": "0.0.1",
- "object-component": "0.0.3",
- "parseqs": "0.0.5",
- "parseuri": "0.0.5",
- "socket.io-parser": "~3.2.0",
- "to-array": "0.1.4"
- },
+ "node_modules/socket.io-adapter": {
+ "version": "2.5.2",
+ "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.2.tgz",
+ "integrity": "sha512-87C3LO/NOMc+eMcpcxUBebGjkpMDkNBS9tf7KJqcDsmL936EChtVva71Dw2q4tQcuVC+hAUy4an2NO/sYXmwRA==",
+ "dev": true,
"dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
+ "ws": "~8.11.0"
}
},
- "socket.io-parser": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz",
- "integrity": "sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA==",
+ "node_modules/socket.io-adapter/node_modules/ws": {
+ "version": "8.11.0",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz",
+ "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==",
"dev": true,
- "requires": {
- "component-emitter": "1.2.1",
- "debug": "~3.1.0",
- "isarray": "2.0.1"
+ "engines": {
+ "node": ">=10.0.0"
},
- "dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "isarray": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz",
- "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=",
- "dev": true
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": "^5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
},
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
+ "utf-8-validate": {
+ "optional": true
}
}
},
- "sockjs": {
- "version": "0.3.20",
- "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.20.tgz",
- "integrity": "sha512-SpmVOVpdq0DJc0qArhF3E5xsxvaiqGNb73XfgBpK1y3UD5gs8DSo8aCTsuT5pX8rssdc2NDIzANwP9eCAiSdTA==",
+ "node_modules/socket.io-parser": {
+ "version": "4.2.2",
+ "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.2.tgz",
+ "integrity": "sha512-DJtziuKypFkMMHCm2uIshOYC7QaylbtzQwiMYDuCKy3OPkjLzu4B2vAhTlqipRHHzrI0NJeBAizTK7X+6m1jVw==",
"dev": true,
- "requires": {
- "faye-websocket": "^0.10.0",
- "uuid": "^3.4.0",
- "websocket-driver": "0.6.5"
- },
"dependencies": {
- "uuid": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
- "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==",
- "dev": true
- }
+ "@socket.io/component-emitter": "~3.1.0",
+ "debug": "~4.3.1"
+ },
+ "engines": {
+ "node": ">=10.0.0"
}
},
- "sockjs-client": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.4.0.tgz",
- "integrity": "sha512-5zaLyO8/nri5cua0VtOrFXBPK1jbL4+1cebT/mmKA1E1ZXOvJrII75bPu0l0k843G/+iAbhEqzyKr0w/eCCj7g==",
+ "node_modules/sockjs": {
+ "version": "0.3.24",
+ "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz",
+ "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==",
"dev": true,
- "requires": {
- "debug": "^3.2.5",
- "eventsource": "^1.0.7",
- "faye-websocket": "~0.11.1",
- "inherits": "^2.0.3",
- "json3": "^3.3.2",
- "url-parse": "^1.4.3"
- },
"dependencies": {
- "debug": {
- "version": "3.2.6",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
- "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
- "dev": true,
- "requires": {
- "ms": "^2.1.1"
- }
- },
- "faye-websocket": {
- "version": "0.11.3",
- "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.3.tgz",
- "integrity": "sha512-D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA==",
- "dev": true,
- "requires": {
- "websocket-driver": ">=0.5.1"
- }
- }
+ "faye-websocket": "^0.11.3",
+ "uuid": "^8.3.2",
+ "websocket-driver": "^0.7.4"
}
},
- "source-list-map": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz",
- "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==",
- "dev": true
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- },
- "source-map-resolve": {
- "version": "0.5.3",
- "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
- "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==",
+ "node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true,
- "requires": {
- "atob": "^2.1.2",
- "decode-uri-component": "^0.2.0",
- "resolve-url": "^0.2.1",
- "source-map-url": "^0.4.0",
- "urix": "^0.1.0"
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "source-map-support": {
- "version": "0.5.19",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz",
- "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==",
+ "node_modules/source-map-support": {
+ "version": "0.5.21",
+ "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
+ "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
"dev": true,
- "requires": {
+ "dependencies": {
"buffer-from": "^1.0.0",
"source-map": "^0.6.0"
- },
- "dependencies": {
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
- }
}
},
- "source-map-url": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz",
- "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=",
- "dev": true
- },
- "spdx-correct": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz",
- "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==",
+ "node_modules/spdx-correct": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz",
+ "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==",
"dev": true,
- "requires": {
+ "dependencies": {
"spdx-expression-parse": "^3.0.0",
"spdx-license-ids": "^3.0.0"
}
},
- "spdx-exceptions": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz",
- "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==",
+ "node_modules/spdx-exceptions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
+ "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==",
"dev": true
},
- "spdx-expression-parse": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz",
- "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==",
+ "node_modules/spdx-expression-parse": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
+ "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
"dev": true,
- "requires": {
+ "dependencies": {
"spdx-exceptions": "^2.1.0",
"spdx-license-ids": "^3.0.0"
}
},
- "spdx-license-ids": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.3.tgz",
- "integrity": "sha512-uBIcIl3Ih6Phe3XHK1NqboJLdGfwr1UN3k6wSD1dZpmPsIkb8AGNbZYJ1fOBk834+Gxy8rpfDxrS6XLEMZMY2g==",
+ "node_modules/spdx-license-ids": {
+ "version": "3.0.13",
+ "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz",
+ "integrity": "sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==",
"dev": true
},
- "spdy": {
+ "node_modules/spdy": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz",
"integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==",
"dev": true,
- "requires": {
+ "dependencies": {
"debug": "^4.1.0",
"handle-thing": "^2.0.0",
"http-deceiver": "^1.2.7",
"select-hose": "^2.0.0",
"spdy-transport": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.0.0"
}
},
- "spdy-transport": {
+ "node_modules/spdy-transport": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz",
"integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==",
"dev": true,
- "requires": {
+ "dependencies": {
"debug": "^4.1.0",
"detect-node": "^2.0.4",
"hpack.js": "^2.1.6",
"obuf": "^1.1.2",
"readable-stream": "^3.0.6",
"wbuf": "^1.7.3"
- },
- "dependencies": {
- "readable-stream": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
- "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
- "dev": true,
- "requires": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- }
- }
}
},
- "split-string": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
- "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
+ "node_modules/spdy-transport/node_modules/readable-stream": {
+ "version": "3.6.2",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+ "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
"dev": true,
- "requires": {
- "extend-shallow": "^3.0.0"
+ "dependencies": {
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
}
},
- "ssri": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz",
- "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==",
+ "node_modules/spdy-transport/node_modules/string_decoder": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
"dev": true,
- "requires": {
- "figgy-pudding": "^3.5.1"
- }
- },
- "static-extend": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
- "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=",
- "dev": true,
- "requires": {
- "define-property": "^0.2.5",
- "object-copy": "^0.1.0"
- },
- "dependencies": {
- "define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^0.1.0"
- }
- }
+ "dependencies": {
+ "safe-buffer": "~5.2.0"
}
},
- "statuses": {
+ "node_modules/statuses": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
- "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=",
- "dev": true
- },
- "stream-browserify": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz",
- "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==",
- "dev": true,
- "requires": {
- "inherits": "~2.0.1",
- "readable-stream": "^2.0.2"
- }
- },
- "stream-each": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz",
- "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==",
- "dev": true,
- "requires": {
- "end-of-stream": "^1.1.0",
- "stream-shift": "^1.0.0"
- }
- },
- "stream-http": {
- "version": "2.8.3",
- "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz",
- "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==",
+ "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==",
"dev": true,
- "requires": {
- "builtin-status-codes": "^3.0.0",
- "inherits": "^2.0.1",
- "readable-stream": "^2.3.6",
- "to-arraybuffer": "^1.0.0",
- "xtend": "^4.0.0"
+ "engines": {
+ "node": ">= 0.6"
}
},
- "stream-shift": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz",
- "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==",
- "dev": true
- },
- "streamroller": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-1.0.6.tgz",
- "integrity": "sha512-3QC47Mhv3/aZNFpDDVO44qQb9gwB9QggMEE0sQmkTAwBVYdBRWISdsywlkfm5II1Q5y/pmrHflti/IgmIzdDBg==",
+ "node_modules/streamroller": {
+ "version": "3.1.5",
+ "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.5.tgz",
+ "integrity": "sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw==",
"dev": true,
- "requires": {
- "async": "^2.6.2",
- "date-format": "^2.0.0",
- "debug": "^3.2.6",
- "fs-extra": "^7.0.1",
- "lodash": "^4.17.14"
- },
"dependencies": {
- "debug": {
- "version": "3.2.6",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
- "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
- "dev": true,
- "requires": {
- "ms": "^2.1.1"
- }
- }
- }
- },
- "string-width": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
- "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
- "dev": true,
- "requires": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.0"
+ "date-format": "^4.0.14",
+ "debug": "^4.3.4",
+ "fs-extra": "^8.1.0"
},
- "dependencies": {
- "emoji-regex": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
- "dev": true
- },
- "is-fullwidth-code-point": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
- "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
- "dev": true
- }
+ "engines": {
+ "node": ">=8.0"
}
},
- "string.prototype.padend": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.0.0.tgz",
- "integrity": "sha1-86rvfBcZ8XDF6rHDK/eA2W4h8vA=",
- "dev": true,
- "requires": {
- "define-properties": "^1.1.2",
- "es-abstract": "^1.4.3",
- "function-bind": "^1.0.2"
- }
+ "node_modules/string_decoder": {
+ "version": "0.10.31",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
+ "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==",
+ "dev": true
},
- "string.prototype.trimend": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz",
- "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==",
+ "node_modules/string-width": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
"dev": true,
- "requires": {
- "define-properties": "^1.1.3",
- "es-abstract": "^1.17.5"
- },
- "dependencies": {
- "es-abstract": {
- "version": "1.17.5",
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz",
- "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==",
- "dev": true,
- "requires": {
- "es-to-primitive": "^1.2.1",
- "function-bind": "^1.1.1",
- "has": "^1.0.3",
- "has-symbols": "^1.0.1",
- "is-callable": "^1.1.5",
- "is-regex": "^1.0.5",
- "object-inspect": "^1.7.0",
- "object-keys": "^1.1.1",
- "object.assign": "^4.1.0",
- "string.prototype.trimleft": "^2.1.1",
- "string.prototype.trimright": "^2.1.1"
- }
- },
- "es-to-primitive": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
- "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
- "dev": true,
- "requires": {
- "is-callable": "^1.1.4",
- "is-date-object": "^1.0.1",
- "is-symbol": "^1.0.2"
- }
- },
- "has-symbols": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz",
- "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==",
- "dev": true
- },
- "is-callable": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz",
- "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==",
- "dev": true
- },
- "is-regex": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz",
- "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==",
- "dev": true,
- "requires": {
- "has": "^1.0.3"
- }
- },
- "object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
- "dev": true
- }
+ "dependencies": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "string.prototype.trimleft": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz",
- "integrity": "sha512-gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw==",
+ "node_modules/string.prototype.padend": {
+ "version": "3.1.4",
+ "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.4.tgz",
+ "integrity": "sha512-67otBXoksdjsnXXRUq+KMVTdlVRZ2af422Y0aTyTjVaoQkGr3mxl2Bc5emi7dOQ3OGVVQQskmLEWwFXwommpNw==",
"dev": true,
- "requires": {
- "define-properties": "^1.1.3",
- "es-abstract": "^1.17.5",
- "string.prototype.trimstart": "^1.0.0"
- },
- "dependencies": {
- "es-abstract": {
- "version": "1.17.5",
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz",
- "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==",
- "dev": true,
- "requires": {
- "es-to-primitive": "^1.2.1",
- "function-bind": "^1.1.1",
- "has": "^1.0.3",
- "has-symbols": "^1.0.1",
- "is-callable": "^1.1.5",
- "is-regex": "^1.0.5",
- "object-inspect": "^1.7.0",
- "object-keys": "^1.1.1",
- "object.assign": "^4.1.0",
- "string.prototype.trimleft": "^2.1.1",
- "string.prototype.trimright": "^2.1.1"
- }
- },
- "es-to-primitive": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
- "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
- "dev": true,
- "requires": {
- "is-callable": "^1.1.4",
- "is-date-object": "^1.0.1",
- "is-symbol": "^1.0.2"
- }
- },
- "has-symbols": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz",
- "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==",
- "dev": true
- },
- "is-callable": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz",
- "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==",
- "dev": true
- },
- "is-regex": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz",
- "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==",
- "dev": true,
- "requires": {
- "has": "^1.0.3"
- }
- },
- "object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
- "dev": true
- }
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.4",
+ "es-abstract": "^1.20.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "string.prototype.trimright": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz",
- "integrity": "sha512-ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg==",
+ "node_modules/string.prototype.trim": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz",
+ "integrity": "sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==",
"dev": true,
- "requires": {
- "define-properties": "^1.1.3",
- "es-abstract": "^1.17.5",
- "string.prototype.trimend": "^1.0.0"
- },
- "dependencies": {
- "es-abstract": {
- "version": "1.17.5",
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz",
- "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==",
- "dev": true,
- "requires": {
- "es-to-primitive": "^1.2.1",
- "function-bind": "^1.1.1",
- "has": "^1.0.3",
- "has-symbols": "^1.0.1",
- "is-callable": "^1.1.5",
- "is-regex": "^1.0.5",
- "object-inspect": "^1.7.0",
- "object-keys": "^1.1.1",
- "object.assign": "^4.1.0",
- "string.prototype.trimleft": "^2.1.1",
- "string.prototype.trimright": "^2.1.1"
- }
- },
- "es-to-primitive": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
- "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
- "dev": true,
- "requires": {
- "is-callable": "^1.1.4",
- "is-date-object": "^1.0.1",
- "is-symbol": "^1.0.2"
- }
- },
- "has-symbols": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz",
- "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==",
- "dev": true
- },
- "is-callable": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz",
- "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==",
- "dev": true
- },
- "is-regex": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz",
- "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==",
- "dev": true,
- "requires": {
- "has": "^1.0.3"
- }
- },
- "object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
- "dev": true
- }
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.4",
+ "es-abstract": "^1.20.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "string.prototype.trimstart": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz",
- "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==",
+ "node_modules/string.prototype.trimend": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz",
+ "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==",
"dev": true,
- "requires": {
- "define-properties": "^1.1.3",
- "es-abstract": "^1.17.5"
- },
- "dependencies": {
- "es-abstract": {
- "version": "1.17.5",
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz",
- "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==",
- "dev": true,
- "requires": {
- "es-to-primitive": "^1.2.1",
- "function-bind": "^1.1.1",
- "has": "^1.0.3",
- "has-symbols": "^1.0.1",
- "is-callable": "^1.1.5",
- "is-regex": "^1.0.5",
- "object-inspect": "^1.7.0",
- "object-keys": "^1.1.1",
- "object.assign": "^4.1.0",
- "string.prototype.trimleft": "^2.1.1",
- "string.prototype.trimright": "^2.1.1"
- }
- },
- "es-to-primitive": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
- "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
- "dev": true,
- "requires": {
- "is-callable": "^1.1.4",
- "is-date-object": "^1.0.1",
- "is-symbol": "^1.0.2"
- }
- },
- "has-symbols": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz",
- "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==",
- "dev": true
- },
- "is-callable": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz",
- "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==",
- "dev": true
- },
- "is-regex": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz",
- "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==",
- "dev": true,
- "requires": {
- "has": "^1.0.3"
- }
- },
- "object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
- "dev": true
- }
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.4",
+ "es-abstract": "^1.20.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "node_modules/string.prototype.trimstart": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz",
+ "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==",
"dev": true,
- "requires": {
- "safe-buffer": "~5.1.0"
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.4",
+ "es-abstract": "^1.20.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "strip-ansi": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
- "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
+ "node_modules/strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
"dev": true,
- "requires": {
- "ansi-regex": "^5.0.0"
+ "dependencies": {
+ "ansi-regex": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "strip-bom": {
+ "node_modules/strip-bom": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
- "dev": true
+ "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
},
- "strip-eof": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
- "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=",
- "dev": true
+ "node_modules/strip-final-newline": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
+ "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
},
- "strip-json-comments": {
+ "node_modules/strip-json-comments": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz",
- "integrity": "sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=",
- "dev": true
+ "integrity": "sha512-AOPG8EBc5wAikaG1/7uFCNFJwnKOuQwFTpYBdTW6OvWHeZBQBrAA/amefHGrEiOnCPcLFZK6FUPtWVKpQVIRgg==",
+ "dev": true,
+ "bin": {
+ "strip-json-comments": "cli.js"
+ },
+ "engines": {
+ "node": ">=0.8.0"
+ }
},
- "supports-color": {
+ "node_modules/supports-color": {
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
"dev": true,
- "requires": {
+ "dependencies": {
"has-flag": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "tapable": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz",
- "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==",
- "dev": true
+ "node_modules/supports-preserve-symlinks-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "tar": {
- "version": "6.0.5",
- "resolved": "https://registry.npmjs.org/tar/-/tar-6.0.5.tgz",
- "integrity": "sha512-0b4HOimQHj9nXNEAA7zWwMM91Zhhba3pspja6sQbgTpynOJf+bkjBnfybNYzbpLbnwXnbyB4LOREvlyXLkCHSg==",
- "dev": true,
- "requires": {
- "chownr": "^2.0.0",
- "fs-minipass": "^2.0.0",
- "minipass": "^3.0.0",
- "minizlib": "^2.1.1",
- "mkdirp": "^1.0.3",
- "yallist": "^4.0.0"
- },
- "dependencies": {
- "chownr": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
- "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
- "dev": true
- },
- "mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true
- }
+ "node_modules/tapable": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
+ "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
}
},
- "terser": {
- "version": "4.8.0",
- "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz",
- "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==",
+ "node_modules/tar-fs": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz",
+ "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==",
"dev": true,
- "requires": {
- "commander": "^2.20.0",
- "source-map": "~0.6.1",
- "source-map-support": "~0.5.12"
+ "dependencies": {
+ "chownr": "^1.1.1",
+ "mkdirp-classic": "^0.5.2",
+ "pump": "^3.0.0",
+ "tar-stream": "^2.1.4"
+ }
+ },
+ "node_modules/tar-stream": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz",
+ "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==",
+ "dev": true,
+ "dependencies": {
+ "bl": "^4.0.3",
+ "end-of-stream": "^1.4.1",
+ "fs-constants": "^1.0.0",
+ "inherits": "^2.0.3",
+ "readable-stream": "^3.1.1"
},
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/tar-stream/node_modules/readable-stream": {
+ "version": "3.6.2",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+ "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
+ "dev": true,
"dependencies": {
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
- }
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
}
},
- "terser-webpack-plugin": {
- "version": "4.2.2",
- "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-4.2.2.tgz",
- "integrity": "sha512-3qAQpykRTD5DReLu5/cwpsg7EZFzP3Q0Hp2XUWJUw2mpq2jfgOKTZr8IZKKnNieRVVo1UauROTdhbQJZveGKtQ==",
- "dev": true,
- "requires": {
- "cacache": "^15.0.5",
- "find-cache-dir": "^3.3.1",
- "jest-worker": "^26.3.0",
- "p-limit": "^3.0.2",
- "schema-utils": "^2.7.1",
- "serialize-javascript": "^5.0.1",
- "source-map": "^0.6.1",
- "terser": "^5.3.2",
- "webpack-sources": "^1.4.3"
+ "node_modules/tar-stream/node_modules/string_decoder": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
+ "dev": true,
+ "dependencies": {
+ "safe-buffer": "~5.2.0"
+ }
+ },
+ "node_modules/terser": {
+ "version": "5.17.1",
+ "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.1.tgz",
+ "integrity": "sha512-hVl35zClmpisy6oaoKALOpS0rDYLxRFLHhRuDlEGTKey9qHjS1w9GMORjuwIMt70Wan4lwsLYyWDVnWgF+KUEw==",
+ "dev": true,
+ "dependencies": {
+ "@jridgewell/source-map": "^0.3.2",
+ "acorn": "^8.5.0",
+ "commander": "^2.20.0",
+ "source-map-support": "~0.5.20"
},
+ "bin": {
+ "terser": "bin/terser"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/terser-webpack-plugin": {
+ "version": "5.3.7",
+ "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.7.tgz",
+ "integrity": "sha512-AfKwIktyP7Cu50xNjXF/6Qb5lBNzYaWpU6YfoX3uZicTx0zTy0stDDCsvjDapKsSDvOeWo5MEq4TmdBy2cNoHw==",
+ "dev": true,
"dependencies": {
- "ajv": {
- "version": "6.12.5",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.5.tgz",
- "integrity": "sha512-lRF8RORchjpKG50/WFf8xmg7sgCLFiYNNnqdKflk63whMQcWR5ngGjiSXkL9bjxy6B2npOK2HSMN49jEBMSkag==",
- "dev": true,
- "requires": {
- "fast-deep-equal": "^3.1.1",
- "fast-json-stable-stringify": "^2.0.0",
- "json-schema-traverse": "^0.4.1",
- "uri-js": "^4.2.2"
- }
- },
- "ajv-keywords": {
- "version": "3.5.2",
- "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
- "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
- "dev": true
- },
- "cacache": {
- "version": "15.0.5",
- "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.0.5.tgz",
- "integrity": "sha512-lloiL22n7sOjEEXdL8NAjTgv9a1u43xICE9/203qonkZUCj5X1UEWIdf2/Y0d6QcCtMzbKQyhrcDbdvlZTs/+A==",
- "dev": true,
- "requires": {
- "@npmcli/move-file": "^1.0.1",
- "chownr": "^2.0.0",
- "fs-minipass": "^2.0.0",
- "glob": "^7.1.4",
- "infer-owner": "^1.0.4",
- "lru-cache": "^6.0.0",
- "minipass": "^3.1.1",
- "minipass-collect": "^1.0.2",
- "minipass-flush": "^1.0.5",
- "minipass-pipeline": "^1.2.2",
- "mkdirp": "^1.0.3",
- "p-map": "^4.0.0",
- "promise-inflight": "^1.0.1",
- "rimraf": "^3.0.2",
- "ssri": "^8.0.0",
- "tar": "^6.0.2",
- "unique-filename": "^1.1.1"
- }
- },
- "chownr": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
- "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
- "dev": true
- },
- "fast-deep-equal": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
- "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
- "dev": true
- },
- "find-cache-dir": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz",
- "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==",
- "dev": true,
- "requires": {
- "commondir": "^1.0.1",
- "make-dir": "^3.0.2",
- "pkg-dir": "^4.1.0"
- }
- },
- "find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "requires": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- }
- },
- "glob": {
- "version": "7.1.6",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
- "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
- "dev": true,
- "requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- }
- },
- "locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "requires": {
- "p-locate": "^4.1.0"
- }
- },
- "make-dir": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
- "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
- "dev": true,
- "requires": {
- "semver": "^6.0.0"
- }
- },
- "mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true
- },
- "p-limit": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.0.2.tgz",
- "integrity": "sha512-iwqZSOoWIW+Ew4kAGUlN16J4M7OB3ysMLSZtnhmqx7njIHFPlxWBX8xo3lVTyFVq6mI/lL9qt2IsN1sHwaxJkg==",
- "dev": true,
- "requires": {
- "p-try": "^2.0.0"
- }
- },
- "p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "requires": {
- "p-limit": "^2.2.0"
- },
- "dependencies": {
- "p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "requires": {
- "p-try": "^2.0.0"
- }
- }
- }
- },
- "p-map": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz",
- "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==",
- "dev": true,
- "requires": {
- "aggregate-error": "^3.0.0"
- }
- },
- "path-exists": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
- "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
- "dev": true
- },
- "pkg-dir": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
- "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
- "dev": true,
- "requires": {
- "find-up": "^4.0.0"
- }
- },
- "rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dev": true,
- "requires": {
- "glob": "^7.1.3"
- }
- },
- "schema-utils": {
- "version": "2.7.1",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
- "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==",
- "dev": true,
- "requires": {
- "@types/json-schema": "^7.0.5",
- "ajv": "^6.12.4",
- "ajv-keywords": "^3.5.2"
- }
- },
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true
- },
- "serialize-javascript": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz",
- "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==",
- "dev": true,
- "requires": {
- "randombytes": "^2.1.0"
- }
- },
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
- },
- "source-map-support": {
- "version": "0.5.19",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz",
- "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==",
- "dev": true,
- "requires": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
- }
+ "@jridgewell/trace-mapping": "^0.3.17",
+ "jest-worker": "^27.4.5",
+ "schema-utils": "^3.1.1",
+ "serialize-javascript": "^6.0.1",
+ "terser": "^5.16.5"
+ },
+ "engines": {
+ "node": ">= 10.13.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/webpack"
+ },
+ "peerDependencies": {
+ "webpack": "^5.1.0"
+ },
+ "peerDependenciesMeta": {
+ "@swc/core": {
+ "optional": true
},
- "ssri": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.0.tgz",
- "integrity": "sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA==",
- "dev": true,
- "requires": {
- "minipass": "^3.1.1"
- }
+ "esbuild": {
+ "optional": true
},
- "terser": {
- "version": "5.3.3",
- "resolved": "https://registry.npmjs.org/terser/-/terser-5.3.3.tgz",
- "integrity": "sha512-vRQDIlD+2Pg8YMwVK9kMM3yGylG95EIwzBai1Bw7Ot4OBfn3VP1TZn3EWx4ep2jERN/AmnVaTiGuelZSN7ds/A==",
- "dev": true,
- "requires": {
- "commander": "^2.20.0",
- "source-map": "~0.7.2",
- "source-map-support": "~0.5.19"
- },
- "dependencies": {
- "source-map": {
- "version": "0.7.3",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
- "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
- "dev": true
- }
- }
+ "uglify-js": {
+ "optional": true
}
}
},
- "through2": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
- "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
+ "node_modules/terser-webpack-plugin/node_modules/ajv": {
+ "version": "6.12.6",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
+ "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
"dev": true,
- "requires": {
- "readable-stream": "~2.3.6",
- "xtend": "~4.0.1"
+ "dependencies": {
+ "fast-deep-equal": "^3.1.1",
+ "fast-json-stable-stringify": "^2.0.0",
+ "json-schema-traverse": "^0.4.1",
+ "uri-js": "^4.2.2"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/epoberezkin"
}
},
- "thunky": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz",
- "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==",
- "dev": true
- },
- "timers-browserify": {
- "version": "2.0.11",
- "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz",
- "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==",
+ "node_modules/terser-webpack-plugin/node_modules/ajv-keywords": {
+ "version": "3.5.2",
+ "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
+ "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
"dev": true,
- "requires": {
- "setimmediate": "^1.0.4"
+ "peerDependencies": {
+ "ajv": "^6.9.1"
}
},
- "tmp": {
- "version": "0.0.33",
- "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
- "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
+ "node_modules/terser-webpack-plugin/node_modules/json-schema-traverse": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
+ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
+ "dev": true
+ },
+ "node_modules/terser-webpack-plugin/node_modules/schema-utils": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.2.tgz",
+ "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==",
"dev": true,
- "requires": {
- "os-tmpdir": "~1.0.2"
+ "dependencies": {
+ "@types/json-schema": "^7.0.8",
+ "ajv": "^6.12.5",
+ "ajv-keywords": "^3.5.2"
+ },
+ "engines": {
+ "node": ">= 10.13.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/webpack"
}
},
- "to-array": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz",
- "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=",
- "dev": true
- },
- "to-arraybuffer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz",
- "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=",
+ "node_modules/through": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
+ "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==",
"dev": true
},
- "to-fast-properties": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
- "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=",
+ "node_modules/thunky": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz",
+ "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==",
"dev": true
},
- "to-object-path": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
- "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=",
+ "node_modules/tmp": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz",
+ "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==",
"dev": true,
- "requires": {
- "kind-of": "^3.0.2"
- },
"dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
+ "rimraf": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8.17.0"
}
},
- "to-regex": {
+ "node_modules/tmp/node_modules/rimraf": {
"version": "3.0.2",
- "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
- "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
"dev": true,
- "requires": {
- "define-property": "^2.0.2",
- "extend-shallow": "^3.0.2",
- "regex-not": "^1.0.2",
- "safe-regex": "^1.1.0"
+ "dependencies": {
+ "glob": "^7.1.3"
+ },
+ "bin": {
+ "rimraf": "bin.js"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
}
},
- "to-regex-range": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
- "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
+ "node_modules/to-fast-properties": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
+ "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
"dev": true,
- "requires": {
- "is-number": "^3.0.0",
- "repeat-string": "^1.6.1"
+ "engines": {
+ "node": ">=4"
}
},
- "toidentifier": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz",
- "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==",
- "dev": true
+ "node_modules/to-regex-range": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+ "dev": true,
+ "dependencies": {
+ "is-number": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=8.0"
+ }
},
- "trim-right": {
+ "node_modules/toidentifier": {
"version": "1.0.1",
- "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz",
- "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=",
- "dev": true
- },
- "tslib": {
- "version": "1.13.0",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz",
- "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==",
- "dev": true
+ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
+ "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.6"
+ }
},
- "tty-browserify": {
- "version": "0.0.0",
- "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz",
- "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=",
+ "node_modules/tr46": {
+ "version": "0.0.3",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
+ "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==",
"dev": true
},
- "type-is": {
+ "node_modules/type-is": {
"version": "1.6.18",
"resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
"integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
"dev": true,
- "requires": {
+ "dependencies": {
"media-typer": "0.3.0",
"mime-types": "~2.1.24"
},
- "dependencies": {
- "mime-db": {
- "version": "1.44.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz",
- "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==",
- "dev": true
- },
- "mime-types": {
- "version": "2.1.27",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz",
- "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==",
- "dev": true,
- "requires": {
- "mime-db": "1.44.0"
- }
- }
+ "engines": {
+ "node": ">= 0.6"
}
},
- "typedarray": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
- "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
- "dev": true
- },
- "ua-parser-js": {
- "version": "0.7.21",
- "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.21.tgz",
- "integrity": "sha512-+O8/qh/Qj8CgC6eYBVBykMrNtp5Gebn4dlGD/kKXVkJNDwyrAwSIqwz8CDf+tsAIWVycKcku6gIXJ0qwx/ZXaQ==",
- "dev": true
- },
- "ultron": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz",
- "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==",
- "dev": true
- },
- "unicode-canonical-property-names-ecmascript": {
+ "node_modules/typed-array-length": {
"version": "1.0.4",
- "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz",
- "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==",
- "dev": true
+ "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz",
+ "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "for-each": "^0.3.3",
+ "is-typed-array": "^1.1.9"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "unicode-match-property-ecmascript": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz",
- "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==",
+ "node_modules/ua-parser-js": {
+ "version": "0.7.35",
+ "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.35.tgz",
+ "integrity": "sha512-veRf7dawaj9xaWEu9HoTVn5Pggtc/qj+kqTOFvNiN1l0YdxwC1kvel57UCjThjGa3BHBihE8/UJAHI+uQHmd/g==",
"dev": true,
- "requires": {
- "unicode-canonical-property-names-ecmascript": "^1.0.4",
- "unicode-property-aliases-ecmascript": "^1.0.4"
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/ua-parser-js"
+ },
+ {
+ "type": "paypal",
+ "url": "https://paypal.me/faisalman"
+ }
+ ],
+ "engines": {
+ "node": "*"
}
},
- "unicode-match-property-value-ecmascript": {
+ "node_modules/unbox-primitive": {
"version": "1.0.2",
- "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.0.2.tgz",
- "integrity": "sha512-Rx7yODZC1L/T8XKo/2kNzVAQaRE88AaMvI1EF/Xnj3GW2wzN6fop9DDWuFAKUVFH7vozkz26DzP0qyWLKLIVPQ==",
- "dev": true
+ "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
+ "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "has-bigints": "^1.0.2",
+ "has-symbols": "^1.0.3",
+ "which-boxed-primitive": "^1.0.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "unicode-property-aliases-ecmascript": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.4.tgz",
- "integrity": "sha512-2WSLa6OdYd2ng8oqiGIWnJqyFArvhn+5vgx5GTxMbUYjCYKUcuKS62YLFF0R/BDGlB1yzXjQOLtPAfHsgirEpg==",
- "dev": true
+ "node_modules/unbzip2-stream": {
+ "version": "1.4.3",
+ "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz",
+ "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==",
+ "dev": true,
+ "dependencies": {
+ "buffer": "^5.2.1",
+ "through": "^2.3.8"
+ }
},
- "union-value": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz",
- "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==",
+ "node_modules/unicode-canonical-property-names-ecmascript": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz",
+ "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==",
"dev": true,
- "requires": {
- "arr-union": "^3.1.0",
- "get-value": "^2.0.6",
- "is-extendable": "^0.1.1",
- "set-value": "^2.0.1"
+ "engines": {
+ "node": ">=4"
}
},
- "unique-filename": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz",
- "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==",
+ "node_modules/unicode-match-property-ecmascript": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz",
+ "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==",
"dev": true,
- "requires": {
- "unique-slug": "^2.0.0"
+ "dependencies": {
+ "unicode-canonical-property-names-ecmascript": "^2.0.0",
+ "unicode-property-aliases-ecmascript": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "unique-slug": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.1.tgz",
- "integrity": "sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg==",
+ "node_modules/unicode-match-property-value-ecmascript": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz",
+ "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==",
"dev": true,
- "requires": {
- "imurmurhash": "^0.1.4"
+ "engines": {
+ "node": ">=4"
}
},
- "universalify": {
+ "node_modules/unicode-property-aliases-ecmascript": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz",
+ "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/universalify": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
"integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">= 4.0.0"
+ }
},
- "unpipe": {
+ "node_modules/unpipe": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
- "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=",
- "dev": true
- },
- "unset-value": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
- "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=",
- "dev": true,
- "requires": {
- "has-value": "^0.3.1",
- "isobject": "^3.0.0"
- },
- "dependencies": {
- "has-value": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
- "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=",
- "dev": true,
- "requires": {
- "get-value": "^2.0.3",
- "has-values": "^0.1.4",
- "isobject": "^2.0.0"
- },
- "dependencies": {
- "isobject": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
- "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
- "dev": true,
- "requires": {
- "isarray": "1.0.0"
- }
- }
- }
- },
- "has-values": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
- "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=",
- "dev": true
- }
- }
- },
- "upath": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz",
- "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==",
- "dev": true
- },
- "uri-js": {
- "version": "4.2.2",
- "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
- "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
+ "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==",
"dev": true,
- "requires": {
- "punycode": "^2.1.0"
+ "engines": {
+ "node": ">= 0.8"
}
},
- "urix": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
- "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=",
- "dev": true
- },
- "url": {
- "version": "0.11.0",
- "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz",
- "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=",
+ "node_modules/update-browserslist-db": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz",
+ "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==",
"dev": true,
- "requires": {
- "punycode": "1.3.2",
- "querystring": "0.2.0"
- },
- "dependencies": {
- "punycode": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz",
- "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=",
- "dev": true
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
}
+ ],
+ "dependencies": {
+ "escalade": "^3.1.1",
+ "picocolors": "^1.0.0"
+ },
+ "bin": {
+ "update-browserslist-db": "cli.js"
+ },
+ "peerDependencies": {
+ "browserslist": ">= 4.21.0"
}
},
- "url-parse": {
- "version": "1.4.7",
- "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.7.tgz",
- "integrity": "sha512-d3uaVyzDB9tQoSXFvuSUNFibTd9zxd2bkVrDRvF5TmvWWQwqE4lgYJ5m+x1DbecWkw+LK4RNl2CU1hHuOKPVlg==",
- "dev": true,
- "requires": {
- "querystringify": "^2.1.1",
- "requires-port": "^1.0.0"
- }
- },
- "use": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
- "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
- "dev": true
- },
- "util": {
- "version": "0.11.1",
- "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz",
- "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==",
+ "node_modules/uri-js": {
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
+ "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
"dev": true,
- "requires": {
- "inherits": "2.0.3"
+ "dependencies": {
+ "punycode": "^2.1.0"
}
},
- "util-deprecate": {
+ "node_modules/util-deprecate": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
- "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
+ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
"dev": true
},
- "utils-merge": {
+ "node_modules/utils-merge": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
- "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=",
- "dev": true
- },
- "uuid": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz",
- "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==",
- "dev": true
+ "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4.0"
+ }
},
- "v8-compile-cache": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz",
- "integrity": "sha512-CNmdbwQMBjwr9Gsmohvm0pbL954tJrNzf6gWL3K+QMQf00PF7ERGrEiLgjuU3mKreLC2MeGhUsNV9ybTbLgd3w==",
- "dev": true
+ "node_modules/uuid": {
+ "version": "8.3.2",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
+ "dev": true,
+ "bin": {
+ "uuid": "dist/bin/uuid"
+ }
},
- "validate-npm-package-license": {
+ "node_modules/validate-npm-package-license": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
"integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
"dev": true,
- "requires": {
+ "dependencies": {
"spdx-correct": "^3.0.0",
"spdx-expression-parse": "^3.0.0"
}
},
- "vary": {
+ "node_modules/vary": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
- "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=",
- "dev": true
- },
- "vm-browserify": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz",
- "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==",
- "dev": true
+ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8"
+ }
},
- "void-elements": {
+ "node_modules/void-elements": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz",
- "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=",
- "dev": true
- },
- "watchpack": {
- "version": "1.7.4",
- "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.4.tgz",
- "integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==",
+ "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==",
"dev": true,
- "requires": {
- "chokidar": "^3.4.1",
- "graceful-fs": "^4.1.2",
- "neo-async": "^2.5.0",
- "watchpack-chokidar2": "^2.0.0"
- },
- "dependencies": {
- "anymatch": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz",
- "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==",
- "dev": true,
- "optional": true,
- "requires": {
- "normalize-path": "^3.0.0",
- "picomatch": "^2.0.4"
- }
- },
- "binary-extensions": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz",
- "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==",
- "dev": true,
- "optional": true
- },
- "braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
- "dev": true,
- "optional": true,
- "requires": {
- "fill-range": "^7.0.1"
- }
- },
- "chokidar": {
- "version": "3.4.2",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.2.tgz",
- "integrity": "sha512-IZHaDeBeI+sZJRX7lGcXsdzgvZqKv6sECqsbErJA4mHWfpRrD8B97kSFN4cQz6nGBGiuFia1MKR4d6c1o8Cv7A==",
- "dev": true,
- "optional": true,
- "requires": {
- "anymatch": "~3.1.1",
- "braces": "~3.0.2",
- "fsevents": "~2.1.2",
- "glob-parent": "~5.1.0",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.4.0"
- }
- },
- "fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "to-regex-range": "^5.0.1"
- }
- },
- "fsevents": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz",
- "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==",
- "dev": true,
- "optional": true
- },
- "glob-parent": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz",
- "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "is-glob": "^4.0.1"
- }
- },
- "is-binary-path": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
- "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
- "dev": true,
- "optional": true,
- "requires": {
- "binary-extensions": "^2.0.0"
- }
- },
- "is-number": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
- "dev": true,
- "optional": true
- },
- "readdirp": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz",
- "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "picomatch": "^2.2.1"
- }
- },
- "to-regex-range": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
- "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "is-number": "^7.0.0"
- }
- }
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "watchpack-chokidar2": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz",
- "integrity": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==",
+ "node_modules/watchpack": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
+ "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==",
"dev": true,
- "optional": true,
- "requires": {
- "chokidar": "^2.1.8"
+ "dependencies": {
+ "glob-to-regexp": "^0.4.1",
+ "graceful-fs": "^4.1.2"
+ },
+ "engines": {
+ "node": ">=10.13.0"
}
},
- "wbuf": {
+ "node_modules/wbuf": {
"version": "1.7.3",
"resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz",
"integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==",
"dev": true,
- "requires": {
+ "dependencies": {
"minimalistic-assert": "^1.0.0"
}
},
- "webpack": {
- "version": "4.44.2",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.2.tgz",
- "integrity": "sha512-6KJVGlCxYdISyurpQ0IPTklv+DULv05rs2hseIXer6D7KrUicRDLFb4IUM1S6LUAKypPM/nSiVSuv8jHu1m3/Q==",
+ "node_modules/webidl-conversions": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
+ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==",
+ "dev": true
+ },
+ "node_modules/webpack": {
+ "version": "5.79.0",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.79.0.tgz",
+ "integrity": "sha512-3mN4rR2Xq+INd6NnYuL9RC9GAmc1ROPKJoHhrZ4pAjdMFEkJJWrsPw8o2JjCIyQyTu7rTXYn4VG6OpyB3CobZg==",
"dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/helper-module-context": "1.9.0",
- "@webassemblyjs/wasm-edit": "1.9.0",
- "@webassemblyjs/wasm-parser": "1.9.0",
- "acorn": "^6.4.1",
- "ajv": "^6.10.2",
- "ajv-keywords": "^3.4.1",
+ "dependencies": {
+ "@types/eslint-scope": "^3.7.3",
+ "@types/estree": "^1.0.0",
+ "@webassemblyjs/ast": "1.11.1",
+ "@webassemblyjs/wasm-edit": "1.11.1",
+ "@webassemblyjs/wasm-parser": "1.11.1",
+ "acorn": "^8.7.1",
+ "acorn-import-assertions": "^1.7.6",
+ "browserslist": "^4.14.5",
"chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^4.3.0",
- "eslint-scope": "^4.0.3",
- "json-parse-better-errors": "^1.0.2",
- "loader-runner": "^2.4.0",
- "loader-utils": "^1.2.3",
- "memory-fs": "^0.4.1",
- "micromatch": "^3.1.10",
- "mkdirp": "^0.5.3",
- "neo-async": "^2.6.1",
- "node-libs-browser": "^2.2.1",
- "schema-utils": "^1.0.0",
- "tapable": "^1.1.3",
- "terser-webpack-plugin": "^1.4.3",
- "watchpack": "^1.7.4",
- "webpack-sources": "^1.4.1"
+ "enhanced-resolve": "^5.10.0",
+ "es-module-lexer": "^1.2.1",
+ "eslint-scope": "5.1.1",
+ "events": "^3.2.0",
+ "glob-to-regexp": "^0.4.1",
+ "graceful-fs": "^4.2.9",
+ "json-parse-even-better-errors": "^2.3.1",
+ "loader-runner": "^4.2.0",
+ "mime-types": "^2.1.27",
+ "neo-async": "^2.6.2",
+ "schema-utils": "^3.1.0",
+ "tapable": "^2.1.1",
+ "terser-webpack-plugin": "^5.3.7",
+ "watchpack": "^2.4.0",
+ "webpack-sources": "^3.2.3"
},
- "dependencies": {
- "ajv": {
- "version": "6.12.5",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.5.tgz",
- "integrity": "sha512-lRF8RORchjpKG50/WFf8xmg7sgCLFiYNNnqdKflk63whMQcWR5ngGjiSXkL9bjxy6B2npOK2HSMN49jEBMSkag==",
- "dev": true,
- "requires": {
- "fast-deep-equal": "^3.1.1",
- "fast-json-stable-stringify": "^2.0.0",
- "json-schema-traverse": "^0.4.1",
- "uri-js": "^4.2.2"
- }
- },
- "ajv-keywords": {
- "version": "3.5.2",
- "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
- "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
- "dev": true
- },
- "fast-deep-equal": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
- "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
- "dev": true
- },
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
- },
- "terser-webpack-plugin": {
- "version": "1.4.5",
- "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz",
- "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==",
- "dev": true,
- "requires": {
- "cacache": "^12.0.2",
- "find-cache-dir": "^2.1.0",
- "is-wsl": "^1.1.0",
- "schema-utils": "^1.0.0",
- "serialize-javascript": "^4.0.0",
- "source-map": "^0.6.1",
- "terser": "^4.1.2",
- "webpack-sources": "^1.4.0",
- "worker-farm": "^1.7.0"
- }
+ "bin": {
+ "webpack": "bin/webpack.js"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/webpack"
+ },
+ "peerDependenciesMeta": {
+ "webpack-cli": {
+ "optional": true
}
}
},
- "webpack-cli": {
- "version": "3.3.11",
- "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.3.11.tgz",
- "integrity": "sha512-dXlfuml7xvAFwYUPsrtQAA9e4DOe58gnzSxhgrO/ZM/gyXTBowrsYeubyN4mqGhYdpXMFNyQ6emjJS9M7OBd4g==",
- "dev": true,
- "requires": {
- "chalk": "2.4.2",
- "cross-spawn": "6.0.5",
- "enhanced-resolve": "4.1.0",
- "findup-sync": "3.0.0",
- "global-modules": "2.0.0",
- "import-local": "2.0.0",
- "interpret": "1.2.0",
- "loader-utils": "1.2.3",
- "supports-color": "6.1.0",
- "v8-compile-cache": "2.0.3",
- "yargs": "13.2.4"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
- "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
- "dev": true
- },
- "cliui": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
- "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
- "dev": true,
- "requires": {
- "string-width": "^3.1.0",
- "strip-ansi": "^5.2.0",
- "wrap-ansi": "^5.1.0"
- }
- },
- "enhanced-resolve": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz",
- "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "memory-fs": "^0.4.0",
- "tapable": "^1.0.0"
- }
- },
- "get-caller-file": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
- "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
- "dev": true
- },
- "require-main-filename": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
- "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
- "dev": true
- },
- "string-width": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
- "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
- "dev": true,
- "requires": {
- "emoji-regex": "^7.0.1",
- "is-fullwidth-code-point": "^2.0.0",
- "strip-ansi": "^5.1.0"
- }
- },
- "strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
- "dev": true,
- "requires": {
- "ansi-regex": "^4.1.0"
- }
- },
- "supports-color": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
- "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
- "dev": true,
- "requires": {
- "has-flag": "^3.0.0"
- }
- },
- "wrap-ansi": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
- "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
- "dev": true,
- "requires": {
- "ansi-styles": "^3.2.0",
- "string-width": "^3.0.0",
- "strip-ansi": "^5.0.0"
- }
+ "node_modules/webpack-cli": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.0.1.tgz",
+ "integrity": "sha512-S3KVAyfwUqr0Mo/ur3NzIp6jnerNpo7GUO6so51mxLi1spqsA17YcMXy0WOIJtBSnj748lthxC6XLbNKh/ZC+A==",
+ "dev": true,
+ "dependencies": {
+ "@discoveryjs/json-ext": "^0.5.0",
+ "@webpack-cli/configtest": "^2.0.1",
+ "@webpack-cli/info": "^2.0.1",
+ "@webpack-cli/serve": "^2.0.1",
+ "colorette": "^2.0.14",
+ "commander": "^9.4.1",
+ "cross-spawn": "^7.0.3",
+ "envinfo": "^7.7.3",
+ "fastest-levenshtein": "^1.0.12",
+ "import-local": "^3.0.2",
+ "interpret": "^3.1.1",
+ "rechoir": "^0.8.0",
+ "webpack-merge": "^5.7.3"
+ },
+ "bin": {
+ "webpack-cli": "bin/cli.js"
+ },
+ "engines": {
+ "node": ">=14.15.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/webpack"
+ },
+ "peerDependencies": {
+ "webpack": "5.x.x"
+ },
+ "peerDependenciesMeta": {
+ "@webpack-cli/generators": {
+ "optional": true
},
- "yargs": {
- "version": "13.2.4",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.2.4.tgz",
- "integrity": "sha512-HG/DWAJa1PAnHT9JAhNa8AbAv3FPaiLzioSjCcmuXXhP8MlpHO5vwls4g4j6n30Z74GVQj8Xa62dWVx1QCGklg==",
- "dev": true,
- "requires": {
- "cliui": "^5.0.0",
- "find-up": "^3.0.0",
- "get-caller-file": "^2.0.1",
- "os-locale": "^3.1.0",
- "require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
- "string-width": "^3.0.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^13.1.0"
- }
+ "webpack-bundle-analyzer": {
+ "optional": true
},
- "yargs-parser": {
- "version": "13.1.2",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
- "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
- "dev": true,
- "requires": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- }
+ "webpack-dev-server": {
+ "optional": true
}
}
},
- "webpack-dev-middleware": {
- "version": "3.7.2",
- "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz",
- "integrity": "sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw==",
+ "node_modules/webpack-cli/node_modules/commander": {
+ "version": "9.5.0",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz",
+ "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==",
"dev": true,
- "requires": {
- "memory-fs": "^0.4.1",
- "mime": "^2.4.4",
- "mkdirp": "^0.5.1",
- "range-parser": "^1.2.1",
- "webpack-log": "^2.0.0"
+ "engines": {
+ "node": "^12.20.0 || >=14"
+ }
+ },
+ "node_modules/webpack-cli/node_modules/cross-spawn": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
+ "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
+ "dev": true,
+ "dependencies": {
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/webpack-cli/node_modules/path-key": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/webpack-cli/node_modules/shebang-command": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
+ "dev": true,
+ "dependencies": {
+ "shebang-regex": "^3.0.0"
},
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/webpack-cli/node_modules/shebang-regex": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/webpack-cli/node_modules/webpack-merge": {
+ "version": "5.8.0",
+ "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz",
+ "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==",
+ "dev": true,
"dependencies": {
- "mime": {
- "version": "2.4.4",
- "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz",
- "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==",
- "dev": true
- },
- "range-parser": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
- "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
- "dev": true
- }
+ "clone-deep": "^4.0.1",
+ "wildcard": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10.0.0"
+ }
+ },
+ "node_modules/webpack-cli/node_modules/which": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
+ "dev": true,
+ "dependencies": {
+ "isexe": "^2.0.0"
+ },
+ "bin": {
+ "node-which": "bin/node-which"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/webpack-dev-middleware": {
+ "version": "5.3.3",
+ "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz",
+ "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==",
+ "dev": true,
+ "dependencies": {
+ "colorette": "^2.0.10",
+ "memfs": "^3.4.3",
+ "mime-types": "^2.1.31",
+ "range-parser": "^1.2.1",
+ "schema-utils": "^4.0.0"
+ },
+ "engines": {
+ "node": ">= 12.13.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/webpack"
+ },
+ "peerDependencies": {
+ "webpack": "^4.0.0 || ^5.0.0"
}
},
- "webpack-dev-server": {
- "version": "3.11.0",
- "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.0.tgz",
- "integrity": "sha512-PUxZ+oSTxogFQgkTtFndEtJIPNmml7ExwufBZ9L2/Xyyd5PnOL5UreWe5ZT7IU25DSdykL9p1MLQzmLh2ljSeg==",
+ "node_modules/webpack-dev-server": {
+ "version": "4.13.3",
+ "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.13.3.tgz",
+ "integrity": "sha512-KqqzrzMRSRy5ePz10VhjyL27K2dxqwXQLP5rAKwRJBPUahe7Z2bBWzHw37jeb8GCPKxZRO79ZdQUAPesMh/Nug==",
"dev": true,
- "requires": {
- "ansi-html": "0.0.7",
- "bonjour": "^3.5.0",
- "chokidar": "^2.1.8",
+ "dependencies": {
+ "@types/bonjour": "^3.5.9",
+ "@types/connect-history-api-fallback": "^1.3.5",
+ "@types/express": "^4.17.13",
+ "@types/serve-index": "^1.9.1",
+ "@types/serve-static": "^1.13.10",
+ "@types/sockjs": "^0.3.33",
+ "@types/ws": "^8.5.1",
+ "ansi-html-community": "^0.0.8",
+ "bonjour-service": "^1.0.11",
+ "chokidar": "^3.5.3",
+ "colorette": "^2.0.10",
"compression": "^1.7.4",
- "connect-history-api-fallback": "^1.6.0",
- "debug": "^4.1.1",
- "del": "^4.1.1",
- "express": "^4.17.1",
- "html-entities": "^1.3.1",
- "http-proxy-middleware": "0.19.1",
- "import-local": "^2.0.0",
- "internal-ip": "^4.3.0",
- "ip": "^1.1.5",
- "is-absolute-url": "^3.0.3",
- "killable": "^1.0.1",
- "loglevel": "^1.6.8",
- "opn": "^5.5.0",
- "p-retry": "^3.0.1",
- "portfinder": "^1.0.26",
- "schema-utils": "^1.0.0",
- "selfsigned": "^1.10.7",
- "semver": "^6.3.0",
+ "connect-history-api-fallback": "^2.0.0",
+ "default-gateway": "^6.0.3",
+ "express": "^4.17.3",
+ "graceful-fs": "^4.2.6",
+ "html-entities": "^2.3.2",
+ "http-proxy-middleware": "^2.0.3",
+ "ipaddr.js": "^2.0.1",
+ "launch-editor": "^2.6.0",
+ "open": "^8.0.9",
+ "p-retry": "^4.5.0",
+ "rimraf": "^3.0.2",
+ "schema-utils": "^4.0.0",
+ "selfsigned": "^2.1.1",
"serve-index": "^1.9.1",
- "sockjs": "0.3.20",
- "sockjs-client": "1.4.0",
+ "sockjs": "^0.3.24",
"spdy": "^4.0.2",
- "strip-ansi": "^3.0.1",
- "supports-color": "^6.1.0",
- "url": "^0.11.0",
- "webpack-dev-middleware": "^3.7.2",
- "webpack-log": "^2.0.0",
- "ws": "^6.2.1",
- "yargs": "^13.3.2"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
- "dev": true
- },
- "cliui": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
- "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
- "dev": true,
- "requires": {
- "string-width": "^3.1.0",
- "strip-ansi": "^5.2.0",
- "wrap-ansi": "^5.1.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
- "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
- "dev": true
- },
- "strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
- "dev": true,
- "requires": {
- "ansi-regex": "^4.1.0"
- }
- }
- }
- },
- "get-caller-file": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
- "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
- "dev": true
- },
- "require-main-filename": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
- "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
- "dev": true
- },
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true
- },
- "string-width": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
- "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
- "dev": true,
- "requires": {
- "emoji-regex": "^7.0.1",
- "is-fullwidth-code-point": "^2.0.0",
- "strip-ansi": "^5.1.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
- "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
- "dev": true
- },
- "strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
- "dev": true,
- "requires": {
- "ansi-regex": "^4.1.0"
- }
- }
- }
- },
- "strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
- "dev": true,
- "requires": {
- "ansi-regex": "^2.0.0"
- }
- },
- "supports-color": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
- "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
- "dev": true,
- "requires": {
- "has-flag": "^3.0.0"
- }
- },
- "wrap-ansi": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
- "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
- "dev": true,
- "requires": {
- "ansi-styles": "^3.2.0",
- "string-width": "^3.0.0",
- "strip-ansi": "^5.0.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
- "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
- "dev": true
- },
- "strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
- "dev": true,
- "requires": {
- "ansi-regex": "^4.1.0"
- }
- }
- }
- },
- "ws": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz",
- "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==",
- "dev": true,
- "requires": {
- "async-limiter": "~1.0.0"
- }
- },
- "yargs": {
- "version": "13.3.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
- "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
- "dev": true,
- "requires": {
- "cliui": "^5.0.0",
- "find-up": "^3.0.0",
- "get-caller-file": "^2.0.1",
- "require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
- "string-width": "^3.0.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^13.1.2"
- }
+ "webpack-dev-middleware": "^5.3.1",
+ "ws": "^8.13.0"
+ },
+ "bin": {
+ "webpack-dev-server": "bin/webpack-dev-server.js"
+ },
+ "engines": {
+ "node": ">= 12.13.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/webpack"
+ },
+ "peerDependencies": {
+ "webpack": "^4.37.0 || ^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "webpack": {
+ "optional": true
},
- "yargs-parser": {
- "version": "13.1.2",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
- "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
- "dev": true,
- "requires": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- }
+ "webpack-cli": {
+ "optional": true
}
}
},
- "webpack-log": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz",
- "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==",
+ "node_modules/webpack-dev-server/node_modules/rimraf": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
"dev": true,
- "requires": {
- "ansi-colors": "^3.0.0",
- "uuid": "^3.3.2"
+ "dependencies": {
+ "glob": "^7.1.3"
+ },
+ "bin": {
+ "rimraf": "bin.js"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
}
},
- "webpack-sources": {
- "version": "1.4.3",
- "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz",
- "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==",
+ "node_modules/webpack-merge": {
+ "version": "4.2.2",
+ "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz",
+ "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==",
+ "dev": true,
+ "dependencies": {
+ "lodash": "^4.17.15"
+ }
+ },
+ "node_modules/webpack-sources": {
+ "version": "3.2.3",
+ "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz",
+ "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==",
+ "dev": true,
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/webpack/node_modules/ajv": {
+ "version": "6.12.6",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
+ "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
"dev": true,
- "requires": {
- "source-list-map": "^2.0.0",
- "source-map": "~0.6.1"
+ "dependencies": {
+ "fast-deep-equal": "^3.1.1",
+ "fast-json-stable-stringify": "^2.0.0",
+ "json-schema-traverse": "^0.4.1",
+ "uri-js": "^4.2.2"
},
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/epoberezkin"
+ }
+ },
+ "node_modules/webpack/node_modules/ajv-keywords": {
+ "version": "3.5.2",
+ "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
+ "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
+ "dev": true,
+ "peerDependencies": {
+ "ajv": "^6.9.1"
+ }
+ },
+ "node_modules/webpack/node_modules/json-schema-traverse": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
+ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
+ "dev": true
+ },
+ "node_modules/webpack/node_modules/schema-utils": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.2.tgz",
+ "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==",
+ "dev": true,
"dependencies": {
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
- }
+ "@types/json-schema": "^7.0.8",
+ "ajv": "^6.12.5",
+ "ajv-keywords": "^3.5.2"
+ },
+ "engines": {
+ "node": ">= 10.13.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/webpack"
}
},
- "websocket-driver": {
- "version": "0.6.5",
- "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.6.5.tgz",
- "integrity": "sha1-XLJVbOuF9Dc8bYI4qmkchFThOjY=",
+ "node_modules/websocket-driver": {
+ "version": "0.7.4",
+ "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz",
+ "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==",
"dev": true,
- "requires": {
+ "dependencies": {
+ "http-parser-js": ">=0.5.1",
+ "safe-buffer": ">=5.1.0",
"websocket-extensions": ">=0.1.1"
+ },
+ "engines": {
+ "node": ">=0.8.0"
}
},
- "websocket-extensions": {
+ "node_modules/websocket-extensions": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz",
"integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.8.0"
+ }
+ },
+ "node_modules/whatwg-url": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
+ "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
+ "dev": true,
+ "dependencies": {
+ "tr46": "~0.0.3",
+ "webidl-conversions": "^3.0.0"
+ }
},
- "which": {
+ "node_modules/which": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
"integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"isexe": "^2.0.0"
+ },
+ "bin": {
+ "which": "bin/which"
}
},
- "which-module": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
- "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=",
- "dev": true
+ "node_modules/which-boxed-primitive": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
+ "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==",
+ "dev": true,
+ "dependencies": {
+ "is-bigint": "^1.0.1",
+ "is-boolean-object": "^1.1.0",
+ "is-number-object": "^1.0.4",
+ "is-string": "^1.0.5",
+ "is-symbol": "^1.0.3"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "worker-farm": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz",
- "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==",
+ "node_modules/which-typed-array": {
+ "version": "1.1.9",
+ "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz",
+ "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==",
"dev": true,
- "requires": {
- "errno": "~0.1.7"
+ "dependencies": {
+ "available-typed-arrays": "^1.0.5",
+ "call-bind": "^1.0.2",
+ "for-each": "^0.3.3",
+ "gopd": "^1.0.1",
+ "has-tostringtag": "^1.0.0",
+ "is-typed-array": "^1.1.10"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "wrap-ansi": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
- "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
+ "node_modules/wildcard": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz",
+ "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==",
+ "dev": true
+ },
+ "node_modules/wrap-ansi": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
"dev": true,
- "requires": {
+ "dependencies": {
"ansi-styles": "^4.0.0",
"string-width": "^4.1.0",
"strip-ansi": "^6.0.0"
},
- "dependencies": {
- "ansi-styles": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
- "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
- "dev": true,
- "requires": {
- "@types/color-name": "^1.1.1",
- "color-convert": "^2.0.1"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- }
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
}
},
- "wrappy": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
- "dev": true
+ "node_modules/wrap-ansi/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
},
- "ws": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz",
- "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==",
+ "node_modules/wrap-ansi/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
- "requires": {
- "async-limiter": "~1.0.0",
- "safe-buffer": "~5.1.0",
- "ultron": "~1.1.0"
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
}
},
- "xmlhttprequest-ssl": {
- "version": "1.5.5",
- "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz",
- "integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=",
+ "node_modules/wrap-ansi/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
},
- "xtend": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
- "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
+ "node_modules/wrappy": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
"dev": true
},
- "y18n": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz",
- "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==",
- "dev": true
+ "node_modules/ws": {
+ "version": "8.13.0",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz",
+ "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==",
+ "dev": true,
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
},
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "node_modules/y18n": {
+ "version": "5.0.8",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
+ "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/yallist": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
+ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
"dev": true
},
- "yargs": {
- "version": "15.3.1",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz",
- "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==",
+ "node_modules/yargs": {
+ "version": "16.2.0",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
+ "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
"dev": true,
- "requires": {
- "cliui": "^6.0.0",
- "decamelize": "^1.2.0",
- "find-up": "^4.1.0",
- "get-caller-file": "^2.0.1",
+ "dependencies": {
+ "cliui": "^7.0.2",
+ "escalade": "^3.1.1",
+ "get-caller-file": "^2.0.5",
"require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
"string-width": "^4.2.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^18.1.1"
- },
- "dependencies": {
- "find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "requires": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- }
- },
- "locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "requires": {
- "p-locate": "^4.1.0"
- }
- },
- "p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "requires": {
- "p-try": "^2.0.0"
- }
- },
- "p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "requires": {
- "p-limit": "^2.2.0"
- }
- },
- "path-exists": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
- "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
- "dev": true
- }
+ "y18n": "^5.0.5",
+ "yargs-parser": "^20.2.2"
+ },
+ "engines": {
+ "node": ">=10"
}
},
- "yargs-parser": {
- "version": "18.1.3",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
- "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
+ "node_modules/yargs-parser": {
+ "version": "20.2.9",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
+ "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==",
"dev": true,
- "requires": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
+ "engines": {
+ "node": ">=10"
}
},
- "yeast": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz",
- "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=",
- "dev": true
+ "node_modules/yauzl": {
+ "version": "2.10.0",
+ "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz",
+ "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==",
+ "dev": true,
+ "dependencies": {
+ "buffer-crc32": "~0.2.3",
+ "fd-slicer": "~1.1.0"
+ }
}
}
}
diff --git a/package.json b/package.json
index f3d21501..966ad9a7 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "angular-ui-scroll",
"description": "AngularJS virtual scrolling module",
- "version": "1.8.2",
+ "version": "1.9.0",
"src": "./src/",
"public": "./dist/",
"main": "./dist/ui-scroll.js",
@@ -40,24 +40,25 @@
"angular": ">=1.2.0"
},
"devDependencies": {
- "@babel/core": "^7.3.3",
- "@babel/preset-env": "^7.3.1",
- "babel-loader": "^8.1.0",
- "clean-webpack-plugin": "^0.1.17",
- "copy-webpack-plugin": "^6.1.1",
- "jasmine-core": "^2.8.0",
- "jshint": "^2.10.1",
- "karma": "^5.0.5",
- "karma-chrome-launcher": "^2.2.0",
- "karma-firefox-launcher": "^1.1.0",
- "karma-jasmine": "^2.0.1",
- "karma-sourcemap-loader": "^0.3.7",
- "karma-webpack": "^4.0.2",
- "npm-run-all": "^4.1.2",
- "terser-webpack-plugin": "^4.2.2",
- "webpack": "^4.42.0",
- "webpack-cli": "^3.3.1",
- "webpack-dev-server": "^3.11.0"
+ "@babel/core": "^7.21.4",
+ "@babel/preset-env": "^7.21.4",
+ "babel-loader": "^9.1.2",
+ "clean-webpack-plugin": "^4.0.0",
+ "copy-webpack-plugin": "^11.0.0",
+ "jasmine-core": "^4.6.0",
+ "jshint": "^2.13.6",
+ "karma": "^6.4.1",
+ "karma-chrome-launcher": "^3.1.1",
+ "karma-firefox-launcher": "^2.1.2",
+ "karma-jasmine": "^5.1.0",
+ "karma-sourcemap-loader": "^0.4.0",
+ "karma-webpack": "^5.0.0",
+ "npm-run-all": "^4.1.5",
+ "puppeteer": "^19.9.1",
+ "terser-webpack-plugin": "^5.3.7",
+ "webpack": "^5.79.0",
+ "webpack-cli": "^5.0.1",
+ "webpack-dev-server": "^4.13.3"
},
"keywords": [
"angular",
@@ -76,4 +77,4 @@
"scroller",
"scrolling"
]
-}
+}
\ No newline at end of file
diff --git a/src/ui-scroll.js b/src/ui-scroll.js
index 705f9932..71463997 100644
--- a/src/ui-scroll.js
+++ b/src/ui-scroll.js
@@ -127,9 +127,9 @@ angular.module('ui.scroll', [])
function persistDatasourceIndex(datasource, propName) {
let getter;
// need to postpone min/maxIndexUser processing if the view is empty
- if(angular.isNumber(datasource[propName])) {
+ if (angular.isNumber(datasource[propName])) {
getter = datasource[propName];
- if(angular.isNumber(getter)) {
+ if (angular.isNumber(getter)) {
onRenderHandlers = onRenderHandlers.filter(handler => handler.id !== propName);
onRenderHandlers.push({
id: propName,
@@ -149,7 +149,7 @@ angular.module('ui.scroll', [])
Object.defineProperty(datasource, propName, {
set: (value) => {
getter = value;
- if(pending.length && !buffer.length) {
+ if (pending.length && !buffer.length) {
persistDatasourceIndex(datasource, propName);
return;
}
@@ -189,14 +189,14 @@ angular.module('ui.scroll', [])
const initialize = () => {
let tryCount = 0;
- if(!viewport.applyContainerStyle()) {
+ if (!viewport.applyContainerStyle()) {
const timer = $interval(() => {
tryCount++;
- if(viewport.applyContainerStyle()) {
+ if (viewport.applyContainerStyle()) {
$interval.cancel(timer);
doAdjust();
}
- if(tryCount * VIEWPORT_POLLING_INTERVAL >= MAX_VIEWPORT_DELAY) {
+ if (tryCount * VIEWPORT_POLLING_INTERVAL >= MAX_VIEWPORT_DELAY) {
$interval.cancel(timer);
throw Error(`ui-scroll directive requires a viewport with non-zero height in ${MAX_VIEWPORT_DELAY}ms`);
}
diff --git a/test/config/karma.conf.js b/test/config/karma.conf.js
index 76ede4b8..226d54f6 100644
--- a/test/config/karma.conf.js
+++ b/test/config/karma.conf.js
@@ -1,6 +1,26 @@
-const chrome = process.platform === 'linux' ? 'Chromium' : 'Chrome';
+// BROWSER env variable could be "headless", "firefox" or "chrome" (default)
+
+const browsers = [];
+if (process.env.BROWSER === 'headless') {
+ process.env.CHROME_BIN = require('puppeteer').executablePath();
+ browsers.push('ChromeHeadlessSized');
+} else if (process.env.BROWSERS === "firefox") {
+ browsers.push('FirefoxSized');
+} else {
+ browsers.push(process.platform === 'linux' ? ['ChromiumSized'] : ['ChromeSized']);
+}
+
+const flags = ['--window-size=1024,768'];
+const customLaunchers = {
+ 'ChromeHeadlessSized': { base: 'ChromeHeadless', flags },
+ 'ChromiumSized': { base: 'Chromium', flags },
+ 'ChromeSized': { base: 'Chrome', flags },
+ 'FirefoxSized': { base: 'Firefox', flags }
+};
-const ENV = (process.env.npm_lifecycle_event.indexOf('dev') === 0) ? 'development' : 'production';
+const ENV = (!process.env.CI && process.env.npm_lifecycle_event.indexOf('dev') === 0) ?
+ 'development' :
+ 'production';
const webpackSettings = ENV === 'development' ? {
preprocessors: {
@@ -36,9 +56,8 @@ module.exports = function (config) {
keepalive: ENV === 'development',
- browsers: process.env.TRAVIS ?
- ['Firefox'] :
- [chrome],
+ browsers,
+ customLaunchers,
captureTimeout: 60000,
diff --git a/webpack.config.js b/webpack.config.js
index a3dc1e81..77befc4c 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -3,7 +3,7 @@
const path = require('path');
const glob = require('glob');
const webpack = require('webpack');
-const CleanWebpackPlugin = require('clean-webpack-plugin');
+const { CleanWebpackPlugin } = require('clean-webpack-plugin');
const CopyWebpackPlugin = require('copy-webpack-plugin');
const TerserPlugin = require('terser-webpack-plugin');
@@ -43,31 +43,24 @@ if (ENV === 'development') {
optimization: {},
devServer: !isTest ? {
- historyApiFallback: {
- rewrites: [
- { from: /\/*\/*\.html$/, to: (context) => '/demo' + context.parsedUrl.pathname },
- { from: /\/*\/*\.css$/, to: (context) => '/demo' + context.parsedUrl.pathname },
- { from: /\/*\/*\.js$/, to: (context) => '/demo' + context.parsedUrl.pathname },
- { from: /\/ui-scroll-demo\.gif$/, to: '/demo/ui-scroll-demo.gif' },
- { from: /^\/$/, to: '/demo/index.html' }
- ]
- },
proxy: {
'/dist': {
target: 'http://' + devServerHost + ':' + devServerPort,
pathRewrite: { '^/dist': '' }
}
},
- inline: true,
- quiet: false,
- stats: {
- modules: false,
- errors: true,
- warnings: true
- },
+
port: devServerPort,
host: devServerHost,
- publicPath: '/'
+ static: "demo",
+ devMiddleware: {
+ stats: {
+ modules: false,
+ errors: true,
+ warnings: true
+ },
+ publicPath: '/'
+ },
} : {},
watch: true
@@ -82,7 +75,7 @@ if (ENV === 'production') {
},
output: {
- path: path.join(__dirname, 'dist'),
+ path: path.resolve(__dirname, 'dist'),
filename: '[name].js'
},
@@ -92,10 +85,10 @@ if (ENV === 'production') {
minimize: true,
minimizer: [
new TerserPlugin({
- sourceMap: true,
parallel: true,
extractComments: false,
terserOptions: {
+ sourceMap: true,
warnings: true,
compress: {
warnings: true,
@@ -110,8 +103,8 @@ if (ENV === 'production') {
},
plugins: [
- new CleanWebpackPlugin('dist', {
- root: __dirname
+ new CleanWebpackPlugin({
+ cleanOnceBeforeBuildPatterns: [path.join(__dirname, 'dist/**/*')]
}),
new CopyWebpackPlugin({
patterns: [