@taiga-ui/cdk 3.41.1-canary.15b6dea → 3.41.1-canary.e7ff884

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -16,6 +16,355 @@
16
16
  : [0, 0, 0];
17
17
  }
18
18
 
19
+ /*! *****************************************************************************
20
+ Copyright (c) Microsoft Corporation.
21
+
22
+ Permission to use, copy, modify, and/or distribute this software for any
23
+ purpose with or without fee is hereby granted.
24
+
25
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
26
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
27
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
28
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
29
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
30
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
31
+ PERFORMANCE OF THIS SOFTWARE.
32
+ ***************************************************************************** */
33
+ /* global Reflect, Promise */
34
+ var extendStatics = function (d, b) {
35
+ extendStatics = Object.setPrototypeOf ||
36
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
37
+ function (d, b) { for (var p in b)
38
+ if (Object.prototype.hasOwnProperty.call(b, p))
39
+ d[p] = b[p]; };
40
+ return extendStatics(d, b);
41
+ };
42
+ function __extends(d, b) {
43
+ if (typeof b !== "function" && b !== null)
44
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
45
+ extendStatics(d, b);
46
+ function __() { this.constructor = d; }
47
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
48
+ }
49
+ var __assign = function () {
50
+ __assign = Object.assign || function __assign(t) {
51
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
52
+ s = arguments[i];
53
+ for (var p in s)
54
+ if (Object.prototype.hasOwnProperty.call(s, p))
55
+ t[p] = s[p];
56
+ }
57
+ return t;
58
+ };
59
+ return __assign.apply(this, arguments);
60
+ };
61
+ function __rest(s, e) {
62
+ var t = {};
63
+ for (var p in s)
64
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
65
+ t[p] = s[p];
66
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
67
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
68
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
69
+ t[p[i]] = s[p[i]];
70
+ }
71
+ return t;
72
+ }
73
+ function __decorate(decorators, target, key, desc) {
74
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
75
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
76
+ r = Reflect.decorate(decorators, target, key, desc);
77
+ else
78
+ for (var i = decorators.length - 1; i >= 0; i--)
79
+ if (d = decorators[i])
80
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
81
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
82
+ }
83
+ function __param(paramIndex, decorator) {
84
+ return function (target, key) { decorator(target, key, paramIndex); };
85
+ }
86
+ function __metadata(metadataKey, metadataValue) {
87
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
88
+ return Reflect.metadata(metadataKey, metadataValue);
89
+ }
90
+ function __awaiter(thisArg, _arguments, P, generator) {
91
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
92
+ return new (P || (P = Promise))(function (resolve, reject) {
93
+ function fulfilled(value) { try {
94
+ step(generator.next(value));
95
+ }
96
+ catch (e) {
97
+ reject(e);
98
+ } }
99
+ function rejected(value) { try {
100
+ step(generator["throw"](value));
101
+ }
102
+ catch (e) {
103
+ reject(e);
104
+ } }
105
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
106
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
107
+ });
108
+ }
109
+ function __generator(thisArg, body) {
110
+ var _ = { label: 0, sent: function () { if (t[0] & 1)
111
+ throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
112
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function () { return this; }), g;
113
+ function verb(n) { return function (v) { return step([n, v]); }; }
114
+ function step(op) {
115
+ if (f)
116
+ throw new TypeError("Generator is already executing.");
117
+ while (_)
118
+ try {
119
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
120
+ return t;
121
+ if (y = 0, t)
122
+ op = [op[0] & 2, t.value];
123
+ switch (op[0]) {
124
+ case 0:
125
+ case 1:
126
+ t = op;
127
+ break;
128
+ case 4:
129
+ _.label++;
130
+ return { value: op[1], done: false };
131
+ case 5:
132
+ _.label++;
133
+ y = op[1];
134
+ op = [0];
135
+ continue;
136
+ case 7:
137
+ op = _.ops.pop();
138
+ _.trys.pop();
139
+ continue;
140
+ default:
141
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
142
+ _ = 0;
143
+ continue;
144
+ }
145
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {
146
+ _.label = op[1];
147
+ break;
148
+ }
149
+ if (op[0] === 6 && _.label < t[1]) {
150
+ _.label = t[1];
151
+ t = op;
152
+ break;
153
+ }
154
+ if (t && _.label < t[2]) {
155
+ _.label = t[2];
156
+ _.ops.push(op);
157
+ break;
158
+ }
159
+ if (t[2])
160
+ _.ops.pop();
161
+ _.trys.pop();
162
+ continue;
163
+ }
164
+ op = body.call(thisArg, _);
165
+ }
166
+ catch (e) {
167
+ op = [6, e];
168
+ y = 0;
169
+ }
170
+ finally {
171
+ f = t = 0;
172
+ }
173
+ if (op[0] & 5)
174
+ throw op[1];
175
+ return { value: op[0] ? op[1] : void 0, done: true };
176
+ }
177
+ }
178
+ var __createBinding = Object.create ? (function (o, m, k, k2) {
179
+ if (k2 === undefined)
180
+ k2 = k;
181
+ Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });
182
+ }) : (function (o, m, k, k2) {
183
+ if (k2 === undefined)
184
+ k2 = k;
185
+ o[k2] = m[k];
186
+ });
187
+ function __exportStar(m, o) {
188
+ for (var p in m)
189
+ if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p))
190
+ __createBinding(o, m, p);
191
+ }
192
+ function __values(o) {
193
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
194
+ if (m)
195
+ return m.call(o);
196
+ if (o && typeof o.length === "number")
197
+ return {
198
+ next: function () {
199
+ if (o && i >= o.length)
200
+ o = void 0;
201
+ return { value: o && o[i++], done: !o };
202
+ }
203
+ };
204
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
205
+ }
206
+ function __read(o, n) {
207
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
208
+ if (!m)
209
+ return o;
210
+ var i = m.call(o), r, ar = [], e;
211
+ try {
212
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done)
213
+ ar.push(r.value);
214
+ }
215
+ catch (error) {
216
+ e = { error: error };
217
+ }
218
+ finally {
219
+ try {
220
+ if (r && !r.done && (m = i["return"]))
221
+ m.call(i);
222
+ }
223
+ finally {
224
+ if (e)
225
+ throw e.error;
226
+ }
227
+ }
228
+ return ar;
229
+ }
230
+ /** @deprecated */
231
+ function __spread() {
232
+ for (var ar = [], i = 0; i < arguments.length; i++)
233
+ ar = ar.concat(__read(arguments[i]));
234
+ return ar;
235
+ }
236
+ /** @deprecated */
237
+ function __spreadArrays() {
238
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++)
239
+ s += arguments[i].length;
240
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
241
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
242
+ r[k] = a[j];
243
+ return r;
244
+ }
245
+ function __spreadArray(to, from, pack) {
246
+ if (pack || arguments.length === 2)
247
+ for (var i = 0, l = from.length, ar; i < l; i++) {
248
+ if (ar || !(i in from)) {
249
+ if (!ar)
250
+ ar = Array.prototype.slice.call(from, 0, i);
251
+ ar[i] = from[i];
252
+ }
253
+ }
254
+ return to.concat(ar || from);
255
+ }
256
+ function __await(v) {
257
+ return this instanceof __await ? (this.v = v, this) : new __await(v);
258
+ }
259
+ function __asyncGenerator(thisArg, _arguments, generator) {
260
+ if (!Symbol.asyncIterator)
261
+ throw new TypeError("Symbol.asyncIterator is not defined.");
262
+ var g = generator.apply(thisArg, _arguments || []), i, q = [];
263
+ return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
264
+ function verb(n) { if (g[n])
265
+ i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
266
+ function resume(n, v) { try {
267
+ step(g[n](v));
268
+ }
269
+ catch (e) {
270
+ settle(q[0][3], e);
271
+ } }
272
+ function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
273
+ function fulfill(value) { resume("next", value); }
274
+ function reject(value) { resume("throw", value); }
275
+ function settle(f, v) { if (f(v), q.shift(), q.length)
276
+ resume(q[0][0], q[0][1]); }
277
+ }
278
+ function __asyncDelegator(o) {
279
+ var i, p;
280
+ return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
281
+ function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
282
+ }
283
+ function __asyncValues(o) {
284
+ if (!Symbol.asyncIterator)
285
+ throw new TypeError("Symbol.asyncIterator is not defined.");
286
+ var m = o[Symbol.asyncIterator], i;
287
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
288
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
289
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }
290
+ }
291
+ function __makeTemplateObject(cooked, raw) {
292
+ if (Object.defineProperty) {
293
+ Object.defineProperty(cooked, "raw", { value: raw });
294
+ }
295
+ else {
296
+ cooked.raw = raw;
297
+ }
298
+ return cooked;
299
+ }
300
+ ;
301
+ var __setModuleDefault = Object.create ? (function (o, v) {
302
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
303
+ }) : function (o, v) {
304
+ o["default"] = v;
305
+ };
306
+ function __importStar(mod) {
307
+ if (mod && mod.__esModule)
308
+ return mod;
309
+ var result = {};
310
+ if (mod != null)
311
+ for (var k in mod)
312
+ if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k))
313
+ __createBinding(result, mod, k);
314
+ __setModuleDefault(result, mod);
315
+ return result;
316
+ }
317
+ function __importDefault(mod) {
318
+ return (mod && mod.__esModule) ? mod : { default: mod };
319
+ }
320
+ function __classPrivateFieldGet(receiver, state, kind, f) {
321
+ if (kind === "a" && !f)
322
+ throw new TypeError("Private accessor was defined without a getter");
323
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
324
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
325
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
326
+ }
327
+ function __classPrivateFieldSet(receiver, state, value, kind, f) {
328
+ if (kind === "m")
329
+ throw new TypeError("Private method is not writable");
330
+ if (kind === "a" && !f)
331
+ throw new TypeError("Private accessor was defined without a setter");
332
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
333
+ throw new TypeError("Cannot write private member to an object whose class did not declare it");
334
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
335
+ }
336
+
337
+ function tuiHexToRGBA(hex, alpha) {
338
+ var _b = __read(tuiParseHex(hex, alpha), 4), r = _b[0], g = _b[1], b = _b[2], a = _b[3];
339
+ return a < 1 ? "rgba(" + r + ", " + g + ", " + b + ", " + a + ")" : "rgb(" + r + ", " + g + ", " + b + ")";
340
+ }
341
+ function tuiIsValidHex(hex) {
342
+ // eslint-disable-next-line unicorn/no-unsafe-regex
343
+ return /^#([A-Fa-f0-9]{3,4}){1,2}$/.test(hex);
344
+ }
345
+ var getChunksFromString = function (hex, chunkSize) { return hex.match(new RegExp(".{" + chunkSize + "}", "g")); };
346
+ var convertHexUnitTo256 = function (hexStr) { return parseInt(hexStr.repeat(2 / hexStr.length), 16); };
347
+ var getAlphaFloat = function (a, alpha) {
348
+ if (typeof a !== "undefined") {
349
+ return Number((a / 255).toFixed(2));
350
+ }
351
+ if (typeof alpha !== "number" || alpha < 0 || alpha > 1) {
352
+ return 1;
353
+ }
354
+ return alpha;
355
+ };
356
+ function tuiParseHex(hex, alpha) {
357
+ var _a;
358
+ if (!tuiIsValidHex(hex)) {
359
+ throw new Error("Invalid HEX");
360
+ }
361
+ var chunkSize = Math.floor((hex.length - 1) / 3);
362
+ var hexArr = getChunksFromString(hex.slice(1), chunkSize);
363
+ var _b = __read((_a = hexArr === null || hexArr === void 0 ? void 0 : hexArr.map(convertHexUnitTo256)) !== null && _a !== void 0 ? _a : [], 4), r = _b[0], g = _b[1], b = _b[2], a = _b[3];
364
+ var floatAlpha = getAlphaFloat(a, alpha);
365
+ return [r, g, b, floatAlpha];
366
+ }
367
+
19
368
  /**
20
369
  * https://stackoverflow.com/a/54024653/2706426
21
370
  */
