@taiga-ui/cdk 3.31.1 → 3.32.0
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.
- package/bundles/taiga-ui-cdk-abstract.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-constants.umd.js +1 -1
- package/bundles/taiga-ui-cdk-constants.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-date-time.umd.js +14 -14
- package/bundles/taiga-ui-cdk-date-time.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-auto-focus.umd.js +45 -8
- package/bundles/taiga-ui-cdk-directives-auto-focus.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-drag.umd.js +6 -6
- package/bundles/taiga-ui-cdk-directives-drag.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-enums.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-observables.umd.js +1 -1
- package/bundles/taiga-ui-cdk-observables.umd.js.map +1 -1
- package/constants/version.d.ts +1 -1
- package/constants/version.js +1 -1
- package/directives/auto-focus/autofocus.directive.d.ts +6 -3
- package/directives/auto-focus/autofocus.options.d.ts +10 -3
- package/directives/auto-focus/handlers/abstract.handler.d.ts +1 -1
- package/enums/day-of-week.d.ts +1 -1
- package/enums/month-number.d.ts +1 -1
- package/esm2015/abstract/portal-host.js +1 -3
- package/esm2015/abstract/portal-service.js +1 -1
- package/esm2015/constants/version.js +2 -2
- package/esm2015/date-time/day.js +7 -6
- package/esm2015/date-time/month.js +7 -6
- package/esm2015/directives/auto-focus/autofocus.directive.js +27 -6
- package/esm2015/directives/auto-focus/autofocus.options.js +15 -3
- package/esm2015/directives/auto-focus/handlers/abstract.handler.js +2 -2
- package/esm2015/directives/auto-focus/handlers/default.handler.js +1 -3
- package/esm2015/directives/auto-focus/handlers/ios.handler.js +4 -3
- package/esm2015/directives/auto-focus/handlers/sync.handler.js +1 -3
- package/esm2015/directives/drag/drag.directive.js +5 -5
- package/esm2015/enums/day-of-week.js +1 -1
- package/esm2015/enums/month-number.js +1 -1
- package/esm2015/observables/drag-and-drop-from.js +2 -2
- package/fesm2015/taiga-ui-cdk-abstract.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-constants.js +1 -1
- package/fesm2015/taiga-ui-cdk-constants.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-date-time.js +11 -10
- package/fesm2015/taiga-ui-cdk-date-time.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-auto-focus.js +43 -8
- package/fesm2015/taiga-ui-cdk-directives-auto-focus.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-drag.js +4 -4
- package/fesm2015/taiga-ui-cdk-directives-drag.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-enums.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-observables.js +1 -1
- package/fesm2015/taiga-ui-cdk-observables.js.map +1 -1
- package/observables/drag-and-drop-from.d.ts +1 -1
- package/package.json +1 -1
- package/schematics/constants/file-globs.js +2 -0
@@ -1,2 +1,2 @@
|
|
1
|
-
export const TUI_VERSION = `3.
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
1
|
+
export const TUI_VERSION = `3.32.0`;
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9jb25zdGFudHMvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFRVSV9WRVJTSU9OID0gYDMuMzIuMGA7XG4iXX0=
|
package/esm2015/date-time/day.js
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
import { tuiAssert } from '@taiga-ui/cdk/classes';
|
2
|
+
import { TuiDayOfWeek, TuiMonthNumber } from '@taiga-ui/cdk/enums';
|
2
3
|
import { TuiInvalidDayException, TuiInvalidMonthException, TuiInvalidYearException, } from '@taiga-ui/cdk/exceptions';
|
3
4
|
import { tuiInRange, tuiNormalizeToIntNumber } from '@taiga-ui/cdk/utils/math';
|
4
5
|
import { DATE_FILLER_LENGTH } from './date-fillers';
|
@@ -145,7 +146,7 @@ export class TuiDay extends TuiMonth {
|
|
145
146
|
}
|
146
147
|
get isWeekend() {
|
147
148
|
const dayOfWeek = this.dayOfWeek(false);
|
148
|
-
return dayOfWeek ===
|
149
|
+
return dayOfWeek === TuiDayOfWeek.Saturday || dayOfWeek === TuiDayOfWeek.Sunday;
|
149
150
|
}
|
150
151
|
/**
|
151
152
|
* Returns day of week
|
@@ -226,18 +227,18 @@ export class TuiDay extends TuiMonth {
|
|
226
227
|
let days = Math.min(this.day, TuiMonth.getMonthDaysCount(months, TuiYear.isLeapYear(years))) + day;
|
227
228
|
while (days > TuiMonth.getMonthDaysCount(months, TuiYear.isLeapYear(years))) {
|
228
229
|
days -= TuiMonth.getMonthDaysCount(months, TuiYear.isLeapYear(years));
|
229
|
-
if (months ===
|
230
|
+
if (months === TuiMonthNumber.December) {
|
230
231
|
years++;
|
231
|
-
months =
|
232
|
+
months = TuiMonthNumber.January;
|
232
233
|
}
|
233
234
|
else {
|
234
235
|
months++;
|
235
236
|
}
|
236
237
|
}
|
237
238
|
while (days < MIN_DAY) {
|
238
|
-
if (months ===
|
239
|
+
if (months === TuiMonthNumber.January) {
|
239
240
|
years--;
|
240
|
-
months =
|
241
|
+
months = TuiMonthNumber.December;
|
241
242
|
}
|
242
243
|
else {
|
243
244
|
months--;
|
@@ -284,4 +285,4 @@ export class TuiDay extends TuiMonth {
|
|
284
285
|
return new Date(Date.UTC(this.year, this.month, this.day));
|
285
286
|
}
|
286
287
|
}
|
287
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2RhdGUtdGltZS9kYXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRWhELE9BQU8sRUFDSCxzQkFBc0IsRUFDdEIsd0JBQXdCLEVBQ3hCLHVCQUF1QixHQUMxQixNQUFNLDBCQUEwQixDQUFDO0FBR2xDLE9BQU8sRUFBQyxVQUFVLEVBQUUsdUJBQXVCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUU3RSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRCxPQUFPLEVBQUMsT0FBTyxFQUFFLGNBQWMsRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUNwRCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sU0FBUyxDQUFDO0FBQ2pDLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxRQUFRLENBQUM7QUFFL0IsNkJBQTZCO0FBQzdCOztHQUVHO0FBQ0gsTUFBTSxPQUFPLE1BQU8sU0FBUSxRQUFRO0lBQ2hDLFlBQVksSUFBWSxFQUFFLEtBQWEsRUFBVyxHQUFXO1FBQ3pELEtBQUssQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFEMkIsUUFBRyxHQUFILEdBQUcsQ0FBUTtRQUV6RCxTQUFTLElBQUksU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsbUJBQW1CLENBQUMsSUFBVTtRQUNqQyxPQUFPLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVE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USxNQUFNO1FBQ1gsT0FBTyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUN4RCxDQUFDO0lBRUQ7O09BRUc7SUFDTSxpQkFBaUI7UUFDdEIsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRDs7T0FFRztJQUNNLGVBQWU7UUFDcEIsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMvRCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3R1aUFzc2VydH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jbGFzc2VzJztcbmltcG9ydCB7VHVpRGF5T2ZXZWVrLCBUdWlNb250aE51bWJlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9lbnVtcyc7XG5pbXBvcnQge1xuICAgIFR1aUludmFsaWREYXlFeGNlcHRpb24sXG4gICAgVHVpSW52YWxpZE1vbnRoRXhjZXB0aW9uLFxuICAgIFR1aUludmFsaWRZZWFyRXhjZXB0aW9uLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrL2V4Y2VwdGlvbnMnO1xuaW1wb3J0IHtUdWlEYXlMaWtlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUdWlEYXRlTW9kZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay90eXBlcyc7XG5pbXBvcnQge3R1aUluUmFuZ2UsIHR1aU5vcm1hbGl6ZVRvSW50TnVtYmVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21hdGgnO1xuXG5pbXBvcnQge0RBVEVfRklMTEVSX0xFTkdUSH0gZnJvbSAnLi9kYXRlLWZpbGxlcnMnO1xuaW1wb3J0IHtNSU5fREFZLCBNT05USFNfSU5fWUVBUn0gZnJvbSAnLi9kYXRlLXRpbWUnO1xuaW1wb3J0IHtUdWlNb250aH0gZnJvbSAnLi9tb250aCc7XG5pbXBvcnQge1R1aVllYXJ9IGZyb20gJy4veWVhcic7XG5cbi8vIFRPRE86IExvY2FsaXplZCBmb3JtYXR0aW5nXG4vKipcbiAqIEltbXV0YWJsZSBkYXRlIG9iamVjdCwgY29uc2lzdGluZyBvZiBkYXksIG1vbnRoIGFuZCB5ZWFyXG4gKi9cbmV4cG9ydCBjbGFzcyBUdWlEYXkgZXh0ZW5kcyBUdWlNb250aCB7XG4gICAgY29uc3RydWN0b3IoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyLCByZWFkb25seSBkYXk6IG51bWJlcikge1xuICAgICAgICBzdXBlcih5ZWFyLCBtb250aCk7XG4gICAgICAgIG5nRGV2TW9kZSAmJiB0dWlBc3NlcnQuYXNzZXJ0KFR1aURheS5pc1ZhbGlkRGF5KHllYXIsIG1vbnRoLCBkYXkpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIHtAbGluayBUdWlEYXl9IGZyb20gbmF0aXZlIHtAbGluayBEYXRlfSBiYXNlZCBvbiBsb2NhbCB0aW1lIHpvbmVcbiAgICAgKi9cbiAgICBzdGF0aWMgZnJvbUxvY2FsTmF0aXZlRGF0ZShkYXRlOiBEYXRlKTogVHVpRGF5IHtcbiAgICAgICAgcmV0dXJuIG5ldyBUdWlEYXkoZGF0ZS5nZXRGdWxsWWVhcigpLCBkYXRlLmdldE1vbnRoKCksIGRhdGUuZ2V0RGF0ZSgpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIHtAbGluayBUdWlEYXl9IGZyb20gbmF0aXZlIHtAbGluayBEYXRlfSB1c2luZyBVVENcbiAgICAgKi9cbiAgICBzdGF0aWMgZnJvbVV0Y05hdGl2ZURhdGUoZGF0ZTogRGF0ZSk6IFR1aURheSB7XG4gICAgICAgIHJldHVybiBuZXcgVHVpRGF5KGRhdGUuZ2V0VVRDRnVsbFllYXIoKSwgZGF0ZS5nZXRVVENNb250aCgpLCBkYXRlLmdldFVUQ0RhdGUoKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgdmFsaWRpdHkgb2YgeWVhciwgbW9udGggYW5kIGRheVxuICAgICAqXG4gICAgICogQHBhcmFtIHllYXJcbiAgICAgKiBAcGFyYW0gbW9udGhcbiAgICAgKiBAcGFyYW0gZGF5XG4gICAgICogQHJldHVybiBib29sZWFuIHZhbGlkaXR5XG4gICAgICovXG4gICAgc3RhdGljIGlzVmFsaWREYXkoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyLCBkYXk6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgVHVpTW9udGguaXNWYWxpZE1vbnRoKHllYXIsIG1vbnRoKSAmJlxuICAgICAgICAgICAgTnVtYmVyLmlzSW50ZWdlcihkYXkpICYmXG4gICAgICAgICAgICB0dWlJblJhbmdlKFxuICAgICAgICAgICAgICAgIGRheSxcbiAgICAgICAgICAgICAgICBNSU5fREFZLFxuICAgICAgICAgICAgICAgIFR1aU1vbnRoLmdldE1vbnRoRGF5c0NvdW50KG1vbnRoLCBUdWlZZWFyLmlzTGVhcFllYXIoeWVhcikpICsgMSxcbiAgICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDdXJyZW50IGRheSBiYXNlZCBvbiBsb2NhbCB0aW1lIHpvbmVcbiAgICAgKi9cbiAgICBzdGF0aWMgb3ZlcnJpZGUgY3VycmVudExvY2FsKCk6IFR1aURheSB7XG4gICAgICAgIGNvbnN0IG5hdGl2ZURhdGUgPSBuZXcgRGF0ZSgpO1xuICAgICAgICBjb25zdCB5ZWFyID0gbmF0aXZlRGF0ZS5nZXRGdWxsWWVhcigpO1xuICAgICAgICBjb25zdCBtb250aCA9IG5hdGl2ZURhdGUuZ2V0TW9udGgoKTtcbiAgICAgICAgY29uc3QgZGF5ID0gbmF0aXZlRGF0ZS5nZXREYXRlKCk7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUdWlEYXkoeWVhciwgbW9udGgsIGRheSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBjdXJyZW50IGRheSBiYXNlZCBvbiBVVENcbiAgICAgKi9cbiAgICBzdGF0aWMgb3ZlcnJpZGUgY3VycmVudFV0YygpOiBUdWlEYXkge1xuICAgICAgICBjb25zdCBuYXRpdmVEYXRlID0gbmV3IERhdGUoKTtcbiAgICAgICAgY29uc3QgeWVhciA9IG5hdGl2ZURhdGUuZ2V0VVRDRnVsbFllYXIoKTtcbiAgICAgICAgY29uc3QgbW9udGggPSBuYXRpdmVEYXRlLmdldFVUQ01vbnRoKCk7XG4gICAgICAgIGNvbnN0IGRheSA9IG5hdGl2ZURhdGUuZ2V0VVRDRGF0ZSgpO1xuXG4gICAgICAgIHJldHVybiBuZXcgVHVpRGF5KHllYXIsIG1vbnRoLCBkYXkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGN1bGF0ZXMge0BsaW5rIFR1aURheX0gbm9ybWFsaXppbmcgeWVhciwgbW9udGggYW5kIGRheS4ge0BsaW5rIE5hTn0gaXMgdHVybmVkIGludG8gbWluaW1hbCB2YWx1ZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB5ZWFyIGFueSB5ZWFyIHZhbHVlLCBpbmNsdWRpbmcgaW52YWxpZFxuICAgICAqIEBwYXJhbSBtb250aCBhbnkgbW9udGggdmFsdWUsIGluY2x1ZGluZyBpbnZhbGlkIChtb250aHMgc3RhcnQgd2l0aCAwKVxuICAgICAqIEBwYXJhbSBkYXkgYW55IGRheSB2YWx1ZSwgaW5jbHVkaW5nIGludmFsaWRcbiAgICAgKiBAcmV0dXJuIG5vcm1hbGl6ZWQgZGF0ZVxuICAgICAqL1xuICAgIHN0YXRpYyBub3JtYWxpemVPZih5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIGRheTogbnVtYmVyKTogVHVpRGF5IHtcbiAgICAgICAgY29uc3Qgbm9ybWFsaXplZFllYXIgPSBUdWlZZWFyLm5vcm1hbGl6ZVllYXJQYXJ0KHllYXIpO1xuICAgICAgICBjb25zdCBub3JtYWxpemVkTW9udGggPSBUdWlNb250aC5ub3JtYWxpemVNb250aFBhcnQobW9udGgpO1xuICAgICAgICBjb25zdCBub3JtYWxpemVkRGF5ID0gVHVpRGF5Lm5vcm1hbGl6ZURheVBhcnQoXG4gICAgICAgICAgICBkYXksXG4gICAgICAgICAgICBub3JtYWxpemVkTW9udGgsXG4gICAgICAgICAgICBub3JtYWxpemVkWWVhcixcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4gbmV3IFR1aURheShub3JtYWxpemVkWWVhciwgbm9ybWFsaXplZE1vbnRoLCBub3JtYWxpemVkRGF5KTtcbiAgICB9XG5cbiAgICBzdGF0aWMgb3ZlcnJpZGUgbGVuZ3RoQmV0d2Vlbihmcm9tOiBUdWlEYXksIHRvOiBUdWlEYXkpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gTWF0aC5yb3VuZChcbiAgICAgICAgICAgICh0by50b0xvY2FsTmF0aXZlRGF0ZSgpLmdldFRpbWUoKSAtIGZyb20udG9Mb2NhbE5hdGl2ZURhdGUoKS5nZXRUaW1lKCkpIC9cbiAgICAgICAgICAgICAgICAoMTAwMCAqIDYwICogNjAgKiAyNCksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgc3RhdGljIHBhcnNlUmF3RGF0ZVN0cmluZyhcbiAgICAgICAgZGF0ZTogc3RyaW5nLFxuICAgICAgICBkYXRlTW9kZTogVHVpRGF0ZU1vZGUgPSBgRE1ZYCxcbiAgICApOiB7ZGF5OiBudW1iZXI7IG1vbnRoOiBudW1iZXI7IHllYXI6IG51bWJlcn0ge1xuICAgICAgICBuZ0Rldk1vZGUgJiZcbiAgICAgICAgICAgIHR1aUFzc2VydC5hc3NlcnQoXG4gICAgICAgICAgICAgICAgZGF0ZS5sZW5ndGggPT09IERBVEVfRklMTEVSX0xFTkdUSCxcbiAgICAgICAgICAgICAgICBgW3BhcnNlUmF3RGF0ZVN0cmluZ106IHdyb25nIGRhdGUgc3RyaW5nIGxlbmd0aGAsXG4gICAgICAgICAgICApO1xuXG4gICAgICAgIHN3aXRjaCAoZGF0ZU1vZGUpIHtcbiAgICAgICAgICAgIGNhc2UgYFlNRGA6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgZGF5OiBwYXJzZUludChkYXRlLnNsaWNlKDgsIDEwKSwgMTApLFxuICAgICAgICAgICAgICAgICAgICBtb250aDogcGFyc2VJbnQoZGF0ZS5zbGljZSg1LCA3KSwgMTApIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgeWVhcjogcGFyc2VJbnQoZGF0ZS5zbGljZSgwLCA0KSwgMTApLFxuICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNhc2UgYE1EWWA6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgZGF5OiBwYXJzZUludChkYXRlLnNsaWNlKDMsIDUpLCAxMCksXG4gICAgICAgICAgICAgICAgICAgIG1vbnRoOiBwYXJzZUludChkYXRlLnNsaWNlKDAsIDIpLCAxMCkgLSAxLFxuICAgICAgICAgICAgICAgICAgICB5ZWFyOiBwYXJzZUludChkYXRlLnNsaWNlKDYsIDEwKSwgMTApLFxuICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBjYXNlIGBETVlgOlxuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIGRheTogcGFyc2VJbnQoZGF0ZS5zbGljZSgwLCAyKSwgMTApLFxuICAgICAgICAgICAgICAgICAgICBtb250aDogcGFyc2VJbnQoZGF0ZS5zbGljZSgzLCA1KSwgMTApIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgeWVhcjogcGFyc2VJbnQoZGF0ZS5zbGljZSg2LCAxMCksIDEwKSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVE9ETzogTW92ZSBtb250aCBhbmQgeWVhciByZWxhdGVkIGNvZGUgY29ycmVzcG9uZGluZyBjbGFzc2VzXG4gICAgLyoqXG4gICAgICogUGFyc2luZyBhIHN0cmluZyB3aXRoIGRhdGUgd2l0aCBub3JtYWxpemF0aW9uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcmF3RGF0ZSBkYXRlIHN0cmluZ1xuICAgICAqIEBwYXJhbSBkYXRlTW9kZSBkYXRlIGZvcm1hdCBvZiB0aGUgZGF0ZSBzdHJpbmcgKERNWSB8IE1EWSB8IFlNRClcbiAgICAgKiBAcmV0dXJuIG5vcm1hbGl6ZWQgZGF0ZVxuICAgICAqL1xuICAgIHN0YXRpYyBub3JtYWxpemVQYXJzZShyYXdEYXRlOiBzdHJpbmcsIGRhdGVNb2RlOiBUdWlEYXRlTW9kZSA9IGBETVlgKTogVHVpRGF5IHtcbiAgICAgICAgY29uc3Qge2RheSwgbW9udGgsIHllYXJ9ID0gdGhpcy5wYXJzZVJhd0RhdGVTdHJpbmcocmF3RGF0ZSwgZGF0ZU1vZGUpO1xuXG4gICAgICAgIHJldHVybiBUdWlEYXkubm9ybWFsaXplT2YoeWVhciwgbW9udGgsIGRheSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFyc2luZyBhIGRhdGUgc3RyaW5naWZpZWQgaW4gYSB0b0pTT04gZm9ybWF0XG4gICAgICogQHBhcmFtIHllYXJNb250aERheVN0cmluZyBkYXRlIHN0cmluZyBpbiBmb3JtYXQgb2YgWVlZWS1NTS1ERFxuICAgICAqIEByZXR1cm4gZGF0ZVxuICAgICAqIEB0aHJvd3MgZXhjZXB0aW9ucyBpZiBhbnkgcGFydCBvZiB0aGUgZGF0ZSBpcyBpbnZhbGlkXG4gICAgICovXG4gICAgc3RhdGljIGpzb25QYXJzZSh5ZWFyTW9udGhEYXlTdHJpbmc6IHN0cmluZyk6IFR1aURheSB7XG4gICAgICAgIGNvbnN0IHtkYXksIG1vbnRoLCB5ZWFyfSA9IHRoaXMucGFyc2VSYXdEYXRlU3RyaW5nKHllYXJNb250aERheVN0cmluZywgYFlNRGApO1xuXG4gICAgICAgIGlmICghVHVpWWVhci5pc1ZhbGlkWWVhcih5ZWFyKSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IFR1aUludmFsaWRZZWFyRXhjZXB0aW9uKHllYXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFUdWlNb250aC5pc1ZhbGlkTW9udGgoeWVhciwgbW9udGgpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgVHVpSW52YWxpZE1vbnRoRXhjZXB0aW9uKG1vbnRoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICFOdW1iZXIuaXNJbnRlZ2VyKGRheSkgfHxcbiAgICAgICAgICAgICF0dWlJblJhbmdlKFxuICAgICAgICAgICAgICAgIGRheSxcbiAgICAgICAgICAgICAgICBNSU5fREFZLFxuICAgICAgICAgICAgICAgIFR1aU1vbnRoLmdldE1vbnRoRGF5c0NvdW50KG1vbnRoLCBUdWlZZWFyLmlzTGVhcFllYXIoeWVhcikpICsgMSxcbiAgICAgICAgICAgIClcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgVHVpSW52YWxpZERheUV4Y2VwdGlvbihkYXkpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUdWlEYXkoeWVhciwgbW9udGgsIGRheSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHN0YXRpYyBub3JtYWxpemVEYXlQYXJ0KGRheTogbnVtYmVyLCBtb250aDogbnVtYmVyLCB5ZWFyOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydChUdWlNb250aC5pc1ZhbGlkTW9udGgoeWVhciwgbW9udGgpKTtcblxuICAgICAgICBjb25zdCBtb250aERheXNDb3VudCA9IFR1aU1vbnRoLmdldE1vbnRoRGF5c0NvdW50KFxuICAgICAgICAgICAgbW9udGgsXG4gICAgICAgICAgICBUdWlZZWFyLmlzTGVhcFllYXIoeWVhciksXG4gICAgICAgICk7XG5cbiAgICAgICAgcmV0dXJuIHR1aU5vcm1hbGl6ZVRvSW50TnVtYmVyKGRheSwgMSwgbW9udGhEYXlzQ291bnQpO1xuICAgIH1cblxuICAgIGdldCBmb3JtYXR0ZWREYXlQYXJ0KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBTdHJpbmcodGhpcy5kYXkpLnBhZFN0YXJ0KDIsIGAwYCk7XG4gICAgfVxuXG4gICAgZ2V0IGlzV2Vla2VuZCgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgZGF5T2ZXZWVrID0gdGhpcy5kYXlPZldlZWsoZmFsc2UpO1xuXG4gICAgICAgIHJldHVybiBkYXlPZldlZWsgPT09IFR1aURheU9mV2Vlay5TYXR1cmRheSB8fCBkYXlPZldlZWsgPT09IFR1aURheU9mV2Vlay5TdW5kYXk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBkYXkgb2Ygd2Vla1xuICAgICAqXG4gICAgICogQHBhcmFtIHN0YXJ0RnJvbU1vbmRheSB3aGV0aGVyIHdlZWsgc3RhcnRzIGZyb20gTW9uZGF5IGFuZCBub3QgZnJvbSBTdW5kYXlcbiAgICAgKiBAcmV0dXJuIGRheSBvZiB3ZWVrIChmcm9tIDAgdG8gNilcbiAgICAgKi9cbiAgICBkYXlPZldlZWsoc3RhcnRGcm9tTW9uZGF5OiBib29sZWFuID0gdHJ1ZSk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGRheU9mV2VlayA9IHN0YXJ0RnJvbU1vbmRheVxuICAgICAgICAgICAgPyB0aGlzLnRvTG9jYWxOYXRpdmVEYXRlKCkuZ2V0RGF5KCkgLSAxXG4gICAgICAgICAgICA6IHRoaXMudG9Mb2NhbE5hdGl2ZURhdGUoKS5nZXREYXkoKTtcblxuICAgICAgICByZXR1cm4gZGF5T2ZXZWVrIDwgMCA/IDYgOiBkYXlPZldlZWs7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIGRhdGUgaXMgYWZ0ZXIgY3VycmVudFxuICAgICAqL1xuICAgIGRheUJlZm9yZShhbm90aGVyOiBUdWlEYXkpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMubW9udGhCZWZvcmUoYW5vdGhlcikgfHxcbiAgICAgICAgICAgICh0aGlzLm1vbnRoU2FtZShhbm90aGVyKSAmJiB0aGlzLmRheSA8IGFub3RoZXIuZGF5KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCBkYXRlIGlzIGFmdGVyIG9yIGVxdWFscyB0byBjdXJyZW50XG4gICAgICovXG4gICAgZGF5U2FtZU9yQmVmb3JlKGFub3RoZXI6IFR1aURheSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5tb250aEJlZm9yZShhbm90aGVyKSB8fFxuICAgICAgICAgICAgKHRoaXMubW9udGhTYW1lKGFub3RoZXIpICYmIHRoaXMuZGF5IDw9IGFub3RoZXIuZGF5KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCBkYXRlIGlzIHRoZSBzYW1lIGFzIGN1cnJlbnRcbiAgICAgKi9cbiAgICBkYXlTYW1lKGFub3RoZXI6IFR1aURheSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5tb250aFNhbWUoYW5vdGhlcikgJiYgdGhpcy5kYXkgPT09IGFub3RoZXIuZGF5O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCBkYXRlIGlzIGVpdGhlciBiZWZvcmUgb3IgdGhlIHNhbWUgYXMgY3VycmVudFxuICAgICAqL1xuICAgIGRheVNhbWVPckFmdGVyKGFub3RoZXI6IFR1aURheSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5tb250aEFmdGVyKGFub3RoZXIpIHx8XG4gICAgICAgICAgICAodGhpcy5tb250aFNhbWUoYW5vdGhlcikgJiYgdGhpcy5kYXkgPj0gYW5vdGhlci5kYXkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIGRhdGUgaXMgYmVmb3JlIGN1cnJlbnRcbiAgICAgKi9cbiAgICBkYXlBZnRlcihhbm90aGVyOiBUdWlEYXkpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMubW9udGhBZnRlcihhbm90aGVyKSB8fFxuICAgICAgICAgICAgKHRoaXMubW9udGhTYW1lKGFub3RoZXIpICYmIHRoaXMuZGF5ID4gYW5vdGhlci5kYXkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2xhbXBpbmcgZGF0ZSBiZXR3ZWVuIHR3byBsaW1pdHNcbiAgICAgKlxuICAgICAqIEBwYXJhbSBtaW5cbiAgICAgKiBAcGFyYW0gbWF4XG4gICAgICogQHJldHVybiBjbGFtcGVkIGRhdGVcbiAgICAgKi9cbiAgICBkYXlMaW1pdChtaW46IFR1aURheSB8IG51bGwsIG1heDogVHVpRGF5IHwgbnVsbCk6IFR1aURheSB7XG4gICAgICAgIGlmIChtaW4gIT09IG51bGwgJiYgdGhpcy5kYXlCZWZvcmUobWluKSkge1xuICAgICAgICAgICAgcmV0dXJuIG1pbjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChtYXggIT09IG51bGwgJiYgdGhpcy5kYXlBZnRlcihtYXgpKSB7XG4gICAgICAgICAgICByZXR1cm4gbWF4O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSW1tdXRhYmx5IGFsdGVycyBjdXJyZW50IGRheSBieSBwYXNzZWQgb2Zmc2V0XG4gICAgICpcbiAgICAgKiBJZiByZXN1bHRpbmcgbW9udGggaGFzIG1vcmUgZGF5cyB0aGFuIG9yaWdpbmFsIG9uZSwgZGF0ZSBpcyByb3VuZGVkIHRvIHRoZSBtYXhpbXVtIGRheVxuICAgICAqIGluIHRoZSByZXN1bHRpbmcgbW9udGguIE9mZnNldCBvZiBkYXlzIHdpbGwgYmUgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgcmVzdWx0ZWQgeWVhciBhbmQgbW9udGhcbiAgICAgKiB0byBub3QgaW50ZXJmZXJlIHdpdGggcGFyZW50IGNsYXNzZXMgbWV0aG9kc1xuICAgICAqXG4gICAgICogQHBhcmFtIG9mZnNldFxuICAgICAqIEByZXR1cm4gbmV3IGRhdGUgb2JqZWN0IGFzIGEgcmVzdWx0IG9mIG9mZnNldHRpbmcgY3VycmVudFxuICAgICAqL1xuICAgIG92ZXJyaWRlIGFwcGVuZCh7eWVhciA9IDAsIG1vbnRoID0gMCwgZGF5ID0gMH06IFR1aURheUxpa2UpOiBUdWlEYXkge1xuICAgICAgICBjb25zdCB0b3RhbE1vbnRocyA9ICh0aGlzLnllYXIgKyB5ZWFyKSAqIE1PTlRIU19JTl9ZRUFSICsgdGhpcy5tb250aCArIG1vbnRoO1xuICAgICAgICBsZXQgeWVhcnMgPSBNYXRoLmZsb29yKHRvdGFsTW9udGhzIC8gTU9OVEhTX0lOX1lFQVIpO1xuICAgICAgICBsZXQgbW9udGhzID0gdG90YWxNb250aHMgJSBNT05USFNfSU5fWUVBUjtcblxuICAgICAgICBsZXQgZGF5cyA9XG4gICAgICAgICAgICBNYXRoLm1pbihcbiAgICAgICAgICAgICAgICB0aGlzLmRheSxcbiAgICAgICAgICAgICAgICBUdWlNb250aC5nZXRNb250aERheXNDb3VudChtb250aHMsIFR1aVllYXIuaXNMZWFwWWVhcih5ZWFycykpLFxuICAgICAgICAgICAgKSArIGRheTtcblxuICAgICAgICB3aGlsZSAoZGF5cyA+IFR1aU1vbnRoLmdldE1vbnRoRGF5c0NvdW50KG1vbnRocywgVHVpWWVhci5pc0xlYXBZZWFyKHllYXJzKSkpIHtcbiAgICAgICAgICAgIGRheXMgLT0gVHVpTW9udGguZ2V0TW9udGhEYXlzQ291bnQobW9udGhzLCBUdWlZZWFyLmlzTGVhcFllYXIoeWVhcnMpKTtcblxuICAgICAgICAgICAgaWYgKG1vbnRocyA9PT0gVHVpTW9udGhOdW1iZXIuRGVjZW1iZXIpIHtcbiAgICAgICAgICAgICAgICB5ZWFycysrO1xuICAgICAgICAgICAgICAgIG1vbnRocyA9IFR1aU1vbnRoTnVtYmVyLkphbnVhcnk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG1vbnRocysrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgd2hpbGUgKGRheXMgPCBNSU5fREFZKSB7XG4gICAgICAgICAgICBpZiAobW9udGhzID09PSBUdWlNb250aE51bWJlci5KYW51YXJ5KSB7XG4gICAgICAgICAgICAgICAgeWVhcnMtLTtcbiAgICAgICAgICAgICAgICBtb250aHMgPSBUdWlNb250aE51bWJlci5EZWNlbWJlcjtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbW9udGhzLS07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGRheXMgKz0gVHVpTW9udGguZ2V0TW9udGhEYXlzQ291bnQobW9udGhzLCBUdWlZZWFyLmlzTGVhcFllYXIoeWVhcnMpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBuZXcgVHVpRGF5KHllYXJzLCBtb250aHMsIGRheXMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgZm9ybWF0dGVkIHdob2xlIGRhdGVcbiAgICAgKi9cbiAgICBnZXRGb3JtYXR0ZWREYXkoZGF0ZUZvcm1hdDogVHVpRGF0ZU1vZGUsIHNlcGFyYXRvcjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgbmdEZXZNb2RlICYmXG4gICAgICAgICAgICB0dWlBc3NlcnQuYXNzZXJ0KFxuICAgICAgICAgICAgICAgIHNlcGFyYXRvci5sZW5ndGggPT09IDEsXG4gICAgICAgICAgICAgICAgYFNlcGFyYXRvciBzaG91bGQgY29uc2lzdCBvZiBvbmx5IDEgc3ltYm9sYCxcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgZGQgPSB0aGlzLmZvcm1hdHRlZERheVBhcnQ7XG4gICAgICAgIGNvbnN0IG1tID0gdGhpcy5mb3JtYXR0ZWRNb250aFBhcnQ7XG4gICAgICAgIGNvbnN0IHl5eXkgPSB0aGlzLmZvcm1hdHRlZFllYXI7XG5cbiAgICAgICAgc3dpdGNoIChkYXRlRm9ybWF0KSB7XG4gICAgICAgICAgICBjYXNlIGBZTURgOlxuICAgICAgICAgICAgICAgIHJldHVybiBgJHt5eXl5fSR7c2VwYXJhdG9yfSR7bW19JHtzZXBhcmF0b3J9JHtkZH1gO1xuICAgICAgICAgICAgY2FzZSBgTURZYDpcbiAgICAgICAgICAgICAgICByZXR1cm4gYCR7bW19JHtzZXBhcmF0b3J9JHtkZH0ke3NlcGFyYXRvcn0ke3l5eXl9YDtcbiAgICAgICAgICAgIGNhc2UgYERNWWA6XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBgJHtkZH0ke3NlcGFyYXRvcn0ke21tfSR7c2VwYXJhdG9yfSR7eXl5eX1gO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgdG9TdHJpbmcoZGF0ZUZvcm1hdDogVHVpRGF0ZU1vZGUgPSBgRE1ZYCwgc2VwYXJhdG9yOiBzdHJpbmcgPSBgLmApOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRGb3JtYXR0ZWREYXkoZGF0ZUZvcm1hdCwgc2VwYXJhdG9yKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSB0b0pTT04oKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke3N1cGVyLnRvSlNPTigpfS0ke3RoaXMuZm9ybWF0dGVkRGF5UGFydH1gO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgbmF0aXZlIHtAbGluayBEYXRlfSBiYXNlZCBvbiBsb2NhbCB0aW1lIHpvbmVcbiAgICAgKi9cbiAgICBvdmVycmlkZSB0b0xvY2FsTmF0aXZlRGF0ZSgpOiBEYXRlIHtcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKHRoaXMueWVhciwgdGhpcy5tb250aCwgdGhpcy5kYXkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgbmF0aXZlIHtAbGluayBEYXRlfSBiYXNlZCBvbiBVVENcbiAgICAgKi9cbiAgICBvdmVycmlkZSB0b1V0Y05hdGl2ZURhdGUoKTogRGF0ZSB7XG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShEYXRlLlVUQyh0aGlzLnllYXIsIHRoaXMubW9udGgsIHRoaXMuZGF5KSk7XG4gICAgfVxufVxuIl19
|
288
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2RhdGUtdGltZS9kYXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ2hELE9BQU8sRUFBQyxZQUFZLEVBQUUsY0FBYyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDakUsT0FBTyxFQUNILHNCQUFzQixFQUN0Qix3QkFBd0IsRUFDeEIsdUJBQXVCLEdBQzFCLE1BQU0sMEJBQTBCLENBQUM7QUFHbEMsT0FBTyxFQUFDLFVBQVUsRUFBRSx1QkFBdUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRTdFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxPQUFPLEVBQUUsY0FBYyxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ3BELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFDakMsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLFFBQVEsQ0FBQztBQUUvQiw2QkFBNkI7QUFDN0I7O0dBRUc7QUFDSCxNQUFNLE9BQU8sTUFBTyxTQUFRLFFBQVE7SUFDaEMsWUFBWSxJQUFZLEVBQUUsS0FBYSxFQUFXLEdBQVc7UUFDekQsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUQyQixRQUFHLEdBQUgsR0FBRyxDQUFRO1FBRXpELFNBQVMsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxJQUFVO1FBQ2pDLE9BQU8sSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksQ0FBQyxRQUFRLEVB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QUM7U0FDMUQ7SUFDTCxDQUFDO0lBRVEsUUFBUSxDQUFDLGFBQTBCLEtBQUssRUFBRSxZQUFvQixHQUFHO1FBQ3RFLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVRLE1BQU07UUFDWCxPQUFPLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQ3hELENBQUM7SUFFRDs7T0FFRztJQUNNLGlCQUFpQjtRQUN0QixPQUFPLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVEOztPQUVHO0lBQ00sZUFBZTtRQUNwQixPQUFPLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dHVpQXNzZXJ0fSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NsYXNzZXMnO1xuaW1wb3J0IHtUdWlEYXlPZldlZWssIFR1aU1vbnRoTnVtYmVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2VudW1zJztcbmltcG9ydCB7XG4gICAgVHVpSW52YWxpZERheUV4Y2VwdGlvbixcbiAgICBUdWlJbnZhbGlkTW9udGhFeGNlcHRpb24sXG4gICAgVHVpSW52YWxpZFllYXJFeGNlcHRpb24sXG59IGZyb20gJ0B0YWlnYS11aS9jZGsvZXhjZXB0aW9ucyc7XG5pbXBvcnQge1R1aURheUxpa2V9IGZyb20gJ0B0YWlnYS11aS9jZGsvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1R1aURhdGVNb2RlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3R5cGVzJztcbmltcG9ydCB7dHVpSW5SYW5nZSwgdHVpTm9ybWFsaXplVG9JbnROdW1iZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWF0aCc7XG5cbmltcG9ydCB7REFURV9GSUxMRVJfTEVOR1RIfSBmcm9tICcuL2RhdGUtZmlsbGVycyc7XG5pbXBvcnQge01JTl9EQVksIE1PTlRIU19JTl9ZRUFSfSBmcm9tICcuL2RhdGUtdGltZSc7XG5pbXBvcnQge1R1aU1vbnRofSBmcm9tICcuL21vbnRoJztcbmltcG9ydCB7VHVpWWVhcn0gZnJvbSAnLi95ZWFyJztcblxuLy8gVE9ETzogTG9jYWxpemVkIGZvcm1hdHRpbmdcbi8qKlxuICogSW1tdXRhYmxlIGRhdGUgb2JqZWN0LCBjb25zaXN0aW5nIG9mIGRheSwgbW9udGggYW5kIHllYXJcbiAqL1xuZXhwb3J0IGNsYXNzIFR1aURheSBleHRlbmRzIFR1aU1vbnRoIHtcbiAgICBjb25zdHJ1Y3Rvcih5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIHJlYWRvbmx5IGRheTogbnVtYmVyKSB7XG4gICAgICAgIHN1cGVyKHllYXIsIG1vbnRoKTtcbiAgICAgICAgbmdEZXZNb2RlICYmIHR1aUFzc2VydC5hc3NlcnQoVHVpRGF5LmlzVmFsaWREYXkoeWVhciwgbW9udGgsIGRheSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMge0BsaW5rIFR1aURheX0gZnJvbSBuYXRpdmUge0BsaW5rIERhdGV9IGJhc2VkIG9uIGxvY2FsIHRpbWUgem9uZVxuICAgICAqL1xuICAgIHN0YXRpYyBmcm9tTG9jYWxOYXRpdmVEYXRlKGRhdGU6IERhdGUpOiBUdWlEYXkge1xuICAgICAgICByZXR1cm4gbmV3IFR1aURheShkYXRlLmdldEZ1bGxZZWFyKCksIGRhdGUuZ2V0TW9udGgoKSwgZGF0ZS5nZXREYXRlKCkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMge0BsaW5rIFR1aURheX0gZnJvbSBuYXRpdmUge0BsaW5rIERhdGV9IHVzaW5nIFVUQ1xuICAgICAqL1xuICAgIHN0YXRpYyBmcm9tVXRjTmF0aXZlRGF0ZShkYXRlOiBEYXRlKTogVHVpRGF5IHtcbiAgICAgICAgcmV0dXJuIG5ldyBUdWlEYXkoZGF0ZS5nZXRVVENGdWxsWWVhcigpLCBkYXRlLmdldFVUQ01vbnRoKCksIGRhdGUuZ2V0VVRDRGF0ZSgpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVjayB2YWxpZGl0eSBvZiB5ZWFyLCBtb250aCBhbmQgZGF5XG4gICAgICpcbiAgICAgKiBAcGFyYW0geWVhclxuICAgICAqIEBwYXJhbSBtb250aFxuICAgICAqIEBwYXJhbSBkYXlcbiAgICAgKiBAcmV0dXJuIGJvb2xlYW4gdmFsaWRpdHlcbiAgICAgKi9cbiAgICBzdGF0aWMgaXNWYWxpZERheSh5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIGRheTogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBUdWlNb250aC5pc1ZhbGlkTW9udGgoeWVhciwgbW9udGgpICYmXG4gICAgICAgICAgICBOdW1iZXIuaXNJbnRlZ2VyKGRheSkgJiZcbiAgICAgICAgICAgIHR1aUluUmFuZ2UoXG4gICAgICAgICAgICAgICAgZGF5LFxuICAgICAgICAgICAgICAgIE1JTl9EQVksXG4gICAgICAgICAgICAgICAgVHVpTW9udGguZ2V0TW9udGhEYXlzQ291bnQobW9udGgsIFR1aVllYXIuaXNMZWFwWWVhcih5ZWFyKSkgKyAxLFxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEN1cnJlbnQgZGF5IGJhc2VkIG9uIGxvY2FsIHRpbWUgem9uZVxuICAgICAqL1xuICAgIHN0YXRpYyBvdmVycmlkZSBjdXJyZW50TG9jYWwoKTogVHVpRGF5IHtcbiAgICAgICAgY29uc3QgbmF0aXZlRGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICAgIGNvbnN0IHllYXIgPSBuYXRpdmVEYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgICAgIGNvbnN0IG1vbnRoID0gbmF0aXZlRGF0ZS5nZXRNb250aCgpO1xuICAgICAgICBjb25zdCBkYXkgPSBuYXRpdmVEYXRlLmdldERhdGUoKTtcblxuICAgICAgICByZXR1cm4gbmV3IFR1aURheSh5ZWFyLCBtb250aCwgZGF5KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGN1cnJlbnQgZGF5IGJhc2VkIG9uIFVUQ1xuICAgICAqL1xuICAgIHN0YXRpYyBvdmVycmlkZSBjdXJyZW50VXRjKCk6IFR1aURheSB7XG4gICAgICAgIGNvbnN0IG5hdGl2ZURhdGUgPSBuZXcgRGF0ZSgpO1xuICAgICAgICBjb25zdCB5ZWFyID0gbmF0aXZlRGF0ZS5nZXRVVENGdWxsWWVhcigpO1xuICAgICAgICBjb25zdCBtb250aCA9IG5hdGl2ZURhdGUuZ2V0VVRDTW9udGgoKTtcbiAgICAgICAgY29uc3QgZGF5ID0gbmF0aXZlRGF0ZS5nZXRVVENEYXRlKCk7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUdWlEYXkoeWVhciwgbW9udGgsIGRheSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FsY3VsYXRlcyB7QGxpbmsgVHVpRGF5fSBub3JtYWxpemluZyB5ZWFyLCBtb250aCBhbmQgZGF5LiB7QGxpbmsgTmFOfSBpcyB0dXJuZWQgaW50byBtaW5pbWFsIHZhbHVlLlxuICAgICAqXG4gICAgICogQHBhcmFtIHllYXIgYW55IHllYXIgdmFsdWUsIGluY2x1ZGluZyBpbnZhbGlkXG4gICAgICogQHBhcmFtIG1vbnRoIGFueSBtb250aCB2YWx1ZSwgaW5jbHVkaW5nIGludmFsaWQgKG1vbnRocyBzdGFydCB3aXRoIDApXG4gICAgICogQHBhcmFtIGRheSBhbnkgZGF5IHZhbHVlLCBpbmNsdWRpbmcgaW52YWxpZFxuICAgICAqIEByZXR1cm4gbm9ybWFsaXplZCBkYXRlXG4gICAgICovXG4gICAgc3RhdGljIG5vcm1hbGl6ZU9mKHllYXI6IG51bWJlciwgbW9udGg6IG51bWJlciwgZGF5OiBudW1iZXIpOiBUdWlEYXkge1xuICAgICAgICBjb25zdCBub3JtYWxpemVkWWVhciA9IFR1aVllYXIubm9ybWFsaXplWWVhclBhcnQoeWVhcik7XG4gICAgICAgIGNvbnN0IG5vcm1hbGl6ZWRNb250aCA9IFR1aU1vbnRoLm5vcm1hbGl6ZU1vbnRoUGFydChtb250aCk7XG4gICAgICAgIGNvbnN0IG5vcm1hbGl6ZWREYXkgPSBUdWlEYXkubm9ybWFsaXplRGF5UGFydChcbiAgICAgICAgICAgIGRheSxcbiAgICAgICAgICAgIG5vcm1hbGl6ZWRNb250aCxcbiAgICAgICAgICAgIG5vcm1hbGl6ZWRZZWFyLFxuICAgICAgICApO1xuXG4gICAgICAgIHJldHVybiBuZXcgVHVpRGF5KG5vcm1hbGl6ZWRZZWFyLCBub3JtYWxpemVkTW9udGgsIG5vcm1hbGl6ZWREYXkpO1xuICAgIH1cblxuICAgIHN0YXRpYyBvdmVycmlkZSBsZW5ndGhCZXR3ZWVuKGZyb206IFR1aURheSwgdG86IFR1aURheSk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBNYXRoLnJvdW5kKFxuICAgICAgICAgICAgKHRvLnRvTG9jYWxOYXRpdmVEYXRlKCkuZ2V0VGltZSgpIC0gZnJvbS50b0xvY2FsTmF0aXZlRGF0ZSgpLmdldFRpbWUoKSkgL1xuICAgICAgICAgICAgICAgICgxMDAwICogNjAgKiA2MCAqIDI0KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBzdGF0aWMgcGFyc2VSYXdEYXRlU3RyaW5nKFxuICAgICAgICBkYXRlOiBzdHJpbmcsXG4gICAgICAgIGRhdGVNb2RlOiBUdWlEYXRlTW9kZSA9IGBETVlgLFxuICAgICk6IHtkYXk6IG51bWJlcjsgbW9udGg6IG51bWJlcjsgeWVhcjogbnVtYmVyfSB7XG4gICAgICAgIG5nRGV2TW9kZSAmJlxuICAgICAgICAgICAgdHVpQXNzZXJ0LmFzc2VydChcbiAgICAgICAgICAgICAgICBkYXRlLmxlbmd0aCA9PT0gREFURV9GSUxMRVJfTEVOR1RILFxuICAgICAgICAgICAgICAgIGBbcGFyc2VSYXdEYXRlU3RyaW5nXTogd3JvbmcgZGF0ZSBzdHJpbmcgbGVuZ3RoYCxcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgc3dpdGNoIChkYXRlTW9kZSkge1xuICAgICAgICAgICAgY2FzZSBgWU1EYDpcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBkYXk6IHBhcnNlSW50KGRhdGUuc2xpY2UoOCwgMTApLCAxMCksXG4gICAgICAgICAgICAgICAgICAgIG1vbnRoOiBwYXJzZUludChkYXRlLnNsaWNlKDUsIDcpLCAxMCkgLSAxLFxuICAgICAgICAgICAgICAgICAgICB5ZWFyOiBwYXJzZUludChkYXRlLnNsaWNlKDAsIDQpLCAxMCksXG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgY2FzZSBgTURZYDpcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBkYXk6IHBhcnNlSW50KGRhdGUuc2xpY2UoMywgNSksIDEwKSxcbiAgICAgICAgICAgICAgICAgICAgbW9udGg6IHBhcnNlSW50KGRhdGUuc2xpY2UoMCwgMiksIDEwKSAtIDEsXG4gICAgICAgICAgICAgICAgICAgIHllYXI6IHBhcnNlSW50KGRhdGUuc2xpY2UoNiwgMTApLCAxMCksXG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIGNhc2UgYERNWWA6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgZGF5OiBwYXJzZUludChkYXRlLnNsaWNlKDAsIDIpLCAxMCksXG4gICAgICAgICAgICAgICAgICAgIG1vbnRoOiBwYXJzZUludChkYXRlLnNsaWNlKDMsIDUpLCAxMCkgLSAxLFxuICAgICAgICAgICAgICAgICAgICB5ZWFyOiBwYXJzZUludChkYXRlLnNsaWNlKDYsIDEwKSwgMTApLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUT0RPOiBNb3ZlIG1vbnRoIGFuZCB5ZWFyIHJlbGF0ZWQgY29kZSBjb3JyZXNwb25kaW5nIGNsYXNzZXNcbiAgICAvKipcbiAgICAgKiBQYXJzaW5nIGEgc3RyaW5nIHdpdGggZGF0ZSB3aXRoIG5vcm1hbGl6YXRpb25cbiAgICAgKlxuICAgICAqIEBwYXJhbSByYXdEYXRlIGRhdGUgc3RyaW5nXG4gICAgICogQHBhcmFtIGRhdGVNb2RlIGRhdGUgZm9ybWF0IG9mIHRoZSBkYXRlIHN0cmluZyAoRE1ZIHwgTURZIHwgWU1EKVxuICAgICAqIEByZXR1cm4gbm9ybWFsaXplZCBkYXRlXG4gICAgICovXG4gICAgc3RhdGljIG5vcm1hbGl6ZVBhcnNlKHJhd0RhdGU6IHN0cmluZywgZGF0ZU1vZGU6IFR1aURhdGVNb2RlID0gYERNWWApOiBUdWlEYXkge1xuICAgICAgICBjb25zdCB7ZGF5LCBtb250aCwgeWVhcn0gPSB0aGlzLnBhcnNlUmF3RGF0ZVN0cmluZyhyYXdEYXRlLCBkYXRlTW9kZSk7XG5cbiAgICAgICAgcmV0dXJuIFR1aURheS5ub3JtYWxpemVPZih5ZWFyLCBtb250aCwgZGF5KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQYXJzaW5nIGEgZGF0ZSBzdHJpbmdpZmllZCBpbiBhIHRvSlNPTiBmb3JtYXRcbiAgICAgKiBAcGFyYW0geWVhck1vbnRoRGF5U3RyaW5nIGRhdGUgc3RyaW5nIGluIGZvcm1hdCBvZiBZWVlZLU1NLUREXG4gICAgICogQHJldHVybiBkYXRlXG4gICAgICogQHRocm93cyBleGNlcHRpb25zIGlmIGFueSBwYXJ0IG9mIHRoZSBkYXRlIGlzIGludmFsaWRcbiAgICAgKi9cbiAgICBzdGF0aWMganNvblBhcnNlKHllYXJNb250aERheVN0cmluZzogc3RyaW5nKTogVHVpRGF5IHtcbiAgICAgICAgY29uc3Qge2RheSwgbW9udGgsIHllYXJ9ID0gdGhpcy5wYXJzZVJhd0RhdGVTdHJpbmcoeWVhck1vbnRoRGF5U3RyaW5nLCBgWU1EYCk7XG5cbiAgICAgICAgaWYgKCFUdWlZZWFyLmlzVmFsaWRZZWFyKHllYXIpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgVHVpSW52YWxpZFllYXJFeGNlcHRpb24oeWVhcik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIVR1aU1vbnRoLmlzVmFsaWRNb250aCh5ZWFyLCBtb250aCkpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBUdWlJbnZhbGlkTW9udGhFeGNlcHRpb24obW9udGgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIU51bWJlci5pc0ludGVnZXIoZGF5KSB8fFxuICAgICAgICAgICAgIXR1aUluUmFuZ2UoXG4gICAgICAgICAgICAgICAgZGF5LFxuICAgICAgICAgICAgICAgIE1JTl9EQVksXG4gICAgICAgICAgICAgICAgVHVpTW9udGguZ2V0TW9udGhEYXlzQ291bnQobW9udGgsIFR1aVllYXIuaXNMZWFwWWVhcih5ZWFyKSkgKyAxLFxuICAgICAgICAgICAgKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBUdWlJbnZhbGlkRGF5RXhjZXB0aW9uKGRheSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbmV3IFR1aURheSh5ZWFyLCBtb250aCwgZGF5KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc3RhdGljIG5vcm1hbGl6ZURheVBhcnQoZGF5OiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIHllYXI6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIG5nRGV2TW9kZSAmJiB0dWlBc3NlcnQuYXNzZXJ0KFR1aU1vbnRoLmlzVmFsaWRNb250aCh5ZWFyLCBtb250aCkpO1xuXG4gICAgICAgIGNvbnN0IG1vbnRoRGF5c0NvdW50ID0gVHVpTW9udGguZ2V0TW9udGhEYXlzQ291bnQoXG4gICAgICAgICAgICBtb250aCxcbiAgICAgICAgICAgIFR1aVllYXIuaXNMZWFwWWVhcih5ZWFyKSxcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4gdHVpTm9ybWFsaXplVG9JbnROdW1iZXIoZGF5LCAxLCBtb250aERheXNDb3VudCk7XG4gICAgfVxuXG4gICAgZ2V0IGZvcm1hdHRlZERheVBhcnQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFN0cmluZyh0aGlzLmRheSkucGFkU3RhcnQoMiwgYDBgKTtcbiAgICB9XG5cbiAgICBnZXQgaXNXZWVrZW5kKCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBkYXlPZldlZWsgPSB0aGlzLmRheU9mV2VlayhmYWxzZSk7XG5cbiAgICAgICAgcmV0dXJuIGRheU9mV2VlayA9PT0gVHVpRGF5T2ZXZWVrLlNhdHVyZGF5IHx8IGRheU9mV2VlayA9PT0gVHVpRGF5T2ZXZWVrLlN1bmRheTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGRheSBvZiB3ZWVrXG4gICAgICpcbiAgICAgKiBAcGFyYW0gc3RhcnRGcm9tTW9uZGF5IHdoZXRoZXIgd2VlayBzdGFydHMgZnJvbSBNb25kYXkgYW5kIG5vdCBmcm9tIFN1bmRheVxuICAgICAqIEByZXR1cm4gZGF5IG9mIHdlZWsgKGZyb20gMCB0byA2KVxuICAgICAqL1xuICAgIGRheU9mV2VlayhzdGFydEZyb21Nb25kYXk6IGJvb2xlYW4gPSB0cnVlKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgZGF5T2ZXZWVrID0gc3RhcnRGcm9tTW9uZGF5XG4gICAgICAgICAgICA/IHRoaXMudG9Mb2NhbE5hdGl2ZURhdGUoKS5nZXREYXkoKSAtIDFcbiAgICAgICAgICAgIDogdGhpcy50b0xvY2FsTmF0aXZlRGF0ZSgpLmdldERheSgpO1xuXG4gICAgICAgIHJldHVybiBkYXlPZldlZWsgPCAwID8gNiA6IGRheU9mV2VlaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQYXNzZWQgZGF0ZSBpcyBhZnRlciBjdXJyZW50XG4gICAgICovXG4gICAgZGF5QmVmb3JlKGFub3RoZXI6IFR1aURheSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5tb250aEJlZm9yZShhbm90aGVyKSB8fFxuICAgICAgICAgICAgKHRoaXMubW9udGhTYW1lKGFub3RoZXIpICYmIHRoaXMuZGF5IDwgYW5vdGhlci5kYXkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIGRhdGUgaXMgYWZ0ZXIgb3IgZXF1YWxzIHRvIGN1cnJlbnRcbiAgICAgKi9cbiAgICBkYXlTYW1lT3JCZWZvcmUoYW5vdGhlcjogVHVpRGF5KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLm1vbnRoQmVmb3JlKGFub3RoZXIpIHx8XG4gICAgICAgICAgICAodGhpcy5tb250aFNhbWUoYW5vdGhlcikgJiYgdGhpcy5kYXkgPD0gYW5vdGhlci5kYXkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIGRhdGUgaXMgdGhlIHNhbWUgYXMgY3VycmVudFxuICAgICAqL1xuICAgIGRheVNhbWUoYW5vdGhlcjogVHVpRGF5KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm1vbnRoU2FtZShhbm90aGVyKSAmJiB0aGlzLmRheSA9PT0gYW5vdGhlci5kYXk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIGRhdGUgaXMgZWl0aGVyIGJlZm9yZSBvciB0aGUgc2FtZSBhcyBjdXJyZW50XG4gICAgICovXG4gICAgZGF5U2FtZU9yQWZ0ZXIoYW5vdGhlcjogVHVpRGF5KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLm1vbnRoQWZ0ZXIoYW5vdGhlcikgfHxcbiAgICAgICAgICAgICh0aGlzLm1vbnRoU2FtZShhbm90aGVyKSAmJiB0aGlzLmRheSA+PSBhbm90aGVyLmRheSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQYXNzZWQgZGF0ZSBpcyBiZWZvcmUgY3VycmVudFxuICAgICAqL1xuICAgIGRheUFmdGVyKGFub3RoZXI6IFR1aURheSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5tb250aEFmdGVyKGFub3RoZXIpIHx8XG4gICAgICAgICAgICAodGhpcy5tb250aFNhbWUoYW5vdGhlcikgJiYgdGhpcy5kYXkgPiBhbm90aGVyLmRheSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDbGFtcGluZyBkYXRlIGJldHdlZW4gdHdvIGxpbWl0c1xuICAgICAqXG4gICAgICogQHBhcmFtIG1pblxuICAgICAqIEBwYXJhbSBtYXhcbiAgICAgKiBAcmV0dXJuIGNsYW1wZWQgZGF0ZVxuICAgICAqL1xuICAgIGRheUxpbWl0KG1pbjogVHVpRGF5IHwgbnVsbCwgbWF4OiBUdWlEYXkgfCBudWxsKTogVHVpRGF5IHtcbiAgICAgICAgaWYgKG1pbiAhPT0gbnVsbCAmJiB0aGlzLmRheUJlZm9yZShtaW4pKSB7XG4gICAgICAgICAgICByZXR1cm4gbWluO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG1heCAhPT0gbnVsbCAmJiB0aGlzLmRheUFmdGVyKG1heCkpIHtcbiAgICAgICAgICAgIHJldHVybiBtYXg7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJbW11dGFibHkgYWx0ZXJzIGN1cnJlbnQgZGF5IGJ5IHBhc3NlZCBvZmZzZXRcbiAgICAgKlxuICAgICAqIElmIHJlc3VsdGluZyBtb250aCBoYXMgbW9yZSBkYXlzIHRoYW4gb3JpZ2luYWwgb25lLCBkYXRlIGlzIHJvdW5kZWQgdG8gdGhlIG1heGltdW0gZGF5XG4gICAgICogaW4gdGhlIHJlc3VsdGluZyBtb250aC4gT2Zmc2V0IG9mIGRheXMgd2lsbCBiZSBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSByZXN1bHRlZCB5ZWFyIGFuZCBtb250aFxuICAgICAqIHRvIG5vdCBpbnRlcmZlcmUgd2l0aCBwYXJlbnQgY2xhc3NlcyBtZXRob2RzXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb2Zmc2V0XG4gICAgICogQHJldHVybiBuZXcgZGF0ZSBvYmplY3QgYXMgYSByZXN1bHQgb2Ygb2Zmc2V0dGluZyBjdXJyZW50XG4gICAgICovXG4gICAgb3ZlcnJpZGUgYXBwZW5kKHt5ZWFyID0gMCwgbW9udGggPSAwLCBkYXkgPSAwfTogVHVpRGF5TGlrZSk6IFR1aURheSB7XG4gICAgICAgIGNvbnN0IHRvdGFsTW9udGhzID0gKHRoaXMueWVhciArIHllYXIpICogTU9OVEhTX0lOX1lFQVIgKyB0aGlzLm1vbnRoICsgbW9udGg7XG4gICAgICAgIGxldCB5ZWFycyA9IE1hdGguZmxvb3IodG90YWxNb250aHMgLyBNT05USFNfSU5fWUVBUik7XG4gICAgICAgIGxldCBtb250aHMgPSB0b3RhbE1vbnRocyAlIE1PTlRIU19JTl9ZRUFSO1xuXG4gICAgICAgIGxldCBkYXlzID1cbiAgICAgICAgICAgIE1hdGgubWluKFxuICAgICAgICAgICAgICAgIHRoaXMuZGF5LFxuICAgICAgICAgICAgICAgIFR1aU1vbnRoLmdldE1vbnRoRGF5c0NvdW50KG1vbnRocywgVHVpWWVhci5pc0xlYXBZZWFyKHllYXJzKSksXG4gICAgICAgICAgICApICsgZGF5O1xuXG4gICAgICAgIHdoaWxlIChkYXlzID4gVHVpTW9udGguZ2V0TW9udGhEYXlzQ291bnQobW9udGhzLCBUdWlZZWFyLmlzTGVhcFllYXIoeWVhcnMpKSkge1xuICAgICAgICAgICAgZGF5cyAtPSBUdWlNb250aC5nZXRNb250aERheXNDb3VudChtb250aHMsIFR1aVllYXIuaXNMZWFwWWVhcih5ZWFycykpO1xuXG4gICAgICAgICAgICBpZiAobW9udGhzID09PSBUdWlNb250aE51bWJlci5EZWNlbWJlcikge1xuICAgICAgICAgICAgICAgIHllYXJzKys7XG4gICAgICAgICAgICAgICAgbW9udGhzID0gVHVpTW9udGhOdW1iZXIuSmFudWFyeTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbW9udGhzKys7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB3aGlsZSAoZGF5cyA8IE1JTl9EQVkpIHtcbiAgICAgICAgICAgIGlmIChtb250aHMgPT09IFR1aU1vbnRoTnVtYmVyLkphbnVhcnkpIHtcbiAgICAgICAgICAgICAgICB5ZWFycy0tO1xuICAgICAgICAgICAgICAgIG1vbnRocyA9IFR1aU1vbnRoTnVtYmVyLkRlY2VtYmVyO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBtb250aHMtLTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZGF5cyArPSBUdWlNb250aC5nZXRNb250aERheXNDb3VudChtb250aHMsIFR1aVllYXIuaXNMZWFwWWVhcih5ZWFycykpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUdWlEYXkoeWVhcnMsIG1vbnRocywgZGF5cyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBmb3JtYXR0ZWQgd2hvbGUgZGF0ZVxuICAgICAqL1xuICAgIGdldEZvcm1hdHRlZERheShkYXRlRm9ybWF0OiBUdWlEYXRlTW9kZSwgc2VwYXJhdG9yOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBuZ0Rldk1vZGUgJiZcbiAgICAgICAgICAgIHR1aUFzc2VydC5hc3NlcnQoXG4gICAgICAgICAgICAgICAgc2VwYXJhdG9yLmxlbmd0aCA9PT0gMSxcbiAgICAgICAgICAgICAgICBgU2VwYXJhdG9yIHNob3VsZCBjb25zaXN0IG9mIG9ubHkgMSBzeW1ib2xgLFxuICAgICAgICAgICAgKTtcblxuICAgICAgICBjb25zdCBkZCA9IHRoaXMuZm9ybWF0dGVkRGF5UGFydDtcbiAgICAgICAgY29uc3QgbW0gPSB0aGlzLmZvcm1hdHRlZE1vbnRoUGFydDtcbiAgICAgICAgY29uc3QgeXl5eSA9IHRoaXMuZm9ybWF0dGVkWWVhcjtcblxuICAgICAgICBzd2l0Y2ggKGRhdGVGb3JtYXQpIHtcbiAgICAgICAgICAgIGNhc2UgYFlNRGA6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke3l5eXl9JHtzZXBhcmF0b3J9JHttbX0ke3NlcGFyYXRvcn0ke2RkfWA7XG4gICAgICAgICAgICBjYXNlIGBNRFlgOlxuICAgICAgICAgICAgICAgIHJldHVybiBgJHttbX0ke3NlcGFyYXRvcn0ke2RkfSR7c2VwYXJhdG9yfSR7eXl5eX1gO1xuICAgICAgICAgICAgY2FzZSBgRE1ZYDpcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke2RkfSR7c2VwYXJhdG9yfSR7bW19JHtzZXBhcmF0b3J9JHt5eXl5fWA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvdmVycmlkZSB0b1N0cmluZyhkYXRlRm9ybWF0OiBUdWlEYXRlTW9kZSA9IGBETVlgLCBzZXBhcmF0b3I6IHN0cmluZyA9IGAuYCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEZvcm1hdHRlZERheShkYXRlRm9ybWF0LCBzZXBhcmF0b3IpO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIHRvSlNPTigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYCR7c3VwZXIudG9KU09OKCl9LSR7dGhpcy5mb3JtYXR0ZWREYXlQYXJ0fWA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBuYXRpdmUge0BsaW5rIERhdGV9IGJhc2VkIG9uIGxvY2FsIHRpbWUgem9uZVxuICAgICAqL1xuICAgIG92ZXJyaWRlIHRvTG9jYWxOYXRpdmVEYXRlKCk6IERhdGUge1xuICAgICAgICByZXR1cm4gbmV3IERhdGUodGhpcy55ZWFyLCB0aGlzLm1vbnRoLCB0aGlzLmRheSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBuYXRpdmUge0BsaW5rIERhdGV9IGJhc2VkIG9uIFVUQ1xuICAgICAqL1xuICAgIG92ZXJyaWRlIHRvVXRjTmF0aXZlRGF0ZSgpOiBEYXRlIHtcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKERhdGUuVVRDKHRoaXMueWVhciwgdGhpcy5tb250aCwgdGhpcy5kYXkpKTtcbiAgICB9XG59XG4iXX0=
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { tuiAssert } from '@taiga-ui/cdk/classes';
|
2
|
+
import { TuiMonthNumber } from '@taiga-ui/cdk/enums';
|
2
3
|
import { tuiInRange, tuiNormalizeToIntNumber } from '@taiga-ui/cdk/utils/math';
|
3
4
|
import { MAX_MONTH, MIN_MONTH, MONTHS_IN_YEAR } from './date-time';
|
4
5
|
import { TuiYear } from './year';
|
@@ -27,12 +28,12 @@ export class TuiMonth extends TuiYear {
|
|
27
28
|
static getMonthDaysCount(month, isLeapYear) {
|
28
29
|
ngDevMode && tuiAssert.assert(TuiMonth.isValidMonthPart(month));
|
29
30
|
switch (month) {
|
30
|
-
case
|
31
|
+
case TuiMonthNumber.February:
|
31
32
|
return isLeapYear ? 29 : 28;
|
32
|
-
case
|
33
|
-
case
|
34
|
-
case
|
35
|
-
case
|
33
|
+
case TuiMonthNumber.April:
|
34
|
+
case TuiMonthNumber.June:
|
35
|
+
case TuiMonthNumber.September:
|
36
|
+
case TuiMonthNumber.November:
|
36
37
|
return 30;
|
37
38
|
default:
|
38
39
|
return 31;
|
@@ -145,4 +146,4 @@ export class TuiMonth extends TuiYear {
|
|
145
146
|
return new Date(Date.UTC(this.year, this.month));
|
146
147
|
}
|
147
148
|
}
|
148
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9udGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGF0ZS10aW1lL21vbnRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUdoRCxPQUFPLEVBQUMsVUFBVSxFQUFFLHVCQUF1QixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFN0UsT0FBTyxFQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxRQUFRLENBQUM7QUFFL0I7O0dBRUc7QUFDSCxNQUFNLE9BQU8sUUFBUyxTQUFRLE9BQU87SUFDakM7OztPQUdHO0lBQ0gsWUFBWSxJQUFZLEVBQVcsS0FBYTtRQUM1QyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFEbUIsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUU1QyxTQUFTLElBQUksU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBWSxFQUFFLEtBQWE7UUFDM0MsT0FBTyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsaUJBQWlCLENBQUMsS0FBYSxFQUFFLFVBQW1CO1FBQ3ZELFNBQVMsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBRWhFLFFBQVEsS0FBSyxFQUFFO1lBQ1g7Z0JBQ0ksT0FBTyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUs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QUNILGVBQWU7UUFDWCxPQUFPLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNyRCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3R1aUFzc2VydH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jbGFzc2VzJztcbmltcG9ydCB7VHVpTW9udGhOdW1iZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvZW51bXMnO1xuaW1wb3J0IHtUdWlNb250aExpa2V9IGZyb20gJ0B0YWlnYS11aS9jZGsvaW50ZXJmYWNlcyc7XG5pbXBvcnQge3R1aUluUmFuZ2UsIHR1aU5vcm1hbGl6ZVRvSW50TnVtYmVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21hdGgnO1xuXG5pbXBvcnQge01BWF9NT05USCwgTUlOX01PTlRILCBNT05USFNfSU5fWUVBUn0gZnJvbSAnLi9kYXRlLXRpbWUnO1xuaW1wb3J0IHtUdWlZZWFyfSBmcm9tICcuL3llYXInO1xuXG4vKipcbiAqIEltbXV0YWJsZSBvYmplY3QgY29uc2lzdGluZyBvZiB5ZWFyIGFuZCBtb250aFxuICovXG5leHBvcnQgY2xhc3MgVHVpTW9udGggZXh0ZW5kcyBUdWlZZWFyIGltcGxlbWVudHMgVHVpTW9udGhMaWtlIHtcbiAgICAvKipcbiAgICAgKiBAcGFyYW0geWVhclxuICAgICAqIEBwYXJhbSBtb250aCAoc3RhcnRpbmcgd2l0aCAwKVxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKHllYXI6IG51bWJlciwgcmVhZG9ubHkgbW9udGg6IG51bWJlcikge1xuICAgICAgICBzdXBlcih5ZWFyKTtcbiAgICAgICAgbmdEZXZNb2RlICYmIHR1aUFzc2VydC5hc3NlcnQoVHVpTW9udGguaXNWYWxpZE1vbnRoKHllYXIsIG1vbnRoKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGVzdHMgbW9udGggYW5kIHllYXIgZm9yIHZhbGlkaXR5XG4gICAgICovXG4gICAgc3RhdGljIGlzVmFsaWRNb250aCh5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIFR1aVllYXIuaXNWYWxpZFllYXIoeWVhcikgJiYgVHVpTW9udGguaXNWYWxpZE1vbnRoUGFydChtb250aCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBudW1iZXIgb2YgZGF5cyBpbiBhIG1vbnRoXG4gICAgICovXG4gICAgc3RhdGljIGdldE1vbnRoRGF5c0NvdW50KG1vbnRoOiBudW1iZXIsIGlzTGVhcFllYXI6IGJvb2xlYW4pOiBudW1iZXIge1xuICAgICAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydChUdWlNb250aC5pc1ZhbGlkTW9udGhQYXJ0KG1vbnRoKSk7XG5cbiAgICAgICAgc3dpdGNoIChtb250aCkge1xuICAgICAgICAgICAgY2FzZSBUdWlNb250aE51bWJlci5GZWJydWFyeTpcbiAgICAgICAgICAgICAgICByZXR1cm4gaXNMZWFwWWVhciA/IDI5IDogMjg7XG4gICAgICAgICAgICBjYXNlIFR1aU1vbnRoTnVtYmVyLkFwcmlsOlxuICAgICAgICAgICAgY2FzZSBUdWlNb250aE51bWJlci5KdW5lOlxuICAgICAgICAgICAgY2FzZSBUdWlNb250aE51bWJlci5TZXB0ZW1iZXI6XG4gICAgICAgICAgICBjYXNlIFR1aU1vbnRoTnVtYmVyLk5vdmVtYmVyOlxuICAgICAgICAgICAgICAgIHJldHVybiAzMDtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIDMxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBjdXJyZW50IG1vbnRoIGFuZCB5ZWFyIGJhc2VkIG9uIGxvY2FsIHRpbWUgem9uZVxuICAgICAqIEBub3NpZGVlZmZlY3RzXG4gICAgICovXG4gICAgc3RhdGljIGN1cnJlbnRMb2NhbCgpOiBUdWlNb250aCB7XG4gICAgICAgIGNvbnN0IG5hdGl2ZURhdGUgPSBuZXcgRGF0ZSgpO1xuXG4gICAgICAgIHJldHVybiBuZXcgVHVpTW9udGgobmF0aXZlRGF0ZS5nZXRGdWxsWWVhcigpLCBuYXRpdmVEYXRlLmdldE1vbnRoKCkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgY3VycmVudCBtb250aCBhbmQgeWVhciBiYXNlZCBvbiBVVENcbiAgICAgKi9cbiAgICBzdGF0aWMgY3VycmVudFV0YygpOiBUdWlNb250aCB7XG4gICAgICAgIGNvbnN0IG5hdGl2ZURhdGUgPSBuZXcgRGF0ZSgpO1xuXG4gICAgICAgIHJldHVybiBuZXcgVHVpTW9udGgobmF0aXZlRGF0ZS5nZXRVVENGdWxsWWVhcigpLCBuYXRpdmVEYXRlLmdldFVUQ01vbnRoKCkpO1xuICAgIH1cblxuICAgIHN0YXRpYyBvdmVycmlkZSBsZW5ndGhCZXR3ZWVuKGZyb206IFR1aU1vbnRoLCB0bzogVHVpTW9udGgpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBhYnNvbHV0ZUZyb20gPSBmcm9tLm1vbnRoICsgZnJvbS55ZWFyICogMTI7XG4gICAgICAgIGNvbnN0IGFic29sdXRlVG8gPSB0by5tb250aCArIHRvLnllYXIgKiAxMjtcblxuICAgICAgICByZXR1cm4gYWJzb2x1dGVUbyAtIGFic29sdXRlRnJvbTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBOb3JtYWxpemVzIG51bWJlciBieSBjbGFtcGluZyBpdCBiZXR3ZWVuIG1pbiBhbmQgbWF4IG1vbnRoXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHN0YXRpYyBub3JtYWxpemVNb250aFBhcnQobW9udGg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0dWlOb3JtYWxpemVUb0ludE51bWJlcihtb250aCwgTUlOX01PTlRILCBNQVhfTU9OVEgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRlc3RzIG1vbnRoIGZvciB2YWxpZGl0eVxuICAgICAqL1xuICAgIHByaXZhdGUgc3RhdGljIGlzVmFsaWRNb250aFBhcnQobW9udGg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gTnVtYmVyLmlzSW50ZWdlcihtb250aCkgJiYgdHVpSW5SYW5nZShtb250aCwgTUlOX01PTlRILCBNQVhfTU9OVEggKyAxKTtcbiAgICB9XG5cbiAgICBnZXQgZm9ybWF0dGVkTW9udGhQYXJ0KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBTdHJpbmcodGhpcy5tb250aCArIDEpLnBhZFN0YXJ0KDIsIGAwYCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBkYXlzIGluIGEgbW9udGhcbiAgICAgKi9cbiAgICBnZXQgZGF5c0NvdW50KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBUdWlNb250aC5nZXRNb250aERheXNDb3VudCh0aGlzLm1vbnRoLCB0aGlzLmlzTGVhcFllYXIpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCBtb250aCBhbmQgeWVhciBhcmUgYWZ0ZXIgY3VycmVudFxuICAgICAqL1xuICAgIG1vbnRoQmVmb3JlKGFub3RoZXI6IFR1aU1vbnRoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLnllYXJCZWZvcmUoYW5vdGhlcikgfHxcbiAgICAgICAgICAgICh0aGlzLnllYXJTYW1lKGFub3RoZXIpICYmIHRoaXMubW9udGggPCBhbm90aGVyLm1vbnRoKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCBtb250aCBhbmQgeWVhciBhcmUgYWZ0ZXIgb3IgdGhlIHNhbWUgYXMgY3VycmVudFxuICAgICAqL1xuICAgIG1vbnRoU2FtZU9yQmVmb3JlKGFub3RoZXI6IFR1aU1vbnRoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLnllYXJCZWZvcmUoYW5vdGhlcikgfHxcbiAgICAgICAgICAgICh0aGlzLnllYXJTYW1lKGFub3RoZXIpICYmIHRoaXMubW9udGggPD0gYW5vdGhlci5tb250aClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQYXNzZWQgbW9udGggYW5kIHllYXIgYXJlIHRoZSBzYW1lIGFzIGN1cnJlbnRcbiAgICAgKi9cbiAgICBtb250aFNhbWUoYW5vdGhlcjogVHVpTW9udGgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMueWVhclNhbWUoYW5vdGhlcikgJiYgdGhpcy5tb250aCA9PT0gYW5vdGhlci5tb250aDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQYXNzZWQgbW9udGggYW5kIHllYXIgYXJlIGVpdGhlciBiZWZvcmUgb3IgZXF1YWwgdG8gY3VycmVudFxuICAgICAqL1xuICAgIG1vbnRoU2FtZU9yQWZ0ZXIoYW5vdGhlcjogVHVpTW9udGgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMueWVhckFmdGVyKGFub3RoZXIpIHx8XG4gICAgICAgICAgICAodGhpcy55ZWFyU2FtZShhbm90aGVyKSAmJiB0aGlzLm1vbnRoID49IGFub3RoZXIubW9udGgpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIG1vbnRoIGFuZCB5ZWFyIGFyZSBiZWZvcmUgY3VycmVudFxuICAgICAqL1xuICAgIG1vbnRoQWZ0ZXIoYW5vdGhlcjogVHVpTW9udGgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMueWVhckFmdGVyKGFub3RoZXIpIHx8XG4gICAgICAgICAgICAodGhpcy55ZWFyU2FtZShhbm90aGVyKSAmJiB0aGlzLm1vbnRoID4gYW5vdGhlci5tb250aClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJbW11dGFibHkgYWx0ZXJzIGN1cnJlbnQgbW9udGggYW5kIHllYXIgYnkgcGFzc2VkIG9mZnNldFxuICAgICAqXG4gICAgICogQHBhcmFtIG9mZnNldFxuICAgICAqIEByZXR1cm4gbmV3IG1vbnRoIGFuZCB5ZWFyIG9iamVjdCBhcyBhIHJlc3VsdCBvZiBvZmZzZXR0aW5nIGN1cnJlbnRcbiAgICAgKi9cbiAgICBvdmVycmlkZSBhcHBlbmQoe3llYXIgPSAwLCBtb250aCA9IDB9OiBUdWlNb250aExpa2UpOiBUdWlNb250aCB7XG4gICAgICAgIGNvbnN0IHRvdGFsTW9udGhzID0gKHRoaXMueWVhciArIHllYXIpICogTU9OVEhTX0lOX1lFQVIgKyB0aGlzLm1vbnRoICsgbW9udGg7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUdWlNb250aChcbiAgICAgICAgICAgIE1hdGguZmxvb3IodG90YWxNb250aHMgLyBNT05USFNfSU5fWUVBUiksXG4gICAgICAgICAgICB0b3RhbE1vbnRocyAlIE1PTlRIU19JTl9ZRUFSLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgJHt0aGlzLmZvcm1hdHRlZE1vbnRoUGFydH0uJHt0aGlzLmZvcm1hdHRlZFllYXJ9YDtcbiAgICB9XG5cbiAgICBvdmVycmlkZSB2YWx1ZU9mKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLnRvTG9jYWxOYXRpdmVEYXRlKCkudmFsdWVPZigpO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIHRvSlNPTigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYCR7c3VwZXIudG9KU09OKCl9LSR7dGhpcy5mb3JtYXR0ZWRNb250aFBhcnR9YDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIG5hdGl2ZSB7QGxpbmsgRGF0ZX0gYmFzZWQgb24gbG9jYWwgdGltZSB6b25lXG4gICAgICovXG4gICAgdG9Mb2NhbE5hdGl2ZURhdGUoKTogRGF0ZSB7XG4gICAgICAgIHJldHVybiBuZXcgRGF0ZSh0aGlzLnllYXIsIHRoaXMubW9udGgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgbmF0aXZlIHtAbGluayBEYXRlfSBiYXNlZCBvbiBVVENcbiAgICAgKi9cbiAgICB0b1V0Y05hdGl2ZURhdGUoKTogRGF0ZSB7XG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShEYXRlLlVUQyh0aGlzLnllYXIsIHRoaXMubW9udGgpKTtcbiAgICB9XG59XG4iXX0=
|
149
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9udGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGF0ZS10aW1lL21vbnRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNoRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFbkQsT0FBTyxFQUFDLFVBQVUsRUFBRSx1QkFBdUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRTdFLE9BQU8sRUFBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUNqRSxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sUUFBUSxDQUFDO0FBRS9COztHQUVHO0FBQ0gsTUFBTSxPQUFPLFFBQVMsU0FBUSxPQUFPO0lBQ2pDOzs7T0FHRztJQUNILFlBQVksSUFBWSxFQUFXLEtBQWE7UUFDNUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRG1CLFVBQUssR0FBTCxLQUFLLENBQVE7UUFFNUMsU0FBUyxJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsWUFBWSxDQUFDLElBQVksRUFBRSxLQUFhO1FBQzNDLE9BQU8sT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxRQUFRLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLGlCQUFpQixDQUFDLEtBQWEsRUFBRSxVQUFtQjtRQUN2RCxTQUFTLElBQUksU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUVoRSxRQUFRLEtBQUssRUFB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QixFQUFFLENBQUM7SUFDMUQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsaUJBQWlCO1FBQ2IsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxlQUFlO1FBQ1gsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDckQsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHt0dWlBc3NlcnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvY2xhc3Nlcyc7XG5pbXBvcnQge1R1aU1vbnRoTnVtYmVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2VudW1zJztcbmltcG9ydCB7VHVpTW9udGhMaWtlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2ludGVyZmFjZXMnO1xuaW1wb3J0IHt0dWlJblJhbmdlLCB0dWlOb3JtYWxpemVUb0ludE51bWJlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9tYXRoJztcblxuaW1wb3J0IHtNQVhfTU9OVEgsIE1JTl9NT05USCwgTU9OVEhTX0lOX1lFQVJ9IGZyb20gJy4vZGF0ZS10aW1lJztcbmltcG9ydCB7VHVpWWVhcn0gZnJvbSAnLi95ZWFyJztcblxuLyoqXG4gKiBJbW11dGFibGUgb2JqZWN0IGNvbnNpc3Rpbmcgb2YgeWVhciBhbmQgbW9udGhcbiAqL1xuZXhwb3J0IGNsYXNzIFR1aU1vbnRoIGV4dGVuZHMgVHVpWWVhciBpbXBsZW1lbnRzIFR1aU1vbnRoTGlrZSB7XG4gICAgLyoqXG4gICAgICogQHBhcmFtIHllYXJcbiAgICAgKiBAcGFyYW0gbW9udGggKHN0YXJ0aW5nIHdpdGggMClcbiAgICAgKi9cbiAgICBjb25zdHJ1Y3Rvcih5ZWFyOiBudW1iZXIsIHJlYWRvbmx5IG1vbnRoOiBudW1iZXIpIHtcbiAgICAgICAgc3VwZXIoeWVhcik7XG4gICAgICAgIG5nRGV2TW9kZSAmJiB0dWlBc3NlcnQuYXNzZXJ0KFR1aU1vbnRoLmlzVmFsaWRNb250aCh5ZWFyLCBtb250aCkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRlc3RzIG1vbnRoIGFuZCB5ZWFyIGZvciB2YWxpZGl0eVxuICAgICAqL1xuICAgIHN0YXRpYyBpc1ZhbGlkTW9udGgoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBUdWlZZWFyLmlzVmFsaWRZZWFyKHllYXIpICYmIFR1aU1vbnRoLmlzVmFsaWRNb250aFBhcnQobW9udGgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgbnVtYmVyIG9mIGRheXMgaW4gYSBtb250aFxuICAgICAqL1xuICAgIHN0YXRpYyBnZXRNb250aERheXNDb3VudChtb250aDogbnVtYmVyLCBpc0xlYXBZZWFyOiBib29sZWFuKTogbnVtYmVyIHtcbiAgICAgICAgbmdEZXZNb2RlICYmIHR1aUFzc2VydC5hc3NlcnQoVHVpTW9udGguaXNWYWxpZE1vbnRoUGFydChtb250aCkpO1xuXG4gICAgICAgIHN3aXRjaCAobW9udGgpIHtcbiAgICAgICAgICAgIGNhc2UgVHVpTW9udGhOdW1iZXIuRmVicnVhcnk6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGlzTGVhcFllYXIgPyAyOSA6IDI4O1xuICAgICAgICAgICAgY2FzZSBUdWlNb250aE51bWJlci5BcHJpbDpcbiAgICAgICAgICAgIGNhc2UgVHVpTW9udGhOdW1iZXIuSnVuZTpcbiAgICAgICAgICAgIGNhc2UgVHVpTW9udGhOdW1iZXIuU2VwdGVtYmVyOlxuICAgICAgICAgICAgY2FzZSBUdWlNb250aE51bWJlci5Ob3ZlbWJlcjpcbiAgICAgICAgICAgICAgICByZXR1cm4gMzA7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiAzMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgY3VycmVudCBtb250aCBhbmQgeWVhciBiYXNlZCBvbiBsb2NhbCB0aW1lIHpvbmVcbiAgICAgKiBAbm9zaWRlZWZmZWN0c1xuICAgICAqL1xuICAgIHN0YXRpYyBjdXJyZW50TG9jYWwoKTogVHVpTW9udGgge1xuICAgICAgICBjb25zdCBuYXRpdmVEYXRlID0gbmV3IERhdGUoKTtcblxuICAgICAgICByZXR1cm4gbmV3IFR1aU1vbnRoKG5hdGl2ZURhdGUuZ2V0RnVsbFllYXIoKSwgbmF0aXZlRGF0ZS5nZXRNb250aCgpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGN1cnJlbnQgbW9udGggYW5kIHllYXIgYmFzZWQgb24gVVRDXG4gICAgICovXG4gICAgc3RhdGljIGN1cnJlbnRVdGMoKTogVHVpTW9udGgge1xuICAgICAgICBjb25zdCBuYXRpdmVEYXRlID0gbmV3IERhdGUoKTtcblxuICAgICAgICByZXR1cm4gbmV3IFR1aU1vbnRoKG5hdGl2ZURhdGUuZ2V0VVRDRnVsbFllYXIoKSwgbmF0aXZlRGF0ZS5nZXRVVENNb250aCgpKTtcbiAgICB9XG5cbiAgICBzdGF0aWMgb3ZlcnJpZGUgbGVuZ3RoQmV0d2Vlbihmcm9tOiBUdWlNb250aCwgdG86IFR1aU1vbnRoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgYWJzb2x1dGVGcm9tID0gZnJvbS5tb250aCArIGZyb20ueWVhciAqIDEyO1xuICAgICAgICBjb25zdCBhYnNvbHV0ZVRvID0gdG8ubW9udGggKyB0by55ZWFyICogMTI7XG5cbiAgICAgICAgcmV0dXJuIGFic29sdXRlVG8gLSBhYnNvbHV0ZUZyb207XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTm9ybWFsaXplcyBudW1iZXIgYnkgY2xhbXBpbmcgaXQgYmV0d2VlbiBtaW4gYW5kIG1heCBtb250aFxuICAgICAqL1xuICAgIHByb3RlY3RlZCBzdGF0aWMgbm9ybWFsaXplTW9udGhQYXJ0KG1vbnRoOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdHVpTm9ybWFsaXplVG9JbnROdW1iZXIobW9udGgsIE1JTl9NT05USCwgTUFYX01PTlRIKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUZXN0cyBtb250aCBmb3IgdmFsaWRpdHlcbiAgICAgKi9cbiAgICBwcml2YXRlIHN0YXRpYyBpc1ZhbGlkTW9udGhQYXJ0KG1vbnRoOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIE51bWJlci5pc0ludGVnZXIobW9udGgpICYmIHR1aUluUmFuZ2UobW9udGgsIE1JTl9NT05USCwgTUFYX01PTlRIICsgMSk7XG4gICAgfVxuXG4gICAgZ2V0IGZvcm1hdHRlZE1vbnRoUGFydCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gU3RyaW5nKHRoaXMubW9udGggKyAxKS5wYWRTdGFydCgyLCBgMGApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgZGF5cyBpbiBhIG1vbnRoXG4gICAgICovXG4gICAgZ2V0IGRheXNDb3VudCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gVHVpTW9udGguZ2V0TW9udGhEYXlzQ291bnQodGhpcy5tb250aCwgdGhpcy5pc0xlYXBZZWFyKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQYXNzZWQgbW9udGggYW5kIHllYXIgYXJlIGFmdGVyIGN1cnJlbnRcbiAgICAgKi9cbiAgICBtb250aEJlZm9yZShhbm90aGVyOiBUdWlNb250aCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy55ZWFyQmVmb3JlKGFub3RoZXIpIHx8XG4gICAgICAgICAgICAodGhpcy55ZWFyU2FtZShhbm90aGVyKSAmJiB0aGlzLm1vbnRoIDwgYW5vdGhlci5tb250aClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQYXNzZWQgbW9udGggYW5kIHllYXIgYXJlIGFmdGVyIG9yIHRoZSBzYW1lIGFzIGN1cnJlbnRcbiAgICAgKi9cbiAgICBtb250aFNhbWVPckJlZm9yZShhbm90aGVyOiBUdWlNb250aCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy55ZWFyQmVmb3JlKGFub3RoZXIpIHx8XG4gICAgICAgICAgICAodGhpcy55ZWFyU2FtZShhbm90aGVyKSAmJiB0aGlzLm1vbnRoIDw9IGFub3RoZXIubW9udGgpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIG1vbnRoIGFuZCB5ZWFyIGFyZSB0aGUgc2FtZSBhcyBjdXJyZW50XG4gICAgICovXG4gICAgbW9udGhTYW1lKGFub3RoZXI6IFR1aU1vbnRoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnllYXJTYW1lKGFub3RoZXIpICYmIHRoaXMubW9udGggPT09IGFub3RoZXIubW9udGg7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIG1vbnRoIGFuZCB5ZWFyIGFyZSBlaXRoZXIgYmVmb3JlIG9yIGVxdWFsIHRvIGN1cnJlbnRcbiAgICAgKi9cbiAgICBtb250aFNhbWVPckFmdGVyKGFub3RoZXI6IFR1aU1vbnRoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLnllYXJBZnRlcihhbm90aGVyKSB8fFxuICAgICAgICAgICAgKHRoaXMueWVhclNhbWUoYW5vdGhlcikgJiYgdGhpcy5tb250aCA+PSBhbm90aGVyLm1vbnRoKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCBtb250aCBhbmQgeWVhciBhcmUgYmVmb3JlIGN1cnJlbnRcbiAgICAgKi9cbiAgICBtb250aEFmdGVyKGFub3RoZXI6IFR1aU1vbnRoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLnllYXJBZnRlcihhbm90aGVyKSB8fFxuICAgICAgICAgICAgKHRoaXMueWVhclNhbWUoYW5vdGhlcikgJiYgdGhpcy5tb250aCA+IGFub3RoZXIubW9udGgpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSW1tdXRhYmx5IGFsdGVycyBjdXJyZW50IG1vbnRoIGFuZCB5ZWFyIGJ5IHBhc3NlZCBvZmZzZXRcbiAgICAgKlxuICAgICAqIEBwYXJhbSBvZmZzZXRcbiAgICAgKiBAcmV0dXJuIG5ldyBtb250aCBhbmQgeWVhciBvYmplY3QgYXMgYSByZXN1bHQgb2Ygb2Zmc2V0dGluZyBjdXJyZW50XG4gICAgICovXG4gICAgb3ZlcnJpZGUgYXBwZW5kKHt5ZWFyID0gMCwgbW9udGggPSAwfTogVHVpTW9udGhMaWtlKTogVHVpTW9udGgge1xuICAgICAgICBjb25zdCB0b3RhbE1vbnRocyA9ICh0aGlzLnllYXIgKyB5ZWFyKSAqIE1PTlRIU19JTl9ZRUFSICsgdGhpcy5tb250aCArIG1vbnRoO1xuXG4gICAgICAgIHJldHVybiBuZXcgVHVpTW9udGgoXG4gICAgICAgICAgICBNYXRoLmZsb29yKHRvdGFsTW9udGhzIC8gTU9OVEhTX0lOX1lFQVIpLFxuICAgICAgICAgICAgdG90YWxNb250aHMgJSBNT05USFNfSU5fWUVBUixcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYCR7dGhpcy5mb3JtYXR0ZWRNb250aFBhcnR9LiR7dGhpcy5mb3JtYXR0ZWRZZWFyfWA7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgdmFsdWVPZigpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy50b0xvY2FsTmF0aXZlRGF0ZSgpLnZhbHVlT2YoKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSB0b0pTT04oKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke3N1cGVyLnRvSlNPTigpfS0ke3RoaXMuZm9ybWF0dGVkTW9udGhQYXJ0fWA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBuYXRpdmUge0BsaW5rIERhdGV9IGJhc2VkIG9uIGxvY2FsIHRpbWUgem9uZVxuICAgICAqL1xuICAgIHRvTG9jYWxOYXRpdmVEYXRlKCk6IERhdGUge1xuICAgICAgICByZXR1cm4gbmV3IERhdGUodGhpcy55ZWFyLCB0aGlzLm1vbnRoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIG5hdGl2ZSB7QGxpbmsgRGF0ZX0gYmFzZWQgb24gVVRDXG4gICAgICovXG4gICAgdG9VdGNOYXRpdmVEYXRlKCk6IERhdGUge1xuICAgICAgICByZXR1cm4gbmV3IERhdGUoRGF0ZS5VVEModGhpcy55ZWFyLCB0aGlzLm1vbnRoKSk7XG4gICAgfVxufVxuIl19
|
@@ -1,10 +1,16 @@
|
|
1
|
-
import { Directive, Inject, Input } from '@angular/core';
|
1
|
+
import { Directive, Inject, Input, Self } from '@angular/core';
|
2
2
|
import { tuiCoerceBooleanProperty } from '@taiga-ui/cdk/coercion';
|
3
|
-
import {
|
3
|
+
import { TuiDestroyService } from '@taiga-ui/cdk/services';
|
4
|
+
import { timer } from 'rxjs';
|
5
|
+
import { takeUntil } from 'rxjs/operators';
|
6
|
+
import { TUI_AUTOFOCUS_HANDLER, TUI_AUTOFOCUS_OPTIONS, TUI_AUTOFOCUS_PROVIDERS, } from './autofocus.options';
|
4
7
|
import * as i0 from "@angular/core";
|
8
|
+
import * as i1 from "@taiga-ui/cdk/services";
|
5
9
|
export class TuiAutoFocusDirective {
|
6
|
-
constructor(handler) {
|
10
|
+
constructor(handler, options, destroy$) {
|
7
11
|
this.handler = handler;
|
12
|
+
this.options = options;
|
13
|
+
this.destroy$ = destroy$;
|
8
14
|
this.autoFocus = true;
|
9
15
|
}
|
10
16
|
ngAfterViewInit() {
|
@@ -13,10 +19,17 @@ export class TuiAutoFocusDirective {
|
|
13
19
|
}
|
14
20
|
}
|
15
21
|
focus() {
|
16
|
-
|
22
|
+
if (Number.isNaN(this.options.delay)) {
|
23
|
+
void Promise.resolve().then(() => this.handler.setFocus());
|
24
|
+
}
|
25
|
+
else {
|
26
|
+
timer(this.options.delay)
|
27
|
+
.pipe(takeUntil(this.destroy$))
|
28
|
+
.subscribe(() => this.handler.setFocus());
|
29
|
+
}
|
17
30
|
}
|
18
31
|
}
|
19
|
-
TuiAutoFocusDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiAutoFocusDirective, deps: [{ token: TUI_AUTOFOCUS_HANDLER }], target: i0.ɵɵFactoryTarget.Directive });
|
32
|
+
TuiAutoFocusDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiAutoFocusDirective, deps: [{ token: TUI_AUTOFOCUS_HANDLER }, { token: TUI_AUTOFOCUS_OPTIONS }, { token: TuiDestroyService, self: true }], target: i0.ɵɵFactoryTarget.Directive });
|
20
33
|
TuiAutoFocusDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: TuiAutoFocusDirective, selector: "[tuiAutoFocus]", inputs: { autoFocus: ["tuiAutoFocus", "autoFocus"] }, providers: TUI_AUTOFOCUS_PROVIDERS, ngImport: i0 });
|
21
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiAutoFocusDirective, decorators: [{
|
22
35
|
type: Directive,
|
@@ -27,8 +40,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
27
40
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
28
41
|
type: Inject,
|
29
42
|
args: [TUI_AUTOFOCUS_HANDLER]
|
43
|
+
}] }, { type: undefined, decorators: [{
|
44
|
+
type: Inject,
|
45
|
+
args: [TUI_AUTOFOCUS_OPTIONS]
|
46
|
+
}] }, { type: i1.TuiDestroyService, decorators: [{
|
47
|
+
type: Self
|
48
|
+
}, {
|
49
|
+
type: Inject,
|
50
|
+
args: [TuiDestroyService]
|
30
51
|
}] }]; }, propDecorators: { autoFocus: [{
|
31
52
|
type: Input,
|
32
53
|
args: ['tuiAutoFocus']
|
33
54
|
}] } });
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2ZvY3VzLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9kaXJlY3RpdmVzL2F1dG8tZm9jdXMvYXV0b2ZvY3VzLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM1RSxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNoRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzNCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6QyxPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUNyQix1QkFBdUIsR0FHMUIsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBTTdCLE1BQU0sT0FBTyxxQkFBcUI7SUFJOUIsWUFFcUIsT0FBNEIsRUFFNUIsT0FBNEIsRUFHNUIsUUFBMkI7UUFMM0IsWUFBTyxHQUFQLE9BQU8sQ0FBcUI7UUFFNUIsWUFBTyxHQUFQLE9BQU8sQ0FBcUI7UUFHNUIsYUFBUSxHQUFSLFFBQVEsQ0FBbUI7UUFUaEQsY0FBUyxHQUFpQixJQUFJLENBQUM7SUFVNUIsQ0FBQztJQUVKLGVBQWU7UUFDWCxJQUFJLHdCQUF3QixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUMxQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDaEI7SUFDTCxDQUFDO0lBRUQsS0FBSztRQUNELElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2xDLEtBQUssT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7U0FDOUQ7YUFBTTtZQUNILEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztpQkFDcEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7aUJBQzlCLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7U0FDakQ7SUFDTCxDQUFDOzttSEE1QlEscUJBQXFCLGtCQUtsQixxQkFBcUIsYUFFckIscUJBQXFCLGFBR3JCLGlCQUFpQjt1R0FWcEIscUJBQXFCLCtGQUZuQix1QkFBdUI7NEZBRXpCLHFCQUFxQjtrQkFKakMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixTQUFTLEVBQUUsdUJBQXVCO2lCQUNyQzs7MEJBTVEsTUFBTTsyQkFBQyxxQkFBcUI7OzBCQUU1QixNQUFNOzJCQUFDLHFCQUFxQjs7MEJBRTVCLElBQUk7OzBCQUNKLE1BQU07MkJBQUMsaUJBQWlCOzRDQVI3QixTQUFTO3NCQURSLEtBQUs7dUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBJbmplY3QsIElucHV0LCBTZWxmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dHVpQ29lcmNlQm9vbGVhblByb3BlcnR5fSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7VHVpRGVzdHJveVNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jZGsvc2VydmljZXMnO1xuaW1wb3J0IHt0aW1lcn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3Rha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICAgIFRVSV9BVVRPRk9DVVNfSEFORExFUixcbiAgICBUVUlfQVVUT0ZPQ1VTX09QVElPTlMsXG4gICAgVFVJX0FVVE9GT0NVU19QUk9WSURFUlMsXG4gICAgVHVpQXV0b2ZvY3VzSGFuZGxlcixcbiAgICBUdWlBdXRvZm9jdXNPcHRpb25zLFxufSBmcm9tICcuL2F1dG9mb2N1cy5vcHRpb25zJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbdHVpQXV0b0ZvY3VzXScsXG4gICAgcHJvdmlkZXJzOiBUVUlfQVVUT0ZPQ1VTX1BST1ZJREVSUyxcbn0pXG5leHBvcnQgY2xhc3MgVHVpQXV0b0ZvY3VzRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgQElucHV0KCd0dWlBdXRvRm9jdXMnKVxuICAgIGF1dG9Gb2N1czogYm9vbGVhbiB8ICcnID0gdHJ1ZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFRVSV9BVVRPRk9DVVNfSEFORExFUilcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBoYW5kbGVyOiBUdWlBdXRvZm9jdXNIYW5kbGVyLFxuICAgICAgICBASW5qZWN0KFRVSV9BVVRPRk9DVVNfT1BUSU9OUylcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBUdWlBdXRvZm9jdXNPcHRpb25zLFxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQ6IFR1aURlc3Ryb3lTZXJ2aWNlLFxuICAgICkge31cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHR1aUNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh0aGlzLmF1dG9Gb2N1cykpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICBpZiAoTnVtYmVyLmlzTmFOKHRoaXMub3B0aW9ucy5kZWxheSkpIHtcbiAgICAgICAgICAgIHZvaWQgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB0aGlzLmhhbmRsZXIuc2V0Rm9jdXMoKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aW1lcih0aGlzLm9wdGlvbnMuZGVsYXkpXG4gICAgICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5oYW5kbGVyLnNldEZvY3VzKCkpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
@@ -1,11 +1,22 @@
|
|
1
1
|
import { ElementRef, InjectionToken, NgZone, Optional, Renderer2, Self, } from '@angular/core';
|
2
2
|
import { ANIMATION_FRAME, WINDOW } from '@ng-web-apis/common';
|
3
|
+
import { TuiDestroyService } from '@taiga-ui/cdk/services';
|
3
4
|
import { TUI_FOCUSABLE_ITEM_ACCESSOR, TUI_IS_IOS } from '@taiga-ui/cdk/tokens';
|
4
|
-
// TODO: find the best way for prevent cycle
|
5
|
-
// eslint-disable-next-line import/no-cycle
|
6
5
|
import { TuiDefaultAutofocusHandler } from './handlers/default.handler';
|
7
6
|
// eslint-disable-next-line import/no-cycle
|
8
7
|
import { TuiIosAutofocusHandler } from './handlers/ios.handler';
|
8
|
+
export const TUI_AUTOFOCUS_DEFAULT_OPTIONS = {
|
9
|
+
delay: NaN, // NaN = no delay/sync
|
10
|
+
};
|
11
|
+
export const TUI_AUTOFOCUS_OPTIONS = new InjectionToken(`[TUI_AUTOFOCUS_OPTIONS]`, {
|
12
|
+
factory: () => TUI_AUTOFOCUS_DEFAULT_OPTIONS,
|
13
|
+
});
|
14
|
+
export function tuiAutoFocusOptionsProvider(options) {
|
15
|
+
return {
|
16
|
+
provide: TUI_AUTOFOCUS_OPTIONS,
|
17
|
+
useValue: Object.assign(Object.assign({}, TUI_AUTOFOCUS_DEFAULT_OPTIONS), options),
|
18
|
+
};
|
19
|
+
}
|
9
20
|
export const TUI_AUTOFOCUS_HANDLER = new InjectionToken(`[TUI_AUTOFOCUS_HANDLER]`);
|
10
21
|
export const TUI_AUTOFOCUS_PROVIDERS = [
|
11
22
|
{
|
@@ -23,5 +34,6 @@ export const TUI_AUTOFOCUS_PROVIDERS = [
|
|
23
34
|
TUI_IS_IOS,
|
24
35
|
],
|
25
36
|
},
|
37
|
+
TuiDestroyService,
|
26
38
|
];
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2ZvY3VzLm9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGlyZWN0aXZlcy9hdXRvLWZvY3VzL2F1dG9mb2N1cy5vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxVQUFVLEVBQ1YsY0FBYyxFQUNkLE1BQU0sRUFDTixRQUFRLEVBQ1IsU0FBUyxFQUNULElBQUksR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFFLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRTVELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBQywyQkFBMkIsRUFBRSxVQUFVLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUc3RSxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RSwyQ0FBMkM7QUFDM0MsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFVOUQsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQXdCO0lBQzlELEtBQUssRUFBRSxHQUFHLEVBQUUsc0JBQXNCO0NBQ3JDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLGNBQWMsQ0FDbkQseUJBQXlCLEVBQ3pCO0lBQ0ksT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLDZCQUE2QjtDQUMvQyxDQUNKLENBQUM7QUFFRixNQUFNLFVBQVUsMkJBQTJCLENBQ3ZDLE9BQXFDO0lBRXJDLE9BQU87UUFDSCxPQUFPLEVBQUUscUJBQXFCO1FBQzlCLFFBQVEsa0NBQU0sNkJBQTZCLEdBQUssT0FBTyxDQUFDO0tBQzNELENBQUM7QUFDTixDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxjQUFjLENBQ25ELHlCQUF5QixDQUM1QixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUc7SUFDbkM7UUFDSSxPQUFPLEVBQUUscUJBQXFCO1FBQzlCLFVBQVUsRUFBRSxDQUNSLFNBQTZDLEVBQzdDLEVBQTJCLEVBQzNCLGVBQW1DLEVBQ25DLFFBQW1CLEVBQ25CLE1BQWMsRUFDZCxHQUFXLEVBQ1gsS0FBYyxFQUNoQixFQUFFLENBQ0EsS0FBSztZQUNELENBQUMsQ0FBQyxJQUFJLHNCQUFzQixDQUFDLFNBQVMsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUM7WUFDbEUsQ0FBQyxDQUFDLElBQUksMEJBQTBCLENBQUMsU0FBUyxFQUFFLEVBQUUsRUFBRSxlQUFlLENBQUM7UUFDeEUsSUFBSSxFQUFFO1lBQ0YsQ0FBQyxJQUFJLFFBQVEsRUFBRSxFQUFFLElBQUksSUFBSSxFQUFFLEVBQUUsMkJBQTJCLENBQUM7WUFDekQsVUFBVTtZQUNWLGVBQWU7WUFDZixTQUFTO1lBQ1QsTUFBTTtZQUNOLE1BQU07WUFDTixVQUFVO1NBQ2I7S0FDSjtJQUNELGlCQUFpQjtDQUNwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBFbGVtZW50UmVmLFxuICAgIEluamVjdGlvblRva2VuLFxuICAgIE5nWm9uZSxcbiAgICBPcHRpb25hbCxcbiAgICBSZW5kZXJlcjIsXG4gICAgU2VsZixcbiAgICBWYWx1ZVByb3ZpZGVyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QU5JTUFUSU9OX0ZSQU1FLCBXSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3J9IGZyb20gJ0B0YWlnYS11aS9jZGsvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1R1aURlc3Ryb3lTZXJ2aWNlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3NlcnZpY2VzJztcbmltcG9ydCB7VFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SLCBUVUlfSVNfSU9TfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3Rva2Vucyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1R1aURlZmF1bHRBdXRvZm9jdXNIYW5kbGVyfSBmcm9tICcuL2hhbmRsZXJzL2RlZmF1bHQuaGFuZGxlcic7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLWN5Y2xlXG5pbXBvcnQge1R1aUlvc0F1dG9mb2N1c0hhbmRsZXJ9IGZyb20gJy4vaGFuZGxlcnMvaW9zLmhhbmRsZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIFR1aUF1dG9mb2N1c0hhbmRsZXIge1xuICAgIHNldEZvY3VzKCk6IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHVpQXV0b2ZvY3VzT3B0aW9ucyB7XG4gICAgcmVhZG9ubHkgZGVsYXk6IG51bWJlcjtcbn1cblxuZXhwb3J0IGNvbnN0IFRVSV9BVVRPRk9DVVNfREVGQVVMVF9PUFRJT05TOiBUdWlBdXRvZm9jdXNPcHRpb25zID0ge1xuICAgIGRlbGF5OiBOYU4sIC8vIE5hTiA9IG5vIGRlbGF5L3N5bmNcbn07XG5cbmV4cG9ydCBjb25zdCBUVUlfQVVUT0ZPQ1VTX09QVElPTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48VHVpQXV0b2ZvY3VzT3B0aW9ucz4oXG4gICAgYFtUVUlfQVVUT0ZPQ1VTX09QVElPTlNdYCxcbiAgICB7XG4gICAgICAgIGZhY3Rvcnk6ICgpID0+IFRVSV9BVVRPRk9DVVNfREVGQVVMVF9PUFRJT05TLFxuICAgIH0sXG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gdHVpQXV0b0ZvY3VzT3B0aW9uc1Byb3ZpZGVyKFxuICAgIG9wdGlvbnM6IFBhcnRpYWw8VHVpQXV0b2ZvY3VzT3B0aW9ucz4sXG4pOiBWYWx1ZVByb3ZpZGVyIHtcbiAgICByZXR1cm4ge1xuICAgICAgICBwcm92aWRlOiBUVUlfQVVUT0ZPQ1VTX09QVElPTlMsXG4gICAgICAgIHVzZVZhbHVlOiB7Li4uVFVJX0FVVE9GT0NVU19ERUZBVUxUX09QVElPTlMsIC4uLm9wdGlvbnN9LFxuICAgIH07XG59XG5cbmV4cG9ydCBjb25zdCBUVUlfQVVUT0ZPQ1VTX0hBTkRMRVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48VHVpQXV0b2ZvY3VzSGFuZGxlcj4oXG4gICAgYFtUVUlfQVVUT0ZPQ1VTX0hBTkRMRVJdYCxcbik7XG5cbmV4cG9ydCBjb25zdCBUVUlfQVVUT0ZPQ1VTX1BST1ZJREVSUyA9IFtcbiAgICB7XG4gICAgICAgIHByb3ZpZGU6IFRVSV9BVVRPRk9DVVNfSEFORExFUixcbiAgICAgICAgdXNlRmFjdG9yeTogKFxuICAgICAgICAgICAgZm9jdXNhYmxlOiBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IgfCBudWxsLFxuICAgICAgICAgICAgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICAgICAgYW5pbWF0aW9uRnJhbWUkOiBPYnNlcnZhYmxlPG51bWJlcj4sXG4gICAgICAgICAgICByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICAgICAgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgICAgICB3aW46IFdpbmRvdyxcbiAgICAgICAgICAgIGlzSW9zOiBib29sZWFuLFxuICAgICAgICApID0+XG4gICAgICAgICAgICBpc0lvc1xuICAgICAgICAgICAgICAgID8gbmV3IFR1aUlvc0F1dG9mb2N1c0hhbmRsZXIoZm9jdXNhYmxlLCBlbCwgcmVuZGVyZXIsIG5nWm9uZSwgd2luKVxuICAgICAgICAgICAgICAgIDogbmV3IFR1aURlZmF1bHRBdXRvZm9jdXNIYW5kbGVyKGZvY3VzYWJsZSwgZWwsIGFuaW1hdGlvbkZyYW1lJCksXG4gICAgICAgIGRlcHM6IFtcbiAgICAgICAgICAgIFtuZXcgT3B0aW9uYWwoKSwgbmV3IFNlbGYoKSwgVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SXSxcbiAgICAgICAgICAgIEVsZW1lbnRSZWYsXG4gICAgICAgICAgICBBTklNQVRJT05fRlJBTUUsXG4gICAgICAgICAgICBSZW5kZXJlcjIsXG4gICAgICAgICAgICBOZ1pvbmUsXG4gICAgICAgICAgICBXSU5ET1csXG4gICAgICAgICAgICBUVUlfSVNfSU9TLFxuICAgICAgICBdLFxuICAgIH0sXG4gICAgVHVpRGVzdHJveVNlcnZpY2UsXG5dO1xuIl19
|
@@ -10,7 +10,7 @@ export class AbstractTuiAutofocusHandler {
|
|
10
10
|
return ((_a = this.focusable) === null || _a === void 0 ? void 0 : _a.nativeFocusableElement) || this.el.nativeElement;
|
11
11
|
}
|
12
12
|
get isTextFieldElement() {
|
13
|
-
return this.element.matches(`input, textarea`);
|
13
|
+
return this.element.matches(`input, textarea, [contenteditable]`);
|
14
14
|
}
|
15
15
|
}
|
16
16
|
AbstractTuiAutofocusHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AbstractTuiAutofocusHandler, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
|
@@ -18,4 +18,4 @@ AbstractTuiAutofocusHandler.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.
|
|
18
18
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AbstractTuiAutofocusHandler, decorators: [{
|
19
19
|
type: Directive
|
20
20
|
}], ctorParameters: function () { return [{ type: undefined }, { type: i0.ElementRef }]; } });
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QuaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9kaXJlY3RpdmVzL2F1dG8tZm9jdXMvaGFuZGxlcnMvYWJzdHJhY3QuaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFhLE1BQU0sZUFBZSxDQUFDOztBQVNwRCxNQUFNLE9BQWdCLDJCQUEyQjtJQUM3QyxZQUN1QixTQUE2QyxFQUM3QyxFQUEyQjtRQUQzQixjQUFTLEdBQVQsU0FBUyxDQUFvQztRQUM3QyxPQUFFLEdBQUYsRUFBRSxDQUF5QjtJQUMvQyxDQUFDO0lBRUosSUFBYyxPQUFPOztRQUNqQixPQUFPLENBQUEsTUFBQSxJQUFJLENBQUMsU0FBUywwQ0FBRSxzQkFBc0IsS0FBSSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQztJQUMzRSxDQUFDO0lBRUQsSUFBYyxrQkFBa0I7UUFDNUIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7O3lIQVppQiwyQkFBMkI7NkdBQTNCLDJCQUEyQjs0RkFBM0IsMkJBQTJCO2tCQURoRCxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsXG4gICAgVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9pbnRlcmZhY2VzJztcblxuaW1wb3J0IHR5cGUge1R1aUF1dG9mb2N1c0hhbmRsZXJ9IGZyb20gJy4uL2F1dG9mb2N1cy5vcHRpb25zJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RUdWlBdXRvZm9jdXNIYW5kbGVyIGltcGxlbWVudHMgVHVpQXV0b2ZvY3VzSGFuZGxlciB7XG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZm9jdXNhYmxlOiBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IgfCBudWxsLFxuICAgICAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICkge31cblxuICAgIHByb3RlY3RlZCBnZXQgZWxlbWVudCgpOiBUdWlOYXRpdmVGb2N1c2FibGVFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9jdXNhYmxlPy5uYXRpdmVGb2N1c2FibGVFbGVtZW50IHx8IHRoaXMuZWwubmF0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGlzVGV4dEZpZWxkRWxlbWVudCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudC5tYXRjaGVzKGBpbnB1dCwgdGV4dGFyZWEsIFtjb250ZW50ZWRpdGFibGVdYCk7XG4gICAgfVxuXG4gICAgYWJzdHJhY3Qgc2V0Rm9jdXMoKTogdm9pZDtcbn1cbiJdfQ==
|
@@ -4,8 +4,6 @@ import { POLLING_TIME } from '@taiga-ui/cdk/constants';
|
|
4
4
|
import { TUI_FOCUSABLE_ITEM_ACCESSOR } from '@taiga-ui/cdk/tokens';
|
5
5
|
import { race, timer } from 'rxjs';
|
6
6
|
import { map, skipWhile, take, throttleTime } from 'rxjs/operators';
|
7
|
-
// TODO: find the best way for prevent cycle
|
8
|
-
// eslint-disable-next-line import/no-cycle
|
9
7
|
import { AbstractTuiAutofocusHandler } from './abstract.handler';
|
10
8
|
import * as i0 from "@angular/core";
|
11
9
|
import * as i1 from "rxjs";
|
@@ -43,4 +41,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
43
41
|
type: Inject,
|
44
42
|
args: [ANIMATION_FRAME]
|
45
43
|
}] }]; } });
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC5oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2RpcmVjdGl2ZXMvYXV0by1mb2N1cy9oYW5kbGVycy9kZWZhdWx0LmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUVyRCxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRSxPQUFPLEVBQWEsSUFBSSxFQUFFLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQUMsR0FBRyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7OztBQUUvRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUM7QUFDckIsTUFBTSxxQkFBcUIsR0FBRyxlQUFlLENBQUM7QUFHOUMsTUFBTSxPQUFPLDBCQUEyQixTQUFRLDJCQUEyQjtJQUN2RSxZQUlJLFNBQTZDLEVBQ3pCLEVBQTJCLEVBQ0wsZUFBbUM7UUFFN0UsS0FBSyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUZxQixvQkFBZSxHQUFmLGVBQWUsQ0FBb0I7SUFHakYsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUN6QixJQUFJLENBQ0EsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUNkLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUNyQixZQUFZLENBQUMsWUFBWSxDQUFDLEVBQzFCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLEVBQ3RELFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFDbEIsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUNWLENBQ0osQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1NBQzNDO2FBQU07WUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ3hCO0lBQ0wsQ0FBQzs7d0hBMUJRLDBCQUEwQixrQkFJdkIsMkJBQTJCLHlDQUUzQixVQUFVLGFBQ1YsZUFBZTs0R0FQbEIsMEJBQTBCOzRGQUExQiwwQkFBMEI7a0JBRHRDLFNBQVM7OzBCQUdELFFBQVE7OzBCQUNSLElBQUk7OzBCQUNKLE1BQU07MkJBQUMsMkJBQTJCOzswQkFFbEMsTUFBTTsyQkFBQyxVQUFVOzswQkFDakIsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdCwgT3B0aW9uYWwsIFNlbGZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBTklNQVRJT05fRlJBTUV9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtQT0xMSU5HX1RJTUV9IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1J9IGZyb20gJ0B0YWlnYS11aS9jZGsvdG9rZW5zJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgcmFjZSwgdGltZXJ9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHNraXBXaGlsZSwgdGFrZSwgdGhyb3R0bGVUaW1lfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7QWJzdHJhY3RUdWlBdXRvZm9jdXNIYW5kbGVyfSBmcm9tICcuL2Fic3RyYWN0LmhhbmRsZXInO1xuXG5jb25zdCBUSU1FT1VUID0gMTAwMDtcbmNvbnN0IE5HX0FOSU1BVElPTl9TRUxFQ1RPUiA9IGAubmctYW5pbWF0aW5nYDtcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgVHVpRGVmYXVsdEF1dG9mb2N1c0hhbmRsZXIgZXh0ZW5kcyBBYnN0cmFjdFR1aUF1dG9mb2N1c0hhbmRsZXIge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SKVxuICAgICAgICBmb2N1c2FibGU6IFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvciB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KEFOSU1BVElPTl9GUkFNRSkgcHJpdmF0ZSByZWFkb25seSBhbmltYXRpb25GcmFtZSQ6IE9ic2VydmFibGU8bnVtYmVyPixcbiAgICApIHtcbiAgICAgICAgc3VwZXIoZm9jdXNhYmxlLCBlbCk7XG4gICAgfVxuXG4gICAgc2V0Rm9jdXMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzVGV4dEZpZWxkRWxlbWVudCkge1xuICAgICAgICAgICAgcmFjZShcbiAgICAgICAgICAgICAgICB0aW1lcihUSU1FT1VUKSxcbiAgICAgICAgICAgICAgICB0aGlzLmFuaW1hdGlvbkZyYW1lJC5waXBlKFxuICAgICAgICAgICAgICAgICAgICB0aHJvdHRsZVRpbWUoUE9MTElOR19USU1FKSxcbiAgICAgICAgICAgICAgICAgICAgbWFwKCgpID0+IHRoaXMuZWxlbWVudC5jbG9zZXN0KE5HX0FOSU1BVElPTl9TRUxFQ1RPUikpLFxuICAgICAgICAgICAgICAgICAgICBza2lwV2hpbGUoQm9vbGVhbiksXG4gICAgICAgICAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICkuc3Vic2NyaWJlKCgpID0+IHRoaXMuZWxlbWVudC5mb2N1cygpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
@@ -2,8 +2,6 @@ import { Directive, ElementRef, Inject, NgZone, Optional, Renderer2, Self, } fro
|
|
2
2
|
import { WINDOW } from '@ng-web-apis/common';
|
3
3
|
import { TUI_FOCUSABLE_ITEM_ACCESSOR } from '@taiga-ui/cdk/tokens';
|
4
4
|
import { tuiIsPresent, tuiPx } from '@taiga-ui/cdk/utils';
|
5
|
-
// TODO: find the best way for prevent cycle
|
6
|
-
// eslint-disable-next-line import/no-cycle
|
7
5
|
import { AbstractTuiAutofocusHandler } from './abstract.handler';
|
8
6
|
import * as i0 from "@angular/core";
|
9
7
|
const TEXTFIELD_ATTRS = [
|
@@ -90,7 +88,10 @@ export class TuiIosAutofocusHandler extends AbstractTuiAutofocusHandler {
|
|
90
88
|
fakeInput.style.position = `fixed`;
|
91
89
|
fakeInput.style.zIndex = `-99999999`;
|
92
90
|
fakeInput.style.caretColor = `transparent`;
|
91
|
+
fakeInput.style.border = `none`;
|
92
|
+
fakeInput.style.outline = `none`;
|
93
93
|
fakeInput.style.color = `transparent`;
|
94
|
+
fakeInput.style.background = `transparent`;
|
94
95
|
fakeInput.style.cursor = `none`;
|
95
96
|
fakeInput.style.fontSize = tuiPx(16);
|
96
97
|
fakeInput.style.top = tuiPx(rect.top);
|
@@ -166,4 +167,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
166
167
|
type: Inject,
|
167
168
|
args: [WINDOW]
|
168
169
|
}] }]; } });
|
169
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW9zLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGlyZWN0aXZlcy9hdXRvLWZvY3VzL2hhbmRsZXJzL2lvcy5oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixNQUFNLEVBQ04sUUFBUSxFQUNSLFNBQVMsRUFDVCxJQUFJLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRTNDLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxZQUFZLEVBQUUsS0FBSyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFeEQsNENBQTRDO0FBQzVDLDJDQUEyQztBQUMzQyxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQzs7QUFFL0QsTUFBTSxlQUFlLEdBQUc7SUFDcEIsTUFBTTtJQUNOLFdBQVc7SUFDWCxjQUFjO0lBQ2QsUUFBUTtJQUNSLEtBQUs7SUFDTCxLQUFLO0lBQ0wsTUFBTTtJQUNOLFNBQVM7SUFDVCxNQUFNO0lBQ04sV0FBVztDQUNMLENBQUM7QUFHWCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsMkJBQTJCO0lBQ25FLFlBSUksU0FBNkMsRUFDekIsRUFBMkIsRUFDWCxRQUFtQixFQUN0QixNQUFjLEVBQ2QsR0FBVztRQUU1QyxLQUFLLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBSmUsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUN0QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsUUFBRyxHQUFILEdBQUcsQ0FBUTtRQUc1QyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxrQkFB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O0lBQ0ssa0NBQWtDLENBQUMsU0FBMkI7UUFDbEUsZUFBZSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUMzQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUU5QyxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDckIsU0FBUyxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7YUFDdkM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O29IQXBKUSxzQkFBc0Isa0JBSW5CLDJCQUEyQix5Q0FFM0IsVUFBVSxhQUNWLFNBQVMsYUFDVCxNQUFNLGFBQ04sTUFBTTt3R0FUVCxzQkFBc0I7NEZBQXRCLHNCQUFzQjtrQkFEbEMsU0FBUzs7MEJBR0QsUUFBUTs7MEJBQ1IsSUFBSTs7MEJBQ0osTUFBTTsyQkFBQywyQkFBMkI7OzBCQUVsQyxNQUFNOzJCQUFDLFVBQVU7OzBCQUNqQixNQUFNOzJCQUFDLFNBQVM7OzBCQUNoQixNQUFNOzJCQUFDLE1BQU07OEJBQ3dCLE1BQU07MEJBQTNDLE1BQU07MkJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSW5qZWN0LFxuICAgIE5nWm9uZSxcbiAgICBPcHRpb25hbCxcbiAgICBSZW5kZXJlcjIsXG4gICAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1dJTkRPV30gZnJvbSAnQG5nLXdlYi1hcGlzL2NvbW1vbic7XG5pbXBvcnQge1R1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3Nvcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9pbnRlcmZhY2VzJztcbmltcG9ydCB7VFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3Rva2Vucyc7XG5pbXBvcnQge3R1aUlzUHJlc2VudCwgdHVpUHh9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMnO1xuXG4vLyBUT0RPOiBmaW5kIHRoZSBiZXN0IHdheSBmb3IgcHJldmVudCBjeWNsZVxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby1jeWNsZVxuaW1wb3J0IHtBYnN0cmFjdFR1aUF1dG9mb2N1c0hhbmRsZXJ9IGZyb20gJy4vYWJzdHJhY3QuaGFuZGxlcic7XG5cbmNvbnN0IFRFWFRGSUVMRF9BVFRSUyA9IFtcbiAgICBgdHlwZWAsXG4gICAgYGlucHV0TW9kZWAsXG4gICAgYGF1dG9jb21wbGV0ZWAsXG4gICAgYGFjY2VwdGAsXG4gICAgYG1pbmAsXG4gICAgYG1heGAsXG4gICAgYHN0ZXBgLFxuICAgIGBwYXR0ZXJuYCxcbiAgICBgc2l6ZWAsXG4gICAgYG1heGxlbmd0aGAsXG5dIGFzIGNvbnN0O1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBjbGFzcyBUdWlJb3NBdXRvZm9jdXNIYW5kbGVyIGV4dGVuZHMgQWJzdHJhY3RUdWlBdXRvZm9jdXNIYW5kbGVyIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQFNlbGYoKVxuICAgICAgICBASW5qZWN0KFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUilcbiAgICAgICAgZm9jdXNhYmxlOiBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IgfCBudWxsLFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIGVsOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChSZW5kZXJlcjIpIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgQEluamVjdChOZ1pvbmUpIHByaXZhdGUgcmVhZG9ubHkgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIEBJbmplY3QoV0lORE9XKSBwcml2YXRlIHJlYWRvbmx5IHdpbjogV2luZG93LFxuICAgICkge1xuICAgICAgICBzdXBlcihmb2N1c2FibGUsIGVsKTtcbiAgICAgICAgdGhpcy5wYXRjaENzc1N0eWxlcygpO1xuICAgIH1cblxuICAgIHNldEZvY3VzKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc1RleHRGaWVsZEVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHRoaXMuaW9zV2Via2l0QXV0b2ZvY3VzKCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5lbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGlvc1dlYmtpdEF1dG9mb2N1cygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmFrZUlucHV0OiBIVE1MSW5wdXRFbGVtZW50ID0gdGhpcy5tYWtlRmFrZUlucHV0KCk7XG4gICAgICAgIGNvbnN0IGR1cmF0aW9uID0gdGhpcy5nZXREdXJhdGlvblRpbWVCZWZvcmVGb2N1cygpO1xuICAgICAgICBsZXQgZmFrZUZvY3VzVGltZW91dElkID0gMDtcbiAgICAgICAgbGV0IGVsZW1lbnRGb2N1c1RpbWVvdXRJZCA9IDA7XG5cbiAgICAgICAgY29uc3QgYmx1ckhhbmRsZXIgPSAoKTogdm9pZCA9PiBmYWtlSW5wdXQuZm9jdXMoe3ByZXZlbnRTY3JvbGw6IHRydWV9KTtcbiAgICAgICAgY29uc3QgZm9jdXNIYW5kbGVyID0gKCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KGZha2VGb2N1c1RpbWVvdXRJZCk7XG5cbiAgICAgICAgICAgIGZha2VGb2N1c1RpbWVvdXRJZCA9IHRoaXMud2luLnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNsZWFyVGltZW91dChlbGVtZW50Rm9jdXNUaW1lb3V0SWQpO1xuXG4gICAgICAgICAgICAgICAgZmFrZUlucHV0LnJlbW92ZUV2ZW50TGlzdGVuZXIoYGJsdXJgLCBibHVySGFuZGxlcik7XG4gICAgICAgICAgICAgICAgZmFrZUlucHV0LnJlbW92ZUV2ZW50TGlzdGVuZXIoYGZvY3VzYCwgZm9jdXNIYW5kbGVyKTtcblxuICAgICAgICAgICAgICAgIGVsZW1lbnRGb2N1c1RpbWVvdXRJZCA9IHRoaXMud2luLnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuZm9jdXMoe3ByZXZlbnRTY3JvbGw6IGZhbHNlfSk7XG4gICAgICAgICAgICAgICAgICAgIGZha2VJbnB1dC5yZW1vdmUoKTtcbiAgICAgICAgICAgICAgICB9LCBkdXJhdGlvbik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfTtcblxuICAgICAgICBmYWtlSW5wdXQuYWRkRXZlbnRMaXN0ZW5lcihgYmx1cmAsIGJsdXJIYW5kbGVyLCB7b25jZTogdHJ1ZX0pO1xuICAgICAgICBmYWtlSW5wdXQuYWRkRXZlbnRMaXN0ZW5lcihgZm9jdXNgLCBmb2N1c0hhbmRsZXIpO1xuXG4gICAgICAgIGlmICh0aGlzLmluc2lkZURpYWxvZygpKSB7XG4gICAgICAgICAgICB0aGlzLndpbi5kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZha2VJbnB1dCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnQucGFyZW50RWxlbWVudD8uYXBwZW5kQ2hpbGQoZmFrZUlucHV0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZha2VJbnB1dC5mb2N1cyh7cHJldmVudFNjcm9sbDogdHJ1ZX0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBub3RlOlxuICAgICAqIGVtdWxhdGUgdGV4dGZpZWxkIHBvc2l0aW9uIGluIGxheW91dCB3aXRoIGN1cnNvclxuICAgICAqIGJlZm9yZSBmb2N1cyB0byByZWFsIHRleHRmaWVsZCBlbGVtZW50XG4gICAgICpcbiAgICAgKiByZXF1aXJlZCBub3RlOlxuICAgICAqIFtmYWtlSW5wdXQucmVhZE9ubHkgPSB0cnVlXSB+XG4gICAgICogZG9uJ3QgdXNlIHtyZWFkT25seTogdHJ1ZX0gdmFsdWUsIGl0J3MgZG9lc24ndCB3b3JrIGZvciBlbXVsYXRlIGF1dG9maWxsXG4gICAgICpcbiAgICAgKiBbZmFrZUlucHV0LnN0eWxlLm9wYWNpdHkgPSAwXSB+XG4gICAgICogZG9uJ3QgdXNlIHtvcGFjaXR5OiAwfSwgc29tZXRpbWVzIGl0J3MgZG9lc24ndCB3b3JrIGZvciBlbXVsYXRlIHJlYWwgaW5wdXRcbiAgICAgKlxuICAgICAqIFtmYWtlSW5wdXQuc3R5bGUuZm9udFNpemUgPSAxNnB4XSB+XG4gICAgICogZGlzYWJsZSBwb3NzaWJsZSBhdXRvIHpvb21cbiAgICAgKlxuICAgICAqIFtmYWtlSW5wdXQuc3R5bGUudG9wL2xlZnRdIH5cbiAgICAgKiBlbXVsYXRlIHBvc2l0aW9uIGN1cnNvciBiZWZvcmUgZm9jdXMgdG8gcmVhbCB0ZXh0ZmllbGQgZWxlbWVudFxuICAgICAqL1xuICAgIHByaXZhdGUgbWFrZUZha2VJbnB1dCgpOiBIVE1MSW5wdXRFbGVtZW50IHtcbiAgICAgICAgY29uc3QgZmFrZUlucHV0OiBIVE1MSW5wdXRFbGVtZW50ID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KGBpbnB1dGApO1xuICAgICAgICBjb25zdCByZWN0OiBET01SZWN0ID0gdGhpcy5lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICAgIHRoaXMucGF0Y2hGYWtlSW5wdXRGcm9tRm9jdXNhYmxlRWxlbWVudChmYWtlSW5wdXQpO1xuXG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5oZWlnaHQgPSB0dWlQeChyZWN0LmhlaWdodCk7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS53aWR0aCA9IHR1aVB4KHJlY3Qud2lkdGggLyAyKTtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLnBvc2l0aW9uID0gYGZpeGVkYDtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLnpJbmRleCA9IGAtOTk5OTk5OTlgO1xuICAgICAgICBmYWtlSW5wdXQuc3R5bGUuY2FyZXRDb2xvciA9IGB0cmFuc3BhcmVudGA7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5jb2xvciA9IGB0cmFuc3BhcmVudGA7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5jdXJzb3IgPSBgbm9uZWA7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5mb250U2l6ZSA9IHR1aVB4KDE2KTtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLnRvcCA9IHR1aVB4KHJlY3QudG9wKTtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLmxlZnQgPSB0dWlQeChyZWN0LmxlZnQpO1xuXG4gICAgICAgIHJldHVybiBmYWtlSW5wdXQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXREdXJhdGlvblRpbWVCZWZvcmVGb2N1cygpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgcGFyc2VGbG9hdChcbiAgICAgICAgICAgICAgICB0aGlzLndpblxuICAgICAgICAgICAgICAgICAgICAuZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLmVsZW1lbnQpXG4gICAgICAgICAgICAgICAgICAgIC5nZXRQcm9wZXJ0eVZhbHVlKGAtLXR1aS1kdXJhdGlvbmApLFxuICAgICAgICAgICAgKSB8fCAwXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQG5vdGU6XG4gICAgICogdW5mb3J0dW5hdGVseSwgaW4gb2xkZXIgdmVyc2lvbnMgb2YgaU9TXG4gICAgICogdGhlcmUgaXMgYSBidWcgdGhhdCB0aGUgZmFrZSBpbnB1dCBjdXJzb3JcbiAgICAgKiB3aWxsIG1vdmUgYWxvbmcgd2l0aCB0aGUgZGlhbG9nIGFuaW1hdGlvblxuICAgICAqIGFuZCB0aGVuIHRoYXQgZGlhbG9nIHdpbGwgYmUgc2hha2luZ1xuICAgICAqL1xuICAgIHByaXZhdGUgaW5zaWRlRGlhbG9nKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmVsZW1lbnQuY2xvc2VzdChgdHVpLWRpYWxvZ2ApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBub3RlOlxuICAgICAqIFRoaXMgaXMgbmVjZXNzYXJ5IHNvIHRoYXQgdGhlIHZpZXdwb3J0IGlzbid0IHJlY2FsY3VsYXRlZFxuICAgICAqIGFuZCB0aGVuIHRoZSBkaWFsb2dzIGRvbid0IHNoYWtlLlxuICAgICAqXG4gICAgICogQWxzbywgd2UgbmVlZCB0byBmaXhlZCBoZWlnaHQgdmlld3BvcnQsXG4gICAgICogc28gdGhhdCB3aGVuIGZvY3VzaW5nIHRoZSBkaWFsb2dzIGRvbid0IHNoYWtlXG4gICAgICovXG4gICAgcHJpdmF0ZSBwYXRjaENzc1N0eWxlcygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZG9jID0gdGhpcy53aW4uZG9jdW1lbnQ7XG5cbiAgICAgICAgZm9yIChjb25zdCBlbGVtZW50IG9mIFtkb2MuZG9jdW1lbnRFbGVtZW50LCBkb2MuYm9keV0pIHtcbiAgICAgICAgICAgIGVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoYG92ZXJmbG93YCwgYGF1dG9gKTtcbiAgICAgICAgICAgIGVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoYGhlaWdodGAsIGAxMDAlYCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAbm90ZTpcbiAgICAgKiBpbmhlcml0IGJhc2ljIGF0dHJpYnV0ZXMgdmFsdWVzIGZyb20gcmVhbCBpbnB1dFxuICAgICAqIGZvciBoZWxwIGlPUyBkZXRlY3Qgd2hhdCBkbyB5b3Ugd2FudCBzZWUgb24ga2V5Ym9hcmQsXG4gICAgICogZm9yIGV4YW1wbGUgW2lucHV0TW9kZT1udW1lcmljLCBhdXRvY29tcGxldGU9Y2MtbnVtYmVyXVxuICAgICAqL1xuICAgIHByaXZhdGUgcGF0Y2hGYWtlSW5wdXRGcm9tRm9jdXNhYmxlRWxlbWVudChmYWtlSW5wdXQ6IEhUTUxJbnB1dEVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgVEVYVEZJRUxEX0FUVFJTLmZvckVhY2goYXR0ciA9PiB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZWxlbWVudC5nZXRBdHRyaWJ1dGUoYXR0cik7XG5cbiAgICAgICAgICAgIGlmICh0dWlJc1ByZXNlbnQodmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgZmFrZUlucHV0LnNldEF0dHJpYnV0ZShhdHRyLCB2YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
|
170
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW9zLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGlyZWN0aXZlcy9hdXRvLWZvY3VzL2hhbmRsZXJzL2lvcy5oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixNQUFNLEVBQ04sUUFBUSxFQUNSLFNBQVMsRUFDVCxJQUFJLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRTNDLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxZQUFZLEVBQUUsS0FBSyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFeEQsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7O0FBRS9ELE1BQU0sZUFBZSxHQUFHO0lBQ3BCLE1BQU07SUFDTixXQUFXO0lBQ1gsY0FBYztJQUNkLFFBQVE7SUFDUixLQUFLO0lBQ0wsS0FBSztJQUNMLE1BQU07SUFDTixTQUFTO0lBQ1QsTUFBTTtJQUNOLFdBQVc7Q0FDTCxDQUFDO0FBR1gsTUFBTSxPQUFPLHNCQUF1QixTQUFRLDJCQUEyQjtJQUNuRSxZQUlJLFNBQTZDLEVBQ3pCLEVBQTJCLEVBQ1gsUUFBbUIsRUFDdEIsTUFBYyxFQUNkLEdBQVc7UUFFNUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUplLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDdEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFHNUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDekIsSUFBSSxDQUFDLE1B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VSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQzlDLE9BQU8sQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUMvQztJQUNMLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNLLGtDQUFrQyxDQUFDLFNBQTJCO1FBQ2xFLGVBQWUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDM0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFOUMsSUFBSSxZQUFZLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ3JCLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO2FBQ3ZDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOztvSEF2SlEsc0JBQXNCLGtCQUluQiwyQkFBMkIseUNBRTNCLFVBQVUsYUFDVixTQUFTLGFBQ1QsTUFBTSxhQUNOLE1BQU07d0dBVFQsc0JBQXNCOzRGQUF0QixzQkFBc0I7a0JBRGxDLFNBQVM7OzBCQUdELFFBQVE7OzBCQUNSLElBQUk7OzBCQUNKLE1BQU07MkJBQUMsMkJBQTJCOzswQkFFbEMsTUFBTTsyQkFBQyxVQUFVOzswQkFDakIsTUFBTTsyQkFBQyxTQUFTOzswQkFDaEIsTUFBTTsyQkFBQyxNQUFNOzhCQUN3QixNQUFNOzBCQUEzQyxNQUFNOzJCQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIEluamVjdCxcbiAgICBOZ1pvbmUsXG4gICAgT3B0aW9uYWwsXG4gICAgUmVuZGVyZXIyLFxuICAgIFNlbGYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtXSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3J9IGZyb20gJ0B0YWlnYS11aS9jZGsvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1RVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUn0gZnJvbSAnQHRhaWdhLXVpL2Nkay90b2tlbnMnO1xuaW1wb3J0IHt0dWlJc1ByZXNlbnQsIHR1aVB4fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzJztcblxuaW1wb3J0IHtBYnN0cmFjdFR1aUF1dG9mb2N1c0hhbmRsZXJ9IGZyb20gJy4vYWJzdHJhY3QuaGFuZGxlcic7XG5cbmNvbnN0IFRFWFRGSUVMRF9BVFRSUyA9IFtcbiAgICBgdHlwZWAsXG4gICAgYGlucHV0TW9kZWAsXG4gICAgYGF1dG9jb21wbGV0ZWAsXG4gICAgYGFjY2VwdGAsXG4gICAgYG1pbmAsXG4gICAgYG1heGAsXG4gICAgYHN0ZXBgLFxuICAgIGBwYXR0ZXJuYCxcbiAgICBgc2l6ZWAsXG4gICAgYG1heGxlbmd0aGAsXG5dIGFzIGNvbnN0O1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBjbGFzcyBUdWlJb3NBdXRvZm9jdXNIYW5kbGVyIGV4dGVuZHMgQWJzdHJhY3RUdWlBdXRvZm9jdXNIYW5kbGVyIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQFNlbGYoKVxuICAgICAgICBASW5qZWN0KFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUilcbiAgICAgICAgZm9jdXNhYmxlOiBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IgfCBudWxsLFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIGVsOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChSZW5kZXJlcjIpIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgQEluamVjdChOZ1pvbmUpIHByaXZhdGUgcmVhZG9ubHkgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIEBJbmplY3QoV0lORE9XKSBwcml2YXRlIHJlYWRvbmx5IHdpbjogV2luZG93LFxuICAgICkge1xuICAgICAgICBzdXBlcihmb2N1c2FibGUsIGVsKTtcbiAgICAgICAgdGhpcy5wYXRjaENzc1N0eWxlcygpO1xuICAgIH1cblxuICAgIHNldEZvY3VzKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc1RleHRGaWVsZEVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHRoaXMuaW9zV2Via2l0QXV0b2ZvY3VzKCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5lbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGlvc1dlYmtpdEF1dG9mb2N1cygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmFrZUlucHV0OiBIVE1MSW5wdXRFbGVtZW50ID0gdGhpcy5tYWtlRmFrZUlucHV0KCk7XG4gICAgICAgIGNvbnN0IGR1cmF0aW9uID0gdGhpcy5nZXREdXJhdGlvblRpbWVCZWZvcmVGb2N1cygpO1xuICAgICAgICBsZXQgZmFrZUZvY3VzVGltZW91dElkID0gMDtcbiAgICAgICAgbGV0IGVsZW1lbnRGb2N1c1RpbWVvdXRJZCA9IDA7XG5cbiAgICAgICAgY29uc3QgYmx1ckhhbmRsZXIgPSAoKTogdm9pZCA9PiBmYWtlSW5wdXQuZm9jdXMoe3ByZXZlbnRTY3JvbGw6IHRydWV9KTtcbiAgICAgICAgY29uc3QgZm9jdXNIYW5kbGVyID0gKCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KGZha2VGb2N1c1RpbWVvdXRJZCk7XG5cbiAgICAgICAgICAgIGZha2VGb2N1c1RpbWVvdXRJZCA9IHRoaXMud2luLnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNsZWFyVGltZW91dChlbGVtZW50Rm9jdXNUaW1lb3V0SWQpO1xuXG4gICAgICAgICAgICAgICAgZmFrZUlucHV0LnJlbW92ZUV2ZW50TGlzdGVuZXIoYGJsdXJgLCBibHVySGFuZGxlcik7XG4gICAgICAgICAgICAgICAgZmFrZUlucHV0LnJlbW92ZUV2ZW50TGlzdGVuZXIoYGZvY3VzYCwgZm9jdXNIYW5kbGVyKTtcblxuICAgICAgICAgICAgICAgIGVsZW1lbnRGb2N1c1RpbWVvdXRJZCA9IHRoaXMud2luLnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuZm9jdXMoe3ByZXZlbnRTY3JvbGw6IGZhbHNlfSk7XG4gICAgICAgICAgICAgICAgICAgIGZha2VJbnB1dC5yZW1vdmUoKTtcbiAgICAgICAgICAgICAgICB9LCBkdXJhdGlvbik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfTtcblxuICAgICAgICBmYWtlSW5wdXQuYWRkRXZlbnRMaXN0ZW5lcihgYmx1cmAsIGJsdXJIYW5kbGVyLCB7b25jZTogdHJ1ZX0pO1xuICAgICAgICBmYWtlSW5wdXQuYWRkRXZlbnRMaXN0ZW5lcihgZm9jdXNgLCBmb2N1c0hhbmRsZXIpO1xuXG4gICAgICAgIGlmICh0aGlzLmluc2lkZURpYWxvZygpKSB7XG4gICAgICAgICAgICB0aGlzLndpbi5kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZha2VJbnB1dCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnQucGFyZW50RWxlbWVudD8uYXBwZW5kQ2hpbGQoZmFrZUlucHV0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZha2VJbnB1dC5mb2N1cyh7cHJldmVudFNjcm9sbDogdHJ1ZX0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBub3RlOlxuICAgICAqIGVtdWxhdGUgdGV4dGZpZWxkIHBvc2l0aW9uIGluIGxheW91dCB3aXRoIGN1cnNvclxuICAgICAqIGJlZm9yZSBmb2N1cyB0byByZWFsIHRleHRmaWVsZCBlbGVtZW50XG4gICAgICpcbiAgICAgKiByZXF1aXJlZCBub3RlOlxuICAgICAqIFtmYWtlSW5wdXQucmVhZE9ubHkgPSB0cnVlXSB+XG4gICAgICogZG9uJ3QgdXNlIHtyZWFkT25seTogdHJ1ZX0gdmFsdWUsIGl0J3MgZG9lc24ndCB3b3JrIGZvciBlbXVsYXRlIGF1dG9maWxsXG4gICAgICpcbiAgICAgKiBbZmFrZUlucHV0LnN0eWxlLm9wYWNpdHkgPSAwXSB+XG4gICAgICogZG9uJ3QgdXNlIHtvcGFjaXR5OiAwfSwgc29tZXRpbWVzIGl0J3MgZG9lc24ndCB3b3JrIGZvciBlbXVsYXRlIHJlYWwgaW5wdXRcbiAgICAgKlxuICAgICAqIFtmYWtlSW5wdXQuc3R5bGUuZm9udFNpemUgPSAxNnB4XSB+XG4gICAgICogZGlzYWJsZSBwb3NzaWJsZSBhdXRvIHpvb21cbiAgICAgKlxuICAgICAqIFtmYWtlSW5wdXQuc3R5bGUudG9wL2xlZnRdIH5cbiAgICAgKiBlbXVsYXRlIHBvc2l0aW9uIGN1cnNvciBiZWZvcmUgZm9jdXMgdG8gcmVhbCB0ZXh0ZmllbGQgZWxlbWVudFxuICAgICAqL1xuICAgIHByaXZhdGUgbWFrZUZha2VJbnB1dCgpOiBIVE1MSW5wdXRFbGVtZW50IHtcbiAgICAgICAgY29uc3QgZmFrZUlucHV0OiBIVE1MSW5wdXRFbGVtZW50ID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KGBpbnB1dGApO1xuICAgICAgICBjb25zdCByZWN0OiBET01SZWN0ID0gdGhpcy5lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICAgIHRoaXMucGF0Y2hGYWtlSW5wdXRGcm9tRm9jdXNhYmxlRWxlbWVudChmYWtlSW5wdXQpO1xuXG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5oZWlnaHQgPSB0dWlQeChyZWN0LmhlaWdodCk7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS53aWR0aCA9IHR1aVB4KHJlY3Qud2lkdGggLyAyKTtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLnBvc2l0aW9uID0gYGZpeGVkYDtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLnpJbmRleCA9IGAtOTk5OTk5OTlgO1xuICAgICAgICBmYWtlSW5wdXQuc3R5bGUuY2FyZXRDb2xvciA9IGB0cmFuc3BhcmVudGA7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5ib3JkZXIgPSBgbm9uZWA7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5vdXRsaW5lID0gYG5vbmVgO1xuICAgICAgICBmYWtlSW5wdXQuc3R5bGUuY29sb3IgPSBgdHJhbnNwYXJlbnRgO1xuICAgICAgICBmYWtlSW5wdXQuc3R5bGUuYmFja2dyb3VuZCA9IGB0cmFuc3BhcmVudGA7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5jdXJzb3IgPSBgbm9uZWA7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5mb250U2l6ZSA9IHR1aVB4KDE2KTtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLnRvcCA9IHR1aVB4KHJlY3QudG9wKTtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLmxlZnQgPSB0dWlQeChyZWN0LmxlZnQpO1xuXG4gICAgICAgIHJldHVybiBmYWtlSW5wdXQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXREdXJhdGlvblRpbWVCZWZvcmVGb2N1cygpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgcGFyc2VGbG9hdChcbiAgICAgICAgICAgICAgICB0aGlzLndpblxuICAgICAgICAgICAgICAgICAgICAuZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLmVsZW1lbnQpXG4gICAgICAgICAgICAgICAgICAgIC5nZXRQcm9wZXJ0eVZhbHVlKGAtLXR1aS1kdXJhdGlvbmApLFxuICAgICAgICAgICAgKSB8fCAwXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQG5vdGU6XG4gICAgICogdW5mb3J0dW5hdGVseSwgaW4gb2xkZXIgdmVyc2lvbnMgb2YgaU9TXG4gICAgICogdGhlcmUgaXMgYSBidWcgdGhhdCB0aGUgZmFrZSBpbnB1dCBjdXJzb3JcbiAgICAgKiB3aWxsIG1vdmUgYWxvbmcgd2l0aCB0aGUgZGlhbG9nIGFuaW1hdGlvblxuICAgICAqIGFuZCB0aGVuIHRoYXQgZGlhbG9nIHdpbGwgYmUgc2hha2luZ1xuICAgICAqL1xuICAgIHByaXZhdGUgaW5zaWRlRGlhbG9nKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmVsZW1lbnQuY2xvc2VzdChgdHVpLWRpYWxvZ2ApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBub3RlOlxuICAgICAqIFRoaXMgaXMgbmVjZXNzYXJ5IHNvIHRoYXQgdGhlIHZpZXdwb3J0IGlzbid0IHJlY2FsY3VsYXRlZFxuICAgICAqIGFuZCB0aGVuIHRoZSBkaWFsb2dzIGRvbid0IHNoYWtlLlxuICAgICAqXG4gICAgICogQWxzbywgd2UgbmVlZCB0byBmaXhlZCBoZWlnaHQgdmlld3BvcnQsXG4gICAgICogc28gdGhhdCB3aGVuIGZvY3VzaW5nIHRoZSBkaWFsb2dzIGRvbid0IHNoYWtlXG4gICAgICovXG4gICAgcHJpdmF0ZSBwYXRjaENzc1N0eWxlcygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZG9jID0gdGhpcy53aW4uZG9jdW1lbnQ7XG5cbiAgICAgICAgZm9yIChjb25zdCBlbGVtZW50IG9mIFtkb2MuZG9jdW1lbnRFbGVtZW50LCBkb2MuYm9keV0pIHtcbiAgICAgICAgICAgIGVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoYG92ZXJmbG93YCwgYGF1dG9gKTtcbiAgICAgICAgICAgIGVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoYGhlaWdodGAsIGAxMDAlYCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAbm90ZTpcbiAgICAgKiBpbmhlcml0IGJhc2ljIGF0dHJpYnV0ZXMgdmFsdWVzIGZyb20gcmVhbCBpbnB1dFxuICAgICAqIGZvciBoZWxwIGlPUyBkZXRlY3Qgd2hhdCBkbyB5b3Ugd2FudCBzZWUgb24ga2V5Ym9hcmQsXG4gICAgICogZm9yIGV4YW1wbGUgW2lucHV0TW9kZT1udW1lcmljLCBhdXRvY29tcGxldGU9Y2MtbnVtYmVyXVxuICAgICAqL1xuICAgIHByaXZhdGUgcGF0Y2hGYWtlSW5wdXRGcm9tRm9jdXNhYmxlRWxlbWVudChmYWtlSW5wdXQ6IEhUTUxJbnB1dEVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgVEVYVEZJRUxEX0FUVFJTLmZvckVhY2goYXR0ciA9PiB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZWxlbWVudC5nZXRBdHRyaWJ1dGUoYXR0cik7XG5cbiAgICAgICAgICAgIGlmICh0dWlJc1ByZXNlbnQodmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgZmFrZUlucHV0LnNldEF0dHJpYnV0ZShhdHRyLCB2YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
|
@@ -1,7 +1,5 @@
|
|
1
1
|
import { Directive, ElementRef, Inject, Optional, Self } from '@angular/core';
|
2
2
|
import { TUI_FOCUSABLE_ITEM_ACCESSOR } from '@taiga-ui/cdk/tokens';
|
3
|
-
// TODO: find the best way for prevent cycle
|
4
|
-
// eslint-disable-next-line import/no-cycle
|
5
3
|
import { AbstractTuiAutofocusHandler } from './abstract.handler';
|
6
4
|
import * as i0 from "@angular/core";
|
7
5
|
export class TuiSynchronousAutofocusHandler extends AbstractTuiAutofocusHandler {
|
@@ -27,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
27
25
|
type: Inject,
|
28
26
|
args: [ElementRef]
|
29
27
|
}] }]; } });
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy5oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2RpcmVjdGl2ZXMvYXV0by1mb2N1cy9oYW5kbGVycy9zeW5jLmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFNUUsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFakUsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7O0FBRy9ELE1BQU0sT0FBTyw4QkFBK0IsU0FBUSwyQkFBMkI7SUFDM0UsWUFJSSxTQUE2QyxFQUN6QixFQUEyQjtRQUUvQyxLQUFLLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN6QixDQUFDOzs0SEFiUSw4QkFBOEIsa0JBSTNCLDJCQUEyQix5Q0FFM0IsVUFBVTtnSEFOYiw4QkFBOEI7NEZBQTlCLDhCQUE4QjtrQkFEMUMsU0FBUzs7MEJBR0QsUUFBUTs7MEJBQ1IsSUFBSTs7MEJBQ0osTUFBTTsyQkFBQywyQkFBMkI7OzBCQUVsQyxNQUFNOzJCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5qZWN0LCBPcHRpb25hbCwgU2VsZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3Nvcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9pbnRlcmZhY2VzJztcbmltcG9ydCB7VFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3Rva2Vucyc7XG5cbmltcG9ydCB7QWJzdHJhY3RUdWlBdXRvZm9jdXNIYW5kbGVyfSBmcm9tICcuL2Fic3RyYWN0LmhhbmRsZXInO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBjbGFzcyBUdWlTeW5jaHJvbm91c0F1dG9mb2N1c0hhbmRsZXIgZXh0ZW5kcyBBYnN0cmFjdFR1aUF1dG9mb2N1c0hhbmRsZXIge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SKVxuICAgICAgICBmb2N1c2FibGU6IFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvciB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICkge1xuICAgICAgICBzdXBlcihmb2N1c2FibGUsIGVsKTtcbiAgICB9XG5cbiAgICBzZXRGb2N1cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lbGVtZW50LmZvY3VzKCk7XG4gICAgfVxufVxuIl19
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { Directive, ElementRef, Inject, Output } from '@angular/core';
|
2
|
-
import { tuiDragAndDropFrom } from '@taiga-ui/cdk/observables';
|
2
|
+
import { tuiDragAndDropFrom, TuiDragStage } from '@taiga-ui/cdk/observables';
|
3
3
|
import { filter, map } from 'rxjs/operators';
|
4
4
|
import * as i0 from "@angular/core";
|
5
5
|
/**
|
@@ -9,9 +9,9 @@ export class TuiDragDirective {
|
|
9
9
|
constructor(el) {
|
10
10
|
this.el = el;
|
11
11
|
this.dragAndDropFrom$ = tuiDragAndDropFrom(this.el.nativeElement);
|
12
|
-
this.start = this.dragAndDropFrom$.pipe(filter(({ stage }) => stage ===
|
13
|
-
this.continues = this.dragAndDropFrom$.pipe(filter(({ stage }) => stage ===
|
14
|
-
this.end = this.dragAndDropFrom$.pipe(filter(({ stage }) => stage ===
|
12
|
+
this.start = this.dragAndDropFrom$.pipe(filter(({ stage }) => stage === TuiDragStage.Start), map(({ event }) => event));
|
13
|
+
this.continues = this.dragAndDropFrom$.pipe(filter(({ stage }) => stage === TuiDragStage.Continues), map(({ event }) => event));
|
14
|
+
this.end = this.dragAndDropFrom$.pipe(filter(({ stage }) => stage === TuiDragStage.End), map(({ event }) => event));
|
15
15
|
}
|
16
16
|
}
|
17
17
|
TuiDragDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiDragDirective, deps: [{ token: ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
@@ -34,4 +34,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
34
34
|
type: Output,
|
35
35
|
args: ['tuiDragEnd']
|
36
36
|
}] } });
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGlyZWN0aXZlcy9kcmFnL2RyYWcuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFDLGtCQUFrQixFQUFFLFlBQVksRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRTNFLE9BQU8sRUFBQyxNQUFNLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBRTNDOztHQUVHO0FBSUgsTUFBTSxPQUFPLGdCQUFnQjtJQXVCekIsWUFBaUQsRUFBdUI7UUFBdkIsT0FBRSxHQUFGLEVBQUUsQ0FBcUI7UUF0QnZELHFCQUFnQixHQUFHLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUM7UUFJckUsVUFBSyxHQUEyQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUMvRCxNQUFNLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssWUFBWSxDQUFDLEtBQUssQ0FBQyxFQUNqRCxHQUFHLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FDMUIsQ0FBQztRQUdPLGNBQVMsR0FBMkIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FDbkUsTUFBTSxDQUFDLENBQUMsRUFBQyxLQUFLLEVBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLFlBQVksQ0FBQyxTQUFTLENBQUMsRUFDckQsR0FBRyxDQUFDLENBQUMsRUFBQyxLQUFLLEVBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQzFCLENBQUM7UUFJTyxRQUFHLEdBQTJCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQzdELE1BQU0sQ0FBQyxDQUFDLEVBQUMsS0FBSyxFQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssS0FBSyxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQy9DLEdBQUcsQ0FBQyxDQUFDLEVBQUMsS0FBSyxFQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUMxQixDQUFDO0lBRXlFLENBQUM7OzhHQXZCbkUsZ0JBQWdCLGtCQXVCTCxVQUFVO2tHQXZCckIsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBSDVCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGtEQUFrRDtpQkFDL0Q7OzBCQXdCZ0IsTUFBTTsyQkFBQyxVQUFVOzRDQWxCckIsS0FBSztzQkFGYixNQUFNO3VCQUFDLGNBQWM7Z0JBUWIsU0FBUztzQkFEakIsTUFBTTt1QkFBQyxrQkFBa0I7Z0JBUWpCLEdBQUc7c0JBRlgsTUFBTTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dHVpRHJhZ0FuZERyb3BGcm9tLCBUdWlEcmFnU3RhZ2V9IGZyb20gJ0B0YWlnYS11aS9jZGsvb2JzZXJ2YWJsZXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmlsdGVyLCBtYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBub3QgdXNlZCBhbnl3aGVyZVxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1t0dWlEcmFnU3RhcnRdLCBbdHVpRHJhZ0NvbnRpbnVlc10sIFt0dWlEcmFnRW5kXScsXG59KVxuZXhwb3J0IGNsYXNzIFR1aURyYWdEaXJlY3RpdmUge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZHJhZ0FuZERyb3BGcm9tJCA9IHR1aURyYWdBbmREcm9wRnJvbSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQpO1xuXG4gICAgQE91dHB1dCgndHVpRHJhZ1N0YXJ0JylcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcbiAgICByZWFkb25seSBzdGFydDogT2JzZXJ2YWJsZTxNb3VzZUV2ZW50PiA9IHRoaXMuZHJhZ0FuZERyb3BGcm9tJC5waXBlKFxuICAgICAgICBmaWx0ZXIoKHtzdGFnZX0pID0+IHN0YWdlID09PSBUdWlEcmFnU3RhZ2UuU3RhcnQpLFxuICAgICAgICBtYXAoKHtldmVudH0pID0+IGV2ZW50KSxcbiAgICApO1xuXG4gICAgQE91dHB1dCgndHVpRHJhZ0NvbnRpbnVlcycpXG4gICAgcmVhZG9ubHkgY29udGludWVzOiBPYnNlcnZhYmxlPE1vdXNlRXZlbnQ+ID0gdGhpcy5kcmFnQW5kRHJvcEZyb20kLnBpcGUoXG4gICAgICAgIGZpbHRlcigoe3N0YWdlfSkgPT4gc3RhZ2UgPT09IFR1aURyYWdTdGFnZS5Db250aW51ZXMpLFxuICAgICAgICBtYXAoKHtldmVudH0pID0+IGV2ZW50KSxcbiAgICApO1xuXG4gICAgQE91dHB1dCgndHVpRHJhZ0VuZCcpXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtbmF0aXZlXG4gICAgcmVhZG9ubHkgZW5kOiBPYnNlcnZhYmxlPE1vdXNlRXZlbnQ+ID0gdGhpcy5kcmFnQW5kRHJvcEZyb20kLnBpcGUoXG4gICAgICAgIGZpbHRlcigoe3N0YWdlfSkgPT4gc3RhZ2UgPT09IFR1aURyYWdTdGFnZS5FbmQpLFxuICAgICAgICBtYXAoKHtldmVudH0pID0+IGV2ZW50KSxcbiAgICApO1xuXG4gICAgY29uc3RydWN0b3IoQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsOiBFbGVtZW50UmVmPEVsZW1lbnQ+KSB7fVxufVxuIl19
|
@@ -8,4 +8,4 @@ export var TuiDayOfWeek;
|
|
8
8
|
TuiDayOfWeek[TuiDayOfWeek["Friday"] = 5] = "Friday";
|
9
9
|
TuiDayOfWeek[TuiDayOfWeek["Saturday"] = 6] = "Saturday";
|
10
10
|
})(TuiDayOfWeek || (TuiDayOfWeek = {}));
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5LW9mLXdlZWsuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZW51bXMvZGF5LW9mLXdlZWsudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksWUFRWDtBQVJELFdBQVksWUFBWTtJQUNwQixtREFBTSxDQUFBO0lBQ04sbURBQU0sQ0FBQTtJQUNOLHFEQUFPLENBQUE7SUFDUCx5REFBUyxDQUFBO0lBQ1QsdURBQVEsQ0FBQTtJQUNSLG1EQUFNLENBQUE7SUFDTix1REFBUSxDQUFBO0FBQ1osQ0FBQyxFQVJXLFlBQVksS0FBWixZQUFZLFFBUXZCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gVHVpRGF5T2ZXZWVrIHtcbiAgICBTdW5kYXksXG4gICAgTW9uZGF5LFxuICAgIFR1ZXNkYXksXG4gICAgV2VkbmVzZGF5LFxuICAgIFRodXJzZGF5LFxuICAgIEZyaWRheSxcbiAgICBTYXR1cmRheSxcbn1cbiJdfQ==
|