new license file version [CI SKIP]
This commit is contained in:
@@ -0,0 +1,112 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
function _export(target, all) {
|
||||
for(var name in all)Object.defineProperty(target, name, {
|
||||
enumerable: true,
|
||||
get: all[name]
|
||||
});
|
||||
}
|
||||
_export(exports, {
|
||||
parseColor: ()=>parseColor,
|
||||
formatColor: ()=>formatColor
|
||||
});
|
||||
const _colorName = /*#__PURE__*/ _interopRequireDefault(require("color-name"));
|
||||
function _interopRequireDefault(obj) {
|
||||
return obj && obj.__esModule ? obj : {
|
||||
default: obj
|
||||
};
|
||||
}
|
||||
let HEX = /^#([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})?$/i;
|
||||
let SHORT_HEX = /^#([a-f\d])([a-f\d])([a-f\d])([a-f\d])?$/i;
|
||||
let VALUE = /(?:\d+|\d*\.\d+)%?/;
|
||||
let SEP = /(?:\s*,\s*|\s+)/;
|
||||
let ALPHA_SEP = /\s*[,/]\s*/;
|
||||
let CUSTOM_PROPERTY = /var\(--(?:[^ )]*?)\)/;
|
||||
let RGB = new RegExp(`^(rgba?)\\(\\s*(${VALUE.source}|${CUSTOM_PROPERTY.source})(?:${SEP.source}(${VALUE.source}|${CUSTOM_PROPERTY.source}))?(?:${SEP.source}(${VALUE.source}|${CUSTOM_PROPERTY.source}))?(?:${ALPHA_SEP.source}(${VALUE.source}|${CUSTOM_PROPERTY.source}))?\\s*\\)$`);
|
||||
let HSL = new RegExp(`^(hsla?)\\(\\s*((?:${VALUE.source})(?:deg|rad|grad|turn)?|${CUSTOM_PROPERTY.source})(?:${SEP.source}(${VALUE.source}|${CUSTOM_PROPERTY.source}))?(?:${SEP.source}(${VALUE.source}|${CUSTOM_PROPERTY.source}))?(?:${ALPHA_SEP.source}(${VALUE.source}|${CUSTOM_PROPERTY.source}))?\\s*\\)$`);
|
||||
function parseColor(value, { loose =false } = {}) {
|
||||
var _match_, _match__toString;
|
||||
if (typeof value !== "string") {
|
||||
return null;
|
||||
}
|
||||
value = value.trim();
|
||||
if (value === "transparent") {
|
||||
return {
|
||||
mode: "rgb",
|
||||
color: [
|
||||
"0",
|
||||
"0",
|
||||
"0"
|
||||
],
|
||||
alpha: "0"
|
||||
};
|
||||
}
|
||||
if (value in _colorName.default) {
|
||||
return {
|
||||
mode: "rgb",
|
||||
color: _colorName.default[value].map((v)=>v.toString())
|
||||
};
|
||||
}
|
||||
let hex = value.replace(SHORT_HEX, (_, r, g, b, a)=>[
|
||||
"#",
|
||||
r,
|
||||
r,
|
||||
g,
|
||||
g,
|
||||
b,
|
||||
b,
|
||||
a ? a + a : ""
|
||||
].join("")).match(HEX);
|
||||
if (hex !== null) {
|
||||
return {
|
||||
mode: "rgb",
|
||||
color: [
|
||||
parseInt(hex[1], 16),
|
||||
parseInt(hex[2], 16),
|
||||
parseInt(hex[3], 16)
|
||||
].map((v)=>v.toString()),
|
||||
alpha: hex[4] ? (parseInt(hex[4], 16) / 255).toString() : undefined
|
||||
};
|
||||
}
|
||||
var _value_match;
|
||||
let match = (_value_match = value.match(RGB)) !== null && _value_match !== void 0 ? _value_match : value.match(HSL);
|
||||
if (match === null) {
|
||||
return null;
|
||||
}
|
||||
let color = [
|
||||
match[2],
|
||||
match[3],
|
||||
match[4]
|
||||
].filter(Boolean).map((v)=>v.toString());
|
||||
// rgba(var(--my-color), 0.1)
|
||||
// hsla(var(--my-color), 0.1)
|
||||
if (color.length === 2 && color[0].startsWith("var(")) {
|
||||
return {
|
||||
mode: match[1],
|
||||
color: [
|
||||
color[0]
|
||||
],
|
||||
alpha: color[1]
|
||||
};
|
||||
}
|
||||
if (!loose && color.length !== 3) {
|
||||
return null;
|
||||
}
|
||||
if (color.length < 3 && !color.some((part)=>/^var\(.*?\)$/.test(part))) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
mode: match[1],
|
||||
color,
|
||||
alpha: (_match_ = match[5]) === null || _match_ === void 0 ? void 0 : (_match__toString = _match_.toString) === null || _match__toString === void 0 ? void 0 : _match__toString.call(_match_)
|
||||
};
|
||||
}
|
||||
function formatColor({ mode , color , alpha }) {
|
||||
let hasAlpha = alpha !== undefined;
|
||||
if (mode === "rgba" || mode === "hsla") {
|
||||
return `${mode}(${color.join(", ")}${hasAlpha ? `, ${alpha}` : ""})`;
|
||||
}
|
||||
return `${mode}(${color.join(" ")}${hasAlpha ? ` / ${alpha}` : ""})`;
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,13 @@
|
||||
import { __extends } from "tslib";
|
||||
var MissingLocaleDataError = /** @class */ (function (_super) {
|
||||
__extends(MissingLocaleDataError, _super);
|
||||
function MissingLocaleDataError() {
|
||||
var _this = _super !== null && _super.apply(this, arguments) || this;
|
||||
_this.type = 'MISSING_LOCALE_DATA';
|
||||
return _this;
|
||||
}
|
||||
return MissingLocaleDataError;
|
||||
}(Error));
|
||||
export function isMissingLocaleDataError(e) {
|
||||
return e.type === 'MISSING_LOCALE_DATA';
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
# tailwindcss/nesting
|
||||
|
||||
This is a PostCSS plugin that wraps [postcss-nested](https://github.com/postcss/postcss-nested) or [postcss-nesting](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-nesting) and acts as a compatibility layer to make sure your nesting plugin of choice properly understands Tailwind's custom syntax like `@apply` and `@screen`.
|
||||
|
||||
Add it to your PostCSS configuration, somewhere before Tailwind itself:
|
||||
|
||||
```js
|
||||
// postcss.config.js
|
||||
module.exports = {
|
||||
plugins: [
|
||||
require('postcss-import'),
|
||||
require('tailwindcss/nesting'),
|
||||
require('tailwindcss'),
|
||||
require('autoprefixer'),
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
By default, it uses the [postcss-nested](https://github.com/postcss/postcss-nested) plugin under the hood, which uses a Sass-like syntax and is the plugin that powers nesting support in the [Tailwind CSS plugin API](https://tailwindcss.com/docs/plugins#css-in-js-syntax).
|
||||
|
||||
If you'd rather use [postcss-nesting](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-nesting) (which is based on the work-in-progress [CSS Nesting](https://drafts.csswg.org/css-nesting-1/) specification), first install the plugin alongside:
|
||||
|
||||
```shell
|
||||
npm install postcss-nesting
|
||||
```
|
||||
|
||||
Then pass the plugin itself as an argument to `tailwindcss/nesting` in your PostCSS configuration:
|
||||
|
||||
```js
|
||||
// postcss.config.js
|
||||
module.exports = {
|
||||
plugins: [
|
||||
require('postcss-import'),
|
||||
require('tailwindcss/nesting')(require('postcss-nesting')),
|
||||
require('tailwindcss'),
|
||||
require('autoprefixer'),
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
This can also be helpful if for whatever reason you need to use a very specific version of `postcss-nested` and want to override the version we bundle with `tailwindcss/nesting` itself.
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
'use strict';
|
||||
|
||||
var parse = require('../');
|
||||
var test = require('tape');
|
||||
|
||||
test('whitespace should be whitespace', function (t) {
|
||||
t.plan(1);
|
||||
var x = parse(['-x', '\t']).x;
|
||||
t.equal(x, '\t');
|
||||
});
|
||||
@@ -0,0 +1,27 @@
|
||||
<script>export let handler;
|
||||
let value = '';
|
||||
</script>
|
||||
|
||||
<input
|
||||
bind:value={value}
|
||||
placeholder="{handler.i18n.search}"
|
||||
spellcheck="false"
|
||||
on:input={() => handler.search(value)}
|
||||
/>
|
||||
|
||||
<style>
|
||||
input{
|
||||
border:1px solid #e0e0e0;
|
||||
border-radius:4px;
|
||||
outline:none;
|
||||
padding:0 8px;
|
||||
line-height:24px;
|
||||
margin:0;
|
||||
height:24px;
|
||||
background:transparent;
|
||||
width:176px;
|
||||
transition:all, 0.1s;
|
||||
}
|
||||
input:focus {border:1px solid #bdbdbd;}
|
||||
input::placeholder {color:#9e9e9e;line-height:24px;}
|
||||
</style>
|
||||
@@ -0,0 +1,8 @@
|
||||
/**
|
||||
* Customize the displayed name of a useState, useReducer or useRef hook
|
||||
* in the devtools panel.
|
||||
*
|
||||
* @param value Wrapped native hook.
|
||||
* @param name Custom name
|
||||
*/
|
||||
export function addHookName<T>(value: T, name: string): T;
|
||||
@@ -0,0 +1,24 @@
|
||||
/**
|
||||
Remove spaces from the left side.
|
||||
*/
|
||||
type TrimLeft<V extends string> = V extends ` ${infer R}` ? TrimLeft<R> : V;
|
||||
|
||||
/**
|
||||
Remove spaces from the right side.
|
||||
*/
|
||||
type TrimRight<V extends string> = V extends `${infer R} ` ? TrimRight<R> : V;
|
||||
|
||||
/**
|
||||
Remove leading and trailing spaces from a string.
|
||||
|
||||
@example
|
||||
```
|
||||
import {Trim} from 'type-fest';
|
||||
|
||||
Trim<' foo '>
|
||||
//=> 'foo'
|
||||
```
|
||||
|
||||
@category Template Literals
|
||||
*/
|
||||
export type Trim<V extends string> = TrimLeft<TrimRight<V>>;
|
||||
@@ -0,0 +1,20 @@
|
||||
import merge from './util/merge';
|
||||
var default_time_options = {
|
||||
hourFormat: 'hour24',
|
||||
mode: 'default'
|
||||
};
|
||||
var formats = {
|
||||
hour24: {
|
||||
"default": /^([01]?[0-9]|2[0-3]):([0-5][0-9])$/,
|
||||
withSeconds: /^([01]?[0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$/
|
||||
},
|
||||
hour12: {
|
||||
"default": /^(0?[1-9]|1[0-2]):([0-5][0-9]) (A|P)M$/,
|
||||
withSeconds: /^(0?[1-9]|1[0-2]):([0-5][0-9]):([0-5][0-9]) (A|P)M$/
|
||||
}
|
||||
};
|
||||
export default function isTime(input, options) {
|
||||
options = merge(options, default_time_options);
|
||||
if (typeof input !== 'string') return false;
|
||||
return formats[options.hourFormat][options.mode].test(input);
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"animationFrame.js","sourceRoot":"","sources":["../../../../src/internal/scheduler/animationFrame.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAkCpE,MAAM,CAAC,IAAM,uBAAuB,GAAG,IAAI,uBAAuB,CAAC,oBAAoB,CAAC,CAAC;AAKzF,MAAM,CAAC,IAAM,cAAc,GAAG,uBAAuB,CAAC"}
|
||||
@@ -0,0 +1,40 @@
|
||||
{
|
||||
"name": "estraverse",
|
||||
"description": "ECMAScript JS AST traversal functions",
|
||||
"homepage": "https://github.com/estools/estraverse",
|
||||
"main": "estraverse.js",
|
||||
"version": "4.3.0",
|
||||
"engines": {
|
||||
"node": ">=4.0"
|
||||
},
|
||||
"maintainers": [
|
||||
{
|
||||
"name": "Yusuke Suzuki",
|
||||
"email": "utatane.tea@gmail.com",
|
||||
"web": "http://github.com/Constellation"
|
||||
}
|
||||
],
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "http://github.com/estools/estraverse.git"
|
||||
},
|
||||
"devDependencies": {
|
||||
"babel-preset-env": "^1.6.1",
|
||||
"babel-register": "^6.3.13",
|
||||
"chai": "^2.1.1",
|
||||
"espree": "^1.11.0",
|
||||
"gulp": "^3.8.10",
|
||||
"gulp-bump": "^0.2.2",
|
||||
"gulp-filter": "^2.0.0",
|
||||
"gulp-git": "^1.0.1",
|
||||
"gulp-tag-version": "^1.3.0",
|
||||
"jshint": "^2.5.6",
|
||||
"mocha": "^2.1.0"
|
||||
},
|
||||
"license": "BSD-2-Clause",
|
||||
"scripts": {
|
||||
"test": "npm run-script lint && npm run-script unit-test",
|
||||
"lint": "jshint estraverse.js",
|
||||
"unit-test": "mocha --compilers js:babel-register"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
sauce_connect: true
|
||||
loopback: airtap.local
|
||||
browsers:
|
||||
- name: chrome
|
||||
version: latest
|
||||
- name: firefox
|
||||
version: latest
|
||||
- name: safari
|
||||
version: latest
|
||||
- name: microsoftedge
|
||||
version: latest
|
||||
- name: ie
|
||||
version: latest
|
||||
- name: iphone
|
||||
version: latest
|
||||
@@ -0,0 +1,4 @@
|
||||
export declare function addQueryParameters(url: string, parameters: {
|
||||
[x: string]: string | undefined;
|
||||
q?: string;
|
||||
}): string;
|
||||
@@ -0,0 +1,42 @@
|
||||
{
|
||||
"name": "immediate",
|
||||
"version": "3.0.6",
|
||||
"description": "A cross browser microtask library",
|
||||
"contributors": [
|
||||
"Domenic Denicola <domenic@domenicdenicola.com> (http://domenicdenicola.com)",
|
||||
"Donavon West <github@donavon.com> (http://donavon.com)",
|
||||
"Yaffle",
|
||||
"Calvin Metcalf <calvin.metcalf@gmail.com>"
|
||||
],
|
||||
"license": "MIT",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git://github.com/calvinmetcalf/immediate.git"
|
||||
},
|
||||
"files": [
|
||||
"lib",
|
||||
"dist"
|
||||
],
|
||||
"bugs": "https://github.com/calvinmetcalf/immediate/issues",
|
||||
"main": "lib/index.js",
|
||||
"scripts": {
|
||||
"build": "npm run build-node && npm run build-js && npm run uglify",
|
||||
"build-node": "browserify-transform-cli inline-process-browser unreachable-branch-transform < ./lib/index.js > ./lib/browser.js",
|
||||
"uglify": "uglifyjs dist/immediate.js -mc > dist/immediate.min.js",
|
||||
"build-js": "browserify -s immediate ./lib/browser.js | derequire > dist/immediate.js",
|
||||
"test": "jshint lib/*.js && node test/tests.js"
|
||||
},
|
||||
"browser": {
|
||||
"./lib/index.js": "./lib/browser.js"
|
||||
},
|
||||
"devDependencies": {
|
||||
"browserify": "^13.0.0",
|
||||
"browserify-transform-cli": "^1.1.1",
|
||||
"derequire": "^2.0.0",
|
||||
"inline-process-browser": "^2.0.0",
|
||||
"jshint": "^2.5.1",
|
||||
"tape": "^4.0.0",
|
||||
"uglify-js": "^2.4.13",
|
||||
"unreachable-branch-transform": "^0.5.1"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
export { TestScheduler, RunHelpers } from '../internal/testing/TestScheduler';
|
||||
//# sourceMappingURL=index.d.ts.map
|
||||
@@ -0,0 +1,33 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
const path = require("path");
|
||||
const fsStat = require("@nodelib/fs.stat");
|
||||
const utils = require("../utils");
|
||||
class Reader {
|
||||
constructor(_settings) {
|
||||
this._settings = _settings;
|
||||
this._fsStatSettings = new fsStat.Settings({
|
||||
followSymbolicLink: this._settings.followSymbolicLinks,
|
||||
fs: this._settings.fs,
|
||||
throwErrorOnBrokenSymbolicLink: this._settings.followSymbolicLinks
|
||||
});
|
||||
}
|
||||
_getFullEntryPath(filepath) {
|
||||
return path.resolve(this._settings.cwd, filepath);
|
||||
}
|
||||
_makeEntry(stats, pattern) {
|
||||
const entry = {
|
||||
name: pattern,
|
||||
path: pattern,
|
||||
dirent: utils.fs.createDirentFromStats(pattern, stats)
|
||||
};
|
||||
if (this._settings.stats) {
|
||||
entry.stats = stats;
|
||||
}
|
||||
return entry;
|
||||
}
|
||||
_isFatalError(error) {
|
||||
return !utils.errno.isEnoentCodeError(error) && !this._settings.suppressErrors;
|
||||
}
|
||||
}
|
||||
exports.default = Reader;
|
||||
@@ -0,0 +1,308 @@
|
||||
2.5.2 / 2023-02-21
|
||||
==================
|
||||
|
||||
* Fix error message for non-stream argument
|
||||
|
||||
2.5.1 / 2022-02-28
|
||||
==================
|
||||
|
||||
* Fix error on early async hooks implementations
|
||||
|
||||
2.5.0 / 2022-02-21
|
||||
==================
|
||||
|
||||
* Prevent loss of async hooks context
|
||||
* Prevent hanging when stream is not readable
|
||||
* deps: http-errors@2.0.0
|
||||
- deps: depd@2.0.0
|
||||
- deps: statuses@2.0.1
|
||||
|
||||
2.4.3 / 2022-02-14
|
||||
==================
|
||||
|
||||
* deps: bytes@3.1.2
|
||||
|
||||
2.4.2 / 2021-11-16
|
||||
==================
|
||||
|
||||
* deps: bytes@3.1.1
|
||||
* deps: http-errors@1.8.1
|
||||
- deps: setprototypeof@1.2.0
|
||||
- deps: toidentifier@1.0.1
|
||||
|
||||
2.4.1 / 2019-06-25
|
||||
==================
|
||||
|
||||
* deps: http-errors@1.7.3
|
||||
- deps: inherits@2.0.4
|
||||
|
||||
2.4.0 / 2019-04-17
|
||||
==================
|
||||
|
||||
* deps: bytes@3.1.0
|
||||
- Add petabyte (`pb`) support
|
||||
* deps: http-errors@1.7.2
|
||||
- Set constructor name when possible
|
||||
- deps: setprototypeof@1.1.1
|
||||
- deps: statuses@'>= 1.5.0 < 2'
|
||||
* deps: iconv-lite@0.4.24
|
||||
- Added encoding MIK
|
||||
|
||||
2.3.3 / 2018-05-08
|
||||
==================
|
||||
|
||||
* deps: http-errors@1.6.3
|
||||
- deps: depd@~1.1.2
|
||||
- deps: setprototypeof@1.1.0
|
||||
- deps: statuses@'>= 1.3.1 < 2'
|
||||
* deps: iconv-lite@0.4.23
|
||||
- Fix loading encoding with year appended
|
||||
- Fix deprecation warnings on Node.js 10+
|
||||
|
||||
2.3.2 / 2017-09-09
|
||||
==================
|
||||
|
||||
* deps: iconv-lite@0.4.19
|
||||
- Fix ISO-8859-1 regression
|
||||
- Update Windows-1255
|
||||
|
||||
2.3.1 / 2017-09-07
|
||||
==================
|
||||
|
||||
* deps: bytes@3.0.0
|
||||
* deps: http-errors@1.6.2
|
||||
- deps: depd@1.1.1
|
||||
* perf: skip buffer decoding on overage chunk
|
||||
|
||||
2.3.0 / 2017-08-04
|
||||
==================
|
||||
|
||||
* Add TypeScript definitions
|
||||
* Use `http-errors` for standard emitted errors
|
||||
* deps: bytes@2.5.0
|
||||
* deps: iconv-lite@0.4.18
|
||||
- Add support for React Native
|
||||
- Add a warning if not loaded as utf-8
|
||||
- Fix CESU-8 decoding in Node.js 8
|
||||
- Improve speed of ISO-8859-1 encoding
|
||||
|
||||
2.2.0 / 2017-01-02
|
||||
==================
|
||||
|
||||
* deps: iconv-lite@0.4.15
|
||||
- Added encoding MS-31J
|
||||
- Added encoding MS-932
|
||||
- Added encoding MS-936
|
||||
- Added encoding MS-949
|
||||
- Added encoding MS-950
|
||||
- Fix GBK/GB18030 handling of Euro character
|
||||
|
||||
2.1.7 / 2016-06-19
|
||||
==================
|
||||
|
||||
* deps: bytes@2.4.0
|
||||
* perf: remove double-cleanup on happy path
|
||||
|
||||
2.1.6 / 2016-03-07
|
||||
==================
|
||||
|
||||
* deps: bytes@2.3.0
|
||||
- Drop partial bytes on all parsed units
|
||||
- Fix parsing byte string that looks like hex
|
||||
|
||||
2.1.5 / 2015-11-30
|
||||
==================
|
||||
|
||||
* deps: bytes@2.2.0
|
||||
* deps: iconv-lite@0.4.13
|
||||
|
||||
2.1.4 / 2015-09-27
|
||||
==================
|
||||
|
||||
* Fix masking critical errors from `iconv-lite`
|
||||
* deps: iconv-lite@0.4.12
|
||||
- Fix CESU-8 decoding in Node.js 4.x
|
||||
|
||||
2.1.3 / 2015-09-12
|
||||
==================
|
||||
|
||||
* Fix sync callback when attaching data listener causes sync read
|
||||
- Node.js 0.10 compatibility issue
|
||||
|
||||
2.1.2 / 2015-07-05
|
||||
==================
|
||||
|
||||
* Fix error stack traces to skip `makeError`
|
||||
* deps: iconv-lite@0.4.11
|
||||
- Add encoding CESU-8
|
||||
|
||||
2.1.1 / 2015-06-14
|
||||
==================
|
||||
|
||||
* Use `unpipe` module for unpiping requests
|
||||
|
||||
2.1.0 / 2015-05-28
|
||||
==================
|
||||
|
||||
* deps: iconv-lite@0.4.10
|
||||
- Improved UTF-16 endianness detection
|
||||
- Leading BOM is now removed when decoding
|
||||
- The encoding UTF-16 without BOM now defaults to UTF-16LE when detection fails
|
||||
|
||||
2.0.2 / 2015-05-21
|
||||
==================
|
||||
|
||||
* deps: bytes@2.1.0
|
||||
- Slight optimizations
|
||||
|
||||
2.0.1 / 2015-05-10
|
||||
==================
|
||||
|
||||
* Fix a false-positive when unpiping in Node.js 0.8
|
||||
|
||||
2.0.0 / 2015-05-08
|
||||
==================
|
||||
|
||||
* Return a promise without callback instead of thunk
|
||||
* deps: bytes@2.0.1
|
||||
- units no longer case sensitive when parsing
|
||||
|
||||
1.3.4 / 2015-04-15
|
||||
==================
|
||||
|
||||
* Fix hanging callback if request aborts during read
|
||||
* deps: iconv-lite@0.4.8
|
||||
- Add encoding alias UNICODE-1-1-UTF-7
|
||||
|
||||
1.3.3 / 2015-02-08
|
||||
==================
|
||||
|
||||
* deps: iconv-lite@0.4.7
|
||||
- Gracefully support enumerables on `Object.prototype`
|
||||
|
||||
1.3.2 / 2015-01-20
|
||||
==================
|
||||
|
||||
* deps: iconv-lite@0.4.6
|
||||
- Fix rare aliases of single-byte encodings
|
||||
|
||||
1.3.1 / 2014-11-21
|
||||
==================
|
||||
|
||||
* deps: iconv-lite@0.4.5
|
||||
- Fix Windows-31J and X-SJIS encoding support
|
||||
|
||||
1.3.0 / 2014-07-20
|
||||
==================
|
||||
|
||||
* Fully unpipe the stream on error
|
||||
- Fixes `Cannot switch to old mode now` error on Node.js 0.10+
|
||||
|
||||
1.2.3 / 2014-07-20
|
||||
==================
|
||||
|
||||
* deps: iconv-lite@0.4.4
|
||||
- Added encoding UTF-7
|
||||
|
||||
1.2.2 / 2014-06-19
|
||||
==================
|
||||
|
||||
* Send invalid encoding error to callback
|
||||
|
||||
1.2.1 / 2014-06-15
|
||||
==================
|
||||
|
||||
* deps: iconv-lite@0.4.3
|
||||
- Added encodings UTF-16BE and UTF-16 with BOM
|
||||
|
||||
1.2.0 / 2014-06-13
|
||||
==================
|
||||
|
||||
* Passing string as `options` interpreted as encoding
|
||||
* Support all encodings from `iconv-lite`
|
||||
|
||||
1.1.7 / 2014-06-12
|
||||
==================
|
||||
|
||||
* use `string_decoder` module from npm
|
||||
|
||||
1.1.6 / 2014-05-27
|
||||
==================
|
||||
|
||||
* check encoding for old streams1
|
||||
* support node.js < 0.10.6
|
||||
|
||||
1.1.5 / 2014-05-14
|
||||
==================
|
||||
|
||||
* bump bytes
|
||||
|
||||
1.1.4 / 2014-04-19
|
||||
==================
|
||||
|
||||
* allow true as an option
|
||||
* bump bytes
|
||||
|
||||
1.1.3 / 2014-03-02
|
||||
==================
|
||||
|
||||
* fix case when length=null
|
||||
|
||||
1.1.2 / 2013-12-01
|
||||
==================
|
||||
|
||||
* be less strict on state.encoding check
|
||||
|
||||
1.1.1 / 2013-11-27
|
||||
==================
|
||||
|
||||
* add engines
|
||||
|
||||
1.1.0 / 2013-11-27
|
||||
==================
|
||||
|
||||
* add err.statusCode and err.type
|
||||
* allow for encoding option to be true
|
||||
* pause the stream instead of dumping on error
|
||||
* throw if the stream's encoding is set
|
||||
|
||||
1.0.1 / 2013-11-19
|
||||
==================
|
||||
|
||||
* dont support streams1, throw if dev set encoding
|
||||
|
||||
1.0.0 / 2013-11-17
|
||||
==================
|
||||
|
||||
* rename `expected` option to `length`
|
||||
|
||||
0.2.0 / 2013-11-15
|
||||
==================
|
||||
|
||||
* republish
|
||||
|
||||
0.1.1 / 2013-11-15
|
||||
==================
|
||||
|
||||
* use bytes
|
||||
|
||||
0.1.0 / 2013-11-11
|
||||
==================
|
||||
|
||||
* generator support
|
||||
|
||||
0.0.3 / 2013-10-10
|
||||
==================
|
||||
|
||||
* update repo
|
||||
|
||||
0.0.2 / 2013-09-14
|
||||
==================
|
||||
|
||||
* dump stream on bad headers
|
||||
* listen to events after defining received and buffers
|
||||
|
||||
0.0.1 / 2013-09-14
|
||||
==================
|
||||
|
||||
* Initial release
|
||||
@@ -0,0 +1,39 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
function bufFromString(str) {
|
||||
var length = Buffer.byteLength(str);
|
||||
var buffer = Buffer.allocUnsafe
|
||||
? Buffer.allocUnsafe(length)
|
||||
: new Buffer(length);
|
||||
buffer.write(str);
|
||||
return buffer;
|
||||
}
|
||||
exports.bufFromString = bufFromString;
|
||||
function emptyBuffer() {
|
||||
var buffer = Buffer.allocUnsafe
|
||||
? Buffer.allocUnsafe(0)
|
||||
: new Buffer(0);
|
||||
return buffer;
|
||||
}
|
||||
exports.emptyBuffer = emptyBuffer;
|
||||
function filterArray(arr, filter) {
|
||||
var rtn = [];
|
||||
for (var i = 0; i < arr.length; i++) {
|
||||
if (filter.indexOf(i) > -1) {
|
||||
rtn.push(arr[i]);
|
||||
}
|
||||
}
|
||||
return rtn;
|
||||
}
|
||||
exports.filterArray = filterArray;
|
||||
exports.trimLeft = String.prototype.trimLeft ? function trimLeftNative(str) {
|
||||
return str.trimLeft();
|
||||
} : function trimLeftRegExp(str) {
|
||||
return str.replace(/^\s+/, "");
|
||||
};
|
||||
exports.trimRight = String.prototype.trimRight ? function trimRightNative(str) {
|
||||
return str.trimRight();
|
||||
} : function trimRightRegExp(str) {
|
||||
return str.replace(/\s+$/, "");
|
||||
};
|
||||
//# sourceMappingURL=util.js.map
|
||||
@@ -0,0 +1,115 @@
|
||||
'use strict';
|
||||
const os = require('os');
|
||||
const onExit = require('signal-exit');
|
||||
|
||||
const DEFAULT_FORCE_KILL_TIMEOUT = 1000 * 5;
|
||||
|
||||
// Monkey-patches `childProcess.kill()` to add `forceKillAfterTimeout` behavior
|
||||
const spawnedKill = (kill, signal = 'SIGTERM', options = {}) => {
|
||||
const killResult = kill(signal);
|
||||
setKillTimeout(kill, signal, options, killResult);
|
||||
return killResult;
|
||||
};
|
||||
|
||||
const setKillTimeout = (kill, signal, options, killResult) => {
|
||||
if (!shouldForceKill(signal, options, killResult)) {
|
||||
return;
|
||||
}
|
||||
|
||||
const timeout = getForceKillAfterTimeout(options);
|
||||
const t = setTimeout(() => {
|
||||
kill('SIGKILL');
|
||||
}, timeout);
|
||||
|
||||
// Guarded because there's no `.unref()` when `execa` is used in the renderer
|
||||
// process in Electron. This cannot be tested since we don't run tests in
|
||||
// Electron.
|
||||
// istanbul ignore else
|
||||
if (t.unref) {
|
||||
t.unref();
|
||||
}
|
||||
};
|
||||
|
||||
const shouldForceKill = (signal, {forceKillAfterTimeout}, killResult) => {
|
||||
return isSigterm(signal) && forceKillAfterTimeout !== false && killResult;
|
||||
};
|
||||
|
||||
const isSigterm = signal => {
|
||||
return signal === os.constants.signals.SIGTERM ||
|
||||
(typeof signal === 'string' && signal.toUpperCase() === 'SIGTERM');
|
||||
};
|
||||
|
||||
const getForceKillAfterTimeout = ({forceKillAfterTimeout = true}) => {
|
||||
if (forceKillAfterTimeout === true) {
|
||||
return DEFAULT_FORCE_KILL_TIMEOUT;
|
||||
}
|
||||
|
||||
if (!Number.isFinite(forceKillAfterTimeout) || forceKillAfterTimeout < 0) {
|
||||
throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${forceKillAfterTimeout}\` (${typeof forceKillAfterTimeout})`);
|
||||
}
|
||||
|
||||
return forceKillAfterTimeout;
|
||||
};
|
||||
|
||||
// `childProcess.cancel()`
|
||||
const spawnedCancel = (spawned, context) => {
|
||||
const killResult = spawned.kill();
|
||||
|
||||
if (killResult) {
|
||||
context.isCanceled = true;
|
||||
}
|
||||
};
|
||||
|
||||
const timeoutKill = (spawned, signal, reject) => {
|
||||
spawned.kill(signal);
|
||||
reject(Object.assign(new Error('Timed out'), {timedOut: true, signal}));
|
||||
};
|
||||
|
||||
// `timeout` option handling
|
||||
const setupTimeout = (spawned, {timeout, killSignal = 'SIGTERM'}, spawnedPromise) => {
|
||||
if (timeout === 0 || timeout === undefined) {
|
||||
return spawnedPromise;
|
||||
}
|
||||
|
||||
let timeoutId;
|
||||
const timeoutPromise = new Promise((resolve, reject) => {
|
||||
timeoutId = setTimeout(() => {
|
||||
timeoutKill(spawned, killSignal, reject);
|
||||
}, timeout);
|
||||
});
|
||||
|
||||
const safeSpawnedPromise = spawnedPromise.finally(() => {
|
||||
clearTimeout(timeoutId);
|
||||
});
|
||||
|
||||
return Promise.race([timeoutPromise, safeSpawnedPromise]);
|
||||
};
|
||||
|
||||
const validateTimeout = ({timeout}) => {
|
||||
if (timeout !== undefined && (!Number.isFinite(timeout) || timeout < 0)) {
|
||||
throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${timeout}\` (${typeof timeout})`);
|
||||
}
|
||||
};
|
||||
|
||||
// `cleanup` option handling
|
||||
const setExitHandler = async (spawned, {cleanup, detached}, timedPromise) => {
|
||||
if (!cleanup || detached) {
|
||||
return timedPromise;
|
||||
}
|
||||
|
||||
const removeExitHandler = onExit(() => {
|
||||
spawned.kill();
|
||||
});
|
||||
|
||||
return timedPromise.finally(() => {
|
||||
removeExitHandler();
|
||||
});
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
spawnedKill,
|
||||
spawnedCancel,
|
||||
setupTimeout,
|
||||
validateTimeout,
|
||||
setExitHandler
|
||||
};
|
||||
@@ -0,0 +1,22 @@
|
||||
Copyright (c) George Zahariev
|
||||
|
||||
Permission is hereby granted, free of charge, to any person
|
||||
obtaining a copy of this software and associated documentation
|
||||
files (the "Software"), to deal in the Software without
|
||||
restriction, including without limitation the rights to use,
|
||||
copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the
|
||||
Software is furnished to do so, subject to the following
|
||||
conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
OTHER DEALINGS IN THE SOFTWARE.
|
||||
@@ -0,0 +1,115 @@
|
||||
/**
|
||||
* @since v0.3.7
|
||||
*/
|
||||
declare module 'module' {
|
||||
import { URL } from 'node:url';
|
||||
namespace Module {
|
||||
/**
|
||||
* The `module.syncBuiltinESMExports()` method updates all the live bindings for
|
||||
* builtin `ES Modules` to match the properties of the `CommonJS` exports. It
|
||||
* does not add or remove exported names from the `ES Modules`.
|
||||
*
|
||||
* ```js
|
||||
* const fs = require('fs');
|
||||
* const assert = require('assert');
|
||||
* const { syncBuiltinESMExports } = require('module');
|
||||
*
|
||||
* fs.readFile = newAPI;
|
||||
*
|
||||
* delete fs.readFileSync;
|
||||
*
|
||||
* function newAPI() {
|
||||
* // ...
|
||||
* }
|
||||
*
|
||||
* fs.newAPI = newAPI;
|
||||
*
|
||||
* syncBuiltinESMExports();
|
||||
*
|
||||
* import('fs').then((esmFS) => {
|
||||
* // It syncs the existing readFile property with the new value
|
||||
* assert.strictEqual(esmFS.readFile, newAPI);
|
||||
* // readFileSync has been deleted from the required fs
|
||||
* assert.strictEqual('readFileSync' in fs, false);
|
||||
* // syncBuiltinESMExports() does not remove readFileSync from esmFS
|
||||
* assert.strictEqual('readFileSync' in esmFS, true);
|
||||
* // syncBuiltinESMExports() does not add names
|
||||
* assert.strictEqual(esmFS.newAPI, undefined);
|
||||
* });
|
||||
* ```
|
||||
* @since v12.12.0
|
||||
*/
|
||||
function syncBuiltinESMExports(): void;
|
||||
/**
|
||||
* `path` is the resolved path for the file for which a corresponding source map
|
||||
* should be fetched.
|
||||
* @since v13.7.0, v12.17.0
|
||||
*/
|
||||
function findSourceMap(path: string, error?: Error): SourceMap;
|
||||
interface SourceMapPayload {
|
||||
file: string;
|
||||
version: number;
|
||||
sources: string[];
|
||||
sourcesContent: string[];
|
||||
names: string[];
|
||||
mappings: string;
|
||||
sourceRoot: string;
|
||||
}
|
||||
interface SourceMapping {
|
||||
generatedLine: number;
|
||||
generatedColumn: number;
|
||||
originalSource: string;
|
||||
originalLine: number;
|
||||
originalColumn: number;
|
||||
}
|
||||
/**
|
||||
* @since v13.7.0, v12.17.0
|
||||
*/
|
||||
class SourceMap {
|
||||
/**
|
||||
* Getter for the payload used to construct the `SourceMap` instance.
|
||||
*/
|
||||
readonly payload: SourceMapPayload;
|
||||
constructor(payload: SourceMapPayload);
|
||||
/**
|
||||
* Given a line number and column number in the generated source file, returns
|
||||
* an object representing the position in the original file. The object returned
|
||||
* consists of the following keys:
|
||||
*/
|
||||
findEntry(line: number, column: number): SourceMapping;
|
||||
}
|
||||
}
|
||||
interface Module extends NodeModule {}
|
||||
class Module {
|
||||
static runMain(): void;
|
||||
static wrap(code: string): string;
|
||||
static createRequire(path: string | URL): NodeRequire;
|
||||
static builtinModules: string[];
|
||||
static isBuiltin(moduleName: string): boolean;
|
||||
static Module: typeof Module;
|
||||
constructor(id: string, parent?: Module);
|
||||
}
|
||||
global {
|
||||
interface ImportMeta {
|
||||
url: string;
|
||||
/**
|
||||
* @experimental
|
||||
* This feature is only available with the `--experimental-import-meta-resolve`
|
||||
* command flag enabled.
|
||||
*
|
||||
* Provides a module-relative resolution function scoped to each module, returning
|
||||
* the URL string.
|
||||
*
|
||||
* @param specified The module specifier to resolve relative to `parent`.
|
||||
* @param parent The absolute parent module URL to resolve from. If none
|
||||
* is specified, the value of `import.meta.url` is used as the default.
|
||||
*/
|
||||
resolve?(specified: string, parent?: string | URL): Promise<string>;
|
||||
}
|
||||
}
|
||||
export = Module;
|
||||
}
|
||||
declare module 'node:module' {
|
||||
import module = require('module');
|
||||
export = module;
|
||||
}
|
||||
@@ -0,0 +1,92 @@
|
||||
var common = require('./common');
|
||||
var fs = require('fs');
|
||||
|
||||
// add c spaces to the left of str
|
||||
function lpad(c, str) {
|
||||
var res = '' + str;
|
||||
if (res.length < c) {
|
||||
res = Array((c - res.length) + 1).join(' ') + res;
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
common.register('uniq', _uniq, {
|
||||
canReceivePipe: true,
|
||||
cmdOptions: {
|
||||
'i': 'ignoreCase',
|
||||
'c': 'count',
|
||||
'd': 'duplicates',
|
||||
},
|
||||
});
|
||||
|
||||
//@
|
||||
//@ ### uniq([options,] [input, [output]])
|
||||
//@
|
||||
//@ Available options:
|
||||
//@
|
||||
//@ + `-i`: Ignore case while comparing
|
||||
//@ + `-c`: Prefix lines by the number of occurrences
|
||||
//@ + `-d`: Only print duplicate lines, one for each group of identical lines
|
||||
//@
|
||||
//@ Examples:
|
||||
//@
|
||||
//@ ```javascript
|
||||
//@ uniq('foo.txt');
|
||||
//@ uniq('-i', 'foo.txt');
|
||||
//@ uniq('-cd', 'foo.txt', 'bar.txt');
|
||||
//@ ```
|
||||
//@
|
||||
//@ Filter adjacent matching lines from `input`.
|
||||
function _uniq(options, input, output) {
|
||||
// Check if this is coming from a pipe
|
||||
var pipe = common.readFromPipe();
|
||||
|
||||
if (!pipe) {
|
||||
if (!input) common.error('no input given');
|
||||
|
||||
if (!fs.existsSync(input)) {
|
||||
common.error(input + ': No such file or directory');
|
||||
} else if (common.statFollowLinks(input).isDirectory()) {
|
||||
common.error("error reading '" + input + "'");
|
||||
}
|
||||
}
|
||||
if (output && fs.existsSync(output) && common.statFollowLinks(output).isDirectory()) {
|
||||
common.error(output + ': Is a directory');
|
||||
}
|
||||
|
||||
var lines = (input ? fs.readFileSync(input, 'utf8') : pipe).
|
||||
trimRight().
|
||||
split('\n');
|
||||
|
||||
var compare = function (a, b) {
|
||||
return options.ignoreCase ?
|
||||
a.toLocaleLowerCase().localeCompare(b.toLocaleLowerCase()) :
|
||||
a.localeCompare(b);
|
||||
};
|
||||
var uniqed = lines.reduceRight(function (res, e) {
|
||||
// Perform uniq -c on the input
|
||||
if (res.length === 0) {
|
||||
return [{ count: 1, ln: e }];
|
||||
} else if (compare(res[0].ln, e) === 0) {
|
||||
return [{ count: res[0].count + 1, ln: e }].concat(res.slice(1));
|
||||
} else {
|
||||
return [{ count: 1, ln: e }].concat(res);
|
||||
}
|
||||
}, []).filter(function (obj) {
|
||||
// Do we want only duplicated objects?
|
||||
return options.duplicates ? obj.count > 1 : true;
|
||||
}).map(function (obj) {
|
||||
// Are we tracking the counts of each line?
|
||||
return (options.count ? (lpad(7, obj.count) + ' ') : '') + obj.ln;
|
||||
}).join('\n') + '\n';
|
||||
|
||||
if (output) {
|
||||
(new common.ShellString(uniqed)).to(output);
|
||||
// if uniq writes to output, nothing is passed to the next command in the pipeline (if any)
|
||||
return '';
|
||||
} else {
|
||||
return uniqed;
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = _uniq;
|
||||
@@ -0,0 +1,5 @@
|
||||
var convert = require('./convert'),
|
||||
func = convert('sumBy', require('../sumBy'));
|
||||
|
||||
func.placeholder = require('./placeholder');
|
||||
module.exports = func;
|
||||
@@ -0,0 +1 @@
|
||||
module.exports={A:{A:{"1":"A B","2":"J D E F CC"},B:{"1":"C K L G M N O P Q R S T U V W X Y Z a b c d e i j k l m n o p q r s t u f H"},C:{"1":"0 1 2 3 4 5 6 7 8 9 I v J D E F A B C K L G M N O w g x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB QB RB SB TB UB VB WB XB YB uB ZB vB aB bB cB dB eB fB gB hB iB jB kB h lB mB nB oB pB P Q R wB S T U V W X Y Z a b c d e i j k l m n o p q r s t u f H xB yB","2":"DC tB EC FC"},D:{"1":"0 1 2 3 4 5 6 7 8 9 v J D E F A B C K L G M N O w g x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB QB RB SB TB UB VB WB XB YB uB ZB vB aB bB cB dB eB fB gB hB iB jB kB h lB mB nB oB pB P Q R S T U V W X Y Z a b c d e i j k l m n o p q r s t u f H xB yB GC","2":"I"},E:{"1":"v J D E F A B C K L G IC JC KC LC 0B qB rB 1B MC NC 2B 3B 4B 5B sB 6B 7B 8B 9B OC","2":"I HC zB"},F:{"1":"0 1 2 3 4 5 6 7 8 9 B C G M N O w g x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB QB RB SB TB UB VB WB XB YB ZB aB bB cB dB eB fB gB hB iB jB kB h lB mB nB oB pB P Q R wB S T U V W X Y Z a b c d e PC QC RC SC qB AC TC rB","2":"F"},G:{"2":"E zB UC BC VC WC XC YC ZC aC bC cC dC eC fC gC hC iC jC kC lC mC nC 2B 3B 4B 5B sB 6B 7B 8B 9B"},H:{"2":"oC"},I:{"1":"tB I f sC BC tC uC","2":"pC qC rC"},J:{"1":"D A"},K:{"1":"h","2":"A B C qB AC rB"},L:{"1":"H"},M:{"1":"H"},N:{"1":"A B"},O:{"1":"vC"},P:{"1":"I g wC xC yC zC 0C 0B 1C 2C 3C 4C 5C sB 6C 7C 8C"},Q:{"1":"1B"},R:{"1":"9C"},S:{"1":"BD","2":"AD"}},B:1,C:"Autofocus attribute"};
|
||||
@@ -0,0 +1,22 @@
|
||||
var baseFlatten = require('./_baseFlatten');
|
||||
|
||||
/**
|
||||
* Flattens `array` a single level deep.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @since 0.1.0
|
||||
* @category Array
|
||||
* @param {Array} array The array to flatten.
|
||||
* @returns {Array} Returns the new flattened array.
|
||||
* @example
|
||||
*
|
||||
* _.flatten([1, [2, [3, [4]], 5]]);
|
||||
* // => [1, 2, [3, [4]], 5]
|
||||
*/
|
||||
function flatten(array) {
|
||||
var length = array == null ? 0 : array.length;
|
||||
return length ? baseFlatten(array, 1) : [];
|
||||
}
|
||||
|
||||
module.exports = flatten;
|
||||
@@ -0,0 +1 @@
|
||||
module.exports={A:{A:{"2":"J D E F A B CC"},B:{"1":"P Q R S T U V W X Y Z a b c d e i j k l m n o p q r s t u f H","2":"C K L G M N O"},C:{"1":"0 1 2 3 4 5 6 7 8 9 tB I v J D E F A B C K L G M N O w g x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB QB RB SB TB UB VB WB XB YB uB ZB vB aB bB cB dB eB fB gB hB iB jB kB h lB mB nB oB pB P Q R wB S T U V W X Y Z a b c d e i j k l m n o p q r s t u f H xB yB EC FC","2":"DC"},D:{"1":"uB ZB vB aB bB cB dB eB fB gB hB iB jB kB h lB mB nB oB pB P Q R S T U V W X Y Z a b c d e i j k l m n o p q r s t u f H xB yB GC","2":"0 1 2 3 4 5 6 7 8 9 I v J D E F A B C K L G M N O w g x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB QB RB SB TB UB VB WB XB YB"},E:{"1":"E F A B C K L G LC 0B qB rB 1B MC NC 2B 3B 4B 5B sB 6B 7B 8B 9B OC","2":"I v J D HC zB IC JC KC"},F:{"1":"B C MB NB OB PB QB RB SB TB UB VB WB XB YB ZB aB bB cB dB eB fB gB hB iB jB kB h lB mB nB oB pB P Q R wB S T U V W X Y Z a b c d e PC QC RC SC qB AC TC rB","2":"0 1 2 3 4 5 6 7 8 9 F G M N O w g x y z AB BB CB DB EB FB GB HB IB JB KB LB"},G:{"1":"E YC ZC aC bC cC dC eC fC gC hC iC jC kC lC mC nC 2B 3B 4B 5B sB 6B 7B 8B 9B","2":"zB UC BC VC WC XC"},H:{"2":"oC"},I:{"1":"f","2":"tB I pC qC rC sC BC tC uC"},J:{"2":"D A"},K:{"1":"A B C h qB AC rB"},L:{"1":"H"},M:{"1":"H"},N:{"2":"A B"},O:{"1":"vC"},P:{"1":"g yC zC 0C 0B 1C 2C 3C 4C 5C sB 6C 7C 8C","2":"I wC xC"},Q:{"1":"1B"},R:{"1":"9C"},S:{"1":"AD BD"}},B:5,C:"Animated PNG (APNG)"};
|
||||
@@ -0,0 +1,5 @@
|
||||
export class SubscriptionLog {
|
||||
constructor(public subscribedFrame: number,
|
||||
public unsubscribedFrame: number = Infinity) {
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"root": true,
|
||||
|
||||
"extends": "@ljharb",
|
||||
|
||||
"rules": {
|
||||
"eqeqeq": [2, "allow-null"],
|
||||
"id-length": 0,
|
||||
},
|
||||
|
||||
"overrides": [
|
||||
{
|
||||
"files": "test/**",
|
||||
"rules": {
|
||||
"max-lines-per-function": 0,
|
||||
},
|
||||
},
|
||||
],
|
||||
}
|
||||
@@ -0,0 +1,266 @@
|
||||
'use strict'
|
||||
|
||||
const SINGLE_QUOTE = "'".charCodeAt(0)
|
||||
const DOUBLE_QUOTE = '"'.charCodeAt(0)
|
||||
const BACKSLASH = '\\'.charCodeAt(0)
|
||||
const SLASH = '/'.charCodeAt(0)
|
||||
const NEWLINE = '\n'.charCodeAt(0)
|
||||
const SPACE = ' '.charCodeAt(0)
|
||||
const FEED = '\f'.charCodeAt(0)
|
||||
const TAB = '\t'.charCodeAt(0)
|
||||
const CR = '\r'.charCodeAt(0)
|
||||
const OPEN_SQUARE = '['.charCodeAt(0)
|
||||
const CLOSE_SQUARE = ']'.charCodeAt(0)
|
||||
const OPEN_PARENTHESES = '('.charCodeAt(0)
|
||||
const CLOSE_PARENTHESES = ')'.charCodeAt(0)
|
||||
const OPEN_CURLY = '{'.charCodeAt(0)
|
||||
const CLOSE_CURLY = '}'.charCodeAt(0)
|
||||
const SEMICOLON = ';'.charCodeAt(0)
|
||||
const ASTERISK = '*'.charCodeAt(0)
|
||||
const COLON = ':'.charCodeAt(0)
|
||||
const AT = '@'.charCodeAt(0)
|
||||
|
||||
const RE_AT_END = /[\t\n\f\r "#'()/;[\\\]{}]/g
|
||||
const RE_WORD_END = /[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g
|
||||
const RE_BAD_BRACKET = /.[\n"'(/\\]/
|
||||
const RE_HEX_ESCAPE = /[\da-f]/i
|
||||
|
||||
module.exports = function tokenizer(input, options = {}) {
|
||||
let css = input.css.valueOf()
|
||||
let ignore = options.ignoreErrors
|
||||
|
||||
let code, next, quote, content, escape
|
||||
let escaped, escapePos, prev, n, currentToken
|
||||
|
||||
let length = css.length
|
||||
let pos = 0
|
||||
let buffer = []
|
||||
let returned = []
|
||||
|
||||
function position() {
|
||||
return pos
|
||||
}
|
||||
|
||||
function unclosed(what) {
|
||||
throw input.error('Unclosed ' + what, pos)
|
||||
}
|
||||
|
||||
function endOfFile() {
|
||||
return returned.length === 0 && pos >= length
|
||||
}
|
||||
|
||||
function nextToken(opts) {
|
||||
if (returned.length) return returned.pop()
|
||||
if (pos >= length) return
|
||||
|
||||
let ignoreUnclosed = opts ? opts.ignoreUnclosed : false
|
||||
|
||||
code = css.charCodeAt(pos)
|
||||
|
||||
switch (code) {
|
||||
case NEWLINE:
|
||||
case SPACE:
|
||||
case TAB:
|
||||
case CR:
|
||||
case FEED: {
|
||||
next = pos
|
||||
do {
|
||||
next += 1
|
||||
code = css.charCodeAt(next)
|
||||
} while (
|
||||
code === SPACE ||
|
||||
code === NEWLINE ||
|
||||
code === TAB ||
|
||||
code === CR ||
|
||||
code === FEED
|
||||
)
|
||||
|
||||
currentToken = ['space', css.slice(pos, next)]
|
||||
pos = next - 1
|
||||
break
|
||||
}
|
||||
|
||||
case OPEN_SQUARE:
|
||||
case CLOSE_SQUARE:
|
||||
case OPEN_CURLY:
|
||||
case CLOSE_CURLY:
|
||||
case COLON:
|
||||
case SEMICOLON:
|
||||
case CLOSE_PARENTHESES: {
|
||||
let controlChar = String.fromCharCode(code)
|
||||
currentToken = [controlChar, controlChar, pos]
|
||||
break
|
||||
}
|
||||
|
||||
case OPEN_PARENTHESES: {
|
||||
prev = buffer.length ? buffer.pop()[1] : ''
|
||||
n = css.charCodeAt(pos + 1)
|
||||
if (
|
||||
prev === 'url' &&
|
||||
n !== SINGLE_QUOTE &&
|
||||
n !== DOUBLE_QUOTE &&
|
||||
n !== SPACE &&
|
||||
n !== NEWLINE &&
|
||||
n !== TAB &&
|
||||
n !== FEED &&
|
||||
n !== CR
|
||||
) {
|
||||
next = pos
|
||||
do {
|
||||
escaped = false
|
||||
next = css.indexOf(')', next + 1)
|
||||
if (next === -1) {
|
||||
if (ignore || ignoreUnclosed) {
|
||||
next = pos
|
||||
break
|
||||
} else {
|
||||
unclosed('bracket')
|
||||
}
|
||||
}
|
||||
escapePos = next
|
||||
while (css.charCodeAt(escapePos - 1) === BACKSLASH) {
|
||||
escapePos -= 1
|
||||
escaped = !escaped
|
||||
}
|
||||
} while (escaped)
|
||||
|
||||
currentToken = ['brackets', css.slice(pos, next + 1), pos, next]
|
||||
|
||||
pos = next
|
||||
} else {
|
||||
next = css.indexOf(')', pos + 1)
|
||||
content = css.slice(pos, next + 1)
|
||||
|
||||
if (next === -1 || RE_BAD_BRACKET.test(content)) {
|
||||
currentToken = ['(', '(', pos]
|
||||
} else {
|
||||
currentToken = ['brackets', content, pos, next]
|
||||
pos = next
|
||||
}
|
||||
}
|
||||
|
||||
break
|
||||
}
|
||||
|
||||
case SINGLE_QUOTE:
|
||||
case DOUBLE_QUOTE: {
|
||||
quote = code === SINGLE_QUOTE ? "'" : '"'
|
||||
next = pos
|
||||
do {
|
||||
escaped = false
|
||||
next = css.indexOf(quote, next + 1)
|
||||
if (next === -1) {
|
||||
if (ignore || ignoreUnclosed) {
|
||||
next = pos + 1
|
||||
break
|
||||
} else {
|
||||
unclosed('string')
|
||||
}
|
||||
}
|
||||
escapePos = next
|
||||
while (css.charCodeAt(escapePos - 1) === BACKSLASH) {
|
||||
escapePos -= 1
|
||||
escaped = !escaped
|
||||
}
|
||||
} while (escaped)
|
||||
|
||||
currentToken = ['string', css.slice(pos, next + 1), pos, next]
|
||||
pos = next
|
||||
break
|
||||
}
|
||||
|
||||
case AT: {
|
||||
RE_AT_END.lastIndex = pos + 1
|
||||
RE_AT_END.test(css)
|
||||
if (RE_AT_END.lastIndex === 0) {
|
||||
next = css.length - 1
|
||||
} else {
|
||||
next = RE_AT_END.lastIndex - 2
|
||||
}
|
||||
|
||||
currentToken = ['at-word', css.slice(pos, next + 1), pos, next]
|
||||
|
||||
pos = next
|
||||
break
|
||||
}
|
||||
|
||||
case BACKSLASH: {
|
||||
next = pos
|
||||
escape = true
|
||||
while (css.charCodeAt(next + 1) === BACKSLASH) {
|
||||
next += 1
|
||||
escape = !escape
|
||||
}
|
||||
code = css.charCodeAt(next + 1)
|
||||
if (
|
||||
escape &&
|
||||
code !== SLASH &&
|
||||
code !== SPACE &&
|
||||
code !== NEWLINE &&
|
||||
code !== TAB &&
|
||||
code !== CR &&
|
||||
code !== FEED
|
||||
) {
|
||||
next += 1
|
||||
if (RE_HEX_ESCAPE.test(css.charAt(next))) {
|
||||
while (RE_HEX_ESCAPE.test(css.charAt(next + 1))) {
|
||||
next += 1
|
||||
}
|
||||
if (css.charCodeAt(next + 1) === SPACE) {
|
||||
next += 1
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
currentToken = ['word', css.slice(pos, next + 1), pos, next]
|
||||
|
||||
pos = next
|
||||
break
|
||||
}
|
||||
|
||||
default: {
|
||||
if (code === SLASH && css.charCodeAt(pos + 1) === ASTERISK) {
|
||||
next = css.indexOf('*/', pos + 2) + 1
|
||||
if (next === 0) {
|
||||
if (ignore || ignoreUnclosed) {
|
||||
next = css.length
|
||||
} else {
|
||||
unclosed('comment')
|
||||
}
|
||||
}
|
||||
|
||||
currentToken = ['comment', css.slice(pos, next + 1), pos, next]
|
||||
pos = next
|
||||
} else {
|
||||
RE_WORD_END.lastIndex = pos + 1
|
||||
RE_WORD_END.test(css)
|
||||
if (RE_WORD_END.lastIndex === 0) {
|
||||
next = css.length - 1
|
||||
} else {
|
||||
next = RE_WORD_END.lastIndex - 2
|
||||
}
|
||||
|
||||
currentToken = ['word', css.slice(pos, next + 1), pos, next]
|
||||
buffer.push(currentToken)
|
||||
pos = next
|
||||
}
|
||||
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
pos++
|
||||
return currentToken
|
||||
}
|
||||
|
||||
function back(token) {
|
||||
returned.push(token)
|
||||
}
|
||||
|
||||
return {
|
||||
back,
|
||||
nextToken,
|
||||
endOfFile,
|
||||
position
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
import { Pattern, MicromatchOptions, PatternRe } from '../../types';
|
||||
import Settings from '../../settings';
|
||||
export declare type PatternSegment = StaticPatternSegment | DynamicPatternSegment;
|
||||
declare type StaticPatternSegment = {
|
||||
dynamic: false;
|
||||
pattern: Pattern;
|
||||
};
|
||||
declare type DynamicPatternSegment = {
|
||||
dynamic: true;
|
||||
pattern: Pattern;
|
||||
patternRe: PatternRe;
|
||||
};
|
||||
export declare type PatternSection = PatternSegment[];
|
||||
export declare type PatternInfo = {
|
||||
/**
|
||||
* Indicates that the pattern has a globstar (more than a single section).
|
||||
*/
|
||||
complete: boolean;
|
||||
pattern: Pattern;
|
||||
segments: PatternSegment[];
|
||||
sections: PatternSection[];
|
||||
};
|
||||
export default abstract class Matcher {
|
||||
private readonly _patterns;
|
||||
private readonly _settings;
|
||||
private readonly _micromatchOptions;
|
||||
protected readonly _storage: PatternInfo[];
|
||||
constructor(_patterns: Pattern[], _settings: Settings, _micromatchOptions: MicromatchOptions);
|
||||
private _fillStorage;
|
||||
private _getPatternSegments;
|
||||
private _splitSegmentsIntoSections;
|
||||
}
|
||||
export {};
|
||||
@@ -0,0 +1,29 @@
|
||||
var baseLt = require('./_baseLt'),
|
||||
createRelationalOperation = require('./_createRelationalOperation');
|
||||
|
||||
/**
|
||||
* Checks if `value` is less than `other`.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @since 3.9.0
|
||||
* @category Lang
|
||||
* @param {*} value The value to compare.
|
||||
* @param {*} other The other value to compare.
|
||||
* @returns {boolean} Returns `true` if `value` is less than `other`,
|
||||
* else `false`.
|
||||
* @see _.gt
|
||||
* @example
|
||||
*
|
||||
* _.lt(1, 3);
|
||||
* // => true
|
||||
*
|
||||
* _.lt(3, 3);
|
||||
* // => false
|
||||
*
|
||||
* _.lt(3, 1);
|
||||
* // => false
|
||||
*/
|
||||
var lt = createRelationalOperation(baseLt);
|
||||
|
||||
module.exports = lt;
|
||||
@@ -0,0 +1,16 @@
|
||||
# Installation
|
||||
> `npm install --save @types/clean-css`
|
||||
|
||||
# Summary
|
||||
This package contains type definitions for clean-css (https://github.com/clean-css/clean-css).
|
||||
|
||||
# Details
|
||||
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/clean-css.
|
||||
|
||||
### Additional Details
|
||||
* Last updated: Wed, 21 Sep 2022 20:02:43 GMT
|
||||
* Dependencies: [@types/node](https://npmjs.com/package/@types/node), [@types/source-map](https://npmjs.com/package/@types/source-map)
|
||||
* Global values: none
|
||||
|
||||
# Credits
|
||||
These definitions were written by [Tanguy Krotoff](https://github.com/tkrotoff), and [Andrew Potter](https://github.com/GolaWaya).
|
||||
@@ -0,0 +1,30 @@
|
||||
var createToPairs = require('./_createToPairs'),
|
||||
keysIn = require('./keysIn');
|
||||
|
||||
/**
|
||||
* Creates an array of own and inherited enumerable string keyed-value pairs
|
||||
* for `object` which can be consumed by `_.fromPairs`. If `object` is a map
|
||||
* or set, its entries are returned.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @since 4.0.0
|
||||
* @alias entriesIn
|
||||
* @category Object
|
||||
* @param {Object} object The object to query.
|
||||
* @returns {Array} Returns the key-value pairs.
|
||||
* @example
|
||||
*
|
||||
* function Foo() {
|
||||
* this.a = 1;
|
||||
* this.b = 2;
|
||||
* }
|
||||
*
|
||||
* Foo.prototype.c = 3;
|
||||
*
|
||||
* _.toPairsIn(new Foo);
|
||||
* // => [['a', 1], ['b', 2], ['c', 3]] (iteration order is not guaranteed)
|
||||
*/
|
||||
var toPairsIn = createToPairs(keysIn);
|
||||
|
||||
module.exports = toPairsIn;
|
||||
@@ -0,0 +1,10 @@
|
||||
import { MonoTypeOperatorFunction, SchedulerLike } from '../types';
|
||||
export interface ShareReplayConfig {
|
||||
bufferSize?: number;
|
||||
windowTime?: number;
|
||||
refCount: boolean;
|
||||
scheduler?: SchedulerLike;
|
||||
}
|
||||
export declare function shareReplay<T>(config: ShareReplayConfig): MonoTypeOperatorFunction<T>;
|
||||
export declare function shareReplay<T>(bufferSize?: number, windowTime?: number, scheduler?: SchedulerLike): MonoTypeOperatorFunction<T>;
|
||||
//# sourceMappingURL=shareReplay.d.ts.map
|
||||
@@ -0,0 +1,27 @@
|
||||
import type {Except} from './except';
|
||||
import type {Simplify} from './simplify';
|
||||
|
||||
type Merge_<FirstType, SecondType> = Except<FirstType, Extract<keyof FirstType, keyof SecondType>> & SecondType;
|
||||
|
||||
/**
|
||||
Merge two types into a new type. Keys of the second type overrides keys of the first type.
|
||||
|
||||
@example
|
||||
```
|
||||
import type {Merge} from 'type-fest';
|
||||
|
||||
type Foo = {
|
||||
a: number;
|
||||
b: string;
|
||||
};
|
||||
|
||||
type Bar = {
|
||||
b: number;
|
||||
};
|
||||
|
||||
const ab: Merge<Foo, Bar> = {a: 1, b: 2};
|
||||
```
|
||||
|
||||
@category Object
|
||||
*/
|
||||
export type Merge<FirstType, SecondType> = Simplify<Merge_<FirstType, SecondType>>;
|
||||
@@ -0,0 +1,39 @@
|
||||
// Thanks @mathiasbynens
|
||||
// http://mathiasbynens.be/notes/javascript-unicode#iterating-over-symbols
|
||||
|
||||
"use strict";
|
||||
|
||||
var setPrototypeOf = require("es5-ext/object/set-prototype-of")
|
||||
, d = require("d")
|
||||
, Symbol = require("es6-symbol")
|
||||
, Iterator = require("./");
|
||||
|
||||
var defineProperty = Object.defineProperty, StringIterator;
|
||||
|
||||
StringIterator = module.exports = function (str) {
|
||||
if (!(this instanceof StringIterator)) throw new TypeError("Constructor requires 'new'");
|
||||
str = String(str);
|
||||
Iterator.call(this, str);
|
||||
defineProperty(this, "__length__", d("", str.length));
|
||||
};
|
||||
if (setPrototypeOf) setPrototypeOf(StringIterator, Iterator);
|
||||
|
||||
// Internal %ArrayIteratorPrototype% doesn't expose its constructor
|
||||
delete StringIterator.prototype.constructor;
|
||||
|
||||
StringIterator.prototype = Object.create(Iterator.prototype, {
|
||||
_next: d(function () {
|
||||
if (!this.__list__) return undefined;
|
||||
if (this.__nextIndex__ < this.__length__) return this.__nextIndex__++;
|
||||
this._unBind();
|
||||
return undefined;
|
||||
}),
|
||||
_resolve: d(function (i) {
|
||||
var char = this.__list__[i], code;
|
||||
if (this.__nextIndex__ === this.__length__) return char;
|
||||
code = char.charCodeAt(0);
|
||||
if (code >= 0xd800 && code <= 0xdbff) return char + this.__list__[this.__nextIndex__++];
|
||||
return char;
|
||||
})
|
||||
});
|
||||
defineProperty(StringIterator.prototype, Symbol.toStringTag, d("c", "String Iterator"));
|
||||
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"http-errors","version":"2.0.0","files":{"LICENSE":{"checkedAt":1678883672270,"integrity":"sha512-IlBI/ecFfFWsTftdr4pcQokKJYBEOZOhZW24ByAxG4NQEkIWRlQUbXHQKPO7qKsnFilv16bewfxJ8bNxqNYT5Q==","mode":420,"size":1168},"index.js":{"checkedAt":1678883672270,"integrity":"sha512-2bsjmcZZrz+eCHY7aRGb/57umF7m3HGFuvhdWUBfyvdlqAj7mYVTKQQZss9HlFQ6b9RRe/M4rNqD8xPaYkIxUA==","mode":420,"size":6391},"package.json":{"checkedAt":1678883672270,"integrity":"sha512-uLUjzv5o/C9OVatlbwJFV9qSU2CvnlrfkUOuVffpPnrT/pXngJ/Q90BrUApSXHdzKe/OIZz80OiLczdtCYwIqw==","mode":420,"size":1314},"HISTORY.md":{"checkedAt":1678883672271,"integrity":"sha512-h3ST8f8phCmJInd9M6Ftp3rdkwZO549hklIF7ErdXN+somKXyBWMmnBOcKoB1Gi9ngAdXgB1+hjRpgw1J+7UsA==","mode":420,"size":3973},"README.md":{"checkedAt":1678883672274,"integrity":"sha512-J0k92IjwCfUubpJtTZuA8WL1DBFTTXcfCWbZych1/Fc4VArfJNvAo+gcf8JIvMiPEIFcvXMI6FNgxrEnPOXsNA==","mode":420,"size":5962}}}
|
||||
@@ -0,0 +1,26 @@
|
||||
import { Subject } from '../Subject';
|
||||
import { Observable } from '../Observable';
|
||||
import { defer } from './defer';
|
||||
const DEFAULT_CONFIG = {
|
||||
connector: () => new Subject(),
|
||||
resetOnDisconnect: true,
|
||||
};
|
||||
export function connectable(source, config = DEFAULT_CONFIG) {
|
||||
let connection = null;
|
||||
const { connector, resetOnDisconnect = true } = config;
|
||||
let subject = connector();
|
||||
const result = new Observable((subscriber) => {
|
||||
return subject.subscribe(subscriber);
|
||||
});
|
||||
result.connect = () => {
|
||||
if (!connection || connection.closed) {
|
||||
connection = defer(() => source).subscribe(subject);
|
||||
if (resetOnDisconnect) {
|
||||
connection.add(() => (subject = connector()));
|
||||
}
|
||||
}
|
||||
return connection;
|
||||
};
|
||||
return result;
|
||||
}
|
||||
//# sourceMappingURL=connectable.js.map
|
||||
@@ -0,0 +1,27 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.sample = void 0;
|
||||
var innerFrom_1 = require("../observable/innerFrom");
|
||||
var lift_1 = require("../util/lift");
|
||||
var noop_1 = require("../util/noop");
|
||||
var OperatorSubscriber_1 = require("./OperatorSubscriber");
|
||||
function sample(notifier) {
|
||||
return lift_1.operate(function (source, subscriber) {
|
||||
var hasValue = false;
|
||||
var lastValue = null;
|
||||
source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {
|
||||
hasValue = true;
|
||||
lastValue = value;
|
||||
}));
|
||||
innerFrom_1.innerFrom(notifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function () {
|
||||
if (hasValue) {
|
||||
hasValue = false;
|
||||
var value = lastValue;
|
||||
lastValue = null;
|
||||
subscriber.next(value);
|
||||
}
|
||||
}, noop_1.noop));
|
||||
});
|
||||
}
|
||||
exports.sample = sample;
|
||||
//# sourceMappingURL=sample.js.map
|
||||
@@ -0,0 +1,84 @@
|
||||
var SetCache = require('./_SetCache'),
|
||||
arraySome = require('./_arraySome'),
|
||||
cacheHas = require('./_cacheHas');
|
||||
|
||||
/** Used to compose bitmasks for value comparisons. */
|
||||
var COMPARE_PARTIAL_FLAG = 1,
|
||||
COMPARE_UNORDERED_FLAG = 2;
|
||||
|
||||
/**
|
||||
* A specialized version of `baseIsEqualDeep` for arrays with support for
|
||||
* partial deep comparisons.
|
||||
*
|
||||
* @private
|
||||
* @param {Array} array The array to compare.
|
||||
* @param {Array} other The other array to compare.
|
||||
* @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
|
||||
* @param {Function} customizer The function to customize comparisons.
|
||||
* @param {Function} equalFunc The function to determine equivalents of values.
|
||||
* @param {Object} stack Tracks traversed `array` and `other` objects.
|
||||
* @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.
|
||||
*/
|
||||
function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {
|
||||
var isPartial = bitmask & COMPARE_PARTIAL_FLAG,
|
||||
arrLength = array.length,
|
||||
othLength = other.length;
|
||||
|
||||
if (arrLength != othLength && !(isPartial && othLength > arrLength)) {
|
||||
return false;
|
||||
}
|
||||
// Check that cyclic values are equal.
|
||||
var arrStacked = stack.get(array);
|
||||
var othStacked = stack.get(other);
|
||||
if (arrStacked && othStacked) {
|
||||
return arrStacked == other && othStacked == array;
|
||||
}
|
||||
var index = -1,
|
||||
result = true,
|
||||
seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;
|
||||
|
||||
stack.set(array, other);
|
||||
stack.set(other, array);
|
||||
|
||||
// Ignore non-index properties.
|
||||
while (++index < arrLength) {
|
||||
var arrValue = array[index],
|
||||
othValue = other[index];
|
||||
|
||||
if (customizer) {
|
||||
var compared = isPartial
|
||||
? customizer(othValue, arrValue, index, other, array, stack)
|
||||
: customizer(arrValue, othValue, index, array, other, stack);
|
||||
}
|
||||
if (compared !== undefined) {
|
||||
if (compared) {
|
||||
continue;
|
||||
}
|
||||
result = false;
|
||||
break;
|
||||
}
|
||||
// Recursively compare arrays (susceptible to call stack limits).
|
||||
if (seen) {
|
||||
if (!arraySome(other, function(othValue, othIndex) {
|
||||
if (!cacheHas(seen, othIndex) &&
|
||||
(arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {
|
||||
return seen.push(othIndex);
|
||||
}
|
||||
})) {
|
||||
result = false;
|
||||
break;
|
||||
}
|
||||
} else if (!(
|
||||
arrValue === othValue ||
|
||||
equalFunc(arrValue, othValue, bitmask, customizer, stack)
|
||||
)) {
|
||||
result = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
stack['delete'](array);
|
||||
stack['delete'](other);
|
||||
return result;
|
||||
}
|
||||
|
||||
module.exports = equalArrays;
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"main": "main.js"
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"ObjectUnsubscribedError.js","sourceRoot":"","sources":["../../../../src/internal/util/ObjectUnsubscribedError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAqBtD,MAAM,CAAC,IAAM,uBAAuB,GAAgC,gBAAgB,CAClF,UAAC,MAAM;IACL,OAAA,SAAS,2BAA2B;QAClC,MAAM,CAAC,IAAI,CAAC,CAAC;QACb,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;QACtC,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC;IACvC,CAAC;AAJD,CAIC,CACJ,CAAC"}
|
||||
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"timestamp.d.ts","sourceRoot":"","sources":["../../../../src/internal/operators/timestamp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAI1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,iBAAiB,GAAE,iBAAyC,GAAG,gBAAgB,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAE5H"}
|
||||
Reference in New Issue
Block a user