@@ -66,15 +415,46 @@
66
415
  return [60 * (h < 0 ? h + 6 : h), v && n / v, v];
67
416
  }
68
417
 
418
+ function tuiRgbaToHex(color) {
419
+ var _a, _b;
420
+ if (!tuiIsValidRgba(color)) {
421
+ throw new Error("Invalid RGBa");
422
+ }
423
+ var rgb = (_a = color
424
+ .replace(/\s/g, "")
425
+ // eslint-disable-next-line unicorn/no-unsafe-regex
426
+ .match(/^rgba?\((\d+),(\d+),(\d+),?([^,\s)]+)?/i)) !== null && _a !== void 0 ? _a : [];
427
+ var alpha = ((_b = rgb === null || rgb === void 0 ? void 0 : rgb[4]) !== null && _b !== void 0 ? _b : "").toString().trim();
428
+ var hex = rgb
429
+ ? (rgb[1] | (1 << 8)).toString(16).slice(1) +
430
+ (rgb[2] | (1 << 8)).toString(16).slice(1) +
431
+ (rgb[3] | (1 << 8)).toString(16).slice(1)
432
+ : color;
433
+ alpha = alpha !== "" ? alpha : 1;
434
+ alpha = ((Number(alpha) * 255) | (1 << 8)).toString(16).slice(1);
435
+ hex += alpha;
436
+ return "#" + hex.toUpperCase();
437
+ }
438
+ function tuiIsValidRgba(rgba) {
439
+ var range = "(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|2[0-5]{2})";
440
+ var alpha = "([01]|0?\\.\\d+)";
441
+ return new RegExp("^(?:rgb\\(\\s*" + range + "\\s*,\\s*" + range + "\\s*,\\s*" + range + "\\s*\\)|rgba\\(\\s*" + range + "\\s*,\\s*" + range + "\\s*,\\s*" + range + "\\s*,\\s*" + alpha + "\\s*\\))$").test(rgba);
442
+ }
443
+
69
444
  /**
70
445
  * Generated bundle index. Do not edit.
71
446
  */
72
447
 
448
+ exports.tuiHexToRGBA = tuiHexToRGBA;
73
449
  exports.tuiHexToRgb = tuiHexToRgb;
74
450
  exports.tuiHsvToRgb = tuiHsvToRgb;
451
+ exports.tuiIsValidHex = tuiIsValidHex;
452
+ exports.tuiIsValidRgba = tuiIsValidRgba;
75
453
  exports.tuiParseColor = tuiParseColor;
454
+ exports.tuiParseHex = tuiParseHex;
76
455
  exports.tuiRgbToHex = tuiRgbToHex;
77
456
  exports.tuiRgbToHsv = tuiRgbToHsv;
457
+ exports.tuiRgbaToHex = tuiRgbaToHex;
78
458
 
79
459
  Object.defineProperty(exports, '__esModule', { value: true });
80
460
 
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-utils-color.umd.js","sources":["../../../projects/cdk/utils/color/hex-to-rgb.ts","../../../projects/cdk/utils/color/hsv-to-rgb.ts","../../../projects/cdk/utils/color/parse-color.ts","../../../projects/cdk/utils/color/rgb-to-hex.ts","../../../projects/cdk/utils/color/rgb-to-hsv.ts","../../../projects/cdk/utils/color/taiga-ui-cdk-utils-color.ts"],"sourcesContent":["export function tuiHexToRgb(hex: string): [number, number, number] {\n const matches = hex\n .replace(`#`, ``)\n .split(``)\n .map((char, _, array) => (array.length === 3 ? char + char : char))\n .join(``)\n .match(/.{2}/g);\n\n return matches\n ? (matches.map(x => Number.parseInt(x, 16)) as [number, number, number])\n : [0, 0, 0];\n}\n","/**\n * https://stackoverflow.com/a/54024653/2706426\n */\nexport function tuiHsvToRgb(h: number, s: number, v: number): [number, number, number] {\n return [hsvToColor(h, s, v, 5), hsvToColor(h, s, v, 3), hsvToColor(h, s, v, 1)];\n}\n\nfunction hsvToColor(h: number, s: number, v: number, n: number): number {\n const k = (n + h / 60) % 6;\n\n return Math.round(v - v * s * Math.max(Math.min(k, 4 - k, 1), 0));\n}\n","const DEFAULT: [number, number, number, number] = [0, 0, 0, 1];\n\nexport function tuiParseColor(color: string): [number, number, number, number] {\n const stripped = color\n .replace(`#`, ``)\n .replace(`rgba(`, ``)\n .replace(`rgb(`, ``)\n .replace(`)`, ``);\n const array = stripped.split(`,`).map(item => parseFloat(item));\n\n if (array.length === 4) {\n return array as [number, number, number, number];\n }\n\n if (array.length === 3) {\n return array.concat(1) as [number, number, number, number];\n }\n\n const matches = stripped.match(new RegExp(`(.{${stripped.length / 3}})`, `g`));\n\n if (!matches) {\n return DEFAULT;\n }\n\n const parsed = matches.map(char =>\n parseInt(stripped.length % 2 ? char + char : char, 16),\n );\n\n return [\n parsed[0] || DEFAULT[0],\n parsed[1] || DEFAULT[1],\n parsed[2] || DEFAULT[2],\n parsed[3] === undefined ? DEFAULT[3] : parsed[3],\n ];\n}\n","export function tuiRgbToHex(r: number, g: number, b: number): string {\n return `#${[r, g, b].map(x => x.toString(16).padStart(2, `0`)).join(``)}`;\n}\n","export function tuiRgbToHsv(r: number, g: number, b: number): [number, number, number] {\n const v = Math.max(r, g, b);\n const n = v - Math.min(r, g, b);\n\n // eslint-disable-next-line no-nested-ternary\n const h = n && (v === r ? (g - b) / n : v === g ? 2 + (b - r) / n : 4 + (r - g) / n);\n\n return [60 * (h < 0 ? h + 6 : h), v && n / v, v];\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-cdk-utils-color.umd.js","sources":["../../../projects/cdk/utils/color/hex-to-rgb.ts","../../../node_modules/tslib/tslib.es6.js","../../../projects/cdk/utils/color/hex-to-rgba.ts","../../../projects/cdk/utils/color/hsv-to-rgb.ts","../../../projects/cdk/utils/color/parse-color.ts","../../../projects/cdk/utils/color/rgb-to-hex.ts","../../../projects/cdk/utils/color/rgb-to-hsv.ts","../../../projects/cdk/utils/color/rgba-to-hex.ts","../../../projects/cdk/utils/color/taiga-ui-cdk-utils-color.ts"],"sourcesContent":["export function tuiHexToRgb(hex: string): [number, number, number] {\n const matches = hex\n .replace(`#`, ``)\n .split(``)\n .map((char, _, array) => (array.length === 3 ? char + char : char))\n .join(``)\n .match(/.{2}/g);\n\n return matches\n ? (matches.map(x => Number.parseInt(x, 16)) as [number, number, number])\n : [0, 0, 0];\n}\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || from);\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","export function tuiHexToRGBA(hex: string, alpha?: number): string {\n const [r, g, b, a] = tuiParseHex(hex, alpha);\n\n return a < 1 ? `rgba(${r}, ${g}, ${b}, ${a})` : `rgb(${r}, ${g}, ${b})`;\n}\n\nexport function tuiIsValidHex(hex: string): boolean {\n // eslint-disable-next-line unicorn/no-unsafe-regex\n return /^#([A-Fa-f0-9]{3,4}){1,2}$/.test(hex);\n}\n\nconst getChunksFromString = (hex: string, chunkSize: number): RegExpMatchArray | null =>\n hex.match(new RegExp(`.{${chunkSize}}`, `g`));\n\nconst convertHexUnitTo256 = (hexStr: string): number =>\n parseInt(hexStr.repeat(2 / hexStr.length), 16);\n\nconst getAlphaFloat = (a: number, alpha?: number): number => {\n if (typeof a !== `undefined`) {\n return Number((a / 255).toFixed(2));\n }\n\n if (typeof alpha !== `number` || alpha < 0 || alpha > 1) {\n return 1;\n }\n\n return alpha;\n};\n\nexport function tuiParseHex(\n hex: string,\n alpha?: number,\n): [number, number, number, number] {\n if (!tuiIsValidHex(hex)) {\n throw new Error(`Invalid HEX`);\n }\n\n const chunkSize = Math.floor((hex.length - 1) / 3);\n const hexArr = getChunksFromString(hex.slice(1), chunkSize);\n const [r, g, b, a] = hexArr?.map(convertHexUnitTo256) ?? [];\n const floatAlpha = getAlphaFloat(a, alpha);\n\n return [r, g, b, floatAlpha];\n}\n","/**\n * https://stackoverflow.com/a/54024653/2706426\n */\nexport function tuiHsvToRgb(h: number, s: number, v: number): [number, number, number] {\n return [hsvToColor(h, s, v, 5), hsvToColor(h, s, v, 3), hsvToColor(h, s, v, 1)];\n}\n\nfunction hsvToColor(h: number, s: number, v: number, n: number): number {\n const k = (n + h / 60) % 6;\n\n return Math.round(v - v * s * Math.max(Math.min(k, 4 - k, 1), 0));\n}\n","const DEFAULT: [number, number, number, number] = [0, 0, 0, 1];\n\nexport function tuiParseColor(color: string): [number, number, number, number] {\n const stripped = color\n .replace(`#`, ``)\n .replace(`rgba(`, ``)\n .replace(`rgb(`, ``)\n .replace(`)`, ``);\n const array = stripped.split(`,`).map(item => parseFloat(item));\n\n if (array.length === 4) {\n return array as [number, number, number, number];\n }\n\n if (array.length === 3) {\n return array.concat(1) as [number, number, number, number];\n }\n\n const matches = stripped.match(new RegExp(`(.{${stripped.length / 3}})`, `g`));\n\n if (!matches) {\n return DEFAULT;\n }\n\n const parsed = matches.map(char =>\n parseInt(stripped.length % 2 ? char + char : char, 16),\n );\n\n return [\n parsed[0] || DEFAULT[0],\n parsed[1] || DEFAULT[1],\n parsed[2] || DEFAULT[2],\n parsed[3] === undefined ? DEFAULT[3] : parsed[3],\n ];\n}\n","export function tuiRgbToHex(r: number, g: number, b: number): string {\n return `#${[r, g, b].map(x => x.toString(16).padStart(2, `0`)).join(``)}`;\n}\n","export function tuiRgbToHsv(r: number, g: number, b: number): [number, number, number] {\n const v = Math.max(r, g, b);\n const n = v - Math.min(r, g, b);\n\n // eslint-disable-next-line no-nested-ternary\n const h = n && (v === r ? (g - b) / n : v === g ? 2 + (b - r) / n : 4 + (r - g) / n);\n\n return [60 * (h < 0 ? h + 6 : h), v && n / v, v];\n}\n","export function tuiRgbaToHex(color: string): string {\n if (!tuiIsValidRgba(color)) {\n throw new Error(`Invalid RGBa`);\n }\n\n const rgb: number[] =\n (color\n .replace(/\\s/g, ``)\n // eslint-disable-next-line unicorn/no-unsafe-regex\n .match(/^rgba?\\((\\d+),(\\d+),(\\d+),?([^,\\s)]+)?/i) as unknown as number[]) ??\n [];\n let alpha: number | string = (rgb?.[4] ?? ``).toString().trim();\n let hex = rgb\n ? (rgb[1] | (1 << 8)).toString(16).slice(1) +\n (rgb[2] | (1 << 8)).toString(16).slice(1) +\n (rgb[3] | (1 << 8)).toString(16).slice(1)\n : color;\n\n alpha = alpha !== `` ? alpha : 0o1;\n alpha = ((Number(alpha) * 255) | (1 << 8)).toString(16).slice(1);\n hex += alpha;\n\n return `#${hex.toUpperCase()}`;\n}\n\nexport function tuiIsValidRgba(rgba: string): boolean {\n const range = `(\\\\d|[1-9]\\\\d|1\\\\d{2}|2[0-4]\\\\d|2[0-5]{2})`;\n const alpha = `([01]|0?\\\\.\\\\d+)`;\n\n return new RegExp(\n `^(?:rgb\\\\(\\\\s*${range}\\\\s*,\\\\s*${range}\\\\s*,\\\\s*${range}\\\\s*\\\\)|rgba\\\\(\\\\s*${range}\\\\s*,\\\\s*${range}\\\\s*,\\\\s*${range}\\\\s*,\\\\s*${alpha}\\\\s*\\\\))$`,\n ).test(rgba);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ import { catchError, debounceTime, distinctUntilChanged, map, share, takeUntil,
7
7
  import { TuiDestroyService } from './destroy.service';
8
8
  import * as i0 from "@angular/core";
9
9
  import * as i1 from "rxjs";
10
+ // TODO: Remove in 4.0 when Safari is bumped to 13
10
11
  export class TuiResizeService extends ResizeObserverService {
11
12
  constructor(el, ngZone, destroy$, support, box, animationFrame$) {
12
13
  super(el, ngZone, support, box);
@@ -43,4 +44,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
43
44
  type: Inject,
44
45
  args: [ANIMATION_FRAME]
45
46
  }] }]; } });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXplLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvc2VydmljZXMvcmVzaXplLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLHFCQUFxQixHQUN4QixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBQyxXQUFXLEVBQUUsWUFBWSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDbEUsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRXRELE9BQU8sRUFDSCxVQUFVLEVBQ1YsWUFBWSxFQUNaLG9CQUFvQixFQUNwQixHQUFHLEVBQ0gsS0FBSyxFQUNMLFNBQVMsRUFDVCxZQUFZLEdBQ2YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBR3BELE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxxQkFBcUI7SUFDdkQsWUFDd0IsRUFBMkIsRUFDL0IsTUFBYyxFQUNLLFFBQTBCLEVBQzVCLE9BQWdCLEVBQ3RCLEdBQTZCLEVBQy9CLGVBQW1DO1FBRTVELEtBQUssQ0FBQyxFQUFFLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUVoQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQ1osVUFBVSxDQUFDLEdBQUcsRUFBRTtRQUNaOzs7V0FHRztRQUNILGVBQWUsQ0FBQyxJQUFJLENBQ2hCLFlBQVksQ0FBQyxZQUFZLENBQUMsRUFDMUIsR0FBRyxDQUNDLEdBQUcsRUFBRSxDQUNELEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FDekUsRUFDRCxvQkFBb0IsRUFBRSxFQUN0QixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDLENBQ3pCLENBQ0osRUFDRCxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQ2YsV0FBVyxDQUFDLE1BQU0sQ0FBQyxFQUNuQixLQUFLLEVBQUUsRUFDUCxTQUFTLENBQUMsUUFBUSxDQUFDLENBQ3RCLENBQUM7SUFDTixDQUFDOzs4R0FoQ1EsZ0JBQWdCLGtCQUViLFVBQVUsYUFDVixNQUFNLGFBQ0UsaUJBQWlCLHlCQUN6Qix1QkFBdUIsYUFDdkIsaUJBQWlCLGFBQ2pCLGVBQWU7a0hBUGxCLGdCQUFnQjs0RkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVOzswQkFHRixNQUFNOzJCQUFDLFVBQVU7OzBCQUNqQixNQUFNOzJCQUFDLE1BQU07OzBCQUNiLElBQUk7OzBCQUFJLE1BQU07MkJBQUMsaUJBQWlCOzswQkFDaEMsTUFBTTsyQkFBQyx1QkFBdUI7OzBCQUM5QixNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQ3hCLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RWxlbWVudFJlZiwgSW5qZWN0LCBJbmplY3RhYmxlLCBOZ1pvbmUsIFNlbGZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBTklNQVRJT05fRlJBTUV9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBSRVNJWkVfT0JTRVJWRVJfU1VQUE9SVCxcbiAgICBSRVNJWkVfT1BUSU9OX0JPWCxcbiAgICBSZXNpemVPYnNlcnZlclNlcnZpY2UsXG59IGZyb20gJ0BuZy13ZWItYXBpcy9yZXNpemUtb2JzZXJ2ZXInO1xuaW1wb3J0IHtFTVBUWV9BUlJBWSwgUE9MTElOR19USU1FfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvbnN0YW50cyc7XG5pbXBvcnQge3R1aVpvbmVmcmVlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL29ic2VydmFibGVzJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICAgIGNhdGNoRXJyb3IsXG4gICAgZGVib3VuY2VUaW1lLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICAgIG1hcCxcbiAgICBzaGFyZSxcbiAgICB0YWtlVW50aWwsXG4gICAgdGhyb3R0bGVUaW1lLFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VHVpRGVzdHJveVNlcnZpY2V9IGZyb20gJy4vZGVzdHJveS5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFR1aVJlc2l6ZVNlcnZpY2UgZXh0ZW5kcyBSZXNpemVPYnNlcnZlclNlcnZpY2Uge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIGVsOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChOZ1pvbmUpIG5nWm9uZTogTmdab25lLFxuICAgICAgICBAU2VsZigpIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpIGRlc3Ryb3kkOiBPYnNlcnZhYmxlPHZvaWQ+LFxuICAgICAgICBASW5qZWN0KFJFU0laRV9PQlNFUlZFUl9TVVBQT1JUKSBzdXBwb3J0OiBib29sZWFuLFxuICAgICAgICBASW5qZWN0KFJFU0laRV9PUFRJT05fQk9YKSBib3g6IFJlc2l6ZU9ic2VydmVyQm94T3B0aW9ucyxcbiAgICAgICAgQEluamVjdChBTklNQVRJT05fRlJBTUUpIGFuaW1hdGlvbkZyYW1lJDogT2JzZXJ2YWJsZTxudW1iZXI+LFxuICAgICkge1xuICAgICAgICBzdXBlcihlbCwgbmdab25lLCBzdXBwb3J0LCBib3gpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnBpcGUoXG4gICAgICAgICAgICBjYXRjaEVycm9yKCgpID0+XG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogQG5vdGU6IGlmIG5vdCBzdXBwb3J0ZWQgUmVzaXplT2JzZXJ2ZXJcbiAgICAgICAgICAgICAgICAgKiByZW1vdmUgYGNhdGNoRXJyb3JgIGFmdGVyIHN1cHBvcnRzIG1vZGVybiBicm93c2Vyc1xuICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbkZyYW1lJC5waXBlKFxuICAgICAgICAgICAgICAgICAgICB0aHJvdHRsZVRpbWUoUE9MTElOR19USU1FKSxcbiAgICAgICAgICAgICAgICAgICAgbWFwKFxuICAgICAgICAgICAgICAgICAgICAgICAgKCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBgJHtlbC5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRofSAke2VsLm5hdGl2ZUVsZW1lbnQuY2xpZW50SGVpZ2h0fWAsXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgICAgICAgICAgICAgIG1hcCgoKSA9PiBFTVBUWV9BUlJBWSksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBkZWJvdW5jZVRpbWUoMCksXG4gICAgICAgICAgICB0dWlab25lZnJlZShuZ1pvbmUpLFxuICAgICAgICAgICAgc2hhcmUoKSxcbiAgICAgICAgICAgIHRha2VVbnRpbChkZXN0cm95JCksXG4gICAgICAgICk7XG4gICAgfVxufVxuIl19
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXplLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvc2VydmljZXMvcmVzaXplLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLHFCQUFxQixHQUN4QixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBQyxXQUFXLEVBQUUsWUFBWSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDbEUsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRXRELE9BQU8sRUFDSCxVQUFVLEVBQ1YsWUFBWSxFQUNaLG9CQUFvQixFQUNwQixHQUFHLEVBQ0gsS0FBSyxFQUNMLFNBQVMsRUFDVCxZQUFZLEdBQ2YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBRXBELGtEQUFrRDtBQUVsRCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEscUJBQXFCO0lBQ3ZELFlBQ3dCLEVBQTJCLEVBQy9CLE1BQWMsRUFDSyxRQUEwQixFQUM1QixPQUFnQixFQUN0QixHQUE2QixFQUMvQixlQUFtQztRQUU1RCxLQUFLLENBQUMsRUFBRSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFFaEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUNaLFVBQVUsQ0FBQyxHQUFHLEVBQUU7UUFDWjs7O1dBR0c7UUFDSCxlQUFlLENBQUMsSUFBSSxDQUNoQixZQUFZLENBQUMsWUFBWSxDQUFDLEVBQzFCLEdBQUcsQ0FDQyxHQUFHLEVBQUUsQ0FDRCxHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQ3pFLEVBQ0Qsb0JBQW9CLEVBQUUsRUFDdEIsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUN6QixDQUNKLEVBQ0QsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUNmLFdBQVcsQ0FBQyxNQUFNLENBQUMsRUFDbkIsS0FBSyxFQUFFLEVBQ1AsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUN0QixDQUFDO0lBQ04sQ0FBQzs7OEdBaENRLGdCQUFnQixrQkFFYixVQUFVLGFBQ1YsTUFBTSxhQUNFLGlCQUFpQix5QkFDekIsdUJBQXVCLGFBQ3ZCLGlCQUFpQixhQUNqQixlQUFlO2tIQVBsQixnQkFBZ0I7NEZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVTs7MEJBR0YsTUFBTTsyQkFBQyxVQUFVOzswQkFDakIsTUFBTTsyQkFBQyxNQUFNOzswQkFDYixJQUFJOzswQkFBSSxNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQ2hDLE1BQU07MkJBQUMsdUJBQXVCOzswQkFDOUIsTUFBTTsyQkFBQyxpQkFBaUI7OzBCQUN4QixNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0VsZW1lbnRSZWYsIEluamVjdCwgSW5qZWN0YWJsZSwgTmdab25lLCBTZWxmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QU5JTUFUSU9OX0ZSQU1FfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7XG4gICAgUkVTSVpFX09CU0VSVkVSX1NVUFBPUlQsXG4gICAgUkVTSVpFX09QVElPTl9CT1gsXG4gICAgUmVzaXplT2JzZXJ2ZXJTZXJ2aWNlLFxufSBmcm9tICdAbmctd2ViLWFwaXMvcmVzaXplLW9ic2VydmVyJztcbmltcG9ydCB7RU1QVFlfQVJSQVksIFBPTExJTkdfVElNRX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHt0dWlab25lZnJlZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9vYnNlcnZhYmxlcyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgICBjYXRjaEVycm9yLFxuICAgIGRlYm91bmNlVGltZSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcbiAgICBtYXAsXG4gICAgc2hhcmUsXG4gICAgdGFrZVVudGlsLFxuICAgIHRocm90dGxlVGltZSxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1R1aURlc3Ryb3lTZXJ2aWNlfSBmcm9tICcuL2Rlc3Ryb3kuc2VydmljZSc7XG5cbi8vIFRPRE86IFJlbW92ZSBpbiA0LjAgd2hlbiBTYWZhcmkgaXMgYnVtcGVkIHRvIDEzXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVHVpUmVzaXplU2VydmljZSBleHRlbmRzIFJlc2l6ZU9ic2VydmVyU2VydmljZSB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KE5nWm9uZSkgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIEBTZWxmKCkgQEluamVjdChUdWlEZXN0cm95U2VydmljZSkgZGVzdHJveSQ6IE9ic2VydmFibGU8dm9pZD4sXG4gICAgICAgIEBJbmplY3QoUkVTSVpFX09CU0VSVkVSX1NVUFBPUlQpIHN1cHBvcnQ6IGJvb2xlYW4sXG4gICAgICAgIEBJbmplY3QoUkVTSVpFX09QVElPTl9CT1gpIGJveDogUmVzaXplT2JzZXJ2ZXJCb3hPcHRpb25zLFxuICAgICAgICBASW5qZWN0KEFOSU1BVElPTl9GUkFNRSkgYW5pbWF0aW9uRnJhbWUkOiBPYnNlcnZhYmxlPG51bWJlcj4sXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGVsLCBuZ1pvbmUsIHN1cHBvcnQsIGJveCk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMucGlwZShcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBAbm90ZTogaWYgbm90IHN1cHBvcnRlZCBSZXNpemVPYnNlcnZlclxuICAgICAgICAgICAgICAgICAqIHJlbW92ZSBgY2F0Y2hFcnJvcmAgYWZ0ZXIgc3VwcG9ydHMgbW9kZXJuIGJyb3dzZXJzXG4gICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uRnJhbWUkLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgIHRocm90dGxlVGltZShQT0xMSU5HX1RJTUUpLFxuICAgICAgICAgICAgICAgICAgICBtYXAoXG4gICAgICAgICAgICAgICAgICAgICAgICAoKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAke2VsLm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGh9ICR7ZWwubmF0aXZlRWxlbWVudC5jbGllbnRIZWlnaHR9YCxcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICAgICAgICAgICAgbWFwKCgpID0+IEVNUFRZX0FSUkFZKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGRlYm91bmNlVGltZSgwKSxcbiAgICAgICAgICAgIHR1aVpvbmVmcmVlKG5nWm9uZSksXG4gICAgICAgICAgICBzaGFyZSgpLFxuICAgICAgICAgICAgdGFrZVVudGlsKGRlc3Ryb3kkKSxcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
@@ -8,9 +8,11 @@ export * from './is-android';
8
8
  export * from './is-apple';
9
9
  export * from './is-chromium';
10
10
  export * from './is-cypress';
11
+ export * from './is-e2e';
11
12
  export * from './is-firefox';
12
13
  export * from './is-ios';
13
14
  export * from './is-mobile';
15
+ export * from './is-playwright';
14
16
  export * from './is-stackblitz';
15
17
  export * from './is-webkit';
16
18
  export * from './range';
@@ -20,4 +22,4 @@ export * from './take-only-trusted-events';
20
22
  export * from './touch-supported';
21
23
  export * from './window-height';
22
24
  export * from './zoom-options';
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvdG9rZW5zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYWN0aXZlLWVsZW1lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9hbGVydHMnO1xuZXhwb3J0ICogZnJvbSAnLi9kZWZhdWx0LXJlbmRlcmVyJztcbmV4cG9ydCAqIGZyb20gJy4vZGlhbG9ncyc7XG5leHBvcnQgKiBmcm9tICcuL2Vuc3VyZS1iYXNlLWhyZWYnO1xuZXhwb3J0ICogZnJvbSAnLi9mb2N1c2FibGUtaXRlbS1hY2Nlc3Nvcic7XG5leHBvcnQgKiBmcm9tICcuL2lzLWFuZHJvaWQnO1xuZXhwb3J0ICogZnJvbSAnLi9pcy1hcHBsZSc7XG5leHBvcnQgKiBmcm9tICcuL2lzLWNocm9taXVtJztcbmV4cG9ydCAqIGZyb20gJy4vaXMtY3lwcmVzcyc7XG5leHBvcnQgKiBmcm9tICcuL2lzLWZpcmVmb3gnO1xuZXhwb3J0ICogZnJvbSAnLi9pcy1pb3MnO1xuZXhwb3J0ICogZnJvbSAnLi9pcy1tb2JpbGUnO1xuZXhwb3J0ICogZnJvbSAnLi9pcy1zdGFja2JsaXR6JztcbmV4cG9ydCAqIGZyb20gJy4vaXMtd2Via2l0JztcbmV4cG9ydCAqIGZyb20gJy4vcmFuZ2UnO1xuZXhwb3J0ICogZnJvbSAnLi9yZW1vdmVkLWVsZW1lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zd2lwZS1vcHRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vdGFrZS1vbmx5LXRydXN0ZWQtZXZlbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vdG91Y2gtc3VwcG9ydGVkJztcbmV4cG9ydCAqIGZyb20gJy4vd2luZG93LWhlaWdodCc7XG5leHBvcnQgKiBmcm9tICcuL3pvb20tb3B0aW9ucyc7XG4iXX0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvdG9rZW5zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY3RpdmUtZWxlbWVudCc7XG5leHBvcnQgKiBmcm9tICcuL2FsZXJ0cyc7XG5leHBvcnQgKiBmcm9tICcuL2RlZmF1bHQtcmVuZGVyZXInO1xuZXhwb3J0ICogZnJvbSAnLi9kaWFsb2dzJztcbmV4cG9ydCAqIGZyb20gJy4vZW5zdXJlLWJhc2UtaHJlZic7XG5leHBvcnQgKiBmcm9tICcuL2ZvY3VzYWJsZS1pdGVtLWFjY2Vzc29yJztcbmV4cG9ydCAqIGZyb20gJy4vaXMtYW5kcm9pZCc7XG5leHBvcnQgKiBmcm9tICcuL2lzLWFwcGxlJztcbmV4cG9ydCAqIGZyb20gJy4vaXMtY2hyb21pdW0nO1xuZXhwb3J0ICogZnJvbSAnLi9pcy1jeXByZXNzJztcbmV4cG9ydCAqIGZyb20gJy4vaXMtZTJlJztcbmV4cG9ydCAqIGZyb20gJy4vaXMtZmlyZWZveCc7XG5leHBvcnQgKiBmcm9tICcuL2lzLWlvcyc7XG5leHBvcnQgKiBmcm9tICcuL2lzLW1vYmlsZSc7XG5leHBvcnQgKiBmcm9tICcuL2lzLXBsYXl3cmlnaHQnO1xuZXhwb3J0ICogZnJvbSAnLi9pcy1zdGFja2JsaXR6JztcbmV4cG9ydCAqIGZyb20gJy4vaXMtd2Via2l0JztcbmV4cG9ydCAqIGZyb20gJy4vcmFuZ2UnO1xuZXhwb3J0ICogZnJvbSAnLi9yZW1vdmVkLWVsZW1lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zd2lwZS1vcHRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vdGFrZS1vbmx5LXRydXN0ZWQtZXZlbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vdG91Y2gtc3VwcG9ydGVkJztcbmV4cG9ydCAqIGZyb20gJy4vd2luZG93LWhlaWdodCc7XG5leHBvcnQgKiBmcm9tICcuL3pvb20tb3B0aW9ucyc7XG4iXX0=
@@ -0,0 +1,10 @@
1
+ import { inject, InjectionToken } from '@angular/core';
2
+ import { TUI_IS_CYPRESS } from './is-cypress';
3
+ import { TUI_IS_PLAYWRIGHT } from './is-playwright';
4
+ /**
5
+ * Detect if app is running under any of test frameworks
6
+ */
7
+ export const TUI_IS_E2E = new InjectionToken(`[TUI_IS_E2E]`, {
8
+ factory: () => inject(TUI_IS_CYPRESS) || inject(TUI_IS_PLAYWRIGHT),
9
+ });
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZTJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3Rva2Vucy9pcy1lMmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFckQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUM1QyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUVsRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxJQUFJLGNBQWMsQ0FBVSxjQUFjLEVBQUU7SUFDbEUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxNQUFNLENBQUMsaUJBQWlCLENBQUM7Q0FDckUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpbmplY3QsIEluamVjdGlvblRva2VufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtUVUlfSVNfQ1lQUkVTU30gZnJvbSAnLi9pcy1jeXByZXNzJztcbmltcG9ydCB7VFVJX0lTX1BMQVlXUklHSFR9IGZyb20gJy4vaXMtcGxheXdyaWdodCc7XG5cbi8qKlxuICogRGV0ZWN0IGlmIGFwcCBpcyBydW5uaW5nIHVuZGVyIGFueSBvZiB0ZXN0IGZyYW1ld29ya3NcbiAqL1xuZXhwb3J0IGNvbnN0IFRVSV9JU19FMkUgPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oYFtUVUlfSVNfRTJFXWAsIHtcbiAgICBmYWN0b3J5OiAoKSA9PiBpbmplY3QoVFVJX0lTX0NZUFJFU1MpIHx8IGluamVjdChUVUlfSVNfUExBWVdSSUdIVCksXG59KTtcbiJdfQ==
@@ -0,0 +1,9 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { ALWAYS_FALSE_HANDLER } from '@taiga-ui/cdk/constants';
3
+ /**
4
+ * Detect if app is running under Playwright
5
+ */
6
+ export const TUI_IS_PLAYWRIGHT = new InjectionToken(`[TUI_IS_PLAYWRIGHT]`, {
7
+ factory: ALWAYS_FALSE_HANDLER,
8
+ });
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtcGxheXdyaWdodC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay90b2tlbnMvaXMtcGxheXdyaWdodC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBRTdEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLENBQVUscUJBQXFCLEVBQUU7SUFDaEYsT0FBTyxFQUFFLG9CQUFvQjtDQUNoQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGlvblRva2VufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QUxXQVlTX0ZBTFNFX0hBTkRMRVJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcblxuLyoqXG4gKiBEZXRlY3QgaWYgYXBwIGlzIHJ1bm5pbmcgdW5kZXIgUGxheXdyaWdodFxuICovXG5leHBvcnQgY29uc3QgVFVJX0lTX1BMQVlXUklHSFQgPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oYFtUVUlfSVNfUExBWVdSSUdIVF1gLCB7XG4gICAgZmFjdG9yeTogQUxXQVlTX0ZBTFNFX0hBTkRMRVIsXG59KTtcbiJdfQ==
@@ -0,0 +1,31 @@
1
+ export function tuiHexToRGBA(hex, alpha) {
2
+ const [r, g, b, a] = tuiParseHex(hex, alpha);
3
+ return a < 1 ? `rgba(${r}, ${g}, ${b}, ${a})` : `rgb(${r}, ${g}, ${b})`;
4
+ }
5
+ export function tuiIsValidHex(hex) {
6
+ // eslint-disable-next-line unicorn/no-unsafe-regex
7
+ return /^#([A-Fa-f0-9]{3,4}){1,2}$/.test(hex);
8
+ }
9
+ const getChunksFromString = (hex, chunkSize) => hex.match(new RegExp(`.{${chunkSize}}`, `g`));
10
+ const convertHexUnitTo256 = (hexStr) => parseInt(hexStr.repeat(2 / hexStr.length), 16);
11
+ const getAlphaFloat = (a, alpha) => {
12
+ if (typeof a !== `undefined`) {
13
+ return Number((a / 255).toFixed(2));
14
+ }
15
+ if (typeof alpha !== `number` || alpha < 0 || alpha > 1) {
16
+ return 1;
17
+ }
18
+ return alpha;
19
+ };
20
+ export function tuiParseHex(hex, alpha) {
21
+ var _a;
22
+ if (!tuiIsValidHex(hex)) {
23
+ throw new Error(`Invalid HEX`);
24
+ }
25
+ const chunkSize = Math.floor((hex.length - 1) / 3);
26
+ const hexArr = getChunksFromString(hex.slice(1), chunkSize);
27
+ const [r, g, b, a] = (_a = hexArr === null || hexArr === void 0 ? void 0 : hexArr.map(convertHexUnitTo256)) !== null && _a !== void 0 ? _a : [];
28
+ const floatAlpha = getAlphaFloat(a, alpha);
29
+ return [r, g, b, floatAlpha];
30
+ }
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGV4LXRvLXJnYmEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvdXRpbHMvY29sb3IvaGV4LXRvLXJnYmEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLFlBQVksQ0FBQyxHQUFXLEVBQUUsS0FBYztJQUNwRCxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsV0FBVyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUU3QyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztBQUM1RSxDQUFDO0FBRUQsTUFBTSxVQUFVLGFBQWEsQ0FBQyxHQUFXO0lBQ3JDLG1EQUFtRDtJQUNuRCxPQUFPLDRCQUE0QixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNsRCxDQUFDO0FBRUQsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLEdBQVcsRUFBRSxTQUFpQixFQUEyQixFQUFFLENBQ3BGLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsS0FBSyxTQUFTLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBRWxELE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxNQUFjLEVBQVUsRUFBRSxDQUNuRCxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBRW5ELE1BQU0sYUFBYSxHQUFHLENBQUMsQ0FBUyxFQUFFLEtBQWMsRUFBVSxFQUFFO0lBQ3hELElBQUksT0FBTyxDQUFDLEtBQUssV0FBVyxFQUFFO1FBQzFCLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ3ZDO0lBRUQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksS0FBSyxHQUFHLENBQUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFO1FBQ3JELE9BQU8sQ0FBQyxDQUFDO0tBQ1o7SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDLENBQUM7QUFFRixNQUFNLFVBQVUsV0FBVyxDQUN2QixHQUFXLEVBQ1gsS0FBYzs7SUFFZCxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ3JCLE1BQU0sSUFBSSxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7S0FDbEM7SUFFRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNuRCxNQUFNLE1BQU0sR0FBRyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzVELE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxNQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxHQUFHLENBQUMsbUJBQW1CLENBQUMsbUNBQUksRUFBRSxDQUFDO0lBQzVELE1BQU0sVUFBVSxHQUFHLGFBQWEsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFM0MsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQ2pDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gdHVpSGV4VG9SR0JBKGhleDogc3RyaW5nLCBhbHBoYT86IG51bWJlcik6IHN0cmluZyB7XG4gICAgY29uc3QgW3IsIGcsIGIsIGFdID0gdHVpUGFyc2VIZXgoaGV4LCBhbHBoYSk7XG5cbiAgICByZXR1cm4gYSA8IDEgPyBgcmdiYSgke3J9LCAke2d9LCAke2J9LCAke2F9KWAgOiBgcmdiKCR7cn0sICR7Z30sICR7Yn0pYDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHR1aUlzVmFsaWRIZXgoaGV4OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdW5pY29ybi9uby11bnNhZmUtcmVnZXhcbiAgICByZXR1cm4gL14jKFtBLUZhLWYwLTldezMsNH0pezEsMn0kLy50ZXN0KGhleCk7XG59XG5cbmNvbnN0IGdldENodW5rc0Zyb21TdHJpbmcgPSAoaGV4OiBzdHJpbmcsIGNodW5rU2l6ZTogbnVtYmVyKTogUmVnRXhwTWF0Y2hBcnJheSB8IG51bGwgPT5cbiAgICBoZXgubWF0Y2gobmV3IFJlZ0V4cChgLnske2NodW5rU2l6ZX19YCwgYGdgKSk7XG5cbmNvbnN0IGNvbnZlcnRIZXhVbml0VG8yNTYgPSAoaGV4U3RyOiBzdHJpbmcpOiBudW1iZXIgPT5cbiAgICBwYXJzZUludChoZXhTdHIucmVwZWF0KDIgLyBoZXhTdHIubGVuZ3RoKSwgMTYpO1xuXG5jb25zdCBnZXRBbHBoYUZsb2F0ID0gKGE6IG51bWJlciwgYWxwaGE/OiBudW1iZXIpOiBudW1iZXIgPT4ge1xuICAgIGlmICh0eXBlb2YgYSAhPT0gYHVuZGVmaW5lZGApIHtcbiAgICAgICAgcmV0dXJuIE51bWJlcigoYSAvIDI1NSkudG9GaXhlZCgyKSk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBhbHBoYSAhPT0gYG51bWJlcmAgfHwgYWxwaGEgPCAwIHx8IGFscGhhID4gMSkge1xuICAgICAgICByZXR1cm4gMTtcbiAgICB9XG5cbiAgICByZXR1cm4gYWxwaGE7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gdHVpUGFyc2VIZXgoXG4gICAgaGV4OiBzdHJpbmcsXG4gICAgYWxwaGE/OiBudW1iZXIsXG4pOiBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyXSB7XG4gICAgaWYgKCF0dWlJc1ZhbGlkSGV4KGhleCkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIEhFWGApO1xuICAgIH1cblxuICAgIGNvbnN0IGNodW5rU2l6ZSA9IE1hdGguZmxvb3IoKGhleC5sZW5ndGggLSAxKSAvIDMpO1xuICAgIGNvbnN0IGhleEFyciA9IGdldENodW5rc0Zyb21TdHJpbmcoaGV4LnNsaWNlKDEpLCBjaHVua1NpemUpO1xuICAgIGNvbnN0IFtyLCBnLCBiLCBhXSA9IGhleEFycj8ubWFwKGNvbnZlcnRIZXhVbml0VG8yNTYpID8/IFtdO1xuICAgIGNvbnN0IGZsb2F0QWxwaGEgPSBnZXRBbHBoYUZsb2F0KGEsIGFscGhhKTtcblxuICAgIHJldHVybiBbciwgZywgYiwgZmxvYXRBbHBoYV07XG59XG4iXX0